https://llego.dev/posts/practical-python-guide-leverage-lists-data-manipulation-storage/