https://medium.com/@popa.vlad94/from-nodes-to-code-the-applications-of-graph-theory-in-object-oriented-programming-2536796d54d0