bool get hasNext { if (_state == _NOT_MOVED_YET) _move(); return _state == _HAS_NEXT_AND_NEXT_IN_CURRENT; }