Source: https://ljk.imag.fr/membres/Bernard.Ycart/mel/co/co.pdf