remove traverseChildren, which forces recursion