https://medium.com/@monocosmo77/working-with-2-nilpotent-algebras-part1-machine-learning-f516ae0d5718