list traversing fix