https://betapython.com/difference-between-cls-and-self-in-python-classes/
Difference between 'cls' and 'self' in Python classes?