refactoring tree