Source: https://github.com/djoffrey/HarmonicPatterns.pdf