adding traverse