https://guglielmozappala.github.io/files/zappala_jmp.pdf