Source: https://math.univ-lille1.fr/~suquet/Polys/Ann03ifp.pdf