Source: https://www.normalesup.org/~dconduche/TermS/exercices/ExoComplexe5.pdf