Source: http://www.geolalg.com/cigcm2016/rescigcm2016.pdf