Source: https://publication-theses.unistra.fr/public/theses_exercice/ODO/2017/2017_JACQUIN_Arnaud.pdf