Tree is a functor