Source: https://dept-info.labri.fr/~griffaul/Enseignement/MasterInfo-04-05/FDS/vademecum-petri.pdf