refactoring SyntaxTree