traverses requires