cleand up a few errors. going to try making work with single traversal