https://medium.com/@monocosmo77/understanding-the-concept-of-quaternions-part1-complex-numbers-8eee8e86b32b