working on SolveTree
Revert "merge"

This reverts commit 186dbcd166a5713395df3b4646984676b6f82585.
Revert "Revert "merge""

This reverts commit 431ca48eb9306ffa250ed18bb6a552b634988cc7.