starting from BinaryTree