Source: https://math.univ-lyon1.fr/irem/IMG/pdf/501_kit_TES_Graph90_E_2019.pdf