''

def tree_data(self):

    stack = []
    node = self
    while (stack or node):
        if node:
            stack.append(node)
            node = node.left
        else:
            node = stack.pop()
            (yield node.data)
            node = node.right
