source code for the binary tree