Source: https://www.imo.universite-paris-saclay.fr/~paul.melotti/enseignement/caml/color.pdf