Source: http://mage.recherche.parisdescartes.fr/wp-content/uploads/sites/17/2019/03/programmerabat2006.pdf