reorganize traverse_node