Source: https://www.arc.ulaval.ca/files/arc/EmilieBrin-contrepoint.pdf