implements simple tree