Fully Functional Tree EVEN BETTER VERSION