The structure of this code is largely based on SVGD and MGDA. We are very grateful for their open source. Another interactive version for toy example is presented here