Please see: GSOC 2018 GaganKumar