Source: https://www.di.ens.fr/~ccheval/partie_3_2x2.pdf