Source: https://cpsa-acsp.ca/papers-2013/Gauvin.pdf