Refactoring iterators WORK IN PROGRESS.