subtree modification