refactoring event iterators
passing user to AllEventIterator