Source: https://melusine.eu.org/syracuse/exemples/prigent/coniqspe.pdf