the-ultimate-guide-to-data-classes-in-python-37