Source: https://irem.univ-lille.fr/~site/IMG/pdf/3eSphere_prof.pdf