multi-directional traversal WORKING!