added basetraversal