Given the root of a binary tree, return a list of the root values of all duplicate subtrees. Two subtrees are duplicates if they have the same structure and the same node values. Return each duplicate subtree only once, regardless of how many times it appears.
def find_duplicate_subtrees(root):