retraverse
not defined yet