public virtual NFAState GetNFAStateForAltOfDecision( NFAState decisionState, int alt ) { if ( decisionState == null || alt <= 0 ) { return null; } int n = 1; NFAState p = decisionState; while ( p != null ) { if ( n == alt ) { return p; } n++; Transition next = p.transition[1]; p = null; if ( next != null ) { p = (NFAState)next.Target; } } return null; }