public void Reset() { _en.Reset(); int startIndex = _initialStartIndex; while (startIndex-- > 0 && _en.MoveNext()) ; _remaining = _initialCount; _firstCall = true; } }