data Tree a = Leaf {} | Branch { left :: Tree a, key :: a , right :: a } inorder :: Tree a -> [ a ] inorder t = case t of ...