https://python.plainenglish.io/an-introduction-to-python-data-structures-hash-map-tree-graph-9cf96078731a