* tree node works, let's refactor
*refactor
extra space