protected override IEnumerable<ParseStep> GetFailParseSteps(IRegexEngine engine, State initialState, State currentState, bool skipAdvance) { yield return ParseStep.Fail(this, initialState, currentState); if (!skipAdvance) { engine.State = initialState.Advance(); yield return ParseStep.AdvanceIndex(this, engine.State); } }