https://learnprogramming.in.net/find-duplicate-subtrees-in-a-binary-tree-in-python/