- modified traverse because double_linked_chain was altered