ITree implement