Abstract tree
By: metalfrank