typedef struct tree_node { long value; struct tree_node *left; struct tree_node *right; } tree_node;