modify
refactor collins find
lots of refactoring