Ignore:
Timestamp:
10/12/16 15:29:26 (8 years ago)
Author:
phdmakk
Message:

+ generated resources

File:
1 edited

Legend:

Unmodified
Added
Removed
  • v2/trunk/de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnfParser.java

    r97 r100  
    2424public class InternalEbnfParser extends AbstractInternalContentAssistParser { 
    2525    public static final String[] tokenNames = new String[] { 
    26         "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_ID", "RULE_SECTIONHEADER", "RULE_STRING", "RULE_INT", "RULE_LOGIC", "RULE_COLON", "RULE_WS", "RULE_SL_COMMENT", "RULE_ML_COMMENT", "')'", "']'", "'}'", "'|'", "'('", "'['", "'{'", "'*'", "'+'", "'grammar'", "';'", "'import'", "'/'", "'label:'", "'::='", "'.'", "'<-'", "'global'", "'combinator:'", "'rule'", "'hook'", "'#'", "','", "'/bnf'", "'/delta'", "'/merge'", "'core'", "'package'", "'update'" 
     26        "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_ID", "RULE_SECTIONHEADER", "RULE_ML_COMMENT", "RULE_STRING", "RULE_INT", "RULE_LOGIC", "RULE_COLON", "RULE_WS", "RULE_SL_COMMENT", "')'", "']'", "'}'", "'|'", "'('", "'['", "'{'", "'*'", "'+'", "'grammar'", "';'", "'import'", "'/'", "'label:'", "'::='", "'.'", "'<-'", "'global'", "'combinator:'", "'rule'", "'hook'", "'#'", "','", "'/bnf'", "'/delta'", "'/merge'", "'core'", "'package'", "'update'" 
    2727    }; 
    2828    public static final int RULE_ID=4; 
     
    4040    public static final int T__21=21; 
    4141    public static final int T__20=20; 
    42     public static final int RULE_SL_COMMENT=11; 
     42    public static final int RULE_SL_COMMENT=12; 
    4343    public static final int EOF=-1; 
    44     public static final int RULE_ML_COMMENT=12; 
     44    public static final int RULE_ML_COMMENT=6; 
    4545    public static final int T__30=30; 
    4646    public static final int T__19=19; 
    47     public static final int RULE_COLON=9; 
     47    public static final int RULE_COLON=10; 
    4848    public static final int T__31=31; 
    49     public static final int RULE_STRING=6; 
     49    public static final int RULE_STRING=7; 
    5050    public static final int T__32=32; 
    5151    public static final int T__33=33; 
     
    5757    public static final int T__36=36; 
    5858    public static final int T__17=17; 
    59     public static final int RULE_LOGIC=8; 
     59    public static final int RULE_LOGIC=9; 
    6060    public static final int T__37=37; 
    6161    public static final int T__38=38; 
     
    6363    public static final int T__14=14; 
    6464    public static final int T__13=13; 
    65     public static final int RULE_INT=7; 
    66     public static final int RULE_WS=10; 
     65    public static final int RULE_INT=8; 
     66    public static final int RULE_WS=11; 
    6767 
    6868    // delegates 
     
    7575        public InternalEbnfParser(TokenStream input, RecognizerSharedState state) { 
    7676            super(input, state); 
    77             this.state.ruleMemo = new HashMap[356+1]; 
     77            this.state.ruleMemo = new HashMap[365+1]; 
    7878              
    7979              
     
    698698 
    699699 
     700    // $ANTLR start "entryRuleComment" 
     701    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:237:1: entryRuleComment : ruleComment EOF ; 
     702    public final void entryRuleComment() throws RecognitionException { 
     703        int entryRuleComment_StartIndex = input.index(); 
     704        try { 
     705            if ( state.backtracking>0 && alreadyParsedRule(input, 13) ) { return ; } 
     706            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:238:1: ( ruleComment EOF ) 
     707            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:239:1: ruleComment EOF 
     708            { 
     709            if ( state.backtracking==0 ) { 
     710               before(grammarAccess.getCommentRule());  
     711            } 
     712            pushFollow(FOLLOW_ruleComment_in_entryRuleComment451); 
     713            ruleComment(); 
     714 
     715            state._fsp--; 
     716            if (state.failed) return ; 
     717            if ( state.backtracking==0 ) { 
     718               after(grammarAccess.getCommentRule());  
     719            } 
     720            match(input,EOF,FOLLOW_EOF_in_entryRuleComment458); if (state.failed) return ; 
     721 
     722            } 
     723 
     724        } 
     725        catch (RecognitionException re) { 
     726            reportError(re); 
     727            recover(input,re); 
     728        } 
     729        finally { 
     730            if ( state.backtracking>0 ) { memoize(input, 13, entryRuleComment_StartIndex); } 
     731        } 
     732        return ; 
     733    } 
     734    // $ANTLR end "entryRuleComment" 
     735 
     736 
     737    // $ANTLR start "ruleComment" 
     738    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:246:1: ruleComment : ( ( rule__Comment__Group__0 ) ) ; 
     739    public final void ruleComment() throws RecognitionException { 
     740        int ruleComment_StartIndex = input.index(); 
     741 
     742                        int stackSize = keepStackSize(); 
     743             
     744        try { 
     745            if ( state.backtracking>0 && alreadyParsedRule(input, 14) ) { return ; } 
     746            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:250:2: ( ( ( rule__Comment__Group__0 ) ) ) 
     747            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:251:1: ( ( rule__Comment__Group__0 ) ) 
     748            { 
     749            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:251:1: ( ( rule__Comment__Group__0 ) ) 
     750            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:252:1: ( rule__Comment__Group__0 ) 
     751            { 
     752            if ( state.backtracking==0 ) { 
     753               before(grammarAccess.getCommentAccess().getGroup());  
     754            } 
     755            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:253:1: ( rule__Comment__Group__0 ) 
     756            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:253:2: rule__Comment__Group__0 
     757            { 
     758            pushFollow(FOLLOW_rule__Comment__Group__0_in_ruleComment484); 
     759            rule__Comment__Group__0(); 
     760 
     761            state._fsp--; 
     762            if (state.failed) return ; 
     763 
     764            } 
     765 
     766            if ( state.backtracking==0 ) { 
     767               after(grammarAccess.getCommentAccess().getGroup());  
     768            } 
     769 
     770            } 
     771 
     772 
     773            } 
     774 
     775        } 
     776        catch (RecognitionException re) { 
     777            reportError(re); 
     778            recover(input,re); 
     779        } 
     780        finally { 
     781            if ( state.backtracking>0 ) { memoize(input, 14, ruleComment_StartIndex); } 
     782 
     783                restoreStackSize(stackSize); 
     784 
     785        } 
     786        return ; 
     787    } 
     788    // $ANTLR end "ruleComment" 
     789 
     790 
    700791    // $ANTLR start "entryRuleImport" 
    701     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:237:1: entryRuleImport : ruleImport EOF ; 
     792    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:265:1: entryRuleImport : ruleImport EOF ; 
    702793    public final void entryRuleImport() throws RecognitionException { 
    703794        int entryRuleImport_StartIndex = input.index(); 
    704795        try { 
    705             if ( state.backtracking>0 && alreadyParsedRule(input, 13) ) { return ; } 
    706             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:238:1: ( ruleImport EOF ) 
    707             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:239:1: ruleImport EOF 
     796            if ( state.backtracking>0 && alreadyParsedRule(input, 15) ) { return ; } 
     797            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:266:1: ( ruleImport EOF ) 
     798            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:267:1: ruleImport EOF 
    708799            { 
    709800            if ( state.backtracking==0 ) { 
    710801               before(grammarAccess.getImportRule());  
    711802            } 
    712             pushFollow(FOLLOW_ruleImport_in_entryRuleImport451); 
     803            pushFollow(FOLLOW_ruleImport_in_entryRuleImport511); 
    713804            ruleImport(); 
    714805 
     
    718809               after(grammarAccess.getImportRule());  
    719810            } 
    720             match(input,EOF,FOLLOW_EOF_in_entryRuleImport458); if (state.failed) return ; 
    721  
    722             } 
    723  
    724         } 
    725         catch (RecognitionException re) { 
    726             reportError(re); 
    727             recover(input,re); 
    728         } 
    729         finally { 
    730             if ( state.backtracking>0 ) { memoize(input, 13, entryRuleImport_StartIndex); } 
     811            match(input,EOF,FOLLOW_EOF_in_entryRuleImport518); if (state.failed) return ; 
     812 
     813            } 
     814 
     815        } 
     816        catch (RecognitionException re) { 
     817            reportError(re); 
     818            recover(input,re); 
     819        } 
     820        finally { 
     821            if ( state.backtracking>0 ) { memoize(input, 15, entryRuleImport_StartIndex); } 
    731822        } 
    732823        return ; 
     
    736827 
    737828    // $ANTLR start "ruleImport" 
    738     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:246:1: ruleImport : ( ( rule__Import__Group__0 ) ) ; 
     829    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:274:1: ruleImport : ( ( rule__Import__Group__0 ) ) ; 
    739830    public final void ruleImport() throws RecognitionException { 
    740831        int ruleImport_StartIndex = input.index(); 
     
    743834             
    744835        try { 
    745             if ( state.backtracking>0 && alreadyParsedRule(input, 14) ) { return ; } 
    746             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:250:2: ( ( ( rule__Import__Group__0 ) ) ) 
    747             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:251:1: ( ( rule__Import__Group__0 ) ) 
    748             { 
    749             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:251:1: ( ( rule__Import__Group__0 ) ) 
    750             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:252:1: ( rule__Import__Group__0 ) 
     836            if ( state.backtracking>0 && alreadyParsedRule(input, 16) ) { return ; } 
     837            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:278:2: ( ( ( rule__Import__Group__0 ) ) ) 
     838            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:279:1: ( ( rule__Import__Group__0 ) ) 
     839            { 
     840            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:279:1: ( ( rule__Import__Group__0 ) ) 
     841            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:280:1: ( rule__Import__Group__0 ) 
    751842            { 
    752843            if ( state.backtracking==0 ) { 
    753844               before(grammarAccess.getImportAccess().getGroup());  
    754845            } 
    755             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:253:1: ( rule__Import__Group__0 ) 
    756             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:253:2: rule__Import__Group__0 
    757             { 
    758             pushFollow(FOLLOW_rule__Import__Group__0_in_ruleImport484); 
     846            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:281:1: ( rule__Import__Group__0 ) 
     847            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:281:2: rule__Import__Group__0 
     848            { 
     849            pushFollow(FOLLOW_rule__Import__Group__0_in_ruleImport544); 
    759850            rule__Import__Group__0(); 
    760851 
     
    779870        } 
    780871        finally { 
    781             if ( state.backtracking>0 ) { memoize(input, 14, ruleImport_StartIndex); } 
     872            if ( state.backtracking>0 ) { memoize(input, 16, ruleImport_StartIndex); } 
    782873 
    783874                restoreStackSize(stackSize); 
     
    790881 
    791882    // $ANTLR start "entryRuleRule" 
    792     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:265:1: entryRuleRule : ruleRule EOF ; 
     883    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:293:1: entryRuleRule : ruleRule EOF ; 
    793884    public final void entryRuleRule() throws RecognitionException { 
    794885        int entryRuleRule_StartIndex = input.index(); 
    795886        try { 
    796             if ( state.backtracking>0 && alreadyParsedRule(input, 15) ) { return ; } 
    797             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:266:1: ( ruleRule EOF ) 
    798             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:267:1: ruleRule EOF 
     887            if ( state.backtracking>0 && alreadyParsedRule(input, 17) ) { return ; } 
     888            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:294:1: ( ruleRule EOF ) 
     889            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:295:1: ruleRule EOF 
    799890            { 
    800891            if ( state.backtracking==0 ) { 
    801892               before(grammarAccess.getRuleRule());  
    802893            } 
    803             pushFollow(FOLLOW_ruleRule_in_entryRuleRule511); 
     894            pushFollow(FOLLOW_ruleRule_in_entryRuleRule571); 
    804895            ruleRule(); 
    805896 
     
    809900               after(grammarAccess.getRuleRule());  
    810901            } 
    811             match(input,EOF,FOLLOW_EOF_in_entryRuleRule518); if (state.failed) return ; 
    812  
    813             } 
    814  
    815         } 
    816         catch (RecognitionException re) { 
    817             reportError(re); 
    818             recover(input,re); 
    819         } 
    820         finally { 
    821             if ( state.backtracking>0 ) { memoize(input, 15, entryRuleRule_StartIndex); } 
     902            match(input,EOF,FOLLOW_EOF_in_entryRuleRule578); if (state.failed) return ; 
     903 
     904            } 
     905 
     906        } 
     907        catch (RecognitionException re) { 
     908            reportError(re); 
     909            recover(input,re); 
     910        } 
     911        finally { 
     912            if ( state.backtracking>0 ) { memoize(input, 17, entryRuleRule_StartIndex); } 
    822913        } 
    823914        return ; 
     
    827918 
    828919    // $ANTLR start "ruleRule" 
    829     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:274:1: ruleRule : ( ( rule__Rule__Group__0 ) ) ; 
     920    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:302:1: ruleRule : ( ( rule__Rule__Group__0 ) ) ; 
    830921    public final void ruleRule() throws RecognitionException { 
    831922        int ruleRule_StartIndex = input.index(); 
     
    834925             
    835926        try { 
    836             if ( state.backtracking>0 && alreadyParsedRule(input, 16) ) { return ; } 
    837             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:278:2: ( ( ( rule__Rule__Group__0 ) ) ) 
    838             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:279:1: ( ( rule__Rule__Group__0 ) ) 
    839             { 
    840             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:279:1: ( ( rule__Rule__Group__0 ) ) 
    841             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:280:1: ( rule__Rule__Group__0 ) 
     927            if ( state.backtracking>0 && alreadyParsedRule(input, 18) ) { return ; } 
     928            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:306:2: ( ( ( rule__Rule__Group__0 ) ) ) 
     929            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:307:1: ( ( rule__Rule__Group__0 ) ) 
     930            { 
     931            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:307:1: ( ( rule__Rule__Group__0 ) ) 
     932            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:308:1: ( rule__Rule__Group__0 ) 
    842933            { 
    843934            if ( state.backtracking==0 ) { 
    844935               before(grammarAccess.getRuleAccess().getGroup());  
    845936            } 
    846             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:281:1: ( rule__Rule__Group__0 ) 
    847             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:281:2: rule__Rule__Group__0 
    848             { 
    849             pushFollow(FOLLOW_rule__Rule__Group__0_in_ruleRule544); 
     937            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:309:1: ( rule__Rule__Group__0 ) 
     938            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:309:2: rule__Rule__Group__0 
     939            { 
     940            pushFollow(FOLLOW_rule__Rule__Group__0_in_ruleRule604); 
    850941            rule__Rule__Group__0(); 
    851942 
     
    870961        } 
    871962        finally { 
    872             if ( state.backtracking>0 ) { memoize(input, 16, ruleRule_StartIndex); } 
     963            if ( state.backtracking>0 ) { memoize(input, 18, ruleRule_StartIndex); } 
    873964 
    874965                restoreStackSize(stackSize); 
     
    881972 
    882973    // $ANTLR start "entryRuleExtRule" 
    883     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:293:1: entryRuleExtRule : ruleExtRule EOF ; 
     974    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:321:1: entryRuleExtRule : ruleExtRule EOF ; 
    884975    public final void entryRuleExtRule() throws RecognitionException { 
    885976        int entryRuleExtRule_StartIndex = input.index(); 
    886977        try { 
    887             if ( state.backtracking>0 && alreadyParsedRule(input, 17) ) { return ; } 
    888             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:294:1: ( ruleExtRule EOF ) 
    889             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:295:1: ruleExtRule EOF 
     978            if ( state.backtracking>0 && alreadyParsedRule(input, 19) ) { return ; } 
     979            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:322:1: ( ruleExtRule EOF ) 
     980            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:323:1: ruleExtRule EOF 
    890981            { 
    891982            if ( state.backtracking==0 ) { 
    892983               before(grammarAccess.getExtRuleRule());  
    893984            } 
    894             pushFollow(FOLLOW_ruleExtRule_in_entryRuleExtRule571); 
     985            pushFollow(FOLLOW_ruleExtRule_in_entryRuleExtRule631); 
    895986            ruleExtRule(); 
    896987 
     
    900991               after(grammarAccess.getExtRuleRule());  
    901992            } 
    902             match(input,EOF,FOLLOW_EOF_in_entryRuleExtRule578); if (state.failed) return ; 
    903  
    904             } 
    905  
    906         } 
    907         catch (RecognitionException re) { 
    908             reportError(re); 
    909             recover(input,re); 
    910         } 
    911         finally { 
    912             if ( state.backtracking>0 ) { memoize(input, 17, entryRuleExtRule_StartIndex); } 
     993            match(input,EOF,FOLLOW_EOF_in_entryRuleExtRule638); if (state.failed) return ; 
     994 
     995            } 
     996 
     997        } 
     998        catch (RecognitionException re) { 
     999            reportError(re); 
     1000            recover(input,re); 
     1001        } 
     1002        finally { 
     1003            if ( state.backtracking>0 ) { memoize(input, 19, entryRuleExtRule_StartIndex); } 
    9131004        } 
    9141005        return ; 
     
    9181009 
    9191010    // $ANTLR start "ruleExtRule" 
    920     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:302:1: ruleExtRule : ( ( rule__ExtRule__Group__0 ) ) ; 
     1011    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:330:1: ruleExtRule : ( ( rule__ExtRule__Group__0 ) ) ; 
    9211012    public final void ruleExtRule() throws RecognitionException { 
    9221013        int ruleExtRule_StartIndex = input.index(); 
     
    9251016             
    9261017        try { 
    927             if ( state.backtracking>0 && alreadyParsedRule(input, 18) ) { return ; } 
    928             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:306:2: ( ( ( rule__ExtRule__Group__0 ) ) ) 
    929             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:307:1: ( ( rule__ExtRule__Group__0 ) ) 
    930             { 
    931             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:307:1: ( ( rule__ExtRule__Group__0 ) ) 
    932             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:308:1: ( rule__ExtRule__Group__0 ) 
     1018            if ( state.backtracking>0 && alreadyParsedRule(input, 20) ) { return ; } 
     1019            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:334:2: ( ( ( rule__ExtRule__Group__0 ) ) ) 
     1020            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:335:1: ( ( rule__ExtRule__Group__0 ) ) 
     1021            { 
     1022            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:335:1: ( ( rule__ExtRule__Group__0 ) ) 
     1023            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:336:1: ( rule__ExtRule__Group__0 ) 
    9331024            { 
    9341025            if ( state.backtracking==0 ) { 
    9351026               before(grammarAccess.getExtRuleAccess().getGroup());  
    9361027            } 
    937             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:309:1: ( rule__ExtRule__Group__0 ) 
    938             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:309:2: rule__ExtRule__Group__0 
    939             { 
    940             pushFollow(FOLLOW_rule__ExtRule__Group__0_in_ruleExtRule604); 
     1028            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:337:1: ( rule__ExtRule__Group__0 ) 
     1029            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:337:2: rule__ExtRule__Group__0 
     1030            { 
     1031            pushFollow(FOLLOW_rule__ExtRule__Group__0_in_ruleExtRule664); 
    9411032            rule__ExtRule__Group__0(); 
    9421033 
     
    9611052        } 
    9621053        finally { 
    963             if ( state.backtracking>0 ) { memoize(input, 18, ruleExtRule_StartIndex); } 
     1054            if ( state.backtracking>0 ) { memoize(input, 20, ruleExtRule_StartIndex); } 
    9641055 
    9651056                restoreStackSize(stackSize); 
     
    9721063 
    9731064    // $ANTLR start "entryRuleMergeRule" 
    974     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:321:1: entryRuleMergeRule : ruleMergeRule EOF ; 
     1065    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:349:1: entryRuleMergeRule : ruleMergeRule EOF ; 
    9751066    public final void entryRuleMergeRule() throws RecognitionException { 
    9761067        int entryRuleMergeRule_StartIndex = input.index(); 
    9771068        try { 
    978             if ( state.backtracking>0 && alreadyParsedRule(input, 19) ) { return ; } 
    979             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:322:1: ( ruleMergeRule EOF ) 
    980             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:323:1: ruleMergeRule EOF 
     1069            if ( state.backtracking>0 && alreadyParsedRule(input, 21) ) { return ; } 
     1070            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:350:1: ( ruleMergeRule EOF ) 
     1071            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:351:1: ruleMergeRule EOF 
    9811072            { 
    9821073            if ( state.backtracking==0 ) { 
    9831074               before(grammarAccess.getMergeRuleRule());  
    9841075            } 
    985             pushFollow(FOLLOW_ruleMergeRule_in_entryRuleMergeRule631); 
     1076            pushFollow(FOLLOW_ruleMergeRule_in_entryRuleMergeRule691); 
    9861077            ruleMergeRule(); 
    9871078 
     
    9911082               after(grammarAccess.getMergeRuleRule());  
    9921083            } 
    993             match(input,EOF,FOLLOW_EOF_in_entryRuleMergeRule638); if (state.failed) return ; 
    994  
    995             } 
    996  
    997         } 
    998         catch (RecognitionException re) { 
    999             reportError(re); 
    1000             recover(input,re); 
    1001         } 
    1002         finally { 
    1003             if ( state.backtracking>0 ) { memoize(input, 19, entryRuleMergeRule_StartIndex); } 
     1084            match(input,EOF,FOLLOW_EOF_in_entryRuleMergeRule698); if (state.failed) return ; 
     1085 
     1086            } 
     1087 
     1088        } 
     1089        catch (RecognitionException re) { 
     1090            reportError(re); 
     1091            recover(input,re); 
     1092        } 
     1093        finally { 
     1094            if ( state.backtracking>0 ) { memoize(input, 21, entryRuleMergeRule_StartIndex); } 
    10041095        } 
    10051096        return ; 
     
    10091100 
    10101101    // $ANTLR start "ruleMergeRule" 
    1011     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:330:1: ruleMergeRule : ( ( rule__MergeRule__Alternatives ) ) ; 
     1102    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:358:1: ruleMergeRule : ( ( rule__MergeRule__Alternatives ) ) ; 
    10121103    public final void ruleMergeRule() throws RecognitionException { 
    10131104        int ruleMergeRule_StartIndex = input.index(); 
     
    10161107             
    10171108        try { 
    1018             if ( state.backtracking>0 && alreadyParsedRule(input, 20) ) { return ; } 
    1019             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:334:2: ( ( ( rule__MergeRule__Alternatives ) ) ) 
    1020             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:335:1: ( ( rule__MergeRule__Alternatives ) ) 
    1021             { 
    1022             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:335:1: ( ( rule__MergeRule__Alternatives ) ) 
    1023             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:336:1: ( rule__MergeRule__Alternatives ) 
     1109            if ( state.backtracking>0 && alreadyParsedRule(input, 22) ) { return ; } 
     1110            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:362:2: ( ( ( rule__MergeRule__Alternatives ) ) ) 
     1111            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:363:1: ( ( rule__MergeRule__Alternatives ) ) 
     1112            { 
     1113            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:363:1: ( ( rule__MergeRule__Alternatives ) ) 
     1114            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:364:1: ( rule__MergeRule__Alternatives ) 
    10241115            { 
    10251116            if ( state.backtracking==0 ) { 
    10261117               before(grammarAccess.getMergeRuleAccess().getAlternatives());  
    10271118            } 
    1028             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:337:1: ( rule__MergeRule__Alternatives ) 
    1029             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:337:2: rule__MergeRule__Alternatives 
    1030             { 
    1031             pushFollow(FOLLOW_rule__MergeRule__Alternatives_in_ruleMergeRule664); 
     1119            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:365:1: ( rule__MergeRule__Alternatives ) 
     1120            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:365:2: rule__MergeRule__Alternatives 
     1121            { 
     1122            pushFollow(FOLLOW_rule__MergeRule__Alternatives_in_ruleMergeRule724); 
    10321123            rule__MergeRule__Alternatives(); 
    10331124 
     
    10521143        } 
    10531144        finally { 
    1054             if ( state.backtracking>0 ) { memoize(input, 20, ruleMergeRule_StartIndex); } 
     1145            if ( state.backtracking>0 ) { memoize(input, 22, ruleMergeRule_StartIndex); } 
    10551146 
    10561147                restoreStackSize(stackSize); 
     
    10631154 
    10641155    // $ANTLR start "entryRuleGlobalCombinator" 
    1065     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:349:1: entryRuleGlobalCombinator : ruleGlobalCombinator EOF ; 
     1156    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:377:1: entryRuleGlobalCombinator : ruleGlobalCombinator EOF ; 
    10661157    public final void entryRuleGlobalCombinator() throws RecognitionException { 
    10671158        int entryRuleGlobalCombinator_StartIndex = input.index(); 
    10681159        try { 
    1069             if ( state.backtracking>0 && alreadyParsedRule(input, 21) ) { return ; } 
    1070             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:350:1: ( ruleGlobalCombinator EOF ) 
    1071             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:351:1: ruleGlobalCombinator EOF 
     1160            if ( state.backtracking>0 && alreadyParsedRule(input, 23) ) { return ; } 
     1161            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:378:1: ( ruleGlobalCombinator EOF ) 
     1162            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:379:1: ruleGlobalCombinator EOF 
    10721163            { 
    10731164            if ( state.backtracking==0 ) { 
    10741165               before(grammarAccess.getGlobalCombinatorRule());  
    10751166            } 
    1076             pushFollow(FOLLOW_ruleGlobalCombinator_in_entryRuleGlobalCombinator691); 
     1167            pushFollow(FOLLOW_ruleGlobalCombinator_in_entryRuleGlobalCombinator751); 
    10771168            ruleGlobalCombinator(); 
    10781169 
     
    10821173               after(grammarAccess.getGlobalCombinatorRule());  
    10831174            } 
    1084             match(input,EOF,FOLLOW_EOF_in_entryRuleGlobalCombinator698); if (state.failed) return ; 
    1085  
    1086             } 
    1087  
    1088         } 
    1089         catch (RecognitionException re) { 
    1090             reportError(re); 
    1091             recover(input,re); 
    1092         } 
    1093         finally { 
    1094             if ( state.backtracking>0 ) { memoize(input, 21, entryRuleGlobalCombinator_StartIndex); } 
     1175            match(input,EOF,FOLLOW_EOF_in_entryRuleGlobalCombinator758); if (state.failed) return ; 
     1176 
     1177            } 
     1178 
     1179        } 
     1180        catch (RecognitionException re) { 
     1181            reportError(re); 
     1182            recover(input,re); 
     1183        } 
     1184        finally { 
     1185            if ( state.backtracking>0 ) { memoize(input, 23, entryRuleGlobalCombinator_StartIndex); } 
    10951186        } 
    10961187        return ; 
     
    11001191 
    11011192    // $ANTLR start "ruleGlobalCombinator" 
    1102     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:358:1: ruleGlobalCombinator : ( ( rule__GlobalCombinator__Group__0 ) ) ; 
     1193    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:386:1: ruleGlobalCombinator : ( ( rule__GlobalCombinator__Group__0 ) ) ; 
    11031194    public final void ruleGlobalCombinator() throws RecognitionException { 
    11041195        int ruleGlobalCombinator_StartIndex = input.index(); 
     
    11071198             
    11081199        try { 
    1109             if ( state.backtracking>0 && alreadyParsedRule(input, 22) ) { return ; } 
    1110             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:362:2: ( ( ( rule__GlobalCombinator__Group__0 ) ) ) 
    1111             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:363:1: ( ( rule__GlobalCombinator__Group__0 ) ) 
    1112             { 
    1113             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:363:1: ( ( rule__GlobalCombinator__Group__0 ) ) 
    1114             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:364:1: ( rule__GlobalCombinator__Group__0 ) 
     1200            if ( state.backtracking>0 && alreadyParsedRule(input, 24) ) { return ; } 
     1201            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:390:2: ( ( ( rule__GlobalCombinator__Group__0 ) ) ) 
     1202            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:391:1: ( ( rule__GlobalCombinator__Group__0 ) ) 
     1203            { 
     1204            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:391:1: ( ( rule__GlobalCombinator__Group__0 ) ) 
     1205            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:392:1: ( rule__GlobalCombinator__Group__0 ) 
    11151206            { 
    11161207            if ( state.backtracking==0 ) { 
    11171208               before(grammarAccess.getGlobalCombinatorAccess().getGroup());  
    11181209            } 
    1119             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:365:1: ( rule__GlobalCombinator__Group__0 ) 
    1120             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:365:2: rule__GlobalCombinator__Group__0 
    1121             { 
    1122             pushFollow(FOLLOW_rule__GlobalCombinator__Group__0_in_ruleGlobalCombinator724); 
     1210            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:393:1: ( rule__GlobalCombinator__Group__0 ) 
     1211            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:393:2: rule__GlobalCombinator__Group__0 
     1212            { 
     1213            pushFollow(FOLLOW_rule__GlobalCombinator__Group__0_in_ruleGlobalCombinator784); 
    11231214            rule__GlobalCombinator__Group__0(); 
    11241215 
     
    11431234        } 
    11441235        finally { 
    1145             if ( state.backtracking>0 ) { memoize(input, 22, ruleGlobalCombinator_StartIndex); } 
     1236            if ( state.backtracking>0 ) { memoize(input, 24, ruleGlobalCombinator_StartIndex); } 
    11461237 
    11471238                restoreStackSize(stackSize); 
     
    11541245 
    11551246    // $ANTLR start "entryRuleRuleCombinator" 
    1156     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:377:1: entryRuleRuleCombinator : ruleRuleCombinator EOF ; 
     1247    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:405:1: entryRuleRuleCombinator : ruleRuleCombinator EOF ; 
    11571248    public final void entryRuleRuleCombinator() throws RecognitionException { 
    11581249        int entryRuleRuleCombinator_StartIndex = input.index(); 
    11591250        try { 
    1160             if ( state.backtracking>0 && alreadyParsedRule(input, 23) ) { return ; } 
    1161             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:378:1: ( ruleRuleCombinator EOF ) 
    1162             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:379:1: ruleRuleCombinator EOF 
     1251            if ( state.backtracking>0 && alreadyParsedRule(input, 25) ) { return ; } 
     1252            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:406:1: ( ruleRuleCombinator EOF ) 
     1253            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:407:1: ruleRuleCombinator EOF 
    11631254            { 
    11641255            if ( state.backtracking==0 ) { 
    11651256               before(grammarAccess.getRuleCombinatorRule());  
    11661257            } 
    1167             pushFollow(FOLLOW_ruleRuleCombinator_in_entryRuleRuleCombinator751); 
     1258            pushFollow(FOLLOW_ruleRuleCombinator_in_entryRuleRuleCombinator811); 
    11681259            ruleRuleCombinator(); 
    11691260 
     
    11731264               after(grammarAccess.getRuleCombinatorRule());  
    11741265            } 
    1175             match(input,EOF,FOLLOW_EOF_in_entryRuleRuleCombinator758); if (state.failed) return ; 
    1176  
    1177             } 
    1178  
    1179         } 
    1180         catch (RecognitionException re) { 
    1181             reportError(re); 
    1182             recover(input,re); 
    1183         } 
    1184         finally { 
    1185             if ( state.backtracking>0 ) { memoize(input, 23, entryRuleRuleCombinator_StartIndex); } 
     1266            match(input,EOF,FOLLOW_EOF_in_entryRuleRuleCombinator818); if (state.failed) return ; 
     1267 
     1268            } 
     1269 
     1270        } 
     1271        catch (RecognitionException re) { 
     1272            reportError(re); 
     1273            recover(input,re); 
     1274        } 
     1275        finally { 
     1276            if ( state.backtracking>0 ) { memoize(input, 25, entryRuleRuleCombinator_StartIndex); } 
    11861277        } 
    11871278        return ; 
     
    11911282 
    11921283    // $ANTLR start "ruleRuleCombinator" 
    1193     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:386:1: ruleRuleCombinator : ( ( rule__RuleCombinator__Group__0 ) ) ; 
     1284    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:414:1: ruleRuleCombinator : ( ( rule__RuleCombinator__Group__0 ) ) ; 
    11941285    public final void ruleRuleCombinator() throws RecognitionException { 
    11951286        int ruleRuleCombinator_StartIndex = input.index(); 
     
    11981289             
    11991290        try { 
    1200             if ( state.backtracking>0 && alreadyParsedRule(input, 24) ) { return ; } 
    1201             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:390:2: ( ( ( rule__RuleCombinator__Group__0 ) ) ) 
    1202             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:391:1: ( ( rule__RuleCombinator__Group__0 ) ) 
    1203             { 
    1204             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:391:1: ( ( rule__RuleCombinator__Group__0 ) ) 
    1205             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:392:1: ( rule__RuleCombinator__Group__0 ) 
     1291            if ( state.backtracking>0 && alreadyParsedRule(input, 26) ) { return ; } 
     1292            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:418:2: ( ( ( rule__RuleCombinator__Group__0 ) ) ) 
     1293            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:419:1: ( ( rule__RuleCombinator__Group__0 ) ) 
     1294            { 
     1295            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:419:1: ( ( rule__RuleCombinator__Group__0 ) ) 
     1296            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:420:1: ( rule__RuleCombinator__Group__0 ) 
    12061297            { 
    12071298            if ( state.backtracking==0 ) { 
    12081299               before(grammarAccess.getRuleCombinatorAccess().getGroup());  
    12091300            } 
    1210             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:393:1: ( rule__RuleCombinator__Group__0 ) 
    1211             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:393:2: rule__RuleCombinator__Group__0 
    1212             { 
    1213             pushFollow(FOLLOW_rule__RuleCombinator__Group__0_in_ruleRuleCombinator784); 
     1301            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:421:1: ( rule__RuleCombinator__Group__0 ) 
     1302            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:421:2: rule__RuleCombinator__Group__0 
     1303            { 
     1304            pushFollow(FOLLOW_rule__RuleCombinator__Group__0_in_ruleRuleCombinator844); 
    12141305            rule__RuleCombinator__Group__0(); 
    12151306 
     
    12341325        } 
    12351326        finally { 
    1236             if ( state.backtracking>0 ) { memoize(input, 24, ruleRuleCombinator_StartIndex); } 
     1327            if ( state.backtracking>0 ) { memoize(input, 26, ruleRuleCombinator_StartIndex); } 
    12371328 
    12381329                restoreStackSize(stackSize); 
     
    12451336 
    12461337    // $ANTLR start "entryRuleHookCombinator" 
    1247     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:405:1: entryRuleHookCombinator : ruleHookCombinator EOF ; 
     1338    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:433:1: entryRuleHookCombinator : ruleHookCombinator EOF ; 
    12481339    public final void entryRuleHookCombinator() throws RecognitionException { 
    12491340        int entryRuleHookCombinator_StartIndex = input.index(); 
    12501341        try { 
    1251             if ( state.backtracking>0 && alreadyParsedRule(input, 25) ) { return ; } 
    1252             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:406:1: ( ruleHookCombinator EOF ) 
    1253             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:407:1: ruleHookCombinator EOF 
     1342            if ( state.backtracking>0 && alreadyParsedRule(input, 27) ) { return ; } 
     1343            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:434:1: ( ruleHookCombinator EOF ) 
     1344            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:435:1: ruleHookCombinator EOF 
    12541345            { 
    12551346            if ( state.backtracking==0 ) { 
    12561347               before(grammarAccess.getHookCombinatorRule());  
    12571348            } 
    1258             pushFollow(FOLLOW_ruleHookCombinator_in_entryRuleHookCombinator811); 
     1349            pushFollow(FOLLOW_ruleHookCombinator_in_entryRuleHookCombinator871); 
    12591350            ruleHookCombinator(); 
    12601351 
     
    12641355               after(grammarAccess.getHookCombinatorRule());  
    12651356            } 
    1266             match(input,EOF,FOLLOW_EOF_in_entryRuleHookCombinator818); if (state.failed) return ; 
    1267  
    1268             } 
    1269  
    1270         } 
    1271         catch (RecognitionException re) { 
    1272             reportError(re); 
    1273             recover(input,re); 
    1274         } 
    1275         finally { 
    1276             if ( state.backtracking>0 ) { memoize(input, 25, entryRuleHookCombinator_StartIndex); } 
     1357            match(input,EOF,FOLLOW_EOF_in_entryRuleHookCombinator878); if (state.failed) return ; 
     1358 
     1359            } 
     1360 
     1361        } 
     1362        catch (RecognitionException re) { 
     1363            reportError(re); 
     1364            recover(input,re); 
     1365        } 
     1366        finally { 
     1367            if ( state.backtracking>0 ) { memoize(input, 27, entryRuleHookCombinator_StartIndex); } 
    12771368        } 
    12781369        return ; 
     
    12821373 
    12831374    // $ANTLR start "ruleHookCombinator" 
    1284     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:414:1: ruleHookCombinator : ( ( rule__HookCombinator__Group__0 ) ) ; 
     1375    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:442:1: ruleHookCombinator : ( ( rule__HookCombinator__Group__0 ) ) ; 
    12851376    public final void ruleHookCombinator() throws RecognitionException { 
    12861377        int ruleHookCombinator_StartIndex = input.index(); 
     
    12891380             
    12901381        try { 
    1291             if ( state.backtracking>0 && alreadyParsedRule(input, 26) ) { return ; } 
    1292             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:418:2: ( ( ( rule__HookCombinator__Group__0 ) ) ) 
    1293             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:419:1: ( ( rule__HookCombinator__Group__0 ) ) 
    1294             { 
    1295             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:419:1: ( ( rule__HookCombinator__Group__0 ) ) 
    1296             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:420:1: ( rule__HookCombinator__Group__0 ) 
     1382            if ( state.backtracking>0 && alreadyParsedRule(input, 28) ) { return ; } 
     1383            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:446:2: ( ( ( rule__HookCombinator__Group__0 ) ) ) 
     1384            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:447:1: ( ( rule__HookCombinator__Group__0 ) ) 
     1385            { 
     1386            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:447:1: ( ( rule__HookCombinator__Group__0 ) ) 
     1387            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:448:1: ( rule__HookCombinator__Group__0 ) 
    12971388            { 
    12981389            if ( state.backtracking==0 ) { 
    12991390               before(grammarAccess.getHookCombinatorAccess().getGroup());  
    13001391            } 
    1301             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:421:1: ( rule__HookCombinator__Group__0 ) 
    1302             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:421:2: rule__HookCombinator__Group__0 
    1303             { 
    1304             pushFollow(FOLLOW_rule__HookCombinator__Group__0_in_ruleHookCombinator844); 
     1392            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:449:1: ( rule__HookCombinator__Group__0 ) 
     1393            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:449:2: rule__HookCombinator__Group__0 
     1394            { 
     1395            pushFollow(FOLLOW_rule__HookCombinator__Group__0_in_ruleHookCombinator904); 
    13051396            rule__HookCombinator__Group__0(); 
    13061397 
     
    13251416        } 
    13261417        finally { 
    1327             if ( state.backtracking>0 ) { memoize(input, 26, ruleHookCombinator_StartIndex); } 
     1418            if ( state.backtracking>0 ) { memoize(input, 28, ruleHookCombinator_StartIndex); } 
    13281419 
    13291420                restoreStackSize(stackSize); 
     
    13361427 
    13371428    // $ANTLR start "entryRuleDefinitionList" 
    1338     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:433:1: entryRuleDefinitionList : ruleDefinitionList EOF ; 
     1429    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:461:1: entryRuleDefinitionList : ruleDefinitionList EOF ; 
    13391430    public final void entryRuleDefinitionList() throws RecognitionException { 
    13401431        int entryRuleDefinitionList_StartIndex = input.index(); 
    13411432        try { 
    1342             if ( state.backtracking>0 && alreadyParsedRule(input, 27) ) { return ; } 
    1343             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:434:1: ( ruleDefinitionList EOF ) 
    1344             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:435:1: ruleDefinitionList EOF 
     1433            if ( state.backtracking>0 && alreadyParsedRule(input, 29) ) { return ; } 
     1434            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:462:1: ( ruleDefinitionList EOF ) 
     1435            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:463:1: ruleDefinitionList EOF 
    13451436            { 
    13461437            if ( state.backtracking==0 ) { 
    13471438               before(grammarAccess.getDefinitionListRule());  
    13481439            } 
    1349             pushFollow(FOLLOW_ruleDefinitionList_in_entryRuleDefinitionList871); 
     1440            pushFollow(FOLLOW_ruleDefinitionList_in_entryRuleDefinitionList931); 
    13501441            ruleDefinitionList(); 
    13511442 
     
    13551446               after(grammarAccess.getDefinitionListRule());  
    13561447            } 
    1357             match(input,EOF,FOLLOW_EOF_in_entryRuleDefinitionList878); if (state.failed) return ; 
    1358  
    1359             } 
    1360  
    1361         } 
    1362         catch (RecognitionException re) { 
    1363             reportError(re); 
    1364             recover(input,re); 
    1365         } 
    1366         finally { 
    1367             if ( state.backtracking>0 ) { memoize(input, 27, entryRuleDefinitionList_StartIndex); } 
     1448            match(input,EOF,FOLLOW_EOF_in_entryRuleDefinitionList938); if (state.failed) return ; 
     1449 
     1450            } 
     1451 
     1452        } 
     1453        catch (RecognitionException re) { 
     1454            reportError(re); 
     1455            recover(input,re); 
     1456        } 
     1457        finally { 
     1458            if ( state.backtracking>0 ) { memoize(input, 29, entryRuleDefinitionList_StartIndex); } 
    13681459        } 
    13691460        return ; 
     
    13731464 
    13741465    // $ANTLR start "ruleDefinitionList" 
    1375     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:442:1: ruleDefinitionList : ( ( rule__DefinitionList__Group__0 ) ) ; 
     1466    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:470:1: ruleDefinitionList : ( ( rule__DefinitionList__Group__0 ) ) ; 
    13761467    public final void ruleDefinitionList() throws RecognitionException { 
    13771468        int ruleDefinitionList_StartIndex = input.index(); 
     
    13801471             
    13811472        try { 
    1382             if ( state.backtracking>0 && alreadyParsedRule(input, 28) ) { return ; } 
    1383             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:446:2: ( ( ( rule__DefinitionList__Group__0 ) ) ) 
    1384             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:447:1: ( ( rule__DefinitionList__Group__0 ) ) 
    1385             { 
    1386             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:447:1: ( ( rule__DefinitionList__Group__0 ) ) 
    1387             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:448:1: ( rule__DefinitionList__Group__0 ) 
     1473            if ( state.backtracking>0 && alreadyParsedRule(input, 30) ) { return ; } 
     1474            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:474:2: ( ( ( rule__DefinitionList__Group__0 ) ) ) 
     1475            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:475:1: ( ( rule__DefinitionList__Group__0 ) ) 
     1476            { 
     1477            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:475:1: ( ( rule__DefinitionList__Group__0 ) ) 
     1478            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:476:1: ( rule__DefinitionList__Group__0 ) 
    13881479            { 
    13891480            if ( state.backtracking==0 ) { 
    13901481               before(grammarAccess.getDefinitionListAccess().getGroup());  
    13911482            } 
    1392             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:449:1: ( rule__DefinitionList__Group__0 ) 
    1393             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:449:2: rule__DefinitionList__Group__0 
    1394             { 
    1395             pushFollow(FOLLOW_rule__DefinitionList__Group__0_in_ruleDefinitionList904); 
     1483            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:477:1: ( rule__DefinitionList__Group__0 ) 
     1484            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:477:2: rule__DefinitionList__Group__0 
     1485            { 
     1486            pushFollow(FOLLOW_rule__DefinitionList__Group__0_in_ruleDefinitionList964); 
    13961487            rule__DefinitionList__Group__0(); 
    13971488 
     
    14161507        } 
    14171508        finally { 
    1418             if ( state.backtracking>0 ) { memoize(input, 28, ruleDefinitionList_StartIndex); } 
     1509            if ( state.backtracking>0 ) { memoize(input, 30, ruleDefinitionList_StartIndex); } 
    14191510 
    14201511                restoreStackSize(stackSize); 
     
    14271518 
    14281519    // $ANTLR start "entryRuleSingleDefinition" 
    1429     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:461:1: entryRuleSingleDefinition : ruleSingleDefinition EOF ; 
     1520    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:489:1: entryRuleSingleDefinition : ruleSingleDefinition EOF ; 
    14301521    public final void entryRuleSingleDefinition() throws RecognitionException { 
    14311522        int entryRuleSingleDefinition_StartIndex = input.index(); 
    14321523        try { 
    1433             if ( state.backtracking>0 && alreadyParsedRule(input, 29) ) { return ; } 
    1434             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:462:1: ( ruleSingleDefinition EOF ) 
    1435             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:463:1: ruleSingleDefinition EOF 
     1524            if ( state.backtracking>0 && alreadyParsedRule(input, 31) ) { return ; } 
     1525            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:490:1: ( ruleSingleDefinition EOF ) 
     1526            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:491:1: ruleSingleDefinition EOF 
    14361527            { 
    14371528            if ( state.backtracking==0 ) { 
    14381529               before(grammarAccess.getSingleDefinitionRule());  
    14391530            } 
    1440             pushFollow(FOLLOW_ruleSingleDefinition_in_entryRuleSingleDefinition931); 
     1531            pushFollow(FOLLOW_ruleSingleDefinition_in_entryRuleSingleDefinition991); 
    14411532            ruleSingleDefinition(); 
    14421533 
     
    14461537               after(grammarAccess.getSingleDefinitionRule());  
    14471538            } 
    1448             match(input,EOF,FOLLOW_EOF_in_entryRuleSingleDefinition938); if (state.failed) return ; 
    1449  
    1450             } 
    1451  
    1452         } 
    1453         catch (RecognitionException re) { 
    1454             reportError(re); 
    1455             recover(input,re); 
    1456         } 
    1457         finally { 
    1458             if ( state.backtracking>0 ) { memoize(input, 29, entryRuleSingleDefinition_StartIndex); } 
     1539            match(input,EOF,FOLLOW_EOF_in_entryRuleSingleDefinition998); if (state.failed) return ; 
     1540 
     1541            } 
     1542 
     1543        } 
     1544        catch (RecognitionException re) { 
     1545            reportError(re); 
     1546            recover(input,re); 
     1547        } 
     1548        finally { 
     1549            if ( state.backtracking>0 ) { memoize(input, 31, entryRuleSingleDefinition_StartIndex); } 
    14591550        } 
    14601551        return ; 
     
    14641555 
    14651556    // $ANTLR start "ruleSingleDefinition" 
    1466     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:470:1: ruleSingleDefinition : ( ( ( rule__SingleDefinition__TermsAssignment ) ) ( ( rule__SingleDefinition__TermsAssignment )* ) ) ; 
     1557    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:498:1: ruleSingleDefinition : ( ( ( rule__SingleDefinition__TermsAssignment ) ) ( ( rule__SingleDefinition__TermsAssignment )* ) ) ; 
    14671558    public final void ruleSingleDefinition() throws RecognitionException { 
    14681559        int ruleSingleDefinition_StartIndex = input.index(); 
     
    14711562             
    14721563        try { 
    1473             if ( state.backtracking>0 && alreadyParsedRule(input, 30) ) { return ; } 
    1474             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:474:2: ( ( ( ( rule__SingleDefinition__TermsAssignment ) ) ( ( rule__SingleDefinition__TermsAssignment )* ) ) ) 
    1475             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:475:1: ( ( ( rule__SingleDefinition__TermsAssignment ) ) ( ( rule__SingleDefinition__TermsAssignment )* ) ) 
    1476             { 
    1477             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:475:1: ( ( ( rule__SingleDefinition__TermsAssignment ) ) ( ( rule__SingleDefinition__TermsAssignment )* ) ) 
    1478             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:476:1: ( ( rule__SingleDefinition__TermsAssignment ) ) ( ( rule__SingleDefinition__TermsAssignment )* ) 
    1479             { 
    1480             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:476:1: ( ( rule__SingleDefinition__TermsAssignment ) ) 
    1481             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:477:1: ( rule__SingleDefinition__TermsAssignment ) 
     1564            if ( state.backtracking>0 && alreadyParsedRule(input, 32) ) { return ; } 
     1565            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:502:2: ( ( ( ( rule__SingleDefinition__TermsAssignment ) ) ( ( rule__SingleDefinition__TermsAssignment )* ) ) ) 
     1566            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:503:1: ( ( ( rule__SingleDefinition__TermsAssignment ) ) ( ( rule__SingleDefinition__TermsAssignment )* ) ) 
     1567            { 
     1568            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:503:1: ( ( ( rule__SingleDefinition__TermsAssignment ) ) ( ( rule__SingleDefinition__TermsAssignment )* ) ) 
     1569            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:504:1: ( ( rule__SingleDefinition__TermsAssignment ) ) ( ( rule__SingleDefinition__TermsAssignment )* ) 
     1570            { 
     1571            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:504:1: ( ( rule__SingleDefinition__TermsAssignment ) ) 
     1572            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:505:1: ( rule__SingleDefinition__TermsAssignment ) 
    14821573            { 
    14831574            if ( state.backtracking==0 ) { 
    14841575               before(grammarAccess.getSingleDefinitionAccess().getTermsAssignment());  
    14851576            } 
    1486             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:478:1: ( rule__SingleDefinition__TermsAssignment ) 
    1487             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:478:2: rule__SingleDefinition__TermsAssignment 
    1488             { 
    1489             pushFollow(FOLLOW_rule__SingleDefinition__TermsAssignment_in_ruleSingleDefinition966); 
     1577            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:506:1: ( rule__SingleDefinition__TermsAssignment ) 
     1578            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:506:2: rule__SingleDefinition__TermsAssignment 
     1579            { 
     1580            pushFollow(FOLLOW_rule__SingleDefinition__TermsAssignment_in_ruleSingleDefinition1026); 
    14901581            rule__SingleDefinition__TermsAssignment(); 
    14911582 
     
    15011592            } 
    15021593 
    1503             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:481:1: ( ( rule__SingleDefinition__TermsAssignment )* ) 
    1504             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:482:1: ( rule__SingleDefinition__TermsAssignment )* 
     1594            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:509:1: ( ( rule__SingleDefinition__TermsAssignment )* ) 
     1595            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:510:1: ( rule__SingleDefinition__TermsAssignment )* 
    15051596            { 
    15061597            if ( state.backtracking==0 ) { 
    15071598               before(grammarAccess.getSingleDefinitionAccess().getTermsAssignment());  
    15081599            } 
    1509             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:483:1: ( rule__SingleDefinition__TermsAssignment )* 
     1600            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:511:1: ( rule__SingleDefinition__TermsAssignment )* 
    15101601            loop2: 
    15111602            do { 
     
    15381629                switch (alt2) { 
    15391630                case 1 : 
    1540                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:483:2: rule__SingleDefinition__TermsAssignment 
     1631                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:511:2: rule__SingleDefinition__TermsAssignment 
    15411632                    { 
    1542                     pushFollow(FOLLOW_rule__SingleDefinition__TermsAssignment_in_ruleSingleDefinition978); 
     1633                    pushFollow(FOLLOW_rule__SingleDefinition__TermsAssignment_in_ruleSingleDefinition1038); 
    15431634                    rule__SingleDefinition__TermsAssignment(); 
    15441635 
     
    15721663        } 
    15731664        finally { 
    1574             if ( state.backtracking>0 ) { memoize(input, 30, ruleSingleDefinition_StartIndex); } 
     1665            if ( state.backtracking>0 ) { memoize(input, 32, ruleSingleDefinition_StartIndex); } 
    15751666 
    15761667                restoreStackSize(stackSize); 
     
    15831674 
    15841675    // $ANTLR start "entryRuleTerm" 
    1585     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:496:1: entryRuleTerm : ruleTerm EOF ; 
     1676    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:524:1: entryRuleTerm : ruleTerm EOF ; 
    15861677    public final void entryRuleTerm() throws RecognitionException { 
    15871678        int entryRuleTerm_StartIndex = input.index(); 
    15881679        try { 
    1589             if ( state.backtracking>0 && alreadyParsedRule(input, 31) ) { return ; } 
    1590             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:497:1: ( ruleTerm EOF ) 
    1591             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:498:1: ruleTerm EOF 
     1680            if ( state.backtracking>0 && alreadyParsedRule(input, 33) ) { return ; } 
     1681            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:525:1: ( ruleTerm EOF ) 
     1682            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:526:1: ruleTerm EOF 
    15921683            { 
    15931684            if ( state.backtracking==0 ) { 
    15941685               before(grammarAccess.getTermRule());  
    15951686            } 
    1596             pushFollow(FOLLOW_ruleTerm_in_entryRuleTerm1008); 
     1687            pushFollow(FOLLOW_ruleTerm_in_entryRuleTerm1068); 
    15971688            ruleTerm(); 
    15981689 
     
    16021693               after(grammarAccess.getTermRule());  
    16031694            } 
    1604             match(input,EOF,FOLLOW_EOF_in_entryRuleTerm1015); if (state.failed) return ; 
    1605  
    1606             } 
    1607  
    1608         } 
    1609         catch (RecognitionException re) { 
    1610             reportError(re); 
    1611             recover(input,re); 
    1612         } 
    1613         finally { 
    1614             if ( state.backtracking>0 ) { memoize(input, 31, entryRuleTerm_StartIndex); } 
     1695            match(input,EOF,FOLLOW_EOF_in_entryRuleTerm1075); if (state.failed) return ; 
     1696 
     1697            } 
     1698 
     1699        } 
     1700        catch (RecognitionException re) { 
     1701            reportError(re); 
     1702            recover(input,re); 
     1703        } 
     1704        finally { 
     1705            if ( state.backtracking>0 ) { memoize(input, 33, entryRuleTerm_StartIndex); } 
    16151706        } 
    16161707        return ; 
     
    16201711 
    16211712    // $ANTLR start "ruleTerm" 
    1622     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:505:1: ruleTerm : ( ( rule__Term__Alternatives ) ) ; 
     1713    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:533:1: ruleTerm : ( ( rule__Term__Alternatives ) ) ; 
    16231714    public final void ruleTerm() throws RecognitionException { 
    16241715        int ruleTerm_StartIndex = input.index(); 
     
    16271718             
    16281719        try { 
    1629             if ( state.backtracking>0 && alreadyParsedRule(input, 32) ) { return ; } 
    1630             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:509:2: ( ( ( rule__Term__Alternatives ) ) ) 
    1631             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:510:1: ( ( rule__Term__Alternatives ) ) 
    1632             { 
    1633             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:510:1: ( ( rule__Term__Alternatives ) ) 
    1634             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:511:1: ( rule__Term__Alternatives ) 
     1720            if ( state.backtracking>0 && alreadyParsedRule(input, 34) ) { return ; } 
     1721            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:537:2: ( ( ( rule__Term__Alternatives ) ) ) 
     1722            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:538:1: ( ( rule__Term__Alternatives ) ) 
     1723            { 
     1724            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:538:1: ( ( rule__Term__Alternatives ) ) 
     1725            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:539:1: ( rule__Term__Alternatives ) 
    16351726            { 
    16361727            if ( state.backtracking==0 ) { 
    16371728               before(grammarAccess.getTermAccess().getAlternatives());  
    16381729            } 
    1639             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:512:1: ( rule__Term__Alternatives ) 
    1640             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:512:2: rule__Term__Alternatives 
    1641             { 
    1642             pushFollow(FOLLOW_rule__Term__Alternatives_in_ruleTerm1041); 
     1730            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:540:1: ( rule__Term__Alternatives ) 
     1731            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:540:2: rule__Term__Alternatives 
     1732            { 
     1733            pushFollow(FOLLOW_rule__Term__Alternatives_in_ruleTerm1101); 
    16431734            rule__Term__Alternatives(); 
    16441735 
     
    16631754        } 
    16641755        finally { 
    1665             if ( state.backtracking>0 ) { memoize(input, 32, ruleTerm_StartIndex); } 
     1756            if ( state.backtracking>0 ) { memoize(input, 34, ruleTerm_StartIndex); } 
    16661757 
    16671758                restoreStackSize(stackSize); 
     
    16741765 
    16751766    // $ANTLR start "entryRuleAtom" 
    1676     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:524:1: entryRuleAtom : ruleAtom EOF ; 
     1767    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:552:1: entryRuleAtom : ruleAtom EOF ; 
    16771768    public final void entryRuleAtom() throws RecognitionException { 
    16781769        int entryRuleAtom_StartIndex = input.index(); 
    16791770        try { 
    1680             if ( state.backtracking>0 && alreadyParsedRule(input, 33) ) { return ; } 
    1681             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:525:1: ( ruleAtom EOF ) 
    1682             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:526:1: ruleAtom EOF 
     1771            if ( state.backtracking>0 && alreadyParsedRule(input, 35) ) { return ; } 
     1772            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:553:1: ( ruleAtom EOF ) 
     1773            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:554:1: ruleAtom EOF 
    16831774            { 
    16841775            if ( state.backtracking==0 ) { 
    16851776               before(grammarAccess.getAtomRule());  
    16861777            } 
    1687             pushFollow(FOLLOW_ruleAtom_in_entryRuleAtom1068); 
     1778            pushFollow(FOLLOW_ruleAtom_in_entryRuleAtom1128); 
    16881779            ruleAtom(); 
    16891780 
     
    16931784               after(grammarAccess.getAtomRule());  
    16941785            } 
    1695             match(input,EOF,FOLLOW_EOF_in_entryRuleAtom1075); if (state.failed) return ; 
    1696  
    1697             } 
    1698  
    1699         } 
    1700         catch (RecognitionException re) { 
    1701             reportError(re); 
    1702             recover(input,re); 
    1703         } 
    1704         finally { 
    1705             if ( state.backtracking>0 ) { memoize(input, 33, entryRuleAtom_StartIndex); } 
     1786            match(input,EOF,FOLLOW_EOF_in_entryRuleAtom1135); if (state.failed) return ; 
     1787 
     1788            } 
     1789 
     1790        } 
     1791        catch (RecognitionException re) { 
     1792            reportError(re); 
     1793            recover(input,re); 
     1794        } 
     1795        finally { 
     1796            if ( state.backtracking>0 ) { memoize(input, 35, entryRuleAtom_StartIndex); } 
    17061797        } 
    17071798        return ; 
     
    17111802 
    17121803    // $ANTLR start "ruleAtom" 
    1713     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:533:1: ruleAtom : ( ( rule__Atom__Alternatives ) ) ; 
     1804    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:561:1: ruleAtom : ( ( rule__Atom__Alternatives ) ) ; 
    17141805    public final void ruleAtom() throws RecognitionException { 
    17151806        int ruleAtom_StartIndex = input.index(); 
     
    17181809             
    17191810        try { 
    1720             if ( state.backtracking>0 && alreadyParsedRule(input, 34) ) { return ; } 
    1721             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:537:2: ( ( ( rule__Atom__Alternatives ) ) ) 
    1722             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:538:1: ( ( rule__Atom__Alternatives ) ) 
    1723             { 
    1724             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:538:1: ( ( rule__Atom__Alternatives ) ) 
    1725             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:539:1: ( rule__Atom__Alternatives ) 
     1811            if ( state.backtracking>0 && alreadyParsedRule(input, 36) ) { return ; } 
     1812            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:565:2: ( ( ( rule__Atom__Alternatives ) ) ) 
     1813            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:566:1: ( ( rule__Atom__Alternatives ) ) 
     1814            { 
     1815            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:566:1: ( ( rule__Atom__Alternatives ) ) 
     1816            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:567:1: ( rule__Atom__Alternatives ) 
    17261817            { 
    17271818            if ( state.backtracking==0 ) { 
    17281819               before(grammarAccess.getAtomAccess().getAlternatives());  
    17291820            } 
    1730             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:540:1: ( rule__Atom__Alternatives ) 
    1731             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:540:2: rule__Atom__Alternatives 
    1732             { 
    1733             pushFollow(FOLLOW_rule__Atom__Alternatives_in_ruleAtom1101); 
     1821            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:568:1: ( rule__Atom__Alternatives ) 
     1822            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:568:2: rule__Atom__Alternatives 
     1823            { 
     1824            pushFollow(FOLLOW_rule__Atom__Alternatives_in_ruleAtom1161); 
    17341825            rule__Atom__Alternatives(); 
    17351826 
     
    17541845        } 
    17551846        finally { 
    1756             if ( state.backtracking>0 ) { memoize(input, 34, ruleAtom_StartIndex); } 
     1847            if ( state.backtracking>0 ) { memoize(input, 36, ruleAtom_StartIndex); } 
    17571848 
    17581849                restoreStackSize(stackSize); 
     
    17651856 
    17661857    // $ANTLR start "entryRuleRuleReference" 
    1767     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:552:1: entryRuleRuleReference : ruleRuleReference EOF ; 
     1858    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:580:1: entryRuleRuleReference : ruleRuleReference EOF ; 
    17681859    public final void entryRuleRuleReference() throws RecognitionException { 
    17691860        int entryRuleRuleReference_StartIndex = input.index(); 
    17701861        try { 
    1771             if ( state.backtracking>0 && alreadyParsedRule(input, 35) ) { return ; } 
    1772             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:553:1: ( ruleRuleReference EOF ) 
    1773             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:554:1: ruleRuleReference EOF 
     1862            if ( state.backtracking>0 && alreadyParsedRule(input, 37) ) { return ; } 
     1863            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:581:1: ( ruleRuleReference EOF ) 
     1864            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:582:1: ruleRuleReference EOF 
    17741865            { 
    17751866            if ( state.backtracking==0 ) { 
    17761867               before(grammarAccess.getRuleReferenceRule());  
    17771868            } 
    1778             pushFollow(FOLLOW_ruleRuleReference_in_entryRuleRuleReference1128); 
     1869            pushFollow(FOLLOW_ruleRuleReference_in_entryRuleRuleReference1188); 
    17791870            ruleRuleReference(); 
    17801871 
     
    17841875               after(grammarAccess.getRuleReferenceRule());  
    17851876            } 
    1786             match(input,EOF,FOLLOW_EOF_in_entryRuleRuleReference1135); if (state.failed) return ; 
    1787  
    1788             } 
    1789  
    1790         } 
    1791         catch (RecognitionException re) { 
    1792             reportError(re); 
    1793             recover(input,re); 
    1794         } 
    1795         finally { 
    1796             if ( state.backtracking>0 ) { memoize(input, 35, entryRuleRuleReference_StartIndex); } 
     1877            match(input,EOF,FOLLOW_EOF_in_entryRuleRuleReference1195); if (state.failed) return ; 
     1878 
     1879            } 
     1880 
     1881        } 
     1882        catch (RecognitionException re) { 
     1883            reportError(re); 
     1884            recover(input,re); 
     1885        } 
     1886        finally { 
     1887            if ( state.backtracking>0 ) { memoize(input, 37, entryRuleRuleReference_StartIndex); } 
    17971888        } 
    17981889        return ; 
     
    18021893 
    18031894    // $ANTLR start "ruleRuleReference" 
    1804     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:561:1: ruleRuleReference : ( ( rule__RuleReference__RulerefAssignment ) ) ; 
     1895    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:589:1: ruleRuleReference : ( ( rule__RuleReference__RulerefAssignment ) ) ; 
    18051896    public final void ruleRuleReference() throws RecognitionException { 
    18061897        int ruleRuleReference_StartIndex = input.index(); 
     
    18091900             
    18101901        try { 
    1811             if ( state.backtracking>0 && alreadyParsedRule(input, 36) ) { return ; } 
    1812             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:565:2: ( ( ( rule__RuleReference__RulerefAssignment ) ) ) 
    1813             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:566:1: ( ( rule__RuleReference__RulerefAssignment ) ) 
    1814             { 
    1815             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:566:1: ( ( rule__RuleReference__RulerefAssignment ) ) 
    1816             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:567:1: ( rule__RuleReference__RulerefAssignment ) 
     1902            if ( state.backtracking>0 && alreadyParsedRule(input, 38) ) { return ; } 
     1903            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:593:2: ( ( ( rule__RuleReference__RulerefAssignment ) ) ) 
     1904            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:594:1: ( ( rule__RuleReference__RulerefAssignment ) ) 
     1905            { 
     1906            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:594:1: ( ( rule__RuleReference__RulerefAssignment ) ) 
     1907            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:595:1: ( rule__RuleReference__RulerefAssignment ) 
    18171908            { 
    18181909            if ( state.backtracking==0 ) { 
    18191910               before(grammarAccess.getRuleReferenceAccess().getRulerefAssignment());  
    18201911            } 
    1821             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:568:1: ( rule__RuleReference__RulerefAssignment ) 
    1822             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:568:2: rule__RuleReference__RulerefAssignment 
    1823             { 
    1824             pushFollow(FOLLOW_rule__RuleReference__RulerefAssignment_in_ruleRuleReference1161); 
     1912            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:596:1: ( rule__RuleReference__RulerefAssignment ) 
     1913            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:596:2: rule__RuleReference__RulerefAssignment 
     1914            { 
     1915            pushFollow(FOLLOW_rule__RuleReference__RulerefAssignment_in_ruleRuleReference1221); 
    18251916            rule__RuleReference__RulerefAssignment(); 
    18261917 
     
    18451936        } 
    18461937        finally { 
    1847             if ( state.backtracking>0 ) { memoize(input, 36, ruleRuleReference_StartIndex); } 
     1938            if ( state.backtracking>0 ) { memoize(input, 38, ruleRuleReference_StartIndex); } 
    18481939 
    18491940                restoreStackSize(stackSize); 
     
    18561947 
    18571948    // $ANTLR start "entryRuleStringRule" 
    1858     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:580:1: entryRuleStringRule : ruleStringRule EOF ; 
     1949    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:608:1: entryRuleStringRule : ruleStringRule EOF ; 
    18591950    public final void entryRuleStringRule() throws RecognitionException { 
    18601951        int entryRuleStringRule_StartIndex = input.index(); 
    18611952        try { 
    1862             if ( state.backtracking>0 && alreadyParsedRule(input, 37) ) { return ; } 
    1863             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:581:1: ( ruleStringRule EOF ) 
    1864             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:582:1: ruleStringRule EOF 
     1953            if ( state.backtracking>0 && alreadyParsedRule(input, 39) ) { return ; } 
     1954            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:609:1: ( ruleStringRule EOF ) 
     1955            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:610:1: ruleStringRule EOF 
    18651956            { 
    18661957            if ( state.backtracking==0 ) { 
    18671958               before(grammarAccess.getStringRuleRule());  
    18681959            } 
    1869             pushFollow(FOLLOW_ruleStringRule_in_entryRuleStringRule1188); 
     1960            pushFollow(FOLLOW_ruleStringRule_in_entryRuleStringRule1248); 
    18701961            ruleStringRule(); 
    18711962 
     
    18751966               after(grammarAccess.getStringRuleRule());  
    18761967            } 
    1877             match(input,EOF,FOLLOW_EOF_in_entryRuleStringRule1195); if (state.failed) return ; 
    1878  
    1879             } 
    1880  
    1881         } 
    1882         catch (RecognitionException re) { 
    1883             reportError(re); 
    1884             recover(input,re); 
    1885         } 
    1886         finally { 
    1887             if ( state.backtracking>0 ) { memoize(input, 37, entryRuleStringRule_StartIndex); } 
     1968            match(input,EOF,FOLLOW_EOF_in_entryRuleStringRule1255); if (state.failed) return ; 
     1969 
     1970            } 
     1971 
     1972        } 
     1973        catch (RecognitionException re) { 
     1974            reportError(re); 
     1975            recover(input,re); 
     1976        } 
     1977        finally { 
     1978            if ( state.backtracking>0 ) { memoize(input, 39, entryRuleStringRule_StartIndex); } 
    18881979        } 
    18891980        return ; 
     
    18931984 
    18941985    // $ANTLR start "ruleStringRule" 
    1895     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:589:1: ruleStringRule : ( ( rule__StringRule__Alternatives ) ) ; 
     1986    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:617:1: ruleStringRule : ( ( rule__StringRule__Alternatives ) ) ; 
    18961987    public final void ruleStringRule() throws RecognitionException { 
    18971988        int ruleStringRule_StartIndex = input.index(); 
     
    19001991             
    19011992        try { 
    1902             if ( state.backtracking>0 && alreadyParsedRule(input, 38) ) { return ; } 
    1903             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:593:2: ( ( ( rule__StringRule__Alternatives ) ) ) 
    1904             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:594:1: ( ( rule__StringRule__Alternatives ) ) 
    1905             { 
    1906             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:594:1: ( ( rule__StringRule__Alternatives ) ) 
    1907             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:595:1: ( rule__StringRule__Alternatives ) 
     1993            if ( state.backtracking>0 && alreadyParsedRule(input, 40) ) { return ; } 
     1994            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:621:2: ( ( ( rule__StringRule__Alternatives ) ) ) 
     1995            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:622:1: ( ( rule__StringRule__Alternatives ) ) 
     1996            { 
     1997            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:622:1: ( ( rule__StringRule__Alternatives ) ) 
     1998            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:623:1: ( rule__StringRule__Alternatives ) 
    19081999            { 
    19092000            if ( state.backtracking==0 ) { 
    19102001               before(grammarAccess.getStringRuleAccess().getAlternatives());  
    19112002            } 
    1912             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:596:1: ( rule__StringRule__Alternatives ) 
    1913             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:596:2: rule__StringRule__Alternatives 
    1914             { 
    1915             pushFollow(FOLLOW_rule__StringRule__Alternatives_in_ruleStringRule1221); 
     2003            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:624:1: ( rule__StringRule__Alternatives ) 
     2004            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:624:2: rule__StringRule__Alternatives 
     2005            { 
     2006            pushFollow(FOLLOW_rule__StringRule__Alternatives_in_ruleStringRule1281); 
    19162007            rule__StringRule__Alternatives(); 
    19172008 
     
    19362027        } 
    19372028        finally { 
    1938             if ( state.backtracking>0 ) { memoize(input, 38, ruleStringRule_StartIndex); } 
     2029            if ( state.backtracking>0 ) { memoize(input, 40, ruleStringRule_StartIndex); } 
    19392030 
    19402031                restoreStackSize(stackSize); 
     
    19472038 
    19482039    // $ANTLR start "entryRuleGroupedSequence" 
    1949     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:608:1: entryRuleGroupedSequence : ruleGroupedSequence EOF ; 
     2040    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:636:1: entryRuleGroupedSequence : ruleGroupedSequence EOF ; 
    19502041    public final void entryRuleGroupedSequence() throws RecognitionException { 
    19512042        int entryRuleGroupedSequence_StartIndex = input.index(); 
    19522043        try { 
    1953             if ( state.backtracking>0 && alreadyParsedRule(input, 39) ) { return ; } 
    1954             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:609:1: ( ruleGroupedSequence EOF ) 
    1955             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:610:1: ruleGroupedSequence EOF 
     2044            if ( state.backtracking>0 && alreadyParsedRule(input, 41) ) { return ; } 
     2045            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:637:1: ( ruleGroupedSequence EOF ) 
     2046            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:638:1: ruleGroupedSequence EOF 
    19562047            { 
    19572048            if ( state.backtracking==0 ) { 
    19582049               before(grammarAccess.getGroupedSequenceRule());  
    19592050            } 
    1960             pushFollow(FOLLOW_ruleGroupedSequence_in_entryRuleGroupedSequence1248); 
     2051            pushFollow(FOLLOW_ruleGroupedSequence_in_entryRuleGroupedSequence1308); 
    19612052            ruleGroupedSequence(); 
    19622053 
     
    19662057               after(grammarAccess.getGroupedSequenceRule());  
    19672058            } 
    1968             match(input,EOF,FOLLOW_EOF_in_entryRuleGroupedSequence1255); if (state.failed) return ; 
    1969  
    1970             } 
    1971  
    1972         } 
    1973         catch (RecognitionException re) { 
    1974             reportError(re); 
    1975             recover(input,re); 
    1976         } 
    1977         finally { 
    1978             if ( state.backtracking>0 ) { memoize(input, 39, entryRuleGroupedSequence_StartIndex); } 
     2059            match(input,EOF,FOLLOW_EOF_in_entryRuleGroupedSequence1315); if (state.failed) return ; 
     2060 
     2061            } 
     2062 
     2063        } 
     2064        catch (RecognitionException re) { 
     2065            reportError(re); 
     2066            recover(input,re); 
     2067        } 
     2068        finally { 
     2069            if ( state.backtracking>0 ) { memoize(input, 41, entryRuleGroupedSequence_StartIndex); } 
    19792070        } 
    19802071        return ; 
     
    19842075 
    19852076    // $ANTLR start "ruleGroupedSequence" 
    1986     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:617:1: ruleGroupedSequence : ( ( rule__GroupedSequence__Group__0 ) ) ; 
     2077    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:645:1: ruleGroupedSequence : ( ( rule__GroupedSequence__Group__0 ) ) ; 
    19872078    public final void ruleGroupedSequence() throws RecognitionException { 
    19882079        int ruleGroupedSequence_StartIndex = input.index(); 
     
    19912082             
    19922083        try { 
    1993             if ( state.backtracking>0 && alreadyParsedRule(input, 40) ) { return ; } 
    1994             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:621:2: ( ( ( rule__GroupedSequence__Group__0 ) ) ) 
    1995             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:622:1: ( ( rule__GroupedSequence__Group__0 ) ) 
    1996             { 
    1997             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:622:1: ( ( rule__GroupedSequence__Group__0 ) ) 
    1998             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:623:1: ( rule__GroupedSequence__Group__0 ) 
     2084            if ( state.backtracking>0 && alreadyParsedRule(input, 42) ) { return ; } 
     2085            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:649:2: ( ( ( rule__GroupedSequence__Group__0 ) ) ) 
     2086            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:650:1: ( ( rule__GroupedSequence__Group__0 ) ) 
     2087            { 
     2088            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:650:1: ( ( rule__GroupedSequence__Group__0 ) ) 
     2089            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:651:1: ( rule__GroupedSequence__Group__0 ) 
    19992090            { 
    20002091            if ( state.backtracking==0 ) { 
    20012092               before(grammarAccess.getGroupedSequenceAccess().getGroup());  
    20022093            } 
    2003             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:624:1: ( rule__GroupedSequence__Group__0 ) 
    2004             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:624:2: rule__GroupedSequence__Group__0 
    2005             { 
    2006             pushFollow(FOLLOW_rule__GroupedSequence__Group__0_in_ruleGroupedSequence1281); 
     2094            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:652:1: ( rule__GroupedSequence__Group__0 ) 
     2095            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:652:2: rule__GroupedSequence__Group__0 
     2096            { 
     2097            pushFollow(FOLLOW_rule__GroupedSequence__Group__0_in_ruleGroupedSequence1341); 
    20072098            rule__GroupedSequence__Group__0(); 
    20082099 
     
    20272118        } 
    20282119        finally { 
    2029             if ( state.backtracking>0 ) { memoize(input, 40, ruleGroupedSequence_StartIndex); } 
     2120            if ( state.backtracking>0 ) { memoize(input, 42, ruleGroupedSequence_StartIndex); } 
    20302121 
    20312122                restoreStackSize(stackSize); 
     
    20382129 
    20392130    // $ANTLR start "entryRuleOptionalSequence" 
    2040     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:636:1: entryRuleOptionalSequence : ruleOptionalSequence EOF ; 
     2131    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:664:1: entryRuleOptionalSequence : ruleOptionalSequence EOF ; 
    20412132    public final void entryRuleOptionalSequence() throws RecognitionException { 
    20422133        int entryRuleOptionalSequence_StartIndex = input.index(); 
    20432134        try { 
    2044             if ( state.backtracking>0 && alreadyParsedRule(input, 41) ) { return ; } 
    2045             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:637:1: ( ruleOptionalSequence EOF ) 
    2046             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:638:1: ruleOptionalSequence EOF 
     2135            if ( state.backtracking>0 && alreadyParsedRule(input, 43) ) { return ; } 
     2136            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:665:1: ( ruleOptionalSequence EOF ) 
     2137            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:666:1: ruleOptionalSequence EOF 
    20472138            { 
    20482139            if ( state.backtracking==0 ) { 
    20492140               before(grammarAccess.getOptionalSequenceRule());  
    20502141            } 
    2051             pushFollow(FOLLOW_ruleOptionalSequence_in_entryRuleOptionalSequence1308); 
     2142            pushFollow(FOLLOW_ruleOptionalSequence_in_entryRuleOptionalSequence1368); 
    20522143            ruleOptionalSequence(); 
    20532144 
     
    20572148               after(grammarAccess.getOptionalSequenceRule());  
    20582149            } 
    2059             match(input,EOF,FOLLOW_EOF_in_entryRuleOptionalSequence1315); if (state.failed) return ; 
    2060  
    2061             } 
    2062  
    2063         } 
    2064         catch (RecognitionException re) { 
    2065             reportError(re); 
    2066             recover(input,re); 
    2067         } 
    2068         finally { 
    2069             if ( state.backtracking>0 ) { memoize(input, 41, entryRuleOptionalSequence_StartIndex); } 
     2150            match(input,EOF,FOLLOW_EOF_in_entryRuleOptionalSequence1375); if (state.failed) return ; 
     2151 
     2152            } 
     2153 
     2154        } 
     2155        catch (RecognitionException re) { 
     2156            reportError(re); 
     2157            recover(input,re); 
     2158        } 
     2159        finally { 
     2160            if ( state.backtracking>0 ) { memoize(input, 43, entryRuleOptionalSequence_StartIndex); } 
    20702161        } 
    20712162        return ; 
     
    20752166 
    20762167    // $ANTLR start "ruleOptionalSequence" 
    2077     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:645:1: ruleOptionalSequence : ( ( rule__OptionalSequence__Group__0 ) ) ; 
     2168    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:673:1: ruleOptionalSequence : ( ( rule__OptionalSequence__Group__0 ) ) ; 
    20782169    public final void ruleOptionalSequence() throws RecognitionException { 
    20792170        int ruleOptionalSequence_StartIndex = input.index(); 
     
    20822173             
    20832174        try { 
    2084             if ( state.backtracking>0 && alreadyParsedRule(input, 42) ) { return ; } 
    2085             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:649:2: ( ( ( rule__OptionalSequence__Group__0 ) ) ) 
    2086             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:650:1: ( ( rule__OptionalSequence__Group__0 ) ) 
    2087             { 
    2088             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:650:1: ( ( rule__OptionalSequence__Group__0 ) ) 
    2089             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:651:1: ( rule__OptionalSequence__Group__0 ) 
     2175            if ( state.backtracking>0 && alreadyParsedRule(input, 44) ) { return ; } 
     2176            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:677:2: ( ( ( rule__OptionalSequence__Group__0 ) ) ) 
     2177            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:678:1: ( ( rule__OptionalSequence__Group__0 ) ) 
     2178            { 
     2179            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:678:1: ( ( rule__OptionalSequence__Group__0 ) ) 
     2180            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:679:1: ( rule__OptionalSequence__Group__0 ) 
    20902181            { 
    20912182            if ( state.backtracking==0 ) { 
    20922183               before(grammarAccess.getOptionalSequenceAccess().getGroup());  
    20932184            } 
    2094             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:652:1: ( rule__OptionalSequence__Group__0 ) 
    2095             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:652:2: rule__OptionalSequence__Group__0 
    2096             { 
    2097             pushFollow(FOLLOW_rule__OptionalSequence__Group__0_in_ruleOptionalSequence1341); 
     2185            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:680:1: ( rule__OptionalSequence__Group__0 ) 
     2186            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:680:2: rule__OptionalSequence__Group__0 
     2187            { 
     2188            pushFollow(FOLLOW_rule__OptionalSequence__Group__0_in_ruleOptionalSequence1401); 
    20982189            rule__OptionalSequence__Group__0(); 
    20992190 
     
    21182209        } 
    21192210        finally { 
    2120             if ( state.backtracking>0 ) { memoize(input, 42, ruleOptionalSequence_StartIndex); } 
     2211            if ( state.backtracking>0 ) { memoize(input, 44, ruleOptionalSequence_StartIndex); } 
    21212212 
    21222213                restoreStackSize(stackSize); 
     
    21292220 
    21302221    // $ANTLR start "entryRuleRepeatedSequence" 
    2131     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:664:1: entryRuleRepeatedSequence : ruleRepeatedSequence EOF ; 
     2222    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:692:1: entryRuleRepeatedSequence : ruleRepeatedSequence EOF ; 
    21322223    public final void entryRuleRepeatedSequence() throws RecognitionException { 
    21332224        int entryRuleRepeatedSequence_StartIndex = input.index(); 
    21342225        try { 
    2135             if ( state.backtracking>0 && alreadyParsedRule(input, 43) ) { return ; } 
    2136             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:665:1: ( ruleRepeatedSequence EOF ) 
    2137             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:666:1: ruleRepeatedSequence EOF 
     2226            if ( state.backtracking>0 && alreadyParsedRule(input, 45) ) { return ; } 
     2227            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:693:1: ( ruleRepeatedSequence EOF ) 
     2228            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:694:1: ruleRepeatedSequence EOF 
    21382229            { 
    21392230            if ( state.backtracking==0 ) { 
    21402231               before(grammarAccess.getRepeatedSequenceRule());  
    21412232            } 
    2142             pushFollow(FOLLOW_ruleRepeatedSequence_in_entryRuleRepeatedSequence1368); 
     2233            pushFollow(FOLLOW_ruleRepeatedSequence_in_entryRuleRepeatedSequence1428); 
    21432234            ruleRepeatedSequence(); 
    21442235 
     
    21482239               after(grammarAccess.getRepeatedSequenceRule());  
    21492240            } 
    2150             match(input,EOF,FOLLOW_EOF_in_entryRuleRepeatedSequence1375); if (state.failed) return ; 
    2151  
    2152             } 
    2153  
    2154         } 
    2155         catch (RecognitionException re) { 
    2156             reportError(re); 
    2157             recover(input,re); 
    2158         } 
    2159         finally { 
    2160             if ( state.backtracking>0 ) { memoize(input, 43, entryRuleRepeatedSequence_StartIndex); } 
     2241            match(input,EOF,FOLLOW_EOF_in_entryRuleRepeatedSequence1435); if (state.failed) return ; 
     2242 
     2243            } 
     2244 
     2245        } 
     2246        catch (RecognitionException re) { 
     2247            reportError(re); 
     2248            recover(input,re); 
     2249        } 
     2250        finally { 
     2251            if ( state.backtracking>0 ) { memoize(input, 45, entryRuleRepeatedSequence_StartIndex); } 
    21612252        } 
    21622253        return ; 
     
    21662257 
    21672258    // $ANTLR start "ruleRepeatedSequence" 
    2168     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:673:1: ruleRepeatedSequence : ( ( rule__RepeatedSequence__Group__0 ) ) ; 
     2259    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:701:1: ruleRepeatedSequence : ( ( rule__RepeatedSequence__Group__0 ) ) ; 
    21692260    public final void ruleRepeatedSequence() throws RecognitionException { 
    21702261        int ruleRepeatedSequence_StartIndex = input.index(); 
     
    21732264             
    21742265        try { 
    2175             if ( state.backtracking>0 && alreadyParsedRule(input, 44) ) { return ; } 
    2176             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:677:2: ( ( ( rule__RepeatedSequence__Group__0 ) ) ) 
    2177             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:678:1: ( ( rule__RepeatedSequence__Group__0 ) ) 
    2178             { 
    2179             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:678:1: ( ( rule__RepeatedSequence__Group__0 ) ) 
    2180             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:679:1: ( rule__RepeatedSequence__Group__0 ) 
     2266            if ( state.backtracking>0 && alreadyParsedRule(input, 46) ) { return ; } 
     2267            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:705:2: ( ( ( rule__RepeatedSequence__Group__0 ) ) ) 
     2268            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:706:1: ( ( rule__RepeatedSequence__Group__0 ) ) 
     2269            { 
     2270            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:706:1: ( ( rule__RepeatedSequence__Group__0 ) ) 
     2271            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:707:1: ( rule__RepeatedSequence__Group__0 ) 
    21812272            { 
    21822273            if ( state.backtracking==0 ) { 
    21832274               before(grammarAccess.getRepeatedSequenceAccess().getGroup());  
    21842275            } 
    2185             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:680:1: ( rule__RepeatedSequence__Group__0 ) 
    2186             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:680:2: rule__RepeatedSequence__Group__0 
    2187             { 
    2188             pushFollow(FOLLOW_rule__RepeatedSequence__Group__0_in_ruleRepeatedSequence1401); 
     2276            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:708:1: ( rule__RepeatedSequence__Group__0 ) 
     2277            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:708:2: rule__RepeatedSequence__Group__0 
     2278            { 
     2279            pushFollow(FOLLOW_rule__RepeatedSequence__Group__0_in_ruleRepeatedSequence1461); 
    21892280            rule__RepeatedSequence__Group__0(); 
    21902281 
     
    22092300        } 
    22102301        finally { 
    2211             if ( state.backtracking>0 ) { memoize(input, 44, ruleRepeatedSequence_StartIndex); } 
     2302            if ( state.backtracking>0 ) { memoize(input, 46, ruleRepeatedSequence_StartIndex); } 
    22122303 
    22132304                restoreStackSize(stackSize); 
     
    22202311 
    22212312    // $ANTLR start "entryRuleRepeatRange" 
    2222     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:692:1: entryRuleRepeatRange : ruleRepeatRange EOF ; 
     2313    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:720:1: entryRuleRepeatRange : ruleRepeatRange EOF ; 
    22232314    public final void entryRuleRepeatRange() throws RecognitionException { 
    22242315        int entryRuleRepeatRange_StartIndex = input.index(); 
    22252316        try { 
    2226             if ( state.backtracking>0 && alreadyParsedRule(input, 45) ) { return ; } 
    2227             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:693:1: ( ruleRepeatRange EOF ) 
    2228             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:694:1: ruleRepeatRange EOF 
     2317            if ( state.backtracking>0 && alreadyParsedRule(input, 47) ) { return ; } 
     2318            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:721:1: ( ruleRepeatRange EOF ) 
     2319            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:722:1: ruleRepeatRange EOF 
    22292320            { 
    22302321            if ( state.backtracking==0 ) { 
    22312322               before(grammarAccess.getRepeatRangeRule());  
    22322323            } 
    2233             pushFollow(FOLLOW_ruleRepeatRange_in_entryRuleRepeatRange1428); 
     2324            pushFollow(FOLLOW_ruleRepeatRange_in_entryRuleRepeatRange1488); 
    22342325            ruleRepeatRange(); 
    22352326 
     
    22392330               after(grammarAccess.getRepeatRangeRule());  
    22402331            } 
    2241             match(input,EOF,FOLLOW_EOF_in_entryRuleRepeatRange1435); if (state.failed) return ; 
    2242  
    2243             } 
    2244  
    2245         } 
    2246         catch (RecognitionException re) { 
    2247             reportError(re); 
    2248             recover(input,re); 
    2249         } 
    2250         finally { 
    2251             if ( state.backtracking>0 ) { memoize(input, 45, entryRuleRepeatRange_StartIndex); } 
     2332            match(input,EOF,FOLLOW_EOF_in_entryRuleRepeatRange1495); if (state.failed) return ; 
     2333 
     2334            } 
     2335 
     2336        } 
     2337        catch (RecognitionException re) { 
     2338            reportError(re); 
     2339            recover(input,re); 
     2340        } 
     2341        finally { 
     2342            if ( state.backtracking>0 ) { memoize(input, 47, entryRuleRepeatRange_StartIndex); } 
    22522343        } 
    22532344        return ; 
     
    22572348 
    22582349    // $ANTLR start "ruleRepeatRange" 
    2259     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:701:1: ruleRepeatRange : ( ( rule__RepeatRange__Group__0 ) ) ; 
     2350    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:729:1: ruleRepeatRange : ( ( rule__RepeatRange__Group__0 ) ) ; 
    22602351    public final void ruleRepeatRange() throws RecognitionException { 
    22612352        int ruleRepeatRange_StartIndex = input.index(); 
     
    22642355             
    22652356        try { 
    2266             if ( state.backtracking>0 && alreadyParsedRule(input, 46) ) { return ; } 
    2267             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:705:2: ( ( ( rule__RepeatRange__Group__0 ) ) ) 
    2268             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:706:1: ( ( rule__RepeatRange__Group__0 ) ) 
    2269             { 
    2270             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:706:1: ( ( rule__RepeatRange__Group__0 ) ) 
    2271             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:707:1: ( rule__RepeatRange__Group__0 ) 
     2357            if ( state.backtracking>0 && alreadyParsedRule(input, 48) ) { return ; } 
     2358            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:733:2: ( ( ( rule__RepeatRange__Group__0 ) ) ) 
     2359            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:734:1: ( ( rule__RepeatRange__Group__0 ) ) 
     2360            { 
     2361            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:734:1: ( ( rule__RepeatRange__Group__0 ) ) 
     2362            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:735:1: ( rule__RepeatRange__Group__0 ) 
    22722363            { 
    22732364            if ( state.backtracking==0 ) { 
    22742365               before(grammarAccess.getRepeatRangeAccess().getGroup());  
    22752366            } 
    2276             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:708:1: ( rule__RepeatRange__Group__0 ) 
    2277             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:708:2: rule__RepeatRange__Group__0 
    2278             { 
    2279             pushFollow(FOLLOW_rule__RepeatRange__Group__0_in_ruleRepeatRange1461); 
     2367            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:736:1: ( rule__RepeatRange__Group__0 ) 
     2368            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:736:2: rule__RepeatRange__Group__0 
     2369            { 
     2370            pushFollow(FOLLOW_rule__RepeatRange__Group__0_in_ruleRepeatRange1521); 
    22802371            rule__RepeatRange__Group__0(); 
    22812372 
     
    23002391        } 
    23012392        finally { 
    2302             if ( state.backtracking>0 ) { memoize(input, 46, ruleRepeatRange_StartIndex); } 
     2393            if ( state.backtracking>0 ) { memoize(input, 48, ruleRepeatRange_StartIndex); } 
    23032394 
    23042395                restoreStackSize(stackSize); 
     
    23112402 
    23122403    // $ANTLR start "rule__EtsiBnf__Alternatives" 
    2313     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:720:1: rule__EtsiBnf__Alternatives : ( ( ( rule__EtsiBnf__Group_0__0 ) ) | ( ( rule__EtsiBnf__Group_1__0 ) ) | ( ( rule__EtsiBnf__Group_2__0 ) ) ); 
     2404    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:748:1: rule__EtsiBnf__Alternatives : ( ( ( rule__EtsiBnf__Group_0__0 ) ) | ( ( rule__EtsiBnf__Group_1__0 ) ) | ( ( rule__EtsiBnf__Group_2__0 ) ) ); 
    23142405    public final void rule__EtsiBnf__Alternatives() throws RecognitionException { 
    23152406        int rule__EtsiBnf__Alternatives_StartIndex = input.index(); 
     
    23182409             
    23192410        try { 
    2320             if ( state.backtracking>0 && alreadyParsedRule(input, 47) ) { return ; } 
    2321             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:724:1: ( ( ( rule__EtsiBnf__Group_0__0 ) ) | ( ( rule__EtsiBnf__Group_1__0 ) ) | ( ( rule__EtsiBnf__Group_2__0 ) ) ) 
     2411            if ( state.backtracking>0 && alreadyParsedRule(input, 49) ) { return ; } 
     2412            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:752:1: ( ( ( rule__EtsiBnf__Group_0__0 ) ) | ( ( rule__EtsiBnf__Group_1__0 ) ) | ( ( rule__EtsiBnf__Group_2__0 ) ) ) 
    23222413            int alt3=3; 
    23232414            switch ( input.LA(1) ) { 
     
    23472438            switch (alt3) { 
    23482439                case 1 : 
    2349                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:725:1: ( ( rule__EtsiBnf__Group_0__0 ) ) 
     2440                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:753:1: ( ( rule__EtsiBnf__Group_0__0 ) ) 
    23502441                    { 
    2351                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:725:1: ( ( rule__EtsiBnf__Group_0__0 ) ) 
    2352                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:726:1: ( rule__EtsiBnf__Group_0__0 ) 
     2442                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:753:1: ( ( rule__EtsiBnf__Group_0__0 ) ) 
     2443                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:754:1: ( rule__EtsiBnf__Group_0__0 ) 
    23532444                    { 
    23542445                    if ( state.backtracking==0 ) { 
    23552446                       before(grammarAccess.getEtsiBnfAccess().getGroup_0());  
    23562447                    } 
    2357                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:727:1: ( rule__EtsiBnf__Group_0__0 ) 
    2358                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:727:2: rule__EtsiBnf__Group_0__0 
     2448                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:755:1: ( rule__EtsiBnf__Group_0__0 ) 
     2449                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:755:2: rule__EtsiBnf__Group_0__0 
    23592450                    { 
    2360                     pushFollow(FOLLOW_rule__EtsiBnf__Group_0__0_in_rule__EtsiBnf__Alternatives1497); 
     2451                    pushFollow(FOLLOW_rule__EtsiBnf__Group_0__0_in_rule__EtsiBnf__Alternatives1557); 
    23612452                    rule__EtsiBnf__Group_0__0(); 
    23622453 
     
    23762467                    break; 
    23772468                case 2 : 
    2378                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:731:6: ( ( rule__EtsiBnf__Group_1__0 ) ) 
     2469                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:759:6: ( ( rule__EtsiBnf__Group_1__0 ) ) 
    23792470                    { 
    2380                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:731:6: ( ( rule__EtsiBnf__Group_1__0 ) ) 
    2381                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:732:1: ( rule__EtsiBnf__Group_1__0 ) 
     2471                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:759:6: ( ( rule__EtsiBnf__Group_1__0 ) ) 
     2472                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:760:1: ( rule__EtsiBnf__Group_1__0 ) 
    23822473                    { 
    23832474                    if ( state.backtracking==0 ) { 
    23842475                       before(grammarAccess.getEtsiBnfAccess().getGroup_1());  
    23852476                    } 
    2386                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:733:1: ( rule__EtsiBnf__Group_1__0 ) 
    2387                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:733:2: rule__EtsiBnf__Group_1__0 
     2477                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:761:1: ( rule__EtsiBnf__Group_1__0 ) 
     2478                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:761:2: rule__EtsiBnf__Group_1__0 
    23882479                    { 
    2389                     pushFollow(FOLLOW_rule__EtsiBnf__Group_1__0_in_rule__EtsiBnf__Alternatives1515); 
     2480                    pushFollow(FOLLOW_rule__EtsiBnf__Group_1__0_in_rule__EtsiBnf__Alternatives1575); 
    23902481                    rule__EtsiBnf__Group_1__0(); 
    23912482 
     
    24052496                    break; 
    24062497                case 3 : 
    2407                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:737:6: ( ( rule__EtsiBnf__Group_2__0 ) ) 
     2498                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:765:6: ( ( rule__EtsiBnf__Group_2__0 ) ) 
    24082499                    { 
    2409                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:737:6: ( ( rule__EtsiBnf__Group_2__0 ) ) 
    2410                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:738:1: ( rule__EtsiBnf__Group_2__0 ) 
     2500                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:765:6: ( ( rule__EtsiBnf__Group_2__0 ) ) 
     2501                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:766:1: ( rule__EtsiBnf__Group_2__0 ) 
    24112502                    { 
    24122503                    if ( state.backtracking==0 ) { 
    24132504                       before(grammarAccess.getEtsiBnfAccess().getGroup_2());  
    24142505                    } 
    2415                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:739:1: ( rule__EtsiBnf__Group_2__0 ) 
    2416                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:739:2: rule__EtsiBnf__Group_2__0 
     2506                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:767:1: ( rule__EtsiBnf__Group_2__0 ) 
     2507                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:767:2: rule__EtsiBnf__Group_2__0 
    24172508                    { 
    2418                     pushFollow(FOLLOW_rule__EtsiBnf__Group_2__0_in_rule__EtsiBnf__Alternatives1533); 
     2509                    pushFollow(FOLLOW_rule__EtsiBnf__Group_2__0_in_rule__EtsiBnf__Alternatives1593); 
    24192510                    rule__EtsiBnf__Group_2__0(); 
    24202511 
     
    24412532        } 
    24422533        finally { 
    2443             if ( state.backtracking>0 ) { memoize(input, 47, rule__EtsiBnf__Alternatives_StartIndex); } 
     2534            if ( state.backtracking>0 ) { memoize(input, 49, rule__EtsiBnf__Alternatives_StartIndex); } 
    24442535 
    24452536                restoreStackSize(stackSize); 
     
    24522543 
    24532544    // $ANTLR start "rule__BnfEntry__Alternatives" 
    2454     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:748:1: rule__BnfEntry__Alternatives : ( ( ( rule__BnfEntry__SectionheaderAssignment_0 ) ) | ( ( rule__BnfEntry__RuleAssignment_1 ) ) ); 
     2545    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:776:1: rule__BnfEntry__Alternatives : ( ( ( rule__BnfEntry__SectionheaderAssignment_0 ) ) | ( ( rule__BnfEntry__RuleAssignment_1 ) ) | ( ( rule__BnfEntry__CommentAssignment_2 ) ) ); 
    24552546    public final void rule__BnfEntry__Alternatives() throws RecognitionException { 
    24562547        int rule__BnfEntry__Alternatives_StartIndex = input.index(); 
     
    24592550             
    24602551        try { 
    2461             if ( state.backtracking>0 && alreadyParsedRule(input, 48) ) { return ; } 
    2462             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:752:1: ( ( ( rule__BnfEntry__SectionheaderAssignment_0 ) ) | ( ( rule__BnfEntry__RuleAssignment_1 ) ) ) 
    2463             int alt4=2; 
    2464             int LA4_0 = input.LA(1); 
    2465  
    2466             if ( (LA4_0==RULE_SECTIONHEADER) ) { 
     2552            if ( state.backtracking>0 && alreadyParsedRule(input, 50) ) { return ; } 
     2553            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:780:1: ( ( ( rule__BnfEntry__SectionheaderAssignment_0 ) ) | ( ( rule__BnfEntry__RuleAssignment_1 ) ) | ( ( rule__BnfEntry__CommentAssignment_2 ) ) ) 
     2554            int alt4=3; 
     2555            switch ( input.LA(1) ) { 
     2556            case RULE_SECTIONHEADER: 
     2557                { 
    24672558                alt4=1; 
    2468             } 
    2469             else if ( (LA4_0==RULE_ID||LA4_0==RULE_INT) ) { 
     2559                } 
     2560                break; 
     2561            case RULE_ID: 
     2562            case RULE_INT: 
     2563                { 
    24702564                alt4=2; 
    2471             } 
    2472             else { 
     2565                } 
     2566                break; 
     2567            case RULE_ML_COMMENT: 
     2568                { 
     2569                alt4=3; 
     2570                } 
     2571                break; 
     2572            default: 
    24732573                if (state.backtracking>0) {state.failed=true; return ;} 
    24742574                NoViableAltException nvae = 
     
    24772577                throw nvae; 
    24782578            } 
     2579 
    24792580            switch (alt4) { 
    24802581                case 1 : 
    2481                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:753:1: ( ( rule__BnfEntry__SectionheaderAssignment_0 ) ) 
     2582                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:781:1: ( ( rule__BnfEntry__SectionheaderAssignment_0 ) ) 
    24822583                    { 
    2483                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:753:1: ( ( rule__BnfEntry__SectionheaderAssignment_0 ) ) 
    2484                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:754:1: ( rule__BnfEntry__SectionheaderAssignment_0 ) 
     2584                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:781:1: ( ( rule__BnfEntry__SectionheaderAssignment_0 ) ) 
     2585                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:782:1: ( rule__BnfEntry__SectionheaderAssignment_0 ) 
    24852586                    { 
    24862587                    if ( state.backtracking==0 ) { 
    24872588                       before(grammarAccess.getBnfEntryAccess().getSectionheaderAssignment_0());  
    24882589                    } 
    2489                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:755:1: ( rule__BnfEntry__SectionheaderAssignment_0 ) 
    2490                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:755:2: rule__BnfEntry__SectionheaderAssignment_0 
     2590                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:783:1: ( rule__BnfEntry__SectionheaderAssignment_0 ) 
     2591                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:783:2: rule__BnfEntry__SectionheaderAssignment_0 
    24912592                    { 
    2492                     pushFollow(FOLLOW_rule__BnfEntry__SectionheaderAssignment_0_in_rule__BnfEntry__Alternatives1566); 
     2593                    pushFollow(FOLLOW_rule__BnfEntry__SectionheaderAssignment_0_in_rule__BnfEntry__Alternatives1626); 
    24932594                    rule__BnfEntry__SectionheaderAssignment_0(); 
    24942595 
     
    25082609                    break; 
    25092610                case 2 : 
    2510                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:759:6: ( ( rule__BnfEntry__RuleAssignment_1 ) ) 
     2611                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:787:6: ( ( rule__BnfEntry__RuleAssignment_1 ) ) 
    25112612                    { 
    2512                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:759:6: ( ( rule__BnfEntry__RuleAssignment_1 ) ) 
    2513                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:760:1: ( rule__BnfEntry__RuleAssignment_1 ) 
     2613                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:787:6: ( ( rule__BnfEntry__RuleAssignment_1 ) ) 
     2614                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:788:1: ( rule__BnfEntry__RuleAssignment_1 ) 
    25142615                    { 
    25152616                    if ( state.backtracking==0 ) { 
    25162617                       before(grammarAccess.getBnfEntryAccess().getRuleAssignment_1());  
    25172618                    } 
    2518                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:761:1: ( rule__BnfEntry__RuleAssignment_1 ) 
    2519                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:761:2: rule__BnfEntry__RuleAssignment_1 
     2619                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:789:1: ( rule__BnfEntry__RuleAssignment_1 ) 
     2620                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:789:2: rule__BnfEntry__RuleAssignment_1 
    25202621                    { 
    2521                     pushFollow(FOLLOW_rule__BnfEntry__RuleAssignment_1_in_rule__BnfEntry__Alternatives1584); 
     2622                    pushFollow(FOLLOW_rule__BnfEntry__RuleAssignment_1_in_rule__BnfEntry__Alternatives1644); 
    25222623                    rule__BnfEntry__RuleAssignment_1(); 
    25232624 
     
    25362637                    } 
    25372638                    break; 
    2538  
    2539             } 
    2540         } 
    2541         catch (RecognitionException re) { 
    2542             reportError(re); 
    2543             recover(input,re); 
    2544         } 
    2545         finally { 
    2546             if ( state.backtracking>0 ) { memoize(input, 48, rule__BnfEntry__Alternatives_StartIndex); } 
     2639                case 3 : 
     2640                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:793:6: ( ( rule__BnfEntry__CommentAssignment_2 ) ) 
     2641                    { 
     2642                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:793:6: ( ( rule__BnfEntry__CommentAssignment_2 ) ) 
     2643                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:794:1: ( rule__BnfEntry__CommentAssignment_2 ) 
     2644                    { 
     2645                    if ( state.backtracking==0 ) { 
     2646                       before(grammarAccess.getBnfEntryAccess().getCommentAssignment_2());  
     2647                    } 
     2648                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:795:1: ( rule__BnfEntry__CommentAssignment_2 ) 
     2649                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:795:2: rule__BnfEntry__CommentAssignment_2 
     2650                    { 
     2651                    pushFollow(FOLLOW_rule__BnfEntry__CommentAssignment_2_in_rule__BnfEntry__Alternatives1662); 
     2652                    rule__BnfEntry__CommentAssignment_2(); 
     2653 
     2654                    state._fsp--; 
     2655                    if (state.failed) return ; 
     2656 
     2657                    } 
     2658 
     2659                    if ( state.backtracking==0 ) { 
     2660                       after(grammarAccess.getBnfEntryAccess().getCommentAssignment_2());  
     2661                    } 
     2662 
     2663                    } 
     2664 
     2665 
     2666                    } 
     2667                    break; 
     2668 
     2669            } 
     2670        } 
     2671        catch (RecognitionException re) { 
     2672            reportError(re); 
     2673            recover(input,re); 
     2674        } 
     2675        finally { 
     2676            if ( state.backtracking>0 ) { memoize(input, 50, rule__BnfEntry__Alternatives_StartIndex); } 
    25472677 
    25482678                restoreStackSize(stackSize); 
     
    25552685 
    25562686    // $ANTLR start "rule__DeltaEntry__Alternatives" 
    2557     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:770:1: rule__DeltaEntry__Alternatives : ( ( ( rule__DeltaEntry__RuleAssignment_0 ) ) | ( ( rule__DeltaEntry__SectionheaderAssignment_1 ) ) | ( ( rule__DeltaEntry__ExtRuleAssignment_2 ) ) ); 
     2687    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:804:1: rule__DeltaEntry__Alternatives : ( ( ( rule__DeltaEntry__RuleAssignment_0 ) ) | ( ( rule__DeltaEntry__SectionheaderAssignment_1 ) ) | ( ( rule__DeltaEntry__ExtRuleAssignment_2 ) ) ); 
    25582688    public final void rule__DeltaEntry__Alternatives() throws RecognitionException { 
    25592689        int rule__DeltaEntry__Alternatives_StartIndex = input.index(); 
     
    25622692             
    25632693        try { 
    2564             if ( state.backtracking>0 && alreadyParsedRule(input, 49) ) { return ; } 
    2565             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:774:1: ( ( ( rule__DeltaEntry__RuleAssignment_0 ) ) | ( ( rule__DeltaEntry__SectionheaderAssignment_1 ) ) | ( ( rule__DeltaEntry__ExtRuleAssignment_2 ) ) ) 
     2694            if ( state.backtracking>0 && alreadyParsedRule(input, 51) ) { return ; } 
     2695            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:808:1: ( ( ( rule__DeltaEntry__RuleAssignment_0 ) ) | ( ( rule__DeltaEntry__SectionheaderAssignment_1 ) ) | ( ( rule__DeltaEntry__ExtRuleAssignment_2 ) ) ) 
    25662696            int alt5=3; 
    25672697            switch ( input.LA(1) ) { 
     
    26802810            switch (alt5) { 
    26812811                case 1 : 
    2682                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:775:1: ( ( rule__DeltaEntry__RuleAssignment_0 ) ) 
     2812                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:809:1: ( ( rule__DeltaEntry__RuleAssignment_0 ) ) 
    26832813                    { 
    2684                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:775:1: ( ( rule__DeltaEntry__RuleAssignment_0 ) ) 
    2685                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:776:1: ( rule__DeltaEntry__RuleAssignment_0 ) 
     2814                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:809:1: ( ( rule__DeltaEntry__RuleAssignment_0 ) ) 
     2815                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:810:1: ( rule__DeltaEntry__RuleAssignment_0 ) 
    26862816                    { 
    26872817                    if ( state.backtracking==0 ) { 
    26882818                       before(grammarAccess.getDeltaEntryAccess().getRuleAssignment_0());  
    26892819                    } 
    2690                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:777:1: ( rule__DeltaEntry__RuleAssignment_0 ) 
    2691                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:777:2: rule__DeltaEntry__RuleAssignment_0 
     2820                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:811:1: ( rule__DeltaEntry__RuleAssignment_0 ) 
     2821                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:811:2: rule__DeltaEntry__RuleAssignment_0 
    26922822                    { 
    2693                     pushFollow(FOLLOW_rule__DeltaEntry__RuleAssignment_0_in_rule__DeltaEntry__Alternatives1617); 
     2823                    pushFollow(FOLLOW_rule__DeltaEntry__RuleAssignment_0_in_rule__DeltaEntry__Alternatives1695); 
    26942824                    rule__DeltaEntry__RuleAssignment_0(); 
    26952825 
     
    27092839                    break; 
    27102840                case 2 : 
    2711                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:781:6: ( ( rule__DeltaEntry__SectionheaderAssignment_1 ) ) 
     2841                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:815:6: ( ( rule__DeltaEntry__SectionheaderAssignment_1 ) ) 
    27122842                    { 
    2713                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:781:6: ( ( rule__DeltaEntry__SectionheaderAssignment_1 ) ) 
    2714                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:782:1: ( rule__DeltaEntry__SectionheaderAssignment_1 ) 
     2843                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:815:6: ( ( rule__DeltaEntry__SectionheaderAssignment_1 ) ) 
     2844                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:816:1: ( rule__DeltaEntry__SectionheaderAssignment_1 ) 
    27152845                    { 
    27162846                    if ( state.backtracking==0 ) { 
    27172847                       before(grammarAccess.getDeltaEntryAccess().getSectionheaderAssignment_1());  
    27182848                    } 
    2719                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:783:1: ( rule__DeltaEntry__SectionheaderAssignment_1 ) 
    2720                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:783:2: rule__DeltaEntry__SectionheaderAssignment_1 
     2849                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:817:1: ( rule__DeltaEntry__SectionheaderAssignment_1 ) 
     2850                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:817:2: rule__DeltaEntry__SectionheaderAssignment_1 
    27212851                    { 
    2722                     pushFollow(FOLLOW_rule__DeltaEntry__SectionheaderAssignment_1_in_rule__DeltaEntry__Alternatives1635); 
     2852                    pushFollow(FOLLOW_rule__DeltaEntry__SectionheaderAssignment_1_in_rule__DeltaEntry__Alternatives1713); 
    27232853                    rule__DeltaEntry__SectionheaderAssignment_1(); 
    27242854 
     
    27382868                    break; 
    27392869                case 3 : 
    2740                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:787:6: ( ( rule__DeltaEntry__ExtRuleAssignment_2 ) ) 
     2870                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:821:6: ( ( rule__DeltaEntry__ExtRuleAssignment_2 ) ) 
    27412871                    { 
    2742                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:787:6: ( ( rule__DeltaEntry__ExtRuleAssignment_2 ) ) 
    2743                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:788:1: ( rule__DeltaEntry__ExtRuleAssignment_2 ) 
     2872                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:821:6: ( ( rule__DeltaEntry__ExtRuleAssignment_2 ) ) 
     2873                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:822:1: ( rule__DeltaEntry__ExtRuleAssignment_2 ) 
    27442874                    { 
    27452875                    if ( state.backtracking==0 ) { 
    27462876                       before(grammarAccess.getDeltaEntryAccess().getExtRuleAssignment_2());  
    27472877                    } 
    2748                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:789:1: ( rule__DeltaEntry__ExtRuleAssignment_2 ) 
    2749                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:789:2: rule__DeltaEntry__ExtRuleAssignment_2 
     2878                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:823:1: ( rule__DeltaEntry__ExtRuleAssignment_2 ) 
     2879                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:823:2: rule__DeltaEntry__ExtRuleAssignment_2 
    27502880                    { 
    2751                     pushFollow(FOLLOW_rule__DeltaEntry__ExtRuleAssignment_2_in_rule__DeltaEntry__Alternatives1653); 
     2881                    pushFollow(FOLLOW_rule__DeltaEntry__ExtRuleAssignment_2_in_rule__DeltaEntry__Alternatives1731); 
    27522882                    rule__DeltaEntry__ExtRuleAssignment_2(); 
    27532883 
     
    27742904        } 
    27752905        finally { 
    2776             if ( state.backtracking>0 ) { memoize(input, 49, rule__DeltaEntry__Alternatives_StartIndex); } 
     2906            if ( state.backtracking>0 ) { memoize(input, 51, rule__DeltaEntry__Alternatives_StartIndex); } 
    27772907 
    27782908                restoreStackSize(stackSize); 
     
    27852915 
    27862916    // $ANTLR start "rule__MergeEntry__Alternatives" 
    2787     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:798:1: rule__MergeEntry__Alternatives : ( ( ( rule__MergeEntry__SectionheaderAssignment_0 ) ) | ( ( rule__MergeEntry__MergeRuleAssignment_1 ) ) ); 
     2917    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:832:1: rule__MergeEntry__Alternatives : ( ( ( rule__MergeEntry__SectionheaderAssignment_0 ) ) | ( ( rule__MergeEntry__MergeRuleAssignment_1 ) ) ); 
    27882918    public final void rule__MergeEntry__Alternatives() throws RecognitionException { 
    27892919        int rule__MergeEntry__Alternatives_StartIndex = input.index(); 
     
    27922922             
    27932923        try { 
    2794             if ( state.backtracking>0 && alreadyParsedRule(input, 50) ) { return ; } 
    2795             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:802:1: ( ( ( rule__MergeEntry__SectionheaderAssignment_0 ) ) | ( ( rule__MergeEntry__MergeRuleAssignment_1 ) ) ) 
     2924            if ( state.backtracking>0 && alreadyParsedRule(input, 52) ) { return ; } 
     2925            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:836:1: ( ( ( rule__MergeEntry__SectionheaderAssignment_0 ) ) | ( ( rule__MergeEntry__MergeRuleAssignment_1 ) ) ) 
    27962926            int alt6=2; 
    27972927            int LA6_0 = input.LA(1); 
     
    28122942            switch (alt6) { 
    28132943                case 1 : 
    2814                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:803:1: ( ( rule__MergeEntry__SectionheaderAssignment_0 ) ) 
     2944                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:837:1: ( ( rule__MergeEntry__SectionheaderAssignment_0 ) ) 
    28152945                    { 
    2816                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:803:1: ( ( rule__MergeEntry__SectionheaderAssignment_0 ) ) 
    2817                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:804:1: ( rule__MergeEntry__SectionheaderAssignment_0 ) 
     2946                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:837:1: ( ( rule__MergeEntry__SectionheaderAssignment_0 ) ) 
     2947                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:838:1: ( rule__MergeEntry__SectionheaderAssignment_0 ) 
    28182948                    { 
    28192949                    if ( state.backtracking==0 ) { 
    28202950                       before(grammarAccess.getMergeEntryAccess().getSectionheaderAssignment_0());  
    28212951                    } 
    2822                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:805:1: ( rule__MergeEntry__SectionheaderAssignment_0 ) 
    2823                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:805:2: rule__MergeEntry__SectionheaderAssignment_0 
     2952                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:839:1: ( rule__MergeEntry__SectionheaderAssignment_0 ) 
     2953                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:839:2: rule__MergeEntry__SectionheaderAssignment_0 
    28242954                    { 
    2825                     pushFollow(FOLLOW_rule__MergeEntry__SectionheaderAssignment_0_in_rule__MergeEntry__Alternatives1686); 
     2955                    pushFollow(FOLLOW_rule__MergeEntry__SectionheaderAssignment_0_in_rule__MergeEntry__Alternatives1764); 
    28262956                    rule__MergeEntry__SectionheaderAssignment_0(); 
    28272957 
     
    28412971                    break; 
    28422972                case 2 : 
    2843                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:809:6: ( ( rule__MergeEntry__MergeRuleAssignment_1 ) ) 
     2973                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:843:6: ( ( rule__MergeEntry__MergeRuleAssignment_1 ) ) 
    28442974                    { 
    2845                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:809:6: ( ( rule__MergeEntry__MergeRuleAssignment_1 ) ) 
    2846                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:810:1: ( rule__MergeEntry__MergeRuleAssignment_1 ) 
     2975                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:843:6: ( ( rule__MergeEntry__MergeRuleAssignment_1 ) ) 
     2976                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:844:1: ( rule__MergeEntry__MergeRuleAssignment_1 ) 
    28472977                    { 
    28482978                    if ( state.backtracking==0 ) { 
    28492979                       before(grammarAccess.getMergeEntryAccess().getMergeRuleAssignment_1());  
    28502980                    } 
    2851                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:811:1: ( rule__MergeEntry__MergeRuleAssignment_1 ) 
    2852                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:811:2: rule__MergeEntry__MergeRuleAssignment_1 
     2981                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:845:1: ( rule__MergeEntry__MergeRuleAssignment_1 ) 
     2982                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:845:2: rule__MergeEntry__MergeRuleAssignment_1 
    28532983                    { 
    2854                     pushFollow(FOLLOW_rule__MergeEntry__MergeRuleAssignment_1_in_rule__MergeEntry__Alternatives1704); 
     2984                    pushFollow(FOLLOW_rule__MergeEntry__MergeRuleAssignment_1_in_rule__MergeEntry__Alternatives1782); 
    28552985                    rule__MergeEntry__MergeRuleAssignment_1(); 
    28562986 
     
    28773007        } 
    28783008        finally { 
    2879             if ( state.backtracking>0 ) { memoize(input, 50, rule__MergeEntry__Alternatives_StartIndex); } 
     3009            if ( state.backtracking>0 ) { memoize(input, 52, rule__MergeEntry__Alternatives_StartIndex); } 
    28803010 
    28813011                restoreStackSize(stackSize); 
     
    28883018 
    28893019    // $ANTLR start "rule__Import__Alternatives_2_1" 
    2890     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:820:1: rule__Import__Alternatives_2_1 : ( ( ( rule__Import__GrammarTypeAssignment_2_1_0 ) ) | ( ( rule__Import__GrammarTypeAssignment_2_1_1 ) ) | ( ( rule__Import__GrammarTypeAssignment_2_1_2 ) ) ); 
     3020    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:854:1: rule__Import__Alternatives_2_1 : ( ( ( rule__Import__GrammarTypeAssignment_2_1_0 ) ) | ( ( rule__Import__GrammarTypeAssignment_2_1_1 ) ) | ( ( rule__Import__GrammarTypeAssignment_2_1_2 ) ) ); 
    28913021    public final void rule__Import__Alternatives_2_1() throws RecognitionException { 
    28923022        int rule__Import__Alternatives_2_1_StartIndex = input.index(); 
     
    28953025             
    28963026        try { 
    2897             if ( state.backtracking>0 && alreadyParsedRule(input, 51) ) { return ; } 
    2898             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:824:1: ( ( ( rule__Import__GrammarTypeAssignment_2_1_0 ) ) | ( ( rule__Import__GrammarTypeAssignment_2_1_1 ) ) | ( ( rule__Import__GrammarTypeAssignment_2_1_2 ) ) ) 
     3027            if ( state.backtracking>0 && alreadyParsedRule(input, 53) ) { return ; } 
     3028            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:858:1: ( ( ( rule__Import__GrammarTypeAssignment_2_1_0 ) ) | ( ( rule__Import__GrammarTypeAssignment_2_1_1 ) ) | ( ( rule__Import__GrammarTypeAssignment_2_1_2 ) ) ) 
    28993029            int alt7=3; 
    29003030            switch ( input.LA(1) ) { 
     
    29243054            switch (alt7) { 
    29253055                case 1 : 
    2926                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:825:1: ( ( rule__Import__GrammarTypeAssignment_2_1_0 ) ) 
     3056                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:859:1: ( ( rule__Import__GrammarTypeAssignment_2_1_0 ) ) 
    29273057                    { 
    2928                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:825:1: ( ( rule__Import__GrammarTypeAssignment_2_1_0 ) ) 
    2929                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:826:1: ( rule__Import__GrammarTypeAssignment_2_1_0 ) 
     3058                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:859:1: ( ( rule__Import__GrammarTypeAssignment_2_1_0 ) ) 
     3059                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:860:1: ( rule__Import__GrammarTypeAssignment_2_1_0 ) 
    29303060                    { 
    29313061                    if ( state.backtracking==0 ) { 
    29323062                       before(grammarAccess.getImportAccess().getGrammarTypeAssignment_2_1_0());  
    29333063                    } 
    2934                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:827:1: ( rule__Import__GrammarTypeAssignment_2_1_0 ) 
    2935                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:827:2: rule__Import__GrammarTypeAssignment_2_1_0 
     3064                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:861:1: ( rule__Import__GrammarTypeAssignment_2_1_0 ) 
     3065                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:861:2: rule__Import__GrammarTypeAssignment_2_1_0 
    29363066                    { 
    2937                     pushFollow(FOLLOW_rule__Import__GrammarTypeAssignment_2_1_0_in_rule__Import__Alternatives_2_11737); 
     3067                    pushFollow(FOLLOW_rule__Import__GrammarTypeAssignment_2_1_0_in_rule__Import__Alternatives_2_11815); 
    29383068                    rule__Import__GrammarTypeAssignment_2_1_0(); 
    29393069 
     
    29533083                    break; 
    29543084                case 2 : 
    2955                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:831:6: ( ( rule__Import__GrammarTypeAssignment_2_1_1 ) ) 
     3085                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:865:6: ( ( rule__Import__GrammarTypeAssignment_2_1_1 ) ) 
    29563086                    { 
    2957                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:831:6: ( ( rule__Import__GrammarTypeAssignment_2_1_1 ) ) 
    2958                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:832:1: ( rule__Import__GrammarTypeAssignment_2_1_1 ) 
     3087                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:865:6: ( ( rule__Import__GrammarTypeAssignment_2_1_1 ) ) 
     3088                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:866:1: ( rule__Import__GrammarTypeAssignment_2_1_1 ) 
    29593089                    { 
    29603090                    if ( state.backtracking==0 ) { 
    29613091                       before(grammarAccess.getImportAccess().getGrammarTypeAssignment_2_1_1());  
    29623092                    } 
    2963                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:833:1: ( rule__Import__GrammarTypeAssignment_2_1_1 ) 
    2964                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:833:2: rule__Import__GrammarTypeAssignment_2_1_1 
     3093                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:867:1: ( rule__Import__GrammarTypeAssignment_2_1_1 ) 
     3094                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:867:2: rule__Import__GrammarTypeAssignment_2_1_1 
    29653095                    { 
    2966                     pushFollow(FOLLOW_rule__Import__GrammarTypeAssignment_2_1_1_in_rule__Import__Alternatives_2_11755); 
     3096                    pushFollow(FOLLOW_rule__Import__GrammarTypeAssignment_2_1_1_in_rule__Import__Alternatives_2_11833); 
    29673097                    rule__Import__GrammarTypeAssignment_2_1_1(); 
    29683098 
     
    29823112                    break; 
    29833113                case 3 : 
    2984                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:837:6: ( ( rule__Import__GrammarTypeAssignment_2_1_2 ) ) 
     3114                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:871:6: ( ( rule__Import__GrammarTypeAssignment_2_1_2 ) ) 
    29853115                    { 
    2986                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:837:6: ( ( rule__Import__GrammarTypeAssignment_2_1_2 ) ) 
    2987                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:838:1: ( rule__Import__GrammarTypeAssignment_2_1_2 ) 
     3116                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:871:6: ( ( rule__Import__GrammarTypeAssignment_2_1_2 ) ) 
     3117                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:872:1: ( rule__Import__GrammarTypeAssignment_2_1_2 ) 
    29883118                    { 
    29893119                    if ( state.backtracking==0 ) { 
    29903120                       before(grammarAccess.getImportAccess().getGrammarTypeAssignment_2_1_2());  
    29913121                    } 
    2992                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:839:1: ( rule__Import__GrammarTypeAssignment_2_1_2 ) 
    2993                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:839:2: rule__Import__GrammarTypeAssignment_2_1_2 
     3122                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:873:1: ( rule__Import__GrammarTypeAssignment_2_1_2 ) 
     3123                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:873:2: rule__Import__GrammarTypeAssignment_2_1_2 
    29943124                    { 
    2995                     pushFollow(FOLLOW_rule__Import__GrammarTypeAssignment_2_1_2_in_rule__Import__Alternatives_2_11773); 
     3125                    pushFollow(FOLLOW_rule__Import__GrammarTypeAssignment_2_1_2_in_rule__Import__Alternatives_2_11851); 
    29963126                    rule__Import__GrammarTypeAssignment_2_1_2(); 
    29973127 
     
    30183148        } 
    30193149        finally { 
    3020             if ( state.backtracking>0 ) { memoize(input, 51, rule__Import__Alternatives_2_1_StartIndex); } 
     3150            if ( state.backtracking>0 ) { memoize(input, 53, rule__Import__Alternatives_2_1_StartIndex); } 
    30213151 
    30223152                restoreStackSize(stackSize); 
     
    30293159 
    30303160    // $ANTLR start "rule__ExtRule__Alternatives_4" 
    3031     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:848:1: rule__ExtRule__Alternatives_4 : ( ( ( rule__ExtRule__ElementsAssignment_4_0 ) ) | ( ')' ) | ( ']' ) | ( '}' ) | ( '|' ) | ( '(' ) | ( '[' ) | ( '{' ) | ( '*' ) | ( '+' ) ); 
     3161    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:882:1: rule__ExtRule__Alternatives_4 : ( ( ( rule__ExtRule__ElementsAssignment_4_0 ) ) | ( ')' ) | ( ']' ) | ( '}' ) | ( '|' ) | ( '(' ) | ( '[' ) | ( '{' ) | ( '*' ) | ( '+' ) ); 
    30323162    public final void rule__ExtRule__Alternatives_4() throws RecognitionException { 
    30333163        int rule__ExtRule__Alternatives_4_StartIndex = input.index(); 
     
    30363166             
    30373167        try { 
    3038             if ( state.backtracking>0 && alreadyParsedRule(input, 52) ) { return ; } 
    3039             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:852:1: ( ( ( rule__ExtRule__ElementsAssignment_4_0 ) ) | ( ')' ) | ( ']' ) | ( '}' ) | ( '|' ) | ( '(' ) | ( '[' ) | ( '{' ) | ( '*' ) | ( '+' ) ) 
     3168            if ( state.backtracking>0 && alreadyParsedRule(input, 54) ) { return ; } 
     3169            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:886:1: ( ( ( rule__ExtRule__ElementsAssignment_4_0 ) ) | ( ')' ) | ( ']' ) | ( '}' ) | ( '|' ) | ( '(' ) | ( '[' ) | ( '{' ) | ( '*' ) | ( '+' ) ) 
    30403170            int alt8=10; 
    30413171            switch ( input.LA(1) ) { 
     
    31023232            switch (alt8) { 
    31033233                case 1 : 
    3104                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:853:1: ( ( rule__ExtRule__ElementsAssignment_4_0 ) ) 
     3234                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:887:1: ( ( rule__ExtRule__ElementsAssignment_4_0 ) ) 
    31053235                    { 
    3106                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:853:1: ( ( rule__ExtRule__ElementsAssignment_4_0 ) ) 
    3107                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:854:1: ( rule__ExtRule__ElementsAssignment_4_0 ) 
     3236                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:887:1: ( ( rule__ExtRule__ElementsAssignment_4_0 ) ) 
     3237                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:888:1: ( rule__ExtRule__ElementsAssignment_4_0 ) 
    31083238                    { 
    31093239                    if ( state.backtracking==0 ) { 
    31103240                       before(grammarAccess.getExtRuleAccess().getElementsAssignment_4_0());  
    31113241                    } 
    3112                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:855:1: ( rule__ExtRule__ElementsAssignment_4_0 ) 
    3113                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:855:2: rule__ExtRule__ElementsAssignment_4_0 
     3242                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:889:1: ( rule__ExtRule__ElementsAssignment_4_0 ) 
     3243                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:889:2: rule__ExtRule__ElementsAssignment_4_0 
    31143244                    { 
    3115                     pushFollow(FOLLOW_rule__ExtRule__ElementsAssignment_4_0_in_rule__ExtRule__Alternatives_41806); 
     3245                    pushFollow(FOLLOW_rule__ExtRule__ElementsAssignment_4_0_in_rule__ExtRule__Alternatives_41884); 
    31163246                    rule__ExtRule__ElementsAssignment_4_0(); 
    31173247 
     
    31313261                    break; 
    31323262                case 2 : 
    3133                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:859:6: ( ')' ) 
     3263                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:893:6: ( ')' ) 
    31343264                    { 
    3135                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:859:6: ( ')' ) 
    3136                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:860:1: ')' 
     3265                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:893:6: ( ')' ) 
     3266                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:894:1: ')' 
    31373267                    { 
    31383268                    if ( state.backtracking==0 ) { 
    31393269                       before(grammarAccess.getExtRuleAccess().getRightParenthesisKeyword_4_1());  
    31403270                    } 
    3141                     match(input,13,FOLLOW_13_in_rule__ExtRule__Alternatives_41825); if (state.failed) return ; 
     3271                    match(input,13,FOLLOW_13_in_rule__ExtRule__Alternatives_41903); if (state.failed) return ; 
    31423272                    if ( state.backtracking==0 ) { 
    31433273                       after(grammarAccess.getExtRuleAccess().getRightParenthesisKeyword_4_1());  
     
    31503280                    break; 
    31513281                case 3 : 
    3152                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:867:6: ( ']' ) 
     3282                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:901:6: ( ']' ) 
    31533283                    { 
    3154                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:867:6: ( ']' ) 
    3155                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:868:1: ']' 
     3284                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:901:6: ( ']' ) 
     3285                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:902:1: ']' 
    31563286                    { 
    31573287                    if ( state.backtracking==0 ) { 
    31583288                       before(grammarAccess.getExtRuleAccess().getRightSquareBracketKeyword_4_2());  
    31593289                    } 
    3160                     match(input,14,FOLLOW_14_in_rule__ExtRule__Alternatives_41845); if (state.failed) return ; 
     3290                    match(input,14,FOLLOW_14_in_rule__ExtRule__Alternatives_41923); if (state.failed) return ; 
    31613291                    if ( state.backtracking==0 ) { 
    31623292                       after(grammarAccess.getExtRuleAccess().getRightSquareBracketKeyword_4_2());  
     
    31693299                    break; 
    31703300                case 4 : 
    3171                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:875:6: ( '}' ) 
     3301                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:909:6: ( '}' ) 
    31723302                    { 
    3173                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:875:6: ( '}' ) 
    3174                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:876:1: '}' 
     3303                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:909:6: ( '}' ) 
     3304                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:910:1: '}' 
    31753305                    { 
    31763306                    if ( state.backtracking==0 ) { 
    31773307                       before(grammarAccess.getExtRuleAccess().getRightCurlyBracketKeyword_4_3());  
    31783308                    } 
    3179                     match(input,15,FOLLOW_15_in_rule__ExtRule__Alternatives_41865); if (state.failed) return ; 
     3309                    match(input,15,FOLLOW_15_in_rule__ExtRule__Alternatives_41943); if (state.failed) return ; 
    31803310                    if ( state.backtracking==0 ) { 
    31813311                       after(grammarAccess.getExtRuleAccess().getRightCurlyBracketKeyword_4_3());  
     
    31883318                    break; 
    31893319                case 5 : 
    3190                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:883:6: ( '|' ) 
     3320                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:917:6: ( '|' ) 
    31913321                    { 
    3192                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:883:6: ( '|' ) 
    3193                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:884:1: '|' 
     3322                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:917:6: ( '|' ) 
     3323                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:918:1: '|' 
    31943324                    { 
    31953325                    if ( state.backtracking==0 ) { 
    31963326                       before(grammarAccess.getExtRuleAccess().getVerticalLineKeyword_4_4());  
    31973327                    } 
    3198                     match(input,16,FOLLOW_16_in_rule__ExtRule__Alternatives_41885); if (state.failed) return ; 
     3328                    match(input,16,FOLLOW_16_in_rule__ExtRule__Alternatives_41963); if (state.failed) return ; 
    31993329                    if ( state.backtracking==0 ) { 
    32003330                       after(grammarAccess.getExtRuleAccess().getVerticalLineKeyword_4_4());  
     
    32073337                    break; 
    32083338                case 6 : 
    3209                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:891:6: ( '(' ) 
     3339                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:925:6: ( '(' ) 
    32103340                    { 
    3211                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:891:6: ( '(' ) 
    3212                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:892:1: '(' 
     3341                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:925:6: ( '(' ) 
     3342                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:926:1: '(' 
    32133343                    { 
    32143344                    if ( state.backtracking==0 ) { 
    32153345                       before(grammarAccess.getExtRuleAccess().getLeftParenthesisKeyword_4_5());  
    32163346                    } 
    3217                     match(input,17,FOLLOW_17_in_rule__ExtRule__Alternatives_41905); if (state.failed) return ; 
     3347                    match(input,17,FOLLOW_17_in_rule__ExtRule__Alternatives_41983); if (state.failed) return ; 
    32183348                    if ( state.backtracking==0 ) { 
    32193349                       after(grammarAccess.getExtRuleAccess().getLeftParenthesisKeyword_4_5());  
     
    32263356                    break; 
    32273357                case 7 : 
    3228                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:899:6: ( '[' ) 
     3358                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:933:6: ( '[' ) 
    32293359                    { 
    3230                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:899:6: ( '[' ) 
    3231                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:900:1: '[' 
     3360                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:933:6: ( '[' ) 
     3361                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:934:1: '[' 
    32323362                    { 
    32333363                    if ( state.backtracking==0 ) { 
    32343364                       before(grammarAccess.getExtRuleAccess().getLeftSquareBracketKeyword_4_6());  
    32353365                    } 
    3236                     match(input,18,FOLLOW_18_in_rule__ExtRule__Alternatives_41925); if (state.failed) return ; 
     3366                    match(input,18,FOLLOW_18_in_rule__ExtRule__Alternatives_42003); if (state.failed) return ; 
    32373367                    if ( state.backtracking==0 ) { 
    32383368                       after(grammarAccess.getExtRuleAccess().getLeftSquareBracketKeyword_4_6());  
     
    32453375                    break; 
    32463376                case 8 : 
    3247                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:907:6: ( '{' ) 
     3377                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:941:6: ( '{' ) 
    32483378                    { 
    3249                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:907:6: ( '{' ) 
    3250                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:908:1: '{' 
     3379                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:941:6: ( '{' ) 
     3380                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:942:1: '{' 
    32513381                    { 
    32523382                    if ( state.backtracking==0 ) { 
    32533383                       before(grammarAccess.getExtRuleAccess().getLeftCurlyBracketKeyword_4_7());  
    32543384                    } 
    3255                     match(input,19,FOLLOW_19_in_rule__ExtRule__Alternatives_41945); if (state.failed) return ; 
     3385                    match(input,19,FOLLOW_19_in_rule__ExtRule__Alternatives_42023); if (state.failed) return ; 
    32563386                    if ( state.backtracking==0 ) { 
    32573387                       after(grammarAccess.getExtRuleAccess().getLeftCurlyBracketKeyword_4_7());  
     
    32643394                    break; 
    32653395                case 9 : 
    3266                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:915:6: ( '*' ) 
     3396                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:949:6: ( '*' ) 
    32673397                    { 
    3268                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:915:6: ( '*' ) 
    3269                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:916:1: '*' 
     3398                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:949:6: ( '*' ) 
     3399                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:950:1: '*' 
    32703400                    { 
    32713401                    if ( state.backtracking==0 ) { 
    32723402                       before(grammarAccess.getExtRuleAccess().getAsteriskKeyword_4_8());  
    32733403                    } 
    3274                     match(input,20,FOLLOW_20_in_rule__ExtRule__Alternatives_41965); if (state.failed) return ; 
     3404                    match(input,20,FOLLOW_20_in_rule__ExtRule__Alternatives_42043); if (state.failed) return ; 
    32753405                    if ( state.backtracking==0 ) { 
    32763406                       after(grammarAccess.getExtRuleAccess().getAsteriskKeyword_4_8());  
     
    32833413                    break; 
    32843414                case 10 : 
    3285                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:923:6: ( '+' ) 
     3415                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:957:6: ( '+' ) 
    32863416                    { 
    3287                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:923:6: ( '+' ) 
    3288                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:924:1: '+' 
     3417                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:957:6: ( '+' ) 
     3418                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:958:1: '+' 
    32893419                    { 
    32903420                    if ( state.backtracking==0 ) { 
    32913421                       before(grammarAccess.getExtRuleAccess().getPlusSignKeyword_4_9());  
    32923422                    } 
    3293                     match(input,21,FOLLOW_21_in_rule__ExtRule__Alternatives_41985); if (state.failed) return ; 
     3423                    match(input,21,FOLLOW_21_in_rule__ExtRule__Alternatives_42063); if (state.failed) return ; 
    32943424                    if ( state.backtracking==0 ) { 
    32953425                       after(grammarAccess.getExtRuleAccess().getPlusSignKeyword_4_9());  
     
    33093439        } 
    33103440        finally { 
    3311             if ( state.backtracking>0 ) { memoize(input, 52, rule__ExtRule__Alternatives_4_StartIndex); } 
     3441            if ( state.backtracking>0 ) { memoize(input, 54, rule__ExtRule__Alternatives_4_StartIndex); } 
    33123442 
    33133443                restoreStackSize(stackSize); 
     
    33203450 
    33213451    // $ANTLR start "rule__MergeRule__Alternatives" 
    3322     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:936:1: rule__MergeRule__Alternatives : ( ( ruleGlobalCombinator ) | ( ruleRuleCombinator ) | ( ruleHookCombinator ) ); 
     3452    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:970:1: rule__MergeRule__Alternatives : ( ( ruleGlobalCombinator ) | ( ruleRuleCombinator ) | ( ruleHookCombinator ) ); 
    33233453    public final void rule__MergeRule__Alternatives() throws RecognitionException { 
    33243454        int rule__MergeRule__Alternatives_StartIndex = input.index(); 
     
    33273457             
    33283458        try { 
    3329             if ( state.backtracking>0 && alreadyParsedRule(input, 53) ) { return ; } 
    3330             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:940:1: ( ( ruleGlobalCombinator ) | ( ruleRuleCombinator ) | ( ruleHookCombinator ) ) 
     3459            if ( state.backtracking>0 && alreadyParsedRule(input, 55) ) { return ; } 
     3460            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:974:1: ( ( ruleGlobalCombinator ) | ( ruleRuleCombinator ) | ( ruleHookCombinator ) ) 
    33313461            int alt9=3; 
    33323462            switch ( input.LA(1) ) { 
     
    33563486            switch (alt9) { 
    33573487                case 1 : 
    3358                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:941:1: ( ruleGlobalCombinator ) 
     3488                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:975:1: ( ruleGlobalCombinator ) 
    33593489                    { 
    3360                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:941:1: ( ruleGlobalCombinator ) 
    3361                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:942:1: ruleGlobalCombinator 
     3490                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:975:1: ( ruleGlobalCombinator ) 
     3491                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:976:1: ruleGlobalCombinator 
    33623492                    { 
    33633493                    if ( state.backtracking==0 ) { 
    33643494                       before(grammarAccess.getMergeRuleAccess().getGlobalCombinatorParserRuleCall_0());  
    33653495                    } 
    3366                     pushFollow(FOLLOW_ruleGlobalCombinator_in_rule__MergeRule__Alternatives2019); 
     3496                    pushFollow(FOLLOW_ruleGlobalCombinator_in_rule__MergeRule__Alternatives2097); 
    33673497                    ruleGlobalCombinator(); 
    33683498 
     
    33793509                    break; 
    33803510                case 2 : 
    3381                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:947:6: ( ruleRuleCombinator ) 
     3511                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:981:6: ( ruleRuleCombinator ) 
    33823512                    { 
    3383                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:947:6: ( ruleRuleCombinator ) 
    3384                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:948:1: ruleRuleCombinator 
     3513                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:981:6: ( ruleRuleCombinator ) 
     3514                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:982:1: ruleRuleCombinator 
    33853515                    { 
    33863516                    if ( state.backtracking==0 ) { 
    33873517                       before(grammarAccess.getMergeRuleAccess().getRuleCombinatorParserRuleCall_1());  
    33883518                    } 
    3389                     pushFollow(FOLLOW_ruleRuleCombinator_in_rule__MergeRule__Alternatives2036); 
     3519                    pushFollow(FOLLOW_ruleRuleCombinator_in_rule__MergeRule__Alternatives2114); 
    33903520                    ruleRuleCombinator(); 
    33913521 
     
    34023532                    break; 
    34033533                case 3 : 
    3404                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:953:6: ( ruleHookCombinator ) 
     3534                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:987:6: ( ruleHookCombinator ) 
    34053535                    { 
    3406                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:953:6: ( ruleHookCombinator ) 
    3407                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:954:1: ruleHookCombinator 
     3536                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:987:6: ( ruleHookCombinator ) 
     3537                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:988:1: ruleHookCombinator 
    34083538                    { 
    34093539                    if ( state.backtracking==0 ) { 
    34103540                       before(grammarAccess.getMergeRuleAccess().getHookCombinatorParserRuleCall_2());  
    34113541                    } 
    3412                     pushFollow(FOLLOW_ruleHookCombinator_in_rule__MergeRule__Alternatives2053); 
     3542                    pushFollow(FOLLOW_ruleHookCombinator_in_rule__MergeRule__Alternatives2131); 
    34133543                    ruleHookCombinator(); 
    34143544 
     
    34323562        } 
    34333563        finally { 
    3434             if ( state.backtracking>0 ) { memoize(input, 53, rule__MergeRule__Alternatives_StartIndex); } 
     3564            if ( state.backtracking>0 ) { memoize(input, 55, rule__MergeRule__Alternatives_StartIndex); } 
    34353565 
    34363566                restoreStackSize(stackSize); 
     
    34433573 
    34443574    // $ANTLR start "rule__Term__Alternatives" 
    3445     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:964:1: rule__Term__Alternatives : ( ( ( rule__Term__TermAtomAssignment_0 ) ) | ( ( rule__Term__TermGroupedSequenceAssignment_1 ) ) | ( ( rule__Term__TermOptionalSequenceAssignment_2 ) ) | ( ( rule__Term__TermRepeatedSequenceAssignment_3 ) ) ); 
     3575    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:998:1: rule__Term__Alternatives : ( ( ( rule__Term__TermAtomAssignment_0 ) ) | ( ( rule__Term__TermGroupedSequenceAssignment_1 ) ) | ( ( rule__Term__TermOptionalSequenceAssignment_2 ) ) | ( ( rule__Term__TermRepeatedSequenceAssignment_3 ) ) ); 
    34463576    public final void rule__Term__Alternatives() throws RecognitionException { 
    34473577        int rule__Term__Alternatives_StartIndex = input.index(); 
     
    34503580             
    34513581        try { 
    3452             if ( state.backtracking>0 && alreadyParsedRule(input, 54) ) { return ; } 
    3453             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:968:1: ( ( ( rule__Term__TermAtomAssignment_0 ) ) | ( ( rule__Term__TermGroupedSequenceAssignment_1 ) ) | ( ( rule__Term__TermOptionalSequenceAssignment_2 ) ) | ( ( rule__Term__TermRepeatedSequenceAssignment_3 ) ) ) 
     3582            if ( state.backtracking>0 && alreadyParsedRule(input, 56) ) { return ; } 
     3583            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1002:1: ( ( ( rule__Term__TermAtomAssignment_0 ) ) | ( ( rule__Term__TermGroupedSequenceAssignment_1 ) ) | ( ( rule__Term__TermOptionalSequenceAssignment_2 ) ) | ( ( rule__Term__TermRepeatedSequenceAssignment_3 ) ) ) 
    34543584            int alt10=4; 
    34553585            switch ( input.LA(1) ) { 
     
    34863616            switch (alt10) { 
    34873617                case 1 : 
    3488                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:969:1: ( ( rule__Term__TermAtomAssignment_0 ) ) 
     3618                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1003:1: ( ( rule__Term__TermAtomAssignment_0 ) ) 
    34893619                    { 
    3490                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:969:1: ( ( rule__Term__TermAtomAssignment_0 ) ) 
    3491                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:970:1: ( rule__Term__TermAtomAssignment_0 ) 
     3620                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1003:1: ( ( rule__Term__TermAtomAssignment_0 ) ) 
     3621                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1004:1: ( rule__Term__TermAtomAssignment_0 ) 
    34923622                    { 
    34933623                    if ( state.backtracking==0 ) { 
    34943624                       before(grammarAccess.getTermAccess().getTermAtomAssignment_0());  
    34953625                    } 
    3496                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:971:1: ( rule__Term__TermAtomAssignment_0 ) 
    3497                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:971:2: rule__Term__TermAtomAssignment_0 
     3626                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1005:1: ( rule__Term__TermAtomAssignment_0 ) 
     3627                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1005:2: rule__Term__TermAtomAssignment_0 
    34983628                    { 
    3499                     pushFollow(FOLLOW_rule__Term__TermAtomAssignment_0_in_rule__Term__Alternatives2085); 
     3629                    pushFollow(FOLLOW_rule__Term__TermAtomAssignment_0_in_rule__Term__Alternatives2163); 
    35003630                    rule__Term__TermAtomAssignment_0(); 
    35013631 
     
    35153645                    break; 
    35163646                case 2 : 
    3517                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:975:6: ( ( rule__Term__TermGroupedSequenceAssignment_1 ) ) 
     3647                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1009:6: ( ( rule__Term__TermGroupedSequenceAssignment_1 ) ) 
    35183648                    { 
    3519                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:975:6: ( ( rule__Term__TermGroupedSequenceAssignment_1 ) ) 
    3520                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:976:1: ( rule__Term__TermGroupedSequenceAssignment_1 ) 
     3649                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1009:6: ( ( rule__Term__TermGroupedSequenceAssignment_1 ) ) 
     3650                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1010:1: ( rule__Term__TermGroupedSequenceAssignment_1 ) 
    35213651                    { 
    35223652                    if ( state.backtracking==0 ) { 
    35233653                       before(grammarAccess.getTermAccess().getTermGroupedSequenceAssignment_1());  
    35243654                    } 
    3525                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:977:1: ( rule__Term__TermGroupedSequenceAssignment_1 ) 
    3526                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:977:2: rule__Term__TermGroupedSequenceAssignment_1 
     3655                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1011:1: ( rule__Term__TermGroupedSequenceAssignment_1 ) 
     3656                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1011:2: rule__Term__TermGroupedSequenceAssignment_1 
    35273657                    { 
    3528                     pushFollow(FOLLOW_rule__Term__TermGroupedSequenceAssignment_1_in_rule__Term__Alternatives2103); 
     3658                    pushFollow(FOLLOW_rule__Term__TermGroupedSequenceAssignment_1_in_rule__Term__Alternatives2181); 
    35293659                    rule__Term__TermGroupedSequenceAssignment_1(); 
    35303660 
     
    35443674                    break; 
    35453675                case 3 : 
    3546                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:981:6: ( ( rule__Term__TermOptionalSequenceAssignment_2 ) ) 
     3676                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1015:6: ( ( rule__Term__TermOptionalSequenceAssignment_2 ) ) 
    35473677                    { 
    3548                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:981:6: ( ( rule__Term__TermOptionalSequenceAssignment_2 ) ) 
    3549                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:982:1: ( rule__Term__TermOptionalSequenceAssignment_2 ) 
     3678                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1015:6: ( ( rule__Term__TermOptionalSequenceAssignment_2 ) ) 
     3679                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1016:1: ( rule__Term__TermOptionalSequenceAssignment_2 ) 
    35503680                    { 
    35513681                    if ( state.backtracking==0 ) { 
    35523682                       before(grammarAccess.getTermAccess().getTermOptionalSequenceAssignment_2());  
    35533683                    } 
    3554                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:983:1: ( rule__Term__TermOptionalSequenceAssignment_2 ) 
    3555                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:983:2: rule__Term__TermOptionalSequenceAssignment_2 
     3684                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1017:1: ( rule__Term__TermOptionalSequenceAssignment_2 ) 
     3685                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1017:2: rule__Term__TermOptionalSequenceAssignment_2 
    35563686                    { 
    3557                     pushFollow(FOLLOW_rule__Term__TermOptionalSequenceAssignment_2_in_rule__Term__Alternatives2121); 
     3687                    pushFollow(FOLLOW_rule__Term__TermOptionalSequenceAssignment_2_in_rule__Term__Alternatives2199); 
    35583688                    rule__Term__TermOptionalSequenceAssignment_2(); 
    35593689 
     
    35733703                    break; 
    35743704                case 4 : 
    3575                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:987:6: ( ( rule__Term__TermRepeatedSequenceAssignment_3 ) ) 
     3705                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1021:6: ( ( rule__Term__TermRepeatedSequenceAssignment_3 ) ) 
    35763706                    { 
    3577                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:987:6: ( ( rule__Term__TermRepeatedSequenceAssignment_3 ) ) 
    3578                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:988:1: ( rule__Term__TermRepeatedSequenceAssignment_3 ) 
     3707                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1021:6: ( ( rule__Term__TermRepeatedSequenceAssignment_3 ) ) 
     3708                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1022:1: ( rule__Term__TermRepeatedSequenceAssignment_3 ) 
    35793709                    { 
    35803710                    if ( state.backtracking==0 ) { 
    35813711                       before(grammarAccess.getTermAccess().getTermRepeatedSequenceAssignment_3());  
    35823712                    } 
    3583                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:989:1: ( rule__Term__TermRepeatedSequenceAssignment_3 ) 
    3584                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:989:2: rule__Term__TermRepeatedSequenceAssignment_3 
     3713                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1023:1: ( rule__Term__TermRepeatedSequenceAssignment_3 ) 
     3714                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1023:2: rule__Term__TermRepeatedSequenceAssignment_3 
    35853715                    { 
    3586                     pushFollow(FOLLOW_rule__Term__TermRepeatedSequenceAssignment_3_in_rule__Term__Alternatives2139); 
     3716                    pushFollow(FOLLOW_rule__Term__TermRepeatedSequenceAssignment_3_in_rule__Term__Alternatives2217); 
    35873717                    rule__Term__TermRepeatedSequenceAssignment_3(); 
    35883718 
     
    36093739        } 
    36103740        finally { 
    3611             if ( state.backtracking>0 ) { memoize(input, 54, rule__Term__Alternatives_StartIndex); } 
     3741            if ( state.backtracking>0 ) { memoize(input, 56, rule__Term__Alternatives_StartIndex); } 
    36123742 
    36133743                restoreStackSize(stackSize); 
     
    36203750 
    36213751    // $ANTLR start "rule__Atom__Alternatives" 
    3622     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:998:1: rule__Atom__Alternatives : ( ( ( rule__Atom__AtomStringRuleAssignment_0 ) ) | ( ( rule__Atom__AtomRuleReferenceAssignment_1 ) ) ); 
     3752    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1032:1: rule__Atom__Alternatives : ( ( ( rule__Atom__AtomStringRuleAssignment_0 ) ) | ( ( rule__Atom__AtomRuleReferenceAssignment_1 ) ) ); 
    36233753    public final void rule__Atom__Alternatives() throws RecognitionException { 
    36243754        int rule__Atom__Alternatives_StartIndex = input.index(); 
     
    36273757             
    36283758        try { 
    3629             if ( state.backtracking>0 && alreadyParsedRule(input, 55) ) { return ; } 
    3630             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1002:1: ( ( ( rule__Atom__AtomStringRuleAssignment_0 ) ) | ( ( rule__Atom__AtomRuleReferenceAssignment_1 ) ) ) 
     3759            if ( state.backtracking>0 && alreadyParsedRule(input, 57) ) { return ; } 
     3760            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1036:1: ( ( ( rule__Atom__AtomStringRuleAssignment_0 ) ) | ( ( rule__Atom__AtomRuleReferenceAssignment_1 ) ) ) 
    36313761            int alt11=2; 
    36323762            int LA11_0 = input.LA(1); 
     
    36473777            switch (alt11) { 
    36483778                case 1 : 
    3649                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1003:1: ( ( rule__Atom__AtomStringRuleAssignment_0 ) ) 
     3779                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1037:1: ( ( rule__Atom__AtomStringRuleAssignment_0 ) ) 
    36503780                    { 
    3651                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1003:1: ( ( rule__Atom__AtomStringRuleAssignment_0 ) ) 
    3652                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1004:1: ( rule__Atom__AtomStringRuleAssignment_0 ) 
     3781                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1037:1: ( ( rule__Atom__AtomStringRuleAssignment_0 ) ) 
     3782                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1038:1: ( rule__Atom__AtomStringRuleAssignment_0 ) 
    36533783                    { 
    36543784                    if ( state.backtracking==0 ) { 
    36553785                       before(grammarAccess.getAtomAccess().getAtomStringRuleAssignment_0());  
    36563786                    } 
    3657                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1005:1: ( rule__Atom__AtomStringRuleAssignment_0 ) 
    3658                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1005:2: rule__Atom__AtomStringRuleAssignment_0 
     3787                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1039:1: ( rule__Atom__AtomStringRuleAssignment_0 ) 
     3788                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1039:2: rule__Atom__AtomStringRuleAssignment_0 
    36593789                    { 
    3660                     pushFollow(FOLLOW_rule__Atom__AtomStringRuleAssignment_0_in_rule__Atom__Alternatives2172); 
     3790                    pushFollow(FOLLOW_rule__Atom__AtomStringRuleAssignment_0_in_rule__Atom__Alternatives2250); 
    36613791                    rule__Atom__AtomStringRuleAssignment_0(); 
    36623792 
     
    36763806                    break; 
    36773807                case 2 : 
    3678                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1009:6: ( ( rule__Atom__AtomRuleReferenceAssignment_1 ) ) 
     3808                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1043:6: ( ( rule__Atom__AtomRuleReferenceAssignment_1 ) ) 
    36793809                    { 
    3680                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1009:6: ( ( rule__Atom__AtomRuleReferenceAssignment_1 ) ) 
    3681                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1010:1: ( rule__Atom__AtomRuleReferenceAssignment_1 ) 
     3810                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1043:6: ( ( rule__Atom__AtomRuleReferenceAssignment_1 ) ) 
     3811                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1044:1: ( rule__Atom__AtomRuleReferenceAssignment_1 ) 
    36823812                    { 
    36833813                    if ( state.backtracking==0 ) { 
    36843814                       before(grammarAccess.getAtomAccess().getAtomRuleReferenceAssignment_1());  
    36853815                    } 
    3686                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1011:1: ( rule__Atom__AtomRuleReferenceAssignment_1 ) 
    3687                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1011:2: rule__Atom__AtomRuleReferenceAssignment_1 
     3816                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1045:1: ( rule__Atom__AtomRuleReferenceAssignment_1 ) 
     3817                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1045:2: rule__Atom__AtomRuleReferenceAssignment_1 
    36883818                    { 
    3689                     pushFollow(FOLLOW_rule__Atom__AtomRuleReferenceAssignment_1_in_rule__Atom__Alternatives2190); 
     3819                    pushFollow(FOLLOW_rule__Atom__AtomRuleReferenceAssignment_1_in_rule__Atom__Alternatives2268); 
    36903820                    rule__Atom__AtomRuleReferenceAssignment_1(); 
    36913821 
     
    37123842        } 
    37133843        finally { 
    3714             if ( state.backtracking>0 ) { memoize(input, 55, rule__Atom__Alternatives_StartIndex); } 
     3844            if ( state.backtracking>0 ) { memoize(input, 57, rule__Atom__Alternatives_StartIndex); } 
    37153845 
    37163846                restoreStackSize(stackSize); 
     
    37233853 
    37243854    // $ANTLR start "rule__StringRule__Alternatives" 
    3725     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1020:1: rule__StringRule__Alternatives : ( ( ( rule__StringRule__LiteralAssignment_0 ) ) | ( ( rule__StringRule__ColonAssignment_1 ) ) ); 
     3855    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1054:1: rule__StringRule__Alternatives : ( ( ( rule__StringRule__LiteralAssignment_0 ) ) | ( ( rule__StringRule__ColonAssignment_1 ) ) ); 
    37263856    public final void rule__StringRule__Alternatives() throws RecognitionException { 
    37273857        int rule__StringRule__Alternatives_StartIndex = input.index(); 
     
    37303860             
    37313861        try { 
    3732             if ( state.backtracking>0 && alreadyParsedRule(input, 56) ) { return ; } 
    3733             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1024:1: ( ( ( rule__StringRule__LiteralAssignment_0 ) ) | ( ( rule__StringRule__ColonAssignment_1 ) ) ) 
     3862            if ( state.backtracking>0 && alreadyParsedRule(input, 58) ) { return ; } 
     3863            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1058:1: ( ( ( rule__StringRule__LiteralAssignment_0 ) ) | ( ( rule__StringRule__ColonAssignment_1 ) ) ) 
    37343864            int alt12=2; 
    37353865            int LA12_0 = input.LA(1); 
     
    37503880            switch (alt12) { 
    37513881                case 1 : 
    3752                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1025:1: ( ( rule__StringRule__LiteralAssignment_0 ) ) 
     3882                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1059:1: ( ( rule__StringRule__LiteralAssignment_0 ) ) 
    37533883                    { 
    3754                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1025:1: ( ( rule__StringRule__LiteralAssignment_0 ) ) 
    3755                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1026:1: ( rule__StringRule__LiteralAssignment_0 ) 
     3884                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1059:1: ( ( rule__StringRule__LiteralAssignment_0 ) ) 
     3885                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1060:1: ( rule__StringRule__LiteralAssignment_0 ) 
    37563886                    { 
    37573887                    if ( state.backtracking==0 ) { 
    37583888                       before(grammarAccess.getStringRuleAccess().getLiteralAssignment_0());  
    37593889                    } 
    3760                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1027:1: ( rule__StringRule__LiteralAssignment_0 ) 
    3761                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1027:2: rule__StringRule__LiteralAssignment_0 
     3890                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1061:1: ( rule__StringRule__LiteralAssignment_0 ) 
     3891                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1061:2: rule__StringRule__LiteralAssignment_0 
    37623892                    { 
    3763                     pushFollow(FOLLOW_rule__StringRule__LiteralAssignment_0_in_rule__StringRule__Alternatives2223); 
     3893                    pushFollow(FOLLOW_rule__StringRule__LiteralAssignment_0_in_rule__StringRule__Alternatives2301); 
    37643894                    rule__StringRule__LiteralAssignment_0(); 
    37653895 
     
    37793909                    break; 
    37803910                case 2 : 
    3781                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1031:6: ( ( rule__StringRule__ColonAssignment_1 ) ) 
     3911                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1065:6: ( ( rule__StringRule__ColonAssignment_1 ) ) 
    37823912                    { 
    3783                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1031:6: ( ( rule__StringRule__ColonAssignment_1 ) ) 
    3784                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1032:1: ( rule__StringRule__ColonAssignment_1 ) 
     3913                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1065:6: ( ( rule__StringRule__ColonAssignment_1 ) ) 
     3914                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1066:1: ( rule__StringRule__ColonAssignment_1 ) 
    37853915                    { 
    37863916                    if ( state.backtracking==0 ) { 
    37873917                       before(grammarAccess.getStringRuleAccess().getColonAssignment_1());  
    37883918                    } 
    3789                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1033:1: ( rule__StringRule__ColonAssignment_1 ) 
    3790                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1033:2: rule__StringRule__ColonAssignment_1 
     3919                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1067:1: ( rule__StringRule__ColonAssignment_1 ) 
     3920                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1067:2: rule__StringRule__ColonAssignment_1 
    37913921                    { 
    3792                     pushFollow(FOLLOW_rule__StringRule__ColonAssignment_1_in_rule__StringRule__Alternatives2241); 
     3922                    pushFollow(FOLLOW_rule__StringRule__ColonAssignment_1_in_rule__StringRule__Alternatives2319); 
    37933923                    rule__StringRule__ColonAssignment_1(); 
    37943924 
     
    38153945        } 
    38163946        finally { 
    3817             if ( state.backtracking>0 ) { memoize(input, 56, rule__StringRule__Alternatives_StartIndex); } 
     3947            if ( state.backtracking>0 ) { memoize(input, 58, rule__StringRule__Alternatives_StartIndex); } 
    38183948 
    38193949                restoreStackSize(stackSize); 
     
    38263956 
    38273957    // $ANTLR start "rule__RepeatedSequence__Alternatives_3" 
    3828     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1042:1: rule__RepeatedSequence__Alternatives_3 : ( ( ( rule__RepeatedSequence__MorethanonceAssignment_3_0 )? ) | ( ( rule__RepeatedSequence__RangeAssignment_3_1 )? ) ); 
     3958    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1076:1: rule__RepeatedSequence__Alternatives_3 : ( ( ( rule__RepeatedSequence__MorethanonceAssignment_3_0 )? ) | ( ( rule__RepeatedSequence__RangeAssignment_3_1 )? ) ); 
    38293959    public final void rule__RepeatedSequence__Alternatives_3() throws RecognitionException { 
    38303960        int rule__RepeatedSequence__Alternatives_3_StartIndex = input.index(); 
     
    38333963             
    38343964        try { 
    3835             if ( state.backtracking>0 && alreadyParsedRule(input, 57) ) { return ; } 
    3836             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1046:1: ( ( ( rule__RepeatedSequence__MorethanonceAssignment_3_0 )? ) | ( ( rule__RepeatedSequence__RangeAssignment_3_1 )? ) ) 
     3965            if ( state.backtracking>0 && alreadyParsedRule(input, 59) ) { return ; } 
     3966            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1080:1: ( ( ( rule__RepeatedSequence__MorethanonceAssignment_3_0 )? ) | ( ( rule__RepeatedSequence__RangeAssignment_3_1 )? ) ) 
    38373967            int alt15=2; 
    38383968            alt15 = dfa15.predict(input); 
    38393969            switch (alt15) { 
    38403970                case 1 : 
    3841                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1047:1: ( ( rule__RepeatedSequence__MorethanonceAssignment_3_0 )? ) 
     3971                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1081:1: ( ( rule__RepeatedSequence__MorethanonceAssignment_3_0 )? ) 
    38423972                    { 
    3843                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1047:1: ( ( rule__RepeatedSequence__MorethanonceAssignment_3_0 )? ) 
    3844                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1048:1: ( rule__RepeatedSequence__MorethanonceAssignment_3_0 )? 
     3973                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1081:1: ( ( rule__RepeatedSequence__MorethanonceAssignment_3_0 )? ) 
     3974                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1082:1: ( rule__RepeatedSequence__MorethanonceAssignment_3_0 )? 
    38453975                    { 
    38463976                    if ( state.backtracking==0 ) { 
    38473977                       before(grammarAccess.getRepeatedSequenceAccess().getMorethanonceAssignment_3_0());  
    38483978                    } 
    3849                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1049:1: ( rule__RepeatedSequence__MorethanonceAssignment_3_0 )? 
     3979                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1083:1: ( rule__RepeatedSequence__MorethanonceAssignment_3_0 )? 
    38503980                    int alt13=2; 
    38513981                    int LA13_0 = input.LA(1); 
     
    38563986                    switch (alt13) { 
    38573987                        case 1 : 
    3858                             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1049:2: rule__RepeatedSequence__MorethanonceAssignment_3_0 
     3988                            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1083:2: rule__RepeatedSequence__MorethanonceAssignment_3_0 
    38593989                            { 
    3860                             pushFollow(FOLLOW_rule__RepeatedSequence__MorethanonceAssignment_3_0_in_rule__RepeatedSequence__Alternatives_32274); 
     3990                            pushFollow(FOLLOW_rule__RepeatedSequence__MorethanonceAssignment_3_0_in_rule__RepeatedSequence__Alternatives_32352); 
    38613991                            rule__RepeatedSequence__MorethanonceAssignment_3_0(); 
    38623992 
     
    38794009                    break; 
    38804010                case 2 : 
    3881                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1053:6: ( ( rule__RepeatedSequence__RangeAssignment_3_1 )? ) 
     4011                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1087:6: ( ( rule__RepeatedSequence__RangeAssignment_3_1 )? ) 
    38824012                    { 
    3883                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1053:6: ( ( rule__RepeatedSequence__RangeAssignment_3_1 )? ) 
    3884                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1054:1: ( rule__RepeatedSequence__RangeAssignment_3_1 )? 
     4013                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1087:6: ( ( rule__RepeatedSequence__RangeAssignment_3_1 )? ) 
     4014                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1088:1: ( rule__RepeatedSequence__RangeAssignment_3_1 )? 
    38854015                    { 
    38864016                    if ( state.backtracking==0 ) { 
    38874017                       before(grammarAccess.getRepeatedSequenceAccess().getRangeAssignment_3_1());  
    38884018                    } 
    3889                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1055:1: ( rule__RepeatedSequence__RangeAssignment_3_1 )? 
     4019                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1089:1: ( rule__RepeatedSequence__RangeAssignment_3_1 )? 
    38904020                    int alt14=2; 
    38914021                    int LA14_0 = input.LA(1); 
     
    38964026                    switch (alt14) { 
    38974027                        case 1 : 
    3898                             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1055:2: rule__RepeatedSequence__RangeAssignment_3_1 
     4028                            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1089:2: rule__RepeatedSequence__RangeAssignment_3_1 
    38994029                            { 
    3900                             pushFollow(FOLLOW_rule__RepeatedSequence__RangeAssignment_3_1_in_rule__RepeatedSequence__Alternatives_32293); 
     4030                            pushFollow(FOLLOW_rule__RepeatedSequence__RangeAssignment_3_1_in_rule__RepeatedSequence__Alternatives_32371); 
    39014031                            rule__RepeatedSequence__RangeAssignment_3_1(); 
    39024032 
     
    39264056        } 
    39274057        finally { 
    3928             if ( state.backtracking>0 ) { memoize(input, 57, rule__RepeatedSequence__Alternatives_3_StartIndex); } 
     4058            if ( state.backtracking>0 ) { memoize(input, 59, rule__RepeatedSequence__Alternatives_3_StartIndex); } 
    39294059 
    39304060                restoreStackSize(stackSize); 
     
    39374067 
    39384068    // $ANTLR start "rule__EtsiBnf__Group_0__0" 
    3939     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1066:1: rule__EtsiBnf__Group_0__0 : rule__EtsiBnf__Group_0__0__Impl rule__EtsiBnf__Group_0__1 ; 
     4069    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1100:1: rule__EtsiBnf__Group_0__0 : rule__EtsiBnf__Group_0__0__Impl rule__EtsiBnf__Group_0__1 ; 
    39404070    public final void rule__EtsiBnf__Group_0__0() throws RecognitionException { 
    39414071        int rule__EtsiBnf__Group_0__0_StartIndex = input.index(); 
     
    39444074             
    39454075        try { 
    3946             if ( state.backtracking>0 && alreadyParsedRule(input, 58) ) { return ; } 
    3947             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1070:1: ( rule__EtsiBnf__Group_0__0__Impl rule__EtsiBnf__Group_0__1 ) 
    3948             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1071:2: rule__EtsiBnf__Group_0__0__Impl rule__EtsiBnf__Group_0__1 
    3949             { 
    3950             pushFollow(FOLLOW_rule__EtsiBnf__Group_0__0__Impl_in_rule__EtsiBnf__Group_0__02325); 
     4076            if ( state.backtracking>0 && alreadyParsedRule(input, 60) ) { return ; } 
     4077            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1104:1: ( rule__EtsiBnf__Group_0__0__Impl rule__EtsiBnf__Group_0__1 ) 
     4078            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1105:2: rule__EtsiBnf__Group_0__0__Impl rule__EtsiBnf__Group_0__1 
     4079            { 
     4080            pushFollow(FOLLOW_rule__EtsiBnf__Group_0__0__Impl_in_rule__EtsiBnf__Group_0__02403); 
    39514081            rule__EtsiBnf__Group_0__0__Impl(); 
    39524082 
    39534083            state._fsp--; 
    39544084            if (state.failed) return ; 
    3955             pushFollow(FOLLOW_rule__EtsiBnf__Group_0__1_in_rule__EtsiBnf__Group_0__02328); 
     4085            pushFollow(FOLLOW_rule__EtsiBnf__Group_0__1_in_rule__EtsiBnf__Group_0__02406); 
    39564086            rule__EtsiBnf__Group_0__1(); 
    39574087 
     
    39674097        } 
    39684098        finally { 
    3969             if ( state.backtracking>0 ) { memoize(input, 58, rule__EtsiBnf__Group_0__0_StartIndex); } 
     4099            if ( state.backtracking>0 ) { memoize(input, 60, rule__EtsiBnf__Group_0__0_StartIndex); } 
    39704100 
    39714101                restoreStackSize(stackSize); 
     
    39784108 
    39794109    // $ANTLR start "rule__EtsiBnf__Group_0__0__Impl" 
    3980     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1078:1: rule__EtsiBnf__Group_0__0__Impl : ( 'grammar' ) ; 
     4110    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1112:1: rule__EtsiBnf__Group_0__0__Impl : ( 'grammar' ) ; 
    39814111    public final void rule__EtsiBnf__Group_0__0__Impl() throws RecognitionException { 
    39824112        int rule__EtsiBnf__Group_0__0__Impl_StartIndex = input.index(); 
     
    39854115             
    39864116        try { 
    3987             if ( state.backtracking>0 && alreadyParsedRule(input, 59) ) { return ; } 
    3988             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1082:1: ( ( 'grammar' ) ) 
    3989             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1083:1: ( 'grammar' ) 
    3990             { 
    3991             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1083:1: ( 'grammar' ) 
    3992             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1084:1: 'grammar' 
     4117            if ( state.backtracking>0 && alreadyParsedRule(input, 61) ) { return ; } 
     4118            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1116:1: ( ( 'grammar' ) ) 
     4119            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1117:1: ( 'grammar' ) 
     4120            { 
     4121            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1117:1: ( 'grammar' ) 
     4122            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1118:1: 'grammar' 
    39934123            { 
    39944124            if ( state.backtracking==0 ) { 
    39954125               before(grammarAccess.getEtsiBnfAccess().getGrammarKeyword_0_0());  
    39964126            } 
    3997             match(input,22,FOLLOW_22_in_rule__EtsiBnf__Group_0__0__Impl2356); if (state.failed) return ; 
     4127            match(input,22,FOLLOW_22_in_rule__EtsiBnf__Group_0__0__Impl2434); if (state.failed) return ; 
    39984128            if ( state.backtracking==0 ) { 
    39994129               after(grammarAccess.getEtsiBnfAccess().getGrammarKeyword_0_0());  
     
    40114141        } 
    40124142        finally { 
    4013             if ( state.backtracking>0 ) { memoize(input, 59, rule__EtsiBnf__Group_0__0__Impl_StartIndex); } 
     4143            if ( state.backtracking>0 ) { memoize(input, 61, rule__EtsiBnf__Group_0__0__Impl_StartIndex); } 
    40144144 
    40154145                restoreStackSize(stackSize); 
     
    40224152 
    40234153    // $ANTLR start "rule__EtsiBnf__Group_0__1" 
    4024     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1097:1: rule__EtsiBnf__Group_0__1 : rule__EtsiBnf__Group_0__1__Impl rule__EtsiBnf__Group_0__2 ; 
     4154    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1131:1: rule__EtsiBnf__Group_0__1 : rule__EtsiBnf__Group_0__1__Impl rule__EtsiBnf__Group_0__2 ; 
    40254155    public final void rule__EtsiBnf__Group_0__1() throws RecognitionException { 
    40264156        int rule__EtsiBnf__Group_0__1_StartIndex = input.index(); 
     
    40294159             
    40304160        try { 
    4031             if ( state.backtracking>0 && alreadyParsedRule(input, 60) ) { return ; } 
    4032             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1101:1: ( rule__EtsiBnf__Group_0__1__Impl rule__EtsiBnf__Group_0__2 ) 
    4033             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1102:2: rule__EtsiBnf__Group_0__1__Impl rule__EtsiBnf__Group_0__2 
    4034             { 
    4035             pushFollow(FOLLOW_rule__EtsiBnf__Group_0__1__Impl_in_rule__EtsiBnf__Group_0__12387); 
     4161            if ( state.backtracking>0 && alreadyParsedRule(input, 62) ) { return ; } 
     4162            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1135:1: ( rule__EtsiBnf__Group_0__1__Impl rule__EtsiBnf__Group_0__2 ) 
     4163            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1136:2: rule__EtsiBnf__Group_0__1__Impl rule__EtsiBnf__Group_0__2 
     4164            { 
     4165            pushFollow(FOLLOW_rule__EtsiBnf__Group_0__1__Impl_in_rule__EtsiBnf__Group_0__12465); 
    40364166            rule__EtsiBnf__Group_0__1__Impl(); 
    40374167 
    40384168            state._fsp--; 
    40394169            if (state.failed) return ; 
    4040             pushFollow(FOLLOW_rule__EtsiBnf__Group_0__2_in_rule__EtsiBnf__Group_0__12390); 
     4170            pushFollow(FOLLOW_rule__EtsiBnf__Group_0__2_in_rule__EtsiBnf__Group_0__12468); 
    40414171            rule__EtsiBnf__Group_0__2(); 
    40424172 
     
    40524182        } 
    40534183        finally { 
    4054             if ( state.backtracking>0 ) { memoize(input, 60, rule__EtsiBnf__Group_0__1_StartIndex); } 
     4184            if ( state.backtracking>0 ) { memoize(input, 62, rule__EtsiBnf__Group_0__1_StartIndex); } 
    40554185 
    40564186                restoreStackSize(stackSize); 
     
    40634193 
    40644194    // $ANTLR start "rule__EtsiBnf__Group_0__1__Impl" 
    4065     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1109:1: rule__EtsiBnf__Group_0__1__Impl : ( ( rule__EtsiBnf__NameAssignment_0_1 ) ) ; 
     4195    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1143:1: rule__EtsiBnf__Group_0__1__Impl : ( ( rule__EtsiBnf__NameAssignment_0_1 ) ) ; 
    40664196    public final void rule__EtsiBnf__Group_0__1__Impl() throws RecognitionException { 
    40674197        int rule__EtsiBnf__Group_0__1__Impl_StartIndex = input.index(); 
     
    40704200             
    40714201        try { 
    4072             if ( state.backtracking>0 && alreadyParsedRule(input, 61) ) { return ; } 
    4073             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1113:1: ( ( ( rule__EtsiBnf__NameAssignment_0_1 ) ) ) 
    4074             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1114:1: ( ( rule__EtsiBnf__NameAssignment_0_1 ) ) 
    4075             { 
    4076             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1114:1: ( ( rule__EtsiBnf__NameAssignment_0_1 ) ) 
    4077             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1115:1: ( rule__EtsiBnf__NameAssignment_0_1 ) 
     4202            if ( state.backtracking>0 && alreadyParsedRule(input, 63) ) { return ; } 
     4203            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1147:1: ( ( ( rule__EtsiBnf__NameAssignment_0_1 ) ) ) 
     4204            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1148:1: ( ( rule__EtsiBnf__NameAssignment_0_1 ) ) 
     4205            { 
     4206            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1148:1: ( ( rule__EtsiBnf__NameAssignment_0_1 ) ) 
     4207            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1149:1: ( rule__EtsiBnf__NameAssignment_0_1 ) 
    40784208            { 
    40794209            if ( state.backtracking==0 ) { 
    40804210               before(grammarAccess.getEtsiBnfAccess().getNameAssignment_0_1());  
    40814211            } 
    4082             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1116:1: ( rule__EtsiBnf__NameAssignment_0_1 ) 
    4083             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1116:2: rule__EtsiBnf__NameAssignment_0_1 
    4084             { 
    4085             pushFollow(FOLLOW_rule__EtsiBnf__NameAssignment_0_1_in_rule__EtsiBnf__Group_0__1__Impl2417); 
     4212            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1150:1: ( rule__EtsiBnf__NameAssignment_0_1 ) 
     4213            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1150:2: rule__EtsiBnf__NameAssignment_0_1 
     4214            { 
     4215            pushFollow(FOLLOW_rule__EtsiBnf__NameAssignment_0_1_in_rule__EtsiBnf__Group_0__1__Impl2495); 
    40864216            rule__EtsiBnf__NameAssignment_0_1(); 
    40874217 
     
    41064236        } 
    41074237        finally { 
    4108             if ( state.backtracking>0 ) { memoize(input, 61, rule__EtsiBnf__Group_0__1__Impl_StartIndex); } 
     4238            if ( state.backtracking>0 ) { memoize(input, 63, rule__EtsiBnf__Group_0__1__Impl_StartIndex); } 
    41094239 
    41104240                restoreStackSize(stackSize); 
     
    41174247 
    41184248    // $ANTLR start "rule__EtsiBnf__Group_0__2" 
    4119     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1126:1: rule__EtsiBnf__Group_0__2 : rule__EtsiBnf__Group_0__2__Impl ; 
     4249    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1160:1: rule__EtsiBnf__Group_0__2 : rule__EtsiBnf__Group_0__2__Impl ; 
    41204250    public final void rule__EtsiBnf__Group_0__2() throws RecognitionException { 
    41214251        int rule__EtsiBnf__Group_0__2_StartIndex = input.index(); 
     
    41244254             
    41254255        try { 
    4126             if ( state.backtracking>0 && alreadyParsedRule(input, 62) ) { return ; } 
    4127             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1130:1: ( rule__EtsiBnf__Group_0__2__Impl ) 
    4128             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1131:2: rule__EtsiBnf__Group_0__2__Impl 
    4129             { 
    4130             pushFollow(FOLLOW_rule__EtsiBnf__Group_0__2__Impl_in_rule__EtsiBnf__Group_0__22447); 
     4256            if ( state.backtracking>0 && alreadyParsedRule(input, 64) ) { return ; } 
     4257            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1164:1: ( rule__EtsiBnf__Group_0__2__Impl ) 
     4258            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1165:2: rule__EtsiBnf__Group_0__2__Impl 
     4259            { 
     4260            pushFollow(FOLLOW_rule__EtsiBnf__Group_0__2__Impl_in_rule__EtsiBnf__Group_0__22525); 
    41314261            rule__EtsiBnf__Group_0__2__Impl(); 
    41324262 
     
    41424272        } 
    41434273        finally { 
    4144             if ( state.backtracking>0 ) { memoize(input, 62, rule__EtsiBnf__Group_0__2_StartIndex); } 
     4274            if ( state.backtracking>0 ) { memoize(input, 64, rule__EtsiBnf__Group_0__2_StartIndex); } 
    41454275 
    41464276                restoreStackSize(stackSize); 
     
    41534283 
    41544284    // $ANTLR start "rule__EtsiBnf__Group_0__2__Impl" 
    4155     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1137:1: rule__EtsiBnf__Group_0__2__Impl : ( ( rule__EtsiBnf__Group_0_2__0 ) ) ; 
     4285    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1171:1: rule__EtsiBnf__Group_0__2__Impl : ( ( rule__EtsiBnf__Group_0_2__0 ) ) ; 
    41564286    public final void rule__EtsiBnf__Group_0__2__Impl() throws RecognitionException { 
    41574287        int rule__EtsiBnf__Group_0__2__Impl_StartIndex = input.index(); 
     
    41604290             
    41614291        try { 
    4162             if ( state.backtracking>0 && alreadyParsedRule(input, 63) ) { return ; } 
    4163             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1141:1: ( ( ( rule__EtsiBnf__Group_0_2__0 ) ) ) 
    4164             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1142:1: ( ( rule__EtsiBnf__Group_0_2__0 ) ) 
    4165             { 
    4166             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1142:1: ( ( rule__EtsiBnf__Group_0_2__0 ) ) 
    4167             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1143:1: ( rule__EtsiBnf__Group_0_2__0 ) 
     4292            if ( state.backtracking>0 && alreadyParsedRule(input, 65) ) { return ; } 
     4293            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1175:1: ( ( ( rule__EtsiBnf__Group_0_2__0 ) ) ) 
     4294            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1176:1: ( ( rule__EtsiBnf__Group_0_2__0 ) ) 
     4295            { 
     4296            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1176:1: ( ( rule__EtsiBnf__Group_0_2__0 ) ) 
     4297            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1177:1: ( rule__EtsiBnf__Group_0_2__0 ) 
    41684298            { 
    41694299            if ( state.backtracking==0 ) { 
    41704300               before(grammarAccess.getEtsiBnfAccess().getGroup_0_2());  
    41714301            } 
    4172             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1144:1: ( rule__EtsiBnf__Group_0_2__0 ) 
    4173             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1144:2: rule__EtsiBnf__Group_0_2__0 
    4174             { 
    4175             pushFollow(FOLLOW_rule__EtsiBnf__Group_0_2__0_in_rule__EtsiBnf__Group_0__2__Impl2474); 
     4302            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1178:1: ( rule__EtsiBnf__Group_0_2__0 ) 
     4303            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1178:2: rule__EtsiBnf__Group_0_2__0 
     4304            { 
     4305            pushFollow(FOLLOW_rule__EtsiBnf__Group_0_2__0_in_rule__EtsiBnf__Group_0__2__Impl2552); 
    41764306            rule__EtsiBnf__Group_0_2__0(); 
    41774307 
     
    41964326        } 
    41974327        finally { 
    4198             if ( state.backtracking>0 ) { memoize(input, 63, rule__EtsiBnf__Group_0__2__Impl_StartIndex); } 
     4328            if ( state.backtracking>0 ) { memoize(input, 65, rule__EtsiBnf__Group_0__2__Impl_StartIndex); } 
    41994329 
    42004330                restoreStackSize(stackSize); 
     
    42074337 
    42084338    // $ANTLR start "rule__EtsiBnf__Group_0_2__0" 
    4209     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1160:1: rule__EtsiBnf__Group_0_2__0 : rule__EtsiBnf__Group_0_2__0__Impl rule__EtsiBnf__Group_0_2__1 ; 
     4339    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1194:1: rule__EtsiBnf__Group_0_2__0 : rule__EtsiBnf__Group_0_2__0__Impl rule__EtsiBnf__Group_0_2__1 ; 
    42104340    public final void rule__EtsiBnf__Group_0_2__0() throws RecognitionException { 
    42114341        int rule__EtsiBnf__Group_0_2__0_StartIndex = input.index(); 
     
    42144344             
    42154345        try { 
    4216             if ( state.backtracking>0 && alreadyParsedRule(input, 64) ) { return ; } 
    4217             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1164:1: ( rule__EtsiBnf__Group_0_2__0__Impl rule__EtsiBnf__Group_0_2__1 ) 
    4218             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1165:2: rule__EtsiBnf__Group_0_2__0__Impl rule__EtsiBnf__Group_0_2__1 
    4219             { 
    4220             pushFollow(FOLLOW_rule__EtsiBnf__Group_0_2__0__Impl_in_rule__EtsiBnf__Group_0_2__02510); 
     4346            if ( state.backtracking>0 && alreadyParsedRule(input, 66) ) { return ; } 
     4347            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1198:1: ( rule__EtsiBnf__Group_0_2__0__Impl rule__EtsiBnf__Group_0_2__1 ) 
     4348            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1199:2: rule__EtsiBnf__Group_0_2__0__Impl rule__EtsiBnf__Group_0_2__1 
     4349            { 
     4350            pushFollow(FOLLOW_rule__EtsiBnf__Group_0_2__0__Impl_in_rule__EtsiBnf__Group_0_2__02588); 
    42214351            rule__EtsiBnf__Group_0_2__0__Impl(); 
    42224352 
    42234353            state._fsp--; 
    42244354            if (state.failed) return ; 
    4225             pushFollow(FOLLOW_rule__EtsiBnf__Group_0_2__1_in_rule__EtsiBnf__Group_0_2__02513); 
     4355            pushFollow(FOLLOW_rule__EtsiBnf__Group_0_2__1_in_rule__EtsiBnf__Group_0_2__02591); 
    42264356            rule__EtsiBnf__Group_0_2__1(); 
    42274357 
     
    42374367        } 
    42384368        finally { 
    4239             if ( state.backtracking>0 ) { memoize(input, 64, rule__EtsiBnf__Group_0_2__0_StartIndex); } 
     4369            if ( state.backtracking>0 ) { memoize(input, 66, rule__EtsiBnf__Group_0_2__0_StartIndex); } 
    42404370 
    42414371                restoreStackSize(stackSize); 
     
    42484378 
    42494379    // $ANTLR start "rule__EtsiBnf__Group_0_2__0__Impl" 
    4250     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1172:1: rule__EtsiBnf__Group_0_2__0__Impl : ( ( rule__EtsiBnf__TypeAssignment_0_2_0 )? ) ; 
     4380    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1206:1: rule__EtsiBnf__Group_0_2__0__Impl : ( ( rule__EtsiBnf__TypeAssignment_0_2_0 )? ) ; 
    42514381    public final void rule__EtsiBnf__Group_0_2__0__Impl() throws RecognitionException { 
    42524382        int rule__EtsiBnf__Group_0_2__0__Impl_StartIndex = input.index(); 
     
    42554385             
    42564386        try { 
    4257             if ( state.backtracking>0 && alreadyParsedRule(input, 65) ) { return ; } 
    4258             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1176:1: ( ( ( rule__EtsiBnf__TypeAssignment_0_2_0 )? ) ) 
    4259             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1177:1: ( ( rule__EtsiBnf__TypeAssignment_0_2_0 )? ) 
    4260             { 
    4261             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1177:1: ( ( rule__EtsiBnf__TypeAssignment_0_2_0 )? ) 
    4262             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1178:1: ( rule__EtsiBnf__TypeAssignment_0_2_0 )? 
     4387            if ( state.backtracking>0 && alreadyParsedRule(input, 67) ) { return ; } 
     4388            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1210:1: ( ( ( rule__EtsiBnf__TypeAssignment_0_2_0 )? ) ) 
     4389            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1211:1: ( ( rule__EtsiBnf__TypeAssignment_0_2_0 )? ) 
     4390            { 
     4391            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1211:1: ( ( rule__EtsiBnf__TypeAssignment_0_2_0 )? ) 
     4392            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1212:1: ( rule__EtsiBnf__TypeAssignment_0_2_0 )? 
    42634393            { 
    42644394            if ( state.backtracking==0 ) { 
    42654395               before(grammarAccess.getEtsiBnfAccess().getTypeAssignment_0_2_0());  
    42664396            } 
    4267             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1179:1: ( rule__EtsiBnf__TypeAssignment_0_2_0 )? 
     4397            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1213:1: ( rule__EtsiBnf__TypeAssignment_0_2_0 )? 
    42684398            int alt16=2; 
    42694399            int LA16_0 = input.LA(1); 
     
    42744404            switch (alt16) { 
    42754405                case 1 : 
    4276                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1179:2: rule__EtsiBnf__TypeAssignment_0_2_0 
     4406                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1213:2: rule__EtsiBnf__TypeAssignment_0_2_0 
    42774407                    { 
    4278                     pushFollow(FOLLOW_rule__EtsiBnf__TypeAssignment_0_2_0_in_rule__EtsiBnf__Group_0_2__0__Impl2540); 
     4408                    pushFollow(FOLLOW_rule__EtsiBnf__TypeAssignment_0_2_0_in_rule__EtsiBnf__Group_0_2__0__Impl2618); 
    42794409                    rule__EtsiBnf__TypeAssignment_0_2_0(); 
    42804410 
     
    43024432        } 
    43034433        finally { 
    4304             if ( state.backtracking>0 ) { memoize(input, 65, rule__EtsiBnf__Group_0_2__0__Impl_StartIndex); } 
     4434            if ( state.backtracking>0 ) { memoize(input, 67, rule__EtsiBnf__Group_0_2__0__Impl_StartIndex); } 
    43054435 
    43064436                restoreStackSize(stackSize); 
     
    43134443 
    43144444    // $ANTLR start "rule__EtsiBnf__Group_0_2__1" 
    4315     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1189:1: rule__EtsiBnf__Group_0_2__1 : rule__EtsiBnf__Group_0_2__1__Impl rule__EtsiBnf__Group_0_2__2 ; 
     4445    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1223:1: rule__EtsiBnf__Group_0_2__1 : rule__EtsiBnf__Group_0_2__1__Impl rule__EtsiBnf__Group_0_2__2 ; 
    43164446    public final void rule__EtsiBnf__Group_0_2__1() throws RecognitionException { 
    43174447        int rule__EtsiBnf__Group_0_2__1_StartIndex = input.index(); 
     
    43204450             
    43214451        try { 
    4322             if ( state.backtracking>0 && alreadyParsedRule(input, 66) ) { return ; } 
    4323             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1193:1: ( rule__EtsiBnf__Group_0_2__1__Impl rule__EtsiBnf__Group_0_2__2 ) 
    4324             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1194:2: rule__EtsiBnf__Group_0_2__1__Impl rule__EtsiBnf__Group_0_2__2 
    4325             { 
    4326             pushFollow(FOLLOW_rule__EtsiBnf__Group_0_2__1__Impl_in_rule__EtsiBnf__Group_0_2__12571); 
     4452            if ( state.backtracking>0 && alreadyParsedRule(input, 68) ) { return ; } 
     4453            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1227:1: ( rule__EtsiBnf__Group_0_2__1__Impl rule__EtsiBnf__Group_0_2__2 ) 
     4454            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1228:2: rule__EtsiBnf__Group_0_2__1__Impl rule__EtsiBnf__Group_0_2__2 
     4455            { 
     4456            pushFollow(FOLLOW_rule__EtsiBnf__Group_0_2__1__Impl_in_rule__EtsiBnf__Group_0_2__12649); 
    43274457            rule__EtsiBnf__Group_0_2__1__Impl(); 
    43284458 
    43294459            state._fsp--; 
    43304460            if (state.failed) return ; 
    4331             pushFollow(FOLLOW_rule__EtsiBnf__Group_0_2__2_in_rule__EtsiBnf__Group_0_2__12574); 
     4461            pushFollow(FOLLOW_rule__EtsiBnf__Group_0_2__2_in_rule__EtsiBnf__Group_0_2__12652); 
    43324462            rule__EtsiBnf__Group_0_2__2(); 
    43334463 
     
    43434473        } 
    43444474        finally { 
    4345             if ( state.backtracking>0 ) { memoize(input, 66, rule__EtsiBnf__Group_0_2__1_StartIndex); } 
     4475            if ( state.backtracking>0 ) { memoize(input, 68, rule__EtsiBnf__Group_0_2__1_StartIndex); } 
    43464476 
    43474477                restoreStackSize(stackSize); 
     
    43544484 
    43554485    // $ANTLR start "rule__EtsiBnf__Group_0_2__1__Impl" 
    4356     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1201:1: rule__EtsiBnf__Group_0_2__1__Impl : ( ';' ) ; 
     4486    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1235:1: rule__EtsiBnf__Group_0_2__1__Impl : ( ';' ) ; 
    43574487    public final void rule__EtsiBnf__Group_0_2__1__Impl() throws RecognitionException { 
    43584488        int rule__EtsiBnf__Group_0_2__1__Impl_StartIndex = input.index(); 
     
    43614491             
    43624492        try { 
    4363             if ( state.backtracking>0 && alreadyParsedRule(input, 67) ) { return ; } 
    4364             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1205:1: ( ( ';' ) ) 
    4365             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1206:1: ( ';' ) 
    4366             { 
    4367             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1206:1: ( ';' ) 
    4368             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1207:1: ';' 
     4493            if ( state.backtracking>0 && alreadyParsedRule(input, 69) ) { return ; } 
     4494            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1239:1: ( ( ';' ) ) 
     4495            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1240:1: ( ';' ) 
     4496            { 
     4497            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1240:1: ( ';' ) 
     4498            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1241:1: ';' 
    43694499            { 
    43704500            if ( state.backtracking==0 ) { 
    43714501               before(grammarAccess.getEtsiBnfAccess().getSemicolonKeyword_0_2_1());  
    43724502            } 
    4373             match(input,23,FOLLOW_23_in_rule__EtsiBnf__Group_0_2__1__Impl2602); if (state.failed) return ; 
     4503            match(input,23,FOLLOW_23_in_rule__EtsiBnf__Group_0_2__1__Impl2680); if (state.failed) return ; 
    43744504            if ( state.backtracking==0 ) { 
    43754505               after(grammarAccess.getEtsiBnfAccess().getSemicolonKeyword_0_2_1());  
     
    43874517        } 
    43884518        finally { 
    4389             if ( state.backtracking>0 ) { memoize(input, 67, rule__EtsiBnf__Group_0_2__1__Impl_StartIndex); } 
     4519            if ( state.backtracking>0 ) { memoize(input, 69, rule__EtsiBnf__Group_0_2__1__Impl_StartIndex); } 
    43904520 
    43914521                restoreStackSize(stackSize); 
     
    43984528 
    43994529    // $ANTLR start "rule__EtsiBnf__Group_0_2__2" 
    4400     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1220:1: rule__EtsiBnf__Group_0_2__2 : rule__EtsiBnf__Group_0_2__2__Impl rule__EtsiBnf__Group_0_2__3 ; 
     4530    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1254:1: rule__EtsiBnf__Group_0_2__2 : rule__EtsiBnf__Group_0_2__2__Impl rule__EtsiBnf__Group_0_2__3 ; 
    44014531    public final void rule__EtsiBnf__Group_0_2__2() throws RecognitionException { 
    44024532        int rule__EtsiBnf__Group_0_2__2_StartIndex = input.index(); 
     
    44054535             
    44064536        try { 
    4407             if ( state.backtracking>0 && alreadyParsedRule(input, 68) ) { return ; } 
    4408             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1224:1: ( rule__EtsiBnf__Group_0_2__2__Impl rule__EtsiBnf__Group_0_2__3 ) 
    4409             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1225:2: rule__EtsiBnf__Group_0_2__2__Impl rule__EtsiBnf__Group_0_2__3 
    4410             { 
    4411             pushFollow(FOLLOW_rule__EtsiBnf__Group_0_2__2__Impl_in_rule__EtsiBnf__Group_0_2__22633); 
     4537            if ( state.backtracking>0 && alreadyParsedRule(input, 70) ) { return ; } 
     4538            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1258:1: ( rule__EtsiBnf__Group_0_2__2__Impl rule__EtsiBnf__Group_0_2__3 ) 
     4539            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1259:2: rule__EtsiBnf__Group_0_2__2__Impl rule__EtsiBnf__Group_0_2__3 
     4540            { 
     4541            pushFollow(FOLLOW_rule__EtsiBnf__Group_0_2__2__Impl_in_rule__EtsiBnf__Group_0_2__22711); 
    44124542            rule__EtsiBnf__Group_0_2__2__Impl(); 
    44134543 
    44144544            state._fsp--; 
    44154545            if (state.failed) return ; 
    4416             pushFollow(FOLLOW_rule__EtsiBnf__Group_0_2__3_in_rule__EtsiBnf__Group_0_2__22636); 
     4546            pushFollow(FOLLOW_rule__EtsiBnf__Group_0_2__3_in_rule__EtsiBnf__Group_0_2__22714); 
    44174547            rule__EtsiBnf__Group_0_2__3(); 
    44184548 
     
    44284558        } 
    44294559        finally { 
    4430             if ( state.backtracking>0 ) { memoize(input, 68, rule__EtsiBnf__Group_0_2__2_StartIndex); } 
     4560            if ( state.backtracking>0 ) { memoize(input, 70, rule__EtsiBnf__Group_0_2__2_StartIndex); } 
    44314561 
    44324562                restoreStackSize(stackSize); 
     
    44394569 
    44404570    // $ANTLR start "rule__EtsiBnf__Group_0_2__2__Impl" 
    4441     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1232:1: rule__EtsiBnf__Group_0_2__2__Impl : ( ( rule__EtsiBnf__ImportSectionAssignment_0_2_2 )? ) ; 
     4571    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1266:1: rule__EtsiBnf__Group_0_2__2__Impl : ( ( rule__EtsiBnf__ImportSectionAssignment_0_2_2 )? ) ; 
    44424572    public final void rule__EtsiBnf__Group_0_2__2__Impl() throws RecognitionException { 
    44434573        int rule__EtsiBnf__Group_0_2__2__Impl_StartIndex = input.index(); 
     
    44464576             
    44474577        try { 
    4448             if ( state.backtracking>0 && alreadyParsedRule(input, 69) ) { return ; } 
    4449             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1236:1: ( ( ( rule__EtsiBnf__ImportSectionAssignment_0_2_2 )? ) ) 
    4450             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1237:1: ( ( rule__EtsiBnf__ImportSectionAssignment_0_2_2 )? ) 
    4451             { 
    4452             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1237:1: ( ( rule__EtsiBnf__ImportSectionAssignment_0_2_2 )? ) 
    4453             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1238:1: ( rule__EtsiBnf__ImportSectionAssignment_0_2_2 )? 
     4578            if ( state.backtracking>0 && alreadyParsedRule(input, 71) ) { return ; } 
     4579            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1270:1: ( ( ( rule__EtsiBnf__ImportSectionAssignment_0_2_2 )? ) ) 
     4580            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1271:1: ( ( rule__EtsiBnf__ImportSectionAssignment_0_2_2 )? ) 
     4581            { 
     4582            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1271:1: ( ( rule__EtsiBnf__ImportSectionAssignment_0_2_2 )? ) 
     4583            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1272:1: ( rule__EtsiBnf__ImportSectionAssignment_0_2_2 )? 
    44544584            { 
    44554585            if ( state.backtracking==0 ) { 
    44564586               before(grammarAccess.getEtsiBnfAccess().getImportSectionAssignment_0_2_2());  
    44574587            } 
    4458             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1239:1: ( rule__EtsiBnf__ImportSectionAssignment_0_2_2 )? 
     4588            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1273:1: ( rule__EtsiBnf__ImportSectionAssignment_0_2_2 )? 
    44594589            int alt17=2; 
    44604590            int LA17_0 = input.LA(1); 
     
    44654595            switch (alt17) { 
    44664596                case 1 : 
    4467                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1239:2: rule__EtsiBnf__ImportSectionAssignment_0_2_2 
     4597                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1273:2: rule__EtsiBnf__ImportSectionAssignment_0_2_2 
    44684598                    { 
    4469                     pushFollow(FOLLOW_rule__EtsiBnf__ImportSectionAssignment_0_2_2_in_rule__EtsiBnf__Group_0_2__2__Impl2663); 
     4599                    pushFollow(FOLLOW_rule__EtsiBnf__ImportSectionAssignment_0_2_2_in_rule__EtsiBnf__Group_0_2__2__Impl2741); 
    44704600                    rule__EtsiBnf__ImportSectionAssignment_0_2_2(); 
    44714601 
     
    44934623        } 
    44944624        finally { 
    4495             if ( state.backtracking>0 ) { memoize(input, 69, rule__EtsiBnf__Group_0_2__2__Impl_StartIndex); } 
     4625            if ( state.backtracking>0 ) { memoize(input, 71, rule__EtsiBnf__Group_0_2__2__Impl_StartIndex); } 
    44964626 
    44974627                restoreStackSize(stackSize); 
     
    45044634 
    45054635    // $ANTLR start "rule__EtsiBnf__Group_0_2__3" 
    4506     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1249:1: rule__EtsiBnf__Group_0_2__3 : rule__EtsiBnf__Group_0_2__3__Impl ; 
     4636    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1283:1: rule__EtsiBnf__Group_0_2__3 : rule__EtsiBnf__Group_0_2__3__Impl ; 
    45074637    public final void rule__EtsiBnf__Group_0_2__3() throws RecognitionException { 
    45084638        int rule__EtsiBnf__Group_0_2__3_StartIndex = input.index(); 
     
    45114641             
    45124642        try { 
    4513             if ( state.backtracking>0 && alreadyParsedRule(input, 70) ) { return ; } 
    4514             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1253:1: ( rule__EtsiBnf__Group_0_2__3__Impl ) 
    4515             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1254:2: rule__EtsiBnf__Group_0_2__3__Impl 
    4516             { 
    4517             pushFollow(FOLLOW_rule__EtsiBnf__Group_0_2__3__Impl_in_rule__EtsiBnf__Group_0_2__32694); 
     4643            if ( state.backtracking>0 && alreadyParsedRule(input, 72) ) { return ; } 
     4644            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1287:1: ( rule__EtsiBnf__Group_0_2__3__Impl ) 
     4645            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1288:2: rule__EtsiBnf__Group_0_2__3__Impl 
     4646            { 
     4647            pushFollow(FOLLOW_rule__EtsiBnf__Group_0_2__3__Impl_in_rule__EtsiBnf__Group_0_2__32772); 
    45184648            rule__EtsiBnf__Group_0_2__3__Impl(); 
    45194649 
     
    45294659        } 
    45304660        finally { 
    4531             if ( state.backtracking>0 ) { memoize(input, 70, rule__EtsiBnf__Group_0_2__3_StartIndex); } 
     4661            if ( state.backtracking>0 ) { memoize(input, 72, rule__EtsiBnf__Group_0_2__3_StartIndex); } 
    45324662 
    45334663                restoreStackSize(stackSize); 
     
    45404670 
    45414671    // $ANTLR start "rule__EtsiBnf__Group_0_2__3__Impl" 
    4542     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1260:1: rule__EtsiBnf__Group_0_2__3__Impl : ( ( ( rule__EtsiBnf__BnfEntryAssignment_0_2_3 ) ) ( ( rule__EtsiBnf__BnfEntryAssignment_0_2_3 )* ) ) ; 
     4672    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1294:1: rule__EtsiBnf__Group_0_2__3__Impl : ( ( ( rule__EtsiBnf__BnfEntryAssignment_0_2_3 ) ) ( ( rule__EtsiBnf__BnfEntryAssignment_0_2_3 )* ) ) ; 
    45434673    public final void rule__EtsiBnf__Group_0_2__3__Impl() throws RecognitionException { 
    45444674        int rule__EtsiBnf__Group_0_2__3__Impl_StartIndex = input.index(); 
     
    45474677             
    45484678        try { 
    4549             if ( state.backtracking>0 && alreadyParsedRule(input, 71) ) { return ; } 
    4550             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1264:1: ( ( ( ( rule__EtsiBnf__BnfEntryAssignment_0_2_3 ) ) ( ( rule__EtsiBnf__BnfEntryAssignment_0_2_3 )* ) ) ) 
    4551             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1265:1: ( ( ( rule__EtsiBnf__BnfEntryAssignment_0_2_3 ) ) ( ( rule__EtsiBnf__BnfEntryAssignment_0_2_3 )* ) ) 
    4552             { 
    4553             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1265:1: ( ( ( rule__EtsiBnf__BnfEntryAssignment_0_2_3 ) ) ( ( rule__EtsiBnf__BnfEntryAssignment_0_2_3 )* ) ) 
    4554             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1266:1: ( ( rule__EtsiBnf__BnfEntryAssignment_0_2_3 ) ) ( ( rule__EtsiBnf__BnfEntryAssignment_0_2_3 )* ) 
    4555             { 
    4556             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1266:1: ( ( rule__EtsiBnf__BnfEntryAssignment_0_2_3 ) ) 
    4557             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1267:1: ( rule__EtsiBnf__BnfEntryAssignment_0_2_3 ) 
     4679            if ( state.backtracking>0 && alreadyParsedRule(input, 73) ) { return ; } 
     4680            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1298:1: ( ( ( ( rule__EtsiBnf__BnfEntryAssignment_0_2_3 ) ) ( ( rule__EtsiBnf__BnfEntryAssignment_0_2_3 )* ) ) ) 
     4681            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1299:1: ( ( ( rule__EtsiBnf__BnfEntryAssignment_0_2_3 ) ) ( ( rule__EtsiBnf__BnfEntryAssignment_0_2_3 )* ) ) 
     4682            { 
     4683            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1299:1: ( ( ( rule__EtsiBnf__BnfEntryAssignment_0_2_3 ) ) ( ( rule__EtsiBnf__BnfEntryAssignment_0_2_3 )* ) ) 
     4684            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1300:1: ( ( rule__EtsiBnf__BnfEntryAssignment_0_2_3 ) ) ( ( rule__EtsiBnf__BnfEntryAssignment_0_2_3 )* ) 
     4685            { 
     4686            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1300:1: ( ( rule__EtsiBnf__BnfEntryAssignment_0_2_3 ) ) 
     4687            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1301:1: ( rule__EtsiBnf__BnfEntryAssignment_0_2_3 ) 
    45584688            { 
    45594689            if ( state.backtracking==0 ) { 
    45604690               before(grammarAccess.getEtsiBnfAccess().getBnfEntryAssignment_0_2_3());  
    45614691            } 
    4562             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1268:1: ( rule__EtsiBnf__BnfEntryAssignment_0_2_3 ) 
    4563             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1268:2: rule__EtsiBnf__BnfEntryAssignment_0_2_3 
    4564             { 
    4565             pushFollow(FOLLOW_rule__EtsiBnf__BnfEntryAssignment_0_2_3_in_rule__EtsiBnf__Group_0_2__3__Impl2723); 
     4692            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1302:1: ( rule__EtsiBnf__BnfEntryAssignment_0_2_3 ) 
     4693            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1302:2: rule__EtsiBnf__BnfEntryAssignment_0_2_3 
     4694            { 
     4695            pushFollow(FOLLOW_rule__EtsiBnf__BnfEntryAssignment_0_2_3_in_rule__EtsiBnf__Group_0_2__3__Impl2801); 
    45664696            rule__EtsiBnf__BnfEntryAssignment_0_2_3(); 
    45674697 
     
    45774707            } 
    45784708 
    4579             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1271:1: ( ( rule__EtsiBnf__BnfEntryAssignment_0_2_3 )* ) 
    4580             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1272:1: ( rule__EtsiBnf__BnfEntryAssignment_0_2_3 )* 
     4709            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1305:1: ( ( rule__EtsiBnf__BnfEntryAssignment_0_2_3 )* ) 
     4710            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1306:1: ( rule__EtsiBnf__BnfEntryAssignment_0_2_3 )* 
    45814711            { 
    45824712            if ( state.backtracking==0 ) { 
    45834713               before(grammarAccess.getEtsiBnfAccess().getBnfEntryAssignment_0_2_3());  
    45844714            } 
    4585             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1273:1: ( rule__EtsiBnf__BnfEntryAssignment_0_2_3 )* 
     4715            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1307:1: ( rule__EtsiBnf__BnfEntryAssignment_0_2_3 )* 
    45864716            loop18: 
    45874717            do { 
     
    45894719                int LA18_0 = input.LA(1); 
    45904720 
    4591                 if ( ((LA18_0>=RULE_ID && LA18_0<=RULE_SECTIONHEADER)||LA18_0==RULE_INT) ) { 
     4721                if ( ((LA18_0>=RULE_ID && LA18_0<=RULE_ML_COMMENT)||LA18_0==RULE_INT) ) { 
    45924722                    alt18=1; 
    45934723                } 
     
    45964726                switch (alt18) { 
    45974727                case 1 : 
    4598                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1273:2: rule__EtsiBnf__BnfEntryAssignment_0_2_3 
     4728                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1307:2: rule__EtsiBnf__BnfEntryAssignment_0_2_3 
    45994729                    { 
    4600                     pushFollow(FOLLOW_rule__EtsiBnf__BnfEntryAssignment_0_2_3_in_rule__EtsiBnf__Group_0_2__3__Impl2735); 
     4730                    pushFollow(FOLLOW_rule__EtsiBnf__BnfEntryAssignment_0_2_3_in_rule__EtsiBnf__Group_0_2__3__Impl2813); 
    46014731                    rule__EtsiBnf__BnfEntryAssignment_0_2_3(); 
    46024732 
     
    46304760        } 
    46314761        finally { 
    4632             if ( state.backtracking>0 ) { memoize(input, 71, rule__EtsiBnf__Group_0_2__3__Impl_StartIndex); } 
     4762            if ( state.backtracking>0 ) { memoize(input, 73, rule__EtsiBnf__Group_0_2__3__Impl_StartIndex); } 
    46334763 
    46344764                restoreStackSize(stackSize); 
     
    46414771 
    46424772    // $ANTLR start "rule__EtsiBnf__Group_1__0" 
    4643     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1292:1: rule__EtsiBnf__Group_1__0 : rule__EtsiBnf__Group_1__0__Impl rule__EtsiBnf__Group_1__1 ; 
     4773    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1326:1: rule__EtsiBnf__Group_1__0 : rule__EtsiBnf__Group_1__0__Impl rule__EtsiBnf__Group_1__1 ; 
    46444774    public final void rule__EtsiBnf__Group_1__0() throws RecognitionException { 
    46454775        int rule__EtsiBnf__Group_1__0_StartIndex = input.index(); 
     
    46484778             
    46494779        try { 
    4650             if ( state.backtracking>0 && alreadyParsedRule(input, 72) ) { return ; } 
    4651             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1296:1: ( rule__EtsiBnf__Group_1__0__Impl rule__EtsiBnf__Group_1__1 ) 
    4652             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1297:2: rule__EtsiBnf__Group_1__0__Impl rule__EtsiBnf__Group_1__1 
    4653             { 
    4654             pushFollow(FOLLOW_rule__EtsiBnf__Group_1__0__Impl_in_rule__EtsiBnf__Group_1__02776); 
     4780            if ( state.backtracking>0 && alreadyParsedRule(input, 74) ) { return ; } 
     4781            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1330:1: ( rule__EtsiBnf__Group_1__0__Impl rule__EtsiBnf__Group_1__1 ) 
     4782            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1331:2: rule__EtsiBnf__Group_1__0__Impl rule__EtsiBnf__Group_1__1 
     4783            { 
     4784            pushFollow(FOLLOW_rule__EtsiBnf__Group_1__0__Impl_in_rule__EtsiBnf__Group_1__02854); 
    46554785            rule__EtsiBnf__Group_1__0__Impl(); 
    46564786 
    46574787            state._fsp--; 
    46584788            if (state.failed) return ; 
    4659             pushFollow(FOLLOW_rule__EtsiBnf__Group_1__1_in_rule__EtsiBnf__Group_1__02779); 
     4789            pushFollow(FOLLOW_rule__EtsiBnf__Group_1__1_in_rule__EtsiBnf__Group_1__02857); 
    46604790            rule__EtsiBnf__Group_1__1(); 
    46614791 
     
    46714801        } 
    46724802        finally { 
    4673             if ( state.backtracking>0 ) { memoize(input, 72, rule__EtsiBnf__Group_1__0_StartIndex); } 
     4803            if ( state.backtracking>0 ) { memoize(input, 74, rule__EtsiBnf__Group_1__0_StartIndex); } 
    46744804 
    46754805                restoreStackSize(stackSize); 
     
    46824812 
    46834813    // $ANTLR start "rule__EtsiBnf__Group_1__0__Impl" 
    4684     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1304:1: rule__EtsiBnf__Group_1__0__Impl : ( ( rule__EtsiBnf__TypeAssignment_1_0 ) ) ; 
     4814    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1338:1: rule__EtsiBnf__Group_1__0__Impl : ( ( rule__EtsiBnf__TypeAssignment_1_0 ) ) ; 
    46854815    public final void rule__EtsiBnf__Group_1__0__Impl() throws RecognitionException { 
    46864816        int rule__EtsiBnf__Group_1__0__Impl_StartIndex = input.index(); 
     
    46894819             
    46904820        try { 
    4691             if ( state.backtracking>0 && alreadyParsedRule(input, 73) ) { return ; } 
    4692             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1308:1: ( ( ( rule__EtsiBnf__TypeAssignment_1_0 ) ) ) 
    4693             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1309:1: ( ( rule__EtsiBnf__TypeAssignment_1_0 ) ) 
    4694             { 
    4695             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1309:1: ( ( rule__EtsiBnf__TypeAssignment_1_0 ) ) 
    4696             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1310:1: ( rule__EtsiBnf__TypeAssignment_1_0 ) 
     4821            if ( state.backtracking>0 && alreadyParsedRule(input, 75) ) { return ; } 
     4822            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1342:1: ( ( ( rule__EtsiBnf__TypeAssignment_1_0 ) ) ) 
     4823            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1343:1: ( ( rule__EtsiBnf__TypeAssignment_1_0 ) ) 
     4824            { 
     4825            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1343:1: ( ( rule__EtsiBnf__TypeAssignment_1_0 ) ) 
     4826            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1344:1: ( rule__EtsiBnf__TypeAssignment_1_0 ) 
    46974827            { 
    46984828            if ( state.backtracking==0 ) { 
    46994829               before(grammarAccess.getEtsiBnfAccess().getTypeAssignment_1_0());  
    47004830            } 
    4701             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1311:1: ( rule__EtsiBnf__TypeAssignment_1_0 ) 
    4702             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1311:2: rule__EtsiBnf__TypeAssignment_1_0 
    4703             { 
    4704             pushFollow(FOLLOW_rule__EtsiBnf__TypeAssignment_1_0_in_rule__EtsiBnf__Group_1__0__Impl2806); 
     4831            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1345:1: ( rule__EtsiBnf__TypeAssignment_1_0 ) 
     4832            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1345:2: rule__EtsiBnf__TypeAssignment_1_0 
     4833            { 
     4834            pushFollow(FOLLOW_rule__EtsiBnf__TypeAssignment_1_0_in_rule__EtsiBnf__Group_1__0__Impl2884); 
    47054835            rule__EtsiBnf__TypeAssignment_1_0(); 
    47064836 
     
    47254855        } 
    47264856        finally { 
    4727             if ( state.backtracking>0 ) { memoize(input, 73, rule__EtsiBnf__Group_1__0__Impl_StartIndex); } 
     4857            if ( state.backtracking>0 ) { memoize(input, 75, rule__EtsiBnf__Group_1__0__Impl_StartIndex); } 
    47284858 
    47294859                restoreStackSize(stackSize); 
     
    47364866 
    47374867    // $ANTLR start "rule__EtsiBnf__Group_1__1" 
    4738     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1321:1: rule__EtsiBnf__Group_1__1 : rule__EtsiBnf__Group_1__1__Impl rule__EtsiBnf__Group_1__2 ; 
     4868    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1355:1: rule__EtsiBnf__Group_1__1 : rule__EtsiBnf__Group_1__1__Impl rule__EtsiBnf__Group_1__2 ; 
    47394869    public final void rule__EtsiBnf__Group_1__1() throws RecognitionException { 
    47404870        int rule__EtsiBnf__Group_1__1_StartIndex = input.index(); 
     
    47434873             
    47444874        try { 
    4745             if ( state.backtracking>0 && alreadyParsedRule(input, 74) ) { return ; } 
    4746             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1325:1: ( rule__EtsiBnf__Group_1__1__Impl rule__EtsiBnf__Group_1__2 ) 
    4747             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1326:2: rule__EtsiBnf__Group_1__1__Impl rule__EtsiBnf__Group_1__2 
    4748             { 
    4749             pushFollow(FOLLOW_rule__EtsiBnf__Group_1__1__Impl_in_rule__EtsiBnf__Group_1__12836); 
     4875            if ( state.backtracking>0 && alreadyParsedRule(input, 76) ) { return ; } 
     4876            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1359:1: ( rule__EtsiBnf__Group_1__1__Impl rule__EtsiBnf__Group_1__2 ) 
     4877            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1360:2: rule__EtsiBnf__Group_1__1__Impl rule__EtsiBnf__Group_1__2 
     4878            { 
     4879            pushFollow(FOLLOW_rule__EtsiBnf__Group_1__1__Impl_in_rule__EtsiBnf__Group_1__12914); 
    47504880            rule__EtsiBnf__Group_1__1__Impl(); 
    47514881 
    47524882            state._fsp--; 
    47534883            if (state.failed) return ; 
    4754             pushFollow(FOLLOW_rule__EtsiBnf__Group_1__2_in_rule__EtsiBnf__Group_1__12839); 
     4884            pushFollow(FOLLOW_rule__EtsiBnf__Group_1__2_in_rule__EtsiBnf__Group_1__12917); 
    47554885            rule__EtsiBnf__Group_1__2(); 
    47564886 
     
    47664896        } 
    47674897        finally { 
    4768             if ( state.backtracking>0 ) { memoize(input, 74, rule__EtsiBnf__Group_1__1_StartIndex); } 
     4898            if ( state.backtracking>0 ) { memoize(input, 76, rule__EtsiBnf__Group_1__1_StartIndex); } 
    47694899 
    47704900                restoreStackSize(stackSize); 
     
    47774907 
    47784908    // $ANTLR start "rule__EtsiBnf__Group_1__1__Impl" 
    4779     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1333:1: rule__EtsiBnf__Group_1__1__Impl : ( ';' ) ; 
     4909    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1367:1: rule__EtsiBnf__Group_1__1__Impl : ( ';' ) ; 
    47804910    public final void rule__EtsiBnf__Group_1__1__Impl() throws RecognitionException { 
    47814911        int rule__EtsiBnf__Group_1__1__Impl_StartIndex = input.index(); 
     
    47844914             
    47854915        try { 
    4786             if ( state.backtracking>0 && alreadyParsedRule(input, 75) ) { return ; } 
    4787             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1337:1: ( ( ';' ) ) 
    4788             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1338:1: ( ';' ) 
    4789             { 
    4790             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1338:1: ( ';' ) 
    4791             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1339:1: ';' 
     4916            if ( state.backtracking>0 && alreadyParsedRule(input, 77) ) { return ; } 
     4917            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1371:1: ( ( ';' ) ) 
     4918            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1372:1: ( ';' ) 
     4919            { 
     4920            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1372:1: ( ';' ) 
     4921            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1373:1: ';' 
    47924922            { 
    47934923            if ( state.backtracking==0 ) { 
    47944924               before(grammarAccess.getEtsiBnfAccess().getSemicolonKeyword_1_1());  
    47954925            } 
    4796             match(input,23,FOLLOW_23_in_rule__EtsiBnf__Group_1__1__Impl2867); if (state.failed) return ; 
     4926            match(input,23,FOLLOW_23_in_rule__EtsiBnf__Group_1__1__Impl2945); if (state.failed) return ; 
    47974927            if ( state.backtracking==0 ) { 
    47984928               after(grammarAccess.getEtsiBnfAccess().getSemicolonKeyword_1_1());  
     
    48104940        } 
    48114941        finally { 
    4812             if ( state.backtracking>0 ) { memoize(input, 75, rule__EtsiBnf__Group_1__1__Impl_StartIndex); } 
     4942            if ( state.backtracking>0 ) { memoize(input, 77, rule__EtsiBnf__Group_1__1__Impl_StartIndex); } 
    48134943 
    48144944                restoreStackSize(stackSize); 
     
    48214951 
    48224952    // $ANTLR start "rule__EtsiBnf__Group_1__2" 
    4823     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1352:1: rule__EtsiBnf__Group_1__2 : rule__EtsiBnf__Group_1__2__Impl rule__EtsiBnf__Group_1__3 ; 
     4953    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1386:1: rule__EtsiBnf__Group_1__2 : rule__EtsiBnf__Group_1__2__Impl rule__EtsiBnf__Group_1__3 ; 
    48244954    public final void rule__EtsiBnf__Group_1__2() throws RecognitionException { 
    48254955        int rule__EtsiBnf__Group_1__2_StartIndex = input.index(); 
     
    48284958             
    48294959        try { 
    4830             if ( state.backtracking>0 && alreadyParsedRule(input, 76) ) { return ; } 
    4831             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1356:1: ( rule__EtsiBnf__Group_1__2__Impl rule__EtsiBnf__Group_1__3 ) 
    4832             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1357:2: rule__EtsiBnf__Group_1__2__Impl rule__EtsiBnf__Group_1__3 
    4833             { 
    4834             pushFollow(FOLLOW_rule__EtsiBnf__Group_1__2__Impl_in_rule__EtsiBnf__Group_1__22898); 
     4960            if ( state.backtracking>0 && alreadyParsedRule(input, 78) ) { return ; } 
     4961            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1390:1: ( rule__EtsiBnf__Group_1__2__Impl rule__EtsiBnf__Group_1__3 ) 
     4962            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1391:2: rule__EtsiBnf__Group_1__2__Impl rule__EtsiBnf__Group_1__3 
     4963            { 
     4964            pushFollow(FOLLOW_rule__EtsiBnf__Group_1__2__Impl_in_rule__EtsiBnf__Group_1__22976); 
    48354965            rule__EtsiBnf__Group_1__2__Impl(); 
    48364966 
    48374967            state._fsp--; 
    48384968            if (state.failed) return ; 
    4839             pushFollow(FOLLOW_rule__EtsiBnf__Group_1__3_in_rule__EtsiBnf__Group_1__22901); 
     4969            pushFollow(FOLLOW_rule__EtsiBnf__Group_1__3_in_rule__EtsiBnf__Group_1__22979); 
    48404970            rule__EtsiBnf__Group_1__3(); 
    48414971 
     
    48514981        } 
    48524982        finally { 
    4853             if ( state.backtracking>0 ) { memoize(input, 76, rule__EtsiBnf__Group_1__2_StartIndex); } 
     4983            if ( state.backtracking>0 ) { memoize(input, 78, rule__EtsiBnf__Group_1__2_StartIndex); } 
    48544984 
    48554985                restoreStackSize(stackSize); 
     
    48624992 
    48634993    // $ANTLR start "rule__EtsiBnf__Group_1__2__Impl" 
    4864     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1364:1: rule__EtsiBnf__Group_1__2__Impl : ( ( rule__EtsiBnf__ImportSectionAssignment_1_2 )? ) ; 
     4994    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1398:1: rule__EtsiBnf__Group_1__2__Impl : ( ( rule__EtsiBnf__ImportSectionAssignment_1_2 )? ) ; 
    48654995    public final void rule__EtsiBnf__Group_1__2__Impl() throws RecognitionException { 
    48664996        int rule__EtsiBnf__Group_1__2__Impl_StartIndex = input.index(); 
     
    48694999             
    48705000        try { 
    4871             if ( state.backtracking>0 && alreadyParsedRule(input, 77) ) { return ; } 
    4872             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1368:1: ( ( ( rule__EtsiBnf__ImportSectionAssignment_1_2 )? ) ) 
    4873             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1369:1: ( ( rule__EtsiBnf__ImportSectionAssignment_1_2 )? ) 
    4874             { 
    4875             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1369:1: ( ( rule__EtsiBnf__ImportSectionAssignment_1_2 )? ) 
    4876             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1370:1: ( rule__EtsiBnf__ImportSectionAssignment_1_2 )? 
     5001            if ( state.backtracking>0 && alreadyParsedRule(input, 79) ) { return ; } 
     5002            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1402:1: ( ( ( rule__EtsiBnf__ImportSectionAssignment_1_2 )? ) ) 
     5003            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1403:1: ( ( rule__EtsiBnf__ImportSectionAssignment_1_2 )? ) 
     5004            { 
     5005            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1403:1: ( ( rule__EtsiBnf__ImportSectionAssignment_1_2 )? ) 
     5006            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1404:1: ( rule__EtsiBnf__ImportSectionAssignment_1_2 )? 
    48775007            { 
    48785008            if ( state.backtracking==0 ) { 
    48795009               before(grammarAccess.getEtsiBnfAccess().getImportSectionAssignment_1_2());  
    48805010            } 
    4881             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1371:1: ( rule__EtsiBnf__ImportSectionAssignment_1_2 )? 
     5011            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1405:1: ( rule__EtsiBnf__ImportSectionAssignment_1_2 )? 
    48825012            int alt19=2; 
    48835013            int LA19_0 = input.LA(1); 
     
    48885018            switch (alt19) { 
    48895019                case 1 : 
    4890                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1371:2: rule__EtsiBnf__ImportSectionAssignment_1_2 
     5020                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1405:2: rule__EtsiBnf__ImportSectionAssignment_1_2 
    48915021                    { 
    4892                     pushFollow(FOLLOW_rule__EtsiBnf__ImportSectionAssignment_1_2_in_rule__EtsiBnf__Group_1__2__Impl2928); 
     5022                    pushFollow(FOLLOW_rule__EtsiBnf__ImportSectionAssignment_1_2_in_rule__EtsiBnf__Group_1__2__Impl3006); 
    48935023                    rule__EtsiBnf__ImportSectionAssignment_1_2(); 
    48945024 
     
    49165046        } 
    49175047        finally { 
    4918             if ( state.backtracking>0 ) { memoize(input, 77, rule__EtsiBnf__Group_1__2__Impl_StartIndex); } 
     5048            if ( state.backtracking>0 ) { memoize(input, 79, rule__EtsiBnf__Group_1__2__Impl_StartIndex); } 
    49195049 
    49205050                restoreStackSize(stackSize); 
     
    49275057 
    49285058    // $ANTLR start "rule__EtsiBnf__Group_1__3" 
    4929     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1381:1: rule__EtsiBnf__Group_1__3 : rule__EtsiBnf__Group_1__3__Impl ; 
     5059    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1415:1: rule__EtsiBnf__Group_1__3 : rule__EtsiBnf__Group_1__3__Impl ; 
    49305060    public final void rule__EtsiBnf__Group_1__3() throws RecognitionException { 
    49315061        int rule__EtsiBnf__Group_1__3_StartIndex = input.index(); 
     
    49345064             
    49355065        try { 
    4936             if ( state.backtracking>0 && alreadyParsedRule(input, 78) ) { return ; } 
    4937             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1385:1: ( rule__EtsiBnf__Group_1__3__Impl ) 
    4938             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1386:2: rule__EtsiBnf__Group_1__3__Impl 
    4939             { 
    4940             pushFollow(FOLLOW_rule__EtsiBnf__Group_1__3__Impl_in_rule__EtsiBnf__Group_1__32959); 
     5066            if ( state.backtracking>0 && alreadyParsedRule(input, 80) ) { return ; } 
     5067            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1419:1: ( rule__EtsiBnf__Group_1__3__Impl ) 
     5068            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1420:2: rule__EtsiBnf__Group_1__3__Impl 
     5069            { 
     5070            pushFollow(FOLLOW_rule__EtsiBnf__Group_1__3__Impl_in_rule__EtsiBnf__Group_1__33037); 
    49415071            rule__EtsiBnf__Group_1__3__Impl(); 
    49425072 
     
    49525082        } 
    49535083        finally { 
    4954             if ( state.backtracking>0 ) { memoize(input, 78, rule__EtsiBnf__Group_1__3_StartIndex); } 
     5084            if ( state.backtracking>0 ) { memoize(input, 80, rule__EtsiBnf__Group_1__3_StartIndex); } 
    49555085 
    49565086                restoreStackSize(stackSize); 
     
    49635093 
    49645094    // $ANTLR start "rule__EtsiBnf__Group_1__3__Impl" 
    4965     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1392:1: rule__EtsiBnf__Group_1__3__Impl : ( ( rule__EtsiBnf__DeltaEntryAssignment_1_3 )* ) ; 
     5095    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1426:1: rule__EtsiBnf__Group_1__3__Impl : ( ( rule__EtsiBnf__DeltaEntryAssignment_1_3 )* ) ; 
    49665096    public final void rule__EtsiBnf__Group_1__3__Impl() throws RecognitionException { 
    49675097        int rule__EtsiBnf__Group_1__3__Impl_StartIndex = input.index(); 
     
    49705100             
    49715101        try { 
    4972             if ( state.backtracking>0 && alreadyParsedRule(input, 79) ) { return ; } 
    4973             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1396:1: ( ( ( rule__EtsiBnf__DeltaEntryAssignment_1_3 )* ) ) 
    4974             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1397:1: ( ( rule__EtsiBnf__DeltaEntryAssignment_1_3 )* ) 
    4975             { 
    4976             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1397:1: ( ( rule__EtsiBnf__DeltaEntryAssignment_1_3 )* ) 
    4977             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1398:1: ( rule__EtsiBnf__DeltaEntryAssignment_1_3 )* 
     5102            if ( state.backtracking>0 && alreadyParsedRule(input, 81) ) { return ; } 
     5103            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1430:1: ( ( ( rule__EtsiBnf__DeltaEntryAssignment_1_3 )* ) ) 
     5104            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1431:1: ( ( rule__EtsiBnf__DeltaEntryAssignment_1_3 )* ) 
     5105            { 
     5106            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1431:1: ( ( rule__EtsiBnf__DeltaEntryAssignment_1_3 )* ) 
     5107            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1432:1: ( rule__EtsiBnf__DeltaEntryAssignment_1_3 )* 
    49785108            { 
    49795109            if ( state.backtracking==0 ) { 
    49805110               before(grammarAccess.getEtsiBnfAccess().getDeltaEntryAssignment_1_3());  
    49815111            } 
    4982             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1399:1: ( rule__EtsiBnf__DeltaEntryAssignment_1_3 )* 
     5112            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1433:1: ( rule__EtsiBnf__DeltaEntryAssignment_1_3 )* 
    49835113            loop20: 
    49845114            do { 
     
    49935123                switch (alt20) { 
    49945124                case 1 : 
    4995                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1399:2: rule__EtsiBnf__DeltaEntryAssignment_1_3 
     5125                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1433:2: rule__EtsiBnf__DeltaEntryAssignment_1_3 
    49965126                    { 
    4997                     pushFollow(FOLLOW_rule__EtsiBnf__DeltaEntryAssignment_1_3_in_rule__EtsiBnf__Group_1__3__Impl2986); 
     5127                    pushFollow(FOLLOW_rule__EtsiBnf__DeltaEntryAssignment_1_3_in_rule__EtsiBnf__Group_1__3__Impl3064); 
    49985128                    rule__EtsiBnf__DeltaEntryAssignment_1_3(); 
    49995129 
     
    50245154        } 
    50255155        finally { 
    5026             if ( state.backtracking>0 ) { memoize(input, 79, rule__EtsiBnf__Group_1__3__Impl_StartIndex); } 
     5156            if ( state.backtracking>0 ) { memoize(input, 81, rule__EtsiBnf__Group_1__3__Impl_StartIndex); } 
    50275157 
    50285158                restoreStackSize(stackSize); 
     
    50355165 
    50365166    // $ANTLR start "rule__EtsiBnf__Group_2__0" 
    5037     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1417:1: rule__EtsiBnf__Group_2__0 : rule__EtsiBnf__Group_2__0__Impl rule__EtsiBnf__Group_2__1 ; 
     5167    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1451:1: rule__EtsiBnf__Group_2__0 : rule__EtsiBnf__Group_2__0__Impl rule__EtsiBnf__Group_2__1 ; 
    50385168    public final void rule__EtsiBnf__Group_2__0() throws RecognitionException { 
    50395169        int rule__EtsiBnf__Group_2__0_StartIndex = input.index(); 
     
    50425172             
    50435173        try { 
    5044             if ( state.backtracking>0 && alreadyParsedRule(input, 80) ) { return ; } 
    5045             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1421:1: ( rule__EtsiBnf__Group_2__0__Impl rule__EtsiBnf__Group_2__1 ) 
    5046             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1422:2: rule__EtsiBnf__Group_2__0__Impl rule__EtsiBnf__Group_2__1 
    5047             { 
    5048             pushFollow(FOLLOW_rule__EtsiBnf__Group_2__0__Impl_in_rule__EtsiBnf__Group_2__03025); 
     5174            if ( state.backtracking>0 && alreadyParsedRule(input, 82) ) { return ; } 
     5175            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1455:1: ( rule__EtsiBnf__Group_2__0__Impl rule__EtsiBnf__Group_2__1 ) 
     5176            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1456:2: rule__EtsiBnf__Group_2__0__Impl rule__EtsiBnf__Group_2__1 
     5177            { 
     5178            pushFollow(FOLLOW_rule__EtsiBnf__Group_2__0__Impl_in_rule__EtsiBnf__Group_2__03103); 
    50495179            rule__EtsiBnf__Group_2__0__Impl(); 
    50505180 
    50515181            state._fsp--; 
    50525182            if (state.failed) return ; 
    5053             pushFollow(FOLLOW_rule__EtsiBnf__Group_2__1_in_rule__EtsiBnf__Group_2__03028); 
     5183            pushFollow(FOLLOW_rule__EtsiBnf__Group_2__1_in_rule__EtsiBnf__Group_2__03106); 
    50545184            rule__EtsiBnf__Group_2__1(); 
    50555185 
     
    50655195        } 
    50665196        finally { 
    5067             if ( state.backtracking>0 ) { memoize(input, 80, rule__EtsiBnf__Group_2__0_StartIndex); } 
     5197            if ( state.backtracking>0 ) { memoize(input, 82, rule__EtsiBnf__Group_2__0_StartIndex); } 
    50685198 
    50695199                restoreStackSize(stackSize); 
     
    50765206 
    50775207    // $ANTLR start "rule__EtsiBnf__Group_2__0__Impl" 
    5078     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1429:1: rule__EtsiBnf__Group_2__0__Impl : ( ( rule__EtsiBnf__TypeAssignment_2_0 ) ) ; 
     5208    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1463:1: rule__EtsiBnf__Group_2__0__Impl : ( ( rule__EtsiBnf__TypeAssignment_2_0 ) ) ; 
    50795209    public final void rule__EtsiBnf__Group_2__0__Impl() throws RecognitionException { 
    50805210        int rule__EtsiBnf__Group_2__0__Impl_StartIndex = input.index(); 
     
    50835213             
    50845214        try { 
    5085             if ( state.backtracking>0 && alreadyParsedRule(input, 81) ) { return ; } 
    5086             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1433:1: ( ( ( rule__EtsiBnf__TypeAssignment_2_0 ) ) ) 
    5087             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1434:1: ( ( rule__EtsiBnf__TypeAssignment_2_0 ) ) 
    5088             { 
    5089             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1434:1: ( ( rule__EtsiBnf__TypeAssignment_2_0 ) ) 
    5090             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1435:1: ( rule__EtsiBnf__TypeAssignment_2_0 ) 
     5215            if ( state.backtracking>0 && alreadyParsedRule(input, 83) ) { return ; } 
     5216            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1467:1: ( ( ( rule__EtsiBnf__TypeAssignment_2_0 ) ) ) 
     5217            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1468:1: ( ( rule__EtsiBnf__TypeAssignment_2_0 ) ) 
     5218            { 
     5219            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1468:1: ( ( rule__EtsiBnf__TypeAssignment_2_0 ) ) 
     5220            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1469:1: ( rule__EtsiBnf__TypeAssignment_2_0 ) 
    50915221            { 
    50925222            if ( state.backtracking==0 ) { 
    50935223               before(grammarAccess.getEtsiBnfAccess().getTypeAssignment_2_0());  
    50945224            } 
    5095             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1436:1: ( rule__EtsiBnf__TypeAssignment_2_0 ) 
    5096             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1436:2: rule__EtsiBnf__TypeAssignment_2_0 
    5097             { 
    5098             pushFollow(FOLLOW_rule__EtsiBnf__TypeAssignment_2_0_in_rule__EtsiBnf__Group_2__0__Impl3055); 
     5225            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1470:1: ( rule__EtsiBnf__TypeAssignment_2_0 ) 
     5226            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1470:2: rule__EtsiBnf__TypeAssignment_2_0 
     5227            { 
     5228            pushFollow(FOLLOW_rule__EtsiBnf__TypeAssignment_2_0_in_rule__EtsiBnf__Group_2__0__Impl3133); 
    50995229            rule__EtsiBnf__TypeAssignment_2_0(); 
    51005230 
     
    51195249        } 
    51205250        finally { 
    5121             if ( state.backtracking>0 ) { memoize(input, 81, rule__EtsiBnf__Group_2__0__Impl_StartIndex); } 
     5251            if ( state.backtracking>0 ) { memoize(input, 83, rule__EtsiBnf__Group_2__0__Impl_StartIndex); } 
    51225252 
    51235253                restoreStackSize(stackSize); 
     
    51305260 
    51315261    // $ANTLR start "rule__EtsiBnf__Group_2__1" 
    5132     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1446:1: rule__EtsiBnf__Group_2__1 : rule__EtsiBnf__Group_2__1__Impl rule__EtsiBnf__Group_2__2 ; 
     5262    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1480:1: rule__EtsiBnf__Group_2__1 : rule__EtsiBnf__Group_2__1__Impl rule__EtsiBnf__Group_2__2 ; 
    51335263    public final void rule__EtsiBnf__Group_2__1() throws RecognitionException { 
    51345264        int rule__EtsiBnf__Group_2__1_StartIndex = input.index(); 
     
    51375267             
    51385268        try { 
    5139             if ( state.backtracking>0 && alreadyParsedRule(input, 82) ) { return ; } 
    5140             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1450:1: ( rule__EtsiBnf__Group_2__1__Impl rule__EtsiBnf__Group_2__2 ) 
    5141             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1451:2: rule__EtsiBnf__Group_2__1__Impl rule__EtsiBnf__Group_2__2 
    5142             { 
    5143             pushFollow(FOLLOW_rule__EtsiBnf__Group_2__1__Impl_in_rule__EtsiBnf__Group_2__13085); 
     5269            if ( state.backtracking>0 && alreadyParsedRule(input, 84) ) { return ; } 
     5270            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1484:1: ( rule__EtsiBnf__Group_2__1__Impl rule__EtsiBnf__Group_2__2 ) 
     5271            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1485:2: rule__EtsiBnf__Group_2__1__Impl rule__EtsiBnf__Group_2__2 
     5272            { 
     5273            pushFollow(FOLLOW_rule__EtsiBnf__Group_2__1__Impl_in_rule__EtsiBnf__Group_2__13163); 
    51445274            rule__EtsiBnf__Group_2__1__Impl(); 
    51455275 
    51465276            state._fsp--; 
    51475277            if (state.failed) return ; 
    5148             pushFollow(FOLLOW_rule__EtsiBnf__Group_2__2_in_rule__EtsiBnf__Group_2__13088); 
     5278            pushFollow(FOLLOW_rule__EtsiBnf__Group_2__2_in_rule__EtsiBnf__Group_2__13166); 
    51495279            rule__EtsiBnf__Group_2__2(); 
    51505280 
     
    51605290        } 
    51615291        finally { 
    5162             if ( state.backtracking>0 ) { memoize(input, 82, rule__EtsiBnf__Group_2__1_StartIndex); } 
     5292            if ( state.backtracking>0 ) { memoize(input, 84, rule__EtsiBnf__Group_2__1_StartIndex); } 
    51635293 
    51645294                restoreStackSize(stackSize); 
     
    51715301 
    51725302    // $ANTLR start "rule__EtsiBnf__Group_2__1__Impl" 
    5173     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1458:1: rule__EtsiBnf__Group_2__1__Impl : ( ';' ) ; 
     5303    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1492:1: rule__EtsiBnf__Group_2__1__Impl : ( ';' ) ; 
    51745304    public final void rule__EtsiBnf__Group_2__1__Impl() throws RecognitionException { 
    51755305        int rule__EtsiBnf__Group_2__1__Impl_StartIndex = input.index(); 
     
    51785308             
    51795309        try { 
    5180             if ( state.backtracking>0 && alreadyParsedRule(input, 83) ) { return ; } 
    5181             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1462:1: ( ( ';' ) ) 
    5182             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1463:1: ( ';' ) 
    5183             { 
    5184             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1463:1: ( ';' ) 
    5185             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1464:1: ';' 
     5310            if ( state.backtracking>0 && alreadyParsedRule(input, 85) ) { return ; } 
     5311            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1496:1: ( ( ';' ) ) 
     5312            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1497:1: ( ';' ) 
     5313            { 
     5314            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1497:1: ( ';' ) 
     5315            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1498:1: ';' 
    51865316            { 
    51875317            if ( state.backtracking==0 ) { 
    51885318               before(grammarAccess.getEtsiBnfAccess().getSemicolonKeyword_2_1());  
    51895319            } 
    5190             match(input,23,FOLLOW_23_in_rule__EtsiBnf__Group_2__1__Impl3116); if (state.failed) return ; 
     5320            match(input,23,FOLLOW_23_in_rule__EtsiBnf__Group_2__1__Impl3194); if (state.failed) return ; 
    51915321            if ( state.backtracking==0 ) { 
    51925322               after(grammarAccess.getEtsiBnfAccess().getSemicolonKeyword_2_1());  
     
    52045334        } 
    52055335        finally { 
    5206             if ( state.backtracking>0 ) { memoize(input, 83, rule__EtsiBnf__Group_2__1__Impl_StartIndex); } 
     5336            if ( state.backtracking>0 ) { memoize(input, 85, rule__EtsiBnf__Group_2__1__Impl_StartIndex); } 
    52075337 
    52085338                restoreStackSize(stackSize); 
     
    52155345 
    52165346    // $ANTLR start "rule__EtsiBnf__Group_2__2" 
    5217     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1477:1: rule__EtsiBnf__Group_2__2 : rule__EtsiBnf__Group_2__2__Impl rule__EtsiBnf__Group_2__3 ; 
     5347    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1511:1: rule__EtsiBnf__Group_2__2 : rule__EtsiBnf__Group_2__2__Impl rule__EtsiBnf__Group_2__3 ; 
    52185348    public final void rule__EtsiBnf__Group_2__2() throws RecognitionException { 
    52195349        int rule__EtsiBnf__Group_2__2_StartIndex = input.index(); 
     
    52225352             
    52235353        try { 
    5224             if ( state.backtracking>0 && alreadyParsedRule(input, 84) ) { return ; } 
    5225             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1481:1: ( rule__EtsiBnf__Group_2__2__Impl rule__EtsiBnf__Group_2__3 ) 
    5226             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1482:2: rule__EtsiBnf__Group_2__2__Impl rule__EtsiBnf__Group_2__3 
    5227             { 
    5228             pushFollow(FOLLOW_rule__EtsiBnf__Group_2__2__Impl_in_rule__EtsiBnf__Group_2__23147); 
     5354            if ( state.backtracking>0 && alreadyParsedRule(input, 86) ) { return ; } 
     5355            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1515:1: ( rule__EtsiBnf__Group_2__2__Impl rule__EtsiBnf__Group_2__3 ) 
     5356            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1516:2: rule__EtsiBnf__Group_2__2__Impl rule__EtsiBnf__Group_2__3 
     5357            { 
     5358            pushFollow(FOLLOW_rule__EtsiBnf__Group_2__2__Impl_in_rule__EtsiBnf__Group_2__23225); 
    52295359            rule__EtsiBnf__Group_2__2__Impl(); 
    52305360 
    52315361            state._fsp--; 
    52325362            if (state.failed) return ; 
    5233             pushFollow(FOLLOW_rule__EtsiBnf__Group_2__3_in_rule__EtsiBnf__Group_2__23150); 
     5363            pushFollow(FOLLOW_rule__EtsiBnf__Group_2__3_in_rule__EtsiBnf__Group_2__23228); 
    52345364            rule__EtsiBnf__Group_2__3(); 
    52355365 
     
    52455375        } 
    52465376        finally { 
    5247             if ( state.backtracking>0 ) { memoize(input, 84, rule__EtsiBnf__Group_2__2_StartIndex); } 
     5377            if ( state.backtracking>0 ) { memoize(input, 86, rule__EtsiBnf__Group_2__2_StartIndex); } 
    52485378 
    52495379                restoreStackSize(stackSize); 
     
    52565386 
    52575387    // $ANTLR start "rule__EtsiBnf__Group_2__2__Impl" 
    5258     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1489:1: rule__EtsiBnf__Group_2__2__Impl : ( ( rule__EtsiBnf__ImportSectionAssignment_2_2 )? ) ; 
     5388    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1523:1: rule__EtsiBnf__Group_2__2__Impl : ( ( rule__EtsiBnf__ImportSectionAssignment_2_2 )? ) ; 
    52595389    public final void rule__EtsiBnf__Group_2__2__Impl() throws RecognitionException { 
    52605390        int rule__EtsiBnf__Group_2__2__Impl_StartIndex = input.index(); 
     
    52635393             
    52645394        try { 
    5265             if ( state.backtracking>0 && alreadyParsedRule(input, 85) ) { return ; } 
    5266             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1493:1: ( ( ( rule__EtsiBnf__ImportSectionAssignment_2_2 )? ) ) 
    5267             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1494:1: ( ( rule__EtsiBnf__ImportSectionAssignment_2_2 )? ) 
    5268             { 
    5269             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1494:1: ( ( rule__EtsiBnf__ImportSectionAssignment_2_2 )? ) 
    5270             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1495:1: ( rule__EtsiBnf__ImportSectionAssignment_2_2 )? 
     5395            if ( state.backtracking>0 && alreadyParsedRule(input, 87) ) { return ; } 
     5396            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1527:1: ( ( ( rule__EtsiBnf__ImportSectionAssignment_2_2 )? ) ) 
     5397            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1528:1: ( ( rule__EtsiBnf__ImportSectionAssignment_2_2 )? ) 
     5398            { 
     5399            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1528:1: ( ( rule__EtsiBnf__ImportSectionAssignment_2_2 )? ) 
     5400            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1529:1: ( rule__EtsiBnf__ImportSectionAssignment_2_2 )? 
    52715401            { 
    52725402            if ( state.backtracking==0 ) { 
    52735403               before(grammarAccess.getEtsiBnfAccess().getImportSectionAssignment_2_2());  
    52745404            } 
    5275             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1496:1: ( rule__EtsiBnf__ImportSectionAssignment_2_2 )? 
     5405            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1530:1: ( rule__EtsiBnf__ImportSectionAssignment_2_2 )? 
    52765406            int alt21=2; 
    52775407            int LA21_0 = input.LA(1); 
     
    52825412            switch (alt21) { 
    52835413                case 1 : 
    5284                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1496:2: rule__EtsiBnf__ImportSectionAssignment_2_2 
     5414                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1530:2: rule__EtsiBnf__ImportSectionAssignment_2_2 
    52855415                    { 
    5286                     pushFollow(FOLLOW_rule__EtsiBnf__ImportSectionAssignment_2_2_in_rule__EtsiBnf__Group_2__2__Impl3177); 
     5416                    pushFollow(FOLLOW_rule__EtsiBnf__ImportSectionAssignment_2_2_in_rule__EtsiBnf__Group_2__2__Impl3255); 
    52875417                    rule__EtsiBnf__ImportSectionAssignment_2_2(); 
    52885418 
     
    53105440        } 
    53115441        finally { 
    5312             if ( state.backtracking>0 ) { memoize(input, 85, rule__EtsiBnf__Group_2__2__Impl_StartIndex); } 
     5442            if ( state.backtracking>0 ) { memoize(input, 87, rule__EtsiBnf__Group_2__2__Impl_StartIndex); } 
    53135443 
    53145444                restoreStackSize(stackSize); 
     
    53215451 
    53225452    // $ANTLR start "rule__EtsiBnf__Group_2__3" 
    5323     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1506:1: rule__EtsiBnf__Group_2__3 : rule__EtsiBnf__Group_2__3__Impl ; 
     5453    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1540:1: rule__EtsiBnf__Group_2__3 : rule__EtsiBnf__Group_2__3__Impl ; 
    53245454    public final void rule__EtsiBnf__Group_2__3() throws RecognitionException { 
    53255455        int rule__EtsiBnf__Group_2__3_StartIndex = input.index(); 
     
    53285458             
    53295459        try { 
    5330             if ( state.backtracking>0 && alreadyParsedRule(input, 86) ) { return ; } 
    5331             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1510:1: ( rule__EtsiBnf__Group_2__3__Impl ) 
    5332             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1511:2: rule__EtsiBnf__Group_2__3__Impl 
    5333             { 
    5334             pushFollow(FOLLOW_rule__EtsiBnf__Group_2__3__Impl_in_rule__EtsiBnf__Group_2__33208); 
     5460            if ( state.backtracking>0 && alreadyParsedRule(input, 88) ) { return ; } 
     5461            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1544:1: ( rule__EtsiBnf__Group_2__3__Impl ) 
     5462            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1545:2: rule__EtsiBnf__Group_2__3__Impl 
     5463            { 
     5464            pushFollow(FOLLOW_rule__EtsiBnf__Group_2__3__Impl_in_rule__EtsiBnf__Group_2__33286); 
    53355465            rule__EtsiBnf__Group_2__3__Impl(); 
    53365466 
     
    53465476        } 
    53475477        finally { 
    5348             if ( state.backtracking>0 ) { memoize(input, 86, rule__EtsiBnf__Group_2__3_StartIndex); } 
     5478            if ( state.backtracking>0 ) { memoize(input, 88, rule__EtsiBnf__Group_2__3_StartIndex); } 
    53495479 
    53505480                restoreStackSize(stackSize); 
     
    53575487 
    53585488    // $ANTLR start "rule__EtsiBnf__Group_2__3__Impl" 
    5359     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1517:1: rule__EtsiBnf__Group_2__3__Impl : ( ( rule__EtsiBnf__MergeEntryAssignment_2_3 )* ) ; 
     5489    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1551:1: rule__EtsiBnf__Group_2__3__Impl : ( ( rule__EtsiBnf__MergeEntryAssignment_2_3 )* ) ; 
    53605490    public final void rule__EtsiBnf__Group_2__3__Impl() throws RecognitionException { 
    53615491        int rule__EtsiBnf__Group_2__3__Impl_StartIndex = input.index(); 
     
    53645494             
    53655495        try { 
    5366             if ( state.backtracking>0 && alreadyParsedRule(input, 87) ) { return ; } 
    5367             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1521:1: ( ( ( rule__EtsiBnf__MergeEntryAssignment_2_3 )* ) ) 
    5368             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1522:1: ( ( rule__EtsiBnf__MergeEntryAssignment_2_3 )* ) 
    5369             { 
    5370             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1522:1: ( ( rule__EtsiBnf__MergeEntryAssignment_2_3 )* ) 
    5371             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1523:1: ( rule__EtsiBnf__MergeEntryAssignment_2_3 )* 
     5496            if ( state.backtracking>0 && alreadyParsedRule(input, 89) ) { return ; } 
     5497            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1555:1: ( ( ( rule__EtsiBnf__MergeEntryAssignment_2_3 )* ) ) 
     5498            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1556:1: ( ( rule__EtsiBnf__MergeEntryAssignment_2_3 )* ) 
     5499            { 
     5500            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1556:1: ( ( rule__EtsiBnf__MergeEntryAssignment_2_3 )* ) 
     5501            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1557:1: ( rule__EtsiBnf__MergeEntryAssignment_2_3 )* 
    53725502            { 
    53735503            if ( state.backtracking==0 ) { 
    53745504               before(grammarAccess.getEtsiBnfAccess().getMergeEntryAssignment_2_3());  
    53755505            } 
    5376             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1524:1: ( rule__EtsiBnf__MergeEntryAssignment_2_3 )* 
     5506            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1558:1: ( rule__EtsiBnf__MergeEntryAssignment_2_3 )* 
    53775507            loop22: 
    53785508            do { 
     
    53875517                switch (alt22) { 
    53885518                case 1 : 
    5389                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1524:2: rule__EtsiBnf__MergeEntryAssignment_2_3 
     5519                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1558:2: rule__EtsiBnf__MergeEntryAssignment_2_3 
    53905520                    { 
    5391                     pushFollow(FOLLOW_rule__EtsiBnf__MergeEntryAssignment_2_3_in_rule__EtsiBnf__Group_2__3__Impl3235); 
     5521                    pushFollow(FOLLOW_rule__EtsiBnf__MergeEntryAssignment_2_3_in_rule__EtsiBnf__Group_2__3__Impl3313); 
    53925522                    rule__EtsiBnf__MergeEntryAssignment_2_3(); 
    53935523 
     
    54185548        } 
    54195549        finally { 
    5420             if ( state.backtracking>0 ) { memoize(input, 87, rule__EtsiBnf__Group_2__3__Impl_StartIndex); } 
     5550            if ( state.backtracking>0 ) { memoize(input, 89, rule__EtsiBnf__Group_2__3__Impl_StartIndex); } 
    54215551 
    54225552                restoreStackSize(stackSize); 
     
    54295559 
    54305560    // $ANTLR start "rule__SectionHeading__Group__0" 
    5431     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1542:1: rule__SectionHeading__Group__0 : rule__SectionHeading__Group__0__Impl rule__SectionHeading__Group__1 ; 
     5561    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1576:1: rule__SectionHeading__Group__0 : rule__SectionHeading__Group__0__Impl rule__SectionHeading__Group__1 ; 
    54325562    public final void rule__SectionHeading__Group__0() throws RecognitionException { 
    54335563        int rule__SectionHeading__Group__0_StartIndex = input.index(); 
     
    54365566             
    54375567        try { 
    5438             if ( state.backtracking>0 && alreadyParsedRule(input, 88) ) { return ; } 
    5439             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1546:1: ( rule__SectionHeading__Group__0__Impl rule__SectionHeading__Group__1 ) 
    5440             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1547:2: rule__SectionHeading__Group__0__Impl rule__SectionHeading__Group__1 
    5441             { 
    5442             pushFollow(FOLLOW_rule__SectionHeading__Group__0__Impl_in_rule__SectionHeading__Group__03274); 
     5568            if ( state.backtracking>0 && alreadyParsedRule(input, 90) ) { return ; } 
     5569            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1580:1: ( rule__SectionHeading__Group__0__Impl rule__SectionHeading__Group__1 ) 
     5570            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1581:2: rule__SectionHeading__Group__0__Impl rule__SectionHeading__Group__1 
     5571            { 
     5572            pushFollow(FOLLOW_rule__SectionHeading__Group__0__Impl_in_rule__SectionHeading__Group__03352); 
    54435573            rule__SectionHeading__Group__0__Impl(); 
    54445574 
    54455575            state._fsp--; 
    54465576            if (state.failed) return ; 
    5447             pushFollow(FOLLOW_rule__SectionHeading__Group__1_in_rule__SectionHeading__Group__03277); 
     5577            pushFollow(FOLLOW_rule__SectionHeading__Group__1_in_rule__SectionHeading__Group__03355); 
    54485578            rule__SectionHeading__Group__1(); 
    54495579 
     
    54595589        } 
    54605590        finally { 
    5461             if ( state.backtracking>0 ) { memoize(input, 88, rule__SectionHeading__Group__0_StartIndex); } 
     5591            if ( state.backtracking>0 ) { memoize(input, 90, rule__SectionHeading__Group__0_StartIndex); } 
    54625592 
    54635593                restoreStackSize(stackSize); 
     
    54705600 
    54715601    // $ANTLR start "rule__SectionHeading__Group__0__Impl" 
    5472     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1554:1: rule__SectionHeading__Group__0__Impl : ( () ) ; 
     5602    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1588:1: rule__SectionHeading__Group__0__Impl : ( () ) ; 
    54735603    public final void rule__SectionHeading__Group__0__Impl() throws RecognitionException { 
    54745604        int rule__SectionHeading__Group__0__Impl_StartIndex = input.index(); 
     
    54775607             
    54785608        try { 
    5479             if ( state.backtracking>0 && alreadyParsedRule(input, 89) ) { return ; } 
    5480             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1558:1: ( ( () ) ) 
    5481             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1559:1: ( () ) 
    5482             { 
    5483             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1559:1: ( () ) 
    5484             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1560:1: () 
     5609            if ( state.backtracking>0 && alreadyParsedRule(input, 91) ) { return ; } 
     5610            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1592:1: ( ( () ) ) 
     5611            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1593:1: ( () ) 
     5612            { 
     5613            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1593:1: ( () ) 
     5614            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1594:1: () 
    54855615            { 
    54865616            if ( state.backtracking==0 ) { 
    54875617               before(grammarAccess.getSectionHeadingAccess().getSectionHeadingAction_0());  
    54885618            } 
    5489             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1561:1: () 
    5490             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1563:1:  
     5619            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1595:1: () 
     5620            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1597:1:  
    54915621            { 
    54925622            } 
     
    55035633        } 
    55045634        finally { 
    5505             if ( state.backtracking>0 ) { memoize(input, 89, rule__SectionHeading__Group__0__Impl_StartIndex); } 
     5635            if ( state.backtracking>0 ) { memoize(input, 91, rule__SectionHeading__Group__0__Impl_StartIndex); } 
    55065636 
    55075637                restoreStackSize(stackSize); 
     
    55145644 
    55155645    // $ANTLR start "rule__SectionHeading__Group__1" 
    5516     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1573:1: rule__SectionHeading__Group__1 : rule__SectionHeading__Group__1__Impl ; 
     5646    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1607:1: rule__SectionHeading__Group__1 : rule__SectionHeading__Group__1__Impl ; 
    55175647    public final void rule__SectionHeading__Group__1() throws RecognitionException { 
    55185648        int rule__SectionHeading__Group__1_StartIndex = input.index(); 
     
    55215651             
    55225652        try { 
    5523             if ( state.backtracking>0 && alreadyParsedRule(input, 90) ) { return ; } 
    5524             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1577:1: ( rule__SectionHeading__Group__1__Impl ) 
    5525             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1578:2: rule__SectionHeading__Group__1__Impl 
    5526             { 
    5527             pushFollow(FOLLOW_rule__SectionHeading__Group__1__Impl_in_rule__SectionHeading__Group__13335); 
     5653            if ( state.backtracking>0 && alreadyParsedRule(input, 92) ) { return ; } 
     5654            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1611:1: ( rule__SectionHeading__Group__1__Impl ) 
     5655            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1612:2: rule__SectionHeading__Group__1__Impl 
     5656            { 
     5657            pushFollow(FOLLOW_rule__SectionHeading__Group__1__Impl_in_rule__SectionHeading__Group__13413); 
    55285658            rule__SectionHeading__Group__1__Impl(); 
    55295659 
     
    55395669        } 
    55405670        finally { 
    5541             if ( state.backtracking>0 ) { memoize(input, 90, rule__SectionHeading__Group__1_StartIndex); } 
     5671            if ( state.backtracking>0 ) { memoize(input, 92, rule__SectionHeading__Group__1_StartIndex); } 
    55425672 
    55435673                restoreStackSize(stackSize); 
     
    55505680 
    55515681    // $ANTLR start "rule__SectionHeading__Group__1__Impl" 
    5552     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1584:1: rule__SectionHeading__Group__1__Impl : ( ( rule__SectionHeading__SectionHeaderAssignment_1 ) ) ; 
     5682    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1618:1: rule__SectionHeading__Group__1__Impl : ( ( rule__SectionHeading__SectionHeaderAssignment_1 ) ) ; 
    55535683    public final void rule__SectionHeading__Group__1__Impl() throws RecognitionException { 
    55545684        int rule__SectionHeading__Group__1__Impl_StartIndex = input.index(); 
     
    55575687             
    55585688        try { 
    5559             if ( state.backtracking>0 && alreadyParsedRule(input, 91) ) { return ; } 
    5560             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1588:1: ( ( ( rule__SectionHeading__SectionHeaderAssignment_1 ) ) ) 
    5561             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1589:1: ( ( rule__SectionHeading__SectionHeaderAssignment_1 ) ) 
    5562             { 
    5563             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1589:1: ( ( rule__SectionHeading__SectionHeaderAssignment_1 ) ) 
    5564             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1590:1: ( rule__SectionHeading__SectionHeaderAssignment_1 ) 
     5689            if ( state.backtracking>0 && alreadyParsedRule(input, 93) ) { return ; } 
     5690            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1622:1: ( ( ( rule__SectionHeading__SectionHeaderAssignment_1 ) ) ) 
     5691            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1623:1: ( ( rule__SectionHeading__SectionHeaderAssignment_1 ) ) 
     5692            { 
     5693            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1623:1: ( ( rule__SectionHeading__SectionHeaderAssignment_1 ) ) 
     5694            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1624:1: ( rule__SectionHeading__SectionHeaderAssignment_1 ) 
    55655695            { 
    55665696            if ( state.backtracking==0 ) { 
    55675697               before(grammarAccess.getSectionHeadingAccess().getSectionHeaderAssignment_1());  
    55685698            } 
    5569             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1591:1: ( rule__SectionHeading__SectionHeaderAssignment_1 ) 
    5570             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1591:2: rule__SectionHeading__SectionHeaderAssignment_1 
    5571             { 
    5572             pushFollow(FOLLOW_rule__SectionHeading__SectionHeaderAssignment_1_in_rule__SectionHeading__Group__1__Impl3362); 
     5699            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1625:1: ( rule__SectionHeading__SectionHeaderAssignment_1 ) 
     5700            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1625:2: rule__SectionHeading__SectionHeaderAssignment_1 
     5701            { 
     5702            pushFollow(FOLLOW_rule__SectionHeading__SectionHeaderAssignment_1_in_rule__SectionHeading__Group__1__Impl3440); 
    55735703            rule__SectionHeading__SectionHeaderAssignment_1(); 
    55745704 
     
    55935723        } 
    55945724        finally { 
    5595             if ( state.backtracking>0 ) { memoize(input, 91, rule__SectionHeading__Group__1__Impl_StartIndex); } 
     5725            if ( state.backtracking>0 ) { memoize(input, 93, rule__SectionHeading__Group__1__Impl_StartIndex); } 
    55965726 
    55975727                restoreStackSize(stackSize); 
     
    56035733 
    56045734 
     5735    // $ANTLR start "rule__Comment__Group__0" 
     5736    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1639:1: rule__Comment__Group__0 : rule__Comment__Group__0__Impl rule__Comment__Group__1 ; 
     5737    public final void rule__Comment__Group__0() throws RecognitionException { 
     5738        int rule__Comment__Group__0_StartIndex = input.index(); 
     5739 
     5740                        int stackSize = keepStackSize(); 
     5741             
     5742        try { 
     5743            if ( state.backtracking>0 && alreadyParsedRule(input, 94) ) { return ; } 
     5744            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1643:1: ( rule__Comment__Group__0__Impl rule__Comment__Group__1 ) 
     5745            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1644:2: rule__Comment__Group__0__Impl rule__Comment__Group__1 
     5746            { 
     5747            pushFollow(FOLLOW_rule__Comment__Group__0__Impl_in_rule__Comment__Group__03474); 
     5748            rule__Comment__Group__0__Impl(); 
     5749 
     5750            state._fsp--; 
     5751            if (state.failed) return ; 
     5752            pushFollow(FOLLOW_rule__Comment__Group__1_in_rule__Comment__Group__03477); 
     5753            rule__Comment__Group__1(); 
     5754 
     5755            state._fsp--; 
     5756            if (state.failed) return ; 
     5757 
     5758            } 
     5759 
     5760        } 
     5761        catch (RecognitionException re) { 
     5762            reportError(re); 
     5763            recover(input,re); 
     5764        } 
     5765        finally { 
     5766            if ( state.backtracking>0 ) { memoize(input, 94, rule__Comment__Group__0_StartIndex); } 
     5767 
     5768                restoreStackSize(stackSize); 
     5769 
     5770        } 
     5771        return ; 
     5772    } 
     5773    // $ANTLR end "rule__Comment__Group__0" 
     5774 
     5775 
     5776    // $ANTLR start "rule__Comment__Group__0__Impl" 
     5777    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1651:1: rule__Comment__Group__0__Impl : ( () ) ; 
     5778    public final void rule__Comment__Group__0__Impl() throws RecognitionException { 
     5779        int rule__Comment__Group__0__Impl_StartIndex = input.index(); 
     5780 
     5781                        int stackSize = keepStackSize(); 
     5782             
     5783        try { 
     5784            if ( state.backtracking>0 && alreadyParsedRule(input, 95) ) { return ; } 
     5785            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1655:1: ( ( () ) ) 
     5786            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1656:1: ( () ) 
     5787            { 
     5788            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1656:1: ( () ) 
     5789            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1657:1: () 
     5790            { 
     5791            if ( state.backtracking==0 ) { 
     5792               before(grammarAccess.getCommentAccess().getCommentAction_0());  
     5793            } 
     5794            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1658:1: () 
     5795            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1660:1:  
     5796            { 
     5797            } 
     5798 
     5799            if ( state.backtracking==0 ) { 
     5800               after(grammarAccess.getCommentAccess().getCommentAction_0());  
     5801            } 
     5802 
     5803            } 
     5804 
     5805 
     5806            } 
     5807 
     5808        } 
     5809        finally { 
     5810            if ( state.backtracking>0 ) { memoize(input, 95, rule__Comment__Group__0__Impl_StartIndex); } 
     5811 
     5812                restoreStackSize(stackSize); 
     5813 
     5814        } 
     5815        return ; 
     5816    } 
     5817    // $ANTLR end "rule__Comment__Group__0__Impl" 
     5818 
     5819 
     5820    // $ANTLR start "rule__Comment__Group__1" 
     5821    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1670:1: rule__Comment__Group__1 : rule__Comment__Group__1__Impl ; 
     5822    public final void rule__Comment__Group__1() throws RecognitionException { 
     5823        int rule__Comment__Group__1_StartIndex = input.index(); 
     5824 
     5825                        int stackSize = keepStackSize(); 
     5826             
     5827        try { 
     5828            if ( state.backtracking>0 && alreadyParsedRule(input, 96) ) { return ; } 
     5829            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1674:1: ( rule__Comment__Group__1__Impl ) 
     5830            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1675:2: rule__Comment__Group__1__Impl 
     5831            { 
     5832            pushFollow(FOLLOW_rule__Comment__Group__1__Impl_in_rule__Comment__Group__13535); 
     5833            rule__Comment__Group__1__Impl(); 
     5834 
     5835            state._fsp--; 
     5836            if (state.failed) return ; 
     5837 
     5838            } 
     5839 
     5840        } 
     5841        catch (RecognitionException re) { 
     5842            reportError(re); 
     5843            recover(input,re); 
     5844        } 
     5845        finally { 
     5846            if ( state.backtracking>0 ) { memoize(input, 96, rule__Comment__Group__1_StartIndex); } 
     5847 
     5848                restoreStackSize(stackSize); 
     5849 
     5850        } 
     5851        return ; 
     5852    } 
     5853    // $ANTLR end "rule__Comment__Group__1" 
     5854 
     5855 
     5856    // $ANTLR start "rule__Comment__Group__1__Impl" 
     5857    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1681:1: rule__Comment__Group__1__Impl : ( ( rule__Comment__ContentAssignment_1 ) ) ; 
     5858    public final void rule__Comment__Group__1__Impl() throws RecognitionException { 
     5859        int rule__Comment__Group__1__Impl_StartIndex = input.index(); 
     5860 
     5861                        int stackSize = keepStackSize(); 
     5862             
     5863        try { 
     5864            if ( state.backtracking>0 && alreadyParsedRule(input, 97) ) { return ; } 
     5865            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1685:1: ( ( ( rule__Comment__ContentAssignment_1 ) ) ) 
     5866            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1686:1: ( ( rule__Comment__ContentAssignment_1 ) ) 
     5867            { 
     5868            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1686:1: ( ( rule__Comment__ContentAssignment_1 ) ) 
     5869            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1687:1: ( rule__Comment__ContentAssignment_1 ) 
     5870            { 
     5871            if ( state.backtracking==0 ) { 
     5872               before(grammarAccess.getCommentAccess().getContentAssignment_1());  
     5873            } 
     5874            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1688:1: ( rule__Comment__ContentAssignment_1 ) 
     5875            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1688:2: rule__Comment__ContentAssignment_1 
     5876            { 
     5877            pushFollow(FOLLOW_rule__Comment__ContentAssignment_1_in_rule__Comment__Group__1__Impl3562); 
     5878            rule__Comment__ContentAssignment_1(); 
     5879 
     5880            state._fsp--; 
     5881            if (state.failed) return ; 
     5882 
     5883            } 
     5884 
     5885            if ( state.backtracking==0 ) { 
     5886               after(grammarAccess.getCommentAccess().getContentAssignment_1());  
     5887            } 
     5888 
     5889            } 
     5890 
     5891 
     5892            } 
     5893 
     5894        } 
     5895        catch (RecognitionException re) { 
     5896            reportError(re); 
     5897            recover(input,re); 
     5898        } 
     5899        finally { 
     5900            if ( state.backtracking>0 ) { memoize(input, 97, rule__Comment__Group__1__Impl_StartIndex); } 
     5901 
     5902                restoreStackSize(stackSize); 
     5903 
     5904        } 
     5905        return ; 
     5906    } 
     5907    // $ANTLR end "rule__Comment__Group__1__Impl" 
     5908 
     5909 
    56055910    // $ANTLR start "rule__Import__Group__0" 
    5606     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1605:1: rule__Import__Group__0 : rule__Import__Group__0__Impl rule__Import__Group__1 ; 
     5911    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1702:1: rule__Import__Group__0 : rule__Import__Group__0__Impl rule__Import__Group__1 ; 
    56075912    public final void rule__Import__Group__0() throws RecognitionException { 
    56085913        int rule__Import__Group__0_StartIndex = input.index(); 
     
    56115916             
    56125917        try { 
    5613             if ( state.backtracking>0 && alreadyParsedRule(input, 92) ) { return ; } 
    5614             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1609:1: ( rule__Import__Group__0__Impl rule__Import__Group__1 ) 
    5615             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1610:2: rule__Import__Group__0__Impl rule__Import__Group__1 
    5616             { 
    5617             pushFollow(FOLLOW_rule__Import__Group__0__Impl_in_rule__Import__Group__03396); 
     5918            if ( state.backtracking>0 && alreadyParsedRule(input, 98) ) { return ; } 
     5919            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1706:1: ( rule__Import__Group__0__Impl rule__Import__Group__1 ) 
     5920            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1707:2: rule__Import__Group__0__Impl rule__Import__Group__1 
     5921            { 
     5922            pushFollow(FOLLOW_rule__Import__Group__0__Impl_in_rule__Import__Group__03596); 
    56185923            rule__Import__Group__0__Impl(); 
    56195924 
    56205925            state._fsp--; 
    56215926            if (state.failed) return ; 
    5622             pushFollow(FOLLOW_rule__Import__Group__1_in_rule__Import__Group__03399); 
     5927            pushFollow(FOLLOW_rule__Import__Group__1_in_rule__Import__Group__03599); 
    56235928            rule__Import__Group__1(); 
    56245929 
     
    56345939        } 
    56355940        finally { 
    5636             if ( state.backtracking>0 ) { memoize(input, 92, rule__Import__Group__0_StartIndex); } 
     5941            if ( state.backtracking>0 ) { memoize(input, 98, rule__Import__Group__0_StartIndex); } 
    56375942 
    56385943                restoreStackSize(stackSize); 
     
    56455950 
    56465951    // $ANTLR start "rule__Import__Group__0__Impl" 
    5647     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1617:1: rule__Import__Group__0__Impl : ( 'import' ) ; 
     5952    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1714:1: rule__Import__Group__0__Impl : ( 'import' ) ; 
    56485953    public final void rule__Import__Group__0__Impl() throws RecognitionException { 
    56495954        int rule__Import__Group__0__Impl_StartIndex = input.index(); 
     
    56525957             
    56535958        try { 
    5654             if ( state.backtracking>0 && alreadyParsedRule(input, 93) ) { return ; } 
    5655             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1621:1: ( ( 'import' ) ) 
    5656             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1622:1: ( 'import' ) 
    5657             { 
    5658             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1622:1: ( 'import' ) 
    5659             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1623:1: 'import' 
     5959            if ( state.backtracking>0 && alreadyParsedRule(input, 99) ) { return ; } 
     5960            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1718:1: ( ( 'import' ) ) 
     5961            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1719:1: ( 'import' ) 
     5962            { 
     5963            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1719:1: ( 'import' ) 
     5964            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1720:1: 'import' 
    56605965            { 
    56615966            if ( state.backtracking==0 ) { 
    56625967               before(grammarAccess.getImportAccess().getImportKeyword_0());  
    56635968            } 
    5664             match(input,24,FOLLOW_24_in_rule__Import__Group__0__Impl3427); if (state.failed) return ; 
     5969            match(input,24,FOLLOW_24_in_rule__Import__Group__0__Impl3627); if (state.failed) return ; 
    56655970            if ( state.backtracking==0 ) { 
    56665971               after(grammarAccess.getImportAccess().getImportKeyword_0());  
     
    56785983        } 
    56795984        finally { 
    5680             if ( state.backtracking>0 ) { memoize(input, 93, rule__Import__Group__0__Impl_StartIndex); } 
     5985            if ( state.backtracking>0 ) { memoize(input, 99, rule__Import__Group__0__Impl_StartIndex); } 
    56815986 
    56825987                restoreStackSize(stackSize); 
     
    56895994 
    56905995    // $ANTLR start "rule__Import__Group__1" 
    5691     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1636:1: rule__Import__Group__1 : rule__Import__Group__1__Impl rule__Import__Group__2 ; 
     5996    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1733:1: rule__Import__Group__1 : rule__Import__Group__1__Impl rule__Import__Group__2 ; 
    56925997    public final void rule__Import__Group__1() throws RecognitionException { 
    56935998        int rule__Import__Group__1_StartIndex = input.index(); 
     
    56966001             
    56976002        try { 
    5698             if ( state.backtracking>0 && alreadyParsedRule(input, 94) ) { return ; } 
    5699             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1640:1: ( rule__Import__Group__1__Impl rule__Import__Group__2 ) 
    5700             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1641:2: rule__Import__Group__1__Impl rule__Import__Group__2 
    5701             { 
    5702             pushFollow(FOLLOW_rule__Import__Group__1__Impl_in_rule__Import__Group__13458); 
     6003            if ( state.backtracking>0 && alreadyParsedRule(input, 100) ) { return ; } 
     6004            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1737:1: ( rule__Import__Group__1__Impl rule__Import__Group__2 ) 
     6005            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1738:2: rule__Import__Group__1__Impl rule__Import__Group__2 
     6006            { 
     6007            pushFollow(FOLLOW_rule__Import__Group__1__Impl_in_rule__Import__Group__13658); 
    57036008            rule__Import__Group__1__Impl(); 
    57046009 
    57056010            state._fsp--; 
    57066011            if (state.failed) return ; 
    5707             pushFollow(FOLLOW_rule__Import__Group__2_in_rule__Import__Group__13461); 
     6012            pushFollow(FOLLOW_rule__Import__Group__2_in_rule__Import__Group__13661); 
    57086013            rule__Import__Group__2(); 
    57096014 
     
    57196024        } 
    57206025        finally { 
    5721             if ( state.backtracking>0 ) { memoize(input, 94, rule__Import__Group__1_StartIndex); } 
     6026            if ( state.backtracking>0 ) { memoize(input, 100, rule__Import__Group__1_StartIndex); } 
    57226027 
    57236028                restoreStackSize(stackSize); 
     
    57306035 
    57316036    // $ANTLR start "rule__Import__Group__1__Impl" 
    5732     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1648:1: rule__Import__Group__1__Impl : ( ( rule__Import__ImportURIAssignment_1 ) ) ; 
     6037    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1745:1: rule__Import__Group__1__Impl : ( ( rule__Import__ImportURIAssignment_1 ) ) ; 
    57336038    public final void rule__Import__Group__1__Impl() throws RecognitionException { 
    57346039        int rule__Import__Group__1__Impl_StartIndex = input.index(); 
     
    57376042             
    57386043        try { 
    5739             if ( state.backtracking>0 && alreadyParsedRule(input, 95) ) { return ; } 
    5740             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1652:1: ( ( ( rule__Import__ImportURIAssignment_1 ) ) ) 
    5741             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1653:1: ( ( rule__Import__ImportURIAssignment_1 ) ) 
    5742             { 
    5743             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1653:1: ( ( rule__Import__ImportURIAssignment_1 ) ) 
    5744             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1654:1: ( rule__Import__ImportURIAssignment_1 ) 
     6044            if ( state.backtracking>0 && alreadyParsedRule(input, 101) ) { return ; } 
     6045            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1749:1: ( ( ( rule__Import__ImportURIAssignment_1 ) ) ) 
     6046            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1750:1: ( ( rule__Import__ImportURIAssignment_1 ) ) 
     6047            { 
     6048            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1750:1: ( ( rule__Import__ImportURIAssignment_1 ) ) 
     6049            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1751:1: ( rule__Import__ImportURIAssignment_1 ) 
    57456050            { 
    57466051            if ( state.backtracking==0 ) { 
    57476052               before(grammarAccess.getImportAccess().getImportURIAssignment_1());  
    57486053            } 
    5749             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1655:1: ( rule__Import__ImportURIAssignment_1 ) 
    5750             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1655:2: rule__Import__ImportURIAssignment_1 
    5751             { 
    5752             pushFollow(FOLLOW_rule__Import__ImportURIAssignment_1_in_rule__Import__Group__1__Impl3488); 
     6054            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1752:1: ( rule__Import__ImportURIAssignment_1 ) 
     6055            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1752:2: rule__Import__ImportURIAssignment_1 
     6056            { 
     6057            pushFollow(FOLLOW_rule__Import__ImportURIAssignment_1_in_rule__Import__Group__1__Impl3688); 
    57536058            rule__Import__ImportURIAssignment_1(); 
    57546059 
     
    57736078        } 
    57746079        finally { 
    5775             if ( state.backtracking>0 ) { memoize(input, 95, rule__Import__Group__1__Impl_StartIndex); } 
     6080            if ( state.backtracking>0 ) { memoize(input, 101, rule__Import__Group__1__Impl_StartIndex); } 
    57766081 
    57776082                restoreStackSize(stackSize); 
     
    57846089 
    57856090    // $ANTLR start "rule__Import__Group__2" 
    5786     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1665:1: rule__Import__Group__2 : rule__Import__Group__2__Impl rule__Import__Group__3 ; 
     6091    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1762:1: rule__Import__Group__2 : rule__Import__Group__2__Impl rule__Import__Group__3 ; 
    57876092    public final void rule__Import__Group__2() throws RecognitionException { 
    57886093        int rule__Import__Group__2_StartIndex = input.index(); 
     
    57916096             
    57926097        try { 
    5793             if ( state.backtracking>0 && alreadyParsedRule(input, 96) ) { return ; } 
    5794             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1669:1: ( rule__Import__Group__2__Impl rule__Import__Group__3 ) 
    5795             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1670:2: rule__Import__Group__2__Impl rule__Import__Group__3 
    5796             { 
    5797             pushFollow(FOLLOW_rule__Import__Group__2__Impl_in_rule__Import__Group__23518); 
     6098            if ( state.backtracking>0 && alreadyParsedRule(input, 102) ) { return ; } 
     6099            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1766:1: ( rule__Import__Group__2__Impl rule__Import__Group__3 ) 
     6100            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1767:2: rule__Import__Group__2__Impl rule__Import__Group__3 
     6101            { 
     6102            pushFollow(FOLLOW_rule__Import__Group__2__Impl_in_rule__Import__Group__23718); 
    57986103            rule__Import__Group__2__Impl(); 
    57996104 
    58006105            state._fsp--; 
    58016106            if (state.failed) return ; 
    5802             pushFollow(FOLLOW_rule__Import__Group__3_in_rule__Import__Group__23521); 
     6107            pushFollow(FOLLOW_rule__Import__Group__3_in_rule__Import__Group__23721); 
    58036108            rule__Import__Group__3(); 
    58046109 
     
    58146119        } 
    58156120        finally { 
    5816             if ( state.backtracking>0 ) { memoize(input, 96, rule__Import__Group__2_StartIndex); } 
     6121            if ( state.backtracking>0 ) { memoize(input, 102, rule__Import__Group__2_StartIndex); } 
    58176122 
    58186123                restoreStackSize(stackSize); 
     
    58256130 
    58266131    // $ANTLR start "rule__Import__Group__2__Impl" 
    5827     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1677:1: rule__Import__Group__2__Impl : ( ( rule__Import__Group_2__0 )? ) ; 
     6132    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1774:1: rule__Import__Group__2__Impl : ( ( rule__Import__Group_2__0 )? ) ; 
    58286133    public final void rule__Import__Group__2__Impl() throws RecognitionException { 
    58296134        int rule__Import__Group__2__Impl_StartIndex = input.index(); 
     
    58326137             
    58336138        try { 
    5834             if ( state.backtracking>0 && alreadyParsedRule(input, 97) ) { return ; } 
    5835             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1681:1: ( ( ( rule__Import__Group_2__0 )? ) ) 
    5836             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1682:1: ( ( rule__Import__Group_2__0 )? ) 
    5837             { 
    5838             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1682:1: ( ( rule__Import__Group_2__0 )? ) 
    5839             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1683:1: ( rule__Import__Group_2__0 )? 
     6139            if ( state.backtracking>0 && alreadyParsedRule(input, 103) ) { return ; } 
     6140            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1778:1: ( ( ( rule__Import__Group_2__0 )? ) ) 
     6141            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1779:1: ( ( rule__Import__Group_2__0 )? ) 
     6142            { 
     6143            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1779:1: ( ( rule__Import__Group_2__0 )? ) 
     6144            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1780:1: ( rule__Import__Group_2__0 )? 
    58406145            { 
    58416146            if ( state.backtracking==0 ) { 
    58426147               before(grammarAccess.getImportAccess().getGroup_2());  
    58436148            } 
    5844             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1684:1: ( rule__Import__Group_2__0 )? 
     6149            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1781:1: ( rule__Import__Group_2__0 )? 
    58456150            int alt23=2; 
    58466151            int LA23_0 = input.LA(1); 
     
    58516156            switch (alt23) { 
    58526157                case 1 : 
    5853                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1684:2: rule__Import__Group_2__0 
     6158                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1781:2: rule__Import__Group_2__0 
    58546159                    { 
    5855                     pushFollow(FOLLOW_rule__Import__Group_2__0_in_rule__Import__Group__2__Impl3548); 
     6160                    pushFollow(FOLLOW_rule__Import__Group_2__0_in_rule__Import__Group__2__Impl3748); 
    58566161                    rule__Import__Group_2__0(); 
    58576162 
     
    58796184        } 
    58806185        finally { 
    5881             if ( state.backtracking>0 ) { memoize(input, 97, rule__Import__Group__2__Impl_StartIndex); } 
     6186            if ( state.backtracking>0 ) { memoize(input, 103, rule__Import__Group__2__Impl_StartIndex); } 
    58826187 
    58836188                restoreStackSize(stackSize); 
     
    58906195 
    58916196    // $ANTLR start "rule__Import__Group__3" 
    5892     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1694:1: rule__Import__Group__3 : rule__Import__Group__3__Impl rule__Import__Group__4 ; 
     6197    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1791:1: rule__Import__Group__3 : rule__Import__Group__3__Impl rule__Import__Group__4 ; 
    58936198    public final void rule__Import__Group__3() throws RecognitionException { 
    58946199        int rule__Import__Group__3_StartIndex = input.index(); 
     
    58976202             
    58986203        try { 
    5899             if ( state.backtracking>0 && alreadyParsedRule(input, 98) ) { return ; } 
    5900             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1698:1: ( rule__Import__Group__3__Impl rule__Import__Group__4 ) 
    5901             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1699:2: rule__Import__Group__3__Impl rule__Import__Group__4 
    5902             { 
    5903             pushFollow(FOLLOW_rule__Import__Group__3__Impl_in_rule__Import__Group__33579); 
     6204            if ( state.backtracking>0 && alreadyParsedRule(input, 104) ) { return ; } 
     6205            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1795:1: ( rule__Import__Group__3__Impl rule__Import__Group__4 ) 
     6206            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1796:2: rule__Import__Group__3__Impl rule__Import__Group__4 
     6207            { 
     6208            pushFollow(FOLLOW_rule__Import__Group__3__Impl_in_rule__Import__Group__33779); 
    59046209            rule__Import__Group__3__Impl(); 
    59056210 
    59066211            state._fsp--; 
    59076212            if (state.failed) return ; 
    5908             pushFollow(FOLLOW_rule__Import__Group__4_in_rule__Import__Group__33582); 
     6213            pushFollow(FOLLOW_rule__Import__Group__4_in_rule__Import__Group__33782); 
    59096214            rule__Import__Group__4(); 
    59106215 
     
    59206225        } 
    59216226        finally { 
    5922             if ( state.backtracking>0 ) { memoize(input, 98, rule__Import__Group__3_StartIndex); } 
     6227            if ( state.backtracking>0 ) { memoize(input, 104, rule__Import__Group__3_StartIndex); } 
    59236228 
    59246229                restoreStackSize(stackSize); 
     
    59316236 
    59326237    // $ANTLR start "rule__Import__Group__3__Impl" 
    5933     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1706:1: rule__Import__Group__3__Impl : ( ( rule__Import__Group_3__0 )? ) ; 
     6238    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1803:1: rule__Import__Group__3__Impl : ( ( rule__Import__Group_3__0 )? ) ; 
    59346239    public final void rule__Import__Group__3__Impl() throws RecognitionException { 
    59356240        int rule__Import__Group__3__Impl_StartIndex = input.index(); 
     
    59386243             
    59396244        try { 
    5940             if ( state.backtracking>0 && alreadyParsedRule(input, 99) ) { return ; } 
    5941             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1710:1: ( ( ( rule__Import__Group_3__0 )? ) ) 
    5942             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1711:1: ( ( rule__Import__Group_3__0 )? ) 
    5943             { 
    5944             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1711:1: ( ( rule__Import__Group_3__0 )? ) 
    5945             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1712:1: ( rule__Import__Group_3__0 )? 
     6245            if ( state.backtracking>0 && alreadyParsedRule(input, 105) ) { return ; } 
     6246            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1807:1: ( ( ( rule__Import__Group_3__0 )? ) ) 
     6247            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1808:1: ( ( rule__Import__Group_3__0 )? ) 
     6248            { 
     6249            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1808:1: ( ( rule__Import__Group_3__0 )? ) 
     6250            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1809:1: ( rule__Import__Group_3__0 )? 
    59466251            { 
    59476252            if ( state.backtracking==0 ) { 
    59486253               before(grammarAccess.getImportAccess().getGroup_3());  
    59496254            } 
    5950             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1713:1: ( rule__Import__Group_3__0 )? 
     6255            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1810:1: ( rule__Import__Group_3__0 )? 
    59516256            int alt24=2; 
    59526257            int LA24_0 = input.LA(1); 
     
    59576262            switch (alt24) { 
    59586263                case 1 : 
    5959                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1713:2: rule__Import__Group_3__0 
     6264                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1810:2: rule__Import__Group_3__0 
    59606265                    { 
    5961                     pushFollow(FOLLOW_rule__Import__Group_3__0_in_rule__Import__Group__3__Impl3609); 
     6266                    pushFollow(FOLLOW_rule__Import__Group_3__0_in_rule__Import__Group__3__Impl3809); 
    59626267                    rule__Import__Group_3__0(); 
    59636268 
     
    59856290        } 
    59866291        finally { 
    5987             if ( state.backtracking>0 ) { memoize(input, 99, rule__Import__Group__3__Impl_StartIndex); } 
     6292            if ( state.backtracking>0 ) { memoize(input, 105, rule__Import__Group__3__Impl_StartIndex); } 
    59886293 
    59896294                restoreStackSize(stackSize); 
     
    59966301 
    59976302    // $ANTLR start "rule__Import__Group__4" 
    5998     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1723:1: rule__Import__Group__4 : rule__Import__Group__4__Impl ; 
     6303    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1820:1: rule__Import__Group__4 : rule__Import__Group__4__Impl ; 
    59996304    public final void rule__Import__Group__4() throws RecognitionException { 
    60006305        int rule__Import__Group__4_StartIndex = input.index(); 
     
    60036308             
    60046309        try { 
    6005             if ( state.backtracking>0 && alreadyParsedRule(input, 100) ) { return ; } 
    6006             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1727:1: ( rule__Import__Group__4__Impl ) 
    6007             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1728:2: rule__Import__Group__4__Impl 
    6008             { 
    6009             pushFollow(FOLLOW_rule__Import__Group__4__Impl_in_rule__Import__Group__43640); 
     6310            if ( state.backtracking>0 && alreadyParsedRule(input, 106) ) { return ; } 
     6311            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1824:1: ( rule__Import__Group__4__Impl ) 
     6312            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1825:2: rule__Import__Group__4__Impl 
     6313            { 
     6314            pushFollow(FOLLOW_rule__Import__Group__4__Impl_in_rule__Import__Group__43840); 
    60106315            rule__Import__Group__4__Impl(); 
    60116316 
     
    60216326        } 
    60226327        finally { 
    6023             if ( state.backtracking>0 ) { memoize(input, 100, rule__Import__Group__4_StartIndex); } 
     6328            if ( state.backtracking>0 ) { memoize(input, 106, rule__Import__Group__4_StartIndex); } 
    60246329 
    60256330                restoreStackSize(stackSize); 
     
    60326337 
    60336338    // $ANTLR start "rule__Import__Group__4__Impl" 
    6034     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1734:1: rule__Import__Group__4__Impl : ( ';' ) ; 
     6339    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1831:1: rule__Import__Group__4__Impl : ( ';' ) ; 
    60356340    public final void rule__Import__Group__4__Impl() throws RecognitionException { 
    60366341        int rule__Import__Group__4__Impl_StartIndex = input.index(); 
     
    60396344             
    60406345        try { 
    6041             if ( state.backtracking>0 && alreadyParsedRule(input, 101) ) { return ; } 
    6042             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1738:1: ( ( ';' ) ) 
    6043             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1739:1: ( ';' ) 
    6044             { 
    6045             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1739:1: ( ';' ) 
    6046             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1740:1: ';' 
     6346            if ( state.backtracking>0 && alreadyParsedRule(input, 107) ) { return ; } 
     6347            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1835:1: ( ( ';' ) ) 
     6348            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1836:1: ( ';' ) 
     6349            { 
     6350            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1836:1: ( ';' ) 
     6351            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1837:1: ';' 
    60476352            { 
    60486353            if ( state.backtracking==0 ) { 
    60496354               before(grammarAccess.getImportAccess().getSemicolonKeyword_4());  
    60506355            } 
    6051             match(input,23,FOLLOW_23_in_rule__Import__Group__4__Impl3668); if (state.failed) return ; 
     6356            match(input,23,FOLLOW_23_in_rule__Import__Group__4__Impl3868); if (state.failed) return ; 
    60526357            if ( state.backtracking==0 ) { 
    60536358               after(grammarAccess.getImportAccess().getSemicolonKeyword_4());  
     
    60656370        } 
    60666371        finally { 
    6067             if ( state.backtracking>0 ) { memoize(input, 101, rule__Import__Group__4__Impl_StartIndex); } 
     6372            if ( state.backtracking>0 ) { memoize(input, 107, rule__Import__Group__4__Impl_StartIndex); } 
    60686373 
    60696374                restoreStackSize(stackSize); 
     
    60766381 
    60776382    // $ANTLR start "rule__Import__Group_2__0" 
    6078     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1763:1: rule__Import__Group_2__0 : rule__Import__Group_2__0__Impl rule__Import__Group_2__1 ; 
     6383    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1860:1: rule__Import__Group_2__0 : rule__Import__Group_2__0__Impl rule__Import__Group_2__1 ; 
    60796384    public final void rule__Import__Group_2__0() throws RecognitionException { 
    60806385        int rule__Import__Group_2__0_StartIndex = input.index(); 
     
    60836388             
    60846389        try { 
    6085             if ( state.backtracking>0 && alreadyParsedRule(input, 102) ) { return ; } 
    6086             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1767:1: ( rule__Import__Group_2__0__Impl rule__Import__Group_2__1 ) 
    6087             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1768:2: rule__Import__Group_2__0__Impl rule__Import__Group_2__1 
    6088             { 
    6089             pushFollow(FOLLOW_rule__Import__Group_2__0__Impl_in_rule__Import__Group_2__03709); 
     6390            if ( state.backtracking>0 && alreadyParsedRule(input, 108) ) { return ; } 
     6391            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1864:1: ( rule__Import__Group_2__0__Impl rule__Import__Group_2__1 ) 
     6392            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1865:2: rule__Import__Group_2__0__Impl rule__Import__Group_2__1 
     6393            { 
     6394            pushFollow(FOLLOW_rule__Import__Group_2__0__Impl_in_rule__Import__Group_2__03909); 
    60906395            rule__Import__Group_2__0__Impl(); 
    60916396 
    60926397            state._fsp--; 
    60936398            if (state.failed) return ; 
    6094             pushFollow(FOLLOW_rule__Import__Group_2__1_in_rule__Import__Group_2__03712); 
     6399            pushFollow(FOLLOW_rule__Import__Group_2__1_in_rule__Import__Group_2__03912); 
    60956400            rule__Import__Group_2__1(); 
    60966401 
     
    61066411        } 
    61076412        finally { 
    6108             if ( state.backtracking>0 ) { memoize(input, 102, rule__Import__Group_2__0_StartIndex); } 
     6413            if ( state.backtracking>0 ) { memoize(input, 108, rule__Import__Group_2__0_StartIndex); } 
    61096414 
    61106415                restoreStackSize(stackSize); 
     
    61176422 
    61186423    // $ANTLR start "rule__Import__Group_2__0__Impl" 
    6119     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1775:1: rule__Import__Group_2__0__Impl : ( '/' ) ; 
     6424    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1872:1: rule__Import__Group_2__0__Impl : ( '/' ) ; 
    61206425    public final void rule__Import__Group_2__0__Impl() throws RecognitionException { 
    61216426        int rule__Import__Group_2__0__Impl_StartIndex = input.index(); 
     
    61246429             
    61256430        try { 
    6126             if ( state.backtracking>0 && alreadyParsedRule(input, 103) ) { return ; } 
    6127             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1779:1: ( ( '/' ) ) 
    6128             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1780:1: ( '/' ) 
    6129             { 
    6130             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1780:1: ( '/' ) 
    6131             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1781:1: '/' 
     6431            if ( state.backtracking>0 && alreadyParsedRule(input, 109) ) { return ; } 
     6432            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1876:1: ( ( '/' ) ) 
     6433            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1877:1: ( '/' ) 
     6434            { 
     6435            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1877:1: ( '/' ) 
     6436            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1878:1: '/' 
    61326437            { 
    61336438            if ( state.backtracking==0 ) { 
    61346439               before(grammarAccess.getImportAccess().getSolidusKeyword_2_0());  
    61356440            } 
    6136             match(input,25,FOLLOW_25_in_rule__Import__Group_2__0__Impl3740); if (state.failed) return ; 
     6441            match(input,25,FOLLOW_25_in_rule__Import__Group_2__0__Impl3940); if (state.failed) return ; 
    61376442            if ( state.backtracking==0 ) { 
    61386443               after(grammarAccess.getImportAccess().getSolidusKeyword_2_0());  
     
    61506455        } 
    61516456        finally { 
    6152             if ( state.backtracking>0 ) { memoize(input, 103, rule__Import__Group_2__0__Impl_StartIndex); } 
     6457            if ( state.backtracking>0 ) { memoize(input, 109, rule__Import__Group_2__0__Impl_StartIndex); } 
    61536458 
    61546459                restoreStackSize(stackSize); 
     
    61616466 
    61626467    // $ANTLR start "rule__Import__Group_2__1" 
    6163     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1794:1: rule__Import__Group_2__1 : rule__Import__Group_2__1__Impl ; 
     6468    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1891:1: rule__Import__Group_2__1 : rule__Import__Group_2__1__Impl ; 
    61646469    public final void rule__Import__Group_2__1() throws RecognitionException { 
    61656470        int rule__Import__Group_2__1_StartIndex = input.index(); 
     
    61686473             
    61696474        try { 
    6170             if ( state.backtracking>0 && alreadyParsedRule(input, 104) ) { return ; } 
    6171             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1798:1: ( rule__Import__Group_2__1__Impl ) 
    6172             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1799:2: rule__Import__Group_2__1__Impl 
    6173             { 
    6174             pushFollow(FOLLOW_rule__Import__Group_2__1__Impl_in_rule__Import__Group_2__13771); 
     6475            if ( state.backtracking>0 && alreadyParsedRule(input, 110) ) { return ; } 
     6476            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1895:1: ( rule__Import__Group_2__1__Impl ) 
     6477            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1896:2: rule__Import__Group_2__1__Impl 
     6478            { 
     6479            pushFollow(FOLLOW_rule__Import__Group_2__1__Impl_in_rule__Import__Group_2__13971); 
    61756480            rule__Import__Group_2__1__Impl(); 
    61766481 
     
    61866491        } 
    61876492        finally { 
    6188             if ( state.backtracking>0 ) { memoize(input, 104, rule__Import__Group_2__1_StartIndex); } 
     6493            if ( state.backtracking>0 ) { memoize(input, 110, rule__Import__Group_2__1_StartIndex); } 
    61896494 
    61906495                restoreStackSize(stackSize); 
     
    61976502 
    61986503    // $ANTLR start "rule__Import__Group_2__1__Impl" 
    6199     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1805:1: rule__Import__Group_2__1__Impl : ( ( rule__Import__Alternatives_2_1 ) ) ; 
     6504    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1902:1: rule__Import__Group_2__1__Impl : ( ( rule__Import__Alternatives_2_1 ) ) ; 
    62006505    public final void rule__Import__Group_2__1__Impl() throws RecognitionException { 
    62016506        int rule__Import__Group_2__1__Impl_StartIndex = input.index(); 
     
    62046509             
    62056510        try { 
    6206             if ( state.backtracking>0 && alreadyParsedRule(input, 105) ) { return ; } 
    6207             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1809:1: ( ( ( rule__Import__Alternatives_2_1 ) ) ) 
    6208             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1810:1: ( ( rule__Import__Alternatives_2_1 ) ) 
    6209             { 
    6210             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1810:1: ( ( rule__Import__Alternatives_2_1 ) ) 
    6211             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1811:1: ( rule__Import__Alternatives_2_1 ) 
     6511            if ( state.backtracking>0 && alreadyParsedRule(input, 111) ) { return ; } 
     6512            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1906:1: ( ( ( rule__Import__Alternatives_2_1 ) ) ) 
     6513            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1907:1: ( ( rule__Import__Alternatives_2_1 ) ) 
     6514            { 
     6515            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1907:1: ( ( rule__Import__Alternatives_2_1 ) ) 
     6516            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1908:1: ( rule__Import__Alternatives_2_1 ) 
    62126517            { 
    62136518            if ( state.backtracking==0 ) { 
    62146519               before(grammarAccess.getImportAccess().getAlternatives_2_1());  
    62156520            } 
    6216             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1812:1: ( rule__Import__Alternatives_2_1 ) 
    6217             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1812:2: rule__Import__Alternatives_2_1 
    6218             { 
    6219             pushFollow(FOLLOW_rule__Import__Alternatives_2_1_in_rule__Import__Group_2__1__Impl3798); 
     6521            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1909:1: ( rule__Import__Alternatives_2_1 ) 
     6522            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1909:2: rule__Import__Alternatives_2_1 
     6523            { 
     6524            pushFollow(FOLLOW_rule__Import__Alternatives_2_1_in_rule__Import__Group_2__1__Impl3998); 
    62206525            rule__Import__Alternatives_2_1(); 
    62216526 
     
    62406545        } 
    62416546        finally { 
    6242             if ( state.backtracking>0 ) { memoize(input, 105, rule__Import__Group_2__1__Impl_StartIndex); } 
     6547            if ( state.backtracking>0 ) { memoize(input, 111, rule__Import__Group_2__1__Impl_StartIndex); } 
    62436548 
    62446549                restoreStackSize(stackSize); 
     
    62516556 
    62526557    // $ANTLR start "rule__Import__Group_3__0" 
    6253     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1826:1: rule__Import__Group_3__0 : rule__Import__Group_3__0__Impl rule__Import__Group_3__1 ; 
     6558    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1923:1: rule__Import__Group_3__0 : rule__Import__Group_3__0__Impl rule__Import__Group_3__1 ; 
    62546559    public final void rule__Import__Group_3__0() throws RecognitionException { 
    62556560        int rule__Import__Group_3__0_StartIndex = input.index(); 
     
    62586563             
    62596564        try { 
    6260             if ( state.backtracking>0 && alreadyParsedRule(input, 106) ) { return ; } 
    6261             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1830:1: ( rule__Import__Group_3__0__Impl rule__Import__Group_3__1 ) 
    6262             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1831:2: rule__Import__Group_3__0__Impl rule__Import__Group_3__1 
    6263             { 
    6264             pushFollow(FOLLOW_rule__Import__Group_3__0__Impl_in_rule__Import__Group_3__03832); 
     6565            if ( state.backtracking>0 && alreadyParsedRule(input, 112) ) { return ; } 
     6566            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1927:1: ( rule__Import__Group_3__0__Impl rule__Import__Group_3__1 ) 
     6567            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1928:2: rule__Import__Group_3__0__Impl rule__Import__Group_3__1 
     6568            { 
     6569            pushFollow(FOLLOW_rule__Import__Group_3__0__Impl_in_rule__Import__Group_3__04032); 
    62656570            rule__Import__Group_3__0__Impl(); 
    62666571 
    62676572            state._fsp--; 
    62686573            if (state.failed) return ; 
    6269             pushFollow(FOLLOW_rule__Import__Group_3__1_in_rule__Import__Group_3__03835); 
     6574            pushFollow(FOLLOW_rule__Import__Group_3__1_in_rule__Import__Group_3__04035); 
    62706575            rule__Import__Group_3__1(); 
    62716576 
     
    62816586        } 
    62826587        finally { 
    6283             if ( state.backtracking>0 ) { memoize(input, 106, rule__Import__Group_3__0_StartIndex); } 
     6588            if ( state.backtracking>0 ) { memoize(input, 112, rule__Import__Group_3__0_StartIndex); } 
    62846589 
    62856590                restoreStackSize(stackSize); 
     
    62926597 
    62936598    // $ANTLR start "rule__Import__Group_3__0__Impl" 
    6294     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1838:1: rule__Import__Group_3__0__Impl : ( 'label:' ) ; 
     6599    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1935:1: rule__Import__Group_3__0__Impl : ( 'label:' ) ; 
    62956600    public final void rule__Import__Group_3__0__Impl() throws RecognitionException { 
    62966601        int rule__Import__Group_3__0__Impl_StartIndex = input.index(); 
     
    62996604             
    63006605        try { 
    6301             if ( state.backtracking>0 && alreadyParsedRule(input, 107) ) { return ; } 
    6302             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1842:1: ( ( 'label:' ) ) 
    6303             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1843:1: ( 'label:' ) 
    6304             { 
    6305             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1843:1: ( 'label:' ) 
    6306             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1844:1: 'label:' 
     6606            if ( state.backtracking>0 && alreadyParsedRule(input, 113) ) { return ; } 
     6607            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1939:1: ( ( 'label:' ) ) 
     6608            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1940:1: ( 'label:' ) 
     6609            { 
     6610            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1940:1: ( 'label:' ) 
     6611            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1941:1: 'label:' 
    63076612            { 
    63086613            if ( state.backtracking==0 ) { 
    63096614               before(grammarAccess.getImportAccess().getLabelKeyword_3_0());  
    63106615            } 
    6311             match(input,26,FOLLOW_26_in_rule__Import__Group_3__0__Impl3863); if (state.failed) return ; 
     6616            match(input,26,FOLLOW_26_in_rule__Import__Group_3__0__Impl4063); if (state.failed) return ; 
    63126617            if ( state.backtracking==0 ) { 
    63136618               after(grammarAccess.getImportAccess().getLabelKeyword_3_0());  
     
    63256630        } 
    63266631        finally { 
    6327             if ( state.backtracking>0 ) { memoize(input, 107, rule__Import__Group_3__0__Impl_StartIndex); } 
     6632            if ( state.backtracking>0 ) { memoize(input, 113, rule__Import__Group_3__0__Impl_StartIndex); } 
    63286633 
    63296634                restoreStackSize(stackSize); 
     
    63366641 
    63376642    // $ANTLR start "rule__Import__Group_3__1" 
    6338     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1857:1: rule__Import__Group_3__1 : rule__Import__Group_3__1__Impl ; 
     6643    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1954:1: rule__Import__Group_3__1 : rule__Import__Group_3__1__Impl ; 
    63396644    public final void rule__Import__Group_3__1() throws RecognitionException { 
    63406645        int rule__Import__Group_3__1_StartIndex = input.index(); 
     
    63436648             
    63446649        try { 
    6345             if ( state.backtracking>0 && alreadyParsedRule(input, 108) ) { return ; } 
    6346             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1861:1: ( rule__Import__Group_3__1__Impl ) 
    6347             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1862:2: rule__Import__Group_3__1__Impl 
    6348             { 
    6349             pushFollow(FOLLOW_rule__Import__Group_3__1__Impl_in_rule__Import__Group_3__13894); 
     6650            if ( state.backtracking>0 && alreadyParsedRule(input, 114) ) { return ; } 
     6651            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1958:1: ( rule__Import__Group_3__1__Impl ) 
     6652            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1959:2: rule__Import__Group_3__1__Impl 
     6653            { 
     6654            pushFollow(FOLLOW_rule__Import__Group_3__1__Impl_in_rule__Import__Group_3__14094); 
    63506655            rule__Import__Group_3__1__Impl(); 
    63516656 
     
    63616666        } 
    63626667        finally { 
    6363             if ( state.backtracking>0 ) { memoize(input, 108, rule__Import__Group_3__1_StartIndex); } 
     6668            if ( state.backtracking>0 ) { memoize(input, 114, rule__Import__Group_3__1_StartIndex); } 
    63646669 
    63656670                restoreStackSize(stackSize); 
     
    63726677 
    63736678    // $ANTLR start "rule__Import__Group_3__1__Impl" 
    6374     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1868:1: rule__Import__Group_3__1__Impl : ( ( rule__Import__LabelAssignment_3_1 ) ) ; 
     6679    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1965:1: rule__Import__Group_3__1__Impl : ( ( rule__Import__LabelAssignment_3_1 ) ) ; 
    63756680    public final void rule__Import__Group_3__1__Impl() throws RecognitionException { 
    63766681        int rule__Import__Group_3__1__Impl_StartIndex = input.index(); 
     
    63796684             
    63806685        try { 
    6381             if ( state.backtracking>0 && alreadyParsedRule(input, 109) ) { return ; } 
    6382             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1872:1: ( ( ( rule__Import__LabelAssignment_3_1 ) ) ) 
    6383             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1873:1: ( ( rule__Import__LabelAssignment_3_1 ) ) 
    6384             { 
    6385             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1873:1: ( ( rule__Import__LabelAssignment_3_1 ) ) 
    6386             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1874:1: ( rule__Import__LabelAssignment_3_1 ) 
     6686            if ( state.backtracking>0 && alreadyParsedRule(input, 115) ) { return ; } 
     6687            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1969:1: ( ( ( rule__Import__LabelAssignment_3_1 ) ) ) 
     6688            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1970:1: ( ( rule__Import__LabelAssignment_3_1 ) ) 
     6689            { 
     6690            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1970:1: ( ( rule__Import__LabelAssignment_3_1 ) ) 
     6691            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1971:1: ( rule__Import__LabelAssignment_3_1 ) 
    63876692            { 
    63886693            if ( state.backtracking==0 ) { 
    63896694               before(grammarAccess.getImportAccess().getLabelAssignment_3_1());  
    63906695            } 
    6391             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1875:1: ( rule__Import__LabelAssignment_3_1 ) 
    6392             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1875:2: rule__Import__LabelAssignment_3_1 
    6393             { 
    6394             pushFollow(FOLLOW_rule__Import__LabelAssignment_3_1_in_rule__Import__Group_3__1__Impl3921); 
     6696            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1972:1: ( rule__Import__LabelAssignment_3_1 ) 
     6697            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1972:2: rule__Import__LabelAssignment_3_1 
     6698            { 
     6699            pushFollow(FOLLOW_rule__Import__LabelAssignment_3_1_in_rule__Import__Group_3__1__Impl4121); 
    63956700            rule__Import__LabelAssignment_3_1(); 
    63966701 
     
    64156720        } 
    64166721        finally { 
    6417             if ( state.backtracking>0 ) { memoize(input, 109, rule__Import__Group_3__1__Impl_StartIndex); } 
     6722            if ( state.backtracking>0 ) { memoize(input, 115, rule__Import__Group_3__1__Impl_StartIndex); } 
    64186723 
    64196724                restoreStackSize(stackSize); 
     
    64266731 
    64276732    // $ANTLR start "rule__Rule__Group__0" 
    6428     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1889:1: rule__Rule__Group__0 : rule__Rule__Group__0__Impl rule__Rule__Group__1 ; 
     6733    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1986:1: rule__Rule__Group__0 : rule__Rule__Group__0__Impl rule__Rule__Group__1 ; 
    64296734    public final void rule__Rule__Group__0() throws RecognitionException { 
    64306735        int rule__Rule__Group__0_StartIndex = input.index(); 
     
    64336738             
    64346739        try { 
    6435             if ( state.backtracking>0 && alreadyParsedRule(input, 110) ) { return ; } 
    6436             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1893:1: ( rule__Rule__Group__0__Impl rule__Rule__Group__1 ) 
    6437             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1894:2: rule__Rule__Group__0__Impl rule__Rule__Group__1 
    6438             { 
    6439             pushFollow(FOLLOW_rule__Rule__Group__0__Impl_in_rule__Rule__Group__03955); 
     6740            if ( state.backtracking>0 && alreadyParsedRule(input, 116) ) { return ; } 
     6741            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1990:1: ( rule__Rule__Group__0__Impl rule__Rule__Group__1 ) 
     6742            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1991:2: rule__Rule__Group__0__Impl rule__Rule__Group__1 
     6743            { 
     6744            pushFollow(FOLLOW_rule__Rule__Group__0__Impl_in_rule__Rule__Group__04155); 
    64406745            rule__Rule__Group__0__Impl(); 
    64416746 
    64426747            state._fsp--; 
    64436748            if (state.failed) return ; 
    6444             pushFollow(FOLLOW_rule__Rule__Group__1_in_rule__Rule__Group__03958); 
     6749            pushFollow(FOLLOW_rule__Rule__Group__1_in_rule__Rule__Group__04158); 
    64456750            rule__Rule__Group__1(); 
    64466751 
     
    64566761        } 
    64576762        finally { 
    6458             if ( state.backtracking>0 ) { memoize(input, 110, rule__Rule__Group__0_StartIndex); } 
     6763            if ( state.backtracking>0 ) { memoize(input, 116, rule__Rule__Group__0_StartIndex); } 
    64596764 
    64606765                restoreStackSize(stackSize); 
     
    64676772 
    64686773    // $ANTLR start "rule__Rule__Group__0__Impl" 
    6469     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1901:1: rule__Rule__Group__0__Impl : ( ( rule__Rule__Group_0__0 )? ) ; 
     6774    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1998:1: rule__Rule__Group__0__Impl : ( ( rule__Rule__Group_0__0 )? ) ; 
    64706775    public final void rule__Rule__Group__0__Impl() throws RecognitionException { 
    64716776        int rule__Rule__Group__0__Impl_StartIndex = input.index(); 
     
    64746779             
    64756780        try { 
    6476             if ( state.backtracking>0 && alreadyParsedRule(input, 111) ) { return ; } 
    6477             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1905:1: ( ( ( rule__Rule__Group_0__0 )? ) ) 
    6478             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1906:1: ( ( rule__Rule__Group_0__0 )? ) 
    6479             { 
    6480             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1906:1: ( ( rule__Rule__Group_0__0 )? ) 
    6481             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1907:1: ( rule__Rule__Group_0__0 )? 
     6781            if ( state.backtracking>0 && alreadyParsedRule(input, 117) ) { return ; } 
     6782            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2002:1: ( ( ( rule__Rule__Group_0__0 )? ) ) 
     6783            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2003:1: ( ( rule__Rule__Group_0__0 )? ) 
     6784            { 
     6785            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2003:1: ( ( rule__Rule__Group_0__0 )? ) 
     6786            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2004:1: ( rule__Rule__Group_0__0 )? 
    64826787            { 
    64836788            if ( state.backtracking==0 ) { 
    64846789               before(grammarAccess.getRuleAccess().getGroup_0());  
    64856790            } 
    6486             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1908:1: ( rule__Rule__Group_0__0 )? 
     6791            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2005:1: ( rule__Rule__Group_0__0 )? 
    64876792            int alt25=2; 
    64886793            int LA25_0 = input.LA(1); 
     
    64936798            switch (alt25) { 
    64946799                case 1 : 
    6495                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1908:2: rule__Rule__Group_0__0 
     6800                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2005:2: rule__Rule__Group_0__0 
    64966801                    { 
    6497                     pushFollow(FOLLOW_rule__Rule__Group_0__0_in_rule__Rule__Group__0__Impl3985); 
     6802                    pushFollow(FOLLOW_rule__Rule__Group_0__0_in_rule__Rule__Group__0__Impl4185); 
    64986803                    rule__Rule__Group_0__0(); 
    64996804 
     
    65216826        } 
    65226827        finally { 
    6523             if ( state.backtracking>0 ) { memoize(input, 111, rule__Rule__Group__0__Impl_StartIndex); } 
     6828            if ( state.backtracking>0 ) { memoize(input, 117, rule__Rule__Group__0__Impl_StartIndex); } 
    65246829 
    65256830                restoreStackSize(stackSize); 
     
    65326837 
    65336838    // $ANTLR start "rule__Rule__Group__1" 
    6534     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1918:1: rule__Rule__Group__1 : rule__Rule__Group__1__Impl rule__Rule__Group__2 ; 
     6839    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2015:1: rule__Rule__Group__1 : rule__Rule__Group__1__Impl rule__Rule__Group__2 ; 
    65356840    public final void rule__Rule__Group__1() throws RecognitionException { 
    65366841        int rule__Rule__Group__1_StartIndex = input.index(); 
     
    65396844             
    65406845        try { 
    6541             if ( state.backtracking>0 && alreadyParsedRule(input, 112) ) { return ; } 
    6542             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1922:1: ( rule__Rule__Group__1__Impl rule__Rule__Group__2 ) 
    6543             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1923:2: rule__Rule__Group__1__Impl rule__Rule__Group__2 
    6544             { 
    6545             pushFollow(FOLLOW_rule__Rule__Group__1__Impl_in_rule__Rule__Group__14016); 
     6846            if ( state.backtracking>0 && alreadyParsedRule(input, 118) ) { return ; } 
     6847            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2019:1: ( rule__Rule__Group__1__Impl rule__Rule__Group__2 ) 
     6848            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2020:2: rule__Rule__Group__1__Impl rule__Rule__Group__2 
     6849            { 
     6850            pushFollow(FOLLOW_rule__Rule__Group__1__Impl_in_rule__Rule__Group__14216); 
    65466851            rule__Rule__Group__1__Impl(); 
    65476852 
    65486853            state._fsp--; 
    65496854            if (state.failed) return ; 
    6550             pushFollow(FOLLOW_rule__Rule__Group__2_in_rule__Rule__Group__14019); 
     6855            pushFollow(FOLLOW_rule__Rule__Group__2_in_rule__Rule__Group__14219); 
    65516856            rule__Rule__Group__2(); 
    65526857 
     
    65626867        } 
    65636868        finally { 
    6564             if ( state.backtracking>0 ) { memoize(input, 112, rule__Rule__Group__1_StartIndex); } 
     6869            if ( state.backtracking>0 ) { memoize(input, 118, rule__Rule__Group__1_StartIndex); } 
    65656870 
    65666871                restoreStackSize(stackSize); 
     
    65736878 
    65746879    // $ANTLR start "rule__Rule__Group__1__Impl" 
    6575     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1930:1: rule__Rule__Group__1__Impl : ( ( rule__Rule__NameAssignment_1 ) ) ; 
     6880    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2027:1: rule__Rule__Group__1__Impl : ( ( rule__Rule__NameAssignment_1 ) ) ; 
    65766881    public final void rule__Rule__Group__1__Impl() throws RecognitionException { 
    65776882        int rule__Rule__Group__1__Impl_StartIndex = input.index(); 
     
    65806885             
    65816886        try { 
    6582             if ( state.backtracking>0 && alreadyParsedRule(input, 113) ) { return ; } 
    6583             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1934:1: ( ( ( rule__Rule__NameAssignment_1 ) ) ) 
    6584             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1935:1: ( ( rule__Rule__NameAssignment_1 ) ) 
    6585             { 
    6586             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1935:1: ( ( rule__Rule__NameAssignment_1 ) ) 
    6587             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1936:1: ( rule__Rule__NameAssignment_1 ) 
     6887            if ( state.backtracking>0 && alreadyParsedRule(input, 119) ) { return ; } 
     6888            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2031:1: ( ( ( rule__Rule__NameAssignment_1 ) ) ) 
     6889            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2032:1: ( ( rule__Rule__NameAssignment_1 ) ) 
     6890            { 
     6891            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2032:1: ( ( rule__Rule__NameAssignment_1 ) ) 
     6892            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2033:1: ( rule__Rule__NameAssignment_1 ) 
    65886893            { 
    65896894            if ( state.backtracking==0 ) { 
    65906895               before(grammarAccess.getRuleAccess().getNameAssignment_1());  
    65916896            } 
    6592             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1937:1: ( rule__Rule__NameAssignment_1 ) 
    6593             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1937:2: rule__Rule__NameAssignment_1 
    6594             { 
    6595             pushFollow(FOLLOW_rule__Rule__NameAssignment_1_in_rule__Rule__Group__1__Impl4046); 
     6897            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2034:1: ( rule__Rule__NameAssignment_1 ) 
     6898            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2034:2: rule__Rule__NameAssignment_1 
     6899            { 
     6900            pushFollow(FOLLOW_rule__Rule__NameAssignment_1_in_rule__Rule__Group__1__Impl4246); 
    65966901            rule__Rule__NameAssignment_1(); 
    65976902 
     
    66166921        } 
    66176922        finally { 
    6618             if ( state.backtracking>0 ) { memoize(input, 113, rule__Rule__Group__1__Impl_StartIndex); } 
     6923            if ( state.backtracking>0 ) { memoize(input, 119, rule__Rule__Group__1__Impl_StartIndex); } 
    66196924 
    66206925                restoreStackSize(stackSize); 
     
    66276932 
    66286933    // $ANTLR start "rule__Rule__Group__2" 
    6629     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1947:1: rule__Rule__Group__2 : rule__Rule__Group__2__Impl rule__Rule__Group__3 ; 
     6934    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2044:1: rule__Rule__Group__2 : rule__Rule__Group__2__Impl rule__Rule__Group__3 ; 
    66306935    public final void rule__Rule__Group__2() throws RecognitionException { 
    66316936        int rule__Rule__Group__2_StartIndex = input.index(); 
     
    66346939             
    66356940        try { 
    6636             if ( state.backtracking>0 && alreadyParsedRule(input, 114) ) { return ; } 
    6637             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1951:1: ( rule__Rule__Group__2__Impl rule__Rule__Group__3 ) 
    6638             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1952:2: rule__Rule__Group__2__Impl rule__Rule__Group__3 
    6639             { 
    6640             pushFollow(FOLLOW_rule__Rule__Group__2__Impl_in_rule__Rule__Group__24076); 
     6941            if ( state.backtracking>0 && alreadyParsedRule(input, 120) ) { return ; } 
     6942            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2048:1: ( rule__Rule__Group__2__Impl rule__Rule__Group__3 ) 
     6943            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2049:2: rule__Rule__Group__2__Impl rule__Rule__Group__3 
     6944            { 
     6945            pushFollow(FOLLOW_rule__Rule__Group__2__Impl_in_rule__Rule__Group__24276); 
    66416946            rule__Rule__Group__2__Impl(); 
    66426947 
    66436948            state._fsp--; 
    66446949            if (state.failed) return ; 
    6645             pushFollow(FOLLOW_rule__Rule__Group__3_in_rule__Rule__Group__24079); 
     6950            pushFollow(FOLLOW_rule__Rule__Group__3_in_rule__Rule__Group__24279); 
    66466951            rule__Rule__Group__3(); 
    66476952 
     
    66576962        } 
    66586963        finally { 
    6659             if ( state.backtracking>0 ) { memoize(input, 114, rule__Rule__Group__2_StartIndex); } 
     6964            if ( state.backtracking>0 ) { memoize(input, 120, rule__Rule__Group__2_StartIndex); } 
    66606965 
    66616966                restoreStackSize(stackSize); 
     
    66686973 
    66696974    // $ANTLR start "rule__Rule__Group__2__Impl" 
    6670     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1959:1: rule__Rule__Group__2__Impl : ( '::=' ) ; 
     6975    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2056:1: rule__Rule__Group__2__Impl : ( '::=' ) ; 
    66716976    public final void rule__Rule__Group__2__Impl() throws RecognitionException { 
    66726977        int rule__Rule__Group__2__Impl_StartIndex = input.index(); 
     
    66756980             
    66766981        try { 
    6677             if ( state.backtracking>0 && alreadyParsedRule(input, 115) ) { return ; } 
    6678             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1963:1: ( ( '::=' ) ) 
    6679             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1964:1: ( '::=' ) 
    6680             { 
    6681             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1964:1: ( '::=' ) 
    6682             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1965:1: '::=' 
     6982            if ( state.backtracking>0 && alreadyParsedRule(input, 121) ) { return ; } 
     6983            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2060:1: ( ( '::=' ) ) 
     6984            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2061:1: ( '::=' ) 
     6985            { 
     6986            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2061:1: ( '::=' ) 
     6987            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2062:1: '::=' 
    66836988            { 
    66846989            if ( state.backtracking==0 ) { 
    66856990               before(grammarAccess.getRuleAccess().getColonColonEqualsSignKeyword_2());  
    66866991            } 
    6687             match(input,27,FOLLOW_27_in_rule__Rule__Group__2__Impl4107); if (state.failed) return ; 
     6992            match(input,27,FOLLOW_27_in_rule__Rule__Group__2__Impl4307); if (state.failed) return ; 
    66886993            if ( state.backtracking==0 ) { 
    66896994               after(grammarAccess.getRuleAccess().getColonColonEqualsSignKeyword_2());  
     
    67017006        } 
    67027007        finally { 
    6703             if ( state.backtracking>0 ) { memoize(input, 115, rule__Rule__Group__2__Impl_StartIndex); } 
     7008            if ( state.backtracking>0 ) { memoize(input, 121, rule__Rule__Group__2__Impl_StartIndex); } 
    67047009 
    67057010                restoreStackSize(stackSize); 
     
    67127017 
    67137018    // $ANTLR start "rule__Rule__Group__3" 
    6714     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1978:1: rule__Rule__Group__3 : rule__Rule__Group__3__Impl rule__Rule__Group__4 ; 
     7019    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2075:1: rule__Rule__Group__3 : rule__Rule__Group__3__Impl rule__Rule__Group__4 ; 
    67157020    public final void rule__Rule__Group__3() throws RecognitionException { 
    67167021        int rule__Rule__Group__3_StartIndex = input.index(); 
     
    67197024             
    67207025        try { 
    6721             if ( state.backtracking>0 && alreadyParsedRule(input, 116) ) { return ; } 
    6722             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1982:1: ( rule__Rule__Group__3__Impl rule__Rule__Group__4 ) 
    6723             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1983:2: rule__Rule__Group__3__Impl rule__Rule__Group__4 
    6724             { 
    6725             pushFollow(FOLLOW_rule__Rule__Group__3__Impl_in_rule__Rule__Group__34138); 
     7026            if ( state.backtracking>0 && alreadyParsedRule(input, 122) ) { return ; } 
     7027            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2079:1: ( rule__Rule__Group__3__Impl rule__Rule__Group__4 ) 
     7028            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2080:2: rule__Rule__Group__3__Impl rule__Rule__Group__4 
     7029            { 
     7030            pushFollow(FOLLOW_rule__Rule__Group__3__Impl_in_rule__Rule__Group__34338); 
    67267031            rule__Rule__Group__3__Impl(); 
    67277032 
    67287033            state._fsp--; 
    67297034            if (state.failed) return ; 
    6730             pushFollow(FOLLOW_rule__Rule__Group__4_in_rule__Rule__Group__34141); 
     7035            pushFollow(FOLLOW_rule__Rule__Group__4_in_rule__Rule__Group__34341); 
    67317036            rule__Rule__Group__4(); 
    67327037 
     
    67427047        } 
    67437048        finally { 
    6744             if ( state.backtracking>0 ) { memoize(input, 116, rule__Rule__Group__3_StartIndex); } 
     7049            if ( state.backtracking>0 ) { memoize(input, 122, rule__Rule__Group__3_StartIndex); } 
    67457050 
    67467051                restoreStackSize(stackSize); 
     
    67537058 
    67547059    // $ANTLR start "rule__Rule__Group__3__Impl" 
    6755     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1990:1: rule__Rule__Group__3__Impl : ( ( rule__Rule__DefinitionListAssignment_3 )? ) ; 
     7060    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2087:1: rule__Rule__Group__3__Impl : ( ( rule__Rule__DefinitionListAssignment_3 )? ) ; 
    67567061    public final void rule__Rule__Group__3__Impl() throws RecognitionException { 
    67577062        int rule__Rule__Group__3__Impl_StartIndex = input.index(); 
     
    67607065             
    67617066        try { 
    6762             if ( state.backtracking>0 && alreadyParsedRule(input, 117) ) { return ; } 
    6763             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1994:1: ( ( ( rule__Rule__DefinitionListAssignment_3 )? ) ) 
    6764             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1995:1: ( ( rule__Rule__DefinitionListAssignment_3 )? ) 
    6765             { 
    6766             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1995:1: ( ( rule__Rule__DefinitionListAssignment_3 )? ) 
    6767             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1996:1: ( rule__Rule__DefinitionListAssignment_3 )? 
     7067            if ( state.backtracking>0 && alreadyParsedRule(input, 123) ) { return ; } 
     7068            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2091:1: ( ( ( rule__Rule__DefinitionListAssignment_3 )? ) ) 
     7069            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2092:1: ( ( rule__Rule__DefinitionListAssignment_3 )? ) 
     7070            { 
     7071            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2092:1: ( ( rule__Rule__DefinitionListAssignment_3 )? ) 
     7072            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2093:1: ( rule__Rule__DefinitionListAssignment_3 )? 
    67687073            { 
    67697074            if ( state.backtracking==0 ) { 
    67707075               before(grammarAccess.getRuleAccess().getDefinitionListAssignment_3());  
    67717076            } 
    6772             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1997:1: ( rule__Rule__DefinitionListAssignment_3 )? 
     7077            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2094:1: ( rule__Rule__DefinitionListAssignment_3 )? 
    67737078            int alt26=2; 
    67747079            int LA26_0 = input.LA(1); 
     
    67807085                int LA26_2 = input.LA(2); 
    67817086 
    6782                 if ( (LA26_2==EOF||(LA26_2>=RULE_ID && LA26_2<=RULE_INT)||LA26_2==RULE_COLON||LA26_2==16||(LA26_2>=18 && LA26_2<=19)||LA26_2==23) ) { 
     7087                if ( (LA26_2==17) ) { 
     7088                    int LA26_4 = input.LA(3); 
     7089 
     7090                    if ( (LA26_4==RULE_ID||LA26_4==RULE_STRING||LA26_4==RULE_COLON||(LA26_4>=17 && LA26_4<=19)) ) { 
     7091                        alt26=1; 
     7092                    } 
     7093                } 
     7094                else if ( (LA26_2==EOF||(LA26_2>=RULE_ID && LA26_2<=RULE_INT)||LA26_2==RULE_COLON||LA26_2==16||(LA26_2>=18 && LA26_2<=19)||LA26_2==23) ) { 
    67837095                    alt26=1; 
    67847096                } 
    6785                 else if ( (LA26_2==17) ) { 
    6786                     int LA26_4 = input.LA(3); 
    6787  
    6788                     if ( (LA26_4==RULE_ID||LA26_4==RULE_STRING||LA26_4==RULE_COLON||(LA26_4>=17 && LA26_4<=19)) ) { 
    6789                         alt26=1; 
    6790                     } 
    6791                 } 
    67927097            } 
    67937098            switch (alt26) { 
    67947099                case 1 : 
    6795                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1997:2: rule__Rule__DefinitionListAssignment_3 
     7100                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2094:2: rule__Rule__DefinitionListAssignment_3 
    67967101                    { 
    6797                     pushFollow(FOLLOW_rule__Rule__DefinitionListAssignment_3_in_rule__Rule__Group__3__Impl4168); 
     7102                    pushFollow(FOLLOW_rule__Rule__DefinitionListAssignment_3_in_rule__Rule__Group__3__Impl4368); 
    67987103                    rule__Rule__DefinitionListAssignment_3(); 
    67997104 
     
    68217126        } 
    68227127        finally { 
    6823             if ( state.backtracking>0 ) { memoize(input, 117, rule__Rule__Group__3__Impl_StartIndex); } 
     7128            if ( state.backtracking>0 ) { memoize(input, 123, rule__Rule__Group__3__Impl_StartIndex); } 
    68247129 
    68257130                restoreStackSize(stackSize); 
     
    68327137 
    68337138    // $ANTLR start "rule__Rule__Group__4" 
    6834     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2007:1: rule__Rule__Group__4 : rule__Rule__Group__4__Impl ; 
     7139    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2104:1: rule__Rule__Group__4 : rule__Rule__Group__4__Impl ; 
    68357140    public final void rule__Rule__Group__4() throws RecognitionException { 
    68367141        int rule__Rule__Group__4_StartIndex = input.index(); 
     
    68397144             
    68407145        try { 
    6841             if ( state.backtracking>0 && alreadyParsedRule(input, 118) ) { return ; } 
    6842             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2011:1: ( rule__Rule__Group__4__Impl ) 
    6843             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2012:2: rule__Rule__Group__4__Impl 
    6844             { 
    6845             pushFollow(FOLLOW_rule__Rule__Group__4__Impl_in_rule__Rule__Group__44199); 
     7146            if ( state.backtracking>0 && alreadyParsedRule(input, 124) ) { return ; } 
     7147            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2108:1: ( rule__Rule__Group__4__Impl ) 
     7148            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2109:2: rule__Rule__Group__4__Impl 
     7149            { 
     7150            pushFollow(FOLLOW_rule__Rule__Group__4__Impl_in_rule__Rule__Group__44399); 
    68467151            rule__Rule__Group__4__Impl(); 
    68477152 
     
    68577162        } 
    68587163        finally { 
    6859             if ( state.backtracking>0 ) { memoize(input, 118, rule__Rule__Group__4_StartIndex); } 
     7164            if ( state.backtracking>0 ) { memoize(input, 124, rule__Rule__Group__4_StartIndex); } 
    68607165 
    68617166                restoreStackSize(stackSize); 
     
    68687173 
    68697174    // $ANTLR start "rule__Rule__Group__4__Impl" 
    6870     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2018:1: rule__Rule__Group__4__Impl : ( ( ';' )? ) ; 
     7175    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2115:1: rule__Rule__Group__4__Impl : ( ( ';' )? ) ; 
    68717176    public final void rule__Rule__Group__4__Impl() throws RecognitionException { 
    68727177        int rule__Rule__Group__4__Impl_StartIndex = input.index(); 
     
    68757180             
    68767181        try { 
    6877             if ( state.backtracking>0 && alreadyParsedRule(input, 119) ) { return ; } 
    6878             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2022:1: ( ( ( ';' )? ) ) 
    6879             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2023:1: ( ( ';' )? ) 
    6880             { 
    6881             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2023:1: ( ( ';' )? ) 
    6882             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2024:1: ( ';' )? 
     7182            if ( state.backtracking>0 && alreadyParsedRule(input, 125) ) { return ; } 
     7183            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2119:1: ( ( ( ';' )? ) ) 
     7184            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2120:1: ( ( ';' )? ) 
     7185            { 
     7186            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2120:1: ( ( ';' )? ) 
     7187            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2121:1: ( ';' )? 
    68837188            { 
    68847189            if ( state.backtracking==0 ) { 
    68857190               before(grammarAccess.getRuleAccess().getSemicolonKeyword_4());  
    68867191            } 
    6887             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2025:1: ( ';' )? 
     7192            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2122:1: ( ';' )? 
    68887193            int alt27=2; 
    68897194            int LA27_0 = input.LA(1); 
     
    68947199            switch (alt27) { 
    68957200                case 1 : 
    6896                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2026:2: ';' 
     7201                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2123:2: ';' 
    68977202                    { 
    6898                     match(input,23,FOLLOW_23_in_rule__Rule__Group__4__Impl4228); if (state.failed) return ; 
     7203                    match(input,23,FOLLOW_23_in_rule__Rule__Group__4__Impl4428); if (state.failed) return ; 
    68997204 
    69007205                    } 
     
    69187223        } 
    69197224        finally { 
    6920             if ( state.backtracking>0 ) { memoize(input, 119, rule__Rule__Group__4__Impl_StartIndex); } 
     7225            if ( state.backtracking>0 ) { memoize(input, 125, rule__Rule__Group__4__Impl_StartIndex); } 
    69217226 
    69227227                restoreStackSize(stackSize); 
     
    69297234 
    69307235    // $ANTLR start "rule__Rule__Group_0__0" 
    6931     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2047:1: rule__Rule__Group_0__0 : rule__Rule__Group_0__0__Impl rule__Rule__Group_0__1 ; 
     7236    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2144:1: rule__Rule__Group_0__0 : rule__Rule__Group_0__0__Impl rule__Rule__Group_0__1 ; 
    69327237    public final void rule__Rule__Group_0__0() throws RecognitionException { 
    69337238        int rule__Rule__Group_0__0_StartIndex = input.index(); 
     
    69367241             
    69377242        try { 
    6938             if ( state.backtracking>0 && alreadyParsedRule(input, 120) ) { return ; } 
    6939             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2051:1: ( rule__Rule__Group_0__0__Impl rule__Rule__Group_0__1 ) 
    6940             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2052:2: rule__Rule__Group_0__0__Impl rule__Rule__Group_0__1 
    6941             { 
    6942             pushFollow(FOLLOW_rule__Rule__Group_0__0__Impl_in_rule__Rule__Group_0__04271); 
     7243            if ( state.backtracking>0 && alreadyParsedRule(input, 126) ) { return ; } 
     7244            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2148:1: ( rule__Rule__Group_0__0__Impl rule__Rule__Group_0__1 ) 
     7245            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2149:2: rule__Rule__Group_0__0__Impl rule__Rule__Group_0__1 
     7246            { 
     7247            pushFollow(FOLLOW_rule__Rule__Group_0__0__Impl_in_rule__Rule__Group_0__04471); 
    69437248            rule__Rule__Group_0__0__Impl(); 
    69447249 
    69457250            state._fsp--; 
    69467251            if (state.failed) return ; 
    6947             pushFollow(FOLLOW_rule__Rule__Group_0__1_in_rule__Rule__Group_0__04274); 
     7252            pushFollow(FOLLOW_rule__Rule__Group_0__1_in_rule__Rule__Group_0__04474); 
    69487253            rule__Rule__Group_0__1(); 
    69497254 
     
    69597264        } 
    69607265        finally { 
    6961             if ( state.backtracking>0 ) { memoize(input, 120, rule__Rule__Group_0__0_StartIndex); } 
     7266            if ( state.backtracking>0 ) { memoize(input, 126, rule__Rule__Group_0__0_StartIndex); } 
    69627267 
    69637268                restoreStackSize(stackSize); 
     
    69707275 
    69717276    // $ANTLR start "rule__Rule__Group_0__0__Impl" 
    6972     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2059:1: rule__Rule__Group_0__0__Impl : ( ( rule__Rule__RulenumberAssignment_0_0 ) ) ; 
     7277    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2156:1: rule__Rule__Group_0__0__Impl : ( ( rule__Rule__RulenumberAssignment_0_0 ) ) ; 
    69737278    public final void rule__Rule__Group_0__0__Impl() throws RecognitionException { 
    69747279        int rule__Rule__Group_0__0__Impl_StartIndex = input.index(); 
     
    69777282             
    69787283        try { 
    6979             if ( state.backtracking>0 && alreadyParsedRule(input, 121) ) { return ; } 
    6980             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2063:1: ( ( ( rule__Rule__RulenumberAssignment_0_0 ) ) ) 
    6981             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2064:1: ( ( rule__Rule__RulenumberAssignment_0_0 ) ) 
    6982             { 
    6983             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2064:1: ( ( rule__Rule__RulenumberAssignment_0_0 ) ) 
    6984             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2065:1: ( rule__Rule__RulenumberAssignment_0_0 ) 
     7284            if ( state.backtracking>0 && alreadyParsedRule(input, 127) ) { return ; } 
     7285            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2160:1: ( ( ( rule__Rule__RulenumberAssignment_0_0 ) ) ) 
     7286            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2161:1: ( ( rule__Rule__RulenumberAssignment_0_0 ) ) 
     7287            { 
     7288            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2161:1: ( ( rule__Rule__RulenumberAssignment_0_0 ) ) 
     7289            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2162:1: ( rule__Rule__RulenumberAssignment_0_0 ) 
    69857290            { 
    69867291            if ( state.backtracking==0 ) { 
    69877292               before(grammarAccess.getRuleAccess().getRulenumberAssignment_0_0());  
    69887293            } 
    6989             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2066:1: ( rule__Rule__RulenumberAssignment_0_0 ) 
    6990             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2066:2: rule__Rule__RulenumberAssignment_0_0 
    6991             { 
    6992             pushFollow(FOLLOW_rule__Rule__RulenumberAssignment_0_0_in_rule__Rule__Group_0__0__Impl4301); 
     7294            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2163:1: ( rule__Rule__RulenumberAssignment_0_0 ) 
     7295            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2163:2: rule__Rule__RulenumberAssignment_0_0 
     7296            { 
     7297            pushFollow(FOLLOW_rule__Rule__RulenumberAssignment_0_0_in_rule__Rule__Group_0__0__Impl4501); 
    69937298            rule__Rule__RulenumberAssignment_0_0(); 
    69947299 
     
    70137318        } 
    70147319        finally { 
    7015             if ( state.backtracking>0 ) { memoize(input, 121, rule__Rule__Group_0__0__Impl_StartIndex); } 
     7320            if ( state.backtracking>0 ) { memoize(input, 127, rule__Rule__Group_0__0__Impl_StartIndex); } 
    70167321 
    70177322                restoreStackSize(stackSize); 
     
    70247329 
    70257330    // $ANTLR start "rule__Rule__Group_0__1" 
    7026     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2076:1: rule__Rule__Group_0__1 : rule__Rule__Group_0__1__Impl rule__Rule__Group_0__2 ; 
     7331    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2173:1: rule__Rule__Group_0__1 : rule__Rule__Group_0__1__Impl rule__Rule__Group_0__2 ; 
    70277332    public final void rule__Rule__Group_0__1() throws RecognitionException { 
    70287333        int rule__Rule__Group_0__1_StartIndex = input.index(); 
     
    70317336             
    70327337        try { 
    7033             if ( state.backtracking>0 && alreadyParsedRule(input, 122) ) { return ; } 
    7034             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2080:1: ( rule__Rule__Group_0__1__Impl rule__Rule__Group_0__2 ) 
    7035             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2081:2: rule__Rule__Group_0__1__Impl rule__Rule__Group_0__2 
    7036             { 
    7037             pushFollow(FOLLOW_rule__Rule__Group_0__1__Impl_in_rule__Rule__Group_0__14331); 
     7338            if ( state.backtracking>0 && alreadyParsedRule(input, 128) ) { return ; } 
     7339            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2177:1: ( rule__Rule__Group_0__1__Impl rule__Rule__Group_0__2 ) 
     7340            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2178:2: rule__Rule__Group_0__1__Impl rule__Rule__Group_0__2 
     7341            { 
     7342            pushFollow(FOLLOW_rule__Rule__Group_0__1__Impl_in_rule__Rule__Group_0__14531); 
    70387343            rule__Rule__Group_0__1__Impl(); 
    70397344 
    70407345            state._fsp--; 
    70417346            if (state.failed) return ; 
    7042             pushFollow(FOLLOW_rule__Rule__Group_0__2_in_rule__Rule__Group_0__14334); 
     7347            pushFollow(FOLLOW_rule__Rule__Group_0__2_in_rule__Rule__Group_0__14534); 
    70437348            rule__Rule__Group_0__2(); 
    70447349 
     
    70547359        } 
    70557360        finally { 
    7056             if ( state.backtracking>0 ) { memoize(input, 122, rule__Rule__Group_0__1_StartIndex); } 
     7361            if ( state.backtracking>0 ) { memoize(input, 128, rule__Rule__Group_0__1_StartIndex); } 
    70577362 
    70587363                restoreStackSize(stackSize); 
     
    70657370 
    70667371    // $ANTLR start "rule__Rule__Group_0__1__Impl" 
    7067     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2088:1: rule__Rule__Group_0__1__Impl : ( ( rule__Rule__RulevariantAssignment_0_1 )? ) ; 
     7372    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2185:1: rule__Rule__Group_0__1__Impl : ( ( rule__Rule__RulevariantAssignment_0_1 )? ) ; 
    70687373    public final void rule__Rule__Group_0__1__Impl() throws RecognitionException { 
    70697374        int rule__Rule__Group_0__1__Impl_StartIndex = input.index(); 
     
    70727377             
    70737378        try { 
    7074             if ( state.backtracking>0 && alreadyParsedRule(input, 123) ) { return ; } 
    7075             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2092:1: ( ( ( rule__Rule__RulevariantAssignment_0_1 )? ) ) 
    7076             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2093:1: ( ( rule__Rule__RulevariantAssignment_0_1 )? ) 
    7077             { 
    7078             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2093:1: ( ( rule__Rule__RulevariantAssignment_0_1 )? ) 
    7079             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2094:1: ( rule__Rule__RulevariantAssignment_0_1 )? 
     7379            if ( state.backtracking>0 && alreadyParsedRule(input, 129) ) { return ; } 
     7380            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2189:1: ( ( ( rule__Rule__RulevariantAssignment_0_1 )? ) ) 
     7381            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2190:1: ( ( rule__Rule__RulevariantAssignment_0_1 )? ) 
     7382            { 
     7383            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2190:1: ( ( rule__Rule__RulevariantAssignment_0_1 )? ) 
     7384            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2191:1: ( rule__Rule__RulevariantAssignment_0_1 )? 
    70807385            { 
    70817386            if ( state.backtracking==0 ) { 
    70827387               before(grammarAccess.getRuleAccess().getRulevariantAssignment_0_1());  
    70837388            } 
    7084             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2095:1: ( rule__Rule__RulevariantAssignment_0_1 )? 
     7389            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2192:1: ( rule__Rule__RulevariantAssignment_0_1 )? 
    70857390            int alt28=2; 
    70867391            int LA28_0 = input.LA(1); 
     
    70917396            switch (alt28) { 
    70927397                case 1 : 
    7093                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2095:2: rule__Rule__RulevariantAssignment_0_1 
     7398                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2192:2: rule__Rule__RulevariantAssignment_0_1 
    70947399                    { 
    7095                     pushFollow(FOLLOW_rule__Rule__RulevariantAssignment_0_1_in_rule__Rule__Group_0__1__Impl4361); 
     7400                    pushFollow(FOLLOW_rule__Rule__RulevariantAssignment_0_1_in_rule__Rule__Group_0__1__Impl4561); 
    70967401                    rule__Rule__RulevariantAssignment_0_1(); 
    70977402 
     
    71197424        } 
    71207425        finally { 
    7121             if ( state.backtracking>0 ) { memoize(input, 123, rule__Rule__Group_0__1__Impl_StartIndex); } 
     7426            if ( state.backtracking>0 ) { memoize(input, 129, rule__Rule__Group_0__1__Impl_StartIndex); } 
    71227427 
    71237428                restoreStackSize(stackSize); 
     
    71307435 
    71317436    // $ANTLR start "rule__Rule__Group_0__2" 
    7132     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2105:1: rule__Rule__Group_0__2 : rule__Rule__Group_0__2__Impl ; 
     7437    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2202:1: rule__Rule__Group_0__2 : rule__Rule__Group_0__2__Impl ; 
    71337438    public final void rule__Rule__Group_0__2() throws RecognitionException { 
    71347439        int rule__Rule__Group_0__2_StartIndex = input.index(); 
     
    71377442             
    71387443        try { 
    7139             if ( state.backtracking>0 && alreadyParsedRule(input, 124) ) { return ; } 
    7140             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2109:1: ( rule__Rule__Group_0__2__Impl ) 
    7141             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2110:2: rule__Rule__Group_0__2__Impl 
    7142             { 
    7143             pushFollow(FOLLOW_rule__Rule__Group_0__2__Impl_in_rule__Rule__Group_0__24392); 
     7444            if ( state.backtracking>0 && alreadyParsedRule(input, 130) ) { return ; } 
     7445            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2206:1: ( rule__Rule__Group_0__2__Impl ) 
     7446            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2207:2: rule__Rule__Group_0__2__Impl 
     7447            { 
     7448            pushFollow(FOLLOW_rule__Rule__Group_0__2__Impl_in_rule__Rule__Group_0__24592); 
    71447449            rule__Rule__Group_0__2__Impl(); 
    71457450 
     
    71557460        } 
    71567461        finally { 
    7157             if ( state.backtracking>0 ) { memoize(input, 124, rule__Rule__Group_0__2_StartIndex); } 
     7462            if ( state.backtracking>0 ) { memoize(input, 130, rule__Rule__Group_0__2_StartIndex); } 
    71587463 
    71597464                restoreStackSize(stackSize); 
     
    71667471 
    71677472    // $ANTLR start "rule__Rule__Group_0__2__Impl" 
    7168     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2116:1: rule__Rule__Group_0__2__Impl : ( '.' ) ; 
     7473    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2213:1: rule__Rule__Group_0__2__Impl : ( '.' ) ; 
    71697474    public final void rule__Rule__Group_0__2__Impl() throws RecognitionException { 
    71707475        int rule__Rule__Group_0__2__Impl_StartIndex = input.index(); 
     
    71737478             
    71747479        try { 
    7175             if ( state.backtracking>0 && alreadyParsedRule(input, 125) ) { return ; } 
    7176             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2120:1: ( ( '.' ) ) 
    7177             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2121:1: ( '.' ) 
    7178             { 
    7179             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2121:1: ( '.' ) 
    7180             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2122:1: '.' 
     7480            if ( state.backtracking>0 && alreadyParsedRule(input, 131) ) { return ; } 
     7481            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2217:1: ( ( '.' ) ) 
     7482            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2218:1: ( '.' ) 
     7483            { 
     7484            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2218:1: ( '.' ) 
     7485            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2219:1: '.' 
    71817486            { 
    71827487            if ( state.backtracking==0 ) { 
    71837488               before(grammarAccess.getRuleAccess().getFullStopKeyword_0_2());  
    71847489            } 
    7185             match(input,28,FOLLOW_28_in_rule__Rule__Group_0__2__Impl4420); if (state.failed) return ; 
     7490            match(input,28,FOLLOW_28_in_rule__Rule__Group_0__2__Impl4620); if (state.failed) return ; 
    71867491            if ( state.backtracking==0 ) { 
    71877492               after(grammarAccess.getRuleAccess().getFullStopKeyword_0_2());  
     
    71997504        } 
    72007505        finally { 
    7201             if ( state.backtracking>0 ) { memoize(input, 125, rule__Rule__Group_0__2__Impl_StartIndex); } 
     7506            if ( state.backtracking>0 ) { memoize(input, 131, rule__Rule__Group_0__2__Impl_StartIndex); } 
    72027507 
    72037508                restoreStackSize(stackSize); 
     
    72107515 
    72117516    // $ANTLR start "rule__ExtRule__Group__0" 
    7212     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2141:1: rule__ExtRule__Group__0 : rule__ExtRule__Group__0__Impl rule__ExtRule__Group__1 ; 
     7517    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2238:1: rule__ExtRule__Group__0 : rule__ExtRule__Group__0__Impl rule__ExtRule__Group__1 ; 
    72137518    public final void rule__ExtRule__Group__0() throws RecognitionException { 
    72147519        int rule__ExtRule__Group__0_StartIndex = input.index(); 
     
    72177522             
    72187523        try { 
    7219             if ( state.backtracking>0 && alreadyParsedRule(input, 126) ) { return ; } 
    7220             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2145:1: ( rule__ExtRule__Group__0__Impl rule__ExtRule__Group__1 ) 
    7221             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2146:2: rule__ExtRule__Group__0__Impl rule__ExtRule__Group__1 
    7222             { 
    7223             pushFollow(FOLLOW_rule__ExtRule__Group__0__Impl_in_rule__ExtRule__Group__04457); 
     7524            if ( state.backtracking>0 && alreadyParsedRule(input, 132) ) { return ; } 
     7525            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2242:1: ( rule__ExtRule__Group__0__Impl rule__ExtRule__Group__1 ) 
     7526            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2243:2: rule__ExtRule__Group__0__Impl rule__ExtRule__Group__1 
     7527            { 
     7528            pushFollow(FOLLOW_rule__ExtRule__Group__0__Impl_in_rule__ExtRule__Group__04657); 
    72247529            rule__ExtRule__Group__0__Impl(); 
    72257530 
    72267531            state._fsp--; 
    72277532            if (state.failed) return ; 
    7228             pushFollow(FOLLOW_rule__ExtRule__Group__1_in_rule__ExtRule__Group__04460); 
     7533            pushFollow(FOLLOW_rule__ExtRule__Group__1_in_rule__ExtRule__Group__04660); 
    72297534            rule__ExtRule__Group__1(); 
    72307535 
     
    72407545        } 
    72417546        finally { 
    7242             if ( state.backtracking>0 ) { memoize(input, 126, rule__ExtRule__Group__0_StartIndex); } 
     7547            if ( state.backtracking>0 ) { memoize(input, 132, rule__ExtRule__Group__0_StartIndex); } 
    72437548 
    72447549                restoreStackSize(stackSize); 
     
    72517556 
    72527557    // $ANTLR start "rule__ExtRule__Group__0__Impl" 
    7253     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2153:1: rule__ExtRule__Group__0__Impl : ( ( rule__ExtRule__Group_0__0 )? ) ; 
     7558    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2250:1: rule__ExtRule__Group__0__Impl : ( ( rule__ExtRule__Group_0__0 )? ) ; 
    72547559    public final void rule__ExtRule__Group__0__Impl() throws RecognitionException { 
    72557560        int rule__ExtRule__Group__0__Impl_StartIndex = input.index(); 
     
    72587563             
    72597564        try { 
    7260             if ( state.backtracking>0 && alreadyParsedRule(input, 127) ) { return ; } 
    7261             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2157:1: ( ( ( rule__ExtRule__Group_0__0 )? ) ) 
    7262             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2158:1: ( ( rule__ExtRule__Group_0__0 )? ) 
    7263             { 
    7264             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2158:1: ( ( rule__ExtRule__Group_0__0 )? ) 
    7265             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2159:1: ( rule__ExtRule__Group_0__0 )? 
     7565            if ( state.backtracking>0 && alreadyParsedRule(input, 133) ) { return ; } 
     7566            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2254:1: ( ( ( rule__ExtRule__Group_0__0 )? ) ) 
     7567            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2255:1: ( ( rule__ExtRule__Group_0__0 )? ) 
     7568            { 
     7569            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2255:1: ( ( rule__ExtRule__Group_0__0 )? ) 
     7570            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2256:1: ( rule__ExtRule__Group_0__0 )? 
    72667571            { 
    72677572            if ( state.backtracking==0 ) { 
    72687573               before(grammarAccess.getExtRuleAccess().getGroup_0());  
    72697574            } 
    7270             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2160:1: ( rule__ExtRule__Group_0__0 )? 
     7575            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2257:1: ( rule__ExtRule__Group_0__0 )? 
    72717576            int alt29=2; 
    72727577            int LA29_0 = input.LA(1); 
     
    72777582            switch (alt29) { 
    72787583                case 1 : 
    7279                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2160:2: rule__ExtRule__Group_0__0 
     7584                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2257:2: rule__ExtRule__Group_0__0 
    72807585                    { 
    7281                     pushFollow(FOLLOW_rule__ExtRule__Group_0__0_in_rule__ExtRule__Group__0__Impl4487); 
     7586                    pushFollow(FOLLOW_rule__ExtRule__Group_0__0_in_rule__ExtRule__Group__0__Impl4687); 
    72827587                    rule__ExtRule__Group_0__0(); 
    72837588 
     
    73057610        } 
    73067611        finally { 
    7307             if ( state.backtracking>0 ) { memoize(input, 127, rule__ExtRule__Group__0__Impl_StartIndex); } 
     7612            if ( state.backtracking>0 ) { memoize(input, 133, rule__ExtRule__Group__0__Impl_StartIndex); } 
    73087613 
    73097614                restoreStackSize(stackSize); 
     
    73167621 
    73177622    // $ANTLR start "rule__ExtRule__Group__1" 
    7318     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2170:1: rule__ExtRule__Group__1 : rule__ExtRule__Group__1__Impl rule__ExtRule__Group__2 ; 
     7623    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2267:1: rule__ExtRule__Group__1 : rule__ExtRule__Group__1__Impl rule__ExtRule__Group__2 ; 
    73197624    public final void rule__ExtRule__Group__1() throws RecognitionException { 
    73207625        int rule__ExtRule__Group__1_StartIndex = input.index(); 
     
    73237628             
    73247629        try { 
    7325             if ( state.backtracking>0 && alreadyParsedRule(input, 128) ) { return ; } 
    7326             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2174:1: ( rule__ExtRule__Group__1__Impl rule__ExtRule__Group__2 ) 
    7327             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2175:2: rule__ExtRule__Group__1__Impl rule__ExtRule__Group__2 
    7328             { 
    7329             pushFollow(FOLLOW_rule__ExtRule__Group__1__Impl_in_rule__ExtRule__Group__14518); 
     7630            if ( state.backtracking>0 && alreadyParsedRule(input, 134) ) { return ; } 
     7631            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2271:1: ( rule__ExtRule__Group__1__Impl rule__ExtRule__Group__2 ) 
     7632            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2272:2: rule__ExtRule__Group__1__Impl rule__ExtRule__Group__2 
     7633            { 
     7634            pushFollow(FOLLOW_rule__ExtRule__Group__1__Impl_in_rule__ExtRule__Group__14718); 
    73307635            rule__ExtRule__Group__1__Impl(); 
    73317636 
    73327637            state._fsp--; 
    73337638            if (state.failed) return ; 
    7334             pushFollow(FOLLOW_rule__ExtRule__Group__2_in_rule__ExtRule__Group__14521); 
     7639            pushFollow(FOLLOW_rule__ExtRule__Group__2_in_rule__ExtRule__Group__14721); 
    73357640            rule__ExtRule__Group__2(); 
    73367641 
     
    73467651        } 
    73477652        finally { 
    7348             if ( state.backtracking>0 ) { memoize(input, 128, rule__ExtRule__Group__1_StartIndex); } 
     7653            if ( state.backtracking>0 ) { memoize(input, 134, rule__ExtRule__Group__1_StartIndex); } 
    73497654 
    73507655                restoreStackSize(stackSize); 
     
    73577662 
    73587663    // $ANTLR start "rule__ExtRule__Group__1__Impl" 
    7359     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2182:1: rule__ExtRule__Group__1__Impl : ( ( rule__ExtRule__NameAssignment_1 ) ) ; 
     7664    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2279:1: rule__ExtRule__Group__1__Impl : ( ( rule__ExtRule__NameAssignment_1 ) ) ; 
    73607665    public final void rule__ExtRule__Group__1__Impl() throws RecognitionException { 
    73617666        int rule__ExtRule__Group__1__Impl_StartIndex = input.index(); 
     
    73647669             
    73657670        try { 
    7366             if ( state.backtracking>0 && alreadyParsedRule(input, 129) ) { return ; } 
    7367             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2186:1: ( ( ( rule__ExtRule__NameAssignment_1 ) ) ) 
    7368             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2187:1: ( ( rule__ExtRule__NameAssignment_1 ) ) 
    7369             { 
    7370             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2187:1: ( ( rule__ExtRule__NameAssignment_1 ) ) 
    7371             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2188:1: ( rule__ExtRule__NameAssignment_1 ) 
     7671            if ( state.backtracking>0 && alreadyParsedRule(input, 135) ) { return ; } 
     7672            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2283:1: ( ( ( rule__ExtRule__NameAssignment_1 ) ) ) 
     7673            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2284:1: ( ( rule__ExtRule__NameAssignment_1 ) ) 
     7674            { 
     7675            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2284:1: ( ( rule__ExtRule__NameAssignment_1 ) ) 
     7676            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2285:1: ( rule__ExtRule__NameAssignment_1 ) 
    73727677            { 
    73737678            if ( state.backtracking==0 ) { 
    73747679               before(grammarAccess.getExtRuleAccess().getNameAssignment_1());  
    73757680            } 
    7376             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2189:1: ( rule__ExtRule__NameAssignment_1 ) 
    7377             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2189:2: rule__ExtRule__NameAssignment_1 
    7378             { 
    7379             pushFollow(FOLLOW_rule__ExtRule__NameAssignment_1_in_rule__ExtRule__Group__1__Impl4548); 
     7681            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2286:1: ( rule__ExtRule__NameAssignment_1 ) 
     7682            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2286:2: rule__ExtRule__NameAssignment_1 
     7683            { 
     7684            pushFollow(FOLLOW_rule__ExtRule__NameAssignment_1_in_rule__ExtRule__Group__1__Impl4748); 
    73807685            rule__ExtRule__NameAssignment_1(); 
    73817686 
     
    74007705        } 
    74017706        finally { 
    7402             if ( state.backtracking>0 ) { memoize(input, 129, rule__ExtRule__Group__1__Impl_StartIndex); } 
     7707            if ( state.backtracking>0 ) { memoize(input, 135, rule__ExtRule__Group__1__Impl_StartIndex); } 
    74037708 
    74047709                restoreStackSize(stackSize); 
     
    74117716 
    74127717    // $ANTLR start "rule__ExtRule__Group__2" 
    7413     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2199:1: rule__ExtRule__Group__2 : rule__ExtRule__Group__2__Impl rule__ExtRule__Group__3 ; 
     7718    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2296:1: rule__ExtRule__Group__2 : rule__ExtRule__Group__2__Impl rule__ExtRule__Group__3 ; 
    74147719    public final void rule__ExtRule__Group__2() throws RecognitionException { 
    74157720        int rule__ExtRule__Group__2_StartIndex = input.index(); 
     
    74187723             
    74197724        try { 
    7420             if ( state.backtracking>0 && alreadyParsedRule(input, 130) ) { return ; } 
    7421             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2203:1: ( rule__ExtRule__Group__2__Impl rule__ExtRule__Group__3 ) 
    7422             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2204:2: rule__ExtRule__Group__2__Impl rule__ExtRule__Group__3 
    7423             { 
    7424             pushFollow(FOLLOW_rule__ExtRule__Group__2__Impl_in_rule__ExtRule__Group__24578); 
     7725            if ( state.backtracking>0 && alreadyParsedRule(input, 136) ) { return ; } 
     7726            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2300:1: ( rule__ExtRule__Group__2__Impl rule__ExtRule__Group__3 ) 
     7727            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2301:2: rule__ExtRule__Group__2__Impl rule__ExtRule__Group__3 
     7728            { 
     7729            pushFollow(FOLLOW_rule__ExtRule__Group__2__Impl_in_rule__ExtRule__Group__24778); 
    74257730            rule__ExtRule__Group__2__Impl(); 
    74267731 
    74277732            state._fsp--; 
    74287733            if (state.failed) return ; 
    7429             pushFollow(FOLLOW_rule__ExtRule__Group__3_in_rule__ExtRule__Group__24581); 
     7734            pushFollow(FOLLOW_rule__ExtRule__Group__3_in_rule__ExtRule__Group__24781); 
    74307735            rule__ExtRule__Group__3(); 
    74317736 
     
    74417746        } 
    74427747        finally { 
    7443             if ( state.backtracking>0 ) { memoize(input, 130, rule__ExtRule__Group__2_StartIndex); } 
     7748            if ( state.backtracking>0 ) { memoize(input, 136, rule__ExtRule__Group__2_StartIndex); } 
    74447749 
    74457750                restoreStackSize(stackSize); 
     
    74527757 
    74537758    // $ANTLR start "rule__ExtRule__Group__2__Impl" 
    7454     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2211:1: rule__ExtRule__Group__2__Impl : ( ( rule__ExtRule__Group_2__0 ) ) ; 
     7759    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2308:1: rule__ExtRule__Group__2__Impl : ( ( rule__ExtRule__Group_2__0 ) ) ; 
    74557760    public final void rule__ExtRule__Group__2__Impl() throws RecognitionException { 
    74567761        int rule__ExtRule__Group__2__Impl_StartIndex = input.index(); 
     
    74597764             
    74607765        try { 
    7461             if ( state.backtracking>0 && alreadyParsedRule(input, 131) ) { return ; } 
    7462             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2215:1: ( ( ( rule__ExtRule__Group_2__0 ) ) ) 
    7463             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2216:1: ( ( rule__ExtRule__Group_2__0 ) ) 
    7464             { 
    7465             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2216:1: ( ( rule__ExtRule__Group_2__0 ) ) 
    7466             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2217:1: ( rule__ExtRule__Group_2__0 ) 
     7766            if ( state.backtracking>0 && alreadyParsedRule(input, 137) ) { return ; } 
     7767            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2312:1: ( ( ( rule__ExtRule__Group_2__0 ) ) ) 
     7768            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2313:1: ( ( rule__ExtRule__Group_2__0 ) ) 
     7769            { 
     7770            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2313:1: ( ( rule__ExtRule__Group_2__0 ) ) 
     7771            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2314:1: ( rule__ExtRule__Group_2__0 ) 
    74677772            { 
    74687773            if ( state.backtracking==0 ) { 
    74697774               before(grammarAccess.getExtRuleAccess().getGroup_2());  
    74707775            } 
    7471             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2218:1: ( rule__ExtRule__Group_2__0 ) 
    7472             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2218:2: rule__ExtRule__Group_2__0 
    7473             { 
    7474             pushFollow(FOLLOW_rule__ExtRule__Group_2__0_in_rule__ExtRule__Group__2__Impl4608); 
     7776            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2315:1: ( rule__ExtRule__Group_2__0 ) 
     7777            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2315:2: rule__ExtRule__Group_2__0 
     7778            { 
     7779            pushFollow(FOLLOW_rule__ExtRule__Group_2__0_in_rule__ExtRule__Group__2__Impl4808); 
    74757780            rule__ExtRule__Group_2__0(); 
    74767781 
     
    74957800        } 
    74967801        finally { 
    7497             if ( state.backtracking>0 ) { memoize(input, 131, rule__ExtRule__Group__2__Impl_StartIndex); } 
     7802            if ( state.backtracking>0 ) { memoize(input, 137, rule__ExtRule__Group__2__Impl_StartIndex); } 
    74987803 
    74997804                restoreStackSize(stackSize); 
     
    75067811 
    75077812    // $ANTLR start "rule__ExtRule__Group__3" 
    7508     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2228:1: rule__ExtRule__Group__3 : rule__ExtRule__Group__3__Impl rule__ExtRule__Group__4 ; 
     7813    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2325:1: rule__ExtRule__Group__3 : rule__ExtRule__Group__3__Impl rule__ExtRule__Group__4 ; 
    75097814    public final void rule__ExtRule__Group__3() throws RecognitionException { 
    75107815        int rule__ExtRule__Group__3_StartIndex = input.index(); 
     
    75137818             
    75147819        try { 
    7515             if ( state.backtracking>0 && alreadyParsedRule(input, 132) ) { return ; } 
    7516             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2232:1: ( rule__ExtRule__Group__3__Impl rule__ExtRule__Group__4 ) 
    7517             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2233:2: rule__ExtRule__Group__3__Impl rule__ExtRule__Group__4 
    7518             { 
    7519             pushFollow(FOLLOW_rule__ExtRule__Group__3__Impl_in_rule__ExtRule__Group__34638); 
     7820            if ( state.backtracking>0 && alreadyParsedRule(input, 138) ) { return ; } 
     7821            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2329:1: ( rule__ExtRule__Group__3__Impl rule__ExtRule__Group__4 ) 
     7822            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2330:2: rule__ExtRule__Group__3__Impl rule__ExtRule__Group__4 
     7823            { 
     7824            pushFollow(FOLLOW_rule__ExtRule__Group__3__Impl_in_rule__ExtRule__Group__34838); 
    75207825            rule__ExtRule__Group__3__Impl(); 
    75217826 
    75227827            state._fsp--; 
    75237828            if (state.failed) return ; 
    7524             pushFollow(FOLLOW_rule__ExtRule__Group__4_in_rule__ExtRule__Group__34641); 
     7829            pushFollow(FOLLOW_rule__ExtRule__Group__4_in_rule__ExtRule__Group__34841); 
    75257830            rule__ExtRule__Group__4(); 
    75267831 
     
    75367841        } 
    75377842        finally { 
    7538             if ( state.backtracking>0 ) { memoize(input, 132, rule__ExtRule__Group__3_StartIndex); } 
     7843            if ( state.backtracking>0 ) { memoize(input, 138, rule__ExtRule__Group__3_StartIndex); } 
    75397844 
    75407845                restoreStackSize(stackSize); 
     
    75477852 
    75487853    // $ANTLR start "rule__ExtRule__Group__3__Impl" 
    7549     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2240:1: rule__ExtRule__Group__3__Impl : ( '<-' ) ; 
     7854    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2337:1: rule__ExtRule__Group__3__Impl : ( '<-' ) ; 
    75507855    public final void rule__ExtRule__Group__3__Impl() throws RecognitionException { 
    75517856        int rule__ExtRule__Group__3__Impl_StartIndex = input.index(); 
     
    75547859             
    75557860        try { 
    7556             if ( state.backtracking>0 && alreadyParsedRule(input, 133) ) { return ; } 
    7557             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2244:1: ( ( '<-' ) ) 
    7558             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2245:1: ( '<-' ) 
    7559             { 
    7560             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2245:1: ( '<-' ) 
    7561             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2246:1: '<-' 
     7861            if ( state.backtracking>0 && alreadyParsedRule(input, 139) ) { return ; } 
     7862            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2341:1: ( ( '<-' ) ) 
     7863            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2342:1: ( '<-' ) 
     7864            { 
     7865            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2342:1: ( '<-' ) 
     7866            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2343:1: '<-' 
    75627867            { 
    75637868            if ( state.backtracking==0 ) { 
    75647869               before(grammarAccess.getExtRuleAccess().getLessThanSignHyphenMinusKeyword_3());  
    75657870            } 
    7566             match(input,29,FOLLOW_29_in_rule__ExtRule__Group__3__Impl4669); if (state.failed) return ; 
     7871            match(input,29,FOLLOW_29_in_rule__ExtRule__Group__3__Impl4869); if (state.failed) return ; 
    75677872            if ( state.backtracking==0 ) { 
    75687873               after(grammarAccess.getExtRuleAccess().getLessThanSignHyphenMinusKeyword_3());  
     
    75807885        } 
    75817886        finally { 
    7582             if ( state.backtracking>0 ) { memoize(input, 133, rule__ExtRule__Group__3__Impl_StartIndex); } 
     7887            if ( state.backtracking>0 ) { memoize(input, 139, rule__ExtRule__Group__3__Impl_StartIndex); } 
    75837888 
    75847889                restoreStackSize(stackSize); 
     
    75917896 
    75927897    // $ANTLR start "rule__ExtRule__Group__4" 
    7593     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2259:1: rule__ExtRule__Group__4 : rule__ExtRule__Group__4__Impl rule__ExtRule__Group__5 ; 
     7898    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2356:1: rule__ExtRule__Group__4 : rule__ExtRule__Group__4__Impl rule__ExtRule__Group__5 ; 
    75947899    public final void rule__ExtRule__Group__4() throws RecognitionException { 
    75957900        int rule__ExtRule__Group__4_StartIndex = input.index(); 
     
    75987903             
    75997904        try { 
    7600             if ( state.backtracking>0 && alreadyParsedRule(input, 134) ) { return ; } 
    7601             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2263:1: ( rule__ExtRule__Group__4__Impl rule__ExtRule__Group__5 ) 
    7602             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2264:2: rule__ExtRule__Group__4__Impl rule__ExtRule__Group__5 
    7603             { 
    7604             pushFollow(FOLLOW_rule__ExtRule__Group__4__Impl_in_rule__ExtRule__Group__44700); 
     7905            if ( state.backtracking>0 && alreadyParsedRule(input, 140) ) { return ; } 
     7906            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2360:1: ( rule__ExtRule__Group__4__Impl rule__ExtRule__Group__5 ) 
     7907            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2361:2: rule__ExtRule__Group__4__Impl rule__ExtRule__Group__5 
     7908            { 
     7909            pushFollow(FOLLOW_rule__ExtRule__Group__4__Impl_in_rule__ExtRule__Group__44900); 
    76057910            rule__ExtRule__Group__4__Impl(); 
    76067911 
    76077912            state._fsp--; 
    76087913            if (state.failed) return ; 
    7609             pushFollow(FOLLOW_rule__ExtRule__Group__5_in_rule__ExtRule__Group__44703); 
     7914            pushFollow(FOLLOW_rule__ExtRule__Group__5_in_rule__ExtRule__Group__44903); 
    76107915            rule__ExtRule__Group__5(); 
    76117916 
     
    76217926        } 
    76227927        finally { 
    7623             if ( state.backtracking>0 ) { memoize(input, 134, rule__ExtRule__Group__4_StartIndex); } 
     7928            if ( state.backtracking>0 ) { memoize(input, 140, rule__ExtRule__Group__4_StartIndex); } 
    76247929 
    76257930                restoreStackSize(stackSize); 
     
    76327937 
    76337938    // $ANTLR start "rule__ExtRule__Group__4__Impl" 
    7634     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2271:1: rule__ExtRule__Group__4__Impl : ( ( rule__ExtRule__Alternatives_4 )* ) ; 
     7939    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2368:1: rule__ExtRule__Group__4__Impl : ( ( rule__ExtRule__Alternatives_4 )* ) ; 
    76357940    public final void rule__ExtRule__Group__4__Impl() throws RecognitionException { 
    76367941        int rule__ExtRule__Group__4__Impl_StartIndex = input.index(); 
     
    76397944             
    76407945        try { 
    7641             if ( state.backtracking>0 && alreadyParsedRule(input, 135) ) { return ; } 
    7642             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2275:1: ( ( ( rule__ExtRule__Alternatives_4 )* ) ) 
    7643             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2276:1: ( ( rule__ExtRule__Alternatives_4 )* ) 
    7644             { 
    7645             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2276:1: ( ( rule__ExtRule__Alternatives_4 )* ) 
    7646             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2277:1: ( rule__ExtRule__Alternatives_4 )* 
     7946            if ( state.backtracking>0 && alreadyParsedRule(input, 141) ) { return ; } 
     7947            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2372:1: ( ( ( rule__ExtRule__Alternatives_4 )* ) ) 
     7948            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2373:1: ( ( rule__ExtRule__Alternatives_4 )* ) 
     7949            { 
     7950            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2373:1: ( ( rule__ExtRule__Alternatives_4 )* ) 
     7951            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2374:1: ( rule__ExtRule__Alternatives_4 )* 
    76477952            { 
    76487953            if ( state.backtracking==0 ) { 
    76497954               before(grammarAccess.getExtRuleAccess().getAlternatives_4());  
    76507955            } 
    7651             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2278:1: ( rule__ExtRule__Alternatives_4 )* 
     7956            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2375:1: ( rule__ExtRule__Alternatives_4 )* 
    76527957            loop30: 
    76537958            do { 
     
    76587963                    int LA30_2 = input.LA(2); 
    76597964 
    7660                     if ( (LA30_2==EOF||(LA30_2>=RULE_ID && LA30_2<=RULE_INT)||LA30_2==RULE_COLON||(LA30_2>=13 && LA30_2<=16)||(LA30_2>=18 && LA30_2<=21)||LA30_2==23) ) { 
     7965                    if ( (LA30_2==EOF||(LA30_2>=RULE_ID && LA30_2<=RULE_SECTIONHEADER)||(LA30_2>=RULE_STRING && LA30_2<=RULE_INT)||LA30_2==RULE_COLON||(LA30_2>=13 && LA30_2<=16)||(LA30_2>=18 && LA30_2<=21)||LA30_2==23) ) { 
    76617966                        alt30=1; 
    76627967                    } 
     
    76647969                        int LA30_4 = input.LA(3); 
    76657970 
    7666                         if ( (LA30_4==EOF||(LA30_4>=RULE_ID && LA30_4<=RULE_STRING)||LA30_4==RULE_COLON||(LA30_4>=13 && LA30_4<=21)||LA30_4==23) ) { 
    7667                             alt30=1; 
    7668                         } 
    7669                         else if ( (LA30_4==RULE_INT) ) { 
     7971                        if ( (LA30_4==RULE_INT) ) { 
    76707972                            int LA30_5 = input.LA(4); 
    76717973 
     
    76757977 
    76767978 
     7979                        } 
     7980                        else if ( (LA30_4==EOF||(LA30_4>=RULE_ID && LA30_4<=RULE_SECTIONHEADER)||LA30_4==RULE_STRING||LA30_4==RULE_COLON||(LA30_4>=13 && LA30_4<=21)||LA30_4==23) ) { 
     7981                            alt30=1; 
    76777982                        } 
    76787983 
     
    76897994                switch (alt30) { 
    76907995                case 1 : 
    7691                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2278:2: rule__ExtRule__Alternatives_4 
     7996                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2375:2: rule__ExtRule__Alternatives_4 
    76927997                    { 
    7693                     pushFollow(FOLLOW_rule__ExtRule__Alternatives_4_in_rule__ExtRule__Group__4__Impl4730); 
     7998                    pushFollow(FOLLOW_rule__ExtRule__Alternatives_4_in_rule__ExtRule__Group__4__Impl4930); 
    76947999                    rule__ExtRule__Alternatives_4(); 
    76958000 
     
    77208025        } 
    77218026        finally { 
    7722             if ( state.backtracking>0 ) { memoize(input, 135, rule__ExtRule__Group__4__Impl_StartIndex); } 
     8027            if ( state.backtracking>0 ) { memoize(input, 141, rule__ExtRule__Group__4__Impl_StartIndex); } 
    77238028 
    77248029                restoreStackSize(stackSize); 
     
    77318036 
    77328037    // $ANTLR start "rule__ExtRule__Group__5" 
    7733     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2288:1: rule__ExtRule__Group__5 : rule__ExtRule__Group__5__Impl ; 
     8038    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2385:1: rule__ExtRule__Group__5 : rule__ExtRule__Group__5__Impl ; 
    77348039    public final void rule__ExtRule__Group__5() throws RecognitionException { 
    77358040        int rule__ExtRule__Group__5_StartIndex = input.index(); 
     
    77388043             
    77398044        try { 
    7740             if ( state.backtracking>0 && alreadyParsedRule(input, 136) ) { return ; } 
    7741             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2292:1: ( rule__ExtRule__Group__5__Impl ) 
    7742             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2293:2: rule__ExtRule__Group__5__Impl 
    7743             { 
    7744             pushFollow(FOLLOW_rule__ExtRule__Group__5__Impl_in_rule__ExtRule__Group__54761); 
     8045            if ( state.backtracking>0 && alreadyParsedRule(input, 142) ) { return ; } 
     8046            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2389:1: ( rule__ExtRule__Group__5__Impl ) 
     8047            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2390:2: rule__ExtRule__Group__5__Impl 
     8048            { 
     8049            pushFollow(FOLLOW_rule__ExtRule__Group__5__Impl_in_rule__ExtRule__Group__54961); 
    77458050            rule__ExtRule__Group__5__Impl(); 
    77468051 
     
    77568061        } 
    77578062        finally { 
    7758             if ( state.backtracking>0 ) { memoize(input, 136, rule__ExtRule__Group__5_StartIndex); } 
     8063            if ( state.backtracking>0 ) { memoize(input, 142, rule__ExtRule__Group__5_StartIndex); } 
    77598064 
    77608065                restoreStackSize(stackSize); 
     
    77678072 
    77688073    // $ANTLR start "rule__ExtRule__Group__5__Impl" 
    7769     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2299:1: rule__ExtRule__Group__5__Impl : ( ( ';' )? ) ; 
     8074    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2396:1: rule__ExtRule__Group__5__Impl : ( ( ';' )? ) ; 
    77708075    public final void rule__ExtRule__Group__5__Impl() throws RecognitionException { 
    77718076        int rule__ExtRule__Group__5__Impl_StartIndex = input.index(); 
     
    77748079             
    77758080        try { 
    7776             if ( state.backtracking>0 && alreadyParsedRule(input, 137) ) { return ; } 
    7777             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2303:1: ( ( ( ';' )? ) ) 
    7778             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2304:1: ( ( ';' )? ) 
    7779             { 
    7780             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2304:1: ( ( ';' )? ) 
    7781             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2305:1: ( ';' )? 
     8081            if ( state.backtracking>0 && alreadyParsedRule(input, 143) ) { return ; } 
     8082            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2400:1: ( ( ( ';' )? ) ) 
     8083            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2401:1: ( ( ';' )? ) 
     8084            { 
     8085            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2401:1: ( ( ';' )? ) 
     8086            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2402:1: ( ';' )? 
    77828087            { 
    77838088            if ( state.backtracking==0 ) { 
    77848089               before(grammarAccess.getExtRuleAccess().getSemicolonKeyword_5());  
    77858090            } 
    7786             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2306:1: ( ';' )? 
     8091            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2403:1: ( ';' )? 
    77878092            int alt31=2; 
    77888093            int LA31_0 = input.LA(1); 
     
    77938098            switch (alt31) { 
    77948099                case 1 : 
    7795                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2307:2: ';' 
     8100                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2404:2: ';' 
    77968101                    { 
    7797                     match(input,23,FOLLOW_23_in_rule__ExtRule__Group__5__Impl4790); if (state.failed) return ; 
     8102                    match(input,23,FOLLOW_23_in_rule__ExtRule__Group__5__Impl4990); if (state.failed) return ; 
    77988103 
    77998104                    } 
     
    78178122        } 
    78188123        finally { 
    7819             if ( state.backtracking>0 ) { memoize(input, 137, rule__ExtRule__Group__5__Impl_StartIndex); } 
     8124            if ( state.backtracking>0 ) { memoize(input, 143, rule__ExtRule__Group__5__Impl_StartIndex); } 
    78208125 
    78218126                restoreStackSize(stackSize); 
     
    78288133 
    78298134    // $ANTLR start "rule__ExtRule__Group_0__0" 
    7830     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2330:1: rule__ExtRule__Group_0__0 : rule__ExtRule__Group_0__0__Impl rule__ExtRule__Group_0__1 ; 
     8135    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2427:1: rule__ExtRule__Group_0__0 : rule__ExtRule__Group_0__0__Impl rule__ExtRule__Group_0__1 ; 
    78318136    public final void rule__ExtRule__Group_0__0() throws RecognitionException { 
    78328137        int rule__ExtRule__Group_0__0_StartIndex = input.index(); 
     
    78358140             
    78368141        try { 
    7837             if ( state.backtracking>0 && alreadyParsedRule(input, 138) ) { return ; } 
    7838             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2334:1: ( rule__ExtRule__Group_0__0__Impl rule__ExtRule__Group_0__1 ) 
    7839             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2335:2: rule__ExtRule__Group_0__0__Impl rule__ExtRule__Group_0__1 
    7840             { 
    7841             pushFollow(FOLLOW_rule__ExtRule__Group_0__0__Impl_in_rule__ExtRule__Group_0__04835); 
     8142            if ( state.backtracking>0 && alreadyParsedRule(input, 144) ) { return ; } 
     8143            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2431:1: ( rule__ExtRule__Group_0__0__Impl rule__ExtRule__Group_0__1 ) 
     8144            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2432:2: rule__ExtRule__Group_0__0__Impl rule__ExtRule__Group_0__1 
     8145            { 
     8146            pushFollow(FOLLOW_rule__ExtRule__Group_0__0__Impl_in_rule__ExtRule__Group_0__05035); 
    78428147            rule__ExtRule__Group_0__0__Impl(); 
    78438148 
    78448149            state._fsp--; 
    78458150            if (state.failed) return ; 
    7846             pushFollow(FOLLOW_rule__ExtRule__Group_0__1_in_rule__ExtRule__Group_0__04838); 
     8151            pushFollow(FOLLOW_rule__ExtRule__Group_0__1_in_rule__ExtRule__Group_0__05038); 
    78478152            rule__ExtRule__Group_0__1(); 
    78488153 
     
    78588163        } 
    78598164        finally { 
    7860             if ( state.backtracking>0 ) { memoize(input, 138, rule__ExtRule__Group_0__0_StartIndex); } 
     8165            if ( state.backtracking>0 ) { memoize(input, 144, rule__ExtRule__Group_0__0_StartIndex); } 
    78618166 
    78628167                restoreStackSize(stackSize); 
     
    78698174 
    78708175    // $ANTLR start "rule__ExtRule__Group_0__0__Impl" 
    7871     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2342:1: rule__ExtRule__Group_0__0__Impl : ( ( rule__ExtRule__RulenumberAssignment_0_0 ) ) ; 
     8176    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2439:1: rule__ExtRule__Group_0__0__Impl : ( ( rule__ExtRule__RulenumberAssignment_0_0 ) ) ; 
    78728177    public final void rule__ExtRule__Group_0__0__Impl() throws RecognitionException { 
    78738178        int rule__ExtRule__Group_0__0__Impl_StartIndex = input.index(); 
     
    78768181             
    78778182        try { 
    7878             if ( state.backtracking>0 && alreadyParsedRule(input, 139) ) { return ; } 
    7879             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2346:1: ( ( ( rule__ExtRule__RulenumberAssignment_0_0 ) ) ) 
    7880             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2347:1: ( ( rule__ExtRule__RulenumberAssignment_0_0 ) ) 
    7881             { 
    7882             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2347:1: ( ( rule__ExtRule__RulenumberAssignment_0_0 ) ) 
    7883             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2348:1: ( rule__ExtRule__RulenumberAssignment_0_0 ) 
     8183            if ( state.backtracking>0 && alreadyParsedRule(input, 145) ) { return ; } 
     8184            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2443:1: ( ( ( rule__ExtRule__RulenumberAssignment_0_0 ) ) ) 
     8185            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2444:1: ( ( rule__ExtRule__RulenumberAssignment_0_0 ) ) 
     8186            { 
     8187            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2444:1: ( ( rule__ExtRule__RulenumberAssignment_0_0 ) ) 
     8188            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2445:1: ( rule__ExtRule__RulenumberAssignment_0_0 ) 
    78848189            { 
    78858190            if ( state.backtracking==0 ) { 
    78868191               before(grammarAccess.getExtRuleAccess().getRulenumberAssignment_0_0());  
    78878192            } 
    7888             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2349:1: ( rule__ExtRule__RulenumberAssignment_0_0 ) 
    7889             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2349:2: rule__ExtRule__RulenumberAssignment_0_0 
    7890             { 
    7891             pushFollow(FOLLOW_rule__ExtRule__RulenumberAssignment_0_0_in_rule__ExtRule__Group_0__0__Impl4865); 
     8193            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2446:1: ( rule__ExtRule__RulenumberAssignment_0_0 ) 
     8194            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2446:2: rule__ExtRule__RulenumberAssignment_0_0 
     8195            { 
     8196            pushFollow(FOLLOW_rule__ExtRule__RulenumberAssignment_0_0_in_rule__ExtRule__Group_0__0__Impl5065); 
    78928197            rule__ExtRule__RulenumberAssignment_0_0(); 
    78938198 
     
    79128217        } 
    79138218        finally { 
    7914             if ( state.backtracking>0 ) { memoize(input, 139, rule__ExtRule__Group_0__0__Impl_StartIndex); } 
     8219            if ( state.backtracking>0 ) { memoize(input, 145, rule__ExtRule__Group_0__0__Impl_StartIndex); } 
    79158220 
    79168221                restoreStackSize(stackSize); 
     
    79238228 
    79248229    // $ANTLR start "rule__ExtRule__Group_0__1" 
    7925     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2359:1: rule__ExtRule__Group_0__1 : rule__ExtRule__Group_0__1__Impl rule__ExtRule__Group_0__2 ; 
     8230    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2456:1: rule__ExtRule__Group_0__1 : rule__ExtRule__Group_0__1__Impl rule__ExtRule__Group_0__2 ; 
    79268231    public final void rule__ExtRule__Group_0__1() throws RecognitionException { 
    79278232        int rule__ExtRule__Group_0__1_StartIndex = input.index(); 
     
    79308235             
    79318236        try { 
    7932             if ( state.backtracking>0 && alreadyParsedRule(input, 140) ) { return ; } 
    7933             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2363:1: ( rule__ExtRule__Group_0__1__Impl rule__ExtRule__Group_0__2 ) 
    7934             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2364:2: rule__ExtRule__Group_0__1__Impl rule__ExtRule__Group_0__2 
    7935             { 
    7936             pushFollow(FOLLOW_rule__ExtRule__Group_0__1__Impl_in_rule__ExtRule__Group_0__14895); 
     8237            if ( state.backtracking>0 && alreadyParsedRule(input, 146) ) { return ; } 
     8238            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2460:1: ( rule__ExtRule__Group_0__1__Impl rule__ExtRule__Group_0__2 ) 
     8239            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2461:2: rule__ExtRule__Group_0__1__Impl rule__ExtRule__Group_0__2 
     8240            { 
     8241            pushFollow(FOLLOW_rule__ExtRule__Group_0__1__Impl_in_rule__ExtRule__Group_0__15095); 
    79378242            rule__ExtRule__Group_0__1__Impl(); 
    79388243 
    79398244            state._fsp--; 
    79408245            if (state.failed) return ; 
    7941             pushFollow(FOLLOW_rule__ExtRule__Group_0__2_in_rule__ExtRule__Group_0__14898); 
     8246            pushFollow(FOLLOW_rule__ExtRule__Group_0__2_in_rule__ExtRule__Group_0__15098); 
    79428247            rule__ExtRule__Group_0__2(); 
    79438248 
     
    79538258        } 
    79548259        finally { 
    7955             if ( state.backtracking>0 ) { memoize(input, 140, rule__ExtRule__Group_0__1_StartIndex); } 
     8260            if ( state.backtracking>0 ) { memoize(input, 146, rule__ExtRule__Group_0__1_StartIndex); } 
    79568261 
    79578262                restoreStackSize(stackSize); 
     
    79648269 
    79658270    // $ANTLR start "rule__ExtRule__Group_0__1__Impl" 
    7966     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2371:1: rule__ExtRule__Group_0__1__Impl : ( ( rule__ExtRule__RulevariantAssignment_0_1 )? ) ; 
     8271    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2468:1: rule__ExtRule__Group_0__1__Impl : ( ( rule__ExtRule__RulevariantAssignment_0_1 )? ) ; 
    79678272    public final void rule__ExtRule__Group_0__1__Impl() throws RecognitionException { 
    79688273        int rule__ExtRule__Group_0__1__Impl_StartIndex = input.index(); 
     
    79718276             
    79728277        try { 
    7973             if ( state.backtracking>0 && alreadyParsedRule(input, 141) ) { return ; } 
    7974             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2375:1: ( ( ( rule__ExtRule__RulevariantAssignment_0_1 )? ) ) 
    7975             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2376:1: ( ( rule__ExtRule__RulevariantAssignment_0_1 )? ) 
    7976             { 
    7977             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2376:1: ( ( rule__ExtRule__RulevariantAssignment_0_1 )? ) 
    7978             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2377:1: ( rule__ExtRule__RulevariantAssignment_0_1 )? 
     8278            if ( state.backtracking>0 && alreadyParsedRule(input, 147) ) { return ; } 
     8279            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2472:1: ( ( ( rule__ExtRule__RulevariantAssignment_0_1 )? ) ) 
     8280            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2473:1: ( ( rule__ExtRule__RulevariantAssignment_0_1 )? ) 
     8281            { 
     8282            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2473:1: ( ( rule__ExtRule__RulevariantAssignment_0_1 )? ) 
     8283            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2474:1: ( rule__ExtRule__RulevariantAssignment_0_1 )? 
    79798284            { 
    79808285            if ( state.backtracking==0 ) { 
    79818286               before(grammarAccess.getExtRuleAccess().getRulevariantAssignment_0_1());  
    79828287            } 
    7983             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2378:1: ( rule__ExtRule__RulevariantAssignment_0_1 )? 
     8288            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2475:1: ( rule__ExtRule__RulevariantAssignment_0_1 )? 
    79848289            int alt32=2; 
    79858290            int LA32_0 = input.LA(1); 
     
    79908295            switch (alt32) { 
    79918296                case 1 : 
    7992                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2378:2: rule__ExtRule__RulevariantAssignment_0_1 
     8297                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2475:2: rule__ExtRule__RulevariantAssignment_0_1 
    79938298                    { 
    7994                     pushFollow(FOLLOW_rule__ExtRule__RulevariantAssignment_0_1_in_rule__ExtRule__Group_0__1__Impl4925); 
     8299                    pushFollow(FOLLOW_rule__ExtRule__RulevariantAssignment_0_1_in_rule__ExtRule__Group_0__1__Impl5125); 
    79958300                    rule__ExtRule__RulevariantAssignment_0_1(); 
    79968301 
     
    80188323        } 
    80198324        finally { 
    8020             if ( state.backtracking>0 ) { memoize(input, 141, rule__ExtRule__Group_0__1__Impl_StartIndex); } 
     8325            if ( state.backtracking>0 ) { memoize(input, 147, rule__ExtRule__Group_0__1__Impl_StartIndex); } 
    80218326 
    80228327                restoreStackSize(stackSize); 
     
    80298334 
    80308335    // $ANTLR start "rule__ExtRule__Group_0__2" 
    8031     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2388:1: rule__ExtRule__Group_0__2 : rule__ExtRule__Group_0__2__Impl ; 
     8336    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2485:1: rule__ExtRule__Group_0__2 : rule__ExtRule__Group_0__2__Impl ; 
    80328337    public final void rule__ExtRule__Group_0__2() throws RecognitionException { 
    80338338        int rule__ExtRule__Group_0__2_StartIndex = input.index(); 
     
    80368341             
    80378342        try { 
    8038             if ( state.backtracking>0 && alreadyParsedRule(input, 142) ) { return ; } 
    8039             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2392:1: ( rule__ExtRule__Group_0__2__Impl ) 
    8040             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2393:2: rule__ExtRule__Group_0__2__Impl 
    8041             { 
    8042             pushFollow(FOLLOW_rule__ExtRule__Group_0__2__Impl_in_rule__ExtRule__Group_0__24956); 
     8343            if ( state.backtracking>0 && alreadyParsedRule(input, 148) ) { return ; } 
     8344            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2489:1: ( rule__ExtRule__Group_0__2__Impl ) 
     8345            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2490:2: rule__ExtRule__Group_0__2__Impl 
     8346            { 
     8347            pushFollow(FOLLOW_rule__ExtRule__Group_0__2__Impl_in_rule__ExtRule__Group_0__25156); 
    80438348            rule__ExtRule__Group_0__2__Impl(); 
    80448349 
     
    80548359        } 
    80558360        finally { 
    8056             if ( state.backtracking>0 ) { memoize(input, 142, rule__ExtRule__Group_0__2_StartIndex); } 
     8361            if ( state.backtracking>0 ) { memoize(input, 148, rule__ExtRule__Group_0__2_StartIndex); } 
    80578362 
    80588363                restoreStackSize(stackSize); 
     
    80658370 
    80668371    // $ANTLR start "rule__ExtRule__Group_0__2__Impl" 
    8067     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2399:1: rule__ExtRule__Group_0__2__Impl : ( '.' ) ; 
     8372    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2496:1: rule__ExtRule__Group_0__2__Impl : ( '.' ) ; 
    80688373    public final void rule__ExtRule__Group_0__2__Impl() throws RecognitionException { 
    80698374        int rule__ExtRule__Group_0__2__Impl_StartIndex = input.index(); 
     
    80728377             
    80738378        try { 
    8074             if ( state.backtracking>0 && alreadyParsedRule(input, 143) ) { return ; } 
    8075             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2403:1: ( ( '.' ) ) 
    8076             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2404:1: ( '.' ) 
    8077             { 
    8078             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2404:1: ( '.' ) 
    8079             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2405:1: '.' 
     8379            if ( state.backtracking>0 && alreadyParsedRule(input, 149) ) { return ; } 
     8380            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2500:1: ( ( '.' ) ) 
     8381            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2501:1: ( '.' ) 
     8382            { 
     8383            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2501:1: ( '.' ) 
     8384            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2502:1: '.' 
    80808385            { 
    80818386            if ( state.backtracking==0 ) { 
    80828387               before(grammarAccess.getExtRuleAccess().getFullStopKeyword_0_2());  
    80838388            } 
    8084             match(input,28,FOLLOW_28_in_rule__ExtRule__Group_0__2__Impl4984); if (state.failed) return ; 
     8389            match(input,28,FOLLOW_28_in_rule__ExtRule__Group_0__2__Impl5184); if (state.failed) return ; 
    80858390            if ( state.backtracking==0 ) { 
    80868391               after(grammarAccess.getExtRuleAccess().getFullStopKeyword_0_2());  
     
    80988403        } 
    80998404        finally { 
    8100             if ( state.backtracking>0 ) { memoize(input, 143, rule__ExtRule__Group_0__2__Impl_StartIndex); } 
     8405            if ( state.backtracking>0 ) { memoize(input, 149, rule__ExtRule__Group_0__2__Impl_StartIndex); } 
    81018406 
    81028407                restoreStackSize(stackSize); 
     
    81098414 
    81108415    // $ANTLR start "rule__ExtRule__Group_2__0" 
    8111     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2424:1: rule__ExtRule__Group_2__0 : rule__ExtRule__Group_2__0__Impl rule__ExtRule__Group_2__1 ; 
     8416    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2521:1: rule__ExtRule__Group_2__0 : rule__ExtRule__Group_2__0__Impl rule__ExtRule__Group_2__1 ; 
    81128417    public final void rule__ExtRule__Group_2__0() throws RecognitionException { 
    81138418        int rule__ExtRule__Group_2__0_StartIndex = input.index(); 
     
    81168421             
    81178422        try { 
    8118             if ( state.backtracking>0 && alreadyParsedRule(input, 144) ) { return ; } 
    8119             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2428:1: ( rule__ExtRule__Group_2__0__Impl rule__ExtRule__Group_2__1 ) 
    8120             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2429:2: rule__ExtRule__Group_2__0__Impl rule__ExtRule__Group_2__1 
    8121             { 
    8122             pushFollow(FOLLOW_rule__ExtRule__Group_2__0__Impl_in_rule__ExtRule__Group_2__05021); 
     8423            if ( state.backtracking>0 && alreadyParsedRule(input, 150) ) { return ; } 
     8424            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2525:1: ( rule__ExtRule__Group_2__0__Impl rule__ExtRule__Group_2__1 ) 
     8425            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2526:2: rule__ExtRule__Group_2__0__Impl rule__ExtRule__Group_2__1 
     8426            { 
     8427            pushFollow(FOLLOW_rule__ExtRule__Group_2__0__Impl_in_rule__ExtRule__Group_2__05221); 
    81238428            rule__ExtRule__Group_2__0__Impl(); 
    81248429 
    81258430            state._fsp--; 
    81268431            if (state.failed) return ; 
    8127             pushFollow(FOLLOW_rule__ExtRule__Group_2__1_in_rule__ExtRule__Group_2__05024); 
     8432            pushFollow(FOLLOW_rule__ExtRule__Group_2__1_in_rule__ExtRule__Group_2__05224); 
    81288433            rule__ExtRule__Group_2__1(); 
    81298434 
     
    81398444        } 
    81408445        finally { 
    8141             if ( state.backtracking>0 ) { memoize(input, 144, rule__ExtRule__Group_2__0_StartIndex); } 
     8446            if ( state.backtracking>0 ) { memoize(input, 150, rule__ExtRule__Group_2__0_StartIndex); } 
    81428447 
    81438448                restoreStackSize(stackSize); 
     
    81508455 
    81518456    // $ANTLR start "rule__ExtRule__Group_2__0__Impl" 
    8152     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2436:1: rule__ExtRule__Group_2__0__Impl : ( '(' ) ; 
     8457    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2533:1: rule__ExtRule__Group_2__0__Impl : ( '(' ) ; 
    81538458    public final void rule__ExtRule__Group_2__0__Impl() throws RecognitionException { 
    81548459        int rule__ExtRule__Group_2__0__Impl_StartIndex = input.index(); 
     
    81578462             
    81588463        try { 
    8159             if ( state.backtracking>0 && alreadyParsedRule(input, 145) ) { return ; } 
    8160             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2440:1: ( ( '(' ) ) 
    8161             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2441:1: ( '(' ) 
    8162             { 
    8163             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2441:1: ( '(' ) 
    8164             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2442:1: '(' 
     8464            if ( state.backtracking>0 && alreadyParsedRule(input, 151) ) { return ; } 
     8465            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2537:1: ( ( '(' ) ) 
     8466            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2538:1: ( '(' ) 
     8467            { 
     8468            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2538:1: ( '(' ) 
     8469            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2539:1: '(' 
    81658470            { 
    81668471            if ( state.backtracking==0 ) { 
    81678472               before(grammarAccess.getExtRuleAccess().getLeftParenthesisKeyword_2_0());  
    81688473            } 
    8169             match(input,17,FOLLOW_17_in_rule__ExtRule__Group_2__0__Impl5052); if (state.failed) return ; 
     8474            match(input,17,FOLLOW_17_in_rule__ExtRule__Group_2__0__Impl5252); if (state.failed) return ; 
    81708475            if ( state.backtracking==0 ) { 
    81718476               after(grammarAccess.getExtRuleAccess().getLeftParenthesisKeyword_2_0());  
     
    81838488        } 
    81848489        finally { 
    8185             if ( state.backtracking>0 ) { memoize(input, 145, rule__ExtRule__Group_2__0__Impl_StartIndex); } 
     8490            if ( state.backtracking>0 ) { memoize(input, 151, rule__ExtRule__Group_2__0__Impl_StartIndex); } 
    81868491 
    81878492                restoreStackSize(stackSize); 
     
    81948499 
    81958500    // $ANTLR start "rule__ExtRule__Group_2__1" 
    8196     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2455:1: rule__ExtRule__Group_2__1 : rule__ExtRule__Group_2__1__Impl rule__ExtRule__Group_2__2 ; 
     8501    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2552:1: rule__ExtRule__Group_2__1 : rule__ExtRule__Group_2__1__Impl rule__ExtRule__Group_2__2 ; 
    81978502    public final void rule__ExtRule__Group_2__1() throws RecognitionException { 
    81988503        int rule__ExtRule__Group_2__1_StartIndex = input.index(); 
     
    82018506             
    82028507        try { 
    8203             if ( state.backtracking>0 && alreadyParsedRule(input, 146) ) { return ; } 
    8204             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2459:1: ( rule__ExtRule__Group_2__1__Impl rule__ExtRule__Group_2__2 ) 
    8205             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2460:2: rule__ExtRule__Group_2__1__Impl rule__ExtRule__Group_2__2 
    8206             { 
    8207             pushFollow(FOLLOW_rule__ExtRule__Group_2__1__Impl_in_rule__ExtRule__Group_2__15083); 
     8508            if ( state.backtracking>0 && alreadyParsedRule(input, 152) ) { return ; } 
     8509            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2556:1: ( rule__ExtRule__Group_2__1__Impl rule__ExtRule__Group_2__2 ) 
     8510            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2557:2: rule__ExtRule__Group_2__1__Impl rule__ExtRule__Group_2__2 
     8511            { 
     8512            pushFollow(FOLLOW_rule__ExtRule__Group_2__1__Impl_in_rule__ExtRule__Group_2__15283); 
    82088513            rule__ExtRule__Group_2__1__Impl(); 
    82098514 
    82108515            state._fsp--; 
    82118516            if (state.failed) return ; 
    8212             pushFollow(FOLLOW_rule__ExtRule__Group_2__2_in_rule__ExtRule__Group_2__15086); 
     8517            pushFollow(FOLLOW_rule__ExtRule__Group_2__2_in_rule__ExtRule__Group_2__15286); 
    82138518            rule__ExtRule__Group_2__2(); 
    82148519 
     
    82248529        } 
    82258530        finally { 
    8226             if ( state.backtracking>0 ) { memoize(input, 146, rule__ExtRule__Group_2__1_StartIndex); } 
     8531            if ( state.backtracking>0 ) { memoize(input, 152, rule__ExtRule__Group_2__1_StartIndex); } 
    82278532 
    82288533                restoreStackSize(stackSize); 
     
    82358540 
    82368541    // $ANTLR start "rule__ExtRule__Group_2__1__Impl" 
    8237     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2467:1: rule__ExtRule__Group_2__1__Impl : ( ( rule__ExtRule__RuleextAssignment_2_1 ) ) ; 
     8542    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2564:1: rule__ExtRule__Group_2__1__Impl : ( ( rule__ExtRule__RuleextAssignment_2_1 ) ) ; 
    82388543    public final void rule__ExtRule__Group_2__1__Impl() throws RecognitionException { 
    82398544        int rule__ExtRule__Group_2__1__Impl_StartIndex = input.index(); 
     
    82428547             
    82438548        try { 
    8244             if ( state.backtracking>0 && alreadyParsedRule(input, 147) ) { return ; } 
    8245             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2471:1: ( ( ( rule__ExtRule__RuleextAssignment_2_1 ) ) ) 
    8246             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2472:1: ( ( rule__ExtRule__RuleextAssignment_2_1 ) ) 
    8247             { 
    8248             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2472:1: ( ( rule__ExtRule__RuleextAssignment_2_1 ) ) 
    8249             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2473:1: ( rule__ExtRule__RuleextAssignment_2_1 ) 
     8549            if ( state.backtracking>0 && alreadyParsedRule(input, 153) ) { return ; } 
     8550            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2568:1: ( ( ( rule__ExtRule__RuleextAssignment_2_1 ) ) ) 
     8551            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2569:1: ( ( rule__ExtRule__RuleextAssignment_2_1 ) ) 
     8552            { 
     8553            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2569:1: ( ( rule__ExtRule__RuleextAssignment_2_1 ) ) 
     8554            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2570:1: ( rule__ExtRule__RuleextAssignment_2_1 ) 
    82508555            { 
    82518556            if ( state.backtracking==0 ) { 
    82528557               before(grammarAccess.getExtRuleAccess().getRuleextAssignment_2_1());  
    82538558            } 
    8254             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2474:1: ( rule__ExtRule__RuleextAssignment_2_1 ) 
    8255             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2474:2: rule__ExtRule__RuleextAssignment_2_1 
    8256             { 
    8257             pushFollow(FOLLOW_rule__ExtRule__RuleextAssignment_2_1_in_rule__ExtRule__Group_2__1__Impl5113); 
     8559            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2571:1: ( rule__ExtRule__RuleextAssignment_2_1 ) 
     8560            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2571:2: rule__ExtRule__RuleextAssignment_2_1 
     8561            { 
     8562            pushFollow(FOLLOW_rule__ExtRule__RuleextAssignment_2_1_in_rule__ExtRule__Group_2__1__Impl5313); 
    82588563            rule__ExtRule__RuleextAssignment_2_1(); 
    82598564 
     
    82788583        } 
    82798584        finally { 
    8280             if ( state.backtracking>0 ) { memoize(input, 147, rule__ExtRule__Group_2__1__Impl_StartIndex); } 
     8585            if ( state.backtracking>0 ) { memoize(input, 153, rule__ExtRule__Group_2__1__Impl_StartIndex); } 
    82818586 
    82828587                restoreStackSize(stackSize); 
     
    82898594 
    82908595    // $ANTLR start "rule__ExtRule__Group_2__2" 
    8291     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2484:1: rule__ExtRule__Group_2__2 : rule__ExtRule__Group_2__2__Impl ; 
     8596    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2581:1: rule__ExtRule__Group_2__2 : rule__ExtRule__Group_2__2__Impl ; 
    82928597    public final void rule__ExtRule__Group_2__2() throws RecognitionException { 
    82938598        int rule__ExtRule__Group_2__2_StartIndex = input.index(); 
     
    82968601             
    82978602        try { 
    8298             if ( state.backtracking>0 && alreadyParsedRule(input, 148) ) { return ; } 
    8299             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2488:1: ( rule__ExtRule__Group_2__2__Impl ) 
    8300             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2489:2: rule__ExtRule__Group_2__2__Impl 
    8301             { 
    8302             pushFollow(FOLLOW_rule__ExtRule__Group_2__2__Impl_in_rule__ExtRule__Group_2__25143); 
     8603            if ( state.backtracking>0 && alreadyParsedRule(input, 154) ) { return ; } 
     8604            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2585:1: ( rule__ExtRule__Group_2__2__Impl ) 
     8605            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2586:2: rule__ExtRule__Group_2__2__Impl 
     8606            { 
     8607            pushFollow(FOLLOW_rule__ExtRule__Group_2__2__Impl_in_rule__ExtRule__Group_2__25343); 
    83038608            rule__ExtRule__Group_2__2__Impl(); 
    83048609 
     
    83148619        } 
    83158620        finally { 
    8316             if ( state.backtracking>0 ) { memoize(input, 148, rule__ExtRule__Group_2__2_StartIndex); } 
     8621            if ( state.backtracking>0 ) { memoize(input, 154, rule__ExtRule__Group_2__2_StartIndex); } 
    83178622 
    83188623                restoreStackSize(stackSize); 
     
    83258630 
    83268631    // $ANTLR start "rule__ExtRule__Group_2__2__Impl" 
    8327     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2495:1: rule__ExtRule__Group_2__2__Impl : ( ')' ) ; 
     8632    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2592:1: rule__ExtRule__Group_2__2__Impl : ( ')' ) ; 
    83288633    public final void rule__ExtRule__Group_2__2__Impl() throws RecognitionException { 
    83298634        int rule__ExtRule__Group_2__2__Impl_StartIndex = input.index(); 
     
    83328637             
    83338638        try { 
    8334             if ( state.backtracking>0 && alreadyParsedRule(input, 149) ) { return ; } 
    8335             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2499:1: ( ( ')' ) ) 
    8336             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2500:1: ( ')' ) 
    8337             { 
    8338             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2500:1: ( ')' ) 
    8339             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2501:1: ')' 
     8639            if ( state.backtracking>0 && alreadyParsedRule(input, 155) ) { return ; } 
     8640            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2596:1: ( ( ')' ) ) 
     8641            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2597:1: ( ')' ) 
     8642            { 
     8643            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2597:1: ( ')' ) 
     8644            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2598:1: ')' 
    83408645            { 
    83418646            if ( state.backtracking==0 ) { 
    83428647               before(grammarAccess.getExtRuleAccess().getRightParenthesisKeyword_2_2());  
    83438648            } 
    8344             match(input,13,FOLLOW_13_in_rule__ExtRule__Group_2__2__Impl5171); if (state.failed) return ; 
     8649            match(input,13,FOLLOW_13_in_rule__ExtRule__Group_2__2__Impl5371); if (state.failed) return ; 
    83458650            if ( state.backtracking==0 ) { 
    83468651               after(grammarAccess.getExtRuleAccess().getRightParenthesisKeyword_2_2());  
     
    83588663        } 
    83598664        finally { 
    8360             if ( state.backtracking>0 ) { memoize(input, 149, rule__ExtRule__Group_2__2__Impl_StartIndex); } 
     8665            if ( state.backtracking>0 ) { memoize(input, 155, rule__ExtRule__Group_2__2__Impl_StartIndex); } 
    83618666 
    83628667                restoreStackSize(stackSize); 
     
    83698674 
    83708675    // $ANTLR start "rule__GlobalCombinator__Group__0" 
    8371     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2520:1: rule__GlobalCombinator__Group__0 : rule__GlobalCombinator__Group__0__Impl rule__GlobalCombinator__Group__1 ; 
     8676    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2617:1: rule__GlobalCombinator__Group__0 : rule__GlobalCombinator__Group__0__Impl rule__GlobalCombinator__Group__1 ; 
    83728677    public final void rule__GlobalCombinator__Group__0() throws RecognitionException { 
    83738678        int rule__GlobalCombinator__Group__0_StartIndex = input.index(); 
     
    83768681             
    83778682        try { 
    8378             if ( state.backtracking>0 && alreadyParsedRule(input, 150) ) { return ; } 
    8379             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2524:1: ( rule__GlobalCombinator__Group__0__Impl rule__GlobalCombinator__Group__1 ) 
    8380             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2525:2: rule__GlobalCombinator__Group__0__Impl rule__GlobalCombinator__Group__1 
    8381             { 
    8382             pushFollow(FOLLOW_rule__GlobalCombinator__Group__0__Impl_in_rule__GlobalCombinator__Group__05208); 
     8683            if ( state.backtracking>0 && alreadyParsedRule(input, 156) ) { return ; } 
     8684            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2621:1: ( rule__GlobalCombinator__Group__0__Impl rule__GlobalCombinator__Group__1 ) 
     8685            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2622:2: rule__GlobalCombinator__Group__0__Impl rule__GlobalCombinator__Group__1 
     8686            { 
     8687            pushFollow(FOLLOW_rule__GlobalCombinator__Group__0__Impl_in_rule__GlobalCombinator__Group__05408); 
    83838688            rule__GlobalCombinator__Group__0__Impl(); 
    83848689 
    83858690            state._fsp--; 
    83868691            if (state.failed) return ; 
    8387             pushFollow(FOLLOW_rule__GlobalCombinator__Group__1_in_rule__GlobalCombinator__Group__05211); 
     8692            pushFollow(FOLLOW_rule__GlobalCombinator__Group__1_in_rule__GlobalCombinator__Group__05411); 
    83888693            rule__GlobalCombinator__Group__1(); 
    83898694 
     
    83998704        } 
    84008705        finally { 
    8401             if ( state.backtracking>0 ) { memoize(input, 150, rule__GlobalCombinator__Group__0_StartIndex); } 
     8706            if ( state.backtracking>0 ) { memoize(input, 156, rule__GlobalCombinator__Group__0_StartIndex); } 
    84028707 
    84038708                restoreStackSize(stackSize); 
     
    84108715 
    84118716    // $ANTLR start "rule__GlobalCombinator__Group__0__Impl" 
    8412     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2532:1: rule__GlobalCombinator__Group__0__Impl : ( ( rule__GlobalCombinator__Group_0__0 ) ) ; 
     8717    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2629:1: rule__GlobalCombinator__Group__0__Impl : ( ( rule__GlobalCombinator__Group_0__0 ) ) ; 
    84138718    public final void rule__GlobalCombinator__Group__0__Impl() throws RecognitionException { 
    84148719        int rule__GlobalCombinator__Group__0__Impl_StartIndex = input.index(); 
     
    84178722             
    84188723        try { 
    8419             if ( state.backtracking>0 && alreadyParsedRule(input, 151) ) { return ; } 
    8420             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2536:1: ( ( ( rule__GlobalCombinator__Group_0__0 ) ) ) 
    8421             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2537:1: ( ( rule__GlobalCombinator__Group_0__0 ) ) 
    8422             { 
    8423             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2537:1: ( ( rule__GlobalCombinator__Group_0__0 ) ) 
    8424             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2538:1: ( rule__GlobalCombinator__Group_0__0 ) 
     8724            if ( state.backtracking>0 && alreadyParsedRule(input, 157) ) { return ; } 
     8725            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2633:1: ( ( ( rule__GlobalCombinator__Group_0__0 ) ) ) 
     8726            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2634:1: ( ( rule__GlobalCombinator__Group_0__0 ) ) 
     8727            { 
     8728            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2634:1: ( ( rule__GlobalCombinator__Group_0__0 ) ) 
     8729            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2635:1: ( rule__GlobalCombinator__Group_0__0 ) 
    84258730            { 
    84268731            if ( state.backtracking==0 ) { 
    84278732               before(grammarAccess.getGlobalCombinatorAccess().getGroup_0());  
    84288733            } 
    8429             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2539:1: ( rule__GlobalCombinator__Group_0__0 ) 
    8430             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2539:2: rule__GlobalCombinator__Group_0__0 
    8431             { 
    8432             pushFollow(FOLLOW_rule__GlobalCombinator__Group_0__0_in_rule__GlobalCombinator__Group__0__Impl5238); 
     8734            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2636:1: ( rule__GlobalCombinator__Group_0__0 ) 
     8735            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2636:2: rule__GlobalCombinator__Group_0__0 
     8736            { 
     8737            pushFollow(FOLLOW_rule__GlobalCombinator__Group_0__0_in_rule__GlobalCombinator__Group__0__Impl5438); 
    84338738            rule__GlobalCombinator__Group_0__0(); 
    84348739 
     
    84538758        } 
    84548759        finally { 
    8455             if ( state.backtracking>0 ) { memoize(input, 151, rule__GlobalCombinator__Group__0__Impl_StartIndex); } 
     8760            if ( state.backtracking>0 ) { memoize(input, 157, rule__GlobalCombinator__Group__0__Impl_StartIndex); } 
    84568761 
    84578762                restoreStackSize(stackSize); 
     
    84648769 
    84658770    // $ANTLR start "rule__GlobalCombinator__Group__1" 
    8466     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2549:1: rule__GlobalCombinator__Group__1 : rule__GlobalCombinator__Group__1__Impl rule__GlobalCombinator__Group__2 ; 
     8771    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2646:1: rule__GlobalCombinator__Group__1 : rule__GlobalCombinator__Group__1__Impl rule__GlobalCombinator__Group__2 ; 
    84678772    public final void rule__GlobalCombinator__Group__1() throws RecognitionException { 
    84688773        int rule__GlobalCombinator__Group__1_StartIndex = input.index(); 
     
    84718776             
    84728777        try { 
    8473             if ( state.backtracking>0 && alreadyParsedRule(input, 152) ) { return ; } 
    8474             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2553:1: ( rule__GlobalCombinator__Group__1__Impl rule__GlobalCombinator__Group__2 ) 
    8475             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2554:2: rule__GlobalCombinator__Group__1__Impl rule__GlobalCombinator__Group__2 
    8476             { 
    8477             pushFollow(FOLLOW_rule__GlobalCombinator__Group__1__Impl_in_rule__GlobalCombinator__Group__15268); 
     8778            if ( state.backtracking>0 && alreadyParsedRule(input, 158) ) { return ; } 
     8779            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2650:1: ( rule__GlobalCombinator__Group__1__Impl rule__GlobalCombinator__Group__2 ) 
     8780            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2651:2: rule__GlobalCombinator__Group__1__Impl rule__GlobalCombinator__Group__2 
     8781            { 
     8782            pushFollow(FOLLOW_rule__GlobalCombinator__Group__1__Impl_in_rule__GlobalCombinator__Group__15468); 
    84788783            rule__GlobalCombinator__Group__1__Impl(); 
    84798784 
    84808785            state._fsp--; 
    84818786            if (state.failed) return ; 
    8482             pushFollow(FOLLOW_rule__GlobalCombinator__Group__2_in_rule__GlobalCombinator__Group__15271); 
     8787            pushFollow(FOLLOW_rule__GlobalCombinator__Group__2_in_rule__GlobalCombinator__Group__15471); 
    84838788            rule__GlobalCombinator__Group__2(); 
    84848789 
     
    84948799        } 
    84958800        finally { 
    8496             if ( state.backtracking>0 ) { memoize(input, 152, rule__GlobalCombinator__Group__1_StartIndex); } 
     8801            if ( state.backtracking>0 ) { memoize(input, 158, rule__GlobalCombinator__Group__1_StartIndex); } 
    84978802 
    84988803                restoreStackSize(stackSize); 
     
    85058810 
    85068811    // $ANTLR start "rule__GlobalCombinator__Group__1__Impl" 
    8507     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2561:1: rule__GlobalCombinator__Group__1__Impl : ( ( rule__GlobalCombinator__LogicAssignment_1 ) ) ; 
     8812    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2658:1: rule__GlobalCombinator__Group__1__Impl : ( ( rule__GlobalCombinator__LogicAssignment_1 ) ) ; 
    85088813    public final void rule__GlobalCombinator__Group__1__Impl() throws RecognitionException { 
    85098814        int rule__GlobalCombinator__Group__1__Impl_StartIndex = input.index(); 
     
    85128817             
    85138818        try { 
    8514             if ( state.backtracking>0 && alreadyParsedRule(input, 153) ) { return ; } 
    8515             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2565:1: ( ( ( rule__GlobalCombinator__LogicAssignment_1 ) ) ) 
    8516             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2566:1: ( ( rule__GlobalCombinator__LogicAssignment_1 ) ) 
    8517             { 
    8518             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2566:1: ( ( rule__GlobalCombinator__LogicAssignment_1 ) ) 
    8519             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2567:1: ( rule__GlobalCombinator__LogicAssignment_1 ) 
     8819            if ( state.backtracking>0 && alreadyParsedRule(input, 159) ) { return ; } 
     8820            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2662:1: ( ( ( rule__GlobalCombinator__LogicAssignment_1 ) ) ) 
     8821            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2663:1: ( ( rule__GlobalCombinator__LogicAssignment_1 ) ) 
     8822            { 
     8823            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2663:1: ( ( rule__GlobalCombinator__LogicAssignment_1 ) ) 
     8824            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2664:1: ( rule__GlobalCombinator__LogicAssignment_1 ) 
    85208825            { 
    85218826            if ( state.backtracking==0 ) { 
    85228827               before(grammarAccess.getGlobalCombinatorAccess().getLogicAssignment_1());  
    85238828            } 
    8524             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2568:1: ( rule__GlobalCombinator__LogicAssignment_1 ) 
    8525             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2568:2: rule__GlobalCombinator__LogicAssignment_1 
    8526             { 
    8527             pushFollow(FOLLOW_rule__GlobalCombinator__LogicAssignment_1_in_rule__GlobalCombinator__Group__1__Impl5298); 
     8829            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2665:1: ( rule__GlobalCombinator__LogicAssignment_1 ) 
     8830            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2665:2: rule__GlobalCombinator__LogicAssignment_1 
     8831            { 
     8832            pushFollow(FOLLOW_rule__GlobalCombinator__LogicAssignment_1_in_rule__GlobalCombinator__Group__1__Impl5498); 
    85288833            rule__GlobalCombinator__LogicAssignment_1(); 
    85298834 
     
    85488853        } 
    85498854        finally { 
    8550             if ( state.backtracking>0 ) { memoize(input, 153, rule__GlobalCombinator__Group__1__Impl_StartIndex); } 
     8855            if ( state.backtracking>0 ) { memoize(input, 159, rule__GlobalCombinator__Group__1__Impl_StartIndex); } 
    85518856 
    85528857                restoreStackSize(stackSize); 
     
    85598864 
    85608865    // $ANTLR start "rule__GlobalCombinator__Group__2" 
    8561     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2578:1: rule__GlobalCombinator__Group__2 : rule__GlobalCombinator__Group__2__Impl ; 
     8866    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2675:1: rule__GlobalCombinator__Group__2 : rule__GlobalCombinator__Group__2__Impl ; 
    85628867    public final void rule__GlobalCombinator__Group__2() throws RecognitionException { 
    85638868        int rule__GlobalCombinator__Group__2_StartIndex = input.index(); 
     
    85668871             
    85678872        try { 
    8568             if ( state.backtracking>0 && alreadyParsedRule(input, 154) ) { return ; } 
    8569             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2582:1: ( rule__GlobalCombinator__Group__2__Impl ) 
    8570             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2583:2: rule__GlobalCombinator__Group__2__Impl 
    8571             { 
    8572             pushFollow(FOLLOW_rule__GlobalCombinator__Group__2__Impl_in_rule__GlobalCombinator__Group__25328); 
     8873            if ( state.backtracking>0 && alreadyParsedRule(input, 160) ) { return ; } 
     8874            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2679:1: ( rule__GlobalCombinator__Group__2__Impl ) 
     8875            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2680:2: rule__GlobalCombinator__Group__2__Impl 
     8876            { 
     8877            pushFollow(FOLLOW_rule__GlobalCombinator__Group__2__Impl_in_rule__GlobalCombinator__Group__25528); 
    85738878            rule__GlobalCombinator__Group__2__Impl(); 
    85748879 
     
    85848889        } 
    85858890        finally { 
    8586             if ( state.backtracking>0 ) { memoize(input, 154, rule__GlobalCombinator__Group__2_StartIndex); } 
     8891            if ( state.backtracking>0 ) { memoize(input, 160, rule__GlobalCombinator__Group__2_StartIndex); } 
    85878892 
    85888893                restoreStackSize(stackSize); 
     
    85958900 
    85968901    // $ANTLR start "rule__GlobalCombinator__Group__2__Impl" 
    8597     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2589:1: rule__GlobalCombinator__Group__2__Impl : ( ( ';' )? ) ; 
     8902    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2686:1: rule__GlobalCombinator__Group__2__Impl : ( ( ';' )? ) ; 
    85988903    public final void rule__GlobalCombinator__Group__2__Impl() throws RecognitionException { 
    85998904        int rule__GlobalCombinator__Group__2__Impl_StartIndex = input.index(); 
     
    86028907             
    86038908        try { 
    8604             if ( state.backtracking>0 && alreadyParsedRule(input, 155) ) { return ; } 
    8605             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2593:1: ( ( ( ';' )? ) ) 
    8606             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2594:1: ( ( ';' )? ) 
    8607             { 
    8608             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2594:1: ( ( ';' )? ) 
    8609             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2595:1: ( ';' )? 
     8909            if ( state.backtracking>0 && alreadyParsedRule(input, 161) ) { return ; } 
     8910            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2690:1: ( ( ( ';' )? ) ) 
     8911            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2691:1: ( ( ';' )? ) 
     8912            { 
     8913            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2691:1: ( ( ';' )? ) 
     8914            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2692:1: ( ';' )? 
    86108915            { 
    86118916            if ( state.backtracking==0 ) { 
    86128917               before(grammarAccess.getGlobalCombinatorAccess().getSemicolonKeyword_2());  
    86138918            } 
    8614             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2596:1: ( ';' )? 
     8919            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2693:1: ( ';' )? 
    86158920            int alt33=2; 
    86168921            int LA33_0 = input.LA(1); 
     
    86218926            switch (alt33) { 
    86228927                case 1 : 
    8623                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2597:2: ';' 
     8928                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2694:2: ';' 
    86248929                    { 
    8625                     match(input,23,FOLLOW_23_in_rule__GlobalCombinator__Group__2__Impl5357); if (state.failed) return ; 
     8930                    match(input,23,FOLLOW_23_in_rule__GlobalCombinator__Group__2__Impl5557); if (state.failed) return ; 
    86268931 
    86278932                    } 
     
    86458950        } 
    86468951        finally { 
    8647             if ( state.backtracking>0 ) { memoize(input, 155, rule__GlobalCombinator__Group__2__Impl_StartIndex); } 
     8952            if ( state.backtracking>0 ) { memoize(input, 161, rule__GlobalCombinator__Group__2__Impl_StartIndex); } 
    86488953 
    86498954                restoreStackSize(stackSize); 
     
    86568961 
    86578962    // $ANTLR start "rule__GlobalCombinator__Group_0__0" 
    8658     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2614:1: rule__GlobalCombinator__Group_0__0 : rule__GlobalCombinator__Group_0__0__Impl rule__GlobalCombinator__Group_0__1 ; 
     8963    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2711:1: rule__GlobalCombinator__Group_0__0 : rule__GlobalCombinator__Group_0__0__Impl rule__GlobalCombinator__Group_0__1 ; 
    86598964    public final void rule__GlobalCombinator__Group_0__0() throws RecognitionException { 
    86608965        int rule__GlobalCombinator__Group_0__0_StartIndex = input.index(); 
     
    86638968             
    86648969        try { 
    8665             if ( state.backtracking>0 && alreadyParsedRule(input, 156) ) { return ; } 
    8666             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2618:1: ( rule__GlobalCombinator__Group_0__0__Impl rule__GlobalCombinator__Group_0__1 ) 
    8667             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2619:2: rule__GlobalCombinator__Group_0__0__Impl rule__GlobalCombinator__Group_0__1 
    8668             { 
    8669             pushFollow(FOLLOW_rule__GlobalCombinator__Group_0__0__Impl_in_rule__GlobalCombinator__Group_0__05396); 
     8970            if ( state.backtracking>0 && alreadyParsedRule(input, 162) ) { return ; } 
     8971            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2715:1: ( rule__GlobalCombinator__Group_0__0__Impl rule__GlobalCombinator__Group_0__1 ) 
     8972            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2716:2: rule__GlobalCombinator__Group_0__0__Impl rule__GlobalCombinator__Group_0__1 
     8973            { 
     8974            pushFollow(FOLLOW_rule__GlobalCombinator__Group_0__0__Impl_in_rule__GlobalCombinator__Group_0__05596); 
    86708975            rule__GlobalCombinator__Group_0__0__Impl(); 
    86718976 
    86728977            state._fsp--; 
    86738978            if (state.failed) return ; 
    8674             pushFollow(FOLLOW_rule__GlobalCombinator__Group_0__1_in_rule__GlobalCombinator__Group_0__05399); 
     8979            pushFollow(FOLLOW_rule__GlobalCombinator__Group_0__1_in_rule__GlobalCombinator__Group_0__05599); 
    86758980            rule__GlobalCombinator__Group_0__1(); 
    86768981 
     
    86868991        } 
    86878992        finally { 
    8688             if ( state.backtracking>0 ) { memoize(input, 156, rule__GlobalCombinator__Group_0__0_StartIndex); } 
     8993            if ( state.backtracking>0 ) { memoize(input, 162, rule__GlobalCombinator__Group_0__0_StartIndex); } 
    86898994 
    86908995                restoreStackSize(stackSize); 
     
    86979002 
    86989003    // $ANTLR start "rule__GlobalCombinator__Group_0__0__Impl" 
    8699     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2626:1: rule__GlobalCombinator__Group_0__0__Impl : ( 'global' ) ; 
     9004    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2723:1: rule__GlobalCombinator__Group_0__0__Impl : ( 'global' ) ; 
    87009005    public final void rule__GlobalCombinator__Group_0__0__Impl() throws RecognitionException { 
    87019006        int rule__GlobalCombinator__Group_0__0__Impl_StartIndex = input.index(); 
     
    87049009             
    87059010        try { 
    8706             if ( state.backtracking>0 && alreadyParsedRule(input, 157) ) { return ; } 
    8707             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2630:1: ( ( 'global' ) ) 
    8708             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2631:1: ( 'global' ) 
    8709             { 
    8710             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2631:1: ( 'global' ) 
    8711             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2632:1: 'global' 
     9011            if ( state.backtracking>0 && alreadyParsedRule(input, 163) ) { return ; } 
     9012            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2727:1: ( ( 'global' ) ) 
     9013            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2728:1: ( 'global' ) 
     9014            { 
     9015            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2728:1: ( 'global' ) 
     9016            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2729:1: 'global' 
    87129017            { 
    87139018            if ( state.backtracking==0 ) { 
    87149019               before(grammarAccess.getGlobalCombinatorAccess().getGlobalKeyword_0_0());  
    87159020            } 
    8716             match(input,30,FOLLOW_30_in_rule__GlobalCombinator__Group_0__0__Impl5427); if (state.failed) return ; 
     9021            match(input,30,FOLLOW_30_in_rule__GlobalCombinator__Group_0__0__Impl5627); if (state.failed) return ; 
    87179022            if ( state.backtracking==0 ) { 
    87189023               after(grammarAccess.getGlobalCombinatorAccess().getGlobalKeyword_0_0());  
     
    87309035        } 
    87319036        finally { 
    8732             if ( state.backtracking>0 ) { memoize(input, 157, rule__GlobalCombinator__Group_0__0__Impl_StartIndex); } 
     9037            if ( state.backtracking>0 ) { memoize(input, 163, rule__GlobalCombinator__Group_0__0__Impl_StartIndex); } 
    87339038 
    87349039                restoreStackSize(stackSize); 
     
    87419046 
    87429047    // $ANTLR start "rule__GlobalCombinator__Group_0__1" 
    8743     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2645:1: rule__GlobalCombinator__Group_0__1 : rule__GlobalCombinator__Group_0__1__Impl ; 
     9048    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2742:1: rule__GlobalCombinator__Group_0__1 : rule__GlobalCombinator__Group_0__1__Impl ; 
    87449049    public final void rule__GlobalCombinator__Group_0__1() throws RecognitionException { 
    87459050        int rule__GlobalCombinator__Group_0__1_StartIndex = input.index(); 
     
    87489053             
    87499054        try { 
    8750             if ( state.backtracking>0 && alreadyParsedRule(input, 158) ) { return ; } 
    8751             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2649:1: ( rule__GlobalCombinator__Group_0__1__Impl ) 
    8752             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2650:2: rule__GlobalCombinator__Group_0__1__Impl 
    8753             { 
    8754             pushFollow(FOLLOW_rule__GlobalCombinator__Group_0__1__Impl_in_rule__GlobalCombinator__Group_0__15458); 
     9055            if ( state.backtracking>0 && alreadyParsedRule(input, 164) ) { return ; } 
     9056            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2746:1: ( rule__GlobalCombinator__Group_0__1__Impl ) 
     9057            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2747:2: rule__GlobalCombinator__Group_0__1__Impl 
     9058            { 
     9059            pushFollow(FOLLOW_rule__GlobalCombinator__Group_0__1__Impl_in_rule__GlobalCombinator__Group_0__15658); 
    87559060            rule__GlobalCombinator__Group_0__1__Impl(); 
    87569061 
     
    87669071        } 
    87679072        finally { 
    8768             if ( state.backtracking>0 ) { memoize(input, 158, rule__GlobalCombinator__Group_0__1_StartIndex); } 
     9073            if ( state.backtracking>0 ) { memoize(input, 164, rule__GlobalCombinator__Group_0__1_StartIndex); } 
    87699074 
    87709075                restoreStackSize(stackSize); 
     
    87779082 
    87789083    // $ANTLR start "rule__GlobalCombinator__Group_0__1__Impl" 
    8779     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2656:1: rule__GlobalCombinator__Group_0__1__Impl : ( 'combinator:' ) ; 
     9084    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2753:1: rule__GlobalCombinator__Group_0__1__Impl : ( 'combinator:' ) ; 
    87809085    public final void rule__GlobalCombinator__Group_0__1__Impl() throws RecognitionException { 
    87819086        int rule__GlobalCombinator__Group_0__1__Impl_StartIndex = input.index(); 
     
    87849089             
    87859090        try { 
    8786             if ( state.backtracking>0 && alreadyParsedRule(input, 159) ) { return ; } 
    8787             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2660:1: ( ( 'combinator:' ) ) 
    8788             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2661:1: ( 'combinator:' ) 
    8789             { 
    8790             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2661:1: ( 'combinator:' ) 
    8791             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2662:1: 'combinator:' 
     9091            if ( state.backtracking>0 && alreadyParsedRule(input, 165) ) { return ; } 
     9092            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2757:1: ( ( 'combinator:' ) ) 
     9093            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2758:1: ( 'combinator:' ) 
     9094            { 
     9095            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2758:1: ( 'combinator:' ) 
     9096            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2759:1: 'combinator:' 
    87929097            { 
    87939098            if ( state.backtracking==0 ) { 
    87949099               before(grammarAccess.getGlobalCombinatorAccess().getCombinatorKeyword_0_1());  
    87959100            } 
    8796             match(input,31,FOLLOW_31_in_rule__GlobalCombinator__Group_0__1__Impl5486); if (state.failed) return ; 
     9101            match(input,31,FOLLOW_31_in_rule__GlobalCombinator__Group_0__1__Impl5686); if (state.failed) return ; 
    87979102            if ( state.backtracking==0 ) { 
    87989103               after(grammarAccess.getGlobalCombinatorAccess().getCombinatorKeyword_0_1());  
     
    88109115        } 
    88119116        finally { 
    8812             if ( state.backtracking>0 ) { memoize(input, 159, rule__GlobalCombinator__Group_0__1__Impl_StartIndex); } 
     9117            if ( state.backtracking>0 ) { memoize(input, 165, rule__GlobalCombinator__Group_0__1__Impl_StartIndex); } 
    88139118 
    88149119                restoreStackSize(stackSize); 
     
    88219126 
    88229127    // $ANTLR start "rule__RuleCombinator__Group__0" 
    8823     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2679:1: rule__RuleCombinator__Group__0 : rule__RuleCombinator__Group__0__Impl rule__RuleCombinator__Group__1 ; 
     9128    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2776:1: rule__RuleCombinator__Group__0 : rule__RuleCombinator__Group__0__Impl rule__RuleCombinator__Group__1 ; 
    88249129    public final void rule__RuleCombinator__Group__0() throws RecognitionException { 
    88259130        int rule__RuleCombinator__Group__0_StartIndex = input.index(); 
     
    88289133             
    88299134        try { 
    8830             if ( state.backtracking>0 && alreadyParsedRule(input, 160) ) { return ; } 
    8831             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2683:1: ( rule__RuleCombinator__Group__0__Impl rule__RuleCombinator__Group__1 ) 
    8832             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2684:2: rule__RuleCombinator__Group__0__Impl rule__RuleCombinator__Group__1 
    8833             { 
    8834             pushFollow(FOLLOW_rule__RuleCombinator__Group__0__Impl_in_rule__RuleCombinator__Group__05521); 
     9135            if ( state.backtracking>0 && alreadyParsedRule(input, 166) ) { return ; } 
     9136            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2780:1: ( rule__RuleCombinator__Group__0__Impl rule__RuleCombinator__Group__1 ) 
     9137            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2781:2: rule__RuleCombinator__Group__0__Impl rule__RuleCombinator__Group__1 
     9138            { 
     9139            pushFollow(FOLLOW_rule__RuleCombinator__Group__0__Impl_in_rule__RuleCombinator__Group__05721); 
    88359140            rule__RuleCombinator__Group__0__Impl(); 
    88369141 
    88379142            state._fsp--; 
    88389143            if (state.failed) return ; 
    8839             pushFollow(FOLLOW_rule__RuleCombinator__Group__1_in_rule__RuleCombinator__Group__05524); 
     9144            pushFollow(FOLLOW_rule__RuleCombinator__Group__1_in_rule__RuleCombinator__Group__05724); 
    88409145            rule__RuleCombinator__Group__1(); 
    88419146 
     
    88519156        } 
    88529157        finally { 
    8853             if ( state.backtracking>0 ) { memoize(input, 160, rule__RuleCombinator__Group__0_StartIndex); } 
     9158            if ( state.backtracking>0 ) { memoize(input, 166, rule__RuleCombinator__Group__0_StartIndex); } 
    88549159 
    88559160                restoreStackSize(stackSize); 
     
    88629167 
    88639168    // $ANTLR start "rule__RuleCombinator__Group__0__Impl" 
    8864     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2691:1: rule__RuleCombinator__Group__0__Impl : ( ( rule__RuleCombinator__Group_0__0 ) ) ; 
     9169    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2788:1: rule__RuleCombinator__Group__0__Impl : ( ( rule__RuleCombinator__Group_0__0 ) ) ; 
    88659170    public final void rule__RuleCombinator__Group__0__Impl() throws RecognitionException { 
    88669171        int rule__RuleCombinator__Group__0__Impl_StartIndex = input.index(); 
     
    88699174             
    88709175        try { 
    8871             if ( state.backtracking>0 && alreadyParsedRule(input, 161) ) { return ; } 
    8872             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2695:1: ( ( ( rule__RuleCombinator__Group_0__0 ) ) ) 
    8873             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2696:1: ( ( rule__RuleCombinator__Group_0__0 ) ) 
    8874             { 
    8875             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2696:1: ( ( rule__RuleCombinator__Group_0__0 ) ) 
    8876             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2697:1: ( rule__RuleCombinator__Group_0__0 ) 
     9176            if ( state.backtracking>0 && alreadyParsedRule(input, 167) ) { return ; } 
     9177            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2792:1: ( ( ( rule__RuleCombinator__Group_0__0 ) ) ) 
     9178            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2793:1: ( ( rule__RuleCombinator__Group_0__0 ) ) 
     9179            { 
     9180            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2793:1: ( ( rule__RuleCombinator__Group_0__0 ) ) 
     9181            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2794:1: ( rule__RuleCombinator__Group_0__0 ) 
    88779182            { 
    88789183            if ( state.backtracking==0 ) { 
    88799184               before(grammarAccess.getRuleCombinatorAccess().getGroup_0());  
    88809185            } 
    8881             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2698:1: ( rule__RuleCombinator__Group_0__0 ) 
    8882             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2698:2: rule__RuleCombinator__Group_0__0 
    8883             { 
    8884             pushFollow(FOLLOW_rule__RuleCombinator__Group_0__0_in_rule__RuleCombinator__Group__0__Impl5551); 
     9186            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2795:1: ( rule__RuleCombinator__Group_0__0 ) 
     9187            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2795:2: rule__RuleCombinator__Group_0__0 
     9188            { 
     9189            pushFollow(FOLLOW_rule__RuleCombinator__Group_0__0_in_rule__RuleCombinator__Group__0__Impl5751); 
    88859190            rule__RuleCombinator__Group_0__0(); 
    88869191 
     
    89059210        } 
    89069211        finally { 
    8907             if ( state.backtracking>0 ) { memoize(input, 161, rule__RuleCombinator__Group__0__Impl_StartIndex); } 
     9212            if ( state.backtracking>0 ) { memoize(input, 167, rule__RuleCombinator__Group__0__Impl_StartIndex); } 
    89089213 
    89099214                restoreStackSize(stackSize); 
     
    89169221 
    89179222    // $ANTLR start "rule__RuleCombinator__Group__1" 
    8918     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2708:1: rule__RuleCombinator__Group__1 : rule__RuleCombinator__Group__1__Impl rule__RuleCombinator__Group__2 ; 
     9223    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2805:1: rule__RuleCombinator__Group__1 : rule__RuleCombinator__Group__1__Impl rule__RuleCombinator__Group__2 ; 
    89199224    public final void rule__RuleCombinator__Group__1() throws RecognitionException { 
    89209225        int rule__RuleCombinator__Group__1_StartIndex = input.index(); 
     
    89239228             
    89249229        try { 
    8925             if ( state.backtracking>0 && alreadyParsedRule(input, 162) ) { return ; } 
    8926             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2712:1: ( rule__RuleCombinator__Group__1__Impl rule__RuleCombinator__Group__2 ) 
    8927             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2713:2: rule__RuleCombinator__Group__1__Impl rule__RuleCombinator__Group__2 
    8928             { 
    8929             pushFollow(FOLLOW_rule__RuleCombinator__Group__1__Impl_in_rule__RuleCombinator__Group__15581); 
     9230            if ( state.backtracking>0 && alreadyParsedRule(input, 168) ) { return ; } 
     9231            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2809:1: ( rule__RuleCombinator__Group__1__Impl rule__RuleCombinator__Group__2 ) 
     9232            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2810:2: rule__RuleCombinator__Group__1__Impl rule__RuleCombinator__Group__2 
     9233            { 
     9234            pushFollow(FOLLOW_rule__RuleCombinator__Group__1__Impl_in_rule__RuleCombinator__Group__15781); 
    89309235            rule__RuleCombinator__Group__1__Impl(); 
    89319236 
    89329237            state._fsp--; 
    89339238            if (state.failed) return ; 
    8934             pushFollow(FOLLOW_rule__RuleCombinator__Group__2_in_rule__RuleCombinator__Group__15584); 
     9239            pushFollow(FOLLOW_rule__RuleCombinator__Group__2_in_rule__RuleCombinator__Group__15784); 
    89359240            rule__RuleCombinator__Group__2(); 
    89369241 
     
    89469251        } 
    89479252        finally { 
    8948             if ( state.backtracking>0 ) { memoize(input, 162, rule__RuleCombinator__Group__1_StartIndex); } 
     9253            if ( state.backtracking>0 ) { memoize(input, 168, rule__RuleCombinator__Group__1_StartIndex); } 
    89499254 
    89509255                restoreStackSize(stackSize); 
     
    89579262 
    89589263    // $ANTLR start "rule__RuleCombinator__Group__1__Impl" 
    8959     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2720:1: rule__RuleCombinator__Group__1__Impl : ( ( rule__RuleCombinator__LogicAssignment_1 ) ) ; 
     9264    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2817:1: rule__RuleCombinator__Group__1__Impl : ( ( rule__RuleCombinator__LogicAssignment_1 ) ) ; 
    89609265    public final void rule__RuleCombinator__Group__1__Impl() throws RecognitionException { 
    89619266        int rule__RuleCombinator__Group__1__Impl_StartIndex = input.index(); 
     
    89649269             
    89659270        try { 
    8966             if ( state.backtracking>0 && alreadyParsedRule(input, 163) ) { return ; } 
    8967             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2724:1: ( ( ( rule__RuleCombinator__LogicAssignment_1 ) ) ) 
    8968             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2725:1: ( ( rule__RuleCombinator__LogicAssignment_1 ) ) 
    8969             { 
    8970             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2725:1: ( ( rule__RuleCombinator__LogicAssignment_1 ) ) 
    8971             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2726:1: ( rule__RuleCombinator__LogicAssignment_1 ) 
     9271            if ( state.backtracking>0 && alreadyParsedRule(input, 169) ) { return ; } 
     9272            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2821:1: ( ( ( rule__RuleCombinator__LogicAssignment_1 ) ) ) 
     9273            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2822:1: ( ( rule__RuleCombinator__LogicAssignment_1 ) ) 
     9274            { 
     9275            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2822:1: ( ( rule__RuleCombinator__LogicAssignment_1 ) ) 
     9276            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2823:1: ( rule__RuleCombinator__LogicAssignment_1 ) 
    89729277            { 
    89739278            if ( state.backtracking==0 ) { 
    89749279               before(grammarAccess.getRuleCombinatorAccess().getLogicAssignment_1());  
    89759280            } 
    8976             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2727:1: ( rule__RuleCombinator__LogicAssignment_1 ) 
    8977             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2727:2: rule__RuleCombinator__LogicAssignment_1 
    8978             { 
    8979             pushFollow(FOLLOW_rule__RuleCombinator__LogicAssignment_1_in_rule__RuleCombinator__Group__1__Impl5611); 
     9281            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2824:1: ( rule__RuleCombinator__LogicAssignment_1 ) 
     9282            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2824:2: rule__RuleCombinator__LogicAssignment_1 
     9283            { 
     9284            pushFollow(FOLLOW_rule__RuleCombinator__LogicAssignment_1_in_rule__RuleCombinator__Group__1__Impl5811); 
    89809285            rule__RuleCombinator__LogicAssignment_1(); 
    89819286 
     
    90009305        } 
    90019306        finally { 
    9002             if ( state.backtracking>0 ) { memoize(input, 163, rule__RuleCombinator__Group__1__Impl_StartIndex); } 
     9307            if ( state.backtracking>0 ) { memoize(input, 169, rule__RuleCombinator__Group__1__Impl_StartIndex); } 
    90039308 
    90049309                restoreStackSize(stackSize); 
     
    90119316 
    90129317    // $ANTLR start "rule__RuleCombinator__Group__2" 
    9013     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2737:1: rule__RuleCombinator__Group__2 : rule__RuleCombinator__Group__2__Impl rule__RuleCombinator__Group__3 ; 
     9318    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2834:1: rule__RuleCombinator__Group__2 : rule__RuleCombinator__Group__2__Impl rule__RuleCombinator__Group__3 ; 
    90149319    public final void rule__RuleCombinator__Group__2() throws RecognitionException { 
    90159320        int rule__RuleCombinator__Group__2_StartIndex = input.index(); 
     
    90189323             
    90199324        try { 
    9020             if ( state.backtracking>0 && alreadyParsedRule(input, 164) ) { return ; } 
    9021             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2741:1: ( rule__RuleCombinator__Group__2__Impl rule__RuleCombinator__Group__3 ) 
    9022             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2742:2: rule__RuleCombinator__Group__2__Impl rule__RuleCombinator__Group__3 
    9023             { 
    9024             pushFollow(FOLLOW_rule__RuleCombinator__Group__2__Impl_in_rule__RuleCombinator__Group__25641); 
     9325            if ( state.backtracking>0 && alreadyParsedRule(input, 170) ) { return ; } 
     9326            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2838:1: ( rule__RuleCombinator__Group__2__Impl rule__RuleCombinator__Group__3 ) 
     9327            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2839:2: rule__RuleCombinator__Group__2__Impl rule__RuleCombinator__Group__3 
     9328            { 
     9329            pushFollow(FOLLOW_rule__RuleCombinator__Group__2__Impl_in_rule__RuleCombinator__Group__25841); 
    90259330            rule__RuleCombinator__Group__2__Impl(); 
    90269331 
    90279332            state._fsp--; 
    90289333            if (state.failed) return ; 
    9029             pushFollow(FOLLOW_rule__RuleCombinator__Group__3_in_rule__RuleCombinator__Group__25644); 
     9334            pushFollow(FOLLOW_rule__RuleCombinator__Group__3_in_rule__RuleCombinator__Group__25844); 
    90309335            rule__RuleCombinator__Group__3(); 
    90319336 
     
    90419346        } 
    90429347        finally { 
    9043             if ( state.backtracking>0 ) { memoize(input, 164, rule__RuleCombinator__Group__2_StartIndex); } 
     9348            if ( state.backtracking>0 ) { memoize(input, 170, rule__RuleCombinator__Group__2_StartIndex); } 
    90449349 
    90459350                restoreStackSize(stackSize); 
     
    90529357 
    90539358    // $ANTLR start "rule__RuleCombinator__Group__2__Impl" 
    9054     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2749:1: rule__RuleCombinator__Group__2__Impl : ( ( rule__RuleCombinator__Group_2__0 )* ) ; 
     9359    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2846:1: rule__RuleCombinator__Group__2__Impl : ( ( rule__RuleCombinator__Group_2__0 )* ) ; 
    90559360    public final void rule__RuleCombinator__Group__2__Impl() throws RecognitionException { 
    90569361        int rule__RuleCombinator__Group__2__Impl_StartIndex = input.index(); 
     
    90599364             
    90609365        try { 
    9061             if ( state.backtracking>0 && alreadyParsedRule(input, 165) ) { return ; } 
    9062             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2753:1: ( ( ( rule__RuleCombinator__Group_2__0 )* ) ) 
    9063             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2754:1: ( ( rule__RuleCombinator__Group_2__0 )* ) 
    9064             { 
    9065             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2754:1: ( ( rule__RuleCombinator__Group_2__0 )* ) 
    9066             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2755:1: ( rule__RuleCombinator__Group_2__0 )* 
     9366            if ( state.backtracking>0 && alreadyParsedRule(input, 171) ) { return ; } 
     9367            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2850:1: ( ( ( rule__RuleCombinator__Group_2__0 )* ) ) 
     9368            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2851:1: ( ( rule__RuleCombinator__Group_2__0 )* ) 
     9369            { 
     9370            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2851:1: ( ( rule__RuleCombinator__Group_2__0 )* ) 
     9371            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2852:1: ( rule__RuleCombinator__Group_2__0 )* 
    90679372            { 
    90689373            if ( state.backtracking==0 ) { 
    90699374               before(grammarAccess.getRuleCombinatorAccess().getGroup_2());  
    90709375            } 
    9071             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2756:1: ( rule__RuleCombinator__Group_2__0 )* 
     9376            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2853:1: ( rule__RuleCombinator__Group_2__0 )* 
    90729377            loop34: 
    90739378            do { 
     
    90829387                switch (alt34) { 
    90839388                case 1 : 
    9084                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2756:2: rule__RuleCombinator__Group_2__0 
     9389                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2853:2: rule__RuleCombinator__Group_2__0 
    90859390                    { 
    9086                     pushFollow(FOLLOW_rule__RuleCombinator__Group_2__0_in_rule__RuleCombinator__Group__2__Impl5671); 
     9391                    pushFollow(FOLLOW_rule__RuleCombinator__Group_2__0_in_rule__RuleCombinator__Group__2__Impl5871); 
    90879392                    rule__RuleCombinator__Group_2__0(); 
    90889393 
     
    91139418        } 
    91149419        finally { 
    9115             if ( state.backtracking>0 ) { memoize(input, 165, rule__RuleCombinator__Group__2__Impl_StartIndex); } 
     9420            if ( state.backtracking>0 ) { memoize(input, 171, rule__RuleCombinator__Group__2__Impl_StartIndex); } 
    91169421 
    91179422                restoreStackSize(stackSize); 
     
    91249429 
    91259430    // $ANTLR start "rule__RuleCombinator__Group__3" 
    9126     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2766:1: rule__RuleCombinator__Group__3 : rule__RuleCombinator__Group__3__Impl ; 
     9431    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2863:1: rule__RuleCombinator__Group__3 : rule__RuleCombinator__Group__3__Impl ; 
    91279432    public final void rule__RuleCombinator__Group__3() throws RecognitionException { 
    91289433        int rule__RuleCombinator__Group__3_StartIndex = input.index(); 
     
    91319436             
    91329437        try { 
    9133             if ( state.backtracking>0 && alreadyParsedRule(input, 166) ) { return ; } 
    9134             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2770:1: ( rule__RuleCombinator__Group__3__Impl ) 
    9135             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2771:2: rule__RuleCombinator__Group__3__Impl 
    9136             { 
    9137             pushFollow(FOLLOW_rule__RuleCombinator__Group__3__Impl_in_rule__RuleCombinator__Group__35702); 
     9438            if ( state.backtracking>0 && alreadyParsedRule(input, 172) ) { return ; } 
     9439            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2867:1: ( rule__RuleCombinator__Group__3__Impl ) 
     9440            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2868:2: rule__RuleCombinator__Group__3__Impl 
     9441            { 
     9442            pushFollow(FOLLOW_rule__RuleCombinator__Group__3__Impl_in_rule__RuleCombinator__Group__35902); 
    91389443            rule__RuleCombinator__Group__3__Impl(); 
    91399444 
     
    91499454        } 
    91509455        finally { 
    9151             if ( state.backtracking>0 ) { memoize(input, 166, rule__RuleCombinator__Group__3_StartIndex); } 
     9456            if ( state.backtracking>0 ) { memoize(input, 172, rule__RuleCombinator__Group__3_StartIndex); } 
    91529457 
    91539458                restoreStackSize(stackSize); 
     
    91609465 
    91619466    // $ANTLR start "rule__RuleCombinator__Group__3__Impl" 
    9162     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2777:1: rule__RuleCombinator__Group__3__Impl : ( ( ';' )? ) ; 
     9467    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2874:1: rule__RuleCombinator__Group__3__Impl : ( ( ';' )? ) ; 
    91639468    public final void rule__RuleCombinator__Group__3__Impl() throws RecognitionException { 
    91649469        int rule__RuleCombinator__Group__3__Impl_StartIndex = input.index(); 
     
    91679472             
    91689473        try { 
    9169             if ( state.backtracking>0 && alreadyParsedRule(input, 167) ) { return ; } 
    9170             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2781:1: ( ( ( ';' )? ) ) 
    9171             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2782:1: ( ( ';' )? ) 
    9172             { 
    9173             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2782:1: ( ( ';' )? ) 
    9174             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2783:1: ( ';' )? 
     9474            if ( state.backtracking>0 && alreadyParsedRule(input, 173) ) { return ; } 
     9475            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2878:1: ( ( ( ';' )? ) ) 
     9476            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2879:1: ( ( ';' )? ) 
     9477            { 
     9478            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2879:1: ( ( ';' )? ) 
     9479            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2880:1: ( ';' )? 
    91759480            { 
    91769481            if ( state.backtracking==0 ) { 
    91779482               before(grammarAccess.getRuleCombinatorAccess().getSemicolonKeyword_3());  
    91789483            } 
    9179             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2784:1: ( ';' )? 
     9484            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2881:1: ( ';' )? 
    91809485            int alt35=2; 
    91819486            int LA35_0 = input.LA(1); 
     
    91869491            switch (alt35) { 
    91879492                case 1 : 
    9188                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2785:2: ';' 
     9493                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2882:2: ';' 
    91899494                    { 
    9190                     match(input,23,FOLLOW_23_in_rule__RuleCombinator__Group__3__Impl5731); if (state.failed) return ; 
     9495                    match(input,23,FOLLOW_23_in_rule__RuleCombinator__Group__3__Impl5931); if (state.failed) return ; 
    91919496 
    91929497                    } 
     
    92109515        } 
    92119516        finally { 
    9212             if ( state.backtracking>0 ) { memoize(input, 167, rule__RuleCombinator__Group__3__Impl_StartIndex); } 
     9517            if ( state.backtracking>0 ) { memoize(input, 173, rule__RuleCombinator__Group__3__Impl_StartIndex); } 
    92139518 
    92149519                restoreStackSize(stackSize); 
     
    92219526 
    92229527    // $ANTLR start "rule__RuleCombinator__Group_0__0" 
    9223     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2804:1: rule__RuleCombinator__Group_0__0 : rule__RuleCombinator__Group_0__0__Impl rule__RuleCombinator__Group_0__1 ; 
     9528    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2901:1: rule__RuleCombinator__Group_0__0 : rule__RuleCombinator__Group_0__0__Impl rule__RuleCombinator__Group_0__1 ; 
    92249529    public final void rule__RuleCombinator__Group_0__0() throws RecognitionException { 
    92259530        int rule__RuleCombinator__Group_0__0_StartIndex = input.index(); 
     
    92289533             
    92299534        try { 
    9230             if ( state.backtracking>0 && alreadyParsedRule(input, 168) ) { return ; } 
    9231             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2808:1: ( rule__RuleCombinator__Group_0__0__Impl rule__RuleCombinator__Group_0__1 ) 
    9232             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2809:2: rule__RuleCombinator__Group_0__0__Impl rule__RuleCombinator__Group_0__1 
    9233             { 
    9234             pushFollow(FOLLOW_rule__RuleCombinator__Group_0__0__Impl_in_rule__RuleCombinator__Group_0__05772); 
     9535            if ( state.backtracking>0 && alreadyParsedRule(input, 174) ) { return ; } 
     9536            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2905:1: ( rule__RuleCombinator__Group_0__0__Impl rule__RuleCombinator__Group_0__1 ) 
     9537            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2906:2: rule__RuleCombinator__Group_0__0__Impl rule__RuleCombinator__Group_0__1 
     9538            { 
     9539            pushFollow(FOLLOW_rule__RuleCombinator__Group_0__0__Impl_in_rule__RuleCombinator__Group_0__05972); 
    92359540            rule__RuleCombinator__Group_0__0__Impl(); 
    92369541 
    92379542            state._fsp--; 
    92389543            if (state.failed) return ; 
    9239             pushFollow(FOLLOW_rule__RuleCombinator__Group_0__1_in_rule__RuleCombinator__Group_0__05775); 
     9544            pushFollow(FOLLOW_rule__RuleCombinator__Group_0__1_in_rule__RuleCombinator__Group_0__05975); 
    92409545            rule__RuleCombinator__Group_0__1(); 
    92419546 
     
    92519556        } 
    92529557        finally { 
    9253             if ( state.backtracking>0 ) { memoize(input, 168, rule__RuleCombinator__Group_0__0_StartIndex); } 
     9558            if ( state.backtracking>0 ) { memoize(input, 174, rule__RuleCombinator__Group_0__0_StartIndex); } 
    92549559 
    92559560                restoreStackSize(stackSize); 
     
    92629567 
    92639568    // $ANTLR start "rule__RuleCombinator__Group_0__0__Impl" 
    9264     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2816:1: rule__RuleCombinator__Group_0__0__Impl : ( 'rule' ) ; 
     9569    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2913:1: rule__RuleCombinator__Group_0__0__Impl : ( 'rule' ) ; 
    92659570    public final void rule__RuleCombinator__Group_0__0__Impl() throws RecognitionException { 
    92669571        int rule__RuleCombinator__Group_0__0__Impl_StartIndex = input.index(); 
     
    92699574             
    92709575        try { 
    9271             if ( state.backtracking>0 && alreadyParsedRule(input, 169) ) { return ; } 
    9272             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2820:1: ( ( 'rule' ) ) 
    9273             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2821:1: ( 'rule' ) 
    9274             { 
    9275             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2821:1: ( 'rule' ) 
    9276             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2822:1: 'rule' 
     9576            if ( state.backtracking>0 && alreadyParsedRule(input, 175) ) { return ; } 
     9577            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2917:1: ( ( 'rule' ) ) 
     9578            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2918:1: ( 'rule' ) 
     9579            { 
     9580            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2918:1: ( 'rule' ) 
     9581            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2919:1: 'rule' 
    92779582            { 
    92789583            if ( state.backtracking==0 ) { 
    92799584               before(grammarAccess.getRuleCombinatorAccess().getRuleKeyword_0_0());  
    92809585            } 
    9281             match(input,32,FOLLOW_32_in_rule__RuleCombinator__Group_0__0__Impl5803); if (state.failed) return ; 
     9586            match(input,32,FOLLOW_32_in_rule__RuleCombinator__Group_0__0__Impl6003); if (state.failed) return ; 
    92829587            if ( state.backtracking==0 ) { 
    92839588               after(grammarAccess.getRuleCombinatorAccess().getRuleKeyword_0_0());  
     
    92959600        } 
    92969601        finally { 
    9297             if ( state.backtracking>0 ) { memoize(input, 169, rule__RuleCombinator__Group_0__0__Impl_StartIndex); } 
     9602            if ( state.backtracking>0 ) { memoize(input, 175, rule__RuleCombinator__Group_0__0__Impl_StartIndex); } 
    92989603 
    92999604                restoreStackSize(stackSize); 
     
    93069611 
    93079612    // $ANTLR start "rule__RuleCombinator__Group_0__1" 
    9308     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2835:1: rule__RuleCombinator__Group_0__1 : rule__RuleCombinator__Group_0__1__Impl rule__RuleCombinator__Group_0__2 ; 
     9613    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2932:1: rule__RuleCombinator__Group_0__1 : rule__RuleCombinator__Group_0__1__Impl rule__RuleCombinator__Group_0__2 ; 
    93099614    public final void rule__RuleCombinator__Group_0__1() throws RecognitionException { 
    93109615        int rule__RuleCombinator__Group_0__1_StartIndex = input.index(); 
     
    93139618             
    93149619        try { 
    9315             if ( state.backtracking>0 && alreadyParsedRule(input, 170) ) { return ; } 
    9316             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2839:1: ( rule__RuleCombinator__Group_0__1__Impl rule__RuleCombinator__Group_0__2 ) 
    9317             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2840:2: rule__RuleCombinator__Group_0__1__Impl rule__RuleCombinator__Group_0__2 
    9318             { 
    9319             pushFollow(FOLLOW_rule__RuleCombinator__Group_0__1__Impl_in_rule__RuleCombinator__Group_0__15834); 
     9620            if ( state.backtracking>0 && alreadyParsedRule(input, 176) ) { return ; } 
     9621            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2936:1: ( rule__RuleCombinator__Group_0__1__Impl rule__RuleCombinator__Group_0__2 ) 
     9622            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2937:2: rule__RuleCombinator__Group_0__1__Impl rule__RuleCombinator__Group_0__2 
     9623            { 
     9624            pushFollow(FOLLOW_rule__RuleCombinator__Group_0__1__Impl_in_rule__RuleCombinator__Group_0__16034); 
    93209625            rule__RuleCombinator__Group_0__1__Impl(); 
    93219626 
    93229627            state._fsp--; 
    93239628            if (state.failed) return ; 
    9324             pushFollow(FOLLOW_rule__RuleCombinator__Group_0__2_in_rule__RuleCombinator__Group_0__15837); 
     9629            pushFollow(FOLLOW_rule__RuleCombinator__Group_0__2_in_rule__RuleCombinator__Group_0__16037); 
    93259630            rule__RuleCombinator__Group_0__2(); 
    93269631 
     
    93369641        } 
    93379642        finally { 
    9338             if ( state.backtracking>0 ) { memoize(input, 170, rule__RuleCombinator__Group_0__1_StartIndex); } 
     9643            if ( state.backtracking>0 ) { memoize(input, 176, rule__RuleCombinator__Group_0__1_StartIndex); } 
    93399644 
    93409645                restoreStackSize(stackSize); 
     
    93479652 
    93489653    // $ANTLR start "rule__RuleCombinator__Group_0__1__Impl" 
    9349     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2847:1: rule__RuleCombinator__Group_0__1__Impl : ( 'combinator:' ) ; 
     9654    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2944:1: rule__RuleCombinator__Group_0__1__Impl : ( 'combinator:' ) ; 
    93509655    public final void rule__RuleCombinator__Group_0__1__Impl() throws RecognitionException { 
    93519656        int rule__RuleCombinator__Group_0__1__Impl_StartIndex = input.index(); 
     
    93549659             
    93559660        try { 
    9356             if ( state.backtracking>0 && alreadyParsedRule(input, 171) ) { return ; } 
    9357             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2851:1: ( ( 'combinator:' ) ) 
    9358             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2852:1: ( 'combinator:' ) 
    9359             { 
    9360             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2852:1: ( 'combinator:' ) 
    9361             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2853:1: 'combinator:' 
     9661            if ( state.backtracking>0 && alreadyParsedRule(input, 177) ) { return ; } 
     9662            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2948:1: ( ( 'combinator:' ) ) 
     9663            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2949:1: ( 'combinator:' ) 
     9664            { 
     9665            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2949:1: ( 'combinator:' ) 
     9666            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2950:1: 'combinator:' 
    93629667            { 
    93639668            if ( state.backtracking==0 ) { 
    93649669               before(grammarAccess.getRuleCombinatorAccess().getCombinatorKeyword_0_1());  
    93659670            } 
    9366             match(input,31,FOLLOW_31_in_rule__RuleCombinator__Group_0__1__Impl5865); if (state.failed) return ; 
     9671            match(input,31,FOLLOW_31_in_rule__RuleCombinator__Group_0__1__Impl6065); if (state.failed) return ; 
    93679672            if ( state.backtracking==0 ) { 
    93689673               after(grammarAccess.getRuleCombinatorAccess().getCombinatorKeyword_0_1());  
     
    93809685        } 
    93819686        finally { 
    9382             if ( state.backtracking>0 ) { memoize(input, 171, rule__RuleCombinator__Group_0__1__Impl_StartIndex); } 
     9687            if ( state.backtracking>0 ) { memoize(input, 177, rule__RuleCombinator__Group_0__1__Impl_StartIndex); } 
    93839688 
    93849689                restoreStackSize(stackSize); 
     
    93919696 
    93929697    // $ANTLR start "rule__RuleCombinator__Group_0__2" 
    9393     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2866:1: rule__RuleCombinator__Group_0__2 : rule__RuleCombinator__Group_0__2__Impl ; 
     9698    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2963:1: rule__RuleCombinator__Group_0__2 : rule__RuleCombinator__Group_0__2__Impl ; 
    93949699    public final void rule__RuleCombinator__Group_0__2() throws RecognitionException { 
    93959700        int rule__RuleCombinator__Group_0__2_StartIndex = input.index(); 
     
    93989703             
    93999704        try { 
    9400             if ( state.backtracking>0 && alreadyParsedRule(input, 172) ) { return ; } 
    9401             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2870:1: ( rule__RuleCombinator__Group_0__2__Impl ) 
    9402             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2871:2: rule__RuleCombinator__Group_0__2__Impl 
    9403             { 
    9404             pushFollow(FOLLOW_rule__RuleCombinator__Group_0__2__Impl_in_rule__RuleCombinator__Group_0__25896); 
     9705            if ( state.backtracking>0 && alreadyParsedRule(input, 178) ) { return ; } 
     9706            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2967:1: ( rule__RuleCombinator__Group_0__2__Impl ) 
     9707            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2968:2: rule__RuleCombinator__Group_0__2__Impl 
     9708            { 
     9709            pushFollow(FOLLOW_rule__RuleCombinator__Group_0__2__Impl_in_rule__RuleCombinator__Group_0__26096); 
    94059710            rule__RuleCombinator__Group_0__2__Impl(); 
    94069711 
     
    94169721        } 
    94179722        finally { 
    9418             if ( state.backtracking>0 ) { memoize(input, 172, rule__RuleCombinator__Group_0__2_StartIndex); } 
     9723            if ( state.backtracking>0 ) { memoize(input, 178, rule__RuleCombinator__Group_0__2_StartIndex); } 
    94199724 
    94209725                restoreStackSize(stackSize); 
     
    94279732 
    94289733    // $ANTLR start "rule__RuleCombinator__Group_0__2__Impl" 
    9429     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2877:1: rule__RuleCombinator__Group_0__2__Impl : ( ( rule__RuleCombinator__NameAssignment_0_2 ) ) ; 
     9734    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2974:1: rule__RuleCombinator__Group_0__2__Impl : ( ( rule__RuleCombinator__NameAssignment_0_2 ) ) ; 
    94309735    public final void rule__RuleCombinator__Group_0__2__Impl() throws RecognitionException { 
    94319736        int rule__RuleCombinator__Group_0__2__Impl_StartIndex = input.index(); 
     
    94349739             
    94359740        try { 
    9436             if ( state.backtracking>0 && alreadyParsedRule(input, 173) ) { return ; } 
    9437             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2881:1: ( ( ( rule__RuleCombinator__NameAssignment_0_2 ) ) ) 
    9438             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2882:1: ( ( rule__RuleCombinator__NameAssignment_0_2 ) ) 
    9439             { 
    9440             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2882:1: ( ( rule__RuleCombinator__NameAssignment_0_2 ) ) 
    9441             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2883:1: ( rule__RuleCombinator__NameAssignment_0_2 ) 
     9741            if ( state.backtracking>0 && alreadyParsedRule(input, 179) ) { return ; } 
     9742            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2978:1: ( ( ( rule__RuleCombinator__NameAssignment_0_2 ) ) ) 
     9743            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2979:1: ( ( rule__RuleCombinator__NameAssignment_0_2 ) ) 
     9744            { 
     9745            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2979:1: ( ( rule__RuleCombinator__NameAssignment_0_2 ) ) 
     9746            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2980:1: ( rule__RuleCombinator__NameAssignment_0_2 ) 
    94429747            { 
    94439748            if ( state.backtracking==0 ) { 
    94449749               before(grammarAccess.getRuleCombinatorAccess().getNameAssignment_0_2());  
    94459750            } 
    9446             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2884:1: ( rule__RuleCombinator__NameAssignment_0_2 ) 
    9447             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2884:2: rule__RuleCombinator__NameAssignment_0_2 
    9448             { 
    9449             pushFollow(FOLLOW_rule__RuleCombinator__NameAssignment_0_2_in_rule__RuleCombinator__Group_0__2__Impl5923); 
     9751            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2981:1: ( rule__RuleCombinator__NameAssignment_0_2 ) 
     9752            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2981:2: rule__RuleCombinator__NameAssignment_0_2 
     9753            { 
     9754            pushFollow(FOLLOW_rule__RuleCombinator__NameAssignment_0_2_in_rule__RuleCombinator__Group_0__2__Impl6123); 
    94509755            rule__RuleCombinator__NameAssignment_0_2(); 
    94519756 
     
    94709775        } 
    94719776        finally { 
    9472             if ( state.backtracking>0 ) { memoize(input, 173, rule__RuleCombinator__Group_0__2__Impl_StartIndex); } 
     9777            if ( state.backtracking>0 ) { memoize(input, 179, rule__RuleCombinator__Group_0__2__Impl_StartIndex); } 
    94739778 
    94749779                restoreStackSize(stackSize); 
     
    94819786 
    94829787    // $ANTLR start "rule__RuleCombinator__Group_2__0" 
    9483     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2900:1: rule__RuleCombinator__Group_2__0 : rule__RuleCombinator__Group_2__0__Impl rule__RuleCombinator__Group_2__1 ; 
     9788    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2997:1: rule__RuleCombinator__Group_2__0 : rule__RuleCombinator__Group_2__0__Impl rule__RuleCombinator__Group_2__1 ; 
    94849789    public final void rule__RuleCombinator__Group_2__0() throws RecognitionException { 
    94859790        int rule__RuleCombinator__Group_2__0_StartIndex = input.index(); 
     
    94889793             
    94899794        try { 
    9490             if ( state.backtracking>0 && alreadyParsedRule(input, 174) ) { return ; } 
    9491             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2904:1: ( rule__RuleCombinator__Group_2__0__Impl rule__RuleCombinator__Group_2__1 ) 
    9492             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2905:2: rule__RuleCombinator__Group_2__0__Impl rule__RuleCombinator__Group_2__1 
    9493             { 
    9494             pushFollow(FOLLOW_rule__RuleCombinator__Group_2__0__Impl_in_rule__RuleCombinator__Group_2__05959); 
     9795            if ( state.backtracking>0 && alreadyParsedRule(input, 180) ) { return ; } 
     9796            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3001:1: ( rule__RuleCombinator__Group_2__0__Impl rule__RuleCombinator__Group_2__1 ) 
     9797            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3002:2: rule__RuleCombinator__Group_2__0__Impl rule__RuleCombinator__Group_2__1 
     9798            { 
     9799            pushFollow(FOLLOW_rule__RuleCombinator__Group_2__0__Impl_in_rule__RuleCombinator__Group_2__06159); 
    94959800            rule__RuleCombinator__Group_2__0__Impl(); 
    94969801 
    94979802            state._fsp--; 
    94989803            if (state.failed) return ; 
    9499             pushFollow(FOLLOW_rule__RuleCombinator__Group_2__1_in_rule__RuleCombinator__Group_2__05962); 
     9804            pushFollow(FOLLOW_rule__RuleCombinator__Group_2__1_in_rule__RuleCombinator__Group_2__06162); 
    95009805            rule__RuleCombinator__Group_2__1(); 
    95019806 
     
    95119816        } 
    95129817        finally { 
    9513             if ( state.backtracking>0 ) { memoize(input, 174, rule__RuleCombinator__Group_2__0_StartIndex); } 
     9818            if ( state.backtracking>0 ) { memoize(input, 180, rule__RuleCombinator__Group_2__0_StartIndex); } 
    95149819 
    95159820                restoreStackSize(stackSize); 
     
    95229827 
    95239828    // $ANTLR start "rule__RuleCombinator__Group_2__0__Impl" 
    9524     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2912:1: rule__RuleCombinator__Group_2__0__Impl : ( '(' ) ; 
     9829    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3009:1: rule__RuleCombinator__Group_2__0__Impl : ( '(' ) ; 
    95259830    public final void rule__RuleCombinator__Group_2__0__Impl() throws RecognitionException { 
    95269831        int rule__RuleCombinator__Group_2__0__Impl_StartIndex = input.index(); 
     
    95299834             
    95309835        try { 
    9531             if ( state.backtracking>0 && alreadyParsedRule(input, 175) ) { return ; } 
    9532             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2916:1: ( ( '(' ) ) 
    9533             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2917:1: ( '(' ) 
    9534             { 
    9535             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2917:1: ( '(' ) 
    9536             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2918:1: '(' 
     9836            if ( state.backtracking>0 && alreadyParsedRule(input, 181) ) { return ; } 
     9837            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3013:1: ( ( '(' ) ) 
     9838            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3014:1: ( '(' ) 
     9839            { 
     9840            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3014:1: ( '(' ) 
     9841            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3015:1: '(' 
    95379842            { 
    95389843            if ( state.backtracking==0 ) { 
    95399844               before(grammarAccess.getRuleCombinatorAccess().getLeftParenthesisKeyword_2_0());  
    95409845            } 
    9541             match(input,17,FOLLOW_17_in_rule__RuleCombinator__Group_2__0__Impl5990); if (state.failed) return ; 
     9846            match(input,17,FOLLOW_17_in_rule__RuleCombinator__Group_2__0__Impl6190); if (state.failed) return ; 
    95429847            if ( state.backtracking==0 ) { 
    95439848               after(grammarAccess.getRuleCombinatorAccess().getLeftParenthesisKeyword_2_0());  
     
    95559860        } 
    95569861        finally { 
    9557             if ( state.backtracking>0 ) { memoize(input, 175, rule__RuleCombinator__Group_2__0__Impl_StartIndex); } 
     9862            if ( state.backtracking>0 ) { memoize(input, 181, rule__RuleCombinator__Group_2__0__Impl_StartIndex); } 
    95589863 
    95599864                restoreStackSize(stackSize); 
     
    95669871 
    95679872    // $ANTLR start "rule__RuleCombinator__Group_2__1" 
    9568     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2931:1: rule__RuleCombinator__Group_2__1 : rule__RuleCombinator__Group_2__1__Impl rule__RuleCombinator__Group_2__2 ; 
     9873    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3028:1: rule__RuleCombinator__Group_2__1 : rule__RuleCombinator__Group_2__1__Impl rule__RuleCombinator__Group_2__2 ; 
    95699874    public final void rule__RuleCombinator__Group_2__1() throws RecognitionException { 
    95709875        int rule__RuleCombinator__Group_2__1_StartIndex = input.index(); 
     
    95739878             
    95749879        try { 
    9575             if ( state.backtracking>0 && alreadyParsedRule(input, 176) ) { return ; } 
    9576             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2935:1: ( rule__RuleCombinator__Group_2__1__Impl rule__RuleCombinator__Group_2__2 ) 
    9577             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2936:2: rule__RuleCombinator__Group_2__1__Impl rule__RuleCombinator__Group_2__2 
    9578             { 
    9579             pushFollow(FOLLOW_rule__RuleCombinator__Group_2__1__Impl_in_rule__RuleCombinator__Group_2__16021); 
     9880            if ( state.backtracking>0 && alreadyParsedRule(input, 182) ) { return ; } 
     9881            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3032:1: ( rule__RuleCombinator__Group_2__1__Impl rule__RuleCombinator__Group_2__2 ) 
     9882            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3033:2: rule__RuleCombinator__Group_2__1__Impl rule__RuleCombinator__Group_2__2 
     9883            { 
     9884            pushFollow(FOLLOW_rule__RuleCombinator__Group_2__1__Impl_in_rule__RuleCombinator__Group_2__16221); 
    95809885            rule__RuleCombinator__Group_2__1__Impl(); 
    95819886 
    95829887            state._fsp--; 
    95839888            if (state.failed) return ; 
    9584             pushFollow(FOLLOW_rule__RuleCombinator__Group_2__2_in_rule__RuleCombinator__Group_2__16024); 
     9889            pushFollow(FOLLOW_rule__RuleCombinator__Group_2__2_in_rule__RuleCombinator__Group_2__16224); 
    95859890            rule__RuleCombinator__Group_2__2(); 
    95869891 
     
    95969901        } 
    95979902        finally { 
    9598             if ( state.backtracking>0 ) { memoize(input, 176, rule__RuleCombinator__Group_2__1_StartIndex); } 
     9903            if ( state.backtracking>0 ) { memoize(input, 182, rule__RuleCombinator__Group_2__1_StartIndex); } 
    95999904 
    96009905                restoreStackSize(stackSize); 
     
    96079912 
    96089913    // $ANTLR start "rule__RuleCombinator__Group_2__1__Impl" 
    9609     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2943:1: rule__RuleCombinator__Group_2__1__Impl : ( ( rule__RuleCombinator__LABELAssignment_2_1 ) ) ; 
     9914    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3040:1: rule__RuleCombinator__Group_2__1__Impl : ( ( rule__RuleCombinator__LABELAssignment_2_1 ) ) ; 
    96109915    public final void rule__RuleCombinator__Group_2__1__Impl() throws RecognitionException { 
    96119916        int rule__RuleCombinator__Group_2__1__Impl_StartIndex = input.index(); 
     
    96149919             
    96159920        try { 
    9616             if ( state.backtracking>0 && alreadyParsedRule(input, 177) ) { return ; } 
    9617             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2947:1: ( ( ( rule__RuleCombinator__LABELAssignment_2_1 ) ) ) 
    9618             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2948:1: ( ( rule__RuleCombinator__LABELAssignment_2_1 ) ) 
    9619             { 
    9620             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2948:1: ( ( rule__RuleCombinator__LABELAssignment_2_1 ) ) 
    9621             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2949:1: ( rule__RuleCombinator__LABELAssignment_2_1 ) 
     9921            if ( state.backtracking>0 && alreadyParsedRule(input, 183) ) { return ; } 
     9922            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3044:1: ( ( ( rule__RuleCombinator__LABELAssignment_2_1 ) ) ) 
     9923            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3045:1: ( ( rule__RuleCombinator__LABELAssignment_2_1 ) ) 
     9924            { 
     9925            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3045:1: ( ( rule__RuleCombinator__LABELAssignment_2_1 ) ) 
     9926            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3046:1: ( rule__RuleCombinator__LABELAssignment_2_1 ) 
    96229927            { 
    96239928            if ( state.backtracking==0 ) { 
    96249929               before(grammarAccess.getRuleCombinatorAccess().getLABELAssignment_2_1());  
    96259930            } 
    9626             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2950:1: ( rule__RuleCombinator__LABELAssignment_2_1 ) 
    9627             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2950:2: rule__RuleCombinator__LABELAssignment_2_1 
    9628             { 
    9629             pushFollow(FOLLOW_rule__RuleCombinator__LABELAssignment_2_1_in_rule__RuleCombinator__Group_2__1__Impl6051); 
     9931            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3047:1: ( rule__RuleCombinator__LABELAssignment_2_1 ) 
     9932            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3047:2: rule__RuleCombinator__LABELAssignment_2_1 
     9933            { 
     9934            pushFollow(FOLLOW_rule__RuleCombinator__LABELAssignment_2_1_in_rule__RuleCombinator__Group_2__1__Impl6251); 
    96309935            rule__RuleCombinator__LABELAssignment_2_1(); 
    96319936 
     
    96509955        } 
    96519956        finally { 
    9652             if ( state.backtracking>0 ) { memoize(input, 177, rule__RuleCombinator__Group_2__1__Impl_StartIndex); } 
     9957            if ( state.backtracking>0 ) { memoize(input, 183, rule__RuleCombinator__Group_2__1__Impl_StartIndex); } 
    96539958 
    96549959                restoreStackSize(stackSize); 
     
    96619966 
    96629967    // $ANTLR start "rule__RuleCombinator__Group_2__2" 
    9663     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2960:1: rule__RuleCombinator__Group_2__2 : rule__RuleCombinator__Group_2__2__Impl ; 
     9968    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3057:1: rule__RuleCombinator__Group_2__2 : rule__RuleCombinator__Group_2__2__Impl ; 
    96649969    public final void rule__RuleCombinator__Group_2__2() throws RecognitionException { 
    96659970        int rule__RuleCombinator__Group_2__2_StartIndex = input.index(); 
     
    96689973             
    96699974        try { 
    9670             if ( state.backtracking>0 && alreadyParsedRule(input, 178) ) { return ; } 
    9671             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2964:1: ( rule__RuleCombinator__Group_2__2__Impl ) 
    9672             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2965:2: rule__RuleCombinator__Group_2__2__Impl 
    9673             { 
    9674             pushFollow(FOLLOW_rule__RuleCombinator__Group_2__2__Impl_in_rule__RuleCombinator__Group_2__26081); 
     9975            if ( state.backtracking>0 && alreadyParsedRule(input, 184) ) { return ; } 
     9976            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3061:1: ( rule__RuleCombinator__Group_2__2__Impl ) 
     9977            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3062:2: rule__RuleCombinator__Group_2__2__Impl 
     9978            { 
     9979            pushFollow(FOLLOW_rule__RuleCombinator__Group_2__2__Impl_in_rule__RuleCombinator__Group_2__26281); 
    96759980            rule__RuleCombinator__Group_2__2__Impl(); 
    96769981 
     
    96869991        } 
    96879992        finally { 
    9688             if ( state.backtracking>0 ) { memoize(input, 178, rule__RuleCombinator__Group_2__2_StartIndex); } 
     9993            if ( state.backtracking>0 ) { memoize(input, 184, rule__RuleCombinator__Group_2__2_StartIndex); } 
    96899994 
    96909995                restoreStackSize(stackSize); 
     
    969710002 
    969810003    // $ANTLR start "rule__RuleCombinator__Group_2__2__Impl" 
    9699     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2971:1: rule__RuleCombinator__Group_2__2__Impl : ( ')' ) ; 
     10004    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3068:1: rule__RuleCombinator__Group_2__2__Impl : ( ')' ) ; 
    970010005    public final void rule__RuleCombinator__Group_2__2__Impl() throws RecognitionException { 
    970110006        int rule__RuleCombinator__Group_2__2__Impl_StartIndex = input.index(); 
     
    970410009             
    970510010        try { 
    9706             if ( state.backtracking>0 && alreadyParsedRule(input, 179) ) { return ; } 
    9707             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2975:1: ( ( ')' ) ) 
    9708             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2976:1: ( ')' ) 
    9709             { 
    9710             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2976:1: ( ')' ) 
    9711             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2977:1: ')' 
     10011            if ( state.backtracking>0 && alreadyParsedRule(input, 185) ) { return ; } 
     10012            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3072:1: ( ( ')' ) ) 
     10013            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3073:1: ( ')' ) 
     10014            { 
     10015            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3073:1: ( ')' ) 
     10016            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3074:1: ')' 
    971210017            { 
    971310018            if ( state.backtracking==0 ) { 
    971410019               before(grammarAccess.getRuleCombinatorAccess().getRightParenthesisKeyword_2_2());  
    971510020            } 
    9716             match(input,13,FOLLOW_13_in_rule__RuleCombinator__Group_2__2__Impl6109); if (state.failed) return ; 
     10021            match(input,13,FOLLOW_13_in_rule__RuleCombinator__Group_2__2__Impl6309); if (state.failed) return ; 
    971710022            if ( state.backtracking==0 ) { 
    971810023               after(grammarAccess.getRuleCombinatorAccess().getRightParenthesisKeyword_2_2());  
     
    973010035        } 
    973110036        finally { 
    9732             if ( state.backtracking>0 ) { memoize(input, 179, rule__RuleCombinator__Group_2__2__Impl_StartIndex); } 
     10037            if ( state.backtracking>0 ) { memoize(input, 185, rule__RuleCombinator__Group_2__2__Impl_StartIndex); } 
    973310038 
    973410039                restoreStackSize(stackSize); 
     
    974110046 
    974210047    // $ANTLR start "rule__HookCombinator__Group__0" 
    9743     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:2996:1: rule__HookCombinator__Group__0 : rule__HookCombinator__Group__0__Impl rule__HookCombinator__Group__1 ; 
     10048    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3093:1: rule__HookCombinator__Group__0 : rule__HookCombinator__Group__0__Impl rule__HookCombinator__Group__1 ; 
    974410049    public final void rule__HookCombinator__Group__0() throws RecognitionException { 
    974510050        int rule__HookCombinator__Group__0_StartIndex = input.index(); 
     
    974810053             
    974910054        try { 
    9750             if ( state.backtracking>0 && alreadyParsedRule(input, 180) ) { return ; } 
    9751             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3000:1: ( rule__HookCombinator__Group__0__Impl rule__HookCombinator__Group__1 ) 
    9752             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3001:2: rule__HookCombinator__Group__0__Impl rule__HookCombinator__Group__1 
    9753             { 
    9754             pushFollow(FOLLOW_rule__HookCombinator__Group__0__Impl_in_rule__HookCombinator__Group__06146); 
     10055            if ( state.backtracking>0 && alreadyParsedRule(input, 186) ) { return ; } 
     10056            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3097:1: ( rule__HookCombinator__Group__0__Impl rule__HookCombinator__Group__1 ) 
     10057            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3098:2: rule__HookCombinator__Group__0__Impl rule__HookCombinator__Group__1 
     10058            { 
     10059            pushFollow(FOLLOW_rule__HookCombinator__Group__0__Impl_in_rule__HookCombinator__Group__06346); 
    975510060            rule__HookCombinator__Group__0__Impl(); 
    975610061 
    975710062            state._fsp--; 
    975810063            if (state.failed) return ; 
    9759             pushFollow(FOLLOW_rule__HookCombinator__Group__1_in_rule__HookCombinator__Group__06149); 
     10064            pushFollow(FOLLOW_rule__HookCombinator__Group__1_in_rule__HookCombinator__Group__06349); 
    976010065            rule__HookCombinator__Group__1(); 
    976110066 
     
    977110076        } 
    977210077        finally { 
    9773             if ( state.backtracking>0 ) { memoize(input, 180, rule__HookCombinator__Group__0_StartIndex); } 
     10078            if ( state.backtracking>0 ) { memoize(input, 186, rule__HookCombinator__Group__0_StartIndex); } 
    977410079 
    977510080                restoreStackSize(stackSize); 
     
    978210087 
    978310088    // $ANTLR start "rule__HookCombinator__Group__0__Impl" 
    9784     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3008:1: rule__HookCombinator__Group__0__Impl : ( 'hook' ) ; 
     10089    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3105:1: rule__HookCombinator__Group__0__Impl : ( 'hook' ) ; 
    978510090    public final void rule__HookCombinator__Group__0__Impl() throws RecognitionException { 
    978610091        int rule__HookCombinator__Group__0__Impl_StartIndex = input.index(); 
     
    978910094             
    979010095        try { 
    9791             if ( state.backtracking>0 && alreadyParsedRule(input, 181) ) { return ; } 
    9792             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3012:1: ( ( 'hook' ) ) 
    9793             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3013:1: ( 'hook' ) 
    9794             { 
    9795             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3013:1: ( 'hook' ) 
    9796             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3014:1: 'hook' 
     10096            if ( state.backtracking>0 && alreadyParsedRule(input, 187) ) { return ; } 
     10097            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3109:1: ( ( 'hook' ) ) 
     10098            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3110:1: ( 'hook' ) 
     10099            { 
     10100            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3110:1: ( 'hook' ) 
     10101            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3111:1: 'hook' 
    979710102            { 
    979810103            if ( state.backtracking==0 ) { 
    979910104               before(grammarAccess.getHookCombinatorAccess().getHookKeyword_0());  
    980010105            } 
    9801             match(input,33,FOLLOW_33_in_rule__HookCombinator__Group__0__Impl6177); if (state.failed) return ; 
     10106            match(input,33,FOLLOW_33_in_rule__HookCombinator__Group__0__Impl6377); if (state.failed) return ; 
    980210107            if ( state.backtracking==0 ) { 
    980310108               after(grammarAccess.getHookCombinatorAccess().getHookKeyword_0());  
     
    981510120        } 
    981610121        finally { 
    9817             if ( state.backtracking>0 ) { memoize(input, 181, rule__HookCombinator__Group__0__Impl_StartIndex); } 
     10122            if ( state.backtracking>0 ) { memoize(input, 187, rule__HookCombinator__Group__0__Impl_StartIndex); } 
    981810123 
    981910124                restoreStackSize(stackSize); 
     
    982610131 
    982710132    // $ANTLR start "rule__HookCombinator__Group__1" 
    9828     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3027:1: rule__HookCombinator__Group__1 : rule__HookCombinator__Group__1__Impl rule__HookCombinator__Group__2 ; 
     10133    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3124:1: rule__HookCombinator__Group__1 : rule__HookCombinator__Group__1__Impl rule__HookCombinator__Group__2 ; 
    982910134    public final void rule__HookCombinator__Group__1() throws RecognitionException { 
    983010135        int rule__HookCombinator__Group__1_StartIndex = input.index(); 
     
    983310138             
    983410139        try { 
    9835             if ( state.backtracking>0 && alreadyParsedRule(input, 182) ) { return ; } 
    9836             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3031:1: ( rule__HookCombinator__Group__1__Impl rule__HookCombinator__Group__2 ) 
    9837             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3032:2: rule__HookCombinator__Group__1__Impl rule__HookCombinator__Group__2 
    9838             { 
    9839             pushFollow(FOLLOW_rule__HookCombinator__Group__1__Impl_in_rule__HookCombinator__Group__16208); 
     10140            if ( state.backtracking>0 && alreadyParsedRule(input, 188) ) { return ; } 
     10141            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3128:1: ( rule__HookCombinator__Group__1__Impl rule__HookCombinator__Group__2 ) 
     10142            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3129:2: rule__HookCombinator__Group__1__Impl rule__HookCombinator__Group__2 
     10143            { 
     10144            pushFollow(FOLLOW_rule__HookCombinator__Group__1__Impl_in_rule__HookCombinator__Group__16408); 
    984010145            rule__HookCombinator__Group__1__Impl(); 
    984110146 
    984210147            state._fsp--; 
    984310148            if (state.failed) return ; 
    9844             pushFollow(FOLLOW_rule__HookCombinator__Group__2_in_rule__HookCombinator__Group__16211); 
     10149            pushFollow(FOLLOW_rule__HookCombinator__Group__2_in_rule__HookCombinator__Group__16411); 
    984510150            rule__HookCombinator__Group__2(); 
    984610151 
     
    985610161        } 
    985710162        finally { 
    9858             if ( state.backtracking>0 ) { memoize(input, 182, rule__HookCombinator__Group__1_StartIndex); } 
     10163            if ( state.backtracking>0 ) { memoize(input, 188, rule__HookCombinator__Group__1_StartIndex); } 
    985910164 
    986010165                restoreStackSize(stackSize); 
     
    986710172 
    986810173    // $ANTLR start "rule__HookCombinator__Group__1__Impl" 
    9869     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3039:1: rule__HookCombinator__Group__1__Impl : ( 'combinator:' ) ; 
     10174    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3136:1: rule__HookCombinator__Group__1__Impl : ( 'combinator:' ) ; 
    987010175    public final void rule__HookCombinator__Group__1__Impl() throws RecognitionException { 
    987110176        int rule__HookCombinator__Group__1__Impl_StartIndex = input.index(); 
     
    987410179             
    987510180        try { 
    9876             if ( state.backtracking>0 && alreadyParsedRule(input, 183) ) { return ; } 
    9877             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3043:1: ( ( 'combinator:' ) ) 
    9878             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3044:1: ( 'combinator:' ) 
    9879             { 
    9880             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3044:1: ( 'combinator:' ) 
    9881             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3045:1: 'combinator:' 
     10181            if ( state.backtracking>0 && alreadyParsedRule(input, 189) ) { return ; } 
     10182            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3140:1: ( ( 'combinator:' ) ) 
     10183            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3141:1: ( 'combinator:' ) 
     10184            { 
     10185            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3141:1: ( 'combinator:' ) 
     10186            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3142:1: 'combinator:' 
    988210187            { 
    988310188            if ( state.backtracking==0 ) { 
    988410189               before(grammarAccess.getHookCombinatorAccess().getCombinatorKeyword_1());  
    988510190            } 
    9886             match(input,31,FOLLOW_31_in_rule__HookCombinator__Group__1__Impl6239); if (state.failed) return ; 
     10191            match(input,31,FOLLOW_31_in_rule__HookCombinator__Group__1__Impl6439); if (state.failed) return ; 
    988710192            if ( state.backtracking==0 ) { 
    988810193               after(grammarAccess.getHookCombinatorAccess().getCombinatorKeyword_1());  
     
    990010205        } 
    990110206        finally { 
    9902             if ( state.backtracking>0 ) { memoize(input, 183, rule__HookCombinator__Group__1__Impl_StartIndex); } 
     10207            if ( state.backtracking>0 ) { memoize(input, 189, rule__HookCombinator__Group__1__Impl_StartIndex); } 
    990310208 
    990410209                restoreStackSize(stackSize); 
     
    991110216 
    991210217    // $ANTLR start "rule__HookCombinator__Group__2" 
    9913     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3058:1: rule__HookCombinator__Group__2 : rule__HookCombinator__Group__2__Impl rule__HookCombinator__Group__3 ; 
     10218    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3155:1: rule__HookCombinator__Group__2 : rule__HookCombinator__Group__2__Impl rule__HookCombinator__Group__3 ; 
    991410219    public final void rule__HookCombinator__Group__2() throws RecognitionException { 
    991510220        int rule__HookCombinator__Group__2_StartIndex = input.index(); 
     
    991810223             
    991910224        try { 
    9920             if ( state.backtracking>0 && alreadyParsedRule(input, 184) ) { return ; } 
    9921             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3062:1: ( rule__HookCombinator__Group__2__Impl rule__HookCombinator__Group__3 ) 
    9922             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3063:2: rule__HookCombinator__Group__2__Impl rule__HookCombinator__Group__3 
    9923             { 
    9924             pushFollow(FOLLOW_rule__HookCombinator__Group__2__Impl_in_rule__HookCombinator__Group__26270); 
     10225            if ( state.backtracking>0 && alreadyParsedRule(input, 190) ) { return ; } 
     10226            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3159:1: ( rule__HookCombinator__Group__2__Impl rule__HookCombinator__Group__3 ) 
     10227            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3160:2: rule__HookCombinator__Group__2__Impl rule__HookCombinator__Group__3 
     10228            { 
     10229            pushFollow(FOLLOW_rule__HookCombinator__Group__2__Impl_in_rule__HookCombinator__Group__26470); 
    992510230            rule__HookCombinator__Group__2__Impl(); 
    992610231 
    992710232            state._fsp--; 
    992810233            if (state.failed) return ; 
    9929             pushFollow(FOLLOW_rule__HookCombinator__Group__3_in_rule__HookCombinator__Group__26273); 
     10234            pushFollow(FOLLOW_rule__HookCombinator__Group__3_in_rule__HookCombinator__Group__26473); 
    993010235            rule__HookCombinator__Group__3(); 
    993110236 
     
    994110246        } 
    994210247        finally { 
    9943             if ( state.backtracking>0 ) { memoize(input, 184, rule__HookCombinator__Group__2_StartIndex); } 
     10248            if ( state.backtracking>0 ) { memoize(input, 190, rule__HookCombinator__Group__2_StartIndex); } 
    994410249 
    994510250                restoreStackSize(stackSize); 
     
    995210257 
    995310258    // $ANTLR start "rule__HookCombinator__Group__2__Impl" 
    9954     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3070:1: rule__HookCombinator__Group__2__Impl : ( ( rule__HookCombinator__NameAssignment_2 ) ) ; 
     10259    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3167:1: rule__HookCombinator__Group__2__Impl : ( ( rule__HookCombinator__NameAssignment_2 ) ) ; 
    995510260    public final void rule__HookCombinator__Group__2__Impl() throws RecognitionException { 
    995610261        int rule__HookCombinator__Group__2__Impl_StartIndex = input.index(); 
     
    995910264             
    996010265        try { 
    9961             if ( state.backtracking>0 && alreadyParsedRule(input, 185) ) { return ; } 
    9962             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3074:1: ( ( ( rule__HookCombinator__NameAssignment_2 ) ) ) 
    9963             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3075:1: ( ( rule__HookCombinator__NameAssignment_2 ) ) 
    9964             { 
    9965             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3075:1: ( ( rule__HookCombinator__NameAssignment_2 ) ) 
    9966             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3076:1: ( rule__HookCombinator__NameAssignment_2 ) 
     10266            if ( state.backtracking>0 && alreadyParsedRule(input, 191) ) { return ; } 
     10267            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3171:1: ( ( ( rule__HookCombinator__NameAssignment_2 ) ) ) 
     10268            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3172:1: ( ( rule__HookCombinator__NameAssignment_2 ) ) 
     10269            { 
     10270            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3172:1: ( ( rule__HookCombinator__NameAssignment_2 ) ) 
     10271            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3173:1: ( rule__HookCombinator__NameAssignment_2 ) 
    996710272            { 
    996810273            if ( state.backtracking==0 ) { 
    996910274               before(grammarAccess.getHookCombinatorAccess().getNameAssignment_2());  
    997010275            } 
    9971             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3077:1: ( rule__HookCombinator__NameAssignment_2 ) 
    9972             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3077:2: rule__HookCombinator__NameAssignment_2 
    9973             { 
    9974             pushFollow(FOLLOW_rule__HookCombinator__NameAssignment_2_in_rule__HookCombinator__Group__2__Impl6300); 
     10276            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3174:1: ( rule__HookCombinator__NameAssignment_2 ) 
     10277            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3174:2: rule__HookCombinator__NameAssignment_2 
     10278            { 
     10279            pushFollow(FOLLOW_rule__HookCombinator__NameAssignment_2_in_rule__HookCombinator__Group__2__Impl6500); 
    997510280            rule__HookCombinator__NameAssignment_2(); 
    997610281 
     
    999510300        } 
    999610301        finally { 
    9997             if ( state.backtracking>0 ) { memoize(input, 185, rule__HookCombinator__Group__2__Impl_StartIndex); } 
     10302            if ( state.backtracking>0 ) { memoize(input, 191, rule__HookCombinator__Group__2__Impl_StartIndex); } 
    999810303 
    999910304                restoreStackSize(stackSize); 
     
    1000610311 
    1000710312    // $ANTLR start "rule__HookCombinator__Group__3" 
    10008     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3087:1: rule__HookCombinator__Group__3 : rule__HookCombinator__Group__3__Impl rule__HookCombinator__Group__4 ; 
     10313    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3184:1: rule__HookCombinator__Group__3 : rule__HookCombinator__Group__3__Impl rule__HookCombinator__Group__4 ; 
    1000910314    public final void rule__HookCombinator__Group__3() throws RecognitionException { 
    1001010315        int rule__HookCombinator__Group__3_StartIndex = input.index(); 
     
    1001310318             
    1001410319        try { 
    10015             if ( state.backtracking>0 && alreadyParsedRule(input, 186) ) { return ; } 
    10016             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3091:1: ( rule__HookCombinator__Group__3__Impl rule__HookCombinator__Group__4 ) 
    10017             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3092:2: rule__HookCombinator__Group__3__Impl rule__HookCombinator__Group__4 
    10018             { 
    10019             pushFollow(FOLLOW_rule__HookCombinator__Group__3__Impl_in_rule__HookCombinator__Group__36330); 
     10320            if ( state.backtracking>0 && alreadyParsedRule(input, 192) ) { return ; } 
     10321            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3188:1: ( rule__HookCombinator__Group__3__Impl rule__HookCombinator__Group__4 ) 
     10322            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3189:2: rule__HookCombinator__Group__3__Impl rule__HookCombinator__Group__4 
     10323            { 
     10324            pushFollow(FOLLOW_rule__HookCombinator__Group__3__Impl_in_rule__HookCombinator__Group__36530); 
    1002010325            rule__HookCombinator__Group__3__Impl(); 
    1002110326 
    1002210327            state._fsp--; 
    1002310328            if (state.failed) return ; 
    10024             pushFollow(FOLLOW_rule__HookCombinator__Group__4_in_rule__HookCombinator__Group__36333); 
     10329            pushFollow(FOLLOW_rule__HookCombinator__Group__4_in_rule__HookCombinator__Group__36533); 
    1002510330            rule__HookCombinator__Group__4(); 
    1002610331 
     
    1003610341        } 
    1003710342        finally { 
    10038             if ( state.backtracking>0 ) { memoize(input, 186, rule__HookCombinator__Group__3_StartIndex); } 
     10343            if ( state.backtracking>0 ) { memoize(input, 192, rule__HookCombinator__Group__3_StartIndex); } 
    1003910344 
    1004010345                restoreStackSize(stackSize); 
     
    1004710352 
    1004810353    // $ANTLR start "rule__HookCombinator__Group__3__Impl" 
    10049     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3099:1: rule__HookCombinator__Group__3__Impl : ( '(' ) ; 
     10354    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3196:1: rule__HookCombinator__Group__3__Impl : ( '(' ) ; 
    1005010355    public final void rule__HookCombinator__Group__3__Impl() throws RecognitionException { 
    1005110356        int rule__HookCombinator__Group__3__Impl_StartIndex = input.index(); 
     
    1005410359             
    1005510360        try { 
    10056             if ( state.backtracking>0 && alreadyParsedRule(input, 187) ) { return ; } 
    10057             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3103:1: ( ( '(' ) ) 
    10058             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3104:1: ( '(' ) 
    10059             { 
    10060             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3104:1: ( '(' ) 
    10061             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3105:1: '(' 
     10361            if ( state.backtracking>0 && alreadyParsedRule(input, 193) ) { return ; } 
     10362            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3200:1: ( ( '(' ) ) 
     10363            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3201:1: ( '(' ) 
     10364            { 
     10365            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3201:1: ( '(' ) 
     10366            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3202:1: '(' 
    1006210367            { 
    1006310368            if ( state.backtracking==0 ) { 
    1006410369               before(grammarAccess.getHookCombinatorAccess().getLeftParenthesisKeyword_3());  
    1006510370            } 
    10066             match(input,17,FOLLOW_17_in_rule__HookCombinator__Group__3__Impl6361); if (state.failed) return ; 
     10371            match(input,17,FOLLOW_17_in_rule__HookCombinator__Group__3__Impl6561); if (state.failed) return ; 
    1006710372            if ( state.backtracking==0 ) { 
    1006810373               after(grammarAccess.getHookCombinatorAccess().getLeftParenthesisKeyword_3());  
     
    1008010385        } 
    1008110386        finally { 
    10082             if ( state.backtracking>0 ) { memoize(input, 187, rule__HookCombinator__Group__3__Impl_StartIndex); } 
     10387            if ( state.backtracking>0 ) { memoize(input, 193, rule__HookCombinator__Group__3__Impl_StartIndex); } 
    1008310388 
    1008410389                restoreStackSize(stackSize); 
     
    1009110396 
    1009210397    // $ANTLR start "rule__HookCombinator__Group__4" 
    10093     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3118:1: rule__HookCombinator__Group__4 : rule__HookCombinator__Group__4__Impl rule__HookCombinator__Group__5 ; 
     10398    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3215:1: rule__HookCombinator__Group__4 : rule__HookCombinator__Group__4__Impl rule__HookCombinator__Group__5 ; 
    1009410399    public final void rule__HookCombinator__Group__4() throws RecognitionException { 
    1009510400        int rule__HookCombinator__Group__4_StartIndex = input.index(); 
     
    1009810403             
    1009910404        try { 
    10100             if ( state.backtracking>0 && alreadyParsedRule(input, 188) ) { return ; } 
    10101             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3122:1: ( rule__HookCombinator__Group__4__Impl rule__HookCombinator__Group__5 ) 
    10102             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3123:2: rule__HookCombinator__Group__4__Impl rule__HookCombinator__Group__5 
    10103             { 
    10104             pushFollow(FOLLOW_rule__HookCombinator__Group__4__Impl_in_rule__HookCombinator__Group__46392); 
     10405            if ( state.backtracking>0 && alreadyParsedRule(input, 194) ) { return ; } 
     10406            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3219:1: ( rule__HookCombinator__Group__4__Impl rule__HookCombinator__Group__5 ) 
     10407            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3220:2: rule__HookCombinator__Group__4__Impl rule__HookCombinator__Group__5 
     10408            { 
     10409            pushFollow(FOLLOW_rule__HookCombinator__Group__4__Impl_in_rule__HookCombinator__Group__46592); 
    1010510410            rule__HookCombinator__Group__4__Impl(); 
    1010610411 
    1010710412            state._fsp--; 
    1010810413            if (state.failed) return ; 
    10109             pushFollow(FOLLOW_rule__HookCombinator__Group__5_in_rule__HookCombinator__Group__46395); 
     10414            pushFollow(FOLLOW_rule__HookCombinator__Group__5_in_rule__HookCombinator__Group__46595); 
    1011010415            rule__HookCombinator__Group__5(); 
    1011110416 
     
    1012110426        } 
    1012210427        finally { 
    10123             if ( state.backtracking>0 ) { memoize(input, 188, rule__HookCombinator__Group__4_StartIndex); } 
     10428            if ( state.backtracking>0 ) { memoize(input, 194, rule__HookCombinator__Group__4_StartIndex); } 
    1012410429 
    1012510430                restoreStackSize(stackSize); 
     
    1013210437 
    1013310438    // $ANTLR start "rule__HookCombinator__Group__4__Impl" 
    10134     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3130:1: rule__HookCombinator__Group__4__Impl : ( ( rule__HookCombinator__RuleextAssignment_4 ) ) ; 
     10439    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3227:1: rule__HookCombinator__Group__4__Impl : ( ( rule__HookCombinator__RuleextAssignment_4 ) ) ; 
    1013510440    public final void rule__HookCombinator__Group__4__Impl() throws RecognitionException { 
    1013610441        int rule__HookCombinator__Group__4__Impl_StartIndex = input.index(); 
     
    1013910444             
    1014010445        try { 
    10141             if ( state.backtracking>0 && alreadyParsedRule(input, 189) ) { return ; } 
    10142             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3134:1: ( ( ( rule__HookCombinator__RuleextAssignment_4 ) ) ) 
    10143             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3135:1: ( ( rule__HookCombinator__RuleextAssignment_4 ) ) 
    10144             { 
    10145             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3135:1: ( ( rule__HookCombinator__RuleextAssignment_4 ) ) 
    10146             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3136:1: ( rule__HookCombinator__RuleextAssignment_4 ) 
     10446            if ( state.backtracking>0 && alreadyParsedRule(input, 195) ) { return ; } 
     10447            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3231:1: ( ( ( rule__HookCombinator__RuleextAssignment_4 ) ) ) 
     10448            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3232:1: ( ( rule__HookCombinator__RuleextAssignment_4 ) ) 
     10449            { 
     10450            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3232:1: ( ( rule__HookCombinator__RuleextAssignment_4 ) ) 
     10451            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3233:1: ( rule__HookCombinator__RuleextAssignment_4 ) 
    1014710452            { 
    1014810453            if ( state.backtracking==0 ) { 
    1014910454               before(grammarAccess.getHookCombinatorAccess().getRuleextAssignment_4());  
    1015010455            } 
    10151             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3137:1: ( rule__HookCombinator__RuleextAssignment_4 ) 
    10152             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3137:2: rule__HookCombinator__RuleextAssignment_4 
    10153             { 
    10154             pushFollow(FOLLOW_rule__HookCombinator__RuleextAssignment_4_in_rule__HookCombinator__Group__4__Impl6422); 
     10456            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3234:1: ( rule__HookCombinator__RuleextAssignment_4 ) 
     10457            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3234:2: rule__HookCombinator__RuleextAssignment_4 
     10458            { 
     10459            pushFollow(FOLLOW_rule__HookCombinator__RuleextAssignment_4_in_rule__HookCombinator__Group__4__Impl6622); 
    1015510460            rule__HookCombinator__RuleextAssignment_4(); 
    1015610461 
     
    1017510480        } 
    1017610481        finally { 
    10177             if ( state.backtracking>0 ) { memoize(input, 189, rule__HookCombinator__Group__4__Impl_StartIndex); } 
     10482            if ( state.backtracking>0 ) { memoize(input, 195, rule__HookCombinator__Group__4__Impl_StartIndex); } 
    1017810483 
    1017910484                restoreStackSize(stackSize); 
     
    1018610491 
    1018710492    // $ANTLR start "rule__HookCombinator__Group__5" 
    10188     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3147:1: rule__HookCombinator__Group__5 : rule__HookCombinator__Group__5__Impl rule__HookCombinator__Group__6 ; 
     10493    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3244:1: rule__HookCombinator__Group__5 : rule__HookCombinator__Group__5__Impl rule__HookCombinator__Group__6 ; 
    1018910494    public final void rule__HookCombinator__Group__5() throws RecognitionException { 
    1019010495        int rule__HookCombinator__Group__5_StartIndex = input.index(); 
     
    1019310498             
    1019410499        try { 
    10195             if ( state.backtracking>0 && alreadyParsedRule(input, 190) ) { return ; } 
    10196             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3151:1: ( rule__HookCombinator__Group__5__Impl rule__HookCombinator__Group__6 ) 
    10197             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3152:2: rule__HookCombinator__Group__5__Impl rule__HookCombinator__Group__6 
    10198             { 
    10199             pushFollow(FOLLOW_rule__HookCombinator__Group__5__Impl_in_rule__HookCombinator__Group__56452); 
     10500            if ( state.backtracking>0 && alreadyParsedRule(input, 196) ) { return ; } 
     10501            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3248:1: ( rule__HookCombinator__Group__5__Impl rule__HookCombinator__Group__6 ) 
     10502            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3249:2: rule__HookCombinator__Group__5__Impl rule__HookCombinator__Group__6 
     10503            { 
     10504            pushFollow(FOLLOW_rule__HookCombinator__Group__5__Impl_in_rule__HookCombinator__Group__56652); 
    1020010505            rule__HookCombinator__Group__5__Impl(); 
    1020110506 
    1020210507            state._fsp--; 
    1020310508            if (state.failed) return ; 
    10204             pushFollow(FOLLOW_rule__HookCombinator__Group__6_in_rule__HookCombinator__Group__56455); 
     10509            pushFollow(FOLLOW_rule__HookCombinator__Group__6_in_rule__HookCombinator__Group__56655); 
    1020510510            rule__HookCombinator__Group__6(); 
    1020610511 
     
    1021610521        } 
    1021710522        finally { 
    10218             if ( state.backtracking>0 ) { memoize(input, 190, rule__HookCombinator__Group__5_StartIndex); } 
     10523            if ( state.backtracking>0 ) { memoize(input, 196, rule__HookCombinator__Group__5_StartIndex); } 
    1021910524 
    1022010525                restoreStackSize(stackSize); 
     
    1022710532 
    1022810533    // $ANTLR start "rule__HookCombinator__Group__5__Impl" 
    10229     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3159:1: rule__HookCombinator__Group__5__Impl : ( ')' ) ; 
     10534    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3256:1: rule__HookCombinator__Group__5__Impl : ( ')' ) ; 
    1023010535    public final void rule__HookCombinator__Group__5__Impl() throws RecognitionException { 
    1023110536        int rule__HookCombinator__Group__5__Impl_StartIndex = input.index(); 
     
    1023410539             
    1023510540        try { 
    10236             if ( state.backtracking>0 && alreadyParsedRule(input, 191) ) { return ; } 
    10237             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3163:1: ( ( ')' ) ) 
    10238             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3164:1: ( ')' ) 
    10239             { 
    10240             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3164:1: ( ')' ) 
    10241             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3165:1: ')' 
     10541            if ( state.backtracking>0 && alreadyParsedRule(input, 197) ) { return ; } 
     10542            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3260:1: ( ( ')' ) ) 
     10543            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3261:1: ( ')' ) 
     10544            { 
     10545            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3261:1: ( ')' ) 
     10546            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3262:1: ')' 
    1024210547            { 
    1024310548            if ( state.backtracking==0 ) { 
    1024410549               before(grammarAccess.getHookCombinatorAccess().getRightParenthesisKeyword_5());  
    1024510550            } 
    10246             match(input,13,FOLLOW_13_in_rule__HookCombinator__Group__5__Impl6483); if (state.failed) return ; 
     10551            match(input,13,FOLLOW_13_in_rule__HookCombinator__Group__5__Impl6683); if (state.failed) return ; 
    1024710552            if ( state.backtracking==0 ) { 
    1024810553               after(grammarAccess.getHookCombinatorAccess().getRightParenthesisKeyword_5());  
     
    1026010565        } 
    1026110566        finally { 
    10262             if ( state.backtracking>0 ) { memoize(input, 191, rule__HookCombinator__Group__5__Impl_StartIndex); } 
     10567            if ( state.backtracking>0 ) { memoize(input, 197, rule__HookCombinator__Group__5__Impl_StartIndex); } 
    1026310568 
    1026410569                restoreStackSize(stackSize); 
     
    1027110576 
    1027210577    // $ANTLR start "rule__HookCombinator__Group__6" 
    10273     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3178:1: rule__HookCombinator__Group__6 : rule__HookCombinator__Group__6__Impl rule__HookCombinator__Group__7 ; 
     10578    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3275:1: rule__HookCombinator__Group__6 : rule__HookCombinator__Group__6__Impl rule__HookCombinator__Group__7 ; 
    1027410579    public final void rule__HookCombinator__Group__6() throws RecognitionException { 
    1027510580        int rule__HookCombinator__Group__6_StartIndex = input.index(); 
     
    1027810583             
    1027910584        try { 
    10280             if ( state.backtracking>0 && alreadyParsedRule(input, 192) ) { return ; } 
    10281             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3182:1: ( rule__HookCombinator__Group__6__Impl rule__HookCombinator__Group__7 ) 
    10282             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3183:2: rule__HookCombinator__Group__6__Impl rule__HookCombinator__Group__7 
    10283             { 
    10284             pushFollow(FOLLOW_rule__HookCombinator__Group__6__Impl_in_rule__HookCombinator__Group__66514); 
     10585            if ( state.backtracking>0 && alreadyParsedRule(input, 198) ) { return ; } 
     10586            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3279:1: ( rule__HookCombinator__Group__6__Impl rule__HookCombinator__Group__7 ) 
     10587            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3280:2: rule__HookCombinator__Group__6__Impl rule__HookCombinator__Group__7 
     10588            { 
     10589            pushFollow(FOLLOW_rule__HookCombinator__Group__6__Impl_in_rule__HookCombinator__Group__66714); 
    1028510590            rule__HookCombinator__Group__6__Impl(); 
    1028610591 
    1028710592            state._fsp--; 
    1028810593            if (state.failed) return ; 
    10289             pushFollow(FOLLOW_rule__HookCombinator__Group__7_in_rule__HookCombinator__Group__66517); 
     10594            pushFollow(FOLLOW_rule__HookCombinator__Group__7_in_rule__HookCombinator__Group__66717); 
    1029010595            rule__HookCombinator__Group__7(); 
    1029110596 
     
    1030110606        } 
    1030210607        finally { 
    10303             if ( state.backtracking>0 ) { memoize(input, 192, rule__HookCombinator__Group__6_StartIndex); } 
     10608            if ( state.backtracking>0 ) { memoize(input, 198, rule__HookCombinator__Group__6_StartIndex); } 
    1030410609 
    1030510610                restoreStackSize(stackSize); 
     
    1031210617 
    1031310618    // $ANTLR start "rule__HookCombinator__Group__6__Impl" 
    10314     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3190:1: rule__HookCombinator__Group__6__Impl : ( ( rule__HookCombinator__LogicAssignment_6 )? ) ; 
     10619    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3287:1: rule__HookCombinator__Group__6__Impl : ( ( rule__HookCombinator__LogicAssignment_6 )? ) ; 
    1031510620    public final void rule__HookCombinator__Group__6__Impl() throws RecognitionException { 
    1031610621        int rule__HookCombinator__Group__6__Impl_StartIndex = input.index(); 
     
    1031910624             
    1032010625        try { 
    10321             if ( state.backtracking>0 && alreadyParsedRule(input, 193) ) { return ; } 
    10322             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3194:1: ( ( ( rule__HookCombinator__LogicAssignment_6 )? ) ) 
    10323             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3195:1: ( ( rule__HookCombinator__LogicAssignment_6 )? ) 
    10324             { 
    10325             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3195:1: ( ( rule__HookCombinator__LogicAssignment_6 )? ) 
    10326             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3196:1: ( rule__HookCombinator__LogicAssignment_6 )? 
     10626            if ( state.backtracking>0 && alreadyParsedRule(input, 199) ) { return ; } 
     10627            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3291:1: ( ( ( rule__HookCombinator__LogicAssignment_6 )? ) ) 
     10628            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3292:1: ( ( rule__HookCombinator__LogicAssignment_6 )? ) 
     10629            { 
     10630            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3292:1: ( ( rule__HookCombinator__LogicAssignment_6 )? ) 
     10631            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3293:1: ( rule__HookCombinator__LogicAssignment_6 )? 
    1032710632            { 
    1032810633            if ( state.backtracking==0 ) { 
    1032910634               before(grammarAccess.getHookCombinatorAccess().getLogicAssignment_6());  
    1033010635            } 
    10331             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3197:1: ( rule__HookCombinator__LogicAssignment_6 )? 
     10636            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3294:1: ( rule__HookCombinator__LogicAssignment_6 )? 
    1033210637            int alt36=2; 
    1033310638            int LA36_0 = input.LA(1); 
     
    1033810643            switch (alt36) { 
    1033910644                case 1 : 
    10340                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3197:2: rule__HookCombinator__LogicAssignment_6 
     10645                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3294:2: rule__HookCombinator__LogicAssignment_6 
    1034110646                    { 
    10342                     pushFollow(FOLLOW_rule__HookCombinator__LogicAssignment_6_in_rule__HookCombinator__Group__6__Impl6544); 
     10647                    pushFollow(FOLLOW_rule__HookCombinator__LogicAssignment_6_in_rule__HookCombinator__Group__6__Impl6744); 
    1034310648                    rule__HookCombinator__LogicAssignment_6(); 
    1034410649 
     
    1036610671        } 
    1036710672        finally { 
    10368             if ( state.backtracking>0 ) { memoize(input, 193, rule__HookCombinator__Group__6__Impl_StartIndex); } 
     10673            if ( state.backtracking>0 ) { memoize(input, 199, rule__HookCombinator__Group__6__Impl_StartIndex); } 
    1036910674 
    1037010675                restoreStackSize(stackSize); 
     
    1037710682 
    1037810683    // $ANTLR start "rule__HookCombinator__Group__7" 
    10379     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3207:1: rule__HookCombinator__Group__7 : rule__HookCombinator__Group__7__Impl rule__HookCombinator__Group__8 ; 
     10684    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3304:1: rule__HookCombinator__Group__7 : rule__HookCombinator__Group__7__Impl rule__HookCombinator__Group__8 ; 
    1038010685    public final void rule__HookCombinator__Group__7() throws RecognitionException { 
    1038110686        int rule__HookCombinator__Group__7_StartIndex = input.index(); 
     
    1038410689             
    1038510690        try { 
    10386             if ( state.backtracking>0 && alreadyParsedRule(input, 194) ) { return ; } 
    10387             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3211:1: ( rule__HookCombinator__Group__7__Impl rule__HookCombinator__Group__8 ) 
    10388             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3212:2: rule__HookCombinator__Group__7__Impl rule__HookCombinator__Group__8 
    10389             { 
    10390             pushFollow(FOLLOW_rule__HookCombinator__Group__7__Impl_in_rule__HookCombinator__Group__76575); 
     10691            if ( state.backtracking>0 && alreadyParsedRule(input, 200) ) { return ; } 
     10692            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3308:1: ( rule__HookCombinator__Group__7__Impl rule__HookCombinator__Group__8 ) 
     10693            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3309:2: rule__HookCombinator__Group__7__Impl rule__HookCombinator__Group__8 
     10694            { 
     10695            pushFollow(FOLLOW_rule__HookCombinator__Group__7__Impl_in_rule__HookCombinator__Group__76775); 
    1039110696            rule__HookCombinator__Group__7__Impl(); 
    1039210697 
    1039310698            state._fsp--; 
    1039410699            if (state.failed) return ; 
    10395             pushFollow(FOLLOW_rule__HookCombinator__Group__8_in_rule__HookCombinator__Group__76578); 
     10700            pushFollow(FOLLOW_rule__HookCombinator__Group__8_in_rule__HookCombinator__Group__76778); 
    1039610701            rule__HookCombinator__Group__8(); 
    1039710702 
     
    1040710712        } 
    1040810713        finally { 
    10409             if ( state.backtracking>0 ) { memoize(input, 194, rule__HookCombinator__Group__7_StartIndex); } 
     10714            if ( state.backtracking>0 ) { memoize(input, 200, rule__HookCombinator__Group__7_StartIndex); } 
    1041010715 
    1041110716                restoreStackSize(stackSize); 
     
    1041810723 
    1041910724    // $ANTLR start "rule__HookCombinator__Group__7__Impl" 
    10420     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3219:1: rule__HookCombinator__Group__7__Impl : ( ( ( rule__HookCombinator__Group_7__0 ) ) ( ( rule__HookCombinator__Group_7__0 )* ) ) ; 
     10725    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3316:1: rule__HookCombinator__Group__7__Impl : ( ( ( rule__HookCombinator__Group_7__0 ) ) ( ( rule__HookCombinator__Group_7__0 )* ) ) ; 
    1042110726    public final void rule__HookCombinator__Group__7__Impl() throws RecognitionException { 
    1042210727        int rule__HookCombinator__Group__7__Impl_StartIndex = input.index(); 
     
    1042510730             
    1042610731        try { 
    10427             if ( state.backtracking>0 && alreadyParsedRule(input, 195) ) { return ; } 
    10428             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3223:1: ( ( ( ( rule__HookCombinator__Group_7__0 ) ) ( ( rule__HookCombinator__Group_7__0 )* ) ) ) 
    10429             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3224:1: ( ( ( rule__HookCombinator__Group_7__0 ) ) ( ( rule__HookCombinator__Group_7__0 )* ) ) 
    10430             { 
    10431             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3224:1: ( ( ( rule__HookCombinator__Group_7__0 ) ) ( ( rule__HookCombinator__Group_7__0 )* ) ) 
    10432             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3225:1: ( ( rule__HookCombinator__Group_7__0 ) ) ( ( rule__HookCombinator__Group_7__0 )* ) 
    10433             { 
    10434             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3225:1: ( ( rule__HookCombinator__Group_7__0 ) ) 
    10435             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3226:1: ( rule__HookCombinator__Group_7__0 ) 
     10732            if ( state.backtracking>0 && alreadyParsedRule(input, 201) ) { return ; } 
     10733            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3320:1: ( ( ( ( rule__HookCombinator__Group_7__0 ) ) ( ( rule__HookCombinator__Group_7__0 )* ) ) ) 
     10734            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3321:1: ( ( ( rule__HookCombinator__Group_7__0 ) ) ( ( rule__HookCombinator__Group_7__0 )* ) ) 
     10735            { 
     10736            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3321:1: ( ( ( rule__HookCombinator__Group_7__0 ) ) ( ( rule__HookCombinator__Group_7__0 )* ) ) 
     10737            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3322:1: ( ( rule__HookCombinator__Group_7__0 ) ) ( ( rule__HookCombinator__Group_7__0 )* ) 
     10738            { 
     10739            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3322:1: ( ( rule__HookCombinator__Group_7__0 ) ) 
     10740            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3323:1: ( rule__HookCombinator__Group_7__0 ) 
    1043610741            { 
    1043710742            if ( state.backtracking==0 ) { 
    1043810743               before(grammarAccess.getHookCombinatorAccess().getGroup_7());  
    1043910744            } 
    10440             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3227:1: ( rule__HookCombinator__Group_7__0 ) 
    10441             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3227:2: rule__HookCombinator__Group_7__0 
    10442             { 
    10443             pushFollow(FOLLOW_rule__HookCombinator__Group_7__0_in_rule__HookCombinator__Group__7__Impl6607); 
     10745            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3324:1: ( rule__HookCombinator__Group_7__0 ) 
     10746            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3324:2: rule__HookCombinator__Group_7__0 
     10747            { 
     10748            pushFollow(FOLLOW_rule__HookCombinator__Group_7__0_in_rule__HookCombinator__Group__7__Impl6807); 
    1044410749            rule__HookCombinator__Group_7__0(); 
    1044510750 
     
    1045510760            } 
    1045610761 
    10457             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3230:1: ( ( rule__HookCombinator__Group_7__0 )* ) 
    10458             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3231:1: ( rule__HookCombinator__Group_7__0 )* 
     10762            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3327:1: ( ( rule__HookCombinator__Group_7__0 )* ) 
     10763            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3328:1: ( rule__HookCombinator__Group_7__0 )* 
    1045910764            { 
    1046010765            if ( state.backtracking==0 ) { 
    1046110766               before(grammarAccess.getHookCombinatorAccess().getGroup_7());  
    1046210767            } 
    10463             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3232:1: ( rule__HookCombinator__Group_7__0 )* 
     10768            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3329:1: ( rule__HookCombinator__Group_7__0 )* 
    1046410769            loop37: 
    1046510770            do { 
     
    1047410779                switch (alt37) { 
    1047510780                case 1 : 
    10476                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3232:2: rule__HookCombinator__Group_7__0 
     10781                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3329:2: rule__HookCombinator__Group_7__0 
    1047710782                    { 
    10478                     pushFollow(FOLLOW_rule__HookCombinator__Group_7__0_in_rule__HookCombinator__Group__7__Impl6619); 
     10783                    pushFollow(FOLLOW_rule__HookCombinator__Group_7__0_in_rule__HookCombinator__Group__7__Impl6819); 
    1047910784                    rule__HookCombinator__Group_7__0(); 
    1048010785 
     
    1050810813        } 
    1050910814        finally { 
    10510             if ( state.backtracking>0 ) { memoize(input, 195, rule__HookCombinator__Group__7__Impl_StartIndex); } 
     10815            if ( state.backtracking>0 ) { memoize(input, 201, rule__HookCombinator__Group__7__Impl_StartIndex); } 
    1051110816 
    1051210817                restoreStackSize(stackSize); 
     
    1051910824 
    1052010825    // $ANTLR start "rule__HookCombinator__Group__8" 
    10521     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3243:1: rule__HookCombinator__Group__8 : rule__HookCombinator__Group__8__Impl ; 
     10826    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3340:1: rule__HookCombinator__Group__8 : rule__HookCombinator__Group__8__Impl ; 
    1052210827    public final void rule__HookCombinator__Group__8() throws RecognitionException { 
    1052310828        int rule__HookCombinator__Group__8_StartIndex = input.index(); 
     
    1052610831             
    1052710832        try { 
    10528             if ( state.backtracking>0 && alreadyParsedRule(input, 196) ) { return ; } 
    10529             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3247:1: ( rule__HookCombinator__Group__8__Impl ) 
    10530             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3248:2: rule__HookCombinator__Group__8__Impl 
    10531             { 
    10532             pushFollow(FOLLOW_rule__HookCombinator__Group__8__Impl_in_rule__HookCombinator__Group__86652); 
     10833            if ( state.backtracking>0 && alreadyParsedRule(input, 202) ) { return ; } 
     10834            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3344:1: ( rule__HookCombinator__Group__8__Impl ) 
     10835            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3345:2: rule__HookCombinator__Group__8__Impl 
     10836            { 
     10837            pushFollow(FOLLOW_rule__HookCombinator__Group__8__Impl_in_rule__HookCombinator__Group__86852); 
    1053310838            rule__HookCombinator__Group__8__Impl(); 
    1053410839 
     
    1054410849        } 
    1054510850        finally { 
    10546             if ( state.backtracking>0 ) { memoize(input, 196, rule__HookCombinator__Group__8_StartIndex); } 
     10851            if ( state.backtracking>0 ) { memoize(input, 202, rule__HookCombinator__Group__8_StartIndex); } 
    1054710852 
    1054810853                restoreStackSize(stackSize); 
     
    1055510860 
    1055610861    // $ANTLR start "rule__HookCombinator__Group__8__Impl" 
    10557     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3254:1: rule__HookCombinator__Group__8__Impl : ( ( ';' )? ) ; 
     10862    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3351:1: rule__HookCombinator__Group__8__Impl : ( ( ';' )? ) ; 
    1055810863    public final void rule__HookCombinator__Group__8__Impl() throws RecognitionException { 
    1055910864        int rule__HookCombinator__Group__8__Impl_StartIndex = input.index(); 
     
    1056210867             
    1056310868        try { 
    10564             if ( state.backtracking>0 && alreadyParsedRule(input, 197) ) { return ; } 
    10565             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3258:1: ( ( ( ';' )? ) ) 
    10566             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3259:1: ( ( ';' )? ) 
    10567             { 
    10568             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3259:1: ( ( ';' )? ) 
    10569             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3260:1: ( ';' )? 
     10869            if ( state.backtracking>0 && alreadyParsedRule(input, 203) ) { return ; } 
     10870            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3355:1: ( ( ( ';' )? ) ) 
     10871            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3356:1: ( ( ';' )? ) 
     10872            { 
     10873            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3356:1: ( ( ';' )? ) 
     10874            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3357:1: ( ';' )? 
    1057010875            { 
    1057110876            if ( state.backtracking==0 ) { 
    1057210877               before(grammarAccess.getHookCombinatorAccess().getSemicolonKeyword_8());  
    1057310878            } 
    10574             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3261:1: ( ';' )? 
     10879            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3358:1: ( ';' )? 
    1057510880            int alt38=2; 
    1057610881            int LA38_0 = input.LA(1); 
     
    1058110886            switch (alt38) { 
    1058210887                case 1 : 
    10583                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3262:2: ';' 
     10888                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3359:2: ';' 
    1058410889                    { 
    10585                     match(input,23,FOLLOW_23_in_rule__HookCombinator__Group__8__Impl6681); if (state.failed) return ; 
     10890                    match(input,23,FOLLOW_23_in_rule__HookCombinator__Group__8__Impl6881); if (state.failed) return ; 
    1058610891 
    1058710892                    } 
     
    1060510910        } 
    1060610911        finally { 
    10607             if ( state.backtracking>0 ) { memoize(input, 197, rule__HookCombinator__Group__8__Impl_StartIndex); } 
     10912            if ( state.backtracking>0 ) { memoize(input, 203, rule__HookCombinator__Group__8__Impl_StartIndex); } 
    1060810913 
    1060910914                restoreStackSize(stackSize); 
     
    1061610921 
    1061710922    // $ANTLR start "rule__HookCombinator__Group_7__0" 
    10618     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3291:1: rule__HookCombinator__Group_7__0 : rule__HookCombinator__Group_7__0__Impl rule__HookCombinator__Group_7__1 ; 
     10923    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3388:1: rule__HookCombinator__Group_7__0 : rule__HookCombinator__Group_7__0__Impl rule__HookCombinator__Group_7__1 ; 
    1061910924    public final void rule__HookCombinator__Group_7__0() throws RecognitionException { 
    1062010925        int rule__HookCombinator__Group_7__0_StartIndex = input.index(); 
     
    1062310928             
    1062410929        try { 
    10625             if ( state.backtracking>0 && alreadyParsedRule(input, 198) ) { return ; } 
    10626             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3295:1: ( rule__HookCombinator__Group_7__0__Impl rule__HookCombinator__Group_7__1 ) 
    10627             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3296:2: rule__HookCombinator__Group_7__0__Impl rule__HookCombinator__Group_7__1 
    10628             { 
    10629             pushFollow(FOLLOW_rule__HookCombinator__Group_7__0__Impl_in_rule__HookCombinator__Group_7__06732); 
     10930            if ( state.backtracking>0 && alreadyParsedRule(input, 204) ) { return ; } 
     10931            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3392:1: ( rule__HookCombinator__Group_7__0__Impl rule__HookCombinator__Group_7__1 ) 
     10932            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3393:2: rule__HookCombinator__Group_7__0__Impl rule__HookCombinator__Group_7__1 
     10933            { 
     10934            pushFollow(FOLLOW_rule__HookCombinator__Group_7__0__Impl_in_rule__HookCombinator__Group_7__06932); 
    1063010935            rule__HookCombinator__Group_7__0__Impl(); 
    1063110936 
    1063210937            state._fsp--; 
    1063310938            if (state.failed) return ; 
    10634             pushFollow(FOLLOW_rule__HookCombinator__Group_7__1_in_rule__HookCombinator__Group_7__06735); 
     10939            pushFollow(FOLLOW_rule__HookCombinator__Group_7__1_in_rule__HookCombinator__Group_7__06935); 
    1063510940            rule__HookCombinator__Group_7__1(); 
    1063610941 
     
    1064610951        } 
    1064710952        finally { 
    10648             if ( state.backtracking>0 ) { memoize(input, 198, rule__HookCombinator__Group_7__0_StartIndex); } 
     10953            if ( state.backtracking>0 ) { memoize(input, 204, rule__HookCombinator__Group_7__0_StartIndex); } 
    1064910954 
    1065010955                restoreStackSize(stackSize); 
     
    1065710962 
    1065810963    // $ANTLR start "rule__HookCombinator__Group_7__0__Impl" 
    10659     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3303:1: rule__HookCombinator__Group_7__0__Impl : ( '(' ) ; 
     10964    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3400:1: rule__HookCombinator__Group_7__0__Impl : ( '(' ) ; 
    1066010965    public final void rule__HookCombinator__Group_7__0__Impl() throws RecognitionException { 
    1066110966        int rule__HookCombinator__Group_7__0__Impl_StartIndex = input.index(); 
     
    1066410969             
    1066510970        try { 
    10666             if ( state.backtracking>0 && alreadyParsedRule(input, 199) ) { return ; } 
    10667             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3307:1: ( ( '(' ) ) 
    10668             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3308:1: ( '(' ) 
    10669             { 
    10670             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3308:1: ( '(' ) 
    10671             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3309:1: '(' 
     10971            if ( state.backtracking>0 && alreadyParsedRule(input, 205) ) { return ; } 
     10972            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3404:1: ( ( '(' ) ) 
     10973            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3405:1: ( '(' ) 
     10974            { 
     10975            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3405:1: ( '(' ) 
     10976            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3406:1: '(' 
    1067210977            { 
    1067310978            if ( state.backtracking==0 ) { 
    1067410979               before(grammarAccess.getHookCombinatorAccess().getLeftParenthesisKeyword_7_0());  
    1067510980            } 
    10676             match(input,17,FOLLOW_17_in_rule__HookCombinator__Group_7__0__Impl6763); if (state.failed) return ; 
     10981            match(input,17,FOLLOW_17_in_rule__HookCombinator__Group_7__0__Impl6963); if (state.failed) return ; 
    1067710982            if ( state.backtracking==0 ) { 
    1067810983               after(grammarAccess.getHookCombinatorAccess().getLeftParenthesisKeyword_7_0());  
     
    1069010995        } 
    1069110996        finally { 
    10692             if ( state.backtracking>0 ) { memoize(input, 199, rule__HookCombinator__Group_7__0__Impl_StartIndex); } 
     10997            if ( state.backtracking>0 ) { memoize(input, 205, rule__HookCombinator__Group_7__0__Impl_StartIndex); } 
    1069310998 
    1069410999                restoreStackSize(stackSize); 
     
    1070111006 
    1070211007    // $ANTLR start "rule__HookCombinator__Group_7__1" 
    10703     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3322:1: rule__HookCombinator__Group_7__1 : rule__HookCombinator__Group_7__1__Impl rule__HookCombinator__Group_7__2 ; 
     11008    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3419:1: rule__HookCombinator__Group_7__1 : rule__HookCombinator__Group_7__1__Impl rule__HookCombinator__Group_7__2 ; 
    1070411009    public final void rule__HookCombinator__Group_7__1() throws RecognitionException { 
    1070511010        int rule__HookCombinator__Group_7__1_StartIndex = input.index(); 
     
    1070811013             
    1070911014        try { 
    10710             if ( state.backtracking>0 && alreadyParsedRule(input, 200) ) { return ; } 
    10711             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3326:1: ( rule__HookCombinator__Group_7__1__Impl rule__HookCombinator__Group_7__2 ) 
    10712             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3327:2: rule__HookCombinator__Group_7__1__Impl rule__HookCombinator__Group_7__2 
    10713             { 
    10714             pushFollow(FOLLOW_rule__HookCombinator__Group_7__1__Impl_in_rule__HookCombinator__Group_7__16794); 
     11015            if ( state.backtracking>0 && alreadyParsedRule(input, 206) ) { return ; } 
     11016            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3423:1: ( rule__HookCombinator__Group_7__1__Impl rule__HookCombinator__Group_7__2 ) 
     11017            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3424:2: rule__HookCombinator__Group_7__1__Impl rule__HookCombinator__Group_7__2 
     11018            { 
     11019            pushFollow(FOLLOW_rule__HookCombinator__Group_7__1__Impl_in_rule__HookCombinator__Group_7__16994); 
    1071511020            rule__HookCombinator__Group_7__1__Impl(); 
    1071611021 
    1071711022            state._fsp--; 
    1071811023            if (state.failed) return ; 
    10719             pushFollow(FOLLOW_rule__HookCombinator__Group_7__2_in_rule__HookCombinator__Group_7__16797); 
     11024            pushFollow(FOLLOW_rule__HookCombinator__Group_7__2_in_rule__HookCombinator__Group_7__16997); 
    1072011025            rule__HookCombinator__Group_7__2(); 
    1072111026 
     
    1073111036        } 
    1073211037        finally { 
    10733             if ( state.backtracking>0 ) { memoize(input, 200, rule__HookCombinator__Group_7__1_StartIndex); } 
     11038            if ( state.backtracking>0 ) { memoize(input, 206, rule__HookCombinator__Group_7__1_StartIndex); } 
    1073411039 
    1073511040                restoreStackSize(stackSize); 
     
    1074211047 
    1074311048    // $ANTLR start "rule__HookCombinator__Group_7__1__Impl" 
    10744     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3334:1: rule__HookCombinator__Group_7__1__Impl : ( ( rule__HookCombinator__LABELAssignment_7_1 ) ) ; 
     11049    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3431:1: rule__HookCombinator__Group_7__1__Impl : ( ( rule__HookCombinator__LABELAssignment_7_1 ) ) ; 
    1074511050    public final void rule__HookCombinator__Group_7__1__Impl() throws RecognitionException { 
    1074611051        int rule__HookCombinator__Group_7__1__Impl_StartIndex = input.index(); 
     
    1074911054             
    1075011055        try { 
    10751             if ( state.backtracking>0 && alreadyParsedRule(input, 201) ) { return ; } 
    10752             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3338:1: ( ( ( rule__HookCombinator__LABELAssignment_7_1 ) ) ) 
    10753             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3339:1: ( ( rule__HookCombinator__LABELAssignment_7_1 ) ) 
    10754             { 
    10755             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3339:1: ( ( rule__HookCombinator__LABELAssignment_7_1 ) ) 
    10756             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3340:1: ( rule__HookCombinator__LABELAssignment_7_1 ) 
     11056            if ( state.backtracking>0 && alreadyParsedRule(input, 207) ) { return ; } 
     11057            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3435:1: ( ( ( rule__HookCombinator__LABELAssignment_7_1 ) ) ) 
     11058            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3436:1: ( ( rule__HookCombinator__LABELAssignment_7_1 ) ) 
     11059            { 
     11060            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3436:1: ( ( rule__HookCombinator__LABELAssignment_7_1 ) ) 
     11061            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3437:1: ( rule__HookCombinator__LABELAssignment_7_1 ) 
    1075711062            { 
    1075811063            if ( state.backtracking==0 ) { 
    1075911064               before(grammarAccess.getHookCombinatorAccess().getLABELAssignment_7_1());  
    1076011065            } 
    10761             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3341:1: ( rule__HookCombinator__LABELAssignment_7_1 ) 
    10762             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3341:2: rule__HookCombinator__LABELAssignment_7_1 
    10763             { 
    10764             pushFollow(FOLLOW_rule__HookCombinator__LABELAssignment_7_1_in_rule__HookCombinator__Group_7__1__Impl6824); 
     11066            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3438:1: ( rule__HookCombinator__LABELAssignment_7_1 ) 
     11067            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3438:2: rule__HookCombinator__LABELAssignment_7_1 
     11068            { 
     11069            pushFollow(FOLLOW_rule__HookCombinator__LABELAssignment_7_1_in_rule__HookCombinator__Group_7__1__Impl7024); 
    1076511070            rule__HookCombinator__LABELAssignment_7_1(); 
    1076611071 
     
    1078511090        } 
    1078611091        finally { 
    10787             if ( state.backtracking>0 ) { memoize(input, 201, rule__HookCombinator__Group_7__1__Impl_StartIndex); } 
     11092            if ( state.backtracking>0 ) { memoize(input, 207, rule__HookCombinator__Group_7__1__Impl_StartIndex); } 
    1078811093 
    1078911094                restoreStackSize(stackSize); 
     
    1079611101 
    1079711102    // $ANTLR start "rule__HookCombinator__Group_7__2" 
    10798     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3351:1: rule__HookCombinator__Group_7__2 : rule__HookCombinator__Group_7__2__Impl ; 
     11103    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3448:1: rule__HookCombinator__Group_7__2 : rule__HookCombinator__Group_7__2__Impl ; 
    1079911104    public final void rule__HookCombinator__Group_7__2() throws RecognitionException { 
    1080011105        int rule__HookCombinator__Group_7__2_StartIndex = input.index(); 
     
    1080311108             
    1080411109        try { 
    10805             if ( state.backtracking>0 && alreadyParsedRule(input, 202) ) { return ; } 
    10806             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3355:1: ( rule__HookCombinator__Group_7__2__Impl ) 
    10807             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3356:2: rule__HookCombinator__Group_7__2__Impl 
    10808             { 
    10809             pushFollow(FOLLOW_rule__HookCombinator__Group_7__2__Impl_in_rule__HookCombinator__Group_7__26854); 
     11110            if ( state.backtracking>0 && alreadyParsedRule(input, 208) ) { return ; } 
     11111            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3452:1: ( rule__HookCombinator__Group_7__2__Impl ) 
     11112            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3453:2: rule__HookCombinator__Group_7__2__Impl 
     11113            { 
     11114            pushFollow(FOLLOW_rule__HookCombinator__Group_7__2__Impl_in_rule__HookCombinator__Group_7__27054); 
    1081011115            rule__HookCombinator__Group_7__2__Impl(); 
    1081111116 
     
    1082111126        } 
    1082211127        finally { 
    10823             if ( state.backtracking>0 ) { memoize(input, 202, rule__HookCombinator__Group_7__2_StartIndex); } 
     11128            if ( state.backtracking>0 ) { memoize(input, 208, rule__HookCombinator__Group_7__2_StartIndex); } 
    1082411129 
    1082511130                restoreStackSize(stackSize); 
     
    1083211137 
    1083311138    // $ANTLR start "rule__HookCombinator__Group_7__2__Impl" 
    10834     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3362:1: rule__HookCombinator__Group_7__2__Impl : ( ')' ) ; 
     11139    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3459:1: rule__HookCombinator__Group_7__2__Impl : ( ')' ) ; 
    1083511140    public final void rule__HookCombinator__Group_7__2__Impl() throws RecognitionException { 
    1083611141        int rule__HookCombinator__Group_7__2__Impl_StartIndex = input.index(); 
     
    1083911144             
    1084011145        try { 
    10841             if ( state.backtracking>0 && alreadyParsedRule(input, 203) ) { return ; } 
    10842             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3366:1: ( ( ')' ) ) 
    10843             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3367:1: ( ')' ) 
    10844             { 
    10845             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3367:1: ( ')' ) 
    10846             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3368:1: ')' 
     11146            if ( state.backtracking>0 && alreadyParsedRule(input, 209) ) { return ; } 
     11147            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3463:1: ( ( ')' ) ) 
     11148            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3464:1: ( ')' ) 
     11149            { 
     11150            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3464:1: ( ')' ) 
     11151            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3465:1: ')' 
    1084711152            { 
    1084811153            if ( state.backtracking==0 ) { 
    1084911154               before(grammarAccess.getHookCombinatorAccess().getRightParenthesisKeyword_7_2());  
    1085011155            } 
    10851             match(input,13,FOLLOW_13_in_rule__HookCombinator__Group_7__2__Impl6882); if (state.failed) return ; 
     11156            match(input,13,FOLLOW_13_in_rule__HookCombinator__Group_7__2__Impl7082); if (state.failed) return ; 
    1085211157            if ( state.backtracking==0 ) { 
    1085311158               after(grammarAccess.getHookCombinatorAccess().getRightParenthesisKeyword_7_2());  
     
    1086511170        } 
    1086611171        finally { 
    10867             if ( state.backtracking>0 ) { memoize(input, 203, rule__HookCombinator__Group_7__2__Impl_StartIndex); } 
     11172            if ( state.backtracking>0 ) { memoize(input, 209, rule__HookCombinator__Group_7__2__Impl_StartIndex); } 
    1086811173 
    1086911174                restoreStackSize(stackSize); 
     
    1087611181 
    1087711182    // $ANTLR start "rule__DefinitionList__Group__0" 
    10878     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3387:1: rule__DefinitionList__Group__0 : rule__DefinitionList__Group__0__Impl rule__DefinitionList__Group__1 ; 
     11183    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3484:1: rule__DefinitionList__Group__0 : rule__DefinitionList__Group__0__Impl rule__DefinitionList__Group__1 ; 
    1087911184    public final void rule__DefinitionList__Group__0() throws RecognitionException { 
    1088011185        int rule__DefinitionList__Group__0_StartIndex = input.index(); 
     
    1088311188             
    1088411189        try { 
    10885             if ( state.backtracking>0 && alreadyParsedRule(input, 204) ) { return ; } 
    10886             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3391:1: ( rule__DefinitionList__Group__0__Impl rule__DefinitionList__Group__1 ) 
    10887             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3392:2: rule__DefinitionList__Group__0__Impl rule__DefinitionList__Group__1 
    10888             { 
    10889             pushFollow(FOLLOW_rule__DefinitionList__Group__0__Impl_in_rule__DefinitionList__Group__06919); 
     11190            if ( state.backtracking>0 && alreadyParsedRule(input, 210) ) { return ; } 
     11191            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3488:1: ( rule__DefinitionList__Group__0__Impl rule__DefinitionList__Group__1 ) 
     11192            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3489:2: rule__DefinitionList__Group__0__Impl rule__DefinitionList__Group__1 
     11193            { 
     11194            pushFollow(FOLLOW_rule__DefinitionList__Group__0__Impl_in_rule__DefinitionList__Group__07119); 
    1089011195            rule__DefinitionList__Group__0__Impl(); 
    1089111196 
    1089211197            state._fsp--; 
    1089311198            if (state.failed) return ; 
    10894             pushFollow(FOLLOW_rule__DefinitionList__Group__1_in_rule__DefinitionList__Group__06922); 
     11199            pushFollow(FOLLOW_rule__DefinitionList__Group__1_in_rule__DefinitionList__Group__07122); 
    1089511200            rule__DefinitionList__Group__1(); 
    1089611201 
     
    1090611211        } 
    1090711212        finally { 
    10908             if ( state.backtracking>0 ) { memoize(input, 204, rule__DefinitionList__Group__0_StartIndex); } 
     11213            if ( state.backtracking>0 ) { memoize(input, 210, rule__DefinitionList__Group__0_StartIndex); } 
    1090911214 
    1091011215                restoreStackSize(stackSize); 
     
    1091711222 
    1091811223    // $ANTLR start "rule__DefinitionList__Group__0__Impl" 
    10919     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3399:1: rule__DefinitionList__Group__0__Impl : ( ( rule__DefinitionList__SingleDefinitionAssignment_0 ) ) ; 
     11224    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3496:1: rule__DefinitionList__Group__0__Impl : ( ( rule__DefinitionList__SingleDefinitionAssignment_0 ) ) ; 
    1092011225    public final void rule__DefinitionList__Group__0__Impl() throws RecognitionException { 
    1092111226        int rule__DefinitionList__Group__0__Impl_StartIndex = input.index(); 
     
    1092411229             
    1092511230        try { 
    10926             if ( state.backtracking>0 && alreadyParsedRule(input, 205) ) { return ; } 
    10927             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3403:1: ( ( ( rule__DefinitionList__SingleDefinitionAssignment_0 ) ) ) 
    10928             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3404:1: ( ( rule__DefinitionList__SingleDefinitionAssignment_0 ) ) 
    10929             { 
    10930             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3404:1: ( ( rule__DefinitionList__SingleDefinitionAssignment_0 ) ) 
    10931             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3405:1: ( rule__DefinitionList__SingleDefinitionAssignment_0 ) 
     11231            if ( state.backtracking>0 && alreadyParsedRule(input, 211) ) { return ; } 
     11232            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3500:1: ( ( ( rule__DefinitionList__SingleDefinitionAssignment_0 ) ) ) 
     11233            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3501:1: ( ( rule__DefinitionList__SingleDefinitionAssignment_0 ) ) 
     11234            { 
     11235            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3501:1: ( ( rule__DefinitionList__SingleDefinitionAssignment_0 ) ) 
     11236            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3502:1: ( rule__DefinitionList__SingleDefinitionAssignment_0 ) 
    1093211237            { 
    1093311238            if ( state.backtracking==0 ) { 
    1093411239               before(grammarAccess.getDefinitionListAccess().getSingleDefinitionAssignment_0());  
    1093511240            } 
    10936             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3406:1: ( rule__DefinitionList__SingleDefinitionAssignment_0 ) 
    10937             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3406:2: rule__DefinitionList__SingleDefinitionAssignment_0 
    10938             { 
    10939             pushFollow(FOLLOW_rule__DefinitionList__SingleDefinitionAssignment_0_in_rule__DefinitionList__Group__0__Impl6949); 
     11241            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3503:1: ( rule__DefinitionList__SingleDefinitionAssignment_0 ) 
     11242            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3503:2: rule__DefinitionList__SingleDefinitionAssignment_0 
     11243            { 
     11244            pushFollow(FOLLOW_rule__DefinitionList__SingleDefinitionAssignment_0_in_rule__DefinitionList__Group__0__Impl7149); 
    1094011245            rule__DefinitionList__SingleDefinitionAssignment_0(); 
    1094111246 
     
    1096011265        } 
    1096111266        finally { 
    10962             if ( state.backtracking>0 ) { memoize(input, 205, rule__DefinitionList__Group__0__Impl_StartIndex); } 
     11267            if ( state.backtracking>0 ) { memoize(input, 211, rule__DefinitionList__Group__0__Impl_StartIndex); } 
    1096311268 
    1096411269                restoreStackSize(stackSize); 
     
    1097111276 
    1097211277    // $ANTLR start "rule__DefinitionList__Group__1" 
    10973     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3416:1: rule__DefinitionList__Group__1 : rule__DefinitionList__Group__1__Impl ; 
     11278    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3513:1: rule__DefinitionList__Group__1 : rule__DefinitionList__Group__1__Impl ; 
    1097411279    public final void rule__DefinitionList__Group__1() throws RecognitionException { 
    1097511280        int rule__DefinitionList__Group__1_StartIndex = input.index(); 
     
    1097811283             
    1097911284        try { 
    10980             if ( state.backtracking>0 && alreadyParsedRule(input, 206) ) { return ; } 
    10981             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3420:1: ( rule__DefinitionList__Group__1__Impl ) 
    10982             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3421:2: rule__DefinitionList__Group__1__Impl 
    10983             { 
    10984             pushFollow(FOLLOW_rule__DefinitionList__Group__1__Impl_in_rule__DefinitionList__Group__16979); 
     11285            if ( state.backtracking>0 && alreadyParsedRule(input, 212) ) { return ; } 
     11286            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3517:1: ( rule__DefinitionList__Group__1__Impl ) 
     11287            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3518:2: rule__DefinitionList__Group__1__Impl 
     11288            { 
     11289            pushFollow(FOLLOW_rule__DefinitionList__Group__1__Impl_in_rule__DefinitionList__Group__17179); 
    1098511290            rule__DefinitionList__Group__1__Impl(); 
    1098611291 
     
    1099611301        } 
    1099711302        finally { 
    10998             if ( state.backtracking>0 ) { memoize(input, 206, rule__DefinitionList__Group__1_StartIndex); } 
     11303            if ( state.backtracking>0 ) { memoize(input, 212, rule__DefinitionList__Group__1_StartIndex); } 
    1099911304 
    1100011305                restoreStackSize(stackSize); 
     
    1100711312 
    1100811313    // $ANTLR start "rule__DefinitionList__Group__1__Impl" 
    11009     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3427:1: rule__DefinitionList__Group__1__Impl : ( ( rule__DefinitionList__Group_1__0 )* ) ; 
     11314    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3524:1: rule__DefinitionList__Group__1__Impl : ( ( rule__DefinitionList__Group_1__0 )* ) ; 
    1101011315    public final void rule__DefinitionList__Group__1__Impl() throws RecognitionException { 
    1101111316        int rule__DefinitionList__Group__1__Impl_StartIndex = input.index(); 
     
    1101411319             
    1101511320        try { 
    11016             if ( state.backtracking>0 && alreadyParsedRule(input, 207) ) { return ; } 
    11017             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3431:1: ( ( ( rule__DefinitionList__Group_1__0 )* ) ) 
    11018             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3432:1: ( ( rule__DefinitionList__Group_1__0 )* ) 
    11019             { 
    11020             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3432:1: ( ( rule__DefinitionList__Group_1__0 )* ) 
    11021             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3433:1: ( rule__DefinitionList__Group_1__0 )* 
     11321            if ( state.backtracking>0 && alreadyParsedRule(input, 213) ) { return ; } 
     11322            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3528:1: ( ( ( rule__DefinitionList__Group_1__0 )* ) ) 
     11323            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3529:1: ( ( rule__DefinitionList__Group_1__0 )* ) 
     11324            { 
     11325            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3529:1: ( ( rule__DefinitionList__Group_1__0 )* ) 
     11326            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3530:1: ( rule__DefinitionList__Group_1__0 )* 
    1102211327            { 
    1102311328            if ( state.backtracking==0 ) { 
    1102411329               before(grammarAccess.getDefinitionListAccess().getGroup_1());  
    1102511330            } 
    11026             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3434:1: ( rule__DefinitionList__Group_1__0 )* 
     11331            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3531:1: ( rule__DefinitionList__Group_1__0 )* 
    1102711332            loop39: 
    1102811333            do { 
     
    1103711342                switch (alt39) { 
    1103811343                case 1 : 
    11039                     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3434:2: rule__DefinitionList__Group_1__0 
     11344                    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3531:2: rule__DefinitionList__Group_1__0 
    1104011345                    { 
    11041                     pushFollow(FOLLOW_rule__DefinitionList__Group_1__0_in_rule__DefinitionList__Group__1__Impl7006); 
     11346                    pushFollow(FOLLOW_rule__DefinitionList__Group_1__0_in_rule__DefinitionList__Group__1__Impl7206); 
    1104211347                    rule__DefinitionList__Group_1__0(); 
    1104311348 
     
    1106811373        } 
    1106911374        finally { 
    11070             if ( state.backtracking>0 ) { memoize(input, 207, rule__DefinitionList__Group__1__Impl_StartIndex); } 
     11375            if ( state.backtracking>0 ) { memoize(input, 213, rule__DefinitionList__Group__1__Impl_StartIndex); } 
    1107111376 
    1107211377                restoreStackSize(stackSize); 
     
    1107911384 
    1108011385    // $ANTLR start "rule__DefinitionList__Group_1__0" 
    11081     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3448:1: rule__DefinitionList__Group_1__0 : rule__DefinitionList__Group_1__0__Impl rule__DefinitionList__Group_1__1 ; 
     11386    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3545:1: rule__DefinitionList__Group_1__0 : rule__DefinitionList__Group_1__0__Impl rule__DefinitionList__Group_1__1 ; 
    1108211387    public final void rule__DefinitionList__Group_1__0() throws RecognitionException { 
    1108311388        int rule__DefinitionList__Group_1__0_StartIndex = input.index(); 
     
    1108611391             
    1108711392        try { 
    11088             if ( state.backtracking>0 && alreadyParsedRule(input, 208) ) { return ; } 
    11089             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3452:1: ( rule__DefinitionList__Group_1__0__Impl rule__DefinitionList__Group_1__1 ) 
    11090             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3453:2: rule__DefinitionList__Group_1__0__Impl rule__DefinitionList__Group_1__1 
    11091             { 
    11092             pushFollow(FOLLOW_rule__DefinitionList__Group_1__0__Impl_in_rule__DefinitionList__Group_1__07041); 
     11393            if ( state.backtracking>0 && alreadyParsedRule(input, 214) ) { return ; } 
     11394            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3549:1: ( rule__DefinitionList__Group_1__0__Impl rule__DefinitionList__Group_1__1 ) 
     11395            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3550:2: rule__DefinitionList__Group_1__0__Impl rule__DefinitionList__Group_1__1 
     11396            { 
     11397            pushFollow(FOLLOW_rule__DefinitionList__Group_1__0__Impl_in_rule__DefinitionList__Group_1__07241); 
    1109311398            rule__DefinitionList__Group_1__0__Impl(); 
    1109411399 
    1109511400            state._fsp--; 
    1109611401            if (state.failed) return ; 
    11097             pushFollow(FOLLOW_rule__DefinitionList__Group_1__1_in_rule__DefinitionList__Group_1__07044); 
     11402            pushFollow(FOLLOW_rule__DefinitionList__Group_1__1_in_rule__DefinitionList__Group_1__07244); 
    1109811403            rule__DefinitionList__Group_1__1(); 
    1109911404 
     
    1110911414        } 
    1111011415        finally { 
    11111             if ( state.backtracking>0 ) { memoize(input, 208, rule__DefinitionList__Group_1__0_StartIndex); } 
     11416            if ( state.backtracking>0 ) { memoize(input, 214, rule__DefinitionList__Group_1__0_StartIndex); } 
    1111211417 
    1111311418                restoreStackSize(stackSize); 
     
    1112011425 
    1112111426    // $ANTLR start "rule__DefinitionList__Group_1__0__Impl" 
    11122     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3460:1: rule__DefinitionList__Group_1__0__Impl : ( '|' ) ; 
     11427    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3557:1: rule__DefinitionList__Group_1__0__Impl : ( '|' ) ; 
    1112311428    public final void rule__DefinitionList__Group_1__0__Impl() throws RecognitionException { 
    1112411429        int rule__DefinitionList__Group_1__0__Impl_StartIndex = input.index(); 
     
    1112711432             
    1112811433        try { 
    11129             if ( state.backtracking>0 && alreadyParsedRule(input, 209) ) { return ; } 
    11130             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3464:1: ( ( '|' ) ) 
    11131             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3465:1: ( '|' ) 
    11132             { 
    11133             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3465:1: ( '|' ) 
    11134             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3466:1: '|' 
     11434            if ( state.backtracking>0 && alreadyParsedRule(input, 215) ) { return ; } 
     11435            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3561:1: ( ( '|' ) ) 
     11436            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3562:1: ( '|' ) 
     11437            { 
     11438            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3562:1: ( '|' ) 
     11439            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3563:1: '|' 
    1113511440            { 
    1113611441            if ( state.backtracking==0 ) { 
    1113711442               before(grammarAccess.getDefinitionListAccess().getVerticalLineKeyword_1_0());  
    1113811443            } 
    11139             match(input,16,FOLLOW_16_in_rule__DefinitionList__Group_1__0__Impl7072); if (state.failed) return ; 
     11444            match(input,16,FOLLOW_16_in_rule__DefinitionList__Group_1__0__Impl7272); if (state.failed) return ; 
    1114011445            if ( state.backtracking==0 ) { 
    1114111446               after(grammarAccess.getDefinitionListAccess().getVerticalLineKeyword_1_0());  
     
    1115311458        } 
    1115411459        finally { 
    11155             if ( state.backtracking>0 ) { memoize(input, 209, rule__DefinitionList__Group_1__0__Impl_StartIndex); } 
     11460            if ( state.backtracking>0 ) { memoize(input, 215, rule__DefinitionList__Group_1__0__Impl_StartIndex); } 
    1115611461 
    1115711462                restoreStackSize(stackSize); 
     
    1116411469 
    1116511470    // $ANTLR start "rule__DefinitionList__Group_1__1" 
    11166     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3479:1: rule__DefinitionList__Group_1__1 : rule__DefinitionList__Group_1__1__Impl ; 
     11471    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3576:1: rule__DefinitionList__Group_1__1 : rule__DefinitionList__Group_1__1__Impl ; 
    1116711472    public final void rule__DefinitionList__Group_1__1() throws RecognitionException { 
    1116811473        int rule__DefinitionList__Group_1__1_StartIndex = input.index(); 
     
    1117111476             
    1117211477        try { 
    11173             if ( state.backtracking>0 && alreadyParsedRule(input, 210) ) { return ; } 
    11174             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3483:1: ( rule__DefinitionList__Group_1__1__Impl ) 
    11175             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3484:2: rule__DefinitionList__Group_1__1__Impl 
    11176             { 
    11177             pushFollow(FOLLOW_rule__DefinitionList__Group_1__1__Impl_in_rule__DefinitionList__Group_1__17103); 
     11478            if ( state.backtracking>0 && alreadyParsedRule(input, 216) ) { return ; } 
     11479            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3580:1: ( rule__DefinitionList__Group_1__1__Impl ) 
     11480            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3581:2: rule__DefinitionList__Group_1__1__Impl 
     11481            { 
     11482            pushFollow(FOLLOW_rule__DefinitionList__Group_1__1__Impl_in_rule__DefinitionList__Group_1__17303); 
    1117811483            rule__DefinitionList__Group_1__1__Impl(); 
    1117911484 
     
    1118911494        } 
    1119011495        finally { 
    11191             if ( state.backtracking>0 ) { memoize(input, 210, rule__DefinitionList__Group_1__1_StartIndex); } 
     11496            if ( state.backtracking>0 ) { memoize(input, 216, rule__DefinitionList__Group_1__1_StartIndex); } 
    1119211497 
    1119311498                restoreStackSize(stackSize); 
     
    1120011505 
    1120111506    // $ANTLR start "rule__DefinitionList__Group_1__1__Impl" 
    11202     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3490:1: rule__DefinitionList__Group_1__1__Impl : ( ( rule__DefinitionList__SingleDefinitionAssignment_1_1 ) ) ; 
     11507    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3587:1: rule__DefinitionList__Group_1__1__Impl : ( ( rule__DefinitionList__SingleDefinitionAssignment_1_1 ) ) ; 
    1120311508    public final void rule__DefinitionList__Group_1__1__Impl() throws RecognitionException { 
    1120411509        int rule__DefinitionList__Group_1__1__Impl_StartIndex = input.index(); 
     
    1120711512             
    1120811513        try { 
    11209             if ( state.backtracking>0 && alreadyParsedRule(input, 211) ) { return ; } 
    11210             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3494:1: ( ( ( rule__DefinitionList__SingleDefinitionAssignment_1_1 ) ) ) 
    11211             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3495:1: ( ( rule__DefinitionList__SingleDefinitionAssignment_1_1 ) ) 
    11212             { 
    11213             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3495:1: ( ( rule__DefinitionList__SingleDefinitionAssignment_1_1 ) ) 
    11214             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3496:1: ( rule__DefinitionList__SingleDefinitionAssignment_1_1 ) 
     11514            if ( state.backtracking>0 && alreadyParsedRule(input, 217) ) { return ; } 
     11515            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3591:1: ( ( ( rule__DefinitionList__SingleDefinitionAssignment_1_1 ) ) ) 
     11516            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3592:1: ( ( rule__DefinitionList__SingleDefinitionAssignment_1_1 ) ) 
     11517            { 
     11518            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3592:1: ( ( rule__DefinitionList__SingleDefinitionAssignment_1_1 ) ) 
     11519            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3593:1: ( rule__DefinitionList__SingleDefinitionAssignment_1_1 ) 
    1121511520            { 
    1121611521            if ( state.backtracking==0 ) { 
    1121711522               before(grammarAccess.getDefinitionListAccess().getSingleDefinitionAssignment_1_1());  
    1121811523            } 
    11219             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3497:1: ( rule__DefinitionList__SingleDefinitionAssignment_1_1 ) 
    11220             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3497:2: rule__DefinitionList__SingleDefinitionAssignment_1_1 
    11221             { 
    11222             pushFollow(FOLLOW_rule__DefinitionList__SingleDefinitionAssignment_1_1_in_rule__DefinitionList__Group_1__1__Impl7130); 
     11524            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3594:1: ( rule__DefinitionList__SingleDefinitionAssignment_1_1 ) 
     11525            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3594:2: rule__DefinitionList__SingleDefinitionAssignment_1_1 
     11526            { 
     11527            pushFollow(FOLLOW_rule__DefinitionList__SingleDefinitionAssignment_1_1_in_rule__DefinitionList__Group_1__1__Impl7330); 
    1122311528            rule__DefinitionList__SingleDefinitionAssignment_1_1(); 
    1122411529 
     
    1124311548        } 
    1124411549        finally { 
    11245             if ( state.backtracking>0 ) { memoize(input, 211, rule__DefinitionList__Group_1__1__Impl_StartIndex); } 
     11550            if ( state.backtracking>0 ) { memoize(input, 217, rule__DefinitionList__Group_1__1__Impl_StartIndex); } 
    1124611551 
    1124711552                restoreStackSize(stackSize); 
     
    1125411559 
    1125511560    // $ANTLR start "rule__GroupedSequence__Group__0" 
    11256     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3511:1: rule__GroupedSequence__Group__0 : rule__GroupedSequence__Group__0__Impl rule__GroupedSequence__Group__1 ; 
     11561    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3608:1: rule__GroupedSequence__Group__0 : rule__GroupedSequence__Group__0__Impl rule__GroupedSequence__Group__1 ; 
    1125711562    public final void rule__GroupedSequence__Group__0() throws RecognitionException { 
    1125811563        int rule__GroupedSequence__Group__0_StartIndex = input.index(); 
     
    1126111566             
    1126211567        try { 
    11263             if ( state.backtracking>0 && alreadyParsedRule(input, 212) ) { return ; } 
    11264             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3515:1: ( rule__GroupedSequence__Group__0__Impl rule__GroupedSequence__Group__1 ) 
    11265             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3516:2: rule__GroupedSequence__Group__0__Impl rule__GroupedSequence__Group__1 
    11266             { 
    11267             pushFollow(FOLLOW_rule__GroupedSequence__Group__0__Impl_in_rule__GroupedSequence__Group__07164); 
     11568            if ( state.backtracking>0 && alreadyParsedRule(input, 218) ) { return ; } 
     11569            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3612:1: ( rule__GroupedSequence__Group__0__Impl rule__GroupedSequence__Group__1 ) 
     11570            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3613:2: rule__GroupedSequence__Group__0__Impl rule__GroupedSequence__Group__1 
     11571            { 
     11572            pushFollow(FOLLOW_rule__GroupedSequence__Group__0__Impl_in_rule__GroupedSequence__Group__07364); 
    1126811573            rule__GroupedSequence__Group__0__Impl(); 
    1126911574 
    1127011575            state._fsp--; 
    1127111576            if (state.failed) return ; 
    11272             pushFollow(FOLLOW_rule__GroupedSequence__Group__1_in_rule__GroupedSequence__Group__07167); 
     11577            pushFollow(FOLLOW_rule__GroupedSequence__Group__1_in_rule__GroupedSequence__Group__07367); 
    1127311578            rule__GroupedSequence__Group__1(); 
    1127411579 
     
    1128411589        } 
    1128511590        finally { 
    11286             if ( state.backtracking>0 ) { memoize(input, 212, rule__GroupedSequence__Group__0_StartIndex); } 
     11591            if ( state.backtracking>0 ) { memoize(input, 218, rule__GroupedSequence__Group__0_StartIndex); } 
    1128711592 
    1128811593                restoreStackSize(stackSize); 
     
    1129511600 
    1129611601    // $ANTLR start "rule__GroupedSequence__Group__0__Impl" 
    11297     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3523:1: rule__GroupedSequence__Group__0__Impl : ( '(' ) ; 
     11602    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3620:1: rule__GroupedSequence__Group__0__Impl : ( '(' ) ; 
    1129811603    public final void rule__GroupedSequence__Group__0__Impl() throws RecognitionException { 
    1129911604        int rule__GroupedSequence__Group__0__Impl_StartIndex = input.index(); 
     
    1130211607             
    1130311608        try { 
    11304             if ( state.backtracking>0 && alreadyParsedRule(input, 213) ) { return ; } 
    11305             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3527:1: ( ( '(' ) ) 
    11306             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3528:1: ( '(' ) 
    11307             { 
    11308             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3528:1: ( '(' ) 
    11309             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3529:1: '(' 
     11609            if ( state.backtracking>0 && alreadyParsedRule(input, 219) ) { return ; } 
     11610            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3624:1: ( ( '(' ) ) 
     11611            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3625:1: ( '(' ) 
     11612            { 
     11613            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3625:1: ( '(' ) 
     11614            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3626:1: '(' 
    1131011615            { 
    1131111616            if ( state.backtracking==0 ) { 
    1131211617               before(grammarAccess.getGroupedSequenceAccess().getLeftParenthesisKeyword_0());  
    1131311618            } 
    11314             match(input,17,FOLLOW_17_in_rule__GroupedSequence__Group__0__Impl7195); if (state.failed) return ; 
     11619            match(input,17,FOLLOW_17_in_rule__GroupedSequence__Group__0__Impl7395); if (state.failed) return ; 
    1131511620            if ( state.backtracking==0 ) { 
    1131611621               after(grammarAccess.getGroupedSequenceAccess().getLeftParenthesisKeyword_0());  
     
    1132811633        } 
    1132911634        finally { 
    11330             if ( state.backtracking>0 ) { memoize(input, 213, rule__GroupedSequence__Group__0__Impl_StartIndex); } 
     11635            if ( state.backtracking>0 ) { memoize(input, 219, rule__GroupedSequence__Group__0__Impl_StartIndex); } 
    1133111636 
    1133211637                restoreStackSize(stackSize); 
     
    1133911644 
    1134011645    // $ANTLR start "rule__GroupedSequence__Group__1" 
    11341     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3542:1: rule__GroupedSequence__Group__1 : rule__GroupedSequence__Group__1__Impl rule__GroupedSequence__Group__2 ; 
     11646    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3639:1: rule__GroupedSequence__Group__1 : rule__GroupedSequence__Group__1__Impl rule__GroupedSequence__Group__2 ; 
    1134211647    public final void rule__GroupedSequence__Group__1() throws RecognitionException { 
    1134311648        int rule__GroupedSequence__Group__1_StartIndex = input.index(); 
     
    1134611651             
    1134711652        try { 
    11348             if ( state.backtracking>0 && alreadyParsedRule(input, 214) ) { return ; } 
    11349             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3546:1: ( rule__GroupedSequence__Group__1__Impl rule__GroupedSequence__Group__2 ) 
    11350             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3547:2: rule__GroupedSequence__Group__1__Impl rule__GroupedSequence__Group__2 
    11351             { 
    11352             pushFollow(FOLLOW_rule__GroupedSequence__Group__1__Impl_in_rule__GroupedSequence__Group__17226); 
     11653            if ( state.backtracking>0 && alreadyParsedRule(input, 220) ) { return ; } 
     11654            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3643:1: ( rule__GroupedSequence__Group__1__Impl rule__GroupedSequence__Group__2 ) 
     11655            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3644:2: rule__GroupedSequence__Group__1__Impl rule__GroupedSequence__Group__2 
     11656            { 
     11657            pushFollow(FOLLOW_rule__GroupedSequence__Group__1__Impl_in_rule__GroupedSequence__Group__17426); 
    1135311658            rule__GroupedSequence__Group__1__Impl(); 
    1135411659 
    1135511660            state._fsp--; 
    1135611661            if (state.failed) return ; 
    11357             pushFollow(FOLLOW_rule__GroupedSequence__Group__2_in_rule__GroupedSequence__Group__17229); 
     11662            pushFollow(FOLLOW_rule__GroupedSequence__Group__2_in_rule__GroupedSequence__Group__17429); 
    1135811663            rule__GroupedSequence__Group__2(); 
    1135911664 
     
    1136911674        } 
    1137011675        finally { 
    11371             if ( state.backtracking>0 ) { memoize(input, 214, rule__GroupedSequence__Group__1_StartIndex); } 
     11676            if ( state.backtracking>0 ) { memoize(input, 220, rule__GroupedSequence__Group__1_StartIndex); } 
    1137211677 
    1137311678                restoreStackSize(stackSize); 
     
    1138011685 
    1138111686    // $ANTLR start "rule__GroupedSequence__Group__1__Impl" 
    11382     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3554:1: rule__GroupedSequence__Group__1__Impl : ( ( rule__GroupedSequence__DefinitionListAssignment_1 ) ) ; 
     11687    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3651:1: rule__GroupedSequence__Group__1__Impl : ( ( rule__GroupedSequence__DefinitionListAssignment_1 ) ) ; 
    1138311688    public final void rule__GroupedSequence__Group__1__Impl() throws RecognitionException { 
    1138411689        int rule__GroupedSequence__Group__1__Impl_StartIndex = input.index(); 
     
    1138711692             
    1138811693        try { 
    11389             if ( state.backtracking>0 && alreadyParsedRule(input, 215) ) { return ; } 
    11390             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3558:1: ( ( ( rule__GroupedSequence__DefinitionListAssignment_1 ) ) ) 
    11391             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3559:1: ( ( rule__GroupedSequence__DefinitionListAssignment_1 ) ) 
    11392             { 
    11393             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3559:1: ( ( rule__GroupedSequence__DefinitionListAssignment_1 ) ) 
    11394             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3560:1: ( rule__GroupedSequence__DefinitionListAssignment_1 ) 
     11694            if ( state.backtracking>0 && alreadyParsedRule(input, 221) ) { return ; } 
     11695            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3655:1: ( ( ( rule__GroupedSequence__DefinitionListAssignment_1 ) ) ) 
     11696            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3656:1: ( ( rule__GroupedSequence__DefinitionListAssignment_1 ) ) 
     11697            { 
     11698            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3656:1: ( ( rule__GroupedSequence__DefinitionListAssignment_1 ) ) 
     11699            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3657:1: ( rule__GroupedSequence__DefinitionListAssignment_1 ) 
    1139511700            { 
    1139611701            if ( state.backtracking==0 ) { 
    1139711702               before(grammarAccess.getGroupedSequenceAccess().getDefinitionListAssignment_1());  
    1139811703            } 
    11399             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3561:1: ( rule__GroupedSequence__DefinitionListAssignment_1 ) 
    11400             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3561:2: rule__GroupedSequence__DefinitionListAssignment_1 
    11401             { 
    11402             pushFollow(FOLLOW_rule__GroupedSequence__DefinitionListAssignment_1_in_rule__GroupedSequence__Group__1__Impl7256); 
     11704            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3658:1: ( rule__GroupedSequence__DefinitionListAssignment_1 ) 
     11705            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3658:2: rule__GroupedSequence__DefinitionListAssignment_1 
     11706            { 
     11707            pushFollow(FOLLOW_rule__GroupedSequence__DefinitionListAssignment_1_in_rule__GroupedSequence__Group__1__Impl7456); 
    1140311708            rule__GroupedSequence__DefinitionListAssignment_1(); 
    1140411709 
     
    1142311728        } 
    1142411729        finally { 
    11425             if ( state.backtracking>0 ) { memoize(input, 215, rule__GroupedSequence__Group__1__Impl_StartIndex); } 
     11730            if ( state.backtracking>0 ) { memoize(input, 221, rule__GroupedSequence__Group__1__Impl_StartIndex); } 
    1142611731 
    1142711732                restoreStackSize(stackSize); 
     
    1143411739 
    1143511740    // $ANTLR start "rule__GroupedSequence__Group__2" 
    11436     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3571:1: rule__GroupedSequence__Group__2 : rule__GroupedSequence__Group__2__Impl ; 
     11741    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3668:1: rule__GroupedSequence__Group__2 : rule__GroupedSequence__Group__2__Impl ; 
    1143711742    public final void rule__GroupedSequence__Group__2() throws RecognitionException { 
    1143811743        int rule__GroupedSequence__Group__2_StartIndex = input.index(); 
     
    1144111746             
    1144211747        try { 
    11443             if ( state.backtracking>0 && alreadyParsedRule(input, 216) ) { return ; } 
    11444             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3575:1: ( rule__GroupedSequence__Group__2__Impl ) 
    11445             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3576:2: rule__GroupedSequence__Group__2__Impl 
    11446             { 
    11447             pushFollow(FOLLOW_rule__GroupedSequence__Group__2__Impl_in_rule__GroupedSequence__Group__27286); 
     11748            if ( state.backtracking>0 && alreadyParsedRule(input, 222) ) { return ; } 
     11749            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3672:1: ( rule__GroupedSequence__Group__2__Impl ) 
     11750            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3673:2: rule__GroupedSequence__Group__2__Impl 
     11751            { 
     11752            pushFollow(FOLLOW_rule__GroupedSequence__Group__2__Impl_in_rule__GroupedSequence__Group__27486); 
    1144811753            rule__GroupedSequence__Group__2__Impl(); 
    1144911754 
     
    1145911764        } 
    1146011765        finally { 
    11461             if ( state.backtracking>0 ) { memoize(input, 216, rule__GroupedSequence__Group__2_StartIndex); } 
     11766            if ( state.backtracking>0 ) { memoize(input, 222, rule__GroupedSequence__Group__2_StartIndex); } 
    1146211767 
    1146311768                restoreStackSize(stackSize); 
     
    1147011775 
    1147111776    // $ANTLR start "rule__GroupedSequence__Group__2__Impl" 
    11472     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3582:1: rule__GroupedSequence__Group__2__Impl : ( ')' ) ; 
     11777    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3679:1: rule__GroupedSequence__Group__2__Impl : ( ')' ) ; 
    1147311778    public final void rule__GroupedSequence__Group__2__Impl() throws RecognitionException { 
    1147411779        int rule__GroupedSequence__Group__2__Impl_StartIndex = input.index(); 
     
    1147711782             
    1147811783        try { 
    11479             if ( state.backtracking>0 && alreadyParsedRule(input, 217) ) { return ; } 
    11480             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3586:1: ( ( ')' ) ) 
    11481             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3587:1: ( ')' ) 
    11482             { 
    11483             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3587:1: ( ')' ) 
    11484             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3588:1: ')' 
     11784            if ( state.backtracking>0 && alreadyParsedRule(input, 223) ) { return ; } 
     11785            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3683:1: ( ( ')' ) ) 
     11786            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3684:1: ( ')' ) 
     11787            { 
     11788            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3684:1: ( ')' ) 
     11789            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3685:1: ')' 
    1148511790            { 
    1148611791            if ( state.backtracking==0 ) { 
    1148711792               before(grammarAccess.getGroupedSequenceAccess().getRightParenthesisKeyword_2());  
    1148811793            } 
    11489             match(input,13,FOLLOW_13_in_rule__GroupedSequence__Group__2__Impl7314); if (state.failed) return ; 
     11794            match(input,13,FOLLOW_13_in_rule__GroupedSequence__Group__2__Impl7514); if (state.failed) return ; 
    1149011795            if ( state.backtracking==0 ) { 
    1149111796               after(grammarAccess.getGroupedSequenceAccess().getRightParenthesisKeyword_2());  
     
    1150311808        } 
    1150411809        finally { 
    11505             if ( state.backtracking>0 ) { memoize(input, 217, rule__GroupedSequence__Group__2__Impl_StartIndex); } 
     11810            if ( state.backtracking>0 ) { memoize(input, 223, rule__GroupedSequence__Group__2__Impl_StartIndex); } 
    1150611811 
    1150711812                restoreStackSize(stackSize); 
     
    1151411819 
    1151511820    // $ANTLR start "rule__OptionalSequence__Group__0" 
    11516     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3607:1: rule__OptionalSequence__Group__0 : rule__OptionalSequence__Group__0__Impl rule__OptionalSequence__Group__1 ; 
     11821    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3704:1: rule__OptionalSequence__Group__0 : rule__OptionalSequence__Group__0__Impl rule__OptionalSequence__Group__1 ; 
    1151711822    public final void rule__OptionalSequence__Group__0() throws RecognitionException { 
    1151811823        int rule__OptionalSequence__Group__0_StartIndex = input.index(); 
     
    1152111826             
    1152211827        try { 
    11523             if ( state.backtracking>0 && alreadyParsedRule(input, 218) ) { return ; } 
    11524             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3611:1: ( rule__OptionalSequence__Group__0__Impl rule__OptionalSequence__Group__1 ) 
    11525             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3612:2: rule__OptionalSequence__Group__0__Impl rule__OptionalSequence__Group__1 
    11526             { 
    11527             pushFollow(FOLLOW_rule__OptionalSequence__Group__0__Impl_in_rule__OptionalSequence__Group__07351); 
     11828            if ( state.backtracking>0 && alreadyParsedRule(input, 224) ) { return ; } 
     11829            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3708:1: ( rule__OptionalSequence__Group__0__Impl rule__OptionalSequence__Group__1 ) 
     11830            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3709:2: rule__OptionalSequence__Group__0__Impl rule__OptionalSequence__Group__1 
     11831            { 
     11832            pushFollow(FOLLOW_rule__OptionalSequence__Group__0__Impl_in_rule__OptionalSequence__Group__07551); 
    1152811833            rule__OptionalSequence__Group__0__Impl(); 
    1152911834 
    1153011835            state._fsp--; 
    1153111836            if (state.failed) return ; 
    11532             pushFollow(FOLLOW_rule__OptionalSequence__Group__1_in_rule__OptionalSequence__Group__07354); 
     11837            pushFollow(FOLLOW_rule__OptionalSequence__Group__1_in_rule__OptionalSequence__Group__07554); 
    1153311838            rule__OptionalSequence__Group__1(); 
    1153411839 
     
    1154411849        } 
    1154511850        finally { 
    11546             if ( state.backtracking>0 ) { memoize(input, 218, rule__OptionalSequence__Group__0_StartIndex); } 
     11851            if ( state.backtracking>0 ) { memoize(input, 224, rule__OptionalSequence__Group__0_StartIndex); } 
    1154711852 
    1154811853                restoreStackSize(stackSize); 
     
    1155511860 
    1155611861    // $ANTLR start "rule__OptionalSequence__Group__0__Impl" 
    11557     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3619:1: rule__OptionalSequence__Group__0__Impl : ( '[' ) ; 
     11862    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3716:1: rule__OptionalSequence__Group__0__Impl : ( '[' ) ; 
    1155811863    public final void rule__OptionalSequence__Group__0__Impl() throws RecognitionException { 
    1155911864        int rule__OptionalSequence__Group__0__Impl_StartIndex = input.index(); 
     
    1156211867             
    1156311868        try { 
    11564             if ( state.backtracking>0 && alreadyParsedRule(input, 219) ) { return ; } 
    11565             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3623:1: ( ( '[' ) ) 
    11566             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3624:1: ( '[' ) 
    11567             { 
    11568             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3624:1: ( '[' ) 
    11569             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3625:1: '[' 
     11869            if ( state.backtracking>0 && alreadyParsedRule(input, 225) ) { return ; } 
     11870            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3720:1: ( ( '[' ) ) 
     11871            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3721:1: ( '[' ) 
     11872            { 
     11873            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3721:1: ( '[' ) 
     11874            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3722:1: '[' 
    1157011875            { 
    1157111876            if ( state.backtracking==0 ) { 
    1157211877               before(grammarAccess.getOptionalSequenceAccess().getLeftSquareBracketKeyword_0());  
    1157311878            } 
    11574             match(input,18,FOLLOW_18_in_rule__OptionalSequence__Group__0__Impl7382); if (state.failed) return ; 
     11879            match(input,18,FOLLOW_18_in_rule__OptionalSequence__Group__0__Impl7582); if (state.failed) return ; 
    1157511880            if ( state.backtracking==0 ) { 
    1157611881               after(grammarAccess.getOptionalSequenceAccess().getLeftSquareBracketKeyword_0());  
     
    1158811893        } 
    1158911894        finally { 
    11590             if ( state.backtracking>0 ) { memoize(input, 219, rule__OptionalSequence__Group__0__Impl_StartIndex); } 
     11895            if ( state.backtracking>0 ) { memoize(input, 225, rule__OptionalSequence__Group__0__Impl_StartIndex); } 
    1159111896 
    1159211897                restoreStackSize(stackSize); 
     
    1159911904 
    1160011905    // $ANTLR start "rule__OptionalSequence__Group__1" 
    11601     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3638:1: rule__OptionalSequence__Group__1 : rule__OptionalSequence__Group__1__Impl rule__OptionalSequence__Group__2 ; 
     11906    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3735:1: rule__OptionalSequence__Group__1 : rule__OptionalSequence__Group__1__Impl rule__OptionalSequence__Group__2 ; 
    1160211907    public final void rule__OptionalSequence__Group__1() throws RecognitionException { 
    1160311908        int rule__OptionalSequence__Group__1_StartIndex = input.index(); 
     
    1160611911             
    1160711912        try { 
    11608             if ( state.backtracking>0 && alreadyParsedRule(input, 220) ) { return ; } 
    11609             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3642:1: ( rule__OptionalSequence__Group__1__Impl rule__OptionalSequence__Group__2 ) 
    11610             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3643:2: rule__OptionalSequence__Group__1__Impl rule__OptionalSequence__Group__2 
    11611             { 
    11612             pushFollow(FOLLOW_rule__OptionalSequence__Group__1__Impl_in_rule__OptionalSequence__Group__17413); 
     11913            if ( state.backtracking>0 && alreadyParsedRule(input, 226) ) { return ; } 
     11914            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3739:1: ( rule__OptionalSequence__Group__1__Impl rule__OptionalSequence__Group__2 ) 
     11915            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3740:2: rule__OptionalSequence__Group__1__Impl rule__OptionalSequence__Group__2 
     11916            { 
     11917            pushFollow(FOLLOW_rule__OptionalSequence__Group__1__Impl_in_rule__OptionalSequence__Group__17613); 
    1161311918            rule__OptionalSequence__Group__1__Impl(); 
    1161411919 
    1161511920            state._fsp--; 
    1161611921            if (state.failed) return ; 
    11617             pushFollow(FOLLOW_rule__OptionalSequence__Group__2_in_rule__OptionalSequence__Group__17416); 
     11922            pushFollow(FOLLOW_rule__OptionalSequence__Group__2_in_rule__OptionalSequence__Group__17616); 
    1161811923            rule__OptionalSequence__Group__2(); 
    1161911924 
     
    1162911934        } 
    1163011935        finally { 
    11631             if ( state.backtracking>0 ) { memoize(input, 220, rule__OptionalSequence__Group__1_StartIndex); } 
     11936            if ( state.backtracking>0 ) { memoize(input, 226, rule__OptionalSequence__Group__1_StartIndex); } 
    1163211937 
    1163311938                restoreStackSize(stackSize); 
     
    1164011945 
    1164111946    // $ANTLR start "rule__OptionalSequence__Group__1__Impl" 
    11642     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3650:1: rule__OptionalSequence__Group__1__Impl : ( ( rule__OptionalSequence__DefinitionListAssignment_1 ) ) ; 
     11947    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3747:1: rule__OptionalSequence__Group__1__Impl : ( ( rule__OptionalSequence__DefinitionListAssignment_1 ) ) ; 
    1164311948    public final void rule__OptionalSequence__Group__1__Impl() throws RecognitionException { 
    1164411949        int rule__OptionalSequence__Group__1__Impl_StartIndex = input.index(); 
     
    1164711952             
    1164811953        try { 
    11649             if ( state.backtracking>0 && alreadyParsedRule(input, 221) ) { return ; } 
    11650             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3654:1: ( ( ( rule__OptionalSequence__DefinitionListAssignment_1 ) ) ) 
    11651             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3655:1: ( ( rule__OptionalSequence__DefinitionListAssignment_1 ) ) 
    11652             { 
    11653             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3655:1: ( ( rule__OptionalSequence__DefinitionListAssignment_1 ) ) 
    11654             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3656:1: ( rule__OptionalSequence__DefinitionListAssignment_1 ) 
     11954            if ( state.backtracking>0 && alreadyParsedRule(input, 227) ) { return ; } 
     11955            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3751:1: ( ( ( rule__OptionalSequence__DefinitionListAssignment_1 ) ) ) 
     11956            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3752:1: ( ( rule__OptionalSequence__DefinitionListAssignment_1 ) ) 
     11957            { 
     11958            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3752:1: ( ( rule__OptionalSequence__DefinitionListAssignment_1 ) ) 
     11959            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3753:1: ( rule__OptionalSequence__DefinitionListAssignment_1 ) 
    1165511960            { 
    1165611961            if ( state.backtracking==0 ) { 
    1165711962               before(grammarAccess.getOptionalSequenceAccess().getDefinitionListAssignment_1());  
    1165811963            } 
    11659             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3657:1: ( rule__OptionalSequence__DefinitionListAssignment_1 ) 
    11660             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3657:2: rule__OptionalSequence__DefinitionListAssignment_1 
    11661             { 
    11662             pushFollow(FOLLOW_rule__OptionalSequence__DefinitionListAssignment_1_in_rule__OptionalSequence__Group__1__Impl7443); 
     11964            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3754:1: ( rule__OptionalSequence__DefinitionListAssignment_1 ) 
     11965            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3754:2: rule__OptionalSequence__DefinitionListAssignment_1 
     11966            { 
     11967            pushFollow(FOLLOW_rule__OptionalSequence__DefinitionListAssignment_1_in_rule__OptionalSequence__Group__1__Impl7643); 
    1166311968            rule__OptionalSequence__DefinitionListAssignment_1(); 
    1166411969 
     
    1168311988        } 
    1168411989        finally { 
    11685             if ( state.backtracking>0 ) { memoize(input, 221, rule__OptionalSequence__Group__1__Impl_StartIndex); } 
     11990            if ( state.backtracking>0 ) { memoize(input, 227, rule__OptionalSequence__Group__1__Impl_StartIndex); } 
    1168611991 
    1168711992                restoreStackSize(stackSize); 
     
    1169411999 
    1169512000    // $ANTLR start "rule__OptionalSequence__Group__2" 
    11696     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3667:1: rule__OptionalSequence__Group__2 : rule__OptionalSequence__Group__2__Impl ; 
     12001    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3764:1: rule__OptionalSequence__Group__2 : rule__OptionalSequence__Group__2__Impl ; 
    1169712002    public final void rule__OptionalSequence__Group__2() throws RecognitionException { 
    1169812003        int rule__OptionalSequence__Group__2_StartIndex = input.index(); 
     
    1170112006             
    1170212007        try { 
    11703             if ( state.backtracking>0 && alreadyParsedRule(input, 222) ) { return ; } 
    11704             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3671:1: ( rule__OptionalSequence__Group__2__Impl ) 
    11705             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3672:2: rule__OptionalSequence__Group__2__Impl 
    11706             { 
    11707             pushFollow(FOLLOW_rule__OptionalSequence__Group__2__Impl_in_rule__OptionalSequence__Group__27473); 
     12008            if ( state.backtracking>0 && alreadyParsedRule(input, 228) ) { return ; } 
     12009            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3768:1: ( rule__OptionalSequence__Group__2__Impl ) 
     12010            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3769:2: rule__OptionalSequence__Group__2__Impl 
     12011            { 
     12012            pushFollow(FOLLOW_rule__OptionalSequence__Group__2__Impl_in_rule__OptionalSequence__Group__27673); 
    1170812013            rule__OptionalSequence__Group__2__Impl(); 
    1170912014 
     
    1171912024        } 
    1172012025        finally { 
    11721             if ( state.backtracking>0 ) { memoize(input, 222, rule__OptionalSequence__Group__2_StartIndex); } 
     12026            if ( state.backtracking>0 ) { memoize(input, 228, rule__OptionalSequence__Group__2_StartIndex); } 
    1172212027 
    1172312028                restoreStackSize(stackSize); 
     
    1173012035 
    1173112036    // $ANTLR start "rule__OptionalSequence__Group__2__Impl" 
    11732     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3678:1: rule__OptionalSequence__Group__2__Impl : ( ']' ) ; 
     12037    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3775:1: rule__OptionalSequence__Group__2__Impl : ( ']' ) ; 
    1173312038    public final void rule__OptionalSequence__Group__2__Impl() throws RecognitionException { 
    1173412039        int rule__OptionalSequence__Group__2__Impl_StartIndex = input.index(); 
     
    1173712042             
    1173812043        try { 
    11739             if ( state.backtracking>0 && alreadyParsedRule(input, 223) ) { return ; } 
    11740             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3682:1: ( ( ']' ) ) 
    11741             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3683:1: ( ']' ) 
    11742             { 
    11743             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3683:1: ( ']' ) 
    11744             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3684:1: ']' 
     12044            if ( state.backtracking>0 && alreadyParsedRule(input, 229) ) { return ; } 
     12045            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3779:1: ( ( ']' ) ) 
     12046            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3780:1: ( ']' ) 
     12047            { 
     12048            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3780:1: ( ']' ) 
     12049            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3781:1: ']' 
    1174512050            { 
    1174612051            if ( state.backtracking==0 ) { 
    1174712052               before(grammarAccess.getOptionalSequenceAccess().getRightSquareBracketKeyword_2());  
    1174812053            } 
    11749             match(input,14,FOLLOW_14_in_rule__OptionalSequence__Group__2__Impl7501); if (state.failed) return ; 
     12054            match(input,14,FOLLOW_14_in_rule__OptionalSequence__Group__2__Impl7701); if (state.failed) return ; 
    1175012055            if ( state.backtracking==0 ) { 
    1175112056               after(grammarAccess.getOptionalSequenceAccess().getRightSquareBracketKeyword_2());  
     
    1176312068        } 
    1176412069        finally { 
    11765             if ( state.backtracking>0 ) { memoize(input, 223, rule__OptionalSequence__Group__2__Impl_StartIndex); } 
     12070            if ( state.backtracking>0 ) { memoize(input, 229, rule__OptionalSequence__Group__2__Impl_StartIndex); } 
    1176612071 
    1176712072                restoreStackSize(stackSize); 
     
    1177412079 
    1177512080    // $ANTLR start "rule__RepeatedSequence__Group__0" 
    11776     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3703:1: rule__RepeatedSequence__Group__0 : rule__RepeatedSequence__Group__0__Impl rule__RepeatedSequence__Group__1 ; 
     12081    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3800:1: rule__RepeatedSequence__Group__0 : rule__RepeatedSequence__Group__0__Impl rule__RepeatedSequence__Group__1 ; 
    1177712082    public final void rule__RepeatedSequence__Group__0() throws RecognitionException { 
    1177812083        int rule__RepeatedSequence__Group__0_StartIndex = input.index(); 
     
    1178112086             
    1178212087        try { 
    11783             if ( state.backtracking>0 && alreadyParsedRule(input, 224) ) { return ; } 
    11784             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3707:1: ( rule__RepeatedSequence__Group__0__Impl rule__RepeatedSequence__Group__1 ) 
    11785             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3708:2: rule__RepeatedSequence__Group__0__Impl rule__RepeatedSequence__Group__1 
    11786             { 
    11787             pushFollow(FOLLOW_rule__RepeatedSequence__Group__0__Impl_in_rule__RepeatedSequence__Group__07538); 
     12088            if ( state.backtracking>0 && alreadyParsedRule(input, 230) ) { return ; } 
     12089            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3804:1: ( rule__RepeatedSequence__Group__0__Impl rule__RepeatedSequence__Group__1 ) 
     12090            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3805:2: rule__RepeatedSequence__Group__0__Impl rule__RepeatedSequence__Group__1 
     12091            { 
     12092            pushFollow(FOLLOW_rule__RepeatedSequence__Group__0__Impl_in_rule__RepeatedSequence__Group__07738); 
    1178812093            rule__RepeatedSequence__Group__0__Impl(); 
    1178912094 
    1179012095            state._fsp--; 
    1179112096            if (state.failed) return ; 
    11792             pushFollow(FOLLOW_rule__RepeatedSequence__Group__1_in_rule__RepeatedSequence__Group__07541); 
     12097            pushFollow(FOLLOW_rule__RepeatedSequence__Group__1_in_rule__RepeatedSequence__Group__07741); 
    1179312098            rule__RepeatedSequence__Group__1(); 
    1179412099 
     
    1180412109        } 
    1180512110        finally { 
    11806             if ( state.backtracking>0 ) { memoize(input, 224, rule__RepeatedSequence__Group__0_StartIndex); } 
     12111            if ( state.backtracking>0 ) { memoize(input, 230, rule__RepeatedSequence__Group__0_StartIndex); } 
    1180712112 
    1180812113                restoreStackSize(stackSize); 
     
    1181512120 
    1181612121    // $ANTLR start "rule__RepeatedSequence__Group__0__Impl" 
    11817     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3715:1: rule__RepeatedSequence__Group__0__Impl : ( '{' ) ; 
     12122    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3812:1: rule__RepeatedSequence__Group__0__Impl : ( '{' ) ; 
    1181812123    public final void rule__RepeatedSequence__Group__0__Impl() throws RecognitionException { 
    1181912124        int rule__RepeatedSequence__Group__0__Impl_StartIndex = input.index(); 
     
    1182212127             
    1182312128        try { 
    11824             if ( state.backtracking>0 && alreadyParsedRule(input, 225) ) { return ; } 
    11825             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3719:1: ( ( '{' ) ) 
    11826             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3720:1: ( '{' ) 
    11827             { 
    11828             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3720:1: ( '{' ) 
    11829             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3721:1: '{' 
     12129            if ( state.backtracking>0 && alreadyParsedRule(input, 231) ) { return ; } 
     12130            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3816:1: ( ( '{' ) ) 
     12131            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3817:1: ( '{' ) 
     12132            { 
     12133            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3817:1: ( '{' ) 
     12134            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3818:1: '{' 
    1183012135            { 
    1183112136            if ( state.backtracking==0 ) { 
    1183212137               before(grammarAccess.getRepeatedSequenceAccess().getLeftCurlyBracketKeyword_0());  
    1183312138            } 
    11834             match(input,19,FOLLOW_19_in_rule__RepeatedSequence__Group__0__Impl7569); if (state.failed) return ; 
     12139            match(input,19,FOLLOW_19_in_rule__RepeatedSequence__Group__0__Impl7769); if (state.failed) return ; 
    1183512140            if ( state.backtracking==0 ) { 
    1183612141               after(grammarAccess.getRepeatedSequenceAccess().getLeftCurlyBracketKeyword_0());  
     
    1184812153        } 
    1184912154        finally { 
    11850             if ( state.backtracking>0 ) { memoize(input, 225, rule__RepeatedSequence__Group__0__Impl_StartIndex); } 
     12155            if ( state.backtracking>0 ) { memoize(input, 231, rule__RepeatedSequence__Group__0__Impl_StartIndex); } 
    1185112156 
    1185212157                restoreStackSize(stackSize); 
     
    1185912164 
    1186012165    // $ANTLR start "rule__RepeatedSequence__Group__1" 
    11861     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3734:1: rule__RepeatedSequence__Group__1 : rule__RepeatedSequence__Group__1__Impl rule__RepeatedSequence__Group__2 ; 
     12166    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3831:1: rule__RepeatedSequence__Group__1 : rule__RepeatedSequence__Group__1__Impl rule__RepeatedSequence__Group__2 ; 
    1186212167    public final void rule__RepeatedSequence__Group__1() throws RecognitionException { 
    1186312168        int rule__RepeatedSequence__Group__1_StartIndex = input.index(); 
     
    1186612171             
    1186712172        try { 
    11868             if ( state.backtracking>0 && alreadyParsedRule(input, 226) ) { return ; } 
    11869             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3738:1: ( rule__RepeatedSequence__Group__1__Impl rule__RepeatedSequence__Group__2 ) 
    11870             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3739:2: rule__RepeatedSequence__Group__1__Impl rule__RepeatedSequence__Group__2 
    11871             { 
    11872             pushFollow(FOLLOW_rule__RepeatedSequence__Group__1__Impl_in_rule__RepeatedSequence__Group__17600); 
     12173            if ( state.backtracking>0 && alreadyParsedRule(input, 232) ) { return ; } 
     12174            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3835:1: ( rule__RepeatedSequence__Group__1__Impl rule__RepeatedSequence__Group__2 ) 
     12175            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3836:2: rule__RepeatedSequence__Group__1__Impl rule__RepeatedSequence__Group__2 
     12176            { 
     12177            pushFollow(FOLLOW_rule__RepeatedSequence__Group__1__Impl_in_rule__RepeatedSequence__Group__17800); 
    1187312178            rule__RepeatedSequence__Group__1__Impl(); 
    1187412179 
    1187512180            state._fsp--; 
    1187612181            if (state.failed) return ; 
    11877             pushFollow(FOLLOW_rule__RepeatedSequence__Group__2_in_rule__RepeatedSequence__Group__17603); 
     12182            pushFollow(FOLLOW_rule__RepeatedSequence__Group__2_in_rule__RepeatedSequence__Group__17803); 
    1187812183            rule__RepeatedSequence__Group__2(); 
    1187912184 
     
    1188912194        } 
    1189012195        finally { 
    11891             if ( state.backtracking>0 ) { memoize(input, 226, rule__RepeatedSequence__Group__1_StartIndex); } 
     12196            if ( state.backtracking>0 ) { memoize(input, 232, rule__RepeatedSequence__Group__1_StartIndex); } 
    1189212197 
    1189312198                restoreStackSize(stackSize); 
     
    1190012205 
    1190112206    // $ANTLR start "rule__RepeatedSequence__Group__1__Impl" 
    11902     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3746:1: rule__RepeatedSequence__Group__1__Impl : ( ( rule__RepeatedSequence__DefinitionsAssignment_1 ) ) ; 
     12207    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3843:1: rule__RepeatedSequence__Group__1__Impl : ( ( rule__RepeatedSequence__DefinitionsAssignment_1 ) ) ; 
    1190312208    public final void rule__RepeatedSequence__Group__1__Impl() throws RecognitionException { 
    1190412209        int rule__RepeatedSequence__Group__1__Impl_StartIndex = input.index(); 
     
    1190712212             
    1190812213        try { 
    11909             if ( state.backtracking>0 && alreadyParsedRule(input, 227) ) { return ; } 
    11910             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3750:1: ( ( ( rule__RepeatedSequence__DefinitionsAssignment_1 ) ) ) 
    11911             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3751:1: ( ( rule__RepeatedSequence__DefinitionsAssignment_1 ) ) 
    11912             { 
    11913             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3751:1: ( ( rule__RepeatedSequence__DefinitionsAssignment_1 ) ) 
    11914             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3752:1: ( rule__RepeatedSequence__DefinitionsAssignment_1 ) 
     12214            if ( state.backtracking>0 && alreadyParsedRule(input, 233) ) { return ; } 
     12215            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3847:1: ( ( ( rule__RepeatedSequence__DefinitionsAssignment_1 ) ) ) 
     12216            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3848:1: ( ( rule__RepeatedSequence__DefinitionsAssignment_1 ) ) 
     12217            { 
     12218            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3848:1: ( ( rule__RepeatedSequence__DefinitionsAssignment_1 ) ) 
     12219            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3849:1: ( rule__RepeatedSequence__DefinitionsAssignment_1 ) 
    1191512220            { 
    1191612221            if ( state.backtracking==0 ) { 
    1191712222               before(grammarAccess.getRepeatedSequenceAccess().getDefinitionsAssignment_1());  
    1191812223            } 
    11919             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3753:1: ( rule__RepeatedSequence__DefinitionsAssignment_1 ) 
    11920             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3753:2: rule__RepeatedSequence__DefinitionsAssignment_1 
    11921             { 
    11922             pushFollow(FOLLOW_rule__RepeatedSequence__DefinitionsAssignment_1_in_rule__RepeatedSequence__Group__1__Impl7630); 
     12224            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3850:1: ( rule__RepeatedSequence__DefinitionsAssignment_1 ) 
     12225            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3850:2: rule__RepeatedSequence__DefinitionsAssignment_1 
     12226            { 
     12227            pushFollow(FOLLOW_rule__RepeatedSequence__DefinitionsAssignment_1_in_rule__RepeatedSequence__Group__1__Impl7830); 
    1192312228            rule__RepeatedSequence__DefinitionsAssignment_1(); 
    1192412229 
     
    1194312248        } 
    1194412249        finally { 
    11945             if ( state.backtracking>0 ) { memoize(input, 227, rule__RepeatedSequence__Group__1__Impl_StartIndex); } 
     12250            if ( state.backtracking>0 ) { memoize(input, 233, rule__RepeatedSequence__Group__1__Impl_StartIndex); } 
    1194612251 
    1194712252                restoreStackSize(stackSize); 
     
    1195412259 
    1195512260    // $ANTLR start "rule__RepeatedSequence__Group__2" 
    11956     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3763:1: rule__RepeatedSequence__Group__2 : rule__RepeatedSequence__Group__2__Impl rule__RepeatedSequence__Group__3 ; 
     12261    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3860:1: rule__RepeatedSequence__Group__2 : rule__RepeatedSequence__Group__2__Impl rule__RepeatedSequence__Group__3 ; 
    1195712262    public final void rule__RepeatedSequence__Group__2() throws RecognitionException { 
    1195812263        int rule__RepeatedSequence__Group__2_StartIndex = input.index(); 
     
    1196112266             
    1196212267        try { 
    11963             if ( state.backtracking>0 && alreadyParsedRule(input, 228) ) { return ; } 
    11964             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3767:1: ( rule__RepeatedSequence__Group__2__Impl rule__RepeatedSequence__Group__3 ) 
    11965             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3768:2: rule__RepeatedSequence__Group__2__Impl rule__RepeatedSequence__Group__3 
    11966             { 
    11967             pushFollow(FOLLOW_rule__RepeatedSequence__Group__2__Impl_in_rule__RepeatedSequence__Group__27660); 
     12268            if ( state.backtracking>0 && alreadyParsedRule(input, 234) ) { return ; } 
     12269            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3864:1: ( rule__RepeatedSequence__Group__2__Impl rule__RepeatedSequence__Group__3 ) 
     12270            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3865:2: rule__RepeatedSequence__Group__2__Impl rule__RepeatedSequence__Group__3 
     12271            { 
     12272            pushFollow(FOLLOW_rule__RepeatedSequence__Group__2__Impl_in_rule__RepeatedSequence__Group__27860); 
    1196812273            rule__RepeatedSequence__Group__2__Impl(); 
    1196912274 
    1197012275            state._fsp--; 
    1197112276            if (state.failed) return ; 
    11972             pushFollow(FOLLOW_rule__RepeatedSequence__Group__3_in_rule__RepeatedSequence__Group__27663); 
     12277            pushFollow(FOLLOW_rule__RepeatedSequence__Group__3_in_rule__RepeatedSequence__Group__27863); 
    1197312278            rule__RepeatedSequence__Group__3(); 
    1197412279 
     
    1198412289        } 
    1198512290        finally { 
    11986             if ( state.backtracking>0 ) { memoize(input, 228, rule__RepeatedSequence__Group__2_StartIndex); } 
     12291            if ( state.backtracking>0 ) { memoize(input, 234, rule__RepeatedSequence__Group__2_StartIndex); } 
    1198712292 
    1198812293                restoreStackSize(stackSize); 
     
    1199512300 
    1199612301    // $ANTLR start "rule__RepeatedSequence__Group__2__Impl" 
    11997     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3775:1: rule__RepeatedSequence__Group__2__Impl : ( '}' ) ; 
     12302    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3872:1: rule__RepeatedSequence__Group__2__Impl : ( '}' ) ; 
    1199812303    public final void rule__RepeatedSequence__Group__2__Impl() throws RecognitionException { 
    1199912304        int rule__RepeatedSequence__Group__2__Impl_StartIndex = input.index(); 
     
    1200212307             
    1200312308        try { 
    12004             if ( state.backtracking>0 && alreadyParsedRule(input, 229) ) { return ; } 
    12005             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3779:1: ( ( '}' ) ) 
    12006             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3780:1: ( '}' ) 
    12007             { 
    12008             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3780:1: ( '}' ) 
    12009             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3781:1: '}' 
     12309            if ( state.backtracking>0 && alreadyParsedRule(input, 235) ) { return ; } 
     12310            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3876:1: ( ( '}' ) ) 
     12311            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3877:1: ( '}' ) 
     12312            { 
     12313            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3877:1: ( '}' ) 
     12314            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3878:1: '}' 
    1201012315            { 
    1201112316            if ( state.backtracking==0 ) { 
    1201212317               before(grammarAccess.getRepeatedSequenceAccess().getRightCurlyBracketKeyword_2());  
    1201312318            } 
    12014             match(input,15,FOLLOW_15_in_rule__RepeatedSequence__Group__2__Impl7691); if (state.failed) return ; 
     12319            match(input,15,FOLLOW_15_in_rule__RepeatedSequence__Group__2__Impl7891); if (state.failed) return ; 
    1201512320            if ( state.backtracking==0 ) { 
    1201612321               after(grammarAccess.getRepeatedSequenceAccess().getRightCurlyBracketKeyword_2());  
     
    1202812333        } 
    1202912334        finally { 
    12030             if ( state.backtracking>0 ) { memoize(input, 229, rule__RepeatedSequence__Group__2__Impl_StartIndex); } 
     12335            if ( state.backtracking>0 ) { memoize(input, 235, rule__RepeatedSequence__Group__2__Impl_StartIndex); } 
    1203112336 
    1203212337                restoreStackSize(stackSize); 
     
    1203912344 
    1204012345    // $ANTLR start "rule__RepeatedSequence__Group__3" 
    12041     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3794:1: rule__RepeatedSequence__Group__3 : rule__RepeatedSequence__Group__3__Impl ; 
     12346    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3891:1: rule__RepeatedSequence__Group__3 : rule__RepeatedSequence__Group__3__Impl ; 
    1204212347    public final void rule__RepeatedSequence__Group__3() throws RecognitionException { 
    1204312348        int rule__RepeatedSequence__Group__3_StartIndex = input.index(); 
     
    1204612351             
    1204712352        try { 
    12048             if ( state.backtracking>0 && alreadyParsedRule(input, 230) ) { return ; } 
    12049             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3798:1: ( rule__RepeatedSequence__Group__3__Impl ) 
    12050             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3799:2: rule__RepeatedSequence__Group__3__Impl 
    12051             { 
    12052             pushFollow(FOLLOW_rule__RepeatedSequence__Group__3__Impl_in_rule__RepeatedSequence__Group__37722); 
     12353            if ( state.backtracking>0 && alreadyParsedRule(input, 236) ) { return ; } 
     12354            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3895:1: ( rule__RepeatedSequence__Group__3__Impl ) 
     12355            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3896:2: rule__RepeatedSequence__Group__3__Impl 
     12356            { 
     12357            pushFollow(FOLLOW_rule__RepeatedSequence__Group__3__Impl_in_rule__RepeatedSequence__Group__37922); 
    1205312358            rule__RepeatedSequence__Group__3__Impl(); 
    1205412359 
     
    1206412369        } 
    1206512370        finally { 
    12066             if ( state.backtracking>0 ) { memoize(input, 230, rule__RepeatedSequence__Group__3_StartIndex); } 
     12371            if ( state.backtracking>0 ) { memoize(input, 236, rule__RepeatedSequence__Group__3_StartIndex); } 
    1206712372 
    1206812373                restoreStackSize(stackSize); 
     
    1207512380 
    1207612381    // $ANTLR start "rule__RepeatedSequence__Group__3__Impl" 
    12077     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3805:1: rule__RepeatedSequence__Group__3__Impl : ( ( rule__RepeatedSequence__Alternatives_3 ) ) ; 
     12382    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3902:1: rule__RepeatedSequence__Group__3__Impl : ( ( rule__RepeatedSequence__Alternatives_3 ) ) ; 
    1207812383    public final void rule__RepeatedSequence__Group__3__Impl() throws RecognitionException { 
    1207912384        int rule__RepeatedSequence__Group__3__Impl_StartIndex = input.index(); 
     
    1208212387             
    1208312388        try { 
    12084             if ( state.backtracking>0 && alreadyParsedRule(input, 231) ) { return ; } 
    12085             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3809:1: ( ( ( rule__RepeatedSequence__Alternatives_3 ) ) ) 
    12086             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3810:1: ( ( rule__RepeatedSequence__Alternatives_3 ) ) 
    12087             { 
    12088             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3810:1: ( ( rule__RepeatedSequence__Alternatives_3 ) ) 
    12089             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3811:1: ( rule__RepeatedSequence__Alternatives_3 ) 
     12389            if ( state.backtracking>0 && alreadyParsedRule(input, 237) ) { return ; } 
     12390            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3906:1: ( ( ( rule__RepeatedSequence__Alternatives_3 ) ) ) 
     12391            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3907:1: ( ( rule__RepeatedSequence__Alternatives_3 ) ) 
     12392            { 
     12393            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3907:1: ( ( rule__RepeatedSequence__Alternatives_3 ) ) 
     12394            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3908:1: ( rule__RepeatedSequence__Alternatives_3 ) 
    1209012395            { 
    1209112396            if ( state.backtracking==0 ) { 
    1209212397               before(grammarAccess.getRepeatedSequenceAccess().getAlternatives_3());  
    1209312398            } 
    12094             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3812:1: ( rule__RepeatedSequence__Alternatives_3 ) 
    12095             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3812:2: rule__RepeatedSequence__Alternatives_3 
    12096             { 
    12097             pushFollow(FOLLOW_rule__RepeatedSequence__Alternatives_3_in_rule__RepeatedSequence__Group__3__Impl7749); 
     12399            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3909:1: ( rule__RepeatedSequence__Alternatives_3 ) 
     12400            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3909:2: rule__RepeatedSequence__Alternatives_3 
     12401            { 
     12402            pushFollow(FOLLOW_rule__RepeatedSequence__Alternatives_3_in_rule__RepeatedSequence__Group__3__Impl7949); 
    1209812403            rule__RepeatedSequence__Alternatives_3(); 
    1209912404 
     
    1211812423        } 
    1211912424        finally { 
    12120             if ( state.backtracking>0 ) { memoize(input, 231, rule__RepeatedSequence__Group__3__Impl_StartIndex); } 
     12425            if ( state.backtracking>0 ) { memoize(input, 237, rule__RepeatedSequence__Group__3__Impl_StartIndex); } 
    1212112426 
    1212212427                restoreStackSize(stackSize); 
     
    1212912434 
    1213012435    // $ANTLR start "rule__RepeatRange__Group__0" 
    12131     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3830:1: rule__RepeatRange__Group__0 : rule__RepeatRange__Group__0__Impl rule__RepeatRange__Group__1 ; 
     12436    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3927:1: rule__RepeatRange__Group__0 : rule__RepeatRange__Group__0__Impl rule__RepeatRange__Group__1 ; 
    1213212437    public final void rule__RepeatRange__Group__0() throws RecognitionException { 
    1213312438        int rule__RepeatRange__Group__0_StartIndex = input.index(); 
     
    1213612441             
    1213712442        try { 
    12138             if ( state.backtracking>0 && alreadyParsedRule(input, 232) ) { return ; } 
    12139             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3834:1: ( rule__RepeatRange__Group__0__Impl rule__RepeatRange__Group__1 ) 
    12140             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3835:2: rule__RepeatRange__Group__0__Impl rule__RepeatRange__Group__1 
    12141             { 
    12142             pushFollow(FOLLOW_rule__RepeatRange__Group__0__Impl_in_rule__RepeatRange__Group__07787); 
     12443            if ( state.backtracking>0 && alreadyParsedRule(input, 238) ) { return ; } 
     12444            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3931:1: ( rule__RepeatRange__Group__0__Impl rule__RepeatRange__Group__1 ) 
     12445            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3932:2: rule__RepeatRange__Group__0__Impl rule__RepeatRange__Group__1 
     12446            { 
     12447            pushFollow(FOLLOW_rule__RepeatRange__Group__0__Impl_in_rule__RepeatRange__Group__07987); 
    1214312448            rule__RepeatRange__Group__0__Impl(); 
    1214412449 
    1214512450            state._fsp--; 
    1214612451            if (state.failed) return ; 
    12147             pushFollow(FOLLOW_rule__RepeatRange__Group__1_in_rule__RepeatRange__Group__07790); 
     12452            pushFollow(FOLLOW_rule__RepeatRange__Group__1_in_rule__RepeatRange__Group__07990); 
    1214812453            rule__RepeatRange__Group__1(); 
    1214912454 
     
    1215912464        } 
    1216012465        finally { 
    12161             if ( state.backtracking>0 ) { memoize(input, 232, rule__RepeatRange__Group__0_StartIndex); } 
     12466            if ( state.backtracking>0 ) { memoize(input, 238, rule__RepeatRange__Group__0_StartIndex); } 
    1216212467 
    1216312468                restoreStackSize(stackSize); 
     
    1217012475 
    1217112476    // $ANTLR start "rule__RepeatRange__Group__0__Impl" 
    12172     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3842:1: rule__RepeatRange__Group__0__Impl : ( '#' ) ; 
     12477    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3939:1: rule__RepeatRange__Group__0__Impl : ( '#' ) ; 
    1217312478    public final void rule__RepeatRange__Group__0__Impl() throws RecognitionException { 
    1217412479        int rule__RepeatRange__Group__0__Impl_StartIndex = input.index(); 
     
    1217712482             
    1217812483        try { 
    12179             if ( state.backtracking>0 && alreadyParsedRule(input, 233) ) { return ; } 
    12180             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3846:1: ( ( '#' ) ) 
    12181             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3847:1: ( '#' ) 
    12182             { 
    12183             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3847:1: ( '#' ) 
    12184             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3848:1: '#' 
     12484            if ( state.backtracking>0 && alreadyParsedRule(input, 239) ) { return ; } 
     12485            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3943:1: ( ( '#' ) ) 
     12486            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3944:1: ( '#' ) 
     12487            { 
     12488            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3944:1: ( '#' ) 
     12489            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3945:1: '#' 
    1218512490            { 
    1218612491            if ( state.backtracking==0 ) { 
    1218712492               before(grammarAccess.getRepeatRangeAccess().getNumberSignKeyword_0());  
    1218812493            } 
    12189             match(input,34,FOLLOW_34_in_rule__RepeatRange__Group__0__Impl7818); if (state.failed) return ; 
     12494            match(input,34,FOLLOW_34_in_rule__RepeatRange__Group__0__Impl8018); if (state.failed) return ; 
    1219012495            if ( state.backtracking==0 ) { 
    1219112496               after(grammarAccess.getRepeatRangeAccess().getNumberSignKeyword_0());  
     
    1220312508        } 
    1220412509        finally { 
    12205             if ( state.backtracking>0 ) { memoize(input, 233, rule__RepeatRange__Group__0__Impl_StartIndex); } 
     12510            if ( state.backtracking>0 ) { memoize(input, 239, rule__RepeatRange__Group__0__Impl_StartIndex); } 
    1220612511 
    1220712512                restoreStackSize(stackSize); 
     
    1221412519 
    1221512520    // $ANTLR start "rule__RepeatRange__Group__1" 
    12216     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3861:1: rule__RepeatRange__Group__1 : rule__RepeatRange__Group__1__Impl rule__RepeatRange__Group__2 ; 
     12521    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3958:1: rule__RepeatRange__Group__1 : rule__RepeatRange__Group__1__Impl rule__RepeatRange__Group__2 ; 
    1221712522    public final void rule__RepeatRange__Group__1() throws RecognitionException { 
    1221812523        int rule__RepeatRange__Group__1_StartIndex = input.index(); 
     
    1222112526             
    1222212527        try { 
    12223             if ( state.backtracking>0 && alreadyParsedRule(input, 234) ) { return ; } 
    12224             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3865:1: ( rule__RepeatRange__Group__1__Impl rule__RepeatRange__Group__2 ) 
    12225             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3866:2: rule__RepeatRange__Group__1__Impl rule__RepeatRange__Group__2 
    12226             { 
    12227             pushFollow(FOLLOW_rule__RepeatRange__Group__1__Impl_in_rule__RepeatRange__Group__17849); 
     12528            if ( state.backtracking>0 && alreadyParsedRule(input, 240) ) { return ; } 
     12529            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3962:1: ( rule__RepeatRange__Group__1__Impl rule__RepeatRange__Group__2 ) 
     12530            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3963:2: rule__RepeatRange__Group__1__Impl rule__RepeatRange__Group__2 
     12531            { 
     12532            pushFollow(FOLLOW_rule__RepeatRange__Group__1__Impl_in_rule__RepeatRange__Group__18049); 
    1222812533            rule__RepeatRange__Group__1__Impl(); 
    1222912534 
    1223012535            state._fsp--; 
    1223112536            if (state.failed) return ; 
    12232             pushFollow(FOLLOW_rule__RepeatRange__Group__2_in_rule__RepeatRange__Group__17852); 
     12537            pushFollow(FOLLOW_rule__RepeatRange__Group__2_in_rule__RepeatRange__Group__18052); 
    1223312538            rule__RepeatRange__Group__2(); 
    1223412539 
     
    1224412549        } 
    1224512550        finally { 
    12246             if ( state.backtracking>0 ) { memoize(input, 234, rule__RepeatRange__Group__1_StartIndex); } 
     12551            if ( state.backtracking>0 ) { memoize(input, 240, rule__RepeatRange__Group__1_StartIndex); } 
    1224712552 
    1224812553                restoreStackSize(stackSize); 
     
    1225512560 
    1225612561    // $ANTLR start "rule__RepeatRange__Group__1__Impl" 
    12257     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3873:1: rule__RepeatRange__Group__1__Impl : ( '(' ) ; 
     12562    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3970:1: rule__RepeatRange__Group__1__Impl : ( '(' ) ; 
    1225812563    public final void rule__RepeatRange__Group__1__Impl() throws RecognitionException { 
    1225912564        int rule__RepeatRange__Group__1__Impl_StartIndex = input.index(); 
     
    1226212567             
    1226312568        try { 
    12264             if ( state.backtracking>0 && alreadyParsedRule(input, 235) ) { return ; } 
    12265             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3877:1: ( ( '(' ) ) 
    12266             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3878:1: ( '(' ) 
    12267             { 
    12268             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3878:1: ( '(' ) 
    12269             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3879:1: '(' 
     12569            if ( state.backtracking>0 && alreadyParsedRule(input, 241) ) { return ; } 
     12570            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3974:1: ( ( '(' ) ) 
     12571            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3975:1: ( '(' ) 
     12572            { 
     12573            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3975:1: ( '(' ) 
     12574            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3976:1: '(' 
    1227012575            { 
    1227112576            if ( state.backtracking==0 ) { 
    1227212577               before(grammarAccess.getRepeatRangeAccess().getLeftParenthesisKeyword_1());  
    1227312578            } 
    12274             match(input,17,FOLLOW_17_in_rule__RepeatRange__Group__1__Impl7880); if (state.failed) return ; 
     12579            match(input,17,FOLLOW_17_in_rule__RepeatRange__Group__1__Impl8080); if (state.failed) return ; 
    1227512580            if ( state.backtracking==0 ) { 
    1227612581               after(grammarAccess.getRepeatRangeAccess().getLeftParenthesisKeyword_1());  
     
    1228812593        } 
    1228912594        finally { 
    12290             if ( state.backtracking>0 ) { memoize(input, 235, rule__RepeatRange__Group__1__Impl_StartIndex); } 
     12595            if ( state.backtracking>0 ) { memoize(input, 241, rule__RepeatRange__Group__1__Impl_StartIndex); } 
    1229112596 
    1229212597                restoreStackSize(stackSize); 
     
    1229912604 
    1230012605    // $ANTLR start "rule__RepeatRange__Group__2" 
    12301     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3892:1: rule__RepeatRange__Group__2 : rule__RepeatRange__Group__2__Impl rule__RepeatRange__Group__3 ; 
     12606    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3989:1: rule__RepeatRange__Group__2 : rule__RepeatRange__Group__2__Impl rule__RepeatRange__Group__3 ; 
    1230212607    public final void rule__RepeatRange__Group__2() throws RecognitionException { 
    1230312608        int rule__RepeatRange__Group__2_StartIndex = input.index(); 
     
    1230612611             
    1230712612        try { 
    12308             if ( state.backtracking>0 && alreadyParsedRule(input, 236) ) { return ; } 
    12309             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3896:1: ( rule__RepeatRange__Group__2__Impl rule__RepeatRange__Group__3 ) 
    12310             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3897:2: rule__RepeatRange__Group__2__Impl rule__RepeatRange__Group__3 
    12311             { 
    12312             pushFollow(FOLLOW_rule__RepeatRange__Group__2__Impl_in_rule__RepeatRange__Group__27911); 
     12613            if ( state.backtracking>0 && alreadyParsedRule(input, 242) ) { return ; } 
     12614            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3993:1: ( rule__RepeatRange__Group__2__Impl rule__RepeatRange__Group__3 ) 
     12615            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3994:2: rule__RepeatRange__Group__2__Impl rule__RepeatRange__Group__3 
     12616            { 
     12617            pushFollow(FOLLOW_rule__RepeatRange__Group__2__Impl_in_rule__RepeatRange__Group__28111); 
    1231312618            rule__RepeatRange__Group__2__Impl(); 
    1231412619 
    1231512620            state._fsp--; 
    1231612621            if (state.failed) return ; 
    12317             pushFollow(FOLLOW_rule__RepeatRange__Group__3_in_rule__RepeatRange__Group__27914); 
     12622            pushFollow(FOLLOW_rule__RepeatRange__Group__3_in_rule__RepeatRange__Group__28114); 
    1231812623            rule__RepeatRange__Group__3(); 
    1231912624 
     
    1232912634        } 
    1233012635        finally { 
    12331             if ( state.backtracking>0 ) { memoize(input, 236, rule__RepeatRange__Group__2_StartIndex); } 
     12636            if ( state.backtracking>0 ) { memoize(input, 242, rule__RepeatRange__Group__2_StartIndex); } 
    1233212637 
    1233312638                restoreStackSize(stackSize); 
     
    1234012645 
    1234112646    // $ANTLR start "rule__RepeatRange__Group__2__Impl" 
    12342     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3904:1: rule__RepeatRange__Group__2__Impl : ( ( rule__RepeatRange__FromAssignment_2 ) ) ; 
     12647    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4001:1: rule__RepeatRange__Group__2__Impl : ( ( rule__RepeatRange__FromAssignment_2 ) ) ; 
    1234312648    public final void rule__RepeatRange__Group__2__Impl() throws RecognitionException { 
    1234412649        int rule__RepeatRange__Group__2__Impl_StartIndex = input.index(); 
     
    1234712652             
    1234812653        try { 
    12349             if ( state.backtracking>0 && alreadyParsedRule(input, 237) ) { return ; } 
    12350             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3908:1: ( ( ( rule__RepeatRange__FromAssignment_2 ) ) ) 
    12351             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3909:1: ( ( rule__RepeatRange__FromAssignment_2 ) ) 
    12352             { 
    12353             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3909:1: ( ( rule__RepeatRange__FromAssignment_2 ) ) 
    12354             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3910:1: ( rule__RepeatRange__FromAssignment_2 ) 
     12654            if ( state.backtracking>0 && alreadyParsedRule(input, 243) ) { return ; } 
     12655            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4005:1: ( ( ( rule__RepeatRange__FromAssignment_2 ) ) ) 
     12656            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4006:1: ( ( rule__RepeatRange__FromAssignment_2 ) ) 
     12657            { 
     12658            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4006:1: ( ( rule__RepeatRange__FromAssignment_2 ) ) 
     12659            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4007:1: ( rule__RepeatRange__FromAssignment_2 ) 
    1235512660            { 
    1235612661            if ( state.backtracking==0 ) { 
    1235712662               before(grammarAccess.getRepeatRangeAccess().getFromAssignment_2());  
    1235812663            } 
    12359             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3911:1: ( rule__RepeatRange__FromAssignment_2 ) 
    12360             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3911:2: rule__RepeatRange__FromAssignment_2 
    12361             { 
    12362             pushFollow(FOLLOW_rule__RepeatRange__FromAssignment_2_in_rule__RepeatRange__Group__2__Impl7941); 
     12664            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4008:1: ( rule__RepeatRange__FromAssignment_2 ) 
     12665            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4008:2: rule__RepeatRange__FromAssignment_2 
     12666            { 
     12667            pushFollow(FOLLOW_rule__RepeatRange__FromAssignment_2_in_rule__RepeatRange__Group__2__Impl8141); 
    1236312668            rule__RepeatRange__FromAssignment_2(); 
    1236412669 
     
    1238312688        } 
    1238412689        finally { 
    12385             if ( state.backtracking>0 ) { memoize(input, 237, rule__RepeatRange__Group__2__Impl_StartIndex); } 
     12690            if ( state.backtracking>0 ) { memoize(input, 243, rule__RepeatRange__Group__2__Impl_StartIndex); } 
    1238612691 
    1238712692                restoreStackSize(stackSize); 
     
    1239412699 
    1239512700    // $ANTLR start "rule__RepeatRange__Group__3" 
    12396     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3921:1: rule__RepeatRange__Group__3 : rule__RepeatRange__Group__3__Impl rule__RepeatRange__Group__4 ; 
     12701    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4018:1: rule__RepeatRange__Group__3 : rule__RepeatRange__Group__3__Impl rule__RepeatRange__Group__4 ; 
    1239712702    public final void rule__RepeatRange__Group__3() throws RecognitionException { 
    1239812703        int rule__RepeatRange__Group__3_StartIndex = input.index(); 
     
    1240112706             
    1240212707        try { 
    12403             if ( state.backtracking>0 && alreadyParsedRule(input, 238) ) { return ; } 
    12404             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3925:1: ( rule__RepeatRange__Group__3__Impl rule__RepeatRange__Group__4 ) 
    12405             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3926:2: rule__RepeatRange__Group__3__Impl rule__RepeatRange__Group__4 
    12406             { 
    12407             pushFollow(FOLLOW_rule__RepeatRange__Group__3__Impl_in_rule__RepeatRange__Group__37971); 
     12708            if ( state.backtracking>0 && alreadyParsedRule(input, 244) ) { return ; } 
     12709            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4022:1: ( rule__RepeatRange__Group__3__Impl rule__RepeatRange__Group__4 ) 
     12710            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4023:2: rule__RepeatRange__Group__3__Impl rule__RepeatRange__Group__4 
     12711            { 
     12712            pushFollow(FOLLOW_rule__RepeatRange__Group__3__Impl_in_rule__RepeatRange__Group__38171); 
    1240812713            rule__RepeatRange__Group__3__Impl(); 
    1240912714 
    1241012715            state._fsp--; 
    1241112716            if (state.failed) return ; 
    12412             pushFollow(FOLLOW_rule__RepeatRange__Group__4_in_rule__RepeatRange__Group__37974); 
     12717            pushFollow(FOLLOW_rule__RepeatRange__Group__4_in_rule__RepeatRange__Group__38174); 
    1241312718            rule__RepeatRange__Group__4(); 
    1241412719 
     
    1242412729        } 
    1242512730        finally { 
    12426             if ( state.backtracking>0 ) { memoize(input, 238, rule__RepeatRange__Group__3_StartIndex); } 
     12731            if ( state.backtracking>0 ) { memoize(input, 244, rule__RepeatRange__Group__3_StartIndex); } 
    1242712732 
    1242812733                restoreStackSize(stackSize); 
     
    1243512740 
    1243612741    // $ANTLR start "rule__RepeatRange__Group__3__Impl" 
    12437     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3933:1: rule__RepeatRange__Group__3__Impl : ( ',' ) ; 
     12742    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4030:1: rule__RepeatRange__Group__3__Impl : ( ',' ) ; 
    1243812743    public final void rule__RepeatRange__Group__3__Impl() throws RecognitionException { 
    1243912744        int rule__RepeatRange__Group__3__Impl_StartIndex = input.index(); 
     
    1244212747             
    1244312748        try { 
    12444             if ( state.backtracking>0 && alreadyParsedRule(input, 239) ) { return ; } 
    12445             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3937:1: ( ( ',' ) ) 
    12446             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3938:1: ( ',' ) 
    12447             { 
    12448             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3938:1: ( ',' ) 
    12449             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3939:1: ',' 
     12749            if ( state.backtracking>0 && alreadyParsedRule(input, 245) ) { return ; } 
     12750            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4034:1: ( ( ',' ) ) 
     12751            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4035:1: ( ',' ) 
     12752            { 
     12753            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4035:1: ( ',' ) 
     12754            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4036:1: ',' 
    1245012755            { 
    1245112756            if ( state.backtracking==0 ) { 
    1245212757               before(grammarAccess.getRepeatRangeAccess().getCommaKeyword_3());  
    1245312758            } 
    12454             match(input,35,FOLLOW_35_in_rule__RepeatRange__Group__3__Impl8002); if (state.failed) return ; 
     12759            match(input,35,FOLLOW_35_in_rule__RepeatRange__Group__3__Impl8202); if (state.failed) return ; 
    1245512760            if ( state.backtracking==0 ) { 
    1245612761               after(grammarAccess.getRepeatRangeAccess().getCommaKeyword_3());  
     
    1246812773        } 
    1246912774        finally { 
    12470             if ( state.backtracking>0 ) { memoize(input, 239, rule__RepeatRange__Group__3__Impl_StartIndex); } 
     12775            if ( state.backtracking>0 ) { memoize(input, 245, rule__RepeatRange__Group__3__Impl_StartIndex); } 
    1247112776 
    1247212777                restoreStackSize(stackSize); 
     
    1247912784 
    1248012785    // $ANTLR start "rule__RepeatRange__Group__4" 
    12481     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3952:1: rule__RepeatRange__Group__4 : rule__RepeatRange__Group__4__Impl rule__RepeatRange__Group__5 ; 
     12786    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4049:1: rule__RepeatRange__Group__4 : rule__RepeatRange__Group__4__Impl rule__RepeatRange__Group__5 ; 
    1248212787    public final void rule__RepeatRange__Group__4() throws RecognitionException { 
    1248312788        int rule__RepeatRange__Group__4_StartIndex = input.index(); 
     
    1248612791             
    1248712792        try { 
    12488             if ( state.backtracking>0 && alreadyParsedRule(input, 240) ) { return ; } 
    12489             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3956:1: ( rule__RepeatRange__Group__4__Impl rule__RepeatRange__Group__5 ) 
    12490             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3957:2: rule__RepeatRange__Group__4__Impl rule__RepeatRange__Group__5 
    12491             { 
    12492             pushFollow(FOLLOW_rule__RepeatRange__Group__4__Impl_in_rule__RepeatRange__Group__48033); 
     12793            if ( state.backtracking>0 && alreadyParsedRule(input, 246) ) { return ; } 
     12794            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4053:1: ( rule__RepeatRange__Group__4__Impl rule__RepeatRange__Group__5 ) 
     12795            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4054:2: rule__RepeatRange__Group__4__Impl rule__RepeatRange__Group__5 
     12796            { 
     12797            pushFollow(FOLLOW_rule__RepeatRange__Group__4__Impl_in_rule__RepeatRange__Group__48233); 
    1249312798            rule__RepeatRange__Group__4__Impl(); 
    1249412799 
    1249512800            state._fsp--; 
    1249612801            if (state.failed) return ; 
    12497             pushFollow(FOLLOW_rule__RepeatRange__Group__5_in_rule__RepeatRange__Group__48036); 
     12802            pushFollow(FOLLOW_rule__RepeatRange__Group__5_in_rule__RepeatRange__Group__48236); 
    1249812803            rule__RepeatRange__Group__5(); 
    1249912804 
     
    1250912814        } 
    1251012815        finally { 
    12511             if ( state.backtracking>0 ) { memoize(input, 240, rule__RepeatRange__Group__4_StartIndex); } 
     12816            if ( state.backtracking>0 ) { memoize(input, 246, rule__RepeatRange__Group__4_StartIndex); } 
    1251212817 
    1251312818                restoreStackSize(stackSize); 
     
    1252012825 
    1252112826    // $ANTLR start "rule__RepeatRange__Group__4__Impl" 
    12522     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3964:1: rule__RepeatRange__Group__4__Impl : ( ( rule__RepeatRange__ToAssignment_4 ) ) ; 
     12827    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4061:1: rule__RepeatRange__Group__4__Impl : ( ( rule__RepeatRange__ToAssignment_4 ) ) ; 
    1252312828    public final void rule__RepeatRange__Group__4__Impl() throws RecognitionException { 
    1252412829        int rule__RepeatRange__Group__4__Impl_StartIndex = input.index(); 
     
    1252712832             
    1252812833        try { 
    12529             if ( state.backtracking>0 && alreadyParsedRule(input, 241) ) { return ; } 
    12530             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3968:1: ( ( ( rule__RepeatRange__ToAssignment_4 ) ) ) 
    12531             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3969:1: ( ( rule__RepeatRange__ToAssignment_4 ) ) 
    12532             { 
    12533             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3969:1: ( ( rule__RepeatRange__ToAssignment_4 ) ) 
    12534             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3970:1: ( rule__RepeatRange__ToAssignment_4 ) 
     12834            if ( state.backtracking>0 && alreadyParsedRule(input, 247) ) { return ; } 
     12835            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4065:1: ( ( ( rule__RepeatRange__ToAssignment_4 ) ) ) 
     12836            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4066:1: ( ( rule__RepeatRange__ToAssignment_4 ) ) 
     12837            { 
     12838            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4066:1: ( ( rule__RepeatRange__ToAssignment_4 ) ) 
     12839            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4067:1: ( rule__RepeatRange__ToAssignment_4 ) 
    1253512840            { 
    1253612841            if ( state.backtracking==0 ) { 
    1253712842               before(grammarAccess.getRepeatRangeAccess().getToAssignment_4());  
    1253812843            } 
    12539             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3971:1: ( rule__RepeatRange__ToAssignment_4 ) 
    12540             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3971:2: rule__RepeatRange__ToAssignment_4 
    12541             { 
    12542             pushFollow(FOLLOW_rule__RepeatRange__ToAssignment_4_in_rule__RepeatRange__Group__4__Impl8063); 
     12844            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4068:1: ( rule__RepeatRange__ToAssignment_4 ) 
     12845            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4068:2: rule__RepeatRange__ToAssignment_4 
     12846            { 
     12847            pushFollow(FOLLOW_rule__RepeatRange__ToAssignment_4_in_rule__RepeatRange__Group__4__Impl8263); 
    1254312848            rule__RepeatRange__ToAssignment_4(); 
    1254412849 
     
    1256312868        } 
    1256412869        finally { 
    12565             if ( state.backtracking>0 ) { memoize(input, 241, rule__RepeatRange__Group__4__Impl_StartIndex); } 
     12870            if ( state.backtracking>0 ) { memoize(input, 247, rule__RepeatRange__Group__4__Impl_StartIndex); } 
    1256612871 
    1256712872                restoreStackSize(stackSize); 
     
    1257412879 
    1257512880    // $ANTLR start "rule__RepeatRange__Group__5" 
    12576     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3981:1: rule__RepeatRange__Group__5 : rule__RepeatRange__Group__5__Impl ; 
     12881    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4078:1: rule__RepeatRange__Group__5 : rule__RepeatRange__Group__5__Impl ; 
    1257712882    public final void rule__RepeatRange__Group__5() throws RecognitionException { 
    1257812883        int rule__RepeatRange__Group__5_StartIndex = input.index(); 
     
    1258112886             
    1258212887        try { 
    12583             if ( state.backtracking>0 && alreadyParsedRule(input, 242) ) { return ; } 
    12584             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3985:1: ( rule__RepeatRange__Group__5__Impl ) 
    12585             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3986:2: rule__RepeatRange__Group__5__Impl 
    12586             { 
    12587             pushFollow(FOLLOW_rule__RepeatRange__Group__5__Impl_in_rule__RepeatRange__Group__58093); 
     12888            if ( state.backtracking>0 && alreadyParsedRule(input, 248) ) { return ; } 
     12889            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4082:1: ( rule__RepeatRange__Group__5__Impl ) 
     12890            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4083:2: rule__RepeatRange__Group__5__Impl 
     12891            { 
     12892            pushFollow(FOLLOW_rule__RepeatRange__Group__5__Impl_in_rule__RepeatRange__Group__58293); 
    1258812893            rule__RepeatRange__Group__5__Impl(); 
    1258912894 
     
    1259912904        } 
    1260012905        finally { 
    12601             if ( state.backtracking>0 ) { memoize(input, 242, rule__RepeatRange__Group__5_StartIndex); } 
     12906            if ( state.backtracking>0 ) { memoize(input, 248, rule__RepeatRange__Group__5_StartIndex); } 
    1260212907 
    1260312908                restoreStackSize(stackSize); 
     
    1261012915 
    1261112916    // $ANTLR start "rule__RepeatRange__Group__5__Impl" 
    12612     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3992:1: rule__RepeatRange__Group__5__Impl : ( ')' ) ; 
     12917    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4089:1: rule__RepeatRange__Group__5__Impl : ( ')' ) ; 
    1261312918    public final void rule__RepeatRange__Group__5__Impl() throws RecognitionException { 
    1261412919        int rule__RepeatRange__Group__5__Impl_StartIndex = input.index(); 
     
    1261712922             
    1261812923        try { 
    12619             if ( state.backtracking>0 && alreadyParsedRule(input, 243) ) { return ; } 
    12620             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3996:1: ( ( ')' ) ) 
    12621             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3997:1: ( ')' ) 
    12622             { 
    12623             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3997:1: ( ')' ) 
    12624             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:3998:1: ')' 
     12924            if ( state.backtracking>0 && alreadyParsedRule(input, 249) ) { return ; } 
     12925            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4093:1: ( ( ')' ) ) 
     12926            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4094:1: ( ')' ) 
     12927            { 
     12928            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4094:1: ( ')' ) 
     12929            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4095:1: ')' 
    1262512930            { 
    1262612931            if ( state.backtracking==0 ) { 
    1262712932               before(grammarAccess.getRepeatRangeAccess().getRightParenthesisKeyword_5());  
    1262812933            } 
    12629             match(input,13,FOLLOW_13_in_rule__RepeatRange__Group__5__Impl8121); if (state.failed) return ; 
     12934            match(input,13,FOLLOW_13_in_rule__RepeatRange__Group__5__Impl8321); if (state.failed) return ; 
    1263012935            if ( state.backtracking==0 ) { 
    1263112936               after(grammarAccess.getRepeatRangeAccess().getRightParenthesisKeyword_5());  
     
    1264312948        } 
    1264412949        finally { 
    12645             if ( state.backtracking>0 ) { memoize(input, 243, rule__RepeatRange__Group__5__Impl_StartIndex); } 
     12950            if ( state.backtracking>0 ) { memoize(input, 249, rule__RepeatRange__Group__5__Impl_StartIndex); } 
    1264612951 
    1264712952                restoreStackSize(stackSize); 
     
    1265412959 
    1265512960    // $ANTLR start "rule__EtsiBnf__NameAssignment_0_1" 
    12656     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4024:1: rule__EtsiBnf__NameAssignment_0_1 : ( RULE_ID ) ; 
     12961    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4121:1: rule__EtsiBnf__NameAssignment_0_1 : ( RULE_ID ) ; 
    1265712962    public final void rule__EtsiBnf__NameAssignment_0_1() throws RecognitionException { 
    1265812963        int rule__EtsiBnf__NameAssignment_0_1_StartIndex = input.index(); 
     
    1266112966             
    1266212967        try { 
    12663             if ( state.backtracking>0 && alreadyParsedRule(input, 244) ) { return ; } 
    12664             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4028:1: ( ( RULE_ID ) ) 
    12665             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4029:1: ( RULE_ID ) 
    12666             { 
    12667             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4029:1: ( RULE_ID ) 
    12668             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4030:1: RULE_ID 
     12968            if ( state.backtracking>0 && alreadyParsedRule(input, 250) ) { return ; } 
     12969            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4125:1: ( ( RULE_ID ) ) 
     12970            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4126:1: ( RULE_ID ) 
     12971            { 
     12972            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4126:1: ( RULE_ID ) 
     12973            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4127:1: RULE_ID 
    1266912974            { 
    1267012975            if ( state.backtracking==0 ) { 
    1267112976               before(grammarAccess.getEtsiBnfAccess().getNameIDTerminalRuleCall_0_1_0());  
    1267212977            } 
    12673             match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__EtsiBnf__NameAssignment_0_18169); if (state.failed) return ; 
     12978            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__EtsiBnf__NameAssignment_0_18369); if (state.failed) return ; 
    1267412979            if ( state.backtracking==0 ) { 
    1267512980               after(grammarAccess.getEtsiBnfAccess().getNameIDTerminalRuleCall_0_1_0());  
     
    1268712992        } 
    1268812993        finally { 
    12689             if ( state.backtracking>0 ) { memoize(input, 244, rule__EtsiBnf__NameAssignment_0_1_StartIndex); } 
     12994            if ( state.backtracking>0 ) { memoize(input, 250, rule__EtsiBnf__NameAssignment_0_1_StartIndex); } 
    1269012995 
    1269112996                restoreStackSize(stackSize); 
     
    1269813003 
    1269913004    // $ANTLR start "rule__EtsiBnf__TypeAssignment_0_2_0" 
    12700     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4039:1: rule__EtsiBnf__TypeAssignment_0_2_0 : ( ( '/bnf' ) ) ; 
     13005    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4136:1: rule__EtsiBnf__TypeAssignment_0_2_0 : ( ( '/bnf' ) ) ; 
    1270113006    public final void rule__EtsiBnf__TypeAssignment_0_2_0() throws RecognitionException { 
    1270213007        int rule__EtsiBnf__TypeAssignment_0_2_0_StartIndex = input.index(); 
     
    1270513010             
    1270613011        try { 
    12707             if ( state.backtracking>0 && alreadyParsedRule(input, 245) ) { return ; } 
    12708             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4043:1: ( ( ( '/bnf' ) ) ) 
    12709             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4044:1: ( ( '/bnf' ) ) 
    12710             { 
    12711             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4044:1: ( ( '/bnf' ) ) 
    12712             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4045:1: ( '/bnf' ) 
     13012            if ( state.backtracking>0 && alreadyParsedRule(input, 251) ) { return ; } 
     13013            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4140:1: ( ( ( '/bnf' ) ) ) 
     13014            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4141:1: ( ( '/bnf' ) ) 
     13015            { 
     13016            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4141:1: ( ( '/bnf' ) ) 
     13017            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4142:1: ( '/bnf' ) 
    1271313018            { 
    1271413019            if ( state.backtracking==0 ) { 
    1271513020               before(grammarAccess.getEtsiBnfAccess().getTypeBnfKeyword_0_2_0_0());  
    1271613021            } 
    12717             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4046:1: ( '/bnf' ) 
    12718             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4047:1: '/bnf' 
     13022            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4143:1: ( '/bnf' ) 
     13023            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4144:1: '/bnf' 
    1271913024            { 
    1272013025            if ( state.backtracking==0 ) { 
    1272113026               before(grammarAccess.getEtsiBnfAccess().getTypeBnfKeyword_0_2_0_0());  
    1272213027            } 
    12723             match(input,36,FOLLOW_36_in_rule__EtsiBnf__TypeAssignment_0_2_08205); if (state.failed) return ; 
     13028            match(input,36,FOLLOW_36_in_rule__EtsiBnf__TypeAssignment_0_2_08405); if (state.failed) return ; 
    1272413029            if ( state.backtracking==0 ) { 
    1272513030               after(grammarAccess.getEtsiBnfAccess().getTypeBnfKeyword_0_2_0_0());  
     
    1274313048        } 
    1274413049        finally { 
    12745             if ( state.backtracking>0 ) { memoize(input, 245, rule__EtsiBnf__TypeAssignment_0_2_0_StartIndex); } 
     13050            if ( state.backtracking>0 ) { memoize(input, 251, rule__EtsiBnf__TypeAssignment_0_2_0_StartIndex); } 
    1274613051 
    1274713052                restoreStackSize(stackSize); 
     
    1275413059 
    1275513060    // $ANTLR start "rule__EtsiBnf__ImportSectionAssignment_0_2_2" 
    12756     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4062:1: rule__EtsiBnf__ImportSectionAssignment_0_2_2 : ( ruleImportSection ) ; 
     13061    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4159:1: rule__EtsiBnf__ImportSectionAssignment_0_2_2 : ( ruleImportSection ) ; 
    1275713062    public final void rule__EtsiBnf__ImportSectionAssignment_0_2_2() throws RecognitionException { 
    1275813063        int rule__EtsiBnf__ImportSectionAssignment_0_2_2_StartIndex = input.index(); 
     
    1276113066             
    1276213067        try { 
    12763             if ( state.backtracking>0 && alreadyParsedRule(input, 246) ) { return ; } 
    12764             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4066:1: ( ( ruleImportSection ) ) 
    12765             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4067:1: ( ruleImportSection ) 
    12766             { 
    12767             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4067:1: ( ruleImportSection ) 
    12768             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4068:1: ruleImportSection 
     13068            if ( state.backtracking>0 && alreadyParsedRule(input, 252) ) { return ; } 
     13069            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4163:1: ( ( ruleImportSection ) ) 
     13070            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4164:1: ( ruleImportSection ) 
     13071            { 
     13072            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4164:1: ( ruleImportSection ) 
     13073            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4165:1: ruleImportSection 
    1276913074            { 
    1277013075            if ( state.backtracking==0 ) { 
    1277113076               before(grammarAccess.getEtsiBnfAccess().getImportSectionImportSectionParserRuleCall_0_2_2_0());  
    1277213077            } 
    12773             pushFollow(FOLLOW_ruleImportSection_in_rule__EtsiBnf__ImportSectionAssignment_0_2_28244); 
     13078            pushFollow(FOLLOW_ruleImportSection_in_rule__EtsiBnf__ImportSectionAssignment_0_2_28444); 
    1277413079            ruleImportSection(); 
    1277513080 
     
    1279113096        } 
    1279213097        finally { 
    12793             if ( state.backtracking>0 ) { memoize(input, 246, rule__EtsiBnf__ImportSectionAssignment_0_2_2_StartIndex); } 
     13098            if ( state.backtracking>0 ) { memoize(input, 252, rule__EtsiBnf__ImportSectionAssignment_0_2_2_StartIndex); } 
    1279413099 
    1279513100                restoreStackSize(stackSize); 
     
    1280213107 
    1280313108    // $ANTLR start "rule__EtsiBnf__BnfEntryAssignment_0_2_3" 
    12804     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4077:1: rule__EtsiBnf__BnfEntryAssignment_0_2_3 : ( ruleBnfEntry ) ; 
     13109    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4174:1: rule__EtsiBnf__BnfEntryAssignment_0_2_3 : ( ruleBnfEntry ) ; 
    1280513110    public final void rule__EtsiBnf__BnfEntryAssignment_0_2_3() throws RecognitionException { 
    1280613111        int rule__EtsiBnf__BnfEntryAssignment_0_2_3_StartIndex = input.index(); 
     
    1280913114             
    1281013115        try { 
    12811             if ( state.backtracking>0 && alreadyParsedRule(input, 247) ) { return ; } 
    12812             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4081:1: ( ( ruleBnfEntry ) ) 
    12813             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4082:1: ( ruleBnfEntry ) 
    12814             { 
    12815             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4082:1: ( ruleBnfEntry ) 
    12816             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4083:1: ruleBnfEntry 
     13116            if ( state.backtracking>0 && alreadyParsedRule(input, 253) ) { return ; } 
     13117            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4178:1: ( ( ruleBnfEntry ) ) 
     13118            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4179:1: ( ruleBnfEntry ) 
     13119            { 
     13120            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4179:1: ( ruleBnfEntry ) 
     13121            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4180:1: ruleBnfEntry 
    1281713122            { 
    1281813123            if ( state.backtracking==0 ) { 
    1281913124               before(grammarAccess.getEtsiBnfAccess().getBnfEntryBnfEntryParserRuleCall_0_2_3_0());  
    1282013125            } 
    12821             pushFollow(FOLLOW_ruleBnfEntry_in_rule__EtsiBnf__BnfEntryAssignment_0_2_38275); 
     13126            pushFollow(FOLLOW_ruleBnfEntry_in_rule__EtsiBnf__BnfEntryAssignment_0_2_38475); 
    1282213127            ruleBnfEntry(); 
    1282313128 
     
    1283913144        } 
    1284013145        finally { 
    12841             if ( state.backtracking>0 ) { memoize(input, 247, rule__EtsiBnf__BnfEntryAssignment_0_2_3_StartIndex); } 
     13146            if ( state.backtracking>0 ) { memoize(input, 253, rule__EtsiBnf__BnfEntryAssignment_0_2_3_StartIndex); } 
    1284213147 
    1284313148                restoreStackSize(stackSize); 
     
    1285013155 
    1285113156    // $ANTLR start "rule__EtsiBnf__TypeAssignment_1_0" 
    12852     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4092:1: rule__EtsiBnf__TypeAssignment_1_0 : ( ( '/delta' ) ) ; 
     13157    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4189:1: rule__EtsiBnf__TypeAssignment_1_0 : ( ( '/delta' ) ) ; 
    1285313158    public final void rule__EtsiBnf__TypeAssignment_1_0() throws RecognitionException { 
    1285413159        int rule__EtsiBnf__TypeAssignment_1_0_StartIndex = input.index(); 
     
    1285713162             
    1285813163        try { 
    12859             if ( state.backtracking>0 && alreadyParsedRule(input, 248) ) { return ; } 
    12860             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4096:1: ( ( ( '/delta' ) ) ) 
    12861             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4097:1: ( ( '/delta' ) ) 
    12862             { 
    12863             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4097:1: ( ( '/delta' ) ) 
    12864             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4098:1: ( '/delta' ) 
     13164            if ( state.backtracking>0 && alreadyParsedRule(input, 254) ) { return ; } 
     13165            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4193:1: ( ( ( '/delta' ) ) ) 
     13166            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4194:1: ( ( '/delta' ) ) 
     13167            { 
     13168            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4194:1: ( ( '/delta' ) ) 
     13169            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4195:1: ( '/delta' ) 
    1286513170            { 
    1286613171            if ( state.backtracking==0 ) { 
    1286713172               before(grammarAccess.getEtsiBnfAccess().getTypeDeltaKeyword_1_0_0());  
    1286813173            } 
    12869             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4099:1: ( '/delta' ) 
    12870             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4100:1: '/delta' 
     13174            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4196:1: ( '/delta' ) 
     13175            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4197:1: '/delta' 
    1287113176            { 
    1287213177            if ( state.backtracking==0 ) { 
    1287313178               before(grammarAccess.getEtsiBnfAccess().getTypeDeltaKeyword_1_0_0());  
    1287413179            } 
    12875             match(input,37,FOLLOW_37_in_rule__EtsiBnf__TypeAssignment_1_08311); if (state.failed) return ; 
     13180            match(input,37,FOLLOW_37_in_rule__EtsiBnf__TypeAssignment_1_08511); if (state.failed) return ; 
    1287613181            if ( state.backtracking==0 ) { 
    1287713182               after(grammarAccess.getEtsiBnfAccess().getTypeDeltaKeyword_1_0_0());  
     
    1289513200        } 
    1289613201        finally { 
    12897             if ( state.backtracking>0 ) { memoize(input, 248, rule__EtsiBnf__TypeAssignment_1_0_StartIndex); } 
     13202            if ( state.backtracking>0 ) { memoize(input, 254, rule__EtsiBnf__TypeAssignment_1_0_StartIndex); } 
    1289813203 
    1289913204                restoreStackSize(stackSize); 
     
    1290613211 
    1290713212    // $ANTLR start "rule__EtsiBnf__ImportSectionAssignment_1_2" 
    12908     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4115:1: rule__EtsiBnf__ImportSectionAssignment_1_2 : ( ruleImportSection ) ; 
     13213    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4212:1: rule__EtsiBnf__ImportSectionAssignment_1_2 : ( ruleImportSection ) ; 
    1290913214    public final void rule__EtsiBnf__ImportSectionAssignment_1_2() throws RecognitionException { 
    1291013215        int rule__EtsiBnf__ImportSectionAssignment_1_2_StartIndex = input.index(); 
     
    1291313218             
    1291413219        try { 
    12915             if ( state.backtracking>0 && alreadyParsedRule(input, 249) ) { return ; } 
    12916             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4119:1: ( ( ruleImportSection ) ) 
    12917             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4120:1: ( ruleImportSection ) 
    12918             { 
    12919             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4120:1: ( ruleImportSection ) 
    12920             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4121:1: ruleImportSection 
     13220            if ( state.backtracking>0 && alreadyParsedRule(input, 255) ) { return ; } 
     13221            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4216:1: ( ( ruleImportSection ) ) 
     13222            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4217:1: ( ruleImportSection ) 
     13223            { 
     13224            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4217:1: ( ruleImportSection ) 
     13225            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4218:1: ruleImportSection 
    1292113226            { 
    1292213227            if ( state.backtracking==0 ) { 
    1292313228               before(grammarAccess.getEtsiBnfAccess().getImportSectionImportSectionParserRuleCall_1_2_0());  
    1292413229            } 
    12925             pushFollow(FOLLOW_ruleImportSection_in_rule__EtsiBnf__ImportSectionAssignment_1_28350); 
     13230            pushFollow(FOLLOW_ruleImportSection_in_rule__EtsiBnf__ImportSectionAssignment_1_28550); 
    1292613231            ruleImportSection(); 
    1292713232 
     
    1294313248        } 
    1294413249        finally { 
    12945             if ( state.backtracking>0 ) { memoize(input, 249, rule__EtsiBnf__ImportSectionAssignment_1_2_StartIndex); } 
     13250            if ( state.backtracking>0 ) { memoize(input, 255, rule__EtsiBnf__ImportSectionAssignment_1_2_StartIndex); } 
    1294613251 
    1294713252                restoreStackSize(stackSize); 
     
    1295413259 
    1295513260    // $ANTLR start "rule__EtsiBnf__DeltaEntryAssignment_1_3" 
    12956     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4130:1: rule__EtsiBnf__DeltaEntryAssignment_1_3 : ( ruleDeltaEntry ) ; 
     13261    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4227:1: rule__EtsiBnf__DeltaEntryAssignment_1_3 : ( ruleDeltaEntry ) ; 
    1295713262    public final void rule__EtsiBnf__DeltaEntryAssignment_1_3() throws RecognitionException { 
    1295813263        int rule__EtsiBnf__DeltaEntryAssignment_1_3_StartIndex = input.index(); 
     
    1296113266             
    1296213267        try { 
    12963             if ( state.backtracking>0 && alreadyParsedRule(input, 250) ) { return ; } 
    12964             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4134:1: ( ( ruleDeltaEntry ) ) 
    12965             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4135:1: ( ruleDeltaEntry ) 
    12966             { 
    12967             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4135:1: ( ruleDeltaEntry ) 
    12968             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4136:1: ruleDeltaEntry 
     13268            if ( state.backtracking>0 && alreadyParsedRule(input, 256) ) { return ; } 
     13269            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4231:1: ( ( ruleDeltaEntry ) ) 
     13270            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4232:1: ( ruleDeltaEntry ) 
     13271            { 
     13272            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4232:1: ( ruleDeltaEntry ) 
     13273            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4233:1: ruleDeltaEntry 
    1296913274            { 
    1297013275            if ( state.backtracking==0 ) { 
    1297113276               before(grammarAccess.getEtsiBnfAccess().getDeltaEntryDeltaEntryParserRuleCall_1_3_0());  
    1297213277            } 
    12973             pushFollow(FOLLOW_ruleDeltaEntry_in_rule__EtsiBnf__DeltaEntryAssignment_1_38381); 
     13278            pushFollow(FOLLOW_ruleDeltaEntry_in_rule__EtsiBnf__DeltaEntryAssignment_1_38581); 
    1297413279            ruleDeltaEntry(); 
    1297513280 
     
    1299113296        } 
    1299213297        finally { 
    12993             if ( state.backtracking>0 ) { memoize(input, 250, rule__EtsiBnf__DeltaEntryAssignment_1_3_StartIndex); } 
     13298            if ( state.backtracking>0 ) { memoize(input, 256, rule__EtsiBnf__DeltaEntryAssignment_1_3_StartIndex); } 
    1299413299 
    1299513300                restoreStackSize(stackSize); 
     
    1300213307 
    1300313308    // $ANTLR start "rule__EtsiBnf__TypeAssignment_2_0" 
    13004     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4145:1: rule__EtsiBnf__TypeAssignment_2_0 : ( ( '/merge' ) ) ; 
     13309    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4242:1: rule__EtsiBnf__TypeAssignment_2_0 : ( ( '/merge' ) ) ; 
    1300513310    public final void rule__EtsiBnf__TypeAssignment_2_0() throws RecognitionException { 
    1300613311        int rule__EtsiBnf__TypeAssignment_2_0_StartIndex = input.index(); 
     
    1300913314             
    1301013315        try { 
    13011             if ( state.backtracking>0 && alreadyParsedRule(input, 251) ) { return ; } 
    13012             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4149:1: ( ( ( '/merge' ) ) ) 
    13013             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4150:1: ( ( '/merge' ) ) 
    13014             { 
    13015             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4150:1: ( ( '/merge' ) ) 
    13016             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4151:1: ( '/merge' ) 
     13316            if ( state.backtracking>0 && alreadyParsedRule(input, 257) ) { return ; } 
     13317            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4246:1: ( ( ( '/merge' ) ) ) 
     13318            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4247:1: ( ( '/merge' ) ) 
     13319            { 
     13320            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4247:1: ( ( '/merge' ) ) 
     13321            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4248:1: ( '/merge' ) 
    1301713322            { 
    1301813323            if ( state.backtracking==0 ) { 
    1301913324               before(grammarAccess.getEtsiBnfAccess().getTypeMergeKeyword_2_0_0());  
    1302013325            } 
    13021             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4152:1: ( '/merge' ) 
    13022             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4153:1: '/merge' 
     13326            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4249:1: ( '/merge' ) 
     13327            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4250:1: '/merge' 
    1302313328            { 
    1302413329            if ( state.backtracking==0 ) { 
    1302513330               before(grammarAccess.getEtsiBnfAccess().getTypeMergeKeyword_2_0_0());  
    1302613331            } 
    13027             match(input,38,FOLLOW_38_in_rule__EtsiBnf__TypeAssignment_2_08417); if (state.failed) return ; 
     13332            match(input,38,FOLLOW_38_in_rule__EtsiBnf__TypeAssignment_2_08617); if (state.failed) return ; 
    1302813333            if ( state.backtracking==0 ) { 
    1302913334               after(grammarAccess.getEtsiBnfAccess().getTypeMergeKeyword_2_0_0());  
     
    1304713352        } 
    1304813353        finally { 
    13049             if ( state.backtracking>0 ) { memoize(input, 251, rule__EtsiBnf__TypeAssignment_2_0_StartIndex); } 
     13354            if ( state.backtracking>0 ) { memoize(input, 257, rule__EtsiBnf__TypeAssignment_2_0_StartIndex); } 
    1305013355 
    1305113356                restoreStackSize(stackSize); 
     
    1305813363 
    1305913364    // $ANTLR start "rule__EtsiBnf__ImportSectionAssignment_2_2" 
    13060     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4168:1: rule__EtsiBnf__ImportSectionAssignment_2_2 : ( ruleImportSection ) ; 
     13365    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4265:1: rule__EtsiBnf__ImportSectionAssignment_2_2 : ( ruleImportSection ) ; 
    1306113366    public final void rule__EtsiBnf__ImportSectionAssignment_2_2() throws RecognitionException { 
    1306213367        int rule__EtsiBnf__ImportSectionAssignment_2_2_StartIndex = input.index(); 
     
    1306513370             
    1306613371        try { 
    13067             if ( state.backtracking>0 && alreadyParsedRule(input, 252) ) { return ; } 
    13068             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4172:1: ( ( ruleImportSection ) ) 
    13069             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4173:1: ( ruleImportSection ) 
    13070             { 
    13071             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4173:1: ( ruleImportSection ) 
    13072             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4174:1: ruleImportSection 
     13372            if ( state.backtracking>0 && alreadyParsedRule(input, 258) ) { return ; } 
     13373            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4269:1: ( ( ruleImportSection ) ) 
     13374            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4270:1: ( ruleImportSection ) 
     13375            { 
     13376            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4270:1: ( ruleImportSection ) 
     13377            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4271:1: ruleImportSection 
    1307313378            { 
    1307413379            if ( state.backtracking==0 ) { 
    1307513380               before(grammarAccess.getEtsiBnfAccess().getImportSectionImportSectionParserRuleCall_2_2_0());  
    1307613381            } 
    13077             pushFollow(FOLLOW_ruleImportSection_in_rule__EtsiBnf__ImportSectionAssignment_2_28456); 
     13382            pushFollow(FOLLOW_ruleImportSection_in_rule__EtsiBnf__ImportSectionAssignment_2_28656); 
    1307813383            ruleImportSection(); 
    1307913384 
     
    1309513400        } 
    1309613401        finally { 
    13097             if ( state.backtracking>0 ) { memoize(input, 252, rule__EtsiBnf__ImportSectionAssignment_2_2_StartIndex); } 
     13402            if ( state.backtracking>0 ) { memoize(input, 258, rule__EtsiBnf__ImportSectionAssignment_2_2_StartIndex); } 
    1309813403 
    1309913404                restoreStackSize(stackSize); 
     
    1310613411 
    1310713412    // $ANTLR start "rule__EtsiBnf__MergeEntryAssignment_2_3" 
    13108     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4183:1: rule__EtsiBnf__MergeEntryAssignment_2_3 : ( ruleMergeEntry ) ; 
     13413    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4280:1: rule__EtsiBnf__MergeEntryAssignment_2_3 : ( ruleMergeEntry ) ; 
    1310913414    public final void rule__EtsiBnf__MergeEntryAssignment_2_3() throws RecognitionException { 
    1311013415        int rule__EtsiBnf__MergeEntryAssignment_2_3_StartIndex = input.index(); 
     
    1311313418             
    1311413419        try { 
    13115             if ( state.backtracking>0 && alreadyParsedRule(input, 253) ) { return ; } 
    13116             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4187:1: ( ( ruleMergeEntry ) ) 
    13117             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4188:1: ( ruleMergeEntry ) 
    13118             { 
    13119             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4188:1: ( ruleMergeEntry ) 
    13120             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4189:1: ruleMergeEntry 
     13420            if ( state.backtracking>0 && alreadyParsedRule(input, 259) ) { return ; } 
     13421            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4284:1: ( ( ruleMergeEntry ) ) 
     13422            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4285:1: ( ruleMergeEntry ) 
     13423            { 
     13424            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4285:1: ( ruleMergeEntry ) 
     13425            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4286:1: ruleMergeEntry 
    1312113426            { 
    1312213427            if ( state.backtracking==0 ) { 
    1312313428               before(grammarAccess.getEtsiBnfAccess().getMergeEntryMergeEntryParserRuleCall_2_3_0());  
    1312413429            } 
    13125             pushFollow(FOLLOW_ruleMergeEntry_in_rule__EtsiBnf__MergeEntryAssignment_2_38487); 
     13430            pushFollow(FOLLOW_ruleMergeEntry_in_rule__EtsiBnf__MergeEntryAssignment_2_38687); 
    1312613431            ruleMergeEntry(); 
    1312713432 
     
    1314313448        } 
    1314413449        finally { 
    13145             if ( state.backtracking>0 ) { memoize(input, 253, rule__EtsiBnf__MergeEntryAssignment_2_3_StartIndex); } 
     13450            if ( state.backtracking>0 ) { memoize(input, 259, rule__EtsiBnf__MergeEntryAssignment_2_3_StartIndex); } 
    1314613451 
    1314713452                restoreStackSize(stackSize); 
     
    1315413459 
    1315513460    // $ANTLR start "rule__ImportSection__ImportsAssignment" 
    13156     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4198:1: rule__ImportSection__ImportsAssignment : ( ruleImport ) ; 
     13461    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4295:1: rule__ImportSection__ImportsAssignment : ( ruleImport ) ; 
    1315713462    public final void rule__ImportSection__ImportsAssignment() throws RecognitionException { 
    1315813463        int rule__ImportSection__ImportsAssignment_StartIndex = input.index(); 
     
    1316113466             
    1316213467        try { 
    13163             if ( state.backtracking>0 && alreadyParsedRule(input, 254) ) { return ; } 
    13164             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4202:1: ( ( ruleImport ) ) 
    13165             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4203:1: ( ruleImport ) 
    13166             { 
    13167             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4203:1: ( ruleImport ) 
    13168             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4204:1: ruleImport 
     13468            if ( state.backtracking>0 && alreadyParsedRule(input, 260) ) { return ; } 
     13469            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4299:1: ( ( ruleImport ) ) 
     13470            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4300:1: ( ruleImport ) 
     13471            { 
     13472            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4300:1: ( ruleImport ) 
     13473            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4301:1: ruleImport 
    1316913474            { 
    1317013475            if ( state.backtracking==0 ) { 
    1317113476               before(grammarAccess.getImportSectionAccess().getImportsImportParserRuleCall_0());  
    1317213477            } 
    13173             pushFollow(FOLLOW_ruleImport_in_rule__ImportSection__ImportsAssignment8518); 
     13478            pushFollow(FOLLOW_ruleImport_in_rule__ImportSection__ImportsAssignment8718); 
    1317413479            ruleImport(); 
    1317513480 
     
    1319113496        } 
    1319213497        finally { 
    13193             if ( state.backtracking>0 ) { memoize(input, 254, rule__ImportSection__ImportsAssignment_StartIndex); } 
     13498            if ( state.backtracking>0 ) { memoize(input, 260, rule__ImportSection__ImportsAssignment_StartIndex); } 
    1319413499 
    1319513500                restoreStackSize(stackSize); 
     
    1320213507 
    1320313508    // $ANTLR start "rule__BnfEntry__SectionheaderAssignment_0" 
    13204     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4213:1: rule__BnfEntry__SectionheaderAssignment_0 : ( ruleSectionHeading ) ; 
     13509    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4310:1: rule__BnfEntry__SectionheaderAssignment_0 : ( ruleSectionHeading ) ; 
    1320513510    public final void rule__BnfEntry__SectionheaderAssignment_0() throws RecognitionException { 
    1320613511        int rule__BnfEntry__SectionheaderAssignment_0_StartIndex = input.index(); 
     
    1320913514             
    1321013515        try { 
    13211             if ( state.backtracking>0 && alreadyParsedRule(input, 255) ) { return ; } 
    13212             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4217:1: ( ( ruleSectionHeading ) ) 
    13213             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4218:1: ( ruleSectionHeading ) 
    13214             { 
    13215             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4218:1: ( ruleSectionHeading ) 
    13216             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4219:1: ruleSectionHeading 
     13516            if ( state.backtracking>0 && alreadyParsedRule(input, 261) ) { return ; } 
     13517            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4314:1: ( ( ruleSectionHeading ) ) 
     13518            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4315:1: ( ruleSectionHeading ) 
     13519            { 
     13520            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4315:1: ( ruleSectionHeading ) 
     13521            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4316:1: ruleSectionHeading 
    1321713522            { 
    1321813523            if ( state.backtracking==0 ) { 
    1321913524               before(grammarAccess.getBnfEntryAccess().getSectionheaderSectionHeadingParserRuleCall_0_0());  
    1322013525            } 
    13221             pushFollow(FOLLOW_ruleSectionHeading_in_rule__BnfEntry__SectionheaderAssignment_08549); 
     13526            pushFollow(FOLLOW_ruleSectionHeading_in_rule__BnfEntry__SectionheaderAssignment_08749); 
    1322213527            ruleSectionHeading(); 
    1322313528 
     
    1323913544        } 
    1324013545        finally { 
    13241             if ( state.backtracking>0 ) { memoize(input, 255, rule__BnfEntry__SectionheaderAssignment_0_StartIndex); } 
     13546            if ( state.backtracking>0 ) { memoize(input, 261, rule__BnfEntry__SectionheaderAssignment_0_StartIndex); } 
    1324213547 
    1324313548                restoreStackSize(stackSize); 
     
    1325013555 
    1325113556    // $ANTLR start "rule__BnfEntry__RuleAssignment_1" 
    13252     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4228:1: rule__BnfEntry__RuleAssignment_1 : ( ruleRule ) ; 
     13557    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4325:1: rule__BnfEntry__RuleAssignment_1 : ( ruleRule ) ; 
    1325313558    public final void rule__BnfEntry__RuleAssignment_1() throws RecognitionException { 
    1325413559        int rule__BnfEntry__RuleAssignment_1_StartIndex = input.index(); 
     
    1325713562             
    1325813563        try { 
    13259             if ( state.backtracking>0 && alreadyParsedRule(input, 256) ) { return ; } 
    13260             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4232:1: ( ( ruleRule ) ) 
    13261             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4233:1: ( ruleRule ) 
    13262             { 
    13263             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4233:1: ( ruleRule ) 
    13264             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4234:1: ruleRule 
     13564            if ( state.backtracking>0 && alreadyParsedRule(input, 262) ) { return ; } 
     13565            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4329:1: ( ( ruleRule ) ) 
     13566            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4330:1: ( ruleRule ) 
     13567            { 
     13568            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4330:1: ( ruleRule ) 
     13569            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4331:1: ruleRule 
    1326513570            { 
    1326613571            if ( state.backtracking==0 ) { 
    1326713572               before(grammarAccess.getBnfEntryAccess().getRuleRuleParserRuleCall_1_0());  
    1326813573            } 
    13269             pushFollow(FOLLOW_ruleRule_in_rule__BnfEntry__RuleAssignment_18580); 
     13574            pushFollow(FOLLOW_ruleRule_in_rule__BnfEntry__RuleAssignment_18780); 
    1327013575            ruleRule(); 
    1327113576 
     
    1328713592        } 
    1328813593        finally { 
    13289             if ( state.backtracking>0 ) { memoize(input, 256, rule__BnfEntry__RuleAssignment_1_StartIndex); } 
     13594            if ( state.backtracking>0 ) { memoize(input, 262, rule__BnfEntry__RuleAssignment_1_StartIndex); } 
    1329013595 
    1329113596                restoreStackSize(stackSize); 
     
    1329713602 
    1329813603 
     13604    // $ANTLR start "rule__BnfEntry__CommentAssignment_2" 
     13605    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4340:1: rule__BnfEntry__CommentAssignment_2 : ( ruleComment ) ; 
     13606    public final void rule__BnfEntry__CommentAssignment_2() throws RecognitionException { 
     13607        int rule__BnfEntry__CommentAssignment_2_StartIndex = input.index(); 
     13608 
     13609                        int stackSize = keepStackSize(); 
     13610             
     13611        try { 
     13612            if ( state.backtracking>0 && alreadyParsedRule(input, 263) ) { return ; } 
     13613            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4344:1: ( ( ruleComment ) ) 
     13614            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4345:1: ( ruleComment ) 
     13615            { 
     13616            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4345:1: ( ruleComment ) 
     13617            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4346:1: ruleComment 
     13618            { 
     13619            if ( state.backtracking==0 ) { 
     13620               before(grammarAccess.getBnfEntryAccess().getCommentCommentParserRuleCall_2_0());  
     13621            } 
     13622            pushFollow(FOLLOW_ruleComment_in_rule__BnfEntry__CommentAssignment_28811); 
     13623            ruleComment(); 
     13624 
     13625            state._fsp--; 
     13626            if (state.failed) return ; 
     13627            if ( state.backtracking==0 ) { 
     13628               after(grammarAccess.getBnfEntryAccess().getCommentCommentParserRuleCall_2_0());  
     13629            } 
     13630 
     13631            } 
     13632 
     13633 
     13634            } 
     13635 
     13636        } 
     13637        catch (RecognitionException re) { 
     13638            reportError(re); 
     13639            recover(input,re); 
     13640        } 
     13641        finally { 
     13642            if ( state.backtracking>0 ) { memoize(input, 263, rule__BnfEntry__CommentAssignment_2_StartIndex); } 
     13643 
     13644                restoreStackSize(stackSize); 
     13645 
     13646        } 
     13647        return ; 
     13648    } 
     13649    // $ANTLR end "rule__BnfEntry__CommentAssignment_2" 
     13650 
     13651 
    1329913652    // $ANTLR start "rule__DeltaEntry__RuleAssignment_0" 
    13300     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4243:1: rule__DeltaEntry__RuleAssignment_0 : ( ruleRule ) ; 
     13653    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4355:1: rule__DeltaEntry__RuleAssignment_0 : ( ruleRule ) ; 
    1330113654    public final void rule__DeltaEntry__RuleAssignment_0() throws RecognitionException { 
    1330213655        int rule__DeltaEntry__RuleAssignment_0_StartIndex = input.index(); 
     
    1330513658             
    1330613659        try { 
    13307             if ( state.backtracking>0 && alreadyParsedRule(input, 257) ) { return ; } 
    13308             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4247:1: ( ( ruleRule ) ) 
    13309             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4248:1: ( ruleRule ) 
    13310             { 
    13311             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4248:1: ( ruleRule ) 
    13312             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4249:1: ruleRule 
     13660            if ( state.backtracking>0 && alreadyParsedRule(input, 264) ) { return ; } 
     13661            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4359:1: ( ( ruleRule ) ) 
     13662            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4360:1: ( ruleRule ) 
     13663            { 
     13664            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4360:1: ( ruleRule ) 
     13665            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4361:1: ruleRule 
    1331313666            { 
    1331413667            if ( state.backtracking==0 ) { 
    1331513668               before(grammarAccess.getDeltaEntryAccess().getRuleRuleParserRuleCall_0_0());  
    1331613669            } 
    13317             pushFollow(FOLLOW_ruleRule_in_rule__DeltaEntry__RuleAssignment_08611); 
     13670            pushFollow(FOLLOW_ruleRule_in_rule__DeltaEntry__RuleAssignment_08842); 
    1331813671            ruleRule(); 
    1331913672 
     
    1333513688        } 
    1333613689        finally { 
    13337             if ( state.backtracking>0 ) { memoize(input, 257, rule__DeltaEntry__RuleAssignment_0_StartIndex); } 
     13690            if ( state.backtracking>0 ) { memoize(input, 264, rule__DeltaEntry__RuleAssignment_0_StartIndex); } 
    1333813691 
    1333913692                restoreStackSize(stackSize); 
     
    1334613699 
    1334713700    // $ANTLR start "rule__DeltaEntry__SectionheaderAssignment_1" 
    13348     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4258:1: rule__DeltaEntry__SectionheaderAssignment_1 : ( ruleSectionHeading ) ; 
     13701    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4370:1: rule__DeltaEntry__SectionheaderAssignment_1 : ( ruleSectionHeading ) ; 
    1334913702    public final void rule__DeltaEntry__SectionheaderAssignment_1() throws RecognitionException { 
    1335013703        int rule__DeltaEntry__SectionheaderAssignment_1_StartIndex = input.index(); 
     
    1335313706             
    1335413707        try { 
    13355             if ( state.backtracking>0 && alreadyParsedRule(input, 258) ) { return ; } 
    13356             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4262:1: ( ( ruleSectionHeading ) ) 
    13357             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4263:1: ( ruleSectionHeading ) 
    13358             { 
    13359             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4263:1: ( ruleSectionHeading ) 
    13360             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4264:1: ruleSectionHeading 
     13708            if ( state.backtracking>0 && alreadyParsedRule(input, 265) ) { return ; } 
     13709            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4374:1: ( ( ruleSectionHeading ) ) 
     13710            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4375:1: ( ruleSectionHeading ) 
     13711            { 
     13712            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4375:1: ( ruleSectionHeading ) 
     13713            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4376:1: ruleSectionHeading 
    1336113714            { 
    1336213715            if ( state.backtracking==0 ) { 
    1336313716               before(grammarAccess.getDeltaEntryAccess().getSectionheaderSectionHeadingParserRuleCall_1_0());  
    1336413717            } 
    13365             pushFollow(FOLLOW_ruleSectionHeading_in_rule__DeltaEntry__SectionheaderAssignment_18642); 
     13718            pushFollow(FOLLOW_ruleSectionHeading_in_rule__DeltaEntry__SectionheaderAssignment_18873); 
    1336613719            ruleSectionHeading(); 
    1336713720 
     
    1338313736        } 
    1338413737        finally { 
    13385             if ( state.backtracking>0 ) { memoize(input, 258, rule__DeltaEntry__SectionheaderAssignment_1_StartIndex); } 
     13738            if ( state.backtracking>0 ) { memoize(input, 265, rule__DeltaEntry__SectionheaderAssignment_1_StartIndex); } 
    1338613739 
    1338713740                restoreStackSize(stackSize); 
     
    1339413747 
    1339513748    // $ANTLR start "rule__DeltaEntry__ExtRuleAssignment_2" 
    13396     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4273:1: rule__DeltaEntry__ExtRuleAssignment_2 : ( ruleExtRule ) ; 
     13749    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4385:1: rule__DeltaEntry__ExtRuleAssignment_2 : ( ruleExtRule ) ; 
    1339713750    public final void rule__DeltaEntry__ExtRuleAssignment_2() throws RecognitionException { 
    1339813751        int rule__DeltaEntry__ExtRuleAssignment_2_StartIndex = input.index(); 
     
    1340113754             
    1340213755        try { 
    13403             if ( state.backtracking>0 && alreadyParsedRule(input, 259) ) { return ; } 
    13404             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4277:1: ( ( ruleExtRule ) ) 
    13405             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4278:1: ( ruleExtRule ) 
    13406             { 
    13407             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4278:1: ( ruleExtRule ) 
    13408             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4279:1: ruleExtRule 
     13756            if ( state.backtracking>0 && alreadyParsedRule(input, 266) ) { return ; } 
     13757            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4389:1: ( ( ruleExtRule ) ) 
     13758            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4390:1: ( ruleExtRule ) 
     13759            { 
     13760            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4390:1: ( ruleExtRule ) 
     13761            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4391:1: ruleExtRule 
    1340913762            { 
    1341013763            if ( state.backtracking==0 ) { 
    1341113764               before(grammarAccess.getDeltaEntryAccess().getExtRuleExtRuleParserRuleCall_2_0());  
    1341213765            } 
    13413             pushFollow(FOLLOW_ruleExtRule_in_rule__DeltaEntry__ExtRuleAssignment_28673); 
     13766            pushFollow(FOLLOW_ruleExtRule_in_rule__DeltaEntry__ExtRuleAssignment_28904); 
    1341413767            ruleExtRule(); 
    1341513768 
     
    1343113784        } 
    1343213785        finally { 
    13433             if ( state.backtracking>0 ) { memoize(input, 259, rule__DeltaEntry__ExtRuleAssignment_2_StartIndex); } 
     13786            if ( state.backtracking>0 ) { memoize(input, 266, rule__DeltaEntry__ExtRuleAssignment_2_StartIndex); } 
    1343413787 
    1343513788                restoreStackSize(stackSize); 
     
    1344213795 
    1344313796    // $ANTLR start "rule__MergeEntry__SectionheaderAssignment_0" 
    13444     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4288:1: rule__MergeEntry__SectionheaderAssignment_0 : ( ruleSectionHeading ) ; 
     13797    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4400:1: rule__MergeEntry__SectionheaderAssignment_0 : ( ruleSectionHeading ) ; 
    1344513798    public final void rule__MergeEntry__SectionheaderAssignment_0() throws RecognitionException { 
    1344613799        int rule__MergeEntry__SectionheaderAssignment_0_StartIndex = input.index(); 
     
    1344913802             
    1345013803        try { 
    13451             if ( state.backtracking>0 && alreadyParsedRule(input, 260) ) { return ; } 
    13452             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4292:1: ( ( ruleSectionHeading ) ) 
    13453             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4293:1: ( ruleSectionHeading ) 
    13454             { 
    13455             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4293:1: ( ruleSectionHeading ) 
    13456             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4294:1: ruleSectionHeading 
     13804            if ( state.backtracking>0 && alreadyParsedRule(input, 267) ) { return ; } 
     13805            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4404:1: ( ( ruleSectionHeading ) ) 
     13806            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4405:1: ( ruleSectionHeading ) 
     13807            { 
     13808            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4405:1: ( ruleSectionHeading ) 
     13809            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4406:1: ruleSectionHeading 
    1345713810            { 
    1345813811            if ( state.backtracking==0 ) { 
    1345913812               before(grammarAccess.getMergeEntryAccess().getSectionheaderSectionHeadingParserRuleCall_0_0());  
    1346013813            } 
    13461             pushFollow(FOLLOW_ruleSectionHeading_in_rule__MergeEntry__SectionheaderAssignment_08704); 
     13814            pushFollow(FOLLOW_ruleSectionHeading_in_rule__MergeEntry__SectionheaderAssignment_08935); 
    1346213815            ruleSectionHeading(); 
    1346313816 
     
    1347913832        } 
    1348013833        finally { 
    13481             if ( state.backtracking>0 ) { memoize(input, 260, rule__MergeEntry__SectionheaderAssignment_0_StartIndex); } 
     13834            if ( state.backtracking>0 ) { memoize(input, 267, rule__MergeEntry__SectionheaderAssignment_0_StartIndex); } 
    1348213835 
    1348313836                restoreStackSize(stackSize); 
     
    1349013843 
    1349113844    // $ANTLR start "rule__MergeEntry__MergeRuleAssignment_1" 
    13492     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4303:1: rule__MergeEntry__MergeRuleAssignment_1 : ( ruleMergeRule ) ; 
     13845    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4415:1: rule__MergeEntry__MergeRuleAssignment_1 : ( ruleMergeRule ) ; 
    1349313846    public final void rule__MergeEntry__MergeRuleAssignment_1() throws RecognitionException { 
    1349413847        int rule__MergeEntry__MergeRuleAssignment_1_StartIndex = input.index(); 
     
    1349713850             
    1349813851        try { 
    13499             if ( state.backtracking>0 && alreadyParsedRule(input, 261) ) { return ; } 
    13500             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4307:1: ( ( ruleMergeRule ) ) 
    13501             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4308:1: ( ruleMergeRule ) 
    13502             { 
    13503             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4308:1: ( ruleMergeRule ) 
    13504             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4309:1: ruleMergeRule 
     13852            if ( state.backtracking>0 && alreadyParsedRule(input, 268) ) { return ; } 
     13853            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4419:1: ( ( ruleMergeRule ) ) 
     13854            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4420:1: ( ruleMergeRule ) 
     13855            { 
     13856            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4420:1: ( ruleMergeRule ) 
     13857            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4421:1: ruleMergeRule 
    1350513858            { 
    1350613859            if ( state.backtracking==0 ) { 
    1350713860               before(grammarAccess.getMergeEntryAccess().getMergeRuleMergeRuleParserRuleCall_1_0());  
    1350813861            } 
    13509             pushFollow(FOLLOW_ruleMergeRule_in_rule__MergeEntry__MergeRuleAssignment_18735); 
     13862            pushFollow(FOLLOW_ruleMergeRule_in_rule__MergeEntry__MergeRuleAssignment_18966); 
    1351013863            ruleMergeRule(); 
    1351113864 
     
    1352713880        } 
    1352813881        finally { 
    13529             if ( state.backtracking>0 ) { memoize(input, 261, rule__MergeEntry__MergeRuleAssignment_1_StartIndex); } 
     13882            if ( state.backtracking>0 ) { memoize(input, 268, rule__MergeEntry__MergeRuleAssignment_1_StartIndex); } 
    1353013883 
    1353113884                restoreStackSize(stackSize); 
     
    1353813891 
    1353913892    // $ANTLR start "rule__SectionHeading__SectionHeaderAssignment_1" 
    13540     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4318:1: rule__SectionHeading__SectionHeaderAssignment_1 : ( RULE_SECTIONHEADER ) ; 
     13893    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4430:1: rule__SectionHeading__SectionHeaderAssignment_1 : ( RULE_SECTIONHEADER ) ; 
    1354113894    public final void rule__SectionHeading__SectionHeaderAssignment_1() throws RecognitionException { 
    1354213895        int rule__SectionHeading__SectionHeaderAssignment_1_StartIndex = input.index(); 
     
    1354513898             
    1354613899        try { 
    13547             if ( state.backtracking>0 && alreadyParsedRule(input, 262) ) { return ; } 
    13548             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4322:1: ( ( RULE_SECTIONHEADER ) ) 
    13549             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4323:1: ( RULE_SECTIONHEADER ) 
    13550             { 
    13551             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4323:1: ( RULE_SECTIONHEADER ) 
    13552             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4324:1: RULE_SECTIONHEADER 
     13900            if ( state.backtracking>0 && alreadyParsedRule(input, 269) ) { return ; } 
     13901            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4434:1: ( ( RULE_SECTIONHEADER ) ) 
     13902            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4435:1: ( RULE_SECTIONHEADER ) 
     13903            { 
     13904            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4435:1: ( RULE_SECTIONHEADER ) 
     13905            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4436:1: RULE_SECTIONHEADER 
    1355313906            { 
    1355413907            if ( state.backtracking==0 ) { 
    1355513908               before(grammarAccess.getSectionHeadingAccess().getSectionHeaderSECTIONHEADERTerminalRuleCall_1_0());  
    1355613909            } 
    13557             match(input,RULE_SECTIONHEADER,FOLLOW_RULE_SECTIONHEADER_in_rule__SectionHeading__SectionHeaderAssignment_18766); if (state.failed) return ; 
     13910            match(input,RULE_SECTIONHEADER,FOLLOW_RULE_SECTIONHEADER_in_rule__SectionHeading__SectionHeaderAssignment_18997); if (state.failed) return ; 
    1355813911            if ( state.backtracking==0 ) { 
    1355913912               after(grammarAccess.getSectionHeadingAccess().getSectionHeaderSECTIONHEADERTerminalRuleCall_1_0());  
     
    1357113924        } 
    1357213925        finally { 
    13573             if ( state.backtracking>0 ) { memoize(input, 262, rule__SectionHeading__SectionHeaderAssignment_1_StartIndex); } 
     13926            if ( state.backtracking>0 ) { memoize(input, 269, rule__SectionHeading__SectionHeaderAssignment_1_StartIndex); } 
    1357413927 
    1357513928                restoreStackSize(stackSize); 
     
    1358113934 
    1358213935 
     13936    // $ANTLR start "rule__Comment__ContentAssignment_1" 
     13937    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4445:1: rule__Comment__ContentAssignment_1 : ( RULE_ML_COMMENT ) ; 
     13938    public final void rule__Comment__ContentAssignment_1() throws RecognitionException { 
     13939        int rule__Comment__ContentAssignment_1_StartIndex = input.index(); 
     13940 
     13941                        int stackSize = keepStackSize(); 
     13942             
     13943        try { 
     13944            if ( state.backtracking>0 && alreadyParsedRule(input, 270) ) { return ; } 
     13945            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4449:1: ( ( RULE_ML_COMMENT ) ) 
     13946            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4450:1: ( RULE_ML_COMMENT ) 
     13947            { 
     13948            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4450:1: ( RULE_ML_COMMENT ) 
     13949            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4451:1: RULE_ML_COMMENT 
     13950            { 
     13951            if ( state.backtracking==0 ) { 
     13952               before(grammarAccess.getCommentAccess().getContentML_COMMENTTerminalRuleCall_1_0());  
     13953            } 
     13954            match(input,RULE_ML_COMMENT,FOLLOW_RULE_ML_COMMENT_in_rule__Comment__ContentAssignment_19028); if (state.failed) return ; 
     13955            if ( state.backtracking==0 ) { 
     13956               after(grammarAccess.getCommentAccess().getContentML_COMMENTTerminalRuleCall_1_0());  
     13957            } 
     13958 
     13959            } 
     13960 
     13961 
     13962            } 
     13963 
     13964        } 
     13965        catch (RecognitionException re) { 
     13966            reportError(re); 
     13967            recover(input,re); 
     13968        } 
     13969        finally { 
     13970            if ( state.backtracking>0 ) { memoize(input, 270, rule__Comment__ContentAssignment_1_StartIndex); } 
     13971 
     13972                restoreStackSize(stackSize); 
     13973 
     13974        } 
     13975        return ; 
     13976    } 
     13977    // $ANTLR end "rule__Comment__ContentAssignment_1" 
     13978 
     13979 
    1358313980    // $ANTLR start "rule__Import__ImportURIAssignment_1" 
    13584     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4333:1: rule__Import__ImportURIAssignment_1 : ( RULE_STRING ) ; 
     13981    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4460:1: rule__Import__ImportURIAssignment_1 : ( RULE_STRING ) ; 
    1358513982    public final void rule__Import__ImportURIAssignment_1() throws RecognitionException { 
    1358613983        int rule__Import__ImportURIAssignment_1_StartIndex = input.index(); 
     
    1358913986             
    1359013987        try { 
    13591             if ( state.backtracking>0 && alreadyParsedRule(input, 263) ) { return ; } 
    13592             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4337:1: ( ( RULE_STRING ) ) 
    13593             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4338:1: ( RULE_STRING ) 
    13594             { 
    13595             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4338:1: ( RULE_STRING ) 
    13596             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4339:1: RULE_STRING 
     13988            if ( state.backtracking>0 && alreadyParsedRule(input, 271) ) { return ; } 
     13989            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4464:1: ( ( RULE_STRING ) ) 
     13990            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4465:1: ( RULE_STRING ) 
     13991            { 
     13992            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4465:1: ( RULE_STRING ) 
     13993            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4466:1: RULE_STRING 
    1359713994            { 
    1359813995            if ( state.backtracking==0 ) { 
    1359913996               before(grammarAccess.getImportAccess().getImportURISTRINGTerminalRuleCall_1_0());  
    1360013997            } 
    13601             match(input,RULE_STRING,FOLLOW_RULE_STRING_in_rule__Import__ImportURIAssignment_18797); if (state.failed) return ; 
     13998            match(input,RULE_STRING,FOLLOW_RULE_STRING_in_rule__Import__ImportURIAssignment_19059); if (state.failed) return ; 
    1360213999            if ( state.backtracking==0 ) { 
    1360314000               after(grammarAccess.getImportAccess().getImportURISTRINGTerminalRuleCall_1_0());  
     
    1361514012        } 
    1361614013        finally { 
    13617             if ( state.backtracking>0 ) { memoize(input, 263, rule__Import__ImportURIAssignment_1_StartIndex); } 
     14014            if ( state.backtracking>0 ) { memoize(input, 271, rule__Import__ImportURIAssignment_1_StartIndex); } 
    1361814015 
    1361914016                restoreStackSize(stackSize); 
     
    1362614023 
    1362714024    // $ANTLR start "rule__Import__GrammarTypeAssignment_2_1_0" 
    13628     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4348:1: rule__Import__GrammarTypeAssignment_2_1_0 : ( ( 'core' ) ) ; 
     14025    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4475:1: rule__Import__GrammarTypeAssignment_2_1_0 : ( ( 'core' ) ) ; 
    1362914026    public final void rule__Import__GrammarTypeAssignment_2_1_0() throws RecognitionException { 
    1363014027        int rule__Import__GrammarTypeAssignment_2_1_0_StartIndex = input.index(); 
     
    1363314030             
    1363414031        try { 
    13635             if ( state.backtracking>0 && alreadyParsedRule(input, 264) ) { return ; } 
    13636             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4352:1: ( ( ( 'core' ) ) ) 
    13637             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4353:1: ( ( 'core' ) ) 
    13638             { 
    13639             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4353:1: ( ( 'core' ) ) 
    13640             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4354:1: ( 'core' ) 
     14032            if ( state.backtracking>0 && alreadyParsedRule(input, 272) ) { return ; } 
     14033            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4479:1: ( ( ( 'core' ) ) ) 
     14034            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4480:1: ( ( 'core' ) ) 
     14035            { 
     14036            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4480:1: ( ( 'core' ) ) 
     14037            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4481:1: ( 'core' ) 
    1364114038            { 
    1364214039            if ( state.backtracking==0 ) { 
    1364314040               before(grammarAccess.getImportAccess().getGrammarTypeCoreKeyword_2_1_0_0());  
    1364414041            } 
    13645             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4355:1: ( 'core' ) 
    13646             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4356:1: 'core' 
     14042            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4482:1: ( 'core' ) 
     14043            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4483:1: 'core' 
    1364714044            { 
    1364814045            if ( state.backtracking==0 ) { 
    1364914046               before(grammarAccess.getImportAccess().getGrammarTypeCoreKeyword_2_1_0_0());  
    1365014047            } 
    13651             match(input,39,FOLLOW_39_in_rule__Import__GrammarTypeAssignment_2_1_08833); if (state.failed) return ; 
     14048            match(input,39,FOLLOW_39_in_rule__Import__GrammarTypeAssignment_2_1_09095); if (state.failed) return ; 
    1365214049            if ( state.backtracking==0 ) { 
    1365314050               after(grammarAccess.getImportAccess().getGrammarTypeCoreKeyword_2_1_0_0());  
     
    1367114068        } 
    1367214069        finally { 
    13673             if ( state.backtracking>0 ) { memoize(input, 264, rule__Import__GrammarTypeAssignment_2_1_0_StartIndex); } 
     14070            if ( state.backtracking>0 ) { memoize(input, 272, rule__Import__GrammarTypeAssignment_2_1_0_StartIndex); } 
    1367414071 
    1367514072                restoreStackSize(stackSize); 
     
    1368214079 
    1368314080    // $ANTLR start "rule__Import__GrammarTypeAssignment_2_1_1" 
    13684     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4371:1: rule__Import__GrammarTypeAssignment_2_1_1 : ( ( 'package' ) ) ; 
     14081    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4498:1: rule__Import__GrammarTypeAssignment_2_1_1 : ( ( 'package' ) ) ; 
    1368514082    public final void rule__Import__GrammarTypeAssignment_2_1_1() throws RecognitionException { 
    1368614083        int rule__Import__GrammarTypeAssignment_2_1_1_StartIndex = input.index(); 
     
    1368914086             
    1369014087        try { 
    13691             if ( state.backtracking>0 && alreadyParsedRule(input, 265) ) { return ; } 
    13692             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4375:1: ( ( ( 'package' ) ) ) 
    13693             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4376:1: ( ( 'package' ) ) 
    13694             { 
    13695             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4376:1: ( ( 'package' ) ) 
    13696             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4377:1: ( 'package' ) 
     14088            if ( state.backtracking>0 && alreadyParsedRule(input, 273) ) { return ; } 
     14089            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4502:1: ( ( ( 'package' ) ) ) 
     14090            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4503:1: ( ( 'package' ) ) 
     14091            { 
     14092            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4503:1: ( ( 'package' ) ) 
     14093            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4504:1: ( 'package' ) 
    1369714094            { 
    1369814095            if ( state.backtracking==0 ) { 
    1369914096               before(grammarAccess.getImportAccess().getGrammarTypePackageKeyword_2_1_1_0());  
    1370014097            } 
    13701             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4378:1: ( 'package' ) 
    13702             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4379:1: 'package' 
     14098            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4505:1: ( 'package' ) 
     14099            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4506:1: 'package' 
    1370314100            { 
    1370414101            if ( state.backtracking==0 ) { 
    1370514102               before(grammarAccess.getImportAccess().getGrammarTypePackageKeyword_2_1_1_0());  
    1370614103            } 
    13707             match(input,40,FOLLOW_40_in_rule__Import__GrammarTypeAssignment_2_1_18877); if (state.failed) return ; 
     14104            match(input,40,FOLLOW_40_in_rule__Import__GrammarTypeAssignment_2_1_19139); if (state.failed) return ; 
    1370814105            if ( state.backtracking==0 ) { 
    1370914106               after(grammarAccess.getImportAccess().getGrammarTypePackageKeyword_2_1_1_0());  
     
    1372714124        } 
    1372814125        finally { 
    13729             if ( state.backtracking>0 ) { memoize(input, 265, rule__Import__GrammarTypeAssignment_2_1_1_StartIndex); } 
     14126            if ( state.backtracking>0 ) { memoize(input, 273, rule__Import__GrammarTypeAssignment_2_1_1_StartIndex); } 
    1373014127 
    1373114128                restoreStackSize(stackSize); 
     
    1373814135 
    1373914136    // $ANTLR start "rule__Import__GrammarTypeAssignment_2_1_2" 
    13740     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4394:1: rule__Import__GrammarTypeAssignment_2_1_2 : ( ( 'update' ) ) ; 
     14137    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4521:1: rule__Import__GrammarTypeAssignment_2_1_2 : ( ( 'update' ) ) ; 
    1374114138    public final void rule__Import__GrammarTypeAssignment_2_1_2() throws RecognitionException { 
    1374214139        int rule__Import__GrammarTypeAssignment_2_1_2_StartIndex = input.index(); 
     
    1374514142             
    1374614143        try { 
    13747             if ( state.backtracking>0 && alreadyParsedRule(input, 266) ) { return ; } 
    13748             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4398:1: ( ( ( 'update' ) ) ) 
    13749             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4399:1: ( ( 'update' ) ) 
    13750             { 
    13751             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4399:1: ( ( 'update' ) ) 
    13752             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4400:1: ( 'update' ) 
     14144            if ( state.backtracking>0 && alreadyParsedRule(input, 274) ) { return ; } 
     14145            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4525:1: ( ( ( 'update' ) ) ) 
     14146            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4526:1: ( ( 'update' ) ) 
     14147            { 
     14148            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4526:1: ( ( 'update' ) ) 
     14149            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4527:1: ( 'update' ) 
    1375314150            { 
    1375414151            if ( state.backtracking==0 ) { 
    1375514152               before(grammarAccess.getImportAccess().getGrammarTypeUpdateKeyword_2_1_2_0());  
    1375614153            } 
    13757             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4401:1: ( 'update' ) 
    13758             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4402:1: 'update' 
     14154            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4528:1: ( 'update' ) 
     14155            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4529:1: 'update' 
    1375914156            { 
    1376014157            if ( state.backtracking==0 ) { 
    1376114158               before(grammarAccess.getImportAccess().getGrammarTypeUpdateKeyword_2_1_2_0());  
    1376214159            } 
    13763             match(input,41,FOLLOW_41_in_rule__Import__GrammarTypeAssignment_2_1_28921); if (state.failed) return ; 
     14160            match(input,41,FOLLOW_41_in_rule__Import__GrammarTypeAssignment_2_1_29183); if (state.failed) return ; 
    1376414161            if ( state.backtracking==0 ) { 
    1376514162               after(grammarAccess.getImportAccess().getGrammarTypeUpdateKeyword_2_1_2_0());  
     
    1378314180        } 
    1378414181        finally { 
    13785             if ( state.backtracking>0 ) { memoize(input, 266, rule__Import__GrammarTypeAssignment_2_1_2_StartIndex); } 
     14182            if ( state.backtracking>0 ) { memoize(input, 274, rule__Import__GrammarTypeAssignment_2_1_2_StartIndex); } 
    1378614183 
    1378714184                restoreStackSize(stackSize); 
     
    1379414191 
    1379514192    // $ANTLR start "rule__Import__LabelAssignment_3_1" 
    13796     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4417:1: rule__Import__LabelAssignment_3_1 : ( RULE_ID ) ; 
     14193    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4544:1: rule__Import__LabelAssignment_3_1 : ( RULE_ID ) ; 
    1379714194    public final void rule__Import__LabelAssignment_3_1() throws RecognitionException { 
    1379814195        int rule__Import__LabelAssignment_3_1_StartIndex = input.index(); 
     
    1380114198             
    1380214199        try { 
    13803             if ( state.backtracking>0 && alreadyParsedRule(input, 267) ) { return ; } 
    13804             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4421:1: ( ( RULE_ID ) ) 
    13805             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4422:1: ( RULE_ID ) 
    13806             { 
    13807             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4422:1: ( RULE_ID ) 
    13808             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4423:1: RULE_ID 
     14200            if ( state.backtracking>0 && alreadyParsedRule(input, 275) ) { return ; } 
     14201            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4548:1: ( ( RULE_ID ) ) 
     14202            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4549:1: ( RULE_ID ) 
     14203            { 
     14204            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4549:1: ( RULE_ID ) 
     14205            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4550:1: RULE_ID 
    1380914206            { 
    1381014207            if ( state.backtracking==0 ) { 
    1381114208               before(grammarAccess.getImportAccess().getLabelIDTerminalRuleCall_3_1_0());  
    1381214209            } 
    13813             match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Import__LabelAssignment_3_18960); if (state.failed) return ; 
     14210            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Import__LabelAssignment_3_19222); if (state.failed) return ; 
    1381414211            if ( state.backtracking==0 ) { 
    1381514212               after(grammarAccess.getImportAccess().getLabelIDTerminalRuleCall_3_1_0());  
     
    1382714224        } 
    1382814225        finally { 
    13829             if ( state.backtracking>0 ) { memoize(input, 267, rule__Import__LabelAssignment_3_1_StartIndex); } 
     14226            if ( state.backtracking>0 ) { memoize(input, 275, rule__Import__LabelAssignment_3_1_StartIndex); } 
    1383014227 
    1383114228                restoreStackSize(stackSize); 
     
    1383814235 
    1383914236    // $ANTLR start "rule__Rule__RulenumberAssignment_0_0" 
    13840     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4432:1: rule__Rule__RulenumberAssignment_0_0 : ( RULE_INT ) ; 
     14237    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4559:1: rule__Rule__RulenumberAssignment_0_0 : ( RULE_INT ) ; 
    1384114238    public final void rule__Rule__RulenumberAssignment_0_0() throws RecognitionException { 
    1384214239        int rule__Rule__RulenumberAssignment_0_0_StartIndex = input.index(); 
     
    1384514242             
    1384614243        try { 
    13847             if ( state.backtracking>0 && alreadyParsedRule(input, 268) ) { return ; } 
    13848             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4436:1: ( ( RULE_INT ) ) 
    13849             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4437:1: ( RULE_INT ) 
    13850             { 
    13851             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4437:1: ( RULE_INT ) 
    13852             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4438:1: RULE_INT 
     14244            if ( state.backtracking>0 && alreadyParsedRule(input, 276) ) { return ; } 
     14245            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4563:1: ( ( RULE_INT ) ) 
     14246            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4564:1: ( RULE_INT ) 
     14247            { 
     14248            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4564:1: ( RULE_INT ) 
     14249            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4565:1: RULE_INT 
    1385314250            { 
    1385414251            if ( state.backtracking==0 ) { 
    1385514252               before(grammarAccess.getRuleAccess().getRulenumberINTTerminalRuleCall_0_0_0());  
    1385614253            } 
    13857             match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__Rule__RulenumberAssignment_0_08991); if (state.failed) return ; 
     14254            match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__Rule__RulenumberAssignment_0_09253); if (state.failed) return ; 
    1385814255            if ( state.backtracking==0 ) { 
    1385914256               after(grammarAccess.getRuleAccess().getRulenumberINTTerminalRuleCall_0_0_0());  
     
    1387114268        } 
    1387214269        finally { 
    13873             if ( state.backtracking>0 ) { memoize(input, 268, rule__Rule__RulenumberAssignment_0_0_StartIndex); } 
     14270            if ( state.backtracking>0 ) { memoize(input, 276, rule__Rule__RulenumberAssignment_0_0_StartIndex); } 
    1387414271 
    1387514272                restoreStackSize(stackSize); 
     
    1388214279 
    1388314280    // $ANTLR start "rule__Rule__RulevariantAssignment_0_1" 
    13884     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4447:1: rule__Rule__RulevariantAssignment_0_1 : ( RULE_ID ) ; 
     14281    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4574:1: rule__Rule__RulevariantAssignment_0_1 : ( RULE_ID ) ; 
    1388514282    public final void rule__Rule__RulevariantAssignment_0_1() throws RecognitionException { 
    1388614283        int rule__Rule__RulevariantAssignment_0_1_StartIndex = input.index(); 
     
    1388914286             
    1389014287        try { 
    13891             if ( state.backtracking>0 && alreadyParsedRule(input, 269) ) { return ; } 
    13892             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4451:1: ( ( RULE_ID ) ) 
    13893             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4452:1: ( RULE_ID ) 
    13894             { 
    13895             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4452:1: ( RULE_ID ) 
    13896             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4453:1: RULE_ID 
     14288            if ( state.backtracking>0 && alreadyParsedRule(input, 277) ) { return ; } 
     14289            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4578:1: ( ( RULE_ID ) ) 
     14290            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4579:1: ( RULE_ID ) 
     14291            { 
     14292            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4579:1: ( RULE_ID ) 
     14293            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4580:1: RULE_ID 
    1389714294            { 
    1389814295            if ( state.backtracking==0 ) { 
    1389914296               before(grammarAccess.getRuleAccess().getRulevariantIDTerminalRuleCall_0_1_0());  
    1390014297            } 
    13901             match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Rule__RulevariantAssignment_0_19022); if (state.failed) return ; 
     14298            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Rule__RulevariantAssignment_0_19284); if (state.failed) return ; 
    1390214299            if ( state.backtracking==0 ) { 
    1390314300               after(grammarAccess.getRuleAccess().getRulevariantIDTerminalRuleCall_0_1_0());  
     
    1391514312        } 
    1391614313        finally { 
    13917             if ( state.backtracking>0 ) { memoize(input, 269, rule__Rule__RulevariantAssignment_0_1_StartIndex); } 
     14314            if ( state.backtracking>0 ) { memoize(input, 277, rule__Rule__RulevariantAssignment_0_1_StartIndex); } 
    1391814315 
    1391914316                restoreStackSize(stackSize); 
     
    1392614323 
    1392714324    // $ANTLR start "rule__Rule__NameAssignment_1" 
    13928     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4462:1: rule__Rule__NameAssignment_1 : ( RULE_ID ) ; 
     14325    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4589:1: rule__Rule__NameAssignment_1 : ( RULE_ID ) ; 
    1392914326    public final void rule__Rule__NameAssignment_1() throws RecognitionException { 
    1393014327        int rule__Rule__NameAssignment_1_StartIndex = input.index(); 
     
    1393314330             
    1393414331        try { 
    13935             if ( state.backtracking>0 && alreadyParsedRule(input, 270) ) { return ; } 
    13936             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4466:1: ( ( RULE_ID ) ) 
    13937             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4467:1: ( RULE_ID ) 
    13938             { 
    13939             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4467:1: ( RULE_ID ) 
    13940             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4468:1: RULE_ID 
     14332            if ( state.backtracking>0 && alreadyParsedRule(input, 278) ) { return ; } 
     14333            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4593:1: ( ( RULE_ID ) ) 
     14334            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4594:1: ( RULE_ID ) 
     14335            { 
     14336            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4594:1: ( RULE_ID ) 
     14337            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4595:1: RULE_ID 
    1394114338            { 
    1394214339            if ( state.backtracking==0 ) { 
    1394314340               before(grammarAccess.getRuleAccess().getNameIDTerminalRuleCall_1_0());  
    1394414341            } 
    13945             match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Rule__NameAssignment_19053); if (state.failed) return ; 
     14342            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Rule__NameAssignment_19315); if (state.failed) return ; 
    1394614343            if ( state.backtracking==0 ) { 
    1394714344               after(grammarAccess.getRuleAccess().getNameIDTerminalRuleCall_1_0());  
     
    1395914356        } 
    1396014357        finally { 
    13961             if ( state.backtracking>0 ) { memoize(input, 270, rule__Rule__NameAssignment_1_StartIndex); } 
     14358            if ( state.backtracking>0 ) { memoize(input, 278, rule__Rule__NameAssignment_1_StartIndex); } 
    1396214359 
    1396314360                restoreStackSize(stackSize); 
     
    1397014367 
    1397114368    // $ANTLR start "rule__Rule__DefinitionListAssignment_3" 
    13972     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4477:1: rule__Rule__DefinitionListAssignment_3 : ( ruleDefinitionList ) ; 
     14369    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4604:1: rule__Rule__DefinitionListAssignment_3 : ( ruleDefinitionList ) ; 
    1397314370    public final void rule__Rule__DefinitionListAssignment_3() throws RecognitionException { 
    1397414371        int rule__Rule__DefinitionListAssignment_3_StartIndex = input.index(); 
     
    1397714374             
    1397814375        try { 
    13979             if ( state.backtracking>0 && alreadyParsedRule(input, 271) ) { return ; } 
    13980             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4481:1: ( ( ruleDefinitionList ) ) 
    13981             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4482:1: ( ruleDefinitionList ) 
    13982             { 
    13983             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4482:1: ( ruleDefinitionList ) 
    13984             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4483:1: ruleDefinitionList 
     14376            if ( state.backtracking>0 && alreadyParsedRule(input, 279) ) { return ; } 
     14377            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4608:1: ( ( ruleDefinitionList ) ) 
     14378            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4609:1: ( ruleDefinitionList ) 
     14379            { 
     14380            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4609:1: ( ruleDefinitionList ) 
     14381            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4610:1: ruleDefinitionList 
    1398514382            { 
    1398614383            if ( state.backtracking==0 ) { 
    1398714384               before(grammarAccess.getRuleAccess().getDefinitionListDefinitionListParserRuleCall_3_0());  
    1398814385            } 
    13989             pushFollow(FOLLOW_ruleDefinitionList_in_rule__Rule__DefinitionListAssignment_39084); 
     14386            pushFollow(FOLLOW_ruleDefinitionList_in_rule__Rule__DefinitionListAssignment_39346); 
    1399014387            ruleDefinitionList(); 
    1399114388 
     
    1400714404        } 
    1400814405        finally { 
    14009             if ( state.backtracking>0 ) { memoize(input, 271, rule__Rule__DefinitionListAssignment_3_StartIndex); } 
     14406            if ( state.backtracking>0 ) { memoize(input, 279, rule__Rule__DefinitionListAssignment_3_StartIndex); } 
    1401014407 
    1401114408                restoreStackSize(stackSize); 
     
    1401814415 
    1401914416    // $ANTLR start "rule__ExtRule__RulenumberAssignment_0_0" 
    14020     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4492:1: rule__ExtRule__RulenumberAssignment_0_0 : ( RULE_INT ) ; 
     14417    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4619:1: rule__ExtRule__RulenumberAssignment_0_0 : ( RULE_INT ) ; 
    1402114418    public final void rule__ExtRule__RulenumberAssignment_0_0() throws RecognitionException { 
    1402214419        int rule__ExtRule__RulenumberAssignment_0_0_StartIndex = input.index(); 
     
    1402514422             
    1402614423        try { 
    14027             if ( state.backtracking>0 && alreadyParsedRule(input, 272) ) { return ; } 
    14028             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4496:1: ( ( RULE_INT ) ) 
    14029             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4497:1: ( RULE_INT ) 
    14030             { 
    14031             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4497:1: ( RULE_INT ) 
    14032             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4498:1: RULE_INT 
     14424            if ( state.backtracking>0 && alreadyParsedRule(input, 280) ) { return ; } 
     14425            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4623:1: ( ( RULE_INT ) ) 
     14426            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4624:1: ( RULE_INT ) 
     14427            { 
     14428            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4624:1: ( RULE_INT ) 
     14429            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4625:1: RULE_INT 
    1403314430            { 
    1403414431            if ( state.backtracking==0 ) { 
    1403514432               before(grammarAccess.getExtRuleAccess().getRulenumberINTTerminalRuleCall_0_0_0());  
    1403614433            } 
    14037             match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__ExtRule__RulenumberAssignment_0_09115); if (state.failed) return ; 
     14434            match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__ExtRule__RulenumberAssignment_0_09377); if (state.failed) return ; 
    1403814435            if ( state.backtracking==0 ) { 
    1403914436               after(grammarAccess.getExtRuleAccess().getRulenumberINTTerminalRuleCall_0_0_0());  
     
    1405114448        } 
    1405214449        finally { 
    14053             if ( state.backtracking>0 ) { memoize(input, 272, rule__ExtRule__RulenumberAssignment_0_0_StartIndex); } 
     14450            if ( state.backtracking>0 ) { memoize(input, 280, rule__ExtRule__RulenumberAssignment_0_0_StartIndex); } 
    1405414451 
    1405514452                restoreStackSize(stackSize); 
     
    1406214459 
    1406314460    // $ANTLR start "rule__ExtRule__RulevariantAssignment_0_1" 
    14064     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4507:1: rule__ExtRule__RulevariantAssignment_0_1 : ( RULE_ID ) ; 
     14461    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4634:1: rule__ExtRule__RulevariantAssignment_0_1 : ( RULE_ID ) ; 
    1406514462    public final void rule__ExtRule__RulevariantAssignment_0_1() throws RecognitionException { 
    1406614463        int rule__ExtRule__RulevariantAssignment_0_1_StartIndex = input.index(); 
     
    1406914466             
    1407014467        try { 
    14071             if ( state.backtracking>0 && alreadyParsedRule(input, 273) ) { return ; } 
    14072             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4511:1: ( ( RULE_ID ) ) 
    14073             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4512:1: ( RULE_ID ) 
    14074             { 
    14075             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4512:1: ( RULE_ID ) 
    14076             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4513:1: RULE_ID 
     14468            if ( state.backtracking>0 && alreadyParsedRule(input, 281) ) { return ; } 
     14469            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4638:1: ( ( RULE_ID ) ) 
     14470            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4639:1: ( RULE_ID ) 
     14471            { 
     14472            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4639:1: ( RULE_ID ) 
     14473            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4640:1: RULE_ID 
    1407714474            { 
    1407814475            if ( state.backtracking==0 ) { 
    1407914476               before(grammarAccess.getExtRuleAccess().getRulevariantIDTerminalRuleCall_0_1_0());  
    1408014477            } 
    14081             match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__ExtRule__RulevariantAssignment_0_19146); if (state.failed) return ; 
     14478            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__ExtRule__RulevariantAssignment_0_19408); if (state.failed) return ; 
    1408214479            if ( state.backtracking==0 ) { 
    1408314480               after(grammarAccess.getExtRuleAccess().getRulevariantIDTerminalRuleCall_0_1_0());  
     
    1409514492        } 
    1409614493        finally { 
    14097             if ( state.backtracking>0 ) { memoize(input, 273, rule__ExtRule__RulevariantAssignment_0_1_StartIndex); } 
     14494            if ( state.backtracking>0 ) { memoize(input, 281, rule__ExtRule__RulevariantAssignment_0_1_StartIndex); } 
    1409814495 
    1409914496                restoreStackSize(stackSize); 
     
    1410614503 
    1410714504    // $ANTLR start "rule__ExtRule__NameAssignment_1" 
    14108     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4522:1: rule__ExtRule__NameAssignment_1 : ( RULE_ID ) ; 
     14505    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4649:1: rule__ExtRule__NameAssignment_1 : ( RULE_ID ) ; 
    1410914506    public final void rule__ExtRule__NameAssignment_1() throws RecognitionException { 
    1411014507        int rule__ExtRule__NameAssignment_1_StartIndex = input.index(); 
     
    1411314510             
    1411414511        try { 
    14115             if ( state.backtracking>0 && alreadyParsedRule(input, 274) ) { return ; } 
    14116             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4526:1: ( ( RULE_ID ) ) 
    14117             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4527:1: ( RULE_ID ) 
    14118             { 
    14119             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4527:1: ( RULE_ID ) 
    14120             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4528:1: RULE_ID 
     14512            if ( state.backtracking>0 && alreadyParsedRule(input, 282) ) { return ; } 
     14513            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4653:1: ( ( RULE_ID ) ) 
     14514            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4654:1: ( RULE_ID ) 
     14515            { 
     14516            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4654:1: ( RULE_ID ) 
     14517            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4655:1: RULE_ID 
    1412114518            { 
    1412214519            if ( state.backtracking==0 ) { 
    1412314520               before(grammarAccess.getExtRuleAccess().getNameIDTerminalRuleCall_1_0());  
    1412414521            } 
    14125             match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__ExtRule__NameAssignment_19177); if (state.failed) return ; 
     14522            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__ExtRule__NameAssignment_19439); if (state.failed) return ; 
    1412614523            if ( state.backtracking==0 ) { 
    1412714524               after(grammarAccess.getExtRuleAccess().getNameIDTerminalRuleCall_1_0());  
     
    1413914536        } 
    1414014537        finally { 
    14141             if ( state.backtracking>0 ) { memoize(input, 274, rule__ExtRule__NameAssignment_1_StartIndex); } 
     14538            if ( state.backtracking>0 ) { memoize(input, 282, rule__ExtRule__NameAssignment_1_StartIndex); } 
    1414214539 
    1414314540                restoreStackSize(stackSize); 
     
    1415014547 
    1415114548    // $ANTLR start "rule__ExtRule__RuleextAssignment_2_1" 
    14152     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4537:1: rule__ExtRule__RuleextAssignment_2_1 : ( RULE_INT ) ; 
     14549    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4664:1: rule__ExtRule__RuleextAssignment_2_1 : ( RULE_INT ) ; 
    1415314550    public final void rule__ExtRule__RuleextAssignment_2_1() throws RecognitionException { 
    1415414551        int rule__ExtRule__RuleextAssignment_2_1_StartIndex = input.index(); 
     
    1415714554             
    1415814555        try { 
    14159             if ( state.backtracking>0 && alreadyParsedRule(input, 275) ) { return ; } 
    14160             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4541:1: ( ( RULE_INT ) ) 
    14161             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4542:1: ( RULE_INT ) 
    14162             { 
    14163             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4542:1: ( RULE_INT ) 
    14164             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4543:1: RULE_INT 
     14556            if ( state.backtracking>0 && alreadyParsedRule(input, 283) ) { return ; } 
     14557            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4668:1: ( ( RULE_INT ) ) 
     14558            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4669:1: ( RULE_INT ) 
     14559            { 
     14560            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4669:1: ( RULE_INT ) 
     14561            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4670:1: RULE_INT 
    1416514562            { 
    1416614563            if ( state.backtracking==0 ) { 
    1416714564               before(grammarAccess.getExtRuleAccess().getRuleextINTTerminalRuleCall_2_1_0());  
    1416814565            } 
    14169             match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__ExtRule__RuleextAssignment_2_19208); if (state.failed) return ; 
     14566            match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__ExtRule__RuleextAssignment_2_19470); if (state.failed) return ; 
    1417014567            if ( state.backtracking==0 ) { 
    1417114568               after(grammarAccess.getExtRuleAccess().getRuleextINTTerminalRuleCall_2_1_0());  
     
    1418314580        } 
    1418414581        finally { 
    14185             if ( state.backtracking>0 ) { memoize(input, 275, rule__ExtRule__RuleextAssignment_2_1_StartIndex); } 
     14582            if ( state.backtracking>0 ) { memoize(input, 283, rule__ExtRule__RuleextAssignment_2_1_StartIndex); } 
    1418614583 
    1418714584                restoreStackSize(stackSize); 
     
    1419414591 
    1419514592    // $ANTLR start "rule__ExtRule__ElementsAssignment_4_0" 
    14196     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4552:1: rule__ExtRule__ElementsAssignment_4_0 : ( ruleAtom ) ; 
     14593    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4679:1: rule__ExtRule__ElementsAssignment_4_0 : ( ruleAtom ) ; 
    1419714594    public final void rule__ExtRule__ElementsAssignment_4_0() throws RecognitionException { 
    1419814595        int rule__ExtRule__ElementsAssignment_4_0_StartIndex = input.index(); 
     
    1420114598             
    1420214599        try { 
    14203             if ( state.backtracking>0 && alreadyParsedRule(input, 276) ) { return ; } 
    14204             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4556:1: ( ( ruleAtom ) ) 
    14205             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4557:1: ( ruleAtom ) 
    14206             { 
    14207             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4557:1: ( ruleAtom ) 
    14208             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4558:1: ruleAtom 
     14600            if ( state.backtracking>0 && alreadyParsedRule(input, 284) ) { return ; } 
     14601            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4683:1: ( ( ruleAtom ) ) 
     14602            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4684:1: ( ruleAtom ) 
     14603            { 
     14604            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4684:1: ( ruleAtom ) 
     14605            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4685:1: ruleAtom 
    1420914606            { 
    1421014607            if ( state.backtracking==0 ) { 
    1421114608               before(grammarAccess.getExtRuleAccess().getElementsAtomParserRuleCall_4_0_0());  
    1421214609            } 
    14213             pushFollow(FOLLOW_ruleAtom_in_rule__ExtRule__ElementsAssignment_4_09239); 
     14610            pushFollow(FOLLOW_ruleAtom_in_rule__ExtRule__ElementsAssignment_4_09501); 
    1421414611            ruleAtom(); 
    1421514612 
     
    1423114628        } 
    1423214629        finally { 
    14233             if ( state.backtracking>0 ) { memoize(input, 276, rule__ExtRule__ElementsAssignment_4_0_StartIndex); } 
     14630            if ( state.backtracking>0 ) { memoize(input, 284, rule__ExtRule__ElementsAssignment_4_0_StartIndex); } 
    1423414631 
    1423514632                restoreStackSize(stackSize); 
     
    1424214639 
    1424314640    // $ANTLR start "rule__GlobalCombinator__LogicAssignment_1" 
    14244     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4567:1: rule__GlobalCombinator__LogicAssignment_1 : ( RULE_LOGIC ) ; 
     14641    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4694:1: rule__GlobalCombinator__LogicAssignment_1 : ( RULE_LOGIC ) ; 
    1424514642    public final void rule__GlobalCombinator__LogicAssignment_1() throws RecognitionException { 
    1424614643        int rule__GlobalCombinator__LogicAssignment_1_StartIndex = input.index(); 
     
    1424914646             
    1425014647        try { 
    14251             if ( state.backtracking>0 && alreadyParsedRule(input, 277) ) { return ; } 
    14252             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4571:1: ( ( RULE_LOGIC ) ) 
    14253             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4572:1: ( RULE_LOGIC ) 
    14254             { 
    14255             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4572:1: ( RULE_LOGIC ) 
    14256             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4573:1: RULE_LOGIC 
     14648            if ( state.backtracking>0 && alreadyParsedRule(input, 285) ) { return ; } 
     14649            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4698:1: ( ( RULE_LOGIC ) ) 
     14650            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4699:1: ( RULE_LOGIC ) 
     14651            { 
     14652            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4699:1: ( RULE_LOGIC ) 
     14653            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4700:1: RULE_LOGIC 
    1425714654            { 
    1425814655            if ( state.backtracking==0 ) { 
    1425914656               before(grammarAccess.getGlobalCombinatorAccess().getLogicLOGICTerminalRuleCall_1_0());  
    1426014657            } 
    14261             match(input,RULE_LOGIC,FOLLOW_RULE_LOGIC_in_rule__GlobalCombinator__LogicAssignment_19270); if (state.failed) return ; 
     14658            match(input,RULE_LOGIC,FOLLOW_RULE_LOGIC_in_rule__GlobalCombinator__LogicAssignment_19532); if (state.failed) return ; 
    1426214659            if ( state.backtracking==0 ) { 
    1426314660               after(grammarAccess.getGlobalCombinatorAccess().getLogicLOGICTerminalRuleCall_1_0());  
     
    1427514672        } 
    1427614673        finally { 
    14277             if ( state.backtracking>0 ) { memoize(input, 277, rule__GlobalCombinator__LogicAssignment_1_StartIndex); } 
     14674            if ( state.backtracking>0 ) { memoize(input, 285, rule__GlobalCombinator__LogicAssignment_1_StartIndex); } 
    1427814675 
    1427914676                restoreStackSize(stackSize); 
     
    1428614683 
    1428714684    // $ANTLR start "rule__RuleCombinator__NameAssignment_0_2" 
    14288     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4582:1: rule__RuleCombinator__NameAssignment_0_2 : ( RULE_ID ) ; 
     14685    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4709:1: rule__RuleCombinator__NameAssignment_0_2 : ( RULE_ID ) ; 
    1428914686    public final void rule__RuleCombinator__NameAssignment_0_2() throws RecognitionException { 
    1429014687        int rule__RuleCombinator__NameAssignment_0_2_StartIndex = input.index(); 
     
    1429314690             
    1429414691        try { 
    14295             if ( state.backtracking>0 && alreadyParsedRule(input, 278) ) { return ; } 
    14296             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4586:1: ( ( RULE_ID ) ) 
    14297             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4587:1: ( RULE_ID ) 
    14298             { 
    14299             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4587:1: ( RULE_ID ) 
    14300             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4588:1: RULE_ID 
     14692            if ( state.backtracking>0 && alreadyParsedRule(input, 286) ) { return ; } 
     14693            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4713:1: ( ( RULE_ID ) ) 
     14694            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4714:1: ( RULE_ID ) 
     14695            { 
     14696            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4714:1: ( RULE_ID ) 
     14697            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4715:1: RULE_ID 
    1430114698            { 
    1430214699            if ( state.backtracking==0 ) { 
    1430314700               before(grammarAccess.getRuleCombinatorAccess().getNameIDTerminalRuleCall_0_2_0());  
    1430414701            } 
    14305             match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__RuleCombinator__NameAssignment_0_29301); if (state.failed) return ; 
     14702            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__RuleCombinator__NameAssignment_0_29563); if (state.failed) return ; 
    1430614703            if ( state.backtracking==0 ) { 
    1430714704               after(grammarAccess.getRuleCombinatorAccess().getNameIDTerminalRuleCall_0_2_0());  
     
    1431914716        } 
    1432014717        finally { 
    14321             if ( state.backtracking>0 ) { memoize(input, 278, rule__RuleCombinator__NameAssignment_0_2_StartIndex); } 
     14718            if ( state.backtracking>0 ) { memoize(input, 286, rule__RuleCombinator__NameAssignment_0_2_StartIndex); } 
    1432214719 
    1432314720                restoreStackSize(stackSize); 
     
    1433014727 
    1433114728    // $ANTLR start "rule__RuleCombinator__LogicAssignment_1" 
    14332     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4597:1: rule__RuleCombinator__LogicAssignment_1 : ( RULE_LOGIC ) ; 
     14729    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4724:1: rule__RuleCombinator__LogicAssignment_1 : ( RULE_LOGIC ) ; 
    1433314730    public final void rule__RuleCombinator__LogicAssignment_1() throws RecognitionException { 
    1433414731        int rule__RuleCombinator__LogicAssignment_1_StartIndex = input.index(); 
     
    1433714734             
    1433814735        try { 
    14339             if ( state.backtracking>0 && alreadyParsedRule(input, 279) ) { return ; } 
    14340             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4601:1: ( ( RULE_LOGIC ) ) 
    14341             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4602:1: ( RULE_LOGIC ) 
    14342             { 
    14343             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4602:1: ( RULE_LOGIC ) 
    14344             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4603:1: RULE_LOGIC 
     14736            if ( state.backtracking>0 && alreadyParsedRule(input, 287) ) { return ; } 
     14737            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4728:1: ( ( RULE_LOGIC ) ) 
     14738            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4729:1: ( RULE_LOGIC ) 
     14739            { 
     14740            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4729:1: ( RULE_LOGIC ) 
     14741            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4730:1: RULE_LOGIC 
    1434514742            { 
    1434614743            if ( state.backtracking==0 ) { 
    1434714744               before(grammarAccess.getRuleCombinatorAccess().getLogicLOGICTerminalRuleCall_1_0());  
    1434814745            } 
    14349             match(input,RULE_LOGIC,FOLLOW_RULE_LOGIC_in_rule__RuleCombinator__LogicAssignment_19332); if (state.failed) return ; 
     14746            match(input,RULE_LOGIC,FOLLOW_RULE_LOGIC_in_rule__RuleCombinator__LogicAssignment_19594); if (state.failed) return ; 
    1435014747            if ( state.backtracking==0 ) { 
    1435114748               after(grammarAccess.getRuleCombinatorAccess().getLogicLOGICTerminalRuleCall_1_0());  
     
    1436314760        } 
    1436414761        finally { 
    14365             if ( state.backtracking>0 ) { memoize(input, 279, rule__RuleCombinator__LogicAssignment_1_StartIndex); } 
     14762            if ( state.backtracking>0 ) { memoize(input, 287, rule__RuleCombinator__LogicAssignment_1_StartIndex); } 
    1436614763 
    1436714764                restoreStackSize(stackSize); 
     
    1437414771 
    1437514772    // $ANTLR start "rule__RuleCombinator__LABELAssignment_2_1" 
    14376     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4612:1: rule__RuleCombinator__LABELAssignment_2_1 : ( RULE_STRING ) ; 
     14773    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4739:1: rule__RuleCombinator__LABELAssignment_2_1 : ( RULE_STRING ) ; 
    1437714774    public final void rule__RuleCombinator__LABELAssignment_2_1() throws RecognitionException { 
    1437814775        int rule__RuleCombinator__LABELAssignment_2_1_StartIndex = input.index(); 
     
    1438114778             
    1438214779        try { 
    14383             if ( state.backtracking>0 && alreadyParsedRule(input, 280) ) { return ; } 
    14384             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4616:1: ( ( RULE_STRING ) ) 
    14385             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4617:1: ( RULE_STRING ) 
    14386             { 
    14387             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4617:1: ( RULE_STRING ) 
    14388             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4618:1: RULE_STRING 
     14780            if ( state.backtracking>0 && alreadyParsedRule(input, 288) ) { return ; } 
     14781            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4743:1: ( ( RULE_STRING ) ) 
     14782            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4744:1: ( RULE_STRING ) 
     14783            { 
     14784            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4744:1: ( RULE_STRING ) 
     14785            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4745:1: RULE_STRING 
    1438914786            { 
    1439014787            if ( state.backtracking==0 ) { 
    1439114788               before(grammarAccess.getRuleCombinatorAccess().getLABELSTRINGTerminalRuleCall_2_1_0());  
    1439214789            } 
    14393             match(input,RULE_STRING,FOLLOW_RULE_STRING_in_rule__RuleCombinator__LABELAssignment_2_19363); if (state.failed) return ; 
     14790            match(input,RULE_STRING,FOLLOW_RULE_STRING_in_rule__RuleCombinator__LABELAssignment_2_19625); if (state.failed) return ; 
    1439414791            if ( state.backtracking==0 ) { 
    1439514792               after(grammarAccess.getRuleCombinatorAccess().getLABELSTRINGTerminalRuleCall_2_1_0());  
     
    1440714804        } 
    1440814805        finally { 
    14409             if ( state.backtracking>0 ) { memoize(input, 280, rule__RuleCombinator__LABELAssignment_2_1_StartIndex); } 
     14806            if ( state.backtracking>0 ) { memoize(input, 288, rule__RuleCombinator__LABELAssignment_2_1_StartIndex); } 
    1441014807 
    1441114808                restoreStackSize(stackSize); 
     
    1441814815 
    1441914816    // $ANTLR start "rule__HookCombinator__NameAssignment_2" 
    14420     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4627:1: rule__HookCombinator__NameAssignment_2 : ( RULE_ID ) ; 
     14817    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4754:1: rule__HookCombinator__NameAssignment_2 : ( RULE_ID ) ; 
    1442114818    public final void rule__HookCombinator__NameAssignment_2() throws RecognitionException { 
    1442214819        int rule__HookCombinator__NameAssignment_2_StartIndex = input.index(); 
     
    1442514822             
    1442614823        try { 
    14427             if ( state.backtracking>0 && alreadyParsedRule(input, 281) ) { return ; } 
    14428             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4631:1: ( ( RULE_ID ) ) 
    14429             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4632:1: ( RULE_ID ) 
    14430             { 
    14431             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4632:1: ( RULE_ID ) 
    14432             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4633:1: RULE_ID 
     14824            if ( state.backtracking>0 && alreadyParsedRule(input, 289) ) { return ; } 
     14825            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4758:1: ( ( RULE_ID ) ) 
     14826            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4759:1: ( RULE_ID ) 
     14827            { 
     14828            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4759:1: ( RULE_ID ) 
     14829            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4760:1: RULE_ID 
    1443314830            { 
    1443414831            if ( state.backtracking==0 ) { 
    1443514832               before(grammarAccess.getHookCombinatorAccess().getNameIDTerminalRuleCall_2_0());  
    1443614833            } 
    14437             match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__HookCombinator__NameAssignment_29394); if (state.failed) return ; 
     14834            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__HookCombinator__NameAssignment_29656); if (state.failed) return ; 
    1443814835            if ( state.backtracking==0 ) { 
    1443914836               after(grammarAccess.getHookCombinatorAccess().getNameIDTerminalRuleCall_2_0());  
     
    1445114848        } 
    1445214849        finally { 
    14453             if ( state.backtracking>0 ) { memoize(input, 281, rule__HookCombinator__NameAssignment_2_StartIndex); } 
     14850            if ( state.backtracking>0 ) { memoize(input, 289, rule__HookCombinator__NameAssignment_2_StartIndex); } 
    1445414851 
    1445514852                restoreStackSize(stackSize); 
     
    1446214859 
    1446314860    // $ANTLR start "rule__HookCombinator__RuleextAssignment_4" 
    14464     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4642:1: rule__HookCombinator__RuleextAssignment_4 : ( RULE_INT ) ; 
     14861    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4769:1: rule__HookCombinator__RuleextAssignment_4 : ( RULE_INT ) ; 
    1446514862    public final void rule__HookCombinator__RuleextAssignment_4() throws RecognitionException { 
    1446614863        int rule__HookCombinator__RuleextAssignment_4_StartIndex = input.index(); 
     
    1446914866             
    1447014867        try { 
    14471             if ( state.backtracking>0 && alreadyParsedRule(input, 282) ) { return ; } 
    14472             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4646:1: ( ( RULE_INT ) ) 
    14473             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4647:1: ( RULE_INT ) 
    14474             { 
    14475             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4647:1: ( RULE_INT ) 
    14476             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4648:1: RULE_INT 
     14868            if ( state.backtracking>0 && alreadyParsedRule(input, 290) ) { return ; } 
     14869            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4773:1: ( ( RULE_INT ) ) 
     14870            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4774:1: ( RULE_INT ) 
     14871            { 
     14872            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4774:1: ( RULE_INT ) 
     14873            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4775:1: RULE_INT 
    1447714874            { 
    1447814875            if ( state.backtracking==0 ) { 
    1447914876               before(grammarAccess.getHookCombinatorAccess().getRuleextINTTerminalRuleCall_4_0());  
    1448014877            } 
    14481             match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__HookCombinator__RuleextAssignment_49425); if (state.failed) return ; 
     14878            match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__HookCombinator__RuleextAssignment_49687); if (state.failed) return ; 
    1448214879            if ( state.backtracking==0 ) { 
    1448314880               after(grammarAccess.getHookCombinatorAccess().getRuleextINTTerminalRuleCall_4_0());  
     
    1449514892        } 
    1449614893        finally { 
    14497             if ( state.backtracking>0 ) { memoize(input, 282, rule__HookCombinator__RuleextAssignment_4_StartIndex); } 
     14894            if ( state.backtracking>0 ) { memoize(input, 290, rule__HookCombinator__RuleextAssignment_4_StartIndex); } 
    1449814895 
    1449914896                restoreStackSize(stackSize); 
     
    1450614903 
    1450714904    // $ANTLR start "rule__HookCombinator__LogicAssignment_6" 
    14508     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4657:1: rule__HookCombinator__LogicAssignment_6 : ( RULE_LOGIC ) ; 
     14905    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4784:1: rule__HookCombinator__LogicAssignment_6 : ( RULE_LOGIC ) ; 
    1450914906    public final void rule__HookCombinator__LogicAssignment_6() throws RecognitionException { 
    1451014907        int rule__HookCombinator__LogicAssignment_6_StartIndex = input.index(); 
     
    1451314910             
    1451414911        try { 
    14515             if ( state.backtracking>0 && alreadyParsedRule(input, 283) ) { return ; } 
    14516             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4661:1: ( ( RULE_LOGIC ) ) 
    14517             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4662:1: ( RULE_LOGIC ) 
    14518             { 
    14519             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4662:1: ( RULE_LOGIC ) 
    14520             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4663:1: RULE_LOGIC 
     14912            if ( state.backtracking>0 && alreadyParsedRule(input, 291) ) { return ; } 
     14913            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4788:1: ( ( RULE_LOGIC ) ) 
     14914            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4789:1: ( RULE_LOGIC ) 
     14915            { 
     14916            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4789:1: ( RULE_LOGIC ) 
     14917            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4790:1: RULE_LOGIC 
    1452114918            { 
    1452214919            if ( state.backtracking==0 ) { 
    1452314920               before(grammarAccess.getHookCombinatorAccess().getLogicLOGICTerminalRuleCall_6_0());  
    1452414921            } 
    14525             match(input,RULE_LOGIC,FOLLOW_RULE_LOGIC_in_rule__HookCombinator__LogicAssignment_69456); if (state.failed) return ; 
     14922            match(input,RULE_LOGIC,FOLLOW_RULE_LOGIC_in_rule__HookCombinator__LogicAssignment_69718); if (state.failed) return ; 
    1452614923            if ( state.backtracking==0 ) { 
    1452714924               after(grammarAccess.getHookCombinatorAccess().getLogicLOGICTerminalRuleCall_6_0());  
     
    1453914936        } 
    1454014937        finally { 
    14541             if ( state.backtracking>0 ) { memoize(input, 283, rule__HookCombinator__LogicAssignment_6_StartIndex); } 
     14938            if ( state.backtracking>0 ) { memoize(input, 291, rule__HookCombinator__LogicAssignment_6_StartIndex); } 
    1454214939 
    1454314940                restoreStackSize(stackSize); 
     
    1455014947 
    1455114948    // $ANTLR start "rule__HookCombinator__LABELAssignment_7_1" 
    14552     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4672:1: rule__HookCombinator__LABELAssignment_7_1 : ( RULE_STRING ) ; 
     14949    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4799:1: rule__HookCombinator__LABELAssignment_7_1 : ( RULE_STRING ) ; 
    1455314950    public final void rule__HookCombinator__LABELAssignment_7_1() throws RecognitionException { 
    1455414951        int rule__HookCombinator__LABELAssignment_7_1_StartIndex = input.index(); 
     
    1455714954             
    1455814955        try { 
    14559             if ( state.backtracking>0 && alreadyParsedRule(input, 284) ) { return ; } 
    14560             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4676:1: ( ( RULE_STRING ) ) 
    14561             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4677:1: ( RULE_STRING ) 
    14562             { 
    14563             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4677:1: ( RULE_STRING ) 
    14564             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4678:1: RULE_STRING 
     14956            if ( state.backtracking>0 && alreadyParsedRule(input, 292) ) { return ; } 
     14957            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4803:1: ( ( RULE_STRING ) ) 
     14958            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4804:1: ( RULE_STRING ) 
     14959            { 
     14960            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4804:1: ( RULE_STRING ) 
     14961            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4805:1: RULE_STRING 
    1456514962            { 
    1456614963            if ( state.backtracking==0 ) { 
    1456714964               before(grammarAccess.getHookCombinatorAccess().getLABELSTRINGTerminalRuleCall_7_1_0());  
    1456814965            } 
    14569             match(input,RULE_STRING,FOLLOW_RULE_STRING_in_rule__HookCombinator__LABELAssignment_7_19487); if (state.failed) return ; 
     14966            match(input,RULE_STRING,FOLLOW_RULE_STRING_in_rule__HookCombinator__LABELAssignment_7_19749); if (state.failed) return ; 
    1457014967            if ( state.backtracking==0 ) { 
    1457114968               after(grammarAccess.getHookCombinatorAccess().getLABELSTRINGTerminalRuleCall_7_1_0());  
     
    1458314980        } 
    1458414981        finally { 
    14585             if ( state.backtracking>0 ) { memoize(input, 284, rule__HookCombinator__LABELAssignment_7_1_StartIndex); } 
     14982            if ( state.backtracking>0 ) { memoize(input, 292, rule__HookCombinator__LABELAssignment_7_1_StartIndex); } 
    1458614983 
    1458714984                restoreStackSize(stackSize); 
     
    1459414991 
    1459514992    // $ANTLR start "rule__DefinitionList__SingleDefinitionAssignment_0" 
    14596     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4687:1: rule__DefinitionList__SingleDefinitionAssignment_0 : ( ruleSingleDefinition ) ; 
     14993    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4814:1: rule__DefinitionList__SingleDefinitionAssignment_0 : ( ruleSingleDefinition ) ; 
    1459714994    public final void rule__DefinitionList__SingleDefinitionAssignment_0() throws RecognitionException { 
    1459814995        int rule__DefinitionList__SingleDefinitionAssignment_0_StartIndex = input.index(); 
     
    1460114998             
    1460214999        try { 
    14603             if ( state.backtracking>0 && alreadyParsedRule(input, 285) ) { return ; } 
    14604             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4691:1: ( ( ruleSingleDefinition ) ) 
    14605             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4692:1: ( ruleSingleDefinition ) 
    14606             { 
    14607             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4692:1: ( ruleSingleDefinition ) 
    14608             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4693:1: ruleSingleDefinition 
     15000            if ( state.backtracking>0 && alreadyParsedRule(input, 293) ) { return ; } 
     15001            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4818:1: ( ( ruleSingleDefinition ) ) 
     15002            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4819:1: ( ruleSingleDefinition ) 
     15003            { 
     15004            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4819:1: ( ruleSingleDefinition ) 
     15005            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4820:1: ruleSingleDefinition 
    1460915006            { 
    1461015007            if ( state.backtracking==0 ) { 
    1461115008               before(grammarAccess.getDefinitionListAccess().getSingleDefinitionSingleDefinitionParserRuleCall_0_0());  
    1461215009            } 
    14613             pushFollow(FOLLOW_ruleSingleDefinition_in_rule__DefinitionList__SingleDefinitionAssignment_09518); 
     15010            pushFollow(FOLLOW_ruleSingleDefinition_in_rule__DefinitionList__SingleDefinitionAssignment_09780); 
    1461415011            ruleSingleDefinition(); 
    1461515012 
     
    1463115028        } 
    1463215029        finally { 
    14633             if ( state.backtracking>0 ) { memoize(input, 285, rule__DefinitionList__SingleDefinitionAssignment_0_StartIndex); } 
     15030            if ( state.backtracking>0 ) { memoize(input, 293, rule__DefinitionList__SingleDefinitionAssignment_0_StartIndex); } 
    1463415031 
    1463515032                restoreStackSize(stackSize); 
     
    1464215039 
    1464315040    // $ANTLR start "rule__DefinitionList__SingleDefinitionAssignment_1_1" 
    14644     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4702:1: rule__DefinitionList__SingleDefinitionAssignment_1_1 : ( ruleSingleDefinition ) ; 
     15041    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4829:1: rule__DefinitionList__SingleDefinitionAssignment_1_1 : ( ruleSingleDefinition ) ; 
    1464515042    public final void rule__DefinitionList__SingleDefinitionAssignment_1_1() throws RecognitionException { 
    1464615043        int rule__DefinitionList__SingleDefinitionAssignment_1_1_StartIndex = input.index(); 
     
    1464915046             
    1465015047        try { 
    14651             if ( state.backtracking>0 && alreadyParsedRule(input, 286) ) { return ; } 
    14652             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4706:1: ( ( ruleSingleDefinition ) ) 
    14653             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4707:1: ( ruleSingleDefinition ) 
    14654             { 
    14655             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4707:1: ( ruleSingleDefinition ) 
    14656             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4708:1: ruleSingleDefinition 
     15048            if ( state.backtracking>0 && alreadyParsedRule(input, 294) ) { return ; } 
     15049            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4833:1: ( ( ruleSingleDefinition ) ) 
     15050            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4834:1: ( ruleSingleDefinition ) 
     15051            { 
     15052            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4834:1: ( ruleSingleDefinition ) 
     15053            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4835:1: ruleSingleDefinition 
    1465715054            { 
    1465815055            if ( state.backtracking==0 ) { 
    1465915056               before(grammarAccess.getDefinitionListAccess().getSingleDefinitionSingleDefinitionParserRuleCall_1_1_0());  
    1466015057            } 
    14661             pushFollow(FOLLOW_ruleSingleDefinition_in_rule__DefinitionList__SingleDefinitionAssignment_1_19549); 
     15058            pushFollow(FOLLOW_ruleSingleDefinition_in_rule__DefinitionList__SingleDefinitionAssignment_1_19811); 
    1466215059            ruleSingleDefinition(); 
    1466315060 
     
    1467915076        } 
    1468015077        finally { 
    14681             if ( state.backtracking>0 ) { memoize(input, 286, rule__DefinitionList__SingleDefinitionAssignment_1_1_StartIndex); } 
     15078            if ( state.backtracking>0 ) { memoize(input, 294, rule__DefinitionList__SingleDefinitionAssignment_1_1_StartIndex); } 
    1468215079 
    1468315080                restoreStackSize(stackSize); 
     
    1469015087 
    1469115088    // $ANTLR start "rule__SingleDefinition__TermsAssignment" 
    14692     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4717:1: rule__SingleDefinition__TermsAssignment : ( ruleTerm ) ; 
     15089    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4844:1: rule__SingleDefinition__TermsAssignment : ( ruleTerm ) ; 
    1469315090    public final void rule__SingleDefinition__TermsAssignment() throws RecognitionException { 
    1469415091        int rule__SingleDefinition__TermsAssignment_StartIndex = input.index(); 
     
    1469715094             
    1469815095        try { 
    14699             if ( state.backtracking>0 && alreadyParsedRule(input, 287) ) { return ; } 
    14700             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4721:1: ( ( ruleTerm ) ) 
    14701             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4722:1: ( ruleTerm ) 
    14702             { 
    14703             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4722:1: ( ruleTerm ) 
    14704             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4723:1: ruleTerm 
     15096            if ( state.backtracking>0 && alreadyParsedRule(input, 295) ) { return ; } 
     15097            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4848:1: ( ( ruleTerm ) ) 
     15098            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4849:1: ( ruleTerm ) 
     15099            { 
     15100            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4849:1: ( ruleTerm ) 
     15101            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4850:1: ruleTerm 
    1470515102            { 
    1470615103            if ( state.backtracking==0 ) { 
    1470715104               before(grammarAccess.getSingleDefinitionAccess().getTermsTermParserRuleCall_0());  
    1470815105            } 
    14709             pushFollow(FOLLOW_ruleTerm_in_rule__SingleDefinition__TermsAssignment9580); 
     15106            pushFollow(FOLLOW_ruleTerm_in_rule__SingleDefinition__TermsAssignment9842); 
    1471015107            ruleTerm(); 
    1471115108 
     
    1472715124        } 
    1472815125        finally { 
    14729             if ( state.backtracking>0 ) { memoize(input, 287, rule__SingleDefinition__TermsAssignment_StartIndex); } 
     15126            if ( state.backtracking>0 ) { memoize(input, 295, rule__SingleDefinition__TermsAssignment_StartIndex); } 
    1473015127 
    1473115128                restoreStackSize(stackSize); 
     
    1473815135 
    1473915136    // $ANTLR start "rule__Term__TermAtomAssignment_0" 
    14740     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4732:1: rule__Term__TermAtomAssignment_0 : ( ruleAtom ) ; 
     15137    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4859:1: rule__Term__TermAtomAssignment_0 : ( ruleAtom ) ; 
    1474115138    public final void rule__Term__TermAtomAssignment_0() throws RecognitionException { 
    1474215139        int rule__Term__TermAtomAssignment_0_StartIndex = input.index(); 
     
    1474515142             
    1474615143        try { 
    14747             if ( state.backtracking>0 && alreadyParsedRule(input, 288) ) { return ; } 
    14748             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4736:1: ( ( ruleAtom ) ) 
    14749             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4737:1: ( ruleAtom ) 
    14750             { 
    14751             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4737:1: ( ruleAtom ) 
    14752             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4738:1: ruleAtom 
     15144            if ( state.backtracking>0 && alreadyParsedRule(input, 296) ) { return ; } 
     15145            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4863:1: ( ( ruleAtom ) ) 
     15146            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4864:1: ( ruleAtom ) 
     15147            { 
     15148            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4864:1: ( ruleAtom ) 
     15149            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4865:1: ruleAtom 
    1475315150            { 
    1475415151            if ( state.backtracking==0 ) { 
    1475515152               before(grammarAccess.getTermAccess().getTermAtomAtomParserRuleCall_0_0());  
    1475615153            } 
    14757             pushFollow(FOLLOW_ruleAtom_in_rule__Term__TermAtomAssignment_09611); 
     15154            pushFollow(FOLLOW_ruleAtom_in_rule__Term__TermAtomAssignment_09873); 
    1475815155            ruleAtom(); 
    1475915156 
     
    1477515172        } 
    1477615173        finally { 
    14777             if ( state.backtracking>0 ) { memoize(input, 288, rule__Term__TermAtomAssignment_0_StartIndex); } 
     15174            if ( state.backtracking>0 ) { memoize(input, 296, rule__Term__TermAtomAssignment_0_StartIndex); } 
    1477815175 
    1477915176                restoreStackSize(stackSize); 
     
    1478615183 
    1478715184    // $ANTLR start "rule__Term__TermGroupedSequenceAssignment_1" 
    14788     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4747:1: rule__Term__TermGroupedSequenceAssignment_1 : ( ruleGroupedSequence ) ; 
     15185    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4874:1: rule__Term__TermGroupedSequenceAssignment_1 : ( ruleGroupedSequence ) ; 
    1478915186    public final void rule__Term__TermGroupedSequenceAssignment_1() throws RecognitionException { 
    1479015187        int rule__Term__TermGroupedSequenceAssignment_1_StartIndex = input.index(); 
     
    1479315190             
    1479415191        try { 
    14795             if ( state.backtracking>0 && alreadyParsedRule(input, 289) ) { return ; } 
    14796             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4751:1: ( ( ruleGroupedSequence ) ) 
    14797             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4752:1: ( ruleGroupedSequence ) 
    14798             { 
    14799             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4752:1: ( ruleGroupedSequence ) 
    14800             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4753:1: ruleGroupedSequence 
     15192            if ( state.backtracking>0 && alreadyParsedRule(input, 297) ) { return ; } 
     15193            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4878:1: ( ( ruleGroupedSequence ) ) 
     15194            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4879:1: ( ruleGroupedSequence ) 
     15195            { 
     15196            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4879:1: ( ruleGroupedSequence ) 
     15197            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4880:1: ruleGroupedSequence 
    1480115198            { 
    1480215199            if ( state.backtracking==0 ) { 
    1480315200               before(grammarAccess.getTermAccess().getTermGroupedSequenceGroupedSequenceParserRuleCall_1_0());  
    1480415201            } 
    14805             pushFollow(FOLLOW_ruleGroupedSequence_in_rule__Term__TermGroupedSequenceAssignment_19642); 
     15202            pushFollow(FOLLOW_ruleGroupedSequence_in_rule__Term__TermGroupedSequenceAssignment_19904); 
    1480615203            ruleGroupedSequence(); 
    1480715204 
     
    1482315220        } 
    1482415221        finally { 
    14825             if ( state.backtracking>0 ) { memoize(input, 289, rule__Term__TermGroupedSequenceAssignment_1_StartIndex); } 
     15222            if ( state.backtracking>0 ) { memoize(input, 297, rule__Term__TermGroupedSequenceAssignment_1_StartIndex); } 
    1482615223 
    1482715224                restoreStackSize(stackSize); 
     
    1483415231 
    1483515232    // $ANTLR start "rule__Term__TermOptionalSequenceAssignment_2" 
    14836     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4762:1: rule__Term__TermOptionalSequenceAssignment_2 : ( ruleOptionalSequence ) ; 
     15233    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4889:1: rule__Term__TermOptionalSequenceAssignment_2 : ( ruleOptionalSequence ) ; 
    1483715234    public final void rule__Term__TermOptionalSequenceAssignment_2() throws RecognitionException { 
    1483815235        int rule__Term__TermOptionalSequenceAssignment_2_StartIndex = input.index(); 
     
    1484115238             
    1484215239        try { 
    14843             if ( state.backtracking>0 && alreadyParsedRule(input, 290) ) { return ; } 
    14844             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4766:1: ( ( ruleOptionalSequence ) ) 
    14845             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4767:1: ( ruleOptionalSequence ) 
    14846             { 
    14847             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4767:1: ( ruleOptionalSequence ) 
    14848             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4768:1: ruleOptionalSequence 
     15240            if ( state.backtracking>0 && alreadyParsedRule(input, 298) ) { return ; } 
     15241            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4893:1: ( ( ruleOptionalSequence ) ) 
     15242            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4894:1: ( ruleOptionalSequence ) 
     15243            { 
     15244            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4894:1: ( ruleOptionalSequence ) 
     15245            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4895:1: ruleOptionalSequence 
    1484915246            { 
    1485015247            if ( state.backtracking==0 ) { 
    1485115248               before(grammarAccess.getTermAccess().getTermOptionalSequenceOptionalSequenceParserRuleCall_2_0());  
    1485215249            } 
    14853             pushFollow(FOLLOW_ruleOptionalSequence_in_rule__Term__TermOptionalSequenceAssignment_29673); 
     15250            pushFollow(FOLLOW_ruleOptionalSequence_in_rule__Term__TermOptionalSequenceAssignment_29935); 
    1485415251            ruleOptionalSequence(); 
    1485515252 
     
    1487115268        } 
    1487215269        finally { 
    14873             if ( state.backtracking>0 ) { memoize(input, 290, rule__Term__TermOptionalSequenceAssignment_2_StartIndex); } 
     15270            if ( state.backtracking>0 ) { memoize(input, 298, rule__Term__TermOptionalSequenceAssignment_2_StartIndex); } 
    1487415271 
    1487515272                restoreStackSize(stackSize); 
     
    1488215279 
    1488315280    // $ANTLR start "rule__Term__TermRepeatedSequenceAssignment_3" 
    14884     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4777:1: rule__Term__TermRepeatedSequenceAssignment_3 : ( ruleRepeatedSequence ) ; 
     15281    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4904:1: rule__Term__TermRepeatedSequenceAssignment_3 : ( ruleRepeatedSequence ) ; 
    1488515282    public final void rule__Term__TermRepeatedSequenceAssignment_3() throws RecognitionException { 
    1488615283        int rule__Term__TermRepeatedSequenceAssignment_3_StartIndex = input.index(); 
     
    1488915286             
    1489015287        try { 
    14891             if ( state.backtracking>0 && alreadyParsedRule(input, 291) ) { return ; } 
    14892             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4781:1: ( ( ruleRepeatedSequence ) ) 
    14893             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4782:1: ( ruleRepeatedSequence ) 
    14894             { 
    14895             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4782:1: ( ruleRepeatedSequence ) 
    14896             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4783:1: ruleRepeatedSequence 
     15288            if ( state.backtracking>0 && alreadyParsedRule(input, 299) ) { return ; } 
     15289            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4908:1: ( ( ruleRepeatedSequence ) ) 
     15290            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4909:1: ( ruleRepeatedSequence ) 
     15291            { 
     15292            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4909:1: ( ruleRepeatedSequence ) 
     15293            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4910:1: ruleRepeatedSequence 
    1489715294            { 
    1489815295            if ( state.backtracking==0 ) { 
    1489915296               before(grammarAccess.getTermAccess().getTermRepeatedSequenceRepeatedSequenceParserRuleCall_3_0());  
    1490015297            } 
    14901             pushFollow(FOLLOW_ruleRepeatedSequence_in_rule__Term__TermRepeatedSequenceAssignment_39704); 
     15298            pushFollow(FOLLOW_ruleRepeatedSequence_in_rule__Term__TermRepeatedSequenceAssignment_39966); 
    1490215299            ruleRepeatedSequence(); 
    1490315300 
     
    1491915316        } 
    1492015317        finally { 
    14921             if ( state.backtracking>0 ) { memoize(input, 291, rule__Term__TermRepeatedSequenceAssignment_3_StartIndex); } 
     15318            if ( state.backtracking>0 ) { memoize(input, 299, rule__Term__TermRepeatedSequenceAssignment_3_StartIndex); } 
    1492215319 
    1492315320                restoreStackSize(stackSize); 
     
    1493015327 
    1493115328    // $ANTLR start "rule__Atom__AtomStringRuleAssignment_0" 
    14932     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4792:1: rule__Atom__AtomStringRuleAssignment_0 : ( ruleStringRule ) ; 
     15329    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4919:1: rule__Atom__AtomStringRuleAssignment_0 : ( ruleStringRule ) ; 
    1493315330    public final void rule__Atom__AtomStringRuleAssignment_0() throws RecognitionException { 
    1493415331        int rule__Atom__AtomStringRuleAssignment_0_StartIndex = input.index(); 
     
    1493715334             
    1493815335        try { 
    14939             if ( state.backtracking>0 && alreadyParsedRule(input, 292) ) { return ; } 
    14940             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4796:1: ( ( ruleStringRule ) ) 
    14941             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4797:1: ( ruleStringRule ) 
    14942             { 
    14943             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4797:1: ( ruleStringRule ) 
    14944             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4798:1: ruleStringRule 
     15336            if ( state.backtracking>0 && alreadyParsedRule(input, 300) ) { return ; } 
     15337            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4923:1: ( ( ruleStringRule ) ) 
     15338            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4924:1: ( ruleStringRule ) 
     15339            { 
     15340            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4924:1: ( ruleStringRule ) 
     15341            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4925:1: ruleStringRule 
    1494515342            { 
    1494615343            if ( state.backtracking==0 ) { 
    1494715344               before(grammarAccess.getAtomAccess().getAtomStringRuleStringRuleParserRuleCall_0_0());  
    1494815345            } 
    14949             pushFollow(FOLLOW_ruleStringRule_in_rule__Atom__AtomStringRuleAssignment_09735); 
     15346            pushFollow(FOLLOW_ruleStringRule_in_rule__Atom__AtomStringRuleAssignment_09997); 
    1495015347            ruleStringRule(); 
    1495115348 
     
    1496715364        } 
    1496815365        finally { 
    14969             if ( state.backtracking>0 ) { memoize(input, 292, rule__Atom__AtomStringRuleAssignment_0_StartIndex); } 
     15366            if ( state.backtracking>0 ) { memoize(input, 300, rule__Atom__AtomStringRuleAssignment_0_StartIndex); } 
    1497015367 
    1497115368                restoreStackSize(stackSize); 
     
    1497815375 
    1497915376    // $ANTLR start "rule__Atom__AtomRuleReferenceAssignment_1" 
    14980     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4807:1: rule__Atom__AtomRuleReferenceAssignment_1 : ( ruleRuleReference ) ; 
     15377    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4934:1: rule__Atom__AtomRuleReferenceAssignment_1 : ( ruleRuleReference ) ; 
    1498115378    public final void rule__Atom__AtomRuleReferenceAssignment_1() throws RecognitionException { 
    1498215379        int rule__Atom__AtomRuleReferenceAssignment_1_StartIndex = input.index(); 
     
    1498515382             
    1498615383        try { 
    14987             if ( state.backtracking>0 && alreadyParsedRule(input, 293) ) { return ; } 
    14988             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4811:1: ( ( ruleRuleReference ) ) 
    14989             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4812:1: ( ruleRuleReference ) 
    14990             { 
    14991             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4812:1: ( ruleRuleReference ) 
    14992             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4813:1: ruleRuleReference 
     15384            if ( state.backtracking>0 && alreadyParsedRule(input, 301) ) { return ; } 
     15385            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4938:1: ( ( ruleRuleReference ) ) 
     15386            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4939:1: ( ruleRuleReference ) 
     15387            { 
     15388            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4939:1: ( ruleRuleReference ) 
     15389            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4940:1: ruleRuleReference 
    1499315390            { 
    1499415391            if ( state.backtracking==0 ) { 
    1499515392               before(grammarAccess.getAtomAccess().getAtomRuleReferenceRuleReferenceParserRuleCall_1_0());  
    1499615393            } 
    14997             pushFollow(FOLLOW_ruleRuleReference_in_rule__Atom__AtomRuleReferenceAssignment_19766); 
     15394            pushFollow(FOLLOW_ruleRuleReference_in_rule__Atom__AtomRuleReferenceAssignment_110028); 
    1499815395            ruleRuleReference(); 
    1499915396 
     
    1501515412        } 
    1501615413        finally { 
    15017             if ( state.backtracking>0 ) { memoize(input, 293, rule__Atom__AtomRuleReferenceAssignment_1_StartIndex); } 
     15414            if ( state.backtracking>0 ) { memoize(input, 301, rule__Atom__AtomRuleReferenceAssignment_1_StartIndex); } 
    1501815415 
    1501915416                restoreStackSize(stackSize); 
     
    1502615423 
    1502715424    // $ANTLR start "rule__RuleReference__RulerefAssignment" 
    15028     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4822:1: rule__RuleReference__RulerefAssignment : ( ( RULE_ID ) ) ; 
     15425    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4949:1: rule__RuleReference__RulerefAssignment : ( ( RULE_ID ) ) ; 
    1502915426    public final void rule__RuleReference__RulerefAssignment() throws RecognitionException { 
    1503015427        int rule__RuleReference__RulerefAssignment_StartIndex = input.index(); 
     
    1503315430             
    1503415431        try { 
    15035             if ( state.backtracking>0 && alreadyParsedRule(input, 294) ) { return ; } 
    15036             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4826:1: ( ( ( RULE_ID ) ) ) 
    15037             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4827:1: ( ( RULE_ID ) ) 
    15038             { 
    15039             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4827:1: ( ( RULE_ID ) ) 
    15040             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4828:1: ( RULE_ID ) 
     15432            if ( state.backtracking>0 && alreadyParsedRule(input, 302) ) { return ; } 
     15433            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4953:1: ( ( ( RULE_ID ) ) ) 
     15434            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4954:1: ( ( RULE_ID ) ) 
     15435            { 
     15436            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4954:1: ( ( RULE_ID ) ) 
     15437            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4955:1: ( RULE_ID ) 
    1504115438            { 
    1504215439            if ( state.backtracking==0 ) { 
    1504315440               before(grammarAccess.getRuleReferenceAccess().getRulerefRuleCrossReference_0());  
    1504415441            } 
    15045             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4829:1: ( RULE_ID ) 
    15046             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4830:1: RULE_ID 
     15442            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4956:1: ( RULE_ID ) 
     15443            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4957:1: RULE_ID 
    1504715444            { 
    1504815445            if ( state.backtracking==0 ) { 
    1504915446               before(grammarAccess.getRuleReferenceAccess().getRulerefRuleIDTerminalRuleCall_0_1());  
    1505015447            } 
    15051             match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__RuleReference__RulerefAssignment9801); if (state.failed) return ; 
     15448            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__RuleReference__RulerefAssignment10063); if (state.failed) return ; 
    1505215449            if ( state.backtracking==0 ) { 
    1505315450               after(grammarAccess.getRuleReferenceAccess().getRulerefRuleIDTerminalRuleCall_0_1());  
     
    1507115468        } 
    1507215469        finally { 
    15073             if ( state.backtracking>0 ) { memoize(input, 294, rule__RuleReference__RulerefAssignment_StartIndex); } 
     15470            if ( state.backtracking>0 ) { memoize(input, 302, rule__RuleReference__RulerefAssignment_StartIndex); } 
    1507415471 
    1507515472                restoreStackSize(stackSize); 
     
    1508215479 
    1508315480    // $ANTLR start "rule__StringRule__LiteralAssignment_0" 
    15084     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4841:1: rule__StringRule__LiteralAssignment_0 : ( RULE_STRING ) ; 
     15481    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4968:1: rule__StringRule__LiteralAssignment_0 : ( RULE_STRING ) ; 
    1508515482    public final void rule__StringRule__LiteralAssignment_0() throws RecognitionException { 
    1508615483        int rule__StringRule__LiteralAssignment_0_StartIndex = input.index(); 
     
    1508915486             
    1509015487        try { 
    15091             if ( state.backtracking>0 && alreadyParsedRule(input, 295) ) { return ; } 
    15092             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4845:1: ( ( RULE_STRING ) ) 
    15093             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4846:1: ( RULE_STRING ) 
    15094             { 
    15095             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4846:1: ( RULE_STRING ) 
    15096             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4847:1: RULE_STRING 
     15488            if ( state.backtracking>0 && alreadyParsedRule(input, 303) ) { return ; } 
     15489            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4972:1: ( ( RULE_STRING ) ) 
     15490            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4973:1: ( RULE_STRING ) 
     15491            { 
     15492            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4973:1: ( RULE_STRING ) 
     15493            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4974:1: RULE_STRING 
    1509715494            { 
    1509815495            if ( state.backtracking==0 ) { 
    1509915496               before(grammarAccess.getStringRuleAccess().getLiteralSTRINGTerminalRuleCall_0_0());  
    1510015497            } 
    15101             match(input,RULE_STRING,FOLLOW_RULE_STRING_in_rule__StringRule__LiteralAssignment_09836); if (state.failed) return ; 
     15498            match(input,RULE_STRING,FOLLOW_RULE_STRING_in_rule__StringRule__LiteralAssignment_010098); if (state.failed) return ; 
    1510215499            if ( state.backtracking==0 ) { 
    1510315500               after(grammarAccess.getStringRuleAccess().getLiteralSTRINGTerminalRuleCall_0_0());  
     
    1511515512        } 
    1511615513        finally { 
    15117             if ( state.backtracking>0 ) { memoize(input, 295, rule__StringRule__LiteralAssignment_0_StartIndex); } 
     15514            if ( state.backtracking>0 ) { memoize(input, 303, rule__StringRule__LiteralAssignment_0_StartIndex); } 
    1511815515 
    1511915516                restoreStackSize(stackSize); 
     
    1512615523 
    1512715524    // $ANTLR start "rule__StringRule__ColonAssignment_1" 
    15128     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4856:1: rule__StringRule__ColonAssignment_1 : ( RULE_COLON ) ; 
     15525    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4983:1: rule__StringRule__ColonAssignment_1 : ( RULE_COLON ) ; 
    1512915526    public final void rule__StringRule__ColonAssignment_1() throws RecognitionException { 
    1513015527        int rule__StringRule__ColonAssignment_1_StartIndex = input.index(); 
     
    1513315530             
    1513415531        try { 
    15135             if ( state.backtracking>0 && alreadyParsedRule(input, 296) ) { return ; } 
    15136             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4860:1: ( ( RULE_COLON ) ) 
    15137             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4861:1: ( RULE_COLON ) 
    15138             { 
    15139             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4861:1: ( RULE_COLON ) 
    15140             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4862:1: RULE_COLON 
     15532            if ( state.backtracking>0 && alreadyParsedRule(input, 304) ) { return ; } 
     15533            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4987:1: ( ( RULE_COLON ) ) 
     15534            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4988:1: ( RULE_COLON ) 
     15535            { 
     15536            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4988:1: ( RULE_COLON ) 
     15537            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4989:1: RULE_COLON 
    1514115538            { 
    1514215539            if ( state.backtracking==0 ) { 
    1514315540               before(grammarAccess.getStringRuleAccess().getColonCOLONTerminalRuleCall_1_0());  
    1514415541            } 
    15145             match(input,RULE_COLON,FOLLOW_RULE_COLON_in_rule__StringRule__ColonAssignment_19867); if (state.failed) return ; 
     15542            match(input,RULE_COLON,FOLLOW_RULE_COLON_in_rule__StringRule__ColonAssignment_110129); if (state.failed) return ; 
    1514615543            if ( state.backtracking==0 ) { 
    1514715544               after(grammarAccess.getStringRuleAccess().getColonCOLONTerminalRuleCall_1_0());  
     
    1515915556        } 
    1516015557        finally { 
    15161             if ( state.backtracking>0 ) { memoize(input, 296, rule__StringRule__ColonAssignment_1_StartIndex); } 
     15558            if ( state.backtracking>0 ) { memoize(input, 304, rule__StringRule__ColonAssignment_1_StartIndex); } 
    1516215559 
    1516315560                restoreStackSize(stackSize); 
     
    1517015567 
    1517115568    // $ANTLR start "rule__GroupedSequence__DefinitionListAssignment_1" 
    15172     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4871:1: rule__GroupedSequence__DefinitionListAssignment_1 : ( ruleDefinitionList ) ; 
     15569    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4998:1: rule__GroupedSequence__DefinitionListAssignment_1 : ( ruleDefinitionList ) ; 
    1517315570    public final void rule__GroupedSequence__DefinitionListAssignment_1() throws RecognitionException { 
    1517415571        int rule__GroupedSequence__DefinitionListAssignment_1_StartIndex = input.index(); 
     
    1517715574             
    1517815575        try { 
    15179             if ( state.backtracking>0 && alreadyParsedRule(input, 297) ) { return ; } 
    15180             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4875:1: ( ( ruleDefinitionList ) ) 
    15181             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4876:1: ( ruleDefinitionList ) 
    15182             { 
    15183             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4876:1: ( ruleDefinitionList ) 
    15184             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4877:1: ruleDefinitionList 
     15576            if ( state.backtracking>0 && alreadyParsedRule(input, 305) ) { return ; } 
     15577            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:5002:1: ( ( ruleDefinitionList ) ) 
     15578            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:5003:1: ( ruleDefinitionList ) 
     15579            { 
     15580            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:5003:1: ( ruleDefinitionList ) 
     15581            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:5004:1: ruleDefinitionList 
    1518515582            { 
    1518615583            if ( state.backtracking==0 ) { 
    1518715584               before(grammarAccess.getGroupedSequenceAccess().getDefinitionListDefinitionListParserRuleCall_1_0());  
    1518815585            } 
    15189             pushFollow(FOLLOW_ruleDefinitionList_in_rule__GroupedSequence__DefinitionListAssignment_19898); 
     15586            pushFollow(FOLLOW_ruleDefinitionList_in_rule__GroupedSequence__DefinitionListAssignment_110160); 
    1519015587            ruleDefinitionList(); 
    1519115588 
     
    1520715604        } 
    1520815605        finally { 
    15209             if ( state.backtracking>0 ) { memoize(input, 297, rule__GroupedSequence__DefinitionListAssignment_1_StartIndex); } 
     15606            if ( state.backtracking>0 ) { memoize(input, 305, rule__GroupedSequence__DefinitionListAssignment_1_StartIndex); } 
    1521015607 
    1521115608                restoreStackSize(stackSize); 
     
    1521815615 
    1521915616    // $ANTLR start "rule__OptionalSequence__DefinitionListAssignment_1" 
    15220     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4886:1: rule__OptionalSequence__DefinitionListAssignment_1 : ( ruleDefinitionList ) ; 
     15617    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:5013:1: rule__OptionalSequence__DefinitionListAssignment_1 : ( ruleDefinitionList ) ; 
    1522115618    public final void rule__OptionalSequence__DefinitionListAssignment_1() throws RecognitionException { 
    1522215619        int rule__OptionalSequence__DefinitionListAssignment_1_StartIndex = input.index(); 
     
    1522515622             
    1522615623        try { 
    15227             if ( state.backtracking>0 && alreadyParsedRule(input, 298) ) { return ; } 
    15228             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4890:1: ( ( ruleDefinitionList ) ) 
    15229             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4891:1: ( ruleDefinitionList ) 
    15230             { 
    15231             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4891:1: ( ruleDefinitionList ) 
    15232             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4892:1: ruleDefinitionList 
     15624            if ( state.backtracking>0 && alreadyParsedRule(input, 306) ) { return ; } 
     15625            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:5017:1: ( ( ruleDefinitionList ) ) 
     15626            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:5018:1: ( ruleDefinitionList ) 
     15627            { 
     15628            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:5018:1: ( ruleDefinitionList ) 
     15629            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:5019:1: ruleDefinitionList 
    1523315630            { 
    1523415631            if ( state.backtracking==0 ) { 
    1523515632               before(grammarAccess.getOptionalSequenceAccess().getDefinitionListDefinitionListParserRuleCall_1_0());  
    1523615633            } 
    15237             pushFollow(FOLLOW_ruleDefinitionList_in_rule__OptionalSequence__DefinitionListAssignment_19929); 
     15634            pushFollow(FOLLOW_ruleDefinitionList_in_rule__OptionalSequence__DefinitionListAssignment_110191); 
    1523815635            ruleDefinitionList(); 
    1523915636 
     
    1525515652        } 
    1525615653        finally { 
    15257             if ( state.backtracking>0 ) { memoize(input, 298, rule__OptionalSequence__DefinitionListAssignment_1_StartIndex); } 
     15654            if ( state.backtracking>0 ) { memoize(input, 306, rule__OptionalSequence__DefinitionListAssignment_1_StartIndex); } 
    1525815655 
    1525915656                restoreStackSize(stackSize); 
     
    1526615663 
    1526715664    // $ANTLR start "rule__RepeatedSequence__DefinitionsAssignment_1" 
    15268     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4901:1: rule__RepeatedSequence__DefinitionsAssignment_1 : ( ruleDefinitionList ) ; 
     15665    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:5028:1: rule__RepeatedSequence__DefinitionsAssignment_1 : ( ruleDefinitionList ) ; 
    1526915666    public final void rule__RepeatedSequence__DefinitionsAssignment_1() throws RecognitionException { 
    1527015667        int rule__RepeatedSequence__DefinitionsAssignment_1_StartIndex = input.index(); 
     
    1527315670             
    1527415671        try { 
    15275             if ( state.backtracking>0 && alreadyParsedRule(input, 299) ) { return ; } 
    15276             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4905:1: ( ( ruleDefinitionList ) ) 
    15277             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4906:1: ( ruleDefinitionList ) 
    15278             { 
    15279             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4906:1: ( ruleDefinitionList ) 
    15280             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4907:1: ruleDefinitionList 
     15672            if ( state.backtracking>0 && alreadyParsedRule(input, 307) ) { return ; } 
     15673            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:5032:1: ( ( ruleDefinitionList ) ) 
     15674            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:5033:1: ( ruleDefinitionList ) 
     15675            { 
     15676            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:5033:1: ( ruleDefinitionList ) 
     15677            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:5034:1: ruleDefinitionList 
    1528115678            { 
    1528215679            if ( state.backtracking==0 ) { 
    1528315680               before(grammarAccess.getRepeatedSequenceAccess().getDefinitionsDefinitionListParserRuleCall_1_0());  
    1528415681            } 
    15285             pushFollow(FOLLOW_ruleDefinitionList_in_rule__RepeatedSequence__DefinitionsAssignment_19960); 
     15682            pushFollow(FOLLOW_ruleDefinitionList_in_rule__RepeatedSequence__DefinitionsAssignment_110222); 
    1528615683            ruleDefinitionList(); 
    1528715684 
     
    1530315700        } 
    1530415701        finally { 
    15305             if ( state.backtracking>0 ) { memoize(input, 299, rule__RepeatedSequence__DefinitionsAssignment_1_StartIndex); } 
     15702            if ( state.backtracking>0 ) { memoize(input, 307, rule__RepeatedSequence__DefinitionsAssignment_1_StartIndex); } 
    1530615703 
    1530715704                restoreStackSize(stackSize); 
     
    1531415711 
    1531515712    // $ANTLR start "rule__RepeatedSequence__MorethanonceAssignment_3_0" 
    15316     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4916:1: rule__RepeatedSequence__MorethanonceAssignment_3_0 : ( ( '+' ) ) ; 
     15713    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:5043:1: rule__RepeatedSequence__MorethanonceAssignment_3_0 : ( ( '+' ) ) ; 
    1531715714    public final void rule__RepeatedSequence__MorethanonceAssignment_3_0() throws RecognitionException { 
    1531815715        int rule__RepeatedSequence__MorethanonceAssignment_3_0_StartIndex = input.index(); 
     
    1532115718             
    1532215719        try { 
    15323             if ( state.backtracking>0 && alreadyParsedRule(input, 300) ) { return ; } 
    15324             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4920:1: ( ( ( '+' ) ) ) 
    15325             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4921:1: ( ( '+' ) ) 
    15326             { 
    15327             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4921:1: ( ( '+' ) ) 
    15328             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4922:1: ( '+' ) 
     15720            if ( state.backtracking>0 && alreadyParsedRule(input, 308) ) { return ; } 
     15721            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:5047:1: ( ( ( '+' ) ) ) 
     15722            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:5048:1: ( ( '+' ) ) 
     15723            { 
     15724            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:5048:1: ( ( '+' ) ) 
     15725            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:5049:1: ( '+' ) 
    1532915726            { 
    1533015727            if ( state.backtracking==0 ) { 
    1533115728               before(grammarAccess.getRepeatedSequenceAccess().getMorethanoncePlusSignKeyword_3_0_0());  
    1533215729            } 
    15333             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4923:1: ( '+' ) 
    15334             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4924:1: '+' 
     15730            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:5050:1: ( '+' ) 
     15731            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:5051:1: '+' 
    1533515732            { 
    1533615733            if ( state.backtracking==0 ) { 
    1533715734               before(grammarAccess.getRepeatedSequenceAccess().getMorethanoncePlusSignKeyword_3_0_0());  
    1533815735            } 
    15339             match(input,21,FOLLOW_21_in_rule__RepeatedSequence__MorethanonceAssignment_3_09996); if (state.failed) return ; 
     15736            match(input,21,FOLLOW_21_in_rule__RepeatedSequence__MorethanonceAssignment_3_010258); if (state.failed) return ; 
    1534015737            if ( state.backtracking==0 ) { 
    1534115738               after(grammarAccess.getRepeatedSequenceAccess().getMorethanoncePlusSignKeyword_3_0_0());  
     
    1535915756        } 
    1536015757        finally { 
    15361             if ( state.backtracking>0 ) { memoize(input, 300, rule__RepeatedSequence__MorethanonceAssignment_3_0_StartIndex); } 
     15758            if ( state.backtracking>0 ) { memoize(input, 308, rule__RepeatedSequence__MorethanonceAssignment_3_0_StartIndex); } 
    1536215759 
    1536315760                restoreStackSize(stackSize); 
     
    1537015767 
    1537115768    // $ANTLR start "rule__RepeatedSequence__RangeAssignment_3_1" 
    15372     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4939:1: rule__RepeatedSequence__RangeAssignment_3_1 : ( ruleRepeatRange ) ; 
     15769    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:5066:1: rule__RepeatedSequence__RangeAssignment_3_1 : ( ruleRepeatRange ) ; 
    1537315770    public final void rule__RepeatedSequence__RangeAssignment_3_1() throws RecognitionException { 
    1537415771        int rule__RepeatedSequence__RangeAssignment_3_1_StartIndex = input.index(); 
     
    1537715774             
    1537815775        try { 
    15379             if ( state.backtracking>0 && alreadyParsedRule(input, 301) ) { return ; } 
    15380             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4943:1: ( ( ruleRepeatRange ) ) 
    15381             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4944:1: ( ruleRepeatRange ) 
    15382             { 
    15383             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4944:1: ( ruleRepeatRange ) 
    15384             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4945:1: ruleRepeatRange 
     15776            if ( state.backtracking>0 && alreadyParsedRule(input, 309) ) { return ; } 
     15777            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:5070:1: ( ( ruleRepeatRange ) ) 
     15778            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:5071:1: ( ruleRepeatRange ) 
     15779            { 
     15780            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:5071:1: ( ruleRepeatRange ) 
     15781            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:5072:1: ruleRepeatRange 
    1538515782            { 
    1538615783            if ( state.backtracking==0 ) { 
    1538715784               before(grammarAccess.getRepeatedSequenceAccess().getRangeRepeatRangeParserRuleCall_3_1_0());  
    1538815785            } 
    15389             pushFollow(FOLLOW_ruleRepeatRange_in_rule__RepeatedSequence__RangeAssignment_3_110035); 
     15786            pushFollow(FOLLOW_ruleRepeatRange_in_rule__RepeatedSequence__RangeAssignment_3_110297); 
    1539015787            ruleRepeatRange(); 
    1539115788 
     
    1540715804        } 
    1540815805        finally { 
    15409             if ( state.backtracking>0 ) { memoize(input, 301, rule__RepeatedSequence__RangeAssignment_3_1_StartIndex); } 
     15806            if ( state.backtracking>0 ) { memoize(input, 309, rule__RepeatedSequence__RangeAssignment_3_1_StartIndex); } 
    1541015807 
    1541115808                restoreStackSize(stackSize); 
     
    1541815815 
    1541915816    // $ANTLR start "rule__RepeatRange__FromAssignment_2" 
    15420     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4954:1: rule__RepeatRange__FromAssignment_2 : ( RULE_INT ) ; 
     15817    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:5081:1: rule__RepeatRange__FromAssignment_2 : ( RULE_INT ) ; 
    1542115818    public final void rule__RepeatRange__FromAssignment_2() throws RecognitionException { 
    1542215819        int rule__RepeatRange__FromAssignment_2_StartIndex = input.index(); 
     
    1542515822             
    1542615823        try { 
    15427             if ( state.backtracking>0 && alreadyParsedRule(input, 302) ) { return ; } 
    15428             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4958:1: ( ( RULE_INT ) ) 
    15429             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4959:1: ( RULE_INT ) 
    15430             { 
    15431             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4959:1: ( RULE_INT ) 
    15432             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4960:1: RULE_INT 
     15824            if ( state.backtracking>0 && alreadyParsedRule(input, 310) ) { return ; } 
     15825            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:5085:1: ( ( RULE_INT ) ) 
     15826            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:5086:1: ( RULE_INT ) 
     15827            { 
     15828            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:5086:1: ( RULE_INT ) 
     15829            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:5087:1: RULE_INT 
    1543315830            { 
    1543415831            if ( state.backtracking==0 ) { 
    1543515832               before(grammarAccess.getRepeatRangeAccess().getFromINTTerminalRuleCall_2_0());  
    1543615833            } 
    15437             match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__RepeatRange__FromAssignment_210066); if (state.failed) return ; 
     15834            match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__RepeatRange__FromAssignment_210328); if (state.failed) return ; 
    1543815835            if ( state.backtracking==0 ) { 
    1543915836               after(grammarAccess.getRepeatRangeAccess().getFromINTTerminalRuleCall_2_0());  
     
    1545115848        } 
    1545215849        finally { 
    15453             if ( state.backtracking>0 ) { memoize(input, 302, rule__RepeatRange__FromAssignment_2_StartIndex); } 
     15850            if ( state.backtracking>0 ) { memoize(input, 310, rule__RepeatRange__FromAssignment_2_StartIndex); } 
    1545415851 
    1545515852                restoreStackSize(stackSize); 
     
    1546215859 
    1546315860    // $ANTLR start "rule__RepeatRange__ToAssignment_4" 
    15464     // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4969:1: rule__RepeatRange__ToAssignment_4 : ( RULE_INT ) ; 
     15861    // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:5096:1: rule__RepeatRange__ToAssignment_4 : ( RULE_INT ) ; 
    1546515862    public final void rule__RepeatRange__ToAssignment_4() throws RecognitionException { 
    1546615863        int rule__RepeatRange__ToAssignment_4_StartIndex = input.index(); 
     
    1546915866             
    1547015867        try { 
    15471             if ( state.backtracking>0 && alreadyParsedRule(input, 303) ) { return ; } 
    15472             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4973:1: ( ( RULE_INT ) ) 
    15473             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4974:1: ( RULE_INT ) 
    15474             { 
    15475             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4974:1: ( RULE_INT ) 
    15476             // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:4975:1: RULE_INT 
     15868            if ( state.backtracking>0 && alreadyParsedRule(input, 311) ) { return ; } 
     15869            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:5100:1: ( ( RULE_INT ) ) 
     15870            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:5101:1: ( RULE_INT ) 
     15871            { 
     15872            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:5101:1: ( RULE_INT ) 
     15873            // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:5102:1: RULE_INT 
    1547715874            { 
    1547815875            if ( state.backtracking==0 ) { 
    1547915876               before(grammarAccess.getRepeatRangeAccess().getToINTTerminalRuleCall_4_0());  
    1548015877            } 
    15481             match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__RepeatRange__ToAssignment_410097); if (state.failed) return ; 
     15878            match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__RepeatRange__ToAssignment_410359); if (state.failed) return ; 
    1548215879            if ( state.backtracking==0 ) { 
    1548315880               after(grammarAccess.getRepeatRangeAccess().getToINTTerminalRuleCall_4_0());  
     
    1549515892        } 
    1549615893        finally { 
    15497             if ( state.backtracking>0 ) { memoize(input, 303, rule__RepeatRange__ToAssignment_4_StartIndex); } 
     15894            if ( state.backtracking>0 ) { memoize(input, 311, rule__RepeatRange__ToAssignment_4_StartIndex); } 
    1549815895 
    1549915896                restoreStackSize(stackSize); 
     
    1550415901    // $ANTLR end "rule__RepeatRange__ToAssignment_4" 
    1550515902 
    15506     // $ANTLR start synpred28_InternalEbnf 
    15507     public final void synpred28_InternalEbnf_fragment() throws RecognitionException {    
    15508         // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1047:1: ( ( ( rule__RepeatedSequence__MorethanonceAssignment_3_0 )? ) ) 
    15509         // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1047:1: ( ( rule__RepeatedSequence__MorethanonceAssignment_3_0 )? ) 
     15903    // $ANTLR start synpred29_InternalEbnf 
     15904    public final void synpred29_InternalEbnf_fragment() throws RecognitionException {    
     15905        // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1081:1: ( ( ( rule__RepeatedSequence__MorethanonceAssignment_3_0 )? ) ) 
     15906        // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1081:1: ( ( rule__RepeatedSequence__MorethanonceAssignment_3_0 )? ) 
    1551015907        { 
    15511         // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1047:1: ( ( rule__RepeatedSequence__MorethanonceAssignment_3_0 )? ) 
    15512         // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1048:1: ( rule__RepeatedSequence__MorethanonceAssignment_3_0 )? 
     15908        // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1081:1: ( ( rule__RepeatedSequence__MorethanonceAssignment_3_0 )? ) 
     15909        // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1082:1: ( rule__RepeatedSequence__MorethanonceAssignment_3_0 )? 
    1551315910        { 
    1551415911        if ( state.backtracking==0 ) { 
    1551515912           before(grammarAccess.getRepeatedSequenceAccess().getMorethanonceAssignment_3_0());  
    1551615913        } 
    15517         // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1049:1: ( rule__RepeatedSequence__MorethanonceAssignment_3_0 )? 
     15914        // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1083:1: ( rule__RepeatedSequence__MorethanonceAssignment_3_0 )? 
    1551815915        int alt40=2; 
    1551915916        int LA40_0 = input.LA(1); 
     
    1552415921        switch (alt40) { 
    1552515922            case 1 : 
    15526                 // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1049:2: rule__RepeatedSequence__MorethanonceAssignment_3_0 
     15923                // ../de.ugoe.cs.swe.bnftools.ebnf.ui/src-gen/de/ugoe/cs/swe/bnftools/ui/contentassist/antlr/internal/InternalEbnf.g:1083:2: rule__RepeatedSequence__MorethanonceAssignment_3_0 
    1552715924                { 
    15528                 pushFollow(FOLLOW_rule__RepeatedSequence__MorethanonceAssignment_3_0_in_synpred28_InternalEbnf2274); 
     15925                pushFollow(FOLLOW_rule__RepeatedSequence__MorethanonceAssignment_3_0_in_synpred29_InternalEbnf2352); 
    1552915926                rule__RepeatedSequence__MorethanonceAssignment_3_0(); 
    1553015927 
     
    1554315940        } 
    1554415941    } 
    15545     // $ANTLR end synpred28_InternalEbnf 
     15942    // $ANTLR end synpred29_InternalEbnf 
    1554615943 
    1554715944    // Delegated rules 
    1554815945 
    15549     public final boolean synpred28_InternalEbnf() { 
     15946    public final boolean synpred29_InternalEbnf() { 
    1555015947        state.backtracking++; 
    1555115948        int start = input.mark(); 
    1555215949        try { 
    15553             synpred28_InternalEbnf_fragment(); // can never throw exception 
     15950            synpred29_InternalEbnf_fragment(); // can never throw exception 
    1555415951        } catch (RecognitionException re) { 
    1555515952            System.err.println("impossible: "+re); 
     
    1556515962    protected DFA15 dfa15 = new DFA15(this); 
    1556615963    static final String DFA15_eotS = 
    15567         "\21\uffff"; 
     15964        "\22\uffff"; 
    1556815965    static final String DFA15_eofS = 
    15569         "\1\2\20\uffff"; 
     15966        "\1\2\21\uffff"; 
    1557015967    static final String DFA15_minS = 
    15571         "\1\4\1\uffff\16\0\1\uffff"; 
     15968        "\1\4\1\uffff\17\0\1\uffff"; 
    1557215969    static final String DFA15_maxS = 
    15573         "\1\42\1\uffff\16\0\1\uffff"; 
     15970        "\1\42\1\uffff\17\0\1\uffff"; 
    1557415971    static final String DFA15_acceptS = 
    15575         "\1\uffff\1\1\16\uffff\1\2"; 
     15972        "\1\uffff\1\1\17\uffff\1\2"; 
    1557615973    static final String DFA15_specialS = 
    1557715974        "\2\uffff\1\0\1\1\1\2\1\3\1\4\1\5\1\6\1\7\1\10\1\11\1\12\1\13\1\14"+ 
    15578         "\1\15\1\uffff}>"; 
     15975        "\1\15\1\16\1\uffff}>"; 
    1557915976    static final String[] DFA15_transitionS = { 
    15580             "\1\5\1\13\1\3\1\14\1\uffff\1\4\3\uffff\1\15\1\16\1\17\1\11\1"+ 
    15581             "\6\1\7\1\10\1\uffff\1\1\1\uffff\1\12\12\uffff\1\20", 
     15977            "\1\5\1\13\1\15\1\3\1\14\1\uffff\1\4\2\uffff\1\16\1\17\1\20\1"+ 
     15978            "\11\1\6\1\7\1\10\1\uffff\1\1\1\uffff\1\12\12\uffff\1\21", 
    1558215979            "", 
     15980            "\1\uffff", 
    1558315981            "\1\uffff", 
    1558415982            "\1\uffff", 
     
    1562816026        } 
    1562916027        public String getDescription() { 
    15630             return "1042:1: rule__RepeatedSequence__Alternatives_3 : ( ( ( rule__RepeatedSequence__MorethanonceAssignment_3_0 )? ) | ( ( rule__RepeatedSequence__RangeAssignment_3_1 )? ) );"; 
     16028            return "1076:1: rule__RepeatedSequence__Alternatives_3 : ( ( ( rule__RepeatedSequence__MorethanonceAssignment_3_0 )? ) | ( ( rule__RepeatedSequence__RangeAssignment_3_1 )? ) );"; 
    1563116029        } 
    1563216030        public int specialStateTransition(int s, IntStream _input) throws NoViableAltException { 
     
    1564116039                        input.rewind(); 
    1564216040                        s = -1; 
    15643                         if ( (synpred28_InternalEbnf()) ) {s = 1;} 
    15644  
    15645                         else if ( (true) ) {s = 16;} 
     16041                        if ( (synpred29_InternalEbnf()) ) {s = 1;} 
     16042 
     16043                        else if ( (true) ) {s = 17;} 
    1564616044 
    1564716045                          
     
    1565616054                        input.rewind(); 
    1565716055                        s = -1; 
    15658                         if ( (synpred28_InternalEbnf()) ) {s = 1;} 
    15659  
    15660                         else if ( (true) ) {s = 16;} 
     16056                        if ( (synpred29_InternalEbnf()) ) {s = 1;} 
     16057 
     16058                        else if ( (true) ) {s = 17;} 
    1566116059 
    1566216060                          
     
    1567116069                        input.rewind(); 
    1567216070                        s = -1; 
    15673                         if ( (synpred28_InternalEbnf()) ) {s = 1;} 
    15674  
    15675                         else if ( (true) ) {s = 16;} 
     16071                        if ( (synpred29_InternalEbnf()) ) {s = 1;} 
     16072 
     16073                        else if ( (true) ) {s = 17;} 
    1567616074 
    1567716075                          
     
    1568616084                        input.rewind(); 
    1568716085                        s = -1; 
    15688                         if ( (synpred28_InternalEbnf()) ) {s = 1;} 
    15689  
    15690                         else if ( (true) ) {s = 16;} 
     16086                        if ( (synpred29_InternalEbnf()) ) {s = 1;} 
     16087 
     16088                        else if ( (true) ) {s = 17;} 
    1569116089 
    1569216090                          
     
    1570116099                        input.rewind(); 
    1570216100                        s = -1; 
    15703                         if ( (synpred28_InternalEbnf()) ) {s = 1;} 
    15704  
    15705                         else if ( (true) ) {s = 16;} 
     16101                        if ( (synpred29_InternalEbnf()) ) {s = 1;} 
     16102 
     16103                        else if ( (true) ) {s = 17;} 
    1570616104 
    1570716105                          
     
    1571616114                        input.rewind(); 
    1571716115                        s = -1; 
    15718                         if ( (synpred28_InternalEbnf()) ) {s = 1;} 
    15719  
    15720                         else if ( (true) ) {s = 16;} 
     16116                        if ( (synpred29_InternalEbnf()) ) {s = 1;} 
     16117 
     16118                        else if ( (true) ) {s = 17;} 
    1572116119 
    1572216120                          
     
    1573116129                        input.rewind(); 
    1573216130                        s = -1; 
    15733                         if ( (synpred28_InternalEbnf()) ) {s = 1;} 
    15734  
    15735                         else if ( (true) ) {s = 16;} 
     16131                        if ( (synpred29_InternalEbnf()) ) {s = 1;} 
     16132 
     16133                        else if ( (true) ) {s = 17;} 
    1573616134 
    1573716135                          
     
    1574616144                        input.rewind(); 
    1574716145                        s = -1; 
    15748                         if ( (synpred28_InternalEbnf()) ) {s = 1;} 
    15749  
    15750                         else if ( (true) ) {s = 16;} 
     16146                        if ( (synpred29_InternalEbnf()) ) {s = 1;} 
     16147 
     16148                        else if ( (true) ) {s = 17;} 
    1575116149 
    1575216150                          
     
    1576116159                        input.rewind(); 
    1576216160                        s = -1; 
    15763                         if ( (synpred28_InternalEbnf()) ) {s = 1;} 
    15764  
    15765                         else if ( (true) ) {s = 16;} 
     16161                        if ( (synpred29_InternalEbnf()) ) {s = 1;} 
     16162 
     16163                        else if ( (true) ) {s = 17;} 
    1576616164 
    1576716165                          
     
    1577616174                        input.rewind(); 
    1577716175                        s = -1; 
    15778                         if ( (synpred28_InternalEbnf()) ) {s = 1;} 
    15779  
    15780                         else if ( (true) ) {s = 16;} 
     16176                        if ( (synpred29_InternalEbnf()) ) {s = 1;} 
     16177 
     16178                        else if ( (true) ) {s = 17;} 
    1578116179 
    1578216180                          
     
    1579116189                        input.rewind(); 
    1579216190                        s = -1; 
    15793                         if ( (synpred28_InternalEbnf()) ) {s = 1;} 
    15794  
    15795                         else if ( (true) ) {s = 16;} 
     16191                        if ( (synpred29_InternalEbnf()) ) {s = 1;} 
     16192 
     16193                        else if ( (true) ) {s = 17;} 
    1579616194 
    1579716195                          
     
    1580616204                        input.rewind(); 
    1580716205                        s = -1; 
    15808                         if ( (synpred28_InternalEbnf()) ) {s = 1;} 
    15809  
    15810                         else if ( (true) ) {s = 16;} 
     16206                        if ( (synpred29_InternalEbnf()) ) {s = 1;} 
     16207 
     16208                        else if ( (true) ) {s = 17;} 
    1581116209 
    1581216210                          
     
    1582116219                        input.rewind(); 
    1582216220                        s = -1; 
    15823                         if ( (synpred28_InternalEbnf()) ) {s = 1;} 
    15824  
    15825                         else if ( (true) ) {s = 16;} 
     16221                        if ( (synpred29_InternalEbnf()) ) {s = 1;} 
     16222 
     16223                        else if ( (true) ) {s = 17;} 
    1582616224 
    1582716225                          
     
    1583616234                        input.rewind(); 
    1583716235                        s = -1; 
    15838                         if ( (synpred28_InternalEbnf()) ) {s = 1;} 
    15839  
    15840                         else if ( (true) ) {s = 16;} 
     16236                        if ( (synpred29_InternalEbnf()) ) {s = 1;} 
     16237 
     16238                        else if ( (true) ) {s = 17;} 
    1584116239 
    1584216240                          
    1584316241                        input.seek(index15_15); 
     16242                        if ( s>=0 ) return s; 
     16243                        break; 
     16244                    case 14 :  
     16245                        int LA15_16 = input.LA(1); 
     16246 
     16247                          
     16248                        int index15_16 = input.index(); 
     16249                        input.rewind(); 
     16250                        s = -1; 
     16251                        if ( (synpred29_InternalEbnf()) ) {s = 1;} 
     16252 
     16253                        else if ( (true) ) {s = 17;} 
     16254 
     16255                          
     16256                        input.seek(index15_16); 
    1584416257                        if ( s>=0 ) return s; 
    1584516258                        break; 
     
    1587316286    public static final BitSet FOLLOW_EOF_in_entryRuleSectionHeading398 = new BitSet(new long[]{0x0000000000000002L}); 
    1587416287    public static final BitSet FOLLOW_rule__SectionHeading__Group__0_in_ruleSectionHeading424 = new BitSet(new long[]{0x0000000000000002L}); 
    15875     public static final BitSet FOLLOW_ruleImport_in_entryRuleImport451 = new BitSet(new long[]{0x0000000000000000L}); 
    15876     public static final BitSet FOLLOW_EOF_in_entryRuleImport458 = new BitSet(new long[]{0x0000000000000002L}); 
    15877     public static final BitSet FOLLOW_rule__Import__Group__0_in_ruleImport484 = new BitSet(new long[]{0x0000000000000002L}); 
    15878     public static final BitSet FOLLOW_ruleRule_in_entryRuleRule511 = new BitSet(new long[]{0x0000000000000000L}); 
    15879     public static final BitSet FOLLOW_EOF_in_entryRuleRule518 = new BitSet(new long[]{0x0000000000000002L}); 
    15880     public static final BitSet FOLLOW_rule__Rule__Group__0_in_ruleRule544 = new BitSet(new long[]{0x0000000000000002L}); 
    15881     public static final BitSet FOLLOW_ruleExtRule_in_entryRuleExtRule571 = new BitSet(new long[]{0x0000000000000000L}); 
    15882     public static final BitSet FOLLOW_EOF_in_entryRuleExtRule578 = new BitSet(new long[]{0x0000000000000002L}); 
    15883     public static final BitSet FOLLOW_rule__ExtRule__Group__0_in_ruleExtRule604 = new BitSet(new long[]{0x0000000000000002L}); 
    15884     public static final BitSet FOLLOW_ruleMergeRule_in_entryRuleMergeRule631 = new BitSet(new long[]{0x0000000000000000L}); 
    15885     public static final BitSet FOLLOW_EOF_in_entryRuleMergeRule638 = new BitSet(new long[]{0x0000000000000002L}); 
    15886     public static final BitSet FOLLOW_rule__MergeRule__Alternatives_in_ruleMergeRule664 = new BitSet(new long[]{0x0000000000000002L}); 
    15887     public static final BitSet FOLLOW_ruleGlobalCombinator_in_entryRuleGlobalCombinator691 = new BitSet(new long[]{0x0000000000000000L}); 
    15888     public static final BitSet FOLLOW_EOF_in_entryRuleGlobalCombinator698 = new BitSet(new long[]{0x0000000000000002L}); 
    15889     public static final BitSet FOLLOW_rule__GlobalCombinator__Group__0_in_ruleGlobalCombinator724 = new BitSet(new long[]{0x0000000000000002L}); 
    15890     public static final BitSet FOLLOW_ruleRuleCombinator_in_entryRuleRuleCombinator751 = new BitSet(new long[]{0x0000000000000000L}); 
    15891     public static final BitSet FOLLOW_EOF_in_entryRuleRuleCombinator758 = new BitSet(new long[]{0x0000000000000002L}); 
    15892     public static final BitSet FOLLOW_rule__RuleCombinator__Group__0_in_ruleRuleCombinator784 = new BitSet(new long[]{0x0000000000000002L}); 
    15893     public static final BitSet FOLLOW_ruleHookCombinator_in_entryRuleHookCombinator811 = new BitSet(new long[]{0x0000000000000000L}); 
    15894     public static final BitSet FOLLOW_EOF_in_entryRuleHookCombinator818 = new BitSet(new long[]{0x0000000000000002L}); 
    15895     public static final BitSet FOLLOW_rule__HookCombinator__Group__0_in_ruleHookCombinator844 = new BitSet(new long[]{0x0000000000000002L}); 
    15896     public static final BitSet FOLLOW_ruleDefinitionList_in_entryRuleDefinitionList871 = new BitSet(new long[]{0x0000000000000000L}); 
    15897     public static final BitSet FOLLOW_EOF_in_entryRuleDefinitionList878 = new BitSet(new long[]{0x0000000000000002L}); 
    15898     public static final BitSet FOLLOW_rule__DefinitionList__Group__0_in_ruleDefinitionList904 = new BitSet(new long[]{0x0000000000000002L}); 
    15899     public static final BitSet FOLLOW_ruleSingleDefinition_in_entryRuleSingleDefinition931 = new BitSet(new long[]{0x0000000000000000L}); 
    15900     public static final BitSet FOLLOW_EOF_in_entryRuleSingleDefinition938 = new BitSet(new long[]{0x0000000000000002L}); 
    15901     public static final BitSet FOLLOW_rule__SingleDefinition__TermsAssignment_in_ruleSingleDefinition966 = new BitSet(new long[]{0x00000000000E0252L}); 
    15902     public static final BitSet FOLLOW_rule__SingleDefinition__TermsAssignment_in_ruleSingleDefinition978 = new BitSet(new long[]{0x00000000000E0252L}); 
    15903     public static final BitSet FOLLOW_ruleTerm_in_entryRuleTerm1008 = new BitSet(new long[]{0x0000000000000000L}); 
    15904     public static final BitSet FOLLOW_EOF_in_entryRuleTerm1015 = new BitSet(new long[]{0x0000000000000002L}); 
    15905     public static final BitSet FOLLOW_rule__Term__Alternatives_in_ruleTerm1041 = new BitSet(new long[]{0x0000000000000002L}); 
    15906     public static final BitSet FOLLOW_ruleAtom_in_entryRuleAtom1068 = new BitSet(new long[]{0x0000000000000000L}); 
    15907     public static final BitSet FOLLOW_EOF_in_entryRuleAtom1075 = new BitSet(new long[]{0x0000000000000002L}); 
    15908     public static final BitSet FOLLOW_rule__Atom__Alternatives_in_ruleAtom1101 = new BitSet(new long[]{0x0000000000000002L}); 
    15909     public static final BitSet FOLLOW_ruleRuleReference_in_entryRuleRuleReference1128 = new BitSet(new long[]{0x0000000000000000L}); 
    15910     public static final BitSet FOLLOW_EOF_in_entryRuleRuleReference1135 = new BitSet(new long[]{0x0000000000000002L}); 
    15911     public static final BitSet FOLLOW_rule__RuleReference__RulerefAssignment_in_ruleRuleReference1161 = new BitSet(new long[]{0x0000000000000002L}); 
    15912     public static final BitSet FOLLOW_ruleStringRule_in_entryRuleStringRule1188 = new BitSet(new long[]{0x0000000000000000L}); 
    15913     public static final BitSet FOLLOW_EOF_in_entryRuleStringRule1195 = new BitSet(new long[]{0x0000000000000002L}); 
    15914     public static final BitSet FOLLOW_rule__StringRule__Alternatives_in_ruleStringRule1221 = new BitSet(new long[]{0x0000000000000002L}); 
    15915     public static final BitSet FOLLOW_ruleGroupedSequence_in_entryRuleGroupedSequence1248 = new BitSet(new long[]{0x0000000000000000L}); 
    15916     public static final BitSet FOLLOW_EOF_in_entryRuleGroupedSequence1255 = new BitSet(new long[]{0x0000000000000002L}); 
    15917     public static final BitSet FOLLOW_rule__GroupedSequence__Group__0_in_ruleGroupedSequence1281 = new BitSet(new long[]{0x0000000000000002L}); 
    15918     public static final BitSet FOLLOW_ruleOptionalSequence_in_entryRuleOptionalSequence1308 = new BitSet(new long[]{0x0000000000000000L}); 
    15919     public static final BitSet FOLLOW_EOF_in_entryRuleOptionalSequence1315 = new BitSet(new long[]{0x0000000000000002L}); 
    15920     public static final BitSet FOLLOW_rule__OptionalSequence__Group__0_in_ruleOptionalSequence1341 = new BitSet(new long[]{0x0000000000000002L}); 
    15921     public static final BitSet FOLLOW_ruleRepeatedSequence_in_entryRuleRepeatedSequence1368 = new BitSet(new long[]{0x0000000000000000L}); 
    15922     public static final BitSet FOLLOW_EOF_in_entryRuleRepeatedSequence1375 = new BitSet(new long[]{0x0000000000000002L}); 
    15923     public static final BitSet FOLLOW_rule__RepeatedSequence__Group__0_in_ruleRepeatedSequence1401 = new BitSet(new long[]{0x0000000000000002L}); 
    15924     public static final BitSet FOLLOW_ruleRepeatRange_in_entryRuleRepeatRange1428 = new BitSet(new long[]{0x0000000000000000L}); 
    15925     public static final BitSet FOLLOW_EOF_in_entryRuleRepeatRange1435 = new BitSet(new long[]{0x0000000000000002L}); 
    15926     public static final BitSet FOLLOW_rule__RepeatRange__Group__0_in_ruleRepeatRange1461 = new BitSet(new long[]{0x0000000000000002L}); 
    15927     public static final BitSet FOLLOW_rule__EtsiBnf__Group_0__0_in_rule__EtsiBnf__Alternatives1497 = new BitSet(new long[]{0x0000000000000002L}); 
    15928     public static final BitSet FOLLOW_rule__EtsiBnf__Group_1__0_in_rule__EtsiBnf__Alternatives1515 = new BitSet(new long[]{0x0000000000000002L}); 
    15929     public static final BitSet FOLLOW_rule__EtsiBnf__Group_2__0_in_rule__EtsiBnf__Alternatives1533 = new BitSet(new long[]{0x0000000000000002L}); 
    15930     public static final BitSet FOLLOW_rule__BnfEntry__SectionheaderAssignment_0_in_rule__BnfEntry__Alternatives1566 = new BitSet(new long[]{0x0000000000000002L}); 
    15931     public static final BitSet FOLLOW_rule__BnfEntry__RuleAssignment_1_in_rule__BnfEntry__Alternatives1584 = new BitSet(new long[]{0x0000000000000002L}); 
    15932     public static final BitSet FOLLOW_rule__DeltaEntry__RuleAssignment_0_in_rule__DeltaEntry__Alternatives1617 = new BitSet(new long[]{0x0000000000000002L}); 
    15933     public static final BitSet FOLLOW_rule__DeltaEntry__SectionheaderAssignment_1_in_rule__DeltaEntry__Alternatives1635 = new BitSet(new long[]{0x0000000000000002L}); 
    15934     public static final BitSet FOLLOW_rule__DeltaEntry__ExtRuleAssignment_2_in_rule__DeltaEntry__Alternatives1653 = new BitSet(new long[]{0x0000000000000002L}); 
    15935     public static final BitSet FOLLOW_rule__MergeEntry__SectionheaderAssignment_0_in_rule__MergeEntry__Alternatives1686 = new BitSet(new long[]{0x0000000000000002L}); 
    15936     public static final BitSet FOLLOW_rule__MergeEntry__MergeRuleAssignment_1_in_rule__MergeEntry__Alternatives1704 = new BitSet(new long[]{0x0000000000000002L}); 
    15937     public static final BitSet FOLLOW_rule__Import__GrammarTypeAssignment_2_1_0_in_rule__Import__Alternatives_2_11737 = new BitSet(new long[]{0x0000000000000002L}); 
    15938     public static final BitSet FOLLOW_rule__Import__GrammarTypeAssignment_2_1_1_in_rule__Import__Alternatives_2_11755 = new BitSet(new long[]{0x0000000000000002L}); 
    15939     public static final BitSet FOLLOW_rule__Import__GrammarTypeAssignment_2_1_2_in_rule__Import__Alternatives_2_11773 = new BitSet(new long[]{0x0000000000000002L}); 
    15940     public static final BitSet FOLLOW_rule__ExtRule__ElementsAssignment_4_0_in_rule__ExtRule__Alternatives_41806 = new BitSet(new long[]{0x0000000000000002L}); 
    15941     public static final BitSet FOLLOW_13_in_rule__ExtRule__Alternatives_41825 = new BitSet(new long[]{0x0000000000000002L}); 
    15942     public static final BitSet FOLLOW_14_in_rule__ExtRule__Alternatives_41845 = new BitSet(new long[]{0x0000000000000002L}); 
    15943     public static final BitSet FOLLOW_15_in_rule__ExtRule__Alternatives_41865 = new BitSet(new long[]{0x0000000000000002L}); 
    15944     public static final BitSet FOLLOW_16_in_rule__ExtRule__Alternatives_41885 = new BitSet(new long[]{0x0000000000000002L}); 
    15945     public static final BitSet FOLLOW_17_in_rule__ExtRule__Alternatives_41905 = new BitSet(new long[]{0x0000000000000002L}); 
    15946     public static final BitSet FOLLOW_18_in_rule__ExtRule__Alternatives_41925 = new BitSet(new long[]{0x0000000000000002L}); 
    15947     public static final BitSet FOLLOW_19_in_rule__ExtRule__Alternatives_41945 = new BitSet(new long[]{0x0000000000000002L}); 
    15948     public static final BitSet FOLLOW_20_in_rule__ExtRule__Alternatives_41965 = new BitSet(new long[]{0x0000000000000002L}); 
    15949     public static final BitSet FOLLOW_21_in_rule__ExtRule__Alternatives_41985 = new BitSet(new long[]{0x0000000000000002L}); 
    15950     public static final BitSet FOLLOW_ruleGlobalCombinator_in_rule__MergeRule__Alternatives2019 = new BitSet(new long[]{0x0000000000000002L}); 
    15951     public static final BitSet FOLLOW_ruleRuleCombinator_in_rule__MergeRule__Alternatives2036 = new BitSet(new long[]{0x0000000000000002L}); 
    15952     public static final BitSet FOLLOW_ruleHookCombinator_in_rule__MergeRule__Alternatives2053 = new BitSet(new long[]{0x0000000000000002L}); 
    15953     public static final BitSet FOLLOW_rule__Term__TermAtomAssignment_0_in_rule__Term__Alternatives2085 = new BitSet(new long[]{0x0000000000000002L}); 
    15954     public static final BitSet FOLLOW_rule__Term__TermGroupedSequenceAssignment_1_in_rule__Term__Alternatives2103 = new BitSet(new long[]{0x0000000000000002L}); 
    15955     public static final BitSet FOLLOW_rule__Term__TermOptionalSequenceAssignment_2_in_rule__Term__Alternatives2121 = new BitSet(new long[]{0x0000000000000002L}); 
    15956     public static final BitSet FOLLOW_rule__Term__TermRepeatedSequenceAssignment_3_in_rule__Term__Alternatives2139 = new BitSet(new long[]{0x0000000000000002L}); 
    15957     public static final BitSet FOLLOW_rule__Atom__AtomStringRuleAssignment_0_in_rule__Atom__Alternatives2172 = new BitSet(new long[]{0x0000000000000002L}); 
    15958     public static final BitSet FOLLOW_rule__Atom__AtomRuleReferenceAssignment_1_in_rule__Atom__Alternatives2190 = new BitSet(new long[]{0x0000000000000002L}); 
    15959     public static final BitSet FOLLOW_rule__StringRule__LiteralAssignment_0_in_rule__StringRule__Alternatives2223 = new BitSet(new long[]{0x0000000000000002L}); 
    15960     public static final BitSet FOLLOW_rule__StringRule__ColonAssignment_1_in_rule__StringRule__Alternatives2241 = new BitSet(new long[]{0x0000000000000002L}); 
    15961     public static final BitSet FOLLOW_rule__RepeatedSequence__MorethanonceAssignment_3_0_in_rule__RepeatedSequence__Alternatives_32274 = new BitSet(new long[]{0x0000000000000002L}); 
    15962     public static final BitSet FOLLOW_rule__RepeatedSequence__RangeAssignment_3_1_in_rule__RepeatedSequence__Alternatives_32293 = new BitSet(new long[]{0x0000000000000002L}); 
    15963     public static final BitSet FOLLOW_rule__EtsiBnf__Group_0__0__Impl_in_rule__EtsiBnf__Group_0__02325 = new BitSet(new long[]{0x0000000000000010L}); 
    15964     public static final BitSet FOLLOW_rule__EtsiBnf__Group_0__1_in_rule__EtsiBnf__Group_0__02328 = new BitSet(new long[]{0x0000000000000002L}); 
    15965     public static final BitSet FOLLOW_22_in_rule__EtsiBnf__Group_0__0__Impl2356 = new BitSet(new long[]{0x0000000000000002L}); 
    15966     public static final BitSet FOLLOW_rule__EtsiBnf__Group_0__1__Impl_in_rule__EtsiBnf__Group_0__12387 = new BitSet(new long[]{0x0000001000800000L}); 
    15967     public static final BitSet FOLLOW_rule__EtsiBnf__Group_0__2_in_rule__EtsiBnf__Group_0__12390 = new BitSet(new long[]{0x0000000000000002L}); 
    15968     public static final BitSet FOLLOW_rule__EtsiBnf__NameAssignment_0_1_in_rule__EtsiBnf__Group_0__1__Impl2417 = new BitSet(new long[]{0x0000000000000002L}); 
    15969     public static final BitSet FOLLOW_rule__EtsiBnf__Group_0__2__Impl_in_rule__EtsiBnf__Group_0__22447 = new BitSet(new long[]{0x0000000000000002L}); 
    15970     public static final BitSet FOLLOW_rule__EtsiBnf__Group_0_2__0_in_rule__EtsiBnf__Group_0__2__Impl2474 = new BitSet(new long[]{0x0000000000000002L}); 
    15971     public static final BitSet FOLLOW_rule__EtsiBnf__Group_0_2__0__Impl_in_rule__EtsiBnf__Group_0_2__02510 = new BitSet(new long[]{0x0000001000800000L}); 
    15972     public static final BitSet FOLLOW_rule__EtsiBnf__Group_0_2__1_in_rule__EtsiBnf__Group_0_2__02513 = new BitSet(new long[]{0x0000000000000002L}); 
    15973     public static final BitSet FOLLOW_rule__EtsiBnf__TypeAssignment_0_2_0_in_rule__EtsiBnf__Group_0_2__0__Impl2540 = new BitSet(new long[]{0x0000000000000002L}); 
    15974     public static final BitSet FOLLOW_rule__EtsiBnf__Group_0_2__1__Impl_in_rule__EtsiBnf__Group_0_2__12571 = new BitSet(new long[]{0x00000000010000B0L}); 
    15975     public static final BitSet FOLLOW_rule__EtsiBnf__Group_0_2__2_in_rule__EtsiBnf__Group_0_2__12574 = new BitSet(new long[]{0x0000000000000002L}); 
    15976     public static final BitSet FOLLOW_23_in_rule__EtsiBnf__Group_0_2__1__Impl2602 = new BitSet(new long[]{0x0000000000000002L}); 
    15977     public static final BitSet FOLLOW_rule__EtsiBnf__Group_0_2__2__Impl_in_rule__EtsiBnf__Group_0_2__22633 = new BitSet(new long[]{0x00000000010000B0L}); 
    15978     public static final BitSet FOLLOW_rule__EtsiBnf__Group_0_2__3_in_rule__EtsiBnf__Group_0_2__22636 = new BitSet(new long[]{0x0000000000000002L}); 
    15979     public static final BitSet FOLLOW_rule__EtsiBnf__ImportSectionAssignment_0_2_2_in_rule__EtsiBnf__Group_0_2__2__Impl2663 = new BitSet(new long[]{0x0000000000000002L}); 
    15980     public static final BitSet FOLLOW_rule__EtsiBnf__Group_0_2__3__Impl_in_rule__EtsiBnf__Group_0_2__32694 = new BitSet(new long[]{0x0000000000000002L}); 
    15981     public static final BitSet FOLLOW_rule__EtsiBnf__BnfEntryAssignment_0_2_3_in_rule__EtsiBnf__Group_0_2__3__Impl2723 = new BitSet(new long[]{0x00000000010000B2L}); 
    15982     public static final BitSet FOLLOW_rule__EtsiBnf__BnfEntryAssignment_0_2_3_in_rule__EtsiBnf__Group_0_2__3__Impl2735 = new BitSet(new long[]{0x00000000010000B2L}); 
    15983     public static final BitSet FOLLOW_rule__EtsiBnf__Group_1__0__Impl_in_rule__EtsiBnf__Group_1__02776 = new BitSet(new long[]{0x0000000000800000L}); 
    15984     public static final BitSet FOLLOW_rule__EtsiBnf__Group_1__1_in_rule__EtsiBnf__Group_1__02779 = new BitSet(new long[]{0x0000000000000002L}); 
    15985     public static final BitSet FOLLOW_rule__EtsiBnf__TypeAssignment_1_0_in_rule__EtsiBnf__Group_1__0__Impl2806 = new BitSet(new long[]{0x0000000000000002L}); 
    15986     public static final BitSet FOLLOW_rule__EtsiBnf__Group_1__1__Impl_in_rule__EtsiBnf__Group_1__12836 = new BitSet(new long[]{0x00000000010000B0L}); 
    15987     public static final BitSet FOLLOW_rule__EtsiBnf__Group_1__2_in_rule__EtsiBnf__Group_1__12839 = new BitSet(new long[]{0x0000000000000002L}); 
    15988     public static final BitSet FOLLOW_23_in_rule__EtsiBnf__Group_1__1__Impl2867 = new BitSet(new long[]{0x0000000000000002L}); 
    15989     public static final BitSet FOLLOW_rule__EtsiBnf__Group_1__2__Impl_in_rule__EtsiBnf__Group_1__22898 = new BitSet(new long[]{0x00000000010000B0L}); 
    15990     public static final BitSet FOLLOW_rule__EtsiBnf__Group_1__3_in_rule__EtsiBnf__Group_1__22901 = new BitSet(new long[]{0x0000000000000002L}); 
    15991     public static final BitSet FOLLOW_rule__EtsiBnf__ImportSectionAssignment_1_2_in_rule__EtsiBnf__Group_1__2__Impl2928 = new BitSet(new long[]{0x0000000000000002L}); 
    15992     public static final BitSet FOLLOW_rule__EtsiBnf__Group_1__3__Impl_in_rule__EtsiBnf__Group_1__32959 = new BitSet(new long[]{0x0000000000000002L}); 
    15993     public static final BitSet FOLLOW_rule__EtsiBnf__DeltaEntryAssignment_1_3_in_rule__EtsiBnf__Group_1__3__Impl2986 = new BitSet(new long[]{0x00000000010000B2L}); 
    15994     public static final BitSet FOLLOW_rule__EtsiBnf__Group_2__0__Impl_in_rule__EtsiBnf__Group_2__03025 = new BitSet(new long[]{0x0000000000800000L}); 
    15995     public static final BitSet FOLLOW_rule__EtsiBnf__Group_2__1_in_rule__EtsiBnf__Group_2__03028 = new BitSet(new long[]{0x0000000000000002L}); 
    15996     public static final BitSet FOLLOW_rule__EtsiBnf__TypeAssignment_2_0_in_rule__EtsiBnf__Group_2__0__Impl3055 = new BitSet(new long[]{0x0000000000000002L}); 
    15997     public static final BitSet FOLLOW_rule__EtsiBnf__Group_2__1__Impl_in_rule__EtsiBnf__Group_2__13085 = new BitSet(new long[]{0x0000000341000020L}); 
    15998     public static final BitSet FOLLOW_rule__EtsiBnf__Group_2__2_in_rule__EtsiBnf__Group_2__13088 = new BitSet(new long[]{0x0000000000000002L}); 
    15999     public static final BitSet FOLLOW_23_in_rule__EtsiBnf__Group_2__1__Impl3116 = new BitSet(new long[]{0x0000000000000002L}); 
    16000     public static final BitSet FOLLOW_rule__EtsiBnf__Group_2__2__Impl_in_rule__EtsiBnf__Group_2__23147 = new BitSet(new long[]{0x0000000341000020L}); 
    16001     public static final BitSet FOLLOW_rule__EtsiBnf__Group_2__3_in_rule__EtsiBnf__Group_2__23150 = new BitSet(new long[]{0x0000000000000002L}); 
    16002     public static final BitSet FOLLOW_rule__EtsiBnf__ImportSectionAssignment_2_2_in_rule__EtsiBnf__Group_2__2__Impl3177 = new BitSet(new long[]{0x0000000000000002L}); 
    16003     public static final BitSet FOLLOW_rule__EtsiBnf__Group_2__3__Impl_in_rule__EtsiBnf__Group_2__33208 = new BitSet(new long[]{0x0000000000000002L}); 
    16004     public static final BitSet FOLLOW_rule__EtsiBnf__MergeEntryAssignment_2_3_in_rule__EtsiBnf__Group_2__3__Impl3235 = new BitSet(new long[]{0x0000000340000022L}); 
    16005     public static final BitSet FOLLOW_rule__SectionHeading__Group__0__Impl_in_rule__SectionHeading__Group__03274 = new BitSet(new long[]{0x0000000000000020L}); 
    16006     public static final BitSet FOLLOW_rule__SectionHeading__Group__1_in_rule__SectionHeading__Group__03277 = new BitSet(new long[]{0x0000000000000002L}); 
    16007     public static final BitSet FOLLOW_rule__SectionHeading__Group__1__Impl_in_rule__SectionHeading__Group__13335 = new BitSet(new long[]{0x0000000000000002L}); 
    16008     public static final BitSet FOLLOW_rule__SectionHeading__SectionHeaderAssignment_1_in_rule__SectionHeading__Group__1__Impl3362 = new BitSet(new long[]{0x0000000000000002L}); 
    16009     public static final BitSet FOLLOW_rule__Import__Group__0__Impl_in_rule__Import__Group__03396 = new BitSet(new long[]{0x0000000000000040L}); 
    16010     public static final BitSet FOLLOW_rule__Import__Group__1_in_rule__Import__Group__03399 = new BitSet(new long[]{0x0000000000000002L}); 
    16011     public static final BitSet FOLLOW_24_in_rule__Import__Group__0__Impl3427 = new BitSet(new long[]{0x0000000000000002L}); 
    16012     public static final BitSet FOLLOW_rule__Import__Group__1__Impl_in_rule__Import__Group__13458 = new BitSet(new long[]{0x0000000006800000L}); 
    16013     public static final BitSet FOLLOW_rule__Import__Group__2_in_rule__Import__Group__13461 = new BitSet(new long[]{0x0000000000000002L}); 
    16014     public static final BitSet FOLLOW_rule__Import__ImportURIAssignment_1_in_rule__Import__Group__1__Impl3488 = new BitSet(new long[]{0x0000000000000002L}); 
    16015     public static final BitSet FOLLOW_rule__Import__Group__2__Impl_in_rule__Import__Group__23518 = new BitSet(new long[]{0x0000000006800000L}); 
    16016     public static final BitSet FOLLOW_rule__Import__Group__3_in_rule__Import__Group__23521 = new BitSet(new long[]{0x0000000000000002L}); 
    16017     public static final BitSet FOLLOW_rule__Import__Group_2__0_in_rule__Import__Group__2__Impl3548 = new BitSet(new long[]{0x0000000000000002L}); 
    16018     public static final BitSet FOLLOW_rule__Import__Group__3__Impl_in_rule__Import__Group__33579 = new BitSet(new long[]{0x0000000006800000L}); 
    16019     public static final BitSet FOLLOW_rule__Import__Group__4_in_rule__Import__Group__33582 = new BitSet(new long[]{0x0000000000000002L}); 
    16020     public static final BitSet FOLLOW_rule__Import__Group_3__0_in_rule__Import__Group__3__Impl3609 = new BitSet(new long[]{0x0000000000000002L}); 
    16021     public static final BitSet FOLLOW_rule__Import__Group__4__Impl_in_rule__Import__Group__43640 = new BitSet(new long[]{0x0000000000000002L}); 
    16022     public static final BitSet FOLLOW_23_in_rule__Import__Group__4__Impl3668 = new BitSet(new long[]{0x0000000000000002L}); 
    16023     public static final BitSet FOLLOW_rule__Import__Group_2__0__Impl_in_rule__Import__Group_2__03709 = new BitSet(new long[]{0x0000038000000000L}); 
    16024     public static final BitSet FOLLOW_rule__Import__Group_2__1_in_rule__Import__Group_2__03712 = new BitSet(new long[]{0x0000000000000002L}); 
    16025     public static final BitSet FOLLOW_25_in_rule__Import__Group_2__0__Impl3740 = new BitSet(new long[]{0x0000000000000002L}); 
    16026     public static final BitSet FOLLOW_rule__Import__Group_2__1__Impl_in_rule__Import__Group_2__13771 = new BitSet(new long[]{0x0000000000000002L}); 
    16027     public static final BitSet FOLLOW_rule__Import__Alternatives_2_1_in_rule__Import__Group_2__1__Impl3798 = new BitSet(new long[]{0x0000000000000002L}); 
    16028     public static final BitSet FOLLOW_rule__Import__Group_3__0__Impl_in_rule__Import__Group_3__03832 = new BitSet(new long[]{0x0000000000000010L}); 
    16029     public static final BitSet FOLLOW_rule__Import__Group_3__1_in_rule__Import__Group_3__03835 = new BitSet(new long[]{0x0000000000000002L}); 
    16030     public static final BitSet FOLLOW_26_in_rule__Import__Group_3__0__Impl3863 = new BitSet(new long[]{0x0000000000000002L}); 
    16031     public static final BitSet FOLLOW_rule__Import__Group_3__1__Impl_in_rule__Import__Group_3__13894 = new BitSet(new long[]{0x0000000000000002L}); 
    16032     public static final BitSet FOLLOW_rule__Import__LabelAssignment_3_1_in_rule__Import__Group_3__1__Impl3921 = new BitSet(new long[]{0x0000000000000002L}); 
    16033     public static final BitSet FOLLOW_rule__Rule__Group__0__Impl_in_rule__Rule__Group__03955 = new BitSet(new long[]{0x00000000010000B0L}); 
    16034     public static final BitSet FOLLOW_rule__Rule__Group__1_in_rule__Rule__Group__03958 = new BitSet(new long[]{0x0000000000000002L}); 
    16035     public static final BitSet FOLLOW_rule__Rule__Group_0__0_in_rule__Rule__Group__0__Impl3985 = new BitSet(new long[]{0x0000000000000002L}); 
    16036     public static final BitSet FOLLOW_rule__Rule__Group__1__Impl_in_rule__Rule__Group__14016 = new BitSet(new long[]{0x0000000008000000L}); 
    16037     public static final BitSet FOLLOW_rule__Rule__Group__2_in_rule__Rule__Group__14019 = new BitSet(new long[]{0x0000000000000002L}); 
    16038     public static final BitSet FOLLOW_rule__Rule__NameAssignment_1_in_rule__Rule__Group__1__Impl4046 = new BitSet(new long[]{0x0000000000000002L}); 
    16039     public static final BitSet FOLLOW_rule__Rule__Group__2__Impl_in_rule__Rule__Group__24076 = new BitSet(new long[]{0x00000000008E0250L}); 
    16040     public static final BitSet FOLLOW_rule__Rule__Group__3_in_rule__Rule__Group__24079 = new BitSet(new long[]{0x0000000000000002L}); 
    16041     public static final BitSet FOLLOW_27_in_rule__Rule__Group__2__Impl4107 = new BitSet(new long[]{0x0000000000000002L}); 
    16042     public static final BitSet FOLLOW_rule__Rule__Group__3__Impl_in_rule__Rule__Group__34138 = new BitSet(new long[]{0x00000000008E0250L}); 
    16043     public static final BitSet FOLLOW_rule__Rule__Group__4_in_rule__Rule__Group__34141 = new BitSet(new long[]{0x0000000000000002L}); 
    16044     public static final BitSet FOLLOW_rule__Rule__DefinitionListAssignment_3_in_rule__Rule__Group__3__Impl4168 = new BitSet(new long[]{0x0000000000000002L}); 
    16045     public static final BitSet FOLLOW_rule__Rule__Group__4__Impl_in_rule__Rule__Group__44199 = new BitSet(new long[]{0x0000000000000002L}); 
    16046     public static final BitSet FOLLOW_23_in_rule__Rule__Group__4__Impl4228 = new BitSet(new long[]{0x0000000000000002L}); 
    16047     public static final BitSet FOLLOW_rule__Rule__Group_0__0__Impl_in_rule__Rule__Group_0__04271 = new BitSet(new long[]{0x0000000010000010L}); 
    16048     public static final BitSet FOLLOW_rule__Rule__Group_0__1_in_rule__Rule__Group_0__04274 = new BitSet(new long[]{0x0000000000000002L}); 
    16049     public static final BitSet FOLLOW_rule__Rule__RulenumberAssignment_0_0_in_rule__Rule__Group_0__0__Impl4301 = new BitSet(new long[]{0x0000000000000002L}); 
    16050     public static final BitSet FOLLOW_rule__Rule__Group_0__1__Impl_in_rule__Rule__Group_0__14331 = new BitSet(new long[]{0x0000000010000010L}); 
    16051     public static final BitSet FOLLOW_rule__Rule__Group_0__2_in_rule__Rule__Group_0__14334 = new BitSet(new long[]{0x0000000000000002L}); 
    16052     public static final BitSet FOLLOW_rule__Rule__RulevariantAssignment_0_1_in_rule__Rule__Group_0__1__Impl4361 = new BitSet(new long[]{0x0000000000000002L}); 
    16053     public static final BitSet FOLLOW_rule__Rule__Group_0__2__Impl_in_rule__Rule__Group_0__24392 = new BitSet(new long[]{0x0000000000000002L}); 
    16054     public static final BitSet FOLLOW_28_in_rule__Rule__Group_0__2__Impl4420 = new BitSet(new long[]{0x0000000000000002L}); 
    16055     public static final BitSet FOLLOW_rule__ExtRule__Group__0__Impl_in_rule__ExtRule__Group__04457 = new BitSet(new long[]{0x00000000010000B0L}); 
    16056     public static final BitSet FOLLOW_rule__ExtRule__Group__1_in_rule__ExtRule__Group__04460 = new BitSet(new long[]{0x0000000000000002L}); 
    16057     public static final BitSet FOLLOW_rule__ExtRule__Group_0__0_in_rule__ExtRule__Group__0__Impl4487 = new BitSet(new long[]{0x0000000000000002L}); 
    16058     public static final BitSet FOLLOW_rule__ExtRule__Group__1__Impl_in_rule__ExtRule__Group__14518 = new BitSet(new long[]{0x0000000000020000L}); 
    16059     public static final BitSet FOLLOW_rule__ExtRule__Group__2_in_rule__ExtRule__Group__14521 = new BitSet(new long[]{0x0000000000000002L}); 
    16060     public static final BitSet FOLLOW_rule__ExtRule__NameAssignment_1_in_rule__ExtRule__Group__1__Impl4548 = new BitSet(new long[]{0x0000000000000002L}); 
    16061     public static final BitSet FOLLOW_rule__ExtRule__Group__2__Impl_in_rule__ExtRule__Group__24578 = new BitSet(new long[]{0x0000000020000000L}); 
    16062     public static final BitSet FOLLOW_rule__ExtRule__Group__3_in_rule__ExtRule__Group__24581 = new BitSet(new long[]{0x0000000000000002L}); 
    16063     public static final BitSet FOLLOW_rule__ExtRule__Group_2__0_in_rule__ExtRule__Group__2__Impl4608 = new BitSet(new long[]{0x0000000000000002L}); 
    16064     public static final BitSet FOLLOW_rule__ExtRule__Group__3__Impl_in_rule__ExtRule__Group__34638 = new BitSet(new long[]{0x0000000000BFE250L}); 
    16065     public static final BitSet FOLLOW_rule__ExtRule__Group__4_in_rule__ExtRule__Group__34641 = new BitSet(new long[]{0x0000000000000002L}); 
    16066     public static final BitSet FOLLOW_29_in_rule__ExtRule__Group__3__Impl4669 = new BitSet(new long[]{0x0000000000000002L}); 
    16067     public static final BitSet FOLLOW_rule__ExtRule__Group__4__Impl_in_rule__ExtRule__Group__44700 = new BitSet(new long[]{0x0000000000BFE250L}); 
    16068     public static final BitSet FOLLOW_rule__ExtRule__Group__5_in_rule__ExtRule__Group__44703 = new BitSet(new long[]{0x0000000000000002L}); 
    16069     public static final BitSet FOLLOW_rule__ExtRule__Alternatives_4_in_rule__ExtRule__Group__4__Impl4730 = new BitSet(new long[]{0x00000000003FE252L}); 
    16070     public static final BitSet FOLLOW_rule__ExtRule__Group__5__Impl_in_rule__ExtRule__Group__54761 = new BitSet(new long[]{0x0000000000000002L}); 
    16071     public static final BitSet FOLLOW_23_in_rule__ExtRule__Group__5__Impl4790 = new BitSet(new long[]{0x0000000000000002L}); 
    16072     public static final BitSet FOLLOW_rule__ExtRule__Group_0__0__Impl_in_rule__ExtRule__Group_0__04835 = new BitSet(new long[]{0x0000000010000010L}); 
    16073     public static final BitSet FOLLOW_rule__ExtRule__Group_0__1_in_rule__ExtRule__Group_0__04838 = new BitSet(new long[]{0x0000000000000002L}); 
    16074     public static final BitSet FOLLOW_rule__ExtRule__RulenumberAssignment_0_0_in_rule__ExtRule__Group_0__0__Impl4865 = new BitSet(new long[]{0x0000000000000002L}); 
    16075     public static final BitSet FOLLOW_rule__ExtRule__Group_0__1__Impl_in_rule__ExtRule__Group_0__14895 = new BitSet(new long[]{0x0000000010000010L}); 
    16076     public static final BitSet FOLLOW_rule__ExtRule__Group_0__2_in_rule__ExtRule__Group_0__14898 = new BitSet(new long[]{0x0000000000000002L}); 
    16077     public static final BitSet FOLLOW_rule__ExtRule__RulevariantAssignment_0_1_in_rule__ExtRule__Group_0__1__Impl4925 = new BitSet(new long[]{0x0000000000000002L}); 
    16078     public static final BitSet FOLLOW_rule__ExtRule__Group_0__2__Impl_in_rule__ExtRule__Group_0__24956 = new BitSet(new long[]{0x0000000000000002L}); 
    16079     public static final BitSet FOLLOW_28_in_rule__ExtRule__Group_0__2__Impl4984 = new BitSet(new long[]{0x0000000000000002L}); 
    16080     public static final BitSet FOLLOW_rule__ExtRule__Group_2__0__Impl_in_rule__ExtRule__Group_2__05021 = new BitSet(new long[]{0x0000000000000080L}); 
    16081     public static final BitSet FOLLOW_rule__ExtRule__Group_2__1_in_rule__ExtRule__Group_2__05024 = new BitSet(new long[]{0x0000000000000002L}); 
    16082     public static final BitSet FOLLOW_17_in_rule__ExtRule__Group_2__0__Impl5052 = new BitSet(new long[]{0x0000000000000002L}); 
    16083     public static final BitSet FOLLOW_rule__ExtRule__Group_2__1__Impl_in_rule__ExtRule__Group_2__15083 = new BitSet(new long[]{0x0000000000002000L}); 
    16084     public static final BitSet FOLLOW_rule__ExtRule__Group_2__2_in_rule__ExtRule__Group_2__15086 = new BitSet(new long[]{0x0000000000000002L}); 
    16085     public static final BitSet FOLLOW_rule__ExtRule__RuleextAssignment_2_1_in_rule__ExtRule__Group_2__1__Impl5113 = new BitSet(new long[]{0x0000000000000002L}); 
    16086     public static final BitSet FOLLOW_rule__ExtRule__Group_2__2__Impl_in_rule__ExtRule__Group_2__25143 = new BitSet(new long[]{0x0000000000000002L}); 
    16087     public static final BitSet FOLLOW_13_in_rule__ExtRule__Group_2__2__Impl5171 = new BitSet(new long[]{0x0000000000000002L}); 
    16088     public static final BitSet FOLLOW_rule__GlobalCombinator__Group__0__Impl_in_rule__GlobalCombinator__Group__05208 = new BitSet(new long[]{0x0000000000000100L}); 
    16089     public static final BitSet FOLLOW_rule__GlobalCombinator__Group__1_in_rule__GlobalCombinator__Group__05211 = new BitSet(new long[]{0x0000000000000002L}); 
    16090     public static final BitSet FOLLOW_rule__GlobalCombinator__Group_0__0_in_rule__GlobalCombinator__Group__0__Impl5238 = new BitSet(new long[]{0x0000000000000002L}); 
    16091     public static final BitSet FOLLOW_rule__GlobalCombinator__Group__1__Impl_in_rule__GlobalCombinator__Group__15268 = new BitSet(new long[]{0x0000000000800000L}); 
    16092     public static final BitSet FOLLOW_rule__GlobalCombinator__Group__2_in_rule__GlobalCombinator__Group__15271 = new BitSet(new long[]{0x0000000000000002L}); 
    16093     public static final BitSet FOLLOW_rule__GlobalCombinator__LogicAssignment_1_in_rule__GlobalCombinator__Group__1__Impl5298 = new BitSet(new long[]{0x0000000000000002L}); 
    16094     public static final BitSet FOLLOW_rule__GlobalCombinator__Group__2__Impl_in_rule__GlobalCombinator__Group__25328 = new BitSet(new long[]{0x0000000000000002L}); 
    16095     public static final BitSet FOLLOW_23_in_rule__GlobalCombinator__Group__2__Impl5357 = new BitSet(new long[]{0x0000000000000002L}); 
    16096     public static final BitSet FOLLOW_rule__GlobalCombinator__Group_0__0__Impl_in_rule__GlobalCombinator__Group_0__05396 = new BitSet(new long[]{0x0000000080000000L}); 
    16097     public static final BitSet FOLLOW_rule__GlobalCombinator__Group_0__1_in_rule__GlobalCombinator__Group_0__05399 = new BitSet(new long[]{0x0000000000000002L}); 
    16098     public static final BitSet FOLLOW_30_in_rule__GlobalCombinator__Group_0__0__Impl5427 = new BitSet(new long[]{0x0000000000000002L}); 
    16099     public static final BitSet FOLLOW_rule__GlobalCombinator__Group_0__1__Impl_in_rule__GlobalCombinator__Group_0__15458 = new BitSet(new long[]{0x0000000000000002L}); 
    16100     public static final BitSet FOLLOW_31_in_rule__GlobalCombinator__Group_0__1__Impl5486 = new BitSet(new long[]{0x0000000000000002L}); 
    16101     public static final BitSet FOLLOW_rule__RuleCombinator__Group__0__Impl_in_rule__RuleCombinator__Group__05521 = new BitSet(new long[]{0x0000000000000100L}); 
    16102     public static final BitSet FOLLOW_rule__RuleCombinator__Group__1_in_rule__RuleCombinator__Group__05524 = new BitSet(new long[]{0x0000000000000002L}); 
    16103     public static final BitSet FOLLOW_rule__RuleCombinator__Group_0__0_in_rule__RuleCombinator__Group__0__Impl5551 = new BitSet(new long[]{0x0000000000000002L}); 
    16104     public static final BitSet FOLLOW_rule__RuleCombinator__Group__1__Impl_in_rule__RuleCombinator__Group__15581 = new BitSet(new long[]{0x0000000000820000L}); 
    16105     public static final BitSet FOLLOW_rule__RuleCombinator__Group__2_in_rule__RuleCombinator__Group__15584 = new BitSet(new long[]{0x0000000000000002L}); 
    16106     public static final BitSet FOLLOW_rule__RuleCombinator__LogicAssignment_1_in_rule__RuleCombinator__Group__1__Impl5611 = new BitSet(new long[]{0x0000000000000002L}); 
    16107     public static final BitSet FOLLOW_rule__RuleCombinator__Group__2__Impl_in_rule__RuleCombinator__Group__25641 = new BitSet(new long[]{0x0000000000820000L}); 
    16108     public static final BitSet FOLLOW_rule__RuleCombinator__Group__3_in_rule__RuleCombinator__Group__25644 = new BitSet(new long[]{0x0000000000000002L}); 
    16109     public static final BitSet FOLLOW_rule__RuleCombinator__Group_2__0_in_rule__RuleCombinator__Group__2__Impl5671 = new BitSet(new long[]{0x0000000000020002L}); 
    16110     public static final BitSet FOLLOW_rule__RuleCombinator__Group__3__Impl_in_rule__RuleCombinator__Group__35702 = new BitSet(new long[]{0x0000000000000002L}); 
    16111     public static final BitSet FOLLOW_23_in_rule__RuleCombinator__Group__3__Impl5731 = new BitSet(new long[]{0x0000000000000002L}); 
    16112     public static final BitSet FOLLOW_rule__RuleCombinator__Group_0__0__Impl_in_rule__RuleCombinator__Group_0__05772 = new BitSet(new long[]{0x0000000080000000L}); 
    16113     public static final BitSet FOLLOW_rule__RuleCombinator__Group_0__1_in_rule__RuleCombinator__Group_0__05775 = new BitSet(new long[]{0x0000000000000002L}); 
    16114     public static final BitSet FOLLOW_32_in_rule__RuleCombinator__Group_0__0__Impl5803 = new BitSet(new long[]{0x0000000000000002L}); 
    16115     public static final BitSet FOLLOW_rule__RuleCombinator__Group_0__1__Impl_in_rule__RuleCombinator__Group_0__15834 = new BitSet(new long[]{0x0000000000000010L}); 
    16116     public static final BitSet FOLLOW_rule__RuleCombinator__Group_0__2_in_rule__RuleCombinator__Group_0__15837 = new BitSet(new long[]{0x0000000000000002L}); 
    16117     public static final BitSet FOLLOW_31_in_rule__RuleCombinator__Group_0__1__Impl5865 = new BitSet(new long[]{0x0000000000000002L}); 
    16118     public static final BitSet FOLLOW_rule__RuleCombinator__Group_0__2__Impl_in_rule__RuleCombinator__Group_0__25896 = new BitSet(new long[]{0x0000000000000002L}); 
    16119     public static final BitSet FOLLOW_rule__RuleCombinator__NameAssignment_0_2_in_rule__RuleCombinator__Group_0__2__Impl5923 = new BitSet(new long[]{0x0000000000000002L}); 
    16120     public static final BitSet FOLLOW_rule__RuleCombinator__Group_2__0__Impl_in_rule__RuleCombinator__Group_2__05959 = new BitSet(new long[]{0x0000000000000040L}); 
    16121     public static final BitSet FOLLOW_rule__RuleCombinator__Group_2__1_in_rule__RuleCombinator__Group_2__05962 = new BitSet(new long[]{0x0000000000000002L}); 
    16122     public static final BitSet FOLLOW_17_in_rule__RuleCombinator__Group_2__0__Impl5990 = new BitSet(new long[]{0x0000000000000002L}); 
    16123     public static final BitSet FOLLOW_rule__RuleCombinator__Group_2__1__Impl_in_rule__RuleCombinator__Group_2__16021 = new BitSet(new long[]{0x0000000000002000L}); 
    16124     public static final BitSet FOLLOW_rule__RuleCombinator__Group_2__2_in_rule__RuleCombinator__Group_2__16024 = new BitSet(new long[]{0x0000000000000002L}); 
    16125     public static final BitSet FOLLOW_rule__RuleCombinator__LABELAssignment_2_1_in_rule__RuleCombinator__Group_2__1__Impl6051 = new BitSet(new long[]{0x0000000000000002L}); 
    16126     public static final BitSet FOLLOW_rule__RuleCombinator__Group_2__2__Impl_in_rule__RuleCombinator__Group_2__26081 = new BitSet(new long[]{0x0000000000000002L}); 
    16127     public static final BitSet FOLLOW_13_in_rule__RuleCombinator__Group_2__2__Impl6109 = new BitSet(new long[]{0x0000000000000002L}); 
    16128     public static final BitSet FOLLOW_rule__HookCombinator__Group__0__Impl_in_rule__HookCombinator__Group__06146 = new BitSet(new long[]{0x0000000080000000L}); 
    16129     public static final BitSet FOLLOW_rule__HookCombinator__Group__1_in_rule__HookCombinator__Group__06149 = new BitSet(new long[]{0x0000000000000002L}); 
    16130     public static final BitSet FOLLOW_33_in_rule__HookCombinator__Group__0__Impl6177 = new BitSet(new long[]{0x0000000000000002L}); 
    16131     public static final BitSet FOLLOW_rule__HookCombinator__Group__1__Impl_in_rule__HookCombinator__Group__16208 = new BitSet(new long[]{0x0000000000000010L}); 
    16132     public static final BitSet FOLLOW_rule__HookCombinator__Group__2_in_rule__HookCombinator__Group__16211 = new BitSet(new long[]{0x0000000000000002L}); 
    16133     public static final BitSet FOLLOW_31_in_rule__HookCombinator__Group__1__Impl6239 = new BitSet(new long[]{0x0000000000000002L}); 
    16134     public static final BitSet FOLLOW_rule__HookCombinator__Group__2__Impl_in_rule__HookCombinator__Group__26270 = new BitSet(new long[]{0x0000000000020000L}); 
    16135     public static final BitSet FOLLOW_rule__HookCombinator__Group__3_in_rule__HookCombinator__Group__26273 = new BitSet(new long[]{0x0000000000000002L}); 
    16136     public static final BitSet FOLLOW_rule__HookCombinator__NameAssignment_2_in_rule__HookCombinator__Group__2__Impl6300 = new BitSet(new long[]{0x0000000000000002L}); 
    16137     public static final BitSet FOLLOW_rule__HookCombinator__Group__3__Impl_in_rule__HookCombinator__Group__36330 = new BitSet(new long[]{0x0000000000000080L}); 
    16138     public static final BitSet FOLLOW_rule__HookCombinator__Group__4_in_rule__HookCombinator__Group__36333 = new BitSet(new long[]{0x0000000000000002L}); 
    16139     public static final BitSet FOLLOW_17_in_rule__HookCombinator__Group__3__Impl6361 = new BitSet(new long[]{0x0000000000000002L}); 
    16140     public static final BitSet FOLLOW_rule__HookCombinator__Group__4__Impl_in_rule__HookCombinator__Group__46392 = new BitSet(new long[]{0x0000000000002000L}); 
    16141     public static final BitSet FOLLOW_rule__HookCombinator__Group__5_in_rule__HookCombinator__Group__46395 = new BitSet(new long[]{0x0000000000000002L}); 
    16142     public static final BitSet FOLLOW_rule__HookCombinator__RuleextAssignment_4_in_rule__HookCombinator__Group__4__Impl6422 = new BitSet(new long[]{0x0000000000000002L}); 
    16143     public static final BitSet FOLLOW_rule__HookCombinator__Group__5__Impl_in_rule__HookCombinator__Group__56452 = new BitSet(new long[]{0x0000000000020100L}); 
    16144     public static final BitSet FOLLOW_rule__HookCombinator__Group__6_in_rule__HookCombinator__Group__56455 = new BitSet(new long[]{0x0000000000000002L}); 
    16145     public static final BitSet FOLLOW_13_in_rule__HookCombinator__Group__5__Impl6483 = new BitSet(new long[]{0x0000000000000002L}); 
    16146     public static final BitSet FOLLOW_rule__HookCombinator__Group__6__Impl_in_rule__HookCombinator__Group__66514 = new BitSet(new long[]{0x0000000000020100L}); 
    16147     public static final BitSet FOLLOW_rule__HookCombinator__Group__7_in_rule__HookCombinator__Group__66517 = new BitSet(new long[]{0x0000000000000002L}); 
    16148     public static final BitSet FOLLOW_rule__HookCombinator__LogicAssignment_6_in_rule__HookCombinator__Group__6__Impl6544 = new BitSet(new long[]{0x0000000000000002L}); 
    16149     public static final BitSet FOLLOW_rule__HookCombinator__Group__7__Impl_in_rule__HookCombinator__Group__76575 = new BitSet(new long[]{0x0000000000800000L}); 
    16150     public static final BitSet FOLLOW_rule__HookCombinator__Group__8_in_rule__HookCombinator__Group__76578 = new BitSet(new long[]{0x0000000000000002L}); 
    16151     public static final BitSet FOLLOW_rule__HookCombinator__Group_7__0_in_rule__HookCombinator__Group__7__Impl6607 = new BitSet(new long[]{0x0000000000020102L}); 
    16152     public static final BitSet FOLLOW_rule__HookCombinator__Group_7__0_in_rule__HookCombinator__Group__7__Impl6619 = new BitSet(new long[]{0x0000000000020102L}); 
    16153     public static final BitSet FOLLOW_rule__HookCombinator__Group__8__Impl_in_rule__HookCombinator__Group__86652 = new BitSet(new long[]{0x0000000000000002L}); 
    16154     public static final BitSet FOLLOW_23_in_rule__HookCombinator__Group__8__Impl6681 = new BitSet(new long[]{0x0000000000000002L}); 
    16155     public static final BitSet FOLLOW_rule__HookCombinator__Group_7__0__Impl_in_rule__HookCombinator__Group_7__06732 = new BitSet(new long[]{0x0000000000000040L}); 
    16156     public static final BitSet FOLLOW_rule__HookCombinator__Group_7__1_in_rule__HookCombinator__Group_7__06735 = new BitSet(new long[]{0x0000000000000002L}); 
    16157     public static final BitSet FOLLOW_17_in_rule__HookCombinator__Group_7__0__Impl6763 = new BitSet(new long[]{0x0000000000000002L}); 
    16158     public static final BitSet FOLLOW_rule__HookCombinator__Group_7__1__Impl_in_rule__HookCombinator__Group_7__16794 = new BitSet(new long[]{0x0000000000002000L}); 
    16159     public static final BitSet FOLLOW_rule__HookCombinator__Group_7__2_in_rule__HookCombinator__Group_7__16797 = new BitSet(new long[]{0x0000000000000002L}); 
    16160     public static final BitSet FOLLOW_rule__HookCombinator__LABELAssignment_7_1_in_rule__HookCombinator__Group_7__1__Impl6824 = new BitSet(new long[]{0x0000000000000002L}); 
    16161     public static final BitSet FOLLOW_rule__HookCombinator__Group_7__2__Impl_in_rule__HookCombinator__Group_7__26854 = new BitSet(new long[]{0x0000000000000002L}); 
    16162     public static final BitSet FOLLOW_13_in_rule__HookCombinator__Group_7__2__Impl6882 = new BitSet(new long[]{0x0000000000000002L}); 
    16163     public static final BitSet FOLLOW_rule__DefinitionList__Group__0__Impl_in_rule__DefinitionList__Group__06919 = new BitSet(new long[]{0x0000000000010000L}); 
    16164     public static final BitSet FOLLOW_rule__DefinitionList__Group__1_in_rule__DefinitionList__Group__06922 = new BitSet(new long[]{0x0000000000000002L}); 
    16165     public static final BitSet FOLLOW_rule__DefinitionList__SingleDefinitionAssignment_0_in_rule__DefinitionList__Group__0__Impl6949 = new BitSet(new long[]{0x0000000000000002L}); 
    16166     public static final BitSet FOLLOW_rule__DefinitionList__Group__1__Impl_in_rule__DefinitionList__Group__16979 = new BitSet(new long[]{0x0000000000000002L}); 
    16167     public static final BitSet FOLLOW_rule__DefinitionList__Group_1__0_in_rule__DefinitionList__Group__1__Impl7006 = new BitSet(new long[]{0x0000000000010002L}); 
    16168     public static final BitSet FOLLOW_rule__DefinitionList__Group_1__0__Impl_in_rule__DefinitionList__Group_1__07041 = new BitSet(new long[]{0x00000000000E0250L}); 
    16169     public static final BitSet FOLLOW_rule__DefinitionList__Group_1__1_in_rule__DefinitionList__Group_1__07044 = new BitSet(new long[]{0x0000000000000002L}); 
    16170     public static final BitSet FOLLOW_16_in_rule__DefinitionList__Group_1__0__Impl7072 = new BitSet(new long[]{0x0000000000000002L}); 
    16171     public static final BitSet FOLLOW_rule__DefinitionList__Group_1__1__Impl_in_rule__DefinitionList__Group_1__17103 = new BitSet(new long[]{0x0000000000000002L}); 
    16172     public static final BitSet FOLLOW_rule__DefinitionList__SingleDefinitionAssignment_1_1_in_rule__DefinitionList__Group_1__1__Impl7130 = new BitSet(new long[]{0x0000000000000002L}); 
    16173     public static final BitSet FOLLOW_rule__GroupedSequence__Group__0__Impl_in_rule__GroupedSequence__Group__07164 = new BitSet(new long[]{0x00000000000E0250L}); 
    16174     public static final BitSet FOLLOW_rule__GroupedSequence__Group__1_in_rule__GroupedSequence__Group__07167 = new BitSet(new long[]{0x0000000000000002L}); 
    16175     public static final BitSet FOLLOW_17_in_rule__GroupedSequence__Group__0__Impl7195 = new BitSet(new long[]{0x0000000000000002L}); 
    16176     public static final BitSet FOLLOW_rule__GroupedSequence__Group__1__Impl_in_rule__GroupedSequence__Group__17226 = new BitSet(new long[]{0x0000000000002000L}); 
    16177     public static final BitSet FOLLOW_rule__GroupedSequence__Group__2_in_rule__GroupedSequence__Group__17229 = new BitSet(new long[]{0x0000000000000002L}); 
    16178     public static final BitSet FOLLOW_rule__GroupedSequence__DefinitionListAssignment_1_in_rule__GroupedSequence__Group__1__Impl7256 = new BitSet(new long[]{0x0000000000000002L}); 
    16179     public static final BitSet FOLLOW_rule__GroupedSequence__Group__2__Impl_in_rule__GroupedSequence__Group__27286 = new BitSet(new long[]{0x0000000000000002L}); 
    16180     public static final BitSet FOLLOW_13_in_rule__GroupedSequence__Group__2__Impl7314 = new BitSet(new long[]{0x0000000000000002L}); 
    16181     public static final BitSet FOLLOW_rule__OptionalSequence__Group__0__Impl_in_rule__OptionalSequence__Group__07351 = new BitSet(new long[]{0x00000000000E0250L}); 
    16182     public static final BitSet FOLLOW_rule__OptionalSequence__Group__1_in_rule__OptionalSequence__Group__07354 = new BitSet(new long[]{0x0000000000000002L}); 
    16183     public static final BitSet FOLLOW_18_in_rule__OptionalSequence__Group__0__Impl7382 = new BitSet(new long[]{0x0000000000000002L}); 
    16184     public static final BitSet FOLLOW_rule__OptionalSequence__Group__1__Impl_in_rule__OptionalSequence__Group__17413 = new BitSet(new long[]{0x0000000000004000L}); 
    16185     public static final BitSet FOLLOW_rule__OptionalSequence__Group__2_in_rule__OptionalSequence__Group__17416 = new BitSet(new long[]{0x0000000000000002L}); 
    16186     public static final BitSet FOLLOW_rule__OptionalSequence__DefinitionListAssignment_1_in_rule__OptionalSequence__Group__1__Impl7443 = new BitSet(new long[]{0x0000000000000002L}); 
    16187     public static final BitSet FOLLOW_rule__OptionalSequence__Group__2__Impl_in_rule__OptionalSequence__Group__27473 = new BitSet(new long[]{0x0000000000000002L}); 
    16188     public static final BitSet FOLLOW_14_in_rule__OptionalSequence__Group__2__Impl7501 = new BitSet(new long[]{0x0000000000000002L}); 
    16189     public static final BitSet FOLLOW_rule__RepeatedSequence__Group__0__Impl_in_rule__RepeatedSequence__Group__07538 = new BitSet(new long[]{0x00000000000E0250L}); 
    16190     public static final BitSet FOLLOW_rule__RepeatedSequence__Group__1_in_rule__RepeatedSequence__Group__07541 = new BitSet(new long[]{0x0000000000000002L}); 
    16191     public static final BitSet FOLLOW_19_in_rule__RepeatedSequence__Group__0__Impl7569 = new BitSet(new long[]{0x0000000000000002L}); 
    16192     public static final BitSet FOLLOW_rule__RepeatedSequence__Group__1__Impl_in_rule__RepeatedSequence__Group__17600 = new BitSet(new long[]{0x0000000000008000L}); 
    16193     public static final BitSet FOLLOW_rule__RepeatedSequence__Group__2_in_rule__RepeatedSequence__Group__17603 = new BitSet(new long[]{0x0000000000000002L}); 
    16194     public static final BitSet FOLLOW_rule__RepeatedSequence__DefinitionsAssignment_1_in_rule__RepeatedSequence__Group__1__Impl7630 = new BitSet(new long[]{0x0000000000000002L}); 
    16195     public static final BitSet FOLLOW_rule__RepeatedSequence__Group__2__Impl_in_rule__RepeatedSequence__Group__27660 = new BitSet(new long[]{0x0000000400200000L}); 
    16196     public static final BitSet FOLLOW_rule__RepeatedSequence__Group__3_in_rule__RepeatedSequence__Group__27663 = new BitSet(new long[]{0x0000000000000002L}); 
    16197     public static final BitSet FOLLOW_15_in_rule__RepeatedSequence__Group__2__Impl7691 = new BitSet(new long[]{0x0000000000000002L}); 
    16198     public static final BitSet FOLLOW_rule__RepeatedSequence__Group__3__Impl_in_rule__RepeatedSequence__Group__37722 = new BitSet(new long[]{0x0000000000000002L}); 
    16199     public static final BitSet FOLLOW_rule__RepeatedSequence__Alternatives_3_in_rule__RepeatedSequence__Group__3__Impl7749 = new BitSet(new long[]{0x0000000000000002L}); 
    16200     public static final BitSet FOLLOW_rule__RepeatRange__Group__0__Impl_in_rule__RepeatRange__Group__07787 = new BitSet(new long[]{0x0000000000020000L}); 
    16201     public static final BitSet FOLLOW_rule__RepeatRange__Group__1_in_rule__RepeatRange__Group__07790 = new BitSet(new long[]{0x0000000000000002L}); 
    16202     public static final BitSet FOLLOW_34_in_rule__RepeatRange__Group__0__Impl7818 = new BitSet(new long[]{0x0000000000000002L}); 
    16203     public static final BitSet FOLLOW_rule__RepeatRange__Group__1__Impl_in_rule__RepeatRange__Group__17849 = new BitSet(new long[]{0x0000000000000080L}); 
    16204     public static final BitSet FOLLOW_rule__RepeatRange__Group__2_in_rule__RepeatRange__Group__17852 = new BitSet(new long[]{0x0000000000000002L}); 
    16205     public static final BitSet FOLLOW_17_in_rule__RepeatRange__Group__1__Impl7880 = new BitSet(new long[]{0x0000000000000002L}); 
    16206     public static final BitSet FOLLOW_rule__RepeatRange__Group__2__Impl_in_rule__RepeatRange__Group__27911 = new BitSet(new long[]{0x0000000800000000L}); 
    16207     public static final BitSet FOLLOW_rule__RepeatRange__Group__3_in_rule__RepeatRange__Group__27914 = new BitSet(new long[]{0x0000000000000002L}); 
    16208     public static final BitSet FOLLOW_rule__RepeatRange__FromAssignment_2_in_rule__RepeatRange__Group__2__Impl7941 = new BitSet(new long[]{0x0000000000000002L}); 
    16209     public static final BitSet FOLLOW_rule__RepeatRange__Group__3__Impl_in_rule__RepeatRange__Group__37971 = new BitSet(new long[]{0x0000000000000080L}); 
    16210     public static final BitSet FOLLOW_rule__RepeatRange__Group__4_in_rule__RepeatRange__Group__37974 = new BitSet(new long[]{0x0000000000000002L}); 
    16211     public static final BitSet FOLLOW_35_in_rule__RepeatRange__Group__3__Impl8002 = new BitSet(new long[]{0x0000000000000002L}); 
    16212     public static final BitSet FOLLOW_rule__RepeatRange__Group__4__Impl_in_rule__RepeatRange__Group__48033 = new BitSet(new long[]{0x0000000000002000L}); 
    16213     public static final BitSet FOLLOW_rule__RepeatRange__Group__5_in_rule__RepeatRange__Group__48036 = new BitSet(new long[]{0x0000000000000002L}); 
    16214     public static final BitSet FOLLOW_rule__RepeatRange__ToAssignment_4_in_rule__RepeatRange__Group__4__Impl8063 = new BitSet(new long[]{0x0000000000000002L}); 
    16215     public static final BitSet FOLLOW_rule__RepeatRange__Group__5__Impl_in_rule__RepeatRange__Group__58093 = new BitSet(new long[]{0x0000000000000002L}); 
    16216     public static final BitSet FOLLOW_13_in_rule__RepeatRange__Group__5__Impl8121 = new BitSet(new long[]{0x0000000000000002L}); 
    16217     public static final BitSet FOLLOW_RULE_ID_in_rule__EtsiBnf__NameAssignment_0_18169 = new BitSet(new long[]{0x0000000000000002L}); 
    16218     public static final BitSet FOLLOW_36_in_rule__EtsiBnf__TypeAssignment_0_2_08205 = new BitSet(new long[]{0x0000000000000002L}); 
    16219     public static final BitSet FOLLOW_ruleImportSection_in_rule__EtsiBnf__ImportSectionAssignment_0_2_28244 = new BitSet(new long[]{0x0000000000000002L}); 
    16220     public static final BitSet FOLLOW_ruleBnfEntry_in_rule__EtsiBnf__BnfEntryAssignment_0_2_38275 = new BitSet(new long[]{0x0000000000000002L}); 
    16221     public static final BitSet FOLLOW_37_in_rule__EtsiBnf__TypeAssignment_1_08311 = new BitSet(new long[]{0x0000000000000002L}); 
    16222     public static final BitSet FOLLOW_ruleImportSection_in_rule__EtsiBnf__ImportSectionAssignment_1_28350 = new BitSet(new long[]{0x0000000000000002L}); 
    16223     public static final BitSet FOLLOW_ruleDeltaEntry_in_rule__EtsiBnf__DeltaEntryAssignment_1_38381 = new BitSet(new long[]{0x0000000000000002L}); 
    16224     public static final BitSet FOLLOW_38_in_rule__EtsiBnf__TypeAssignment_2_08417 = new BitSet(new long[]{0x0000000000000002L}); 
    16225     public static final BitSet FOLLOW_ruleImportSection_in_rule__EtsiBnf__ImportSectionAssignment_2_28456 = new BitSet(new long[]{0x0000000000000002L}); 
    16226     public static final BitSet FOLLOW_ruleMergeEntry_in_rule__EtsiBnf__MergeEntryAssignment_2_38487 = new BitSet(new long[]{0x0000000000000002L}); 
    16227     public static final BitSet FOLLOW_ruleImport_in_rule__ImportSection__ImportsAssignment8518 = new BitSet(new long[]{0x0000000000000002L}); 
    16228     public static final BitSet FOLLOW_ruleSectionHeading_in_rule__BnfEntry__SectionheaderAssignment_08549 = new BitSet(new long[]{0x0000000000000002L}); 
    16229     public static final BitSet FOLLOW_ruleRule_in_rule__BnfEntry__RuleAssignment_18580 = new BitSet(new long[]{0x0000000000000002L}); 
    16230     public static final BitSet FOLLOW_ruleRule_in_rule__DeltaEntry__RuleAssignment_08611 = new BitSet(new long[]{0x0000000000000002L}); 
    16231     public static final BitSet FOLLOW_ruleSectionHeading_in_rule__DeltaEntry__SectionheaderAssignment_18642 = new BitSet(new long[]{0x0000000000000002L}); 
    16232     public static final BitSet FOLLOW_ruleExtRule_in_rule__DeltaEntry__ExtRuleAssignment_28673 = new BitSet(new long[]{0x0000000000000002L}); 
    16233     public static final BitSet FOLLOW_ruleSectionHeading_in_rule__MergeEntry__SectionheaderAssignment_08704 = new BitSet(new long[]{0x0000000000000002L}); 
    16234     public static final BitSet FOLLOW_ruleMergeRule_in_rule__MergeEntry__MergeRuleAssignment_18735 = new BitSet(new long[]{0x0000000000000002L}); 
    16235     public static final BitSet FOLLOW_RULE_SECTIONHEADER_in_rule__SectionHeading__SectionHeaderAssignment_18766 = new BitSet(new long[]{0x0000000000000002L}); 
    16236     public static final BitSet FOLLOW_RULE_STRING_in_rule__Import__ImportURIAssignment_18797 = new BitSet(new long[]{0x0000000000000002L}); 
    16237     public static final BitSet FOLLOW_39_in_rule__Import__GrammarTypeAssignment_2_1_08833 = new BitSet(new long[]{0x0000000000000002L}); 
    16238     public static final BitSet FOLLOW_40_in_rule__Import__GrammarTypeAssignment_2_1_18877 = new BitSet(new long[]{0x0000000000000002L}); 
    16239     public static final BitSet FOLLOW_41_in_rule__Import__GrammarTypeAssignment_2_1_28921 = new BitSet(new long[]{0x0000000000000002L}); 
    16240     public static final BitSet FOLLOW_RULE_ID_in_rule__Import__LabelAssignment_3_18960 = new BitSet(new long[]{0x0000000000000002L}); 
    16241     public static final BitSet FOLLOW_RULE_INT_in_rule__Rule__RulenumberAssignment_0_08991 = new BitSet(new long[]{0x0000000000000002L}); 
    16242     public static final BitSet FOLLOW_RULE_ID_in_rule__Rule__RulevariantAssignment_0_19022 = new BitSet(new long[]{0x0000000000000002L}); 
    16243     public static final BitSet FOLLOW_RULE_ID_in_rule__Rule__NameAssignment_19053 = new BitSet(new long[]{0x0000000000000002L}); 
    16244     public static final BitSet FOLLOW_ruleDefinitionList_in_rule__Rule__DefinitionListAssignment_39084 = new BitSet(new long[]{0x0000000000000002L}); 
    16245     public static final BitSet FOLLOW_RULE_INT_in_rule__ExtRule__RulenumberAssignment_0_09115 = new BitSet(new long[]{0x0000000000000002L}); 
    16246     public static final BitSet FOLLOW_RULE_ID_in_rule__ExtRule__RulevariantAssignment_0_19146 = new BitSet(new long[]{0x0000000000000002L}); 
    16247     public static final BitSet FOLLOW_RULE_ID_in_rule__ExtRule__NameAssignment_19177 = new BitSet(new long[]{0x0000000000000002L}); 
    16248     public static final BitSet FOLLOW_RULE_INT_in_rule__ExtRule__RuleextAssignment_2_19208 = new BitSet(new long[]{0x0000000000000002L}); 
    16249     public static final BitSet FOLLOW_ruleAtom_in_rule__ExtRule__ElementsAssignment_4_09239 = new BitSet(new long[]{0x0000000000000002L}); 
    16250     public static final BitSet FOLLOW_RULE_LOGIC_in_rule__GlobalCombinator__LogicAssignment_19270 = new BitSet(new long[]{0x0000000000000002L}); 
    16251     public static final BitSet FOLLOW_RULE_ID_in_rule__RuleCombinator__NameAssignment_0_29301 = new BitSet(new long[]{0x0000000000000002L}); 
    16252     public static final BitSet FOLLOW_RULE_LOGIC_in_rule__RuleCombinator__LogicAssignment_19332 = new BitSet(new long[]{0x0000000000000002L}); 
    16253     public static final BitSet FOLLOW_RULE_STRING_in_rule__RuleCombinator__LABELAssignment_2_19363 = new BitSet(new long[]{0x0000000000000002L}); 
    16254     public static final BitSet FOLLOW_RULE_ID_in_rule__HookCombinator__NameAssignment_29394 = new BitSet(new long[]{0x0000000000000002L}); 
    16255     public static final BitSet FOLLOW_RULE_INT_in_rule__HookCombinator__RuleextAssignment_49425 = new BitSet(new long[]{0x0000000000000002L}); 
    16256     public static final BitSet FOLLOW_RULE_LOGIC_in_rule__HookCombinator__LogicAssignment_69456 = new BitSet(new long[]{0x0000000000000002L}); 
    16257     public static final BitSet FOLLOW_RULE_STRING_in_rule__HookCombinator__LABELAssignment_7_19487 = new BitSet(new long[]{0x0000000000000002L}); 
    16258     public static final BitSet FOLLOW_ruleSingleDefinition_in_rule__DefinitionList__SingleDefinitionAssignment_09518 = new BitSet(new long[]{0x0000000000000002L}); 
    16259     public static final BitSet FOLLOW_ruleSingleDefinition_in_rule__DefinitionList__SingleDefinitionAssignment_1_19549 = new BitSet(new long[]{0x0000000000000002L}); 
    16260     public static final BitSet FOLLOW_ruleTerm_in_rule__SingleDefinition__TermsAssignment9580 = new BitSet(new long[]{0x0000000000000002L}); 
    16261     public static final BitSet FOLLOW_ruleAtom_in_rule__Term__TermAtomAssignment_09611 = new BitSet(new long[]{0x0000000000000002L}); 
    16262     public static final BitSet FOLLOW_ruleGroupedSequence_in_rule__Term__TermGroupedSequenceAssignment_19642 = new BitSet(new long[]{0x0000000000000002L}); 
    16263     public static final BitSet FOLLOW_ruleOptionalSequence_in_rule__Term__TermOptionalSequenceAssignment_29673 = new BitSet(new long[]{0x0000000000000002L}); 
    16264     public static final BitSet FOLLOW_ruleRepeatedSequence_in_rule__Term__TermRepeatedSequenceAssignment_39704 = new BitSet(new long[]{0x0000000000000002L}); 
    16265     public static final BitSet FOLLOW_ruleStringRule_in_rule__Atom__AtomStringRuleAssignment_09735 = new BitSet(new long[]{0x0000000000000002L}); 
    16266     public static final BitSet FOLLOW_ruleRuleReference_in_rule__Atom__AtomRuleReferenceAssignment_19766 = new BitSet(new long[]{0x0000000000000002L}); 
    16267     public static final BitSet FOLLOW_RULE_ID_in_rule__RuleReference__RulerefAssignment9801 = new BitSet(new long[]{0x0000000000000002L}); 
    16268     public static final BitSet FOLLOW_RULE_STRING_in_rule__StringRule__LiteralAssignment_09836 = new BitSet(new long[]{0x0000000000000002L}); 
    16269     public static final BitSet FOLLOW_RULE_COLON_in_rule__StringRule__ColonAssignment_19867 = new BitSet(new long[]{0x0000000000000002L}); 
    16270     public static final BitSet FOLLOW_ruleDefinitionList_in_rule__GroupedSequence__DefinitionListAssignment_19898 = new BitSet(new long[]{0x0000000000000002L}); 
    16271     public static final BitSet FOLLOW_ruleDefinitionList_in_rule__OptionalSequence__DefinitionListAssignment_19929 = new BitSet(new long[]{0x0000000000000002L}); 
    16272     public static final BitSet FOLLOW_ruleDefinitionList_in_rule__RepeatedSequence__DefinitionsAssignment_19960 = new BitSet(new long[]{0x0000000000000002L}); 
    16273     public static final BitSet FOLLOW_21_in_rule__RepeatedSequence__MorethanonceAssignment_3_09996 = new BitSet(new long[]{0x0000000000000002L}); 
    16274     public static final BitSet FOLLOW_ruleRepeatRange_in_rule__RepeatedSequence__RangeAssignment_3_110035 = new BitSet(new long[]{0x0000000000000002L}); 
    16275     public static final BitSet FOLLOW_RULE_INT_in_rule__RepeatRange__FromAssignment_210066 = new BitSet(new long[]{0x0000000000000002L}); 
    16276     public static final BitSet FOLLOW_RULE_INT_in_rule__RepeatRange__ToAssignment_410097 = new BitSet(new long[]{0x0000000000000002L}); 
    16277     public static final BitSet FOLLOW_rule__RepeatedSequence__MorethanonceAssignment_3_0_in_synpred28_InternalEbnf2274 = new BitSet(new long[]{0x0000000000000002L}); 
     16288    public static final BitSet FOLLOW_ruleComment_in_entryRuleComment451 = new BitSet(new long[]{0x0000000000000000L}); 
     16289    public static final BitSet FOLLOW_EOF_in_entryRuleComment458 = new BitSet(new long[]{0x0000000000000002L}); 
     16290    public static final BitSet FOLLOW_rule__Comment__Group__0_in_ruleComment484 = new BitSet(new long[]{0x0000000000000002L}); 
     16291    public static final BitSet FOLLOW_ruleImport_in_entryRuleImport511 = new BitSet(new long[]{0x0000000000000000L}); 
     16292    public static final BitSet FOLLOW_EOF_in_entryRuleImport518 = new BitSet(new long[]{0x0000000000000002L}); 
     16293    public static final BitSet FOLLOW_rule__Import__Group__0_in_ruleImport544 = new BitSet(new long[]{0x0000000000000002L}); 
     16294    public static final BitSet FOLLOW_ruleRule_in_entryRuleRule571 = new BitSet(new long[]{0x0000000000000000L}); 
     16295    public static final BitSet FOLLOW_EOF_in_entryRuleRule578 = new BitSet(new long[]{0x0000000000000002L}); 
     16296    public static final BitSet FOLLOW_rule__Rule__Group__0_in_ruleRule604 = new BitSet(new long[]{0x0000000000000002L}); 
     16297    public static final BitSet FOLLOW_ruleExtRule_in_entryRuleExtRule631 = new BitSet(new long[]{0x0000000000000000L}); 
     16298    public static final BitSet FOLLOW_EOF_in_entryRuleExtRule638 = new BitSet(new long[]{0x0000000000000002L}); 
     16299    public static final BitSet FOLLOW_rule__ExtRule__Group__0_in_ruleExtRule664 = new BitSet(new long[]{0x0000000000000002L}); 
     16300    public static final BitSet FOLLOW_ruleMergeRule_in_entryRuleMergeRule691 = new BitSet(new long[]{0x0000000000000000L}); 
     16301    public static final BitSet FOLLOW_EOF_in_entryRuleMergeRule698 = new BitSet(new long[]{0x0000000000000002L}); 
     16302    public static final BitSet FOLLOW_rule__MergeRule__Alternatives_in_ruleMergeRule724 = new BitSet(new long[]{0x0000000000000002L}); 
     16303    public static final BitSet FOLLOW_ruleGlobalCombinator_in_entryRuleGlobalCombinator751 = new BitSet(new long[]{0x0000000000000000L}); 
     16304    public static final BitSet FOLLOW_EOF_in_entryRuleGlobalCombinator758 = new BitSet(new long[]{0x0000000000000002L}); 
     16305    public static final BitSet FOLLOW_rule__GlobalCombinator__Group__0_in_ruleGlobalCombinator784 = new BitSet(new long[]{0x0000000000000002L}); 
     16306    public static final BitSet FOLLOW_ruleRuleCombinator_in_entryRuleRuleCombinator811 = new BitSet(new long[]{0x0000000000000000L}); 
     16307    public static final BitSet FOLLOW_EOF_in_entryRuleRuleCombinator818 = new BitSet(new long[]{0x0000000000000002L}); 
     16308    public static final BitSet FOLLOW_rule__RuleCombinator__Group__0_in_ruleRuleCombinator844 = new BitSet(new long[]{0x0000000000000002L}); 
     16309    public static final BitSet FOLLOW_ruleHookCombinator_in_entryRuleHookCombinator871 = new BitSet(new long[]{0x0000000000000000L}); 
     16310    public static final BitSet FOLLOW_EOF_in_entryRuleHookCombinator878 = new BitSet(new long[]{0x0000000000000002L}); 
     16311    public static final BitSet FOLLOW_rule__HookCombinator__Group__0_in_ruleHookCombinator904 = new BitSet(new long[]{0x0000000000000002L}); 
     16312    public static final BitSet FOLLOW_ruleDefinitionList_in_entryRuleDefinitionList931 = new BitSet(new long[]{0x0000000000000000L}); 
     16313    public static final BitSet FOLLOW_EOF_in_entryRuleDefinitionList938 = new BitSet(new long[]{0x0000000000000002L}); 
     16314    public static final BitSet FOLLOW_rule__DefinitionList__Group__0_in_ruleDefinitionList964 = new BitSet(new long[]{0x0000000000000002L}); 
     16315    public static final BitSet FOLLOW_ruleSingleDefinition_in_entryRuleSingleDefinition991 = new BitSet(new long[]{0x0000000000000000L}); 
     16316    public static final BitSet FOLLOW_EOF_in_entryRuleSingleDefinition998 = new BitSet(new long[]{0x0000000000000002L}); 
     16317    public static final BitSet FOLLOW_rule__SingleDefinition__TermsAssignment_in_ruleSingleDefinition1026 = new BitSet(new long[]{0x00000000000E0492L}); 
     16318    public static final BitSet FOLLOW_rule__SingleDefinition__TermsAssignment_in_ruleSingleDefinition1038 = new BitSet(new long[]{0x00000000000E0492L}); 
     16319    public static final BitSet FOLLOW_ruleTerm_in_entryRuleTerm1068 = new BitSet(new long[]{0x0000000000000000L}); 
     16320    public static final BitSet FOLLOW_EOF_in_entryRuleTerm1075 = new BitSet(new long[]{0x0000000000000002L}); 
     16321    public static final BitSet FOLLOW_rule__Term__Alternatives_in_ruleTerm1101 = new BitSet(new long[]{0x0000000000000002L}); 
     16322    public static final BitSet FOLLOW_ruleAtom_in_entryRuleAtom1128 = new BitSet(new long[]{0x0000000000000000L}); 
     16323    public static final BitSet FOLLOW_EOF_in_entryRuleAtom1135 = new BitSet(new long[]{0x0000000000000002L}); 
     16324    public static final BitSet FOLLOW_rule__Atom__Alternatives_in_ruleAtom1161 = new BitSet(new long[]{0x0000000000000002L}); 
     16325    public static final BitSet FOLLOW_ruleRuleReference_in_entryRuleRuleReference1188 = new BitSet(new long[]{0x0000000000000000L}); 
     16326    public static final BitSet FOLLOW_EOF_in_entryRuleRuleReference1195 = new BitSet(new long[]{0x0000000000000002L}); 
     16327    public static final BitSet FOLLOW_rule__RuleReference__RulerefAssignment_in_ruleRuleReference1221 = new BitSet(new long[]{0x0000000000000002L}); 
     16328    public static final BitSet FOLLOW_ruleStringRule_in_entryRuleStringRule1248 = new BitSet(new long[]{0x0000000000000000L}); 
     16329    public static final BitSet FOLLOW_EOF_in_entryRuleStringRule1255 = new BitSet(new long[]{0x0000000000000002L}); 
     16330    public static final BitSet FOLLOW_rule__StringRule__Alternatives_in_ruleStringRule1281 = new BitSet(new long[]{0x0000000000000002L}); 
     16331    public static final BitSet FOLLOW_ruleGroupedSequence_in_entryRuleGroupedSequence1308 = new BitSet(new long[]{0x0000000000000000L}); 
     16332    public static final BitSet FOLLOW_EOF_in_entryRuleGroupedSequence1315 = new BitSet(new long[]{0x0000000000000002L}); 
     16333    public static final BitSet FOLLOW_rule__GroupedSequence__Group__0_in_ruleGroupedSequence1341 = new BitSet(new long[]{0x0000000000000002L}); 
     16334    public static final BitSet FOLLOW_ruleOptionalSequence_in_entryRuleOptionalSequence1368 = new BitSet(new long[]{0x0000000000000000L}); 
     16335    public static final BitSet FOLLOW_EOF_in_entryRuleOptionalSequence1375 = new BitSet(new long[]{0x0000000000000002L}); 
     16336    public static final BitSet FOLLOW_rule__OptionalSequence__Group__0_in_ruleOptionalSequence1401 = new BitSet(new long[]{0x0000000000000002L}); 
     16337    public static final BitSet FOLLOW_ruleRepeatedSequence_in_entryRuleRepeatedSequence1428 = new BitSet(new long[]{0x0000000000000000L}); 
     16338    public static final BitSet FOLLOW_EOF_in_entryRuleRepeatedSequence1435 = new BitSet(new long[]{0x0000000000000002L}); 
     16339    public static final BitSet FOLLOW_rule__RepeatedSequence__Group__0_in_ruleRepeatedSequence1461 = new BitSet(new long[]{0x0000000000000002L}); 
     16340    public static final BitSet FOLLOW_ruleRepeatRange_in_entryRuleRepeatRange1488 = new BitSet(new long[]{0x0000000000000000L}); 
     16341    public static final BitSet FOLLOW_EOF_in_entryRuleRepeatRange1495 = new BitSet(new long[]{0x0000000000000002L}); 
     16342    public static final BitSet FOLLOW_rule__RepeatRange__Group__0_in_ruleRepeatRange1521 = new BitSet(new long[]{0x0000000000000002L}); 
     16343    public static final BitSet FOLLOW_rule__EtsiBnf__Group_0__0_in_rule__EtsiBnf__Alternatives1557 = new BitSet(new long[]{0x0000000000000002L}); 
     16344    public static final BitSet FOLLOW_rule__EtsiBnf__Group_1__0_in_rule__EtsiBnf__Alternatives1575 = new BitSet(new long[]{0x0000000000000002L}); 
     16345    public static final BitSet FOLLOW_rule__EtsiBnf__Group_2__0_in_rule__EtsiBnf__Alternatives1593 = new BitSet(new long[]{0x0000000000000002L}); 
     16346    public static final BitSet FOLLOW_rule__BnfEntry__SectionheaderAssignment_0_in_rule__BnfEntry__Alternatives1626 = new BitSet(new long[]{0x0000000000000002L}); 
     16347    public static final BitSet FOLLOW_rule__BnfEntry__RuleAssignment_1_in_rule__BnfEntry__Alternatives1644 = new BitSet(new long[]{0x0000000000000002L}); 
     16348    public static final BitSet FOLLOW_rule__BnfEntry__CommentAssignment_2_in_rule__BnfEntry__Alternatives1662 = new BitSet(new long[]{0x0000000000000002L}); 
     16349    public static final BitSet FOLLOW_rule__DeltaEntry__RuleAssignment_0_in_rule__DeltaEntry__Alternatives1695 = new BitSet(new long[]{0x0000000000000002L}); 
     16350    public static final BitSet FOLLOW_rule__DeltaEntry__SectionheaderAssignment_1_in_rule__DeltaEntry__Alternatives1713 = new BitSet(new long[]{0x0000000000000002L}); 
     16351    public static final BitSet FOLLOW_rule__DeltaEntry__ExtRuleAssignment_2_in_rule__DeltaEntry__Alternatives1731 = new BitSet(new long[]{0x0000000000000002L}); 
     16352    public static final BitSet FOLLOW_rule__MergeEntry__SectionheaderAssignment_0_in_rule__MergeEntry__Alternatives1764 = new BitSet(new long[]{0x0000000000000002L}); 
     16353    public static final BitSet FOLLOW_rule__MergeEntry__MergeRuleAssignment_1_in_rule__MergeEntry__Alternatives1782 = new BitSet(new long[]{0x0000000000000002L}); 
     16354    public static final BitSet FOLLOW_rule__Import__GrammarTypeAssignment_2_1_0_in_rule__Import__Alternatives_2_11815 = new BitSet(new long[]{0x0000000000000002L}); 
     16355    public static final BitSet FOLLOW_rule__Import__GrammarTypeAssignment_2_1_1_in_rule__Import__Alternatives_2_11833 = new BitSet(new long[]{0x0000000000000002L}); 
     16356    public static final BitSet FOLLOW_rule__Import__GrammarTypeAssignment_2_1_2_in_rule__Import__Alternatives_2_11851 = new BitSet(new long[]{0x0000000000000002L}); 
     16357    public static final BitSet FOLLOW_rule__ExtRule__ElementsAssignment_4_0_in_rule__ExtRule__Alternatives_41884 = new BitSet(new long[]{0x0000000000000002L}); 
     16358    public static final BitSet FOLLOW_13_in_rule__ExtRule__Alternatives_41903 = new BitSet(new long[]{0x0000000000000002L}); 
     16359    public static final BitSet FOLLOW_14_in_rule__ExtRule__Alternatives_41923 = new BitSet(new long[]{0x0000000000000002L}); 
     16360    public static final BitSet FOLLOW_15_in_rule__ExtRule__Alternatives_41943 = new BitSet(new long[]{0x0000000000000002L}); 
     16361    public static final BitSet FOLLOW_16_in_rule__ExtRule__Alternatives_41963 = new BitSet(new long[]{0x0000000000000002L}); 
     16362    public static final BitSet FOLLOW_17_in_rule__ExtRule__Alternatives_41983 = new BitSet(new long[]{0x0000000000000002L}); 
     16363    public static final BitSet FOLLOW_18_in_rule__ExtRule__Alternatives_42003 = new BitSet(new long[]{0x0000000000000002L}); 
     16364    public static final BitSet FOLLOW_19_in_rule__ExtRule__Alternatives_42023 = new BitSet(new long[]{0x0000000000000002L}); 
     16365    public static final BitSet FOLLOW_20_in_rule__ExtRule__Alternatives_42043 = new BitSet(new long[]{0x0000000000000002L}); 
     16366    public static final BitSet FOLLOW_21_in_rule__ExtRule__Alternatives_42063 = new BitSet(new long[]{0x0000000000000002L}); 
     16367    public static final BitSet FOLLOW_ruleGlobalCombinator_in_rule__MergeRule__Alternatives2097 = new BitSet(new long[]{0x0000000000000002L}); 
     16368    public static final BitSet FOLLOW_ruleRuleCombinator_in_rule__MergeRule__Alternatives2114 = new BitSet(new long[]{0x0000000000000002L}); 
     16369    public static final BitSet FOLLOW_ruleHookCombinator_in_rule__MergeRule__Alternatives2131 = new BitSet(new long[]{0x0000000000000002L}); 
     16370    public static final BitSet FOLLOW_rule__Term__TermAtomAssignment_0_in_rule__Term__Alternatives2163 = new BitSet(new long[]{0x0000000000000002L}); 
     16371    public static final BitSet FOLLOW_rule__Term__TermGroupedSequenceAssignment_1_in_rule__Term__Alternatives2181 = new BitSet(new long[]{0x0000000000000002L}); 
     16372    public static final BitSet FOLLOW_rule__Term__TermOptionalSequenceAssignment_2_in_rule__Term__Alternatives2199 = new BitSet(new long[]{0x0000000000000002L}); 
     16373    public static final BitSet FOLLOW_rule__Term__TermRepeatedSequenceAssignment_3_in_rule__Term__Alternatives2217 = new BitSet(new long[]{0x0000000000000002L}); 
     16374    public static final BitSet FOLLOW_rule__Atom__AtomStringRuleAssignment_0_in_rule__Atom__Alternatives2250 = new BitSet(new long[]{0x0000000000000002L}); 
     16375    public static final BitSet FOLLOW_rule__Atom__AtomRuleReferenceAssignment_1_in_rule__Atom__Alternatives2268 = new BitSet(new long[]{0x0000000000000002L}); 
     16376    public static final BitSet FOLLOW_rule__StringRule__LiteralAssignment_0_in_rule__StringRule__Alternatives2301 = new BitSet(new long[]{0x0000000000000002L}); 
     16377    public static final BitSet FOLLOW_rule__StringRule__ColonAssignment_1_in_rule__StringRule__Alternatives2319 = new BitSet(new long[]{0x0000000000000002L}); 
     16378    public static final BitSet FOLLOW_rule__RepeatedSequence__MorethanonceAssignment_3_0_in_rule__RepeatedSequence__Alternatives_32352 = new BitSet(new long[]{0x0000000000000002L}); 
     16379    public static final BitSet FOLLOW_rule__RepeatedSequence__RangeAssignment_3_1_in_rule__RepeatedSequence__Alternatives_32371 = new BitSet(new long[]{0x0000000000000002L}); 
     16380    public static final BitSet FOLLOW_rule__EtsiBnf__Group_0__0__Impl_in_rule__EtsiBnf__Group_0__02403 = new BitSet(new long[]{0x0000000000000010L}); 
     16381    public static final BitSet FOLLOW_rule__EtsiBnf__Group_0__1_in_rule__EtsiBnf__Group_0__02406 = new BitSet(new long[]{0x0000000000000002L}); 
     16382    public static final BitSet FOLLOW_22_in_rule__EtsiBnf__Group_0__0__Impl2434 = new BitSet(new long[]{0x0000000000000002L}); 
     16383    public static final BitSet FOLLOW_rule__EtsiBnf__Group_0__1__Impl_in_rule__EtsiBnf__Group_0__12465 = new BitSet(new long[]{0x0000001000800000L}); 
     16384    public static final BitSet FOLLOW_rule__EtsiBnf__Group_0__2_in_rule__EtsiBnf__Group_0__12468 = new BitSet(new long[]{0x0000000000000002L}); 
     16385    public static final BitSet FOLLOW_rule__EtsiBnf__NameAssignment_0_1_in_rule__EtsiBnf__Group_0__1__Impl2495 = new BitSet(new long[]{0x0000000000000002L}); 
     16386    public static final BitSet FOLLOW_rule__EtsiBnf__Group_0__2__Impl_in_rule__EtsiBnf__Group_0__22525 = new BitSet(new long[]{0x0000000000000002L}); 
     16387    public static final BitSet FOLLOW_rule__EtsiBnf__Group_0_2__0_in_rule__EtsiBnf__Group_0__2__Impl2552 = new BitSet(new long[]{0x0000000000000002L}); 
     16388    public static final BitSet FOLLOW_rule__EtsiBnf__Group_0_2__0__Impl_in_rule__EtsiBnf__Group_0_2__02588 = new BitSet(new long[]{0x0000001000800000L}); 
     16389    public static final BitSet FOLLOW_rule__EtsiBnf__Group_0_2__1_in_rule__EtsiBnf__Group_0_2__02591 = new BitSet(new long[]{0x0000000000000002L}); 
     16390    public static final BitSet FOLLOW_rule__EtsiBnf__TypeAssignment_0_2_0_in_rule__EtsiBnf__Group_0_2__0__Impl2618 = new BitSet(new long[]{0x0000000000000002L}); 
     16391    public static final BitSet FOLLOW_rule__EtsiBnf__Group_0_2__1__Impl_in_rule__EtsiBnf__Group_0_2__12649 = new BitSet(new long[]{0x0000000001000170L}); 
     16392    public static final BitSet FOLLOW_rule__EtsiBnf__Group_0_2__2_in_rule__EtsiBnf__Group_0_2__12652 = new BitSet(new long[]{0x0000000000000002L}); 
     16393    public static final BitSet FOLLOW_23_in_rule__EtsiBnf__Group_0_2__1__Impl2680 = new BitSet(new long[]{0x0000000000000002L}); 
     16394    public static final BitSet FOLLOW_rule__EtsiBnf__Group_0_2__2__Impl_in_rule__EtsiBnf__Group_0_2__22711 = new BitSet(new long[]{0x0000000001000170L}); 
     16395    public static final BitSet FOLLOW_rule__EtsiBnf__Group_0_2__3_in_rule__EtsiBnf__Group_0_2__22714 = new BitSet(new long[]{0x0000000000000002L}); 
     16396    public static final BitSet FOLLOW_rule__EtsiBnf__ImportSectionAssignment_0_2_2_in_rule__EtsiBnf__Group_0_2__2__Impl2741 = new BitSet(new long[]{0x0000000000000002L}); 
     16397    public static final BitSet FOLLOW_rule__EtsiBnf__Group_0_2__3__Impl_in_rule__EtsiBnf__Group_0_2__32772 = new BitSet(new long[]{0x0000000000000002L}); 
     16398    public static final BitSet FOLLOW_rule__EtsiBnf__BnfEntryAssignment_0_2_3_in_rule__EtsiBnf__Group_0_2__3__Impl2801 = new BitSet(new long[]{0x0000000001000172L}); 
     16399    public static final BitSet FOLLOW_rule__EtsiBnf__BnfEntryAssignment_0_2_3_in_rule__EtsiBnf__Group_0_2__3__Impl2813 = new BitSet(new long[]{0x0000000001000172L}); 
     16400    public static final BitSet FOLLOW_rule__EtsiBnf__Group_1__0__Impl_in_rule__EtsiBnf__Group_1__02854 = new BitSet(new long[]{0x0000000000800000L}); 
     16401    public static final BitSet FOLLOW_rule__EtsiBnf__Group_1__1_in_rule__EtsiBnf__Group_1__02857 = new BitSet(new long[]{0x0000000000000002L}); 
     16402    public static final BitSet FOLLOW_rule__EtsiBnf__TypeAssignment_1_0_in_rule__EtsiBnf__Group_1__0__Impl2884 = new BitSet(new long[]{0x0000000000000002L}); 
     16403    public static final BitSet FOLLOW_rule__EtsiBnf__Group_1__1__Impl_in_rule__EtsiBnf__Group_1__12914 = new BitSet(new long[]{0x0000000001000130L}); 
     16404    public static final BitSet FOLLOW_rule__EtsiBnf__Group_1__2_in_rule__EtsiBnf__Group_1__12917 = new BitSet(new long[]{0x0000000000000002L}); 
     16405    public static final BitSet FOLLOW_23_in_rule__EtsiBnf__Group_1__1__Impl2945 = new BitSet(new long[]{0x0000000000000002L}); 
     16406    public static final BitSet FOLLOW_rule__EtsiBnf__Group_1__2__Impl_in_rule__EtsiBnf__Group_1__22976 = new BitSet(new long[]{0x0000000001000130L}); 
     16407    public static final BitSet FOLLOW_rule__EtsiBnf__Group_1__3_in_rule__EtsiBnf__Group_1__22979 = new BitSet(new long[]{0x0000000000000002L}); 
     16408    public static final BitSet FOLLOW_rule__EtsiBnf__ImportSectionAssignment_1_2_in_rule__EtsiBnf__Group_1__2__Impl3006 = new BitSet(new long[]{0x0000000000000002L}); 
     16409    public static final BitSet FOLLOW_rule__EtsiBnf__Group_1__3__Impl_in_rule__EtsiBnf__Group_1__33037 = new BitSet(new long[]{0x0000000000000002L}); 
     16410    public static final BitSet FOLLOW_rule__EtsiBnf__DeltaEntryAssignment_1_3_in_rule__EtsiBnf__Group_1__3__Impl3064 = new BitSet(new long[]{0x0000000000000132L}); 
     16411    public static final BitSet FOLLOW_rule__EtsiBnf__Group_2__0__Impl_in_rule__EtsiBnf__Group_2__03103 = new BitSet(new long[]{0x0000000000800000L}); 
     16412    public static final BitSet FOLLOW_rule__EtsiBnf__Group_2__1_in_rule__EtsiBnf__Group_2__03106 = new BitSet(new long[]{0x0000000000000002L}); 
     16413    public static final BitSet FOLLOW_rule__EtsiBnf__TypeAssignment_2_0_in_rule__EtsiBnf__Group_2__0__Impl3133 = new BitSet(new long[]{0x0000000000000002L}); 
     16414    public static final BitSet FOLLOW_rule__EtsiBnf__Group_2__1__Impl_in_rule__EtsiBnf__Group_2__13163 = new BitSet(new long[]{0x0000000341000020L}); 
     16415    public static final BitSet FOLLOW_rule__EtsiBnf__Group_2__2_in_rule__EtsiBnf__Group_2__13166 = new BitSet(new long[]{0x0000000000000002L}); 
     16416    public static final BitSet FOLLOW_23_in_rule__EtsiBnf__Group_2__1__Impl3194 = new BitSet(new long[]{0x0000000000000002L}); 
     16417    public static final BitSet FOLLOW_rule__EtsiBnf__Group_2__2__Impl_in_rule__EtsiBnf__Group_2__23225 = new BitSet(new long[]{0x0000000341000020L}); 
     16418    public static final BitSet FOLLOW_rule__EtsiBnf__Group_2__3_in_rule__EtsiBnf__Group_2__23228 = new BitSet(new long[]{0x0000000000000002L}); 
     16419    public static final BitSet FOLLOW_rule__EtsiBnf__ImportSectionAssignment_2_2_in_rule__EtsiBnf__Group_2__2__Impl3255 = new BitSet(new long[]{0x0000000000000002L}); 
     16420    public static final BitSet FOLLOW_rule__EtsiBnf__Group_2__3__Impl_in_rule__EtsiBnf__Group_2__33286 = new BitSet(new long[]{0x0000000000000002L}); 
     16421    public static final BitSet FOLLOW_rule__EtsiBnf__MergeEntryAssignment_2_3_in_rule__EtsiBnf__Group_2__3__Impl3313 = new BitSet(new long[]{0x0000000340000022L}); 
     16422    public static final BitSet FOLLOW_rule__SectionHeading__Group__0__Impl_in_rule__SectionHeading__Group__03352 = new BitSet(new long[]{0x0000000000000020L}); 
     16423    public static final BitSet FOLLOW_rule__SectionHeading__Group__1_in_rule__SectionHeading__Group__03355 = new BitSet(new long[]{0x0000000000000002L}); 
     16424    public static final BitSet FOLLOW_rule__SectionHeading__Group__1__Impl_in_rule__SectionHeading__Group__13413 = new BitSet(new long[]{0x0000000000000002L}); 
     16425    public static final BitSet FOLLOW_rule__SectionHeading__SectionHeaderAssignment_1_in_rule__SectionHeading__Group__1__Impl3440 = new BitSet(new long[]{0x0000000000000002L}); 
     16426    public static final BitSet FOLLOW_rule__Comment__Group__0__Impl_in_rule__Comment__Group__03474 = new BitSet(new long[]{0x0000000001000170L}); 
     16427    public static final BitSet FOLLOW_rule__Comment__Group__1_in_rule__Comment__Group__03477 = new BitSet(new long[]{0x0000000000000002L}); 
     16428    public static final BitSet FOLLOW_rule__Comment__Group__1__Impl_in_rule__Comment__Group__13535 = new BitSet(new long[]{0x0000000000000002L}); 
     16429    public static final BitSet FOLLOW_rule__Comment__ContentAssignment_1_in_rule__Comment__Group__1__Impl3562 = new BitSet(new long[]{0x0000000000000002L}); 
     16430    public static final BitSet FOLLOW_rule__Import__Group__0__Impl_in_rule__Import__Group__03596 = new BitSet(new long[]{0x0000000000000080L}); 
     16431    public static final BitSet FOLLOW_rule__Import__Group__1_in_rule__Import__Group__03599 = new BitSet(new long[]{0x0000000000000002L}); 
     16432    public static final BitSet FOLLOW_24_in_rule__Import__Group__0__Impl3627 = new BitSet(new long[]{0x0000000000000002L}); 
     16433    public static final BitSet FOLLOW_rule__Import__Group__1__Impl_in_rule__Import__Group__13658 = new BitSet(new long[]{0x0000000006800000L}); 
     16434    public static final BitSet FOLLOW_rule__Import__Group__2_in_rule__Import__Group__13661 = new BitSet(new long[]{0x0000000000000002L}); 
     16435    public static final BitSet FOLLOW_rule__Import__ImportURIAssignment_1_in_rule__Import__Group__1__Impl3688 = new BitSet(new long[]{0x0000000000000002L}); 
     16436    public static final BitSet FOLLOW_rule__Import__Group__2__Impl_in_rule__Import__Group__23718 = new BitSet(new long[]{0x0000000006800000L}); 
     16437    public static final BitSet FOLLOW_rule__Import__Group__3_in_rule__Import__Group__23721 = new BitSet(new long[]{0x0000000000000002L}); 
     16438    public static final BitSet FOLLOW_rule__Import__Group_2__0_in_rule__Import__Group__2__Impl3748 = new BitSet(new long[]{0x0000000000000002L}); 
     16439    public static final BitSet FOLLOW_rule__Import__Group__3__Impl_in_rule__Import__Group__33779 = new BitSet(new long[]{0x0000000006800000L}); 
     16440    public static final BitSet FOLLOW_rule__Import__Group__4_in_rule__Import__Group__33782 = new BitSet(new long[]{0x0000000000000002L}); 
     16441    public static final BitSet FOLLOW_rule__Import__Group_3__0_in_rule__Import__Group__3__Impl3809 = new BitSet(new long[]{0x0000000000000002L}); 
     16442    public static final BitSet FOLLOW_rule__Import__Group__4__Impl_in_rule__Import__Group__43840 = new BitSet(new long[]{0x0000000000000002L}); 
     16443    public static final BitSet FOLLOW_23_in_rule__Import__Group__4__Impl3868 = new BitSet(new long[]{0x0000000000000002L}); 
     16444    public static final BitSet FOLLOW_rule__Import__Group_2__0__Impl_in_rule__Import__Group_2__03909 = new BitSet(new long[]{0x0000038000000000L}); 
     16445    public static final BitSet FOLLOW_rule__Import__Group_2__1_in_rule__Import__Group_2__03912 = new BitSet(new long[]{0x0000000000000002L}); 
     16446    public static final BitSet FOLLOW_25_in_rule__Import__Group_2__0__Impl3940 = new BitSet(new long[]{0x0000000000000002L}); 
     16447    public static final BitSet FOLLOW_rule__Import__Group_2__1__Impl_in_rule__Import__Group_2__13971 = new BitSet(new long[]{0x0000000000000002L}); 
     16448    public static final BitSet FOLLOW_rule__Import__Alternatives_2_1_in_rule__Import__Group_2__1__Impl3998 = new BitSet(new long[]{0x0000000000000002L}); 
     16449    public static final BitSet FOLLOW_rule__Import__Group_3__0__Impl_in_rule__Import__Group_3__04032 = new BitSet(new long[]{0x0000000000000010L}); 
     16450    public static final BitSet FOLLOW_rule__Import__Group_3__1_in_rule__Import__Group_3__04035 = new BitSet(new long[]{0x0000000000000002L}); 
     16451    public static final BitSet FOLLOW_26_in_rule__Import__Group_3__0__Impl4063 = new BitSet(new long[]{0x0000000000000002L}); 
     16452    public static final BitSet FOLLOW_rule__Import__Group_3__1__Impl_in_rule__Import__Group_3__14094 = new BitSet(new long[]{0x0000000000000002L}); 
     16453    public static final BitSet FOLLOW_rule__Import__LabelAssignment_3_1_in_rule__Import__Group_3__1__Impl4121 = new BitSet(new long[]{0x0000000000000002L}); 
     16454    public static final BitSet FOLLOW_rule__Rule__Group__0__Impl_in_rule__Rule__Group__04155 = new BitSet(new long[]{0x0000000000000110L}); 
     16455    public static final BitSet FOLLOW_rule__Rule__Group__1_in_rule__Rule__Group__04158 = new BitSet(new long[]{0x0000000000000002L}); 
     16456    public static final BitSet FOLLOW_rule__Rule__Group_0__0_in_rule__Rule__Group__0__Impl4185 = new BitSet(new long[]{0x0000000000000002L}); 
     16457    public static final BitSet FOLLOW_rule__Rule__Group__1__Impl_in_rule__Rule__Group__14216 = new BitSet(new long[]{0x0000000008000000L}); 
     16458    public static final BitSet FOLLOW_rule__Rule__Group__2_in_rule__Rule__Group__14219 = new BitSet(new long[]{0x0000000000000002L}); 
     16459    public static final BitSet FOLLOW_rule__Rule__NameAssignment_1_in_rule__Rule__Group__1__Impl4246 = new BitSet(new long[]{0x0000000000000002L}); 
     16460    public static final BitSet FOLLOW_rule__Rule__Group__2__Impl_in_rule__Rule__Group__24276 = new BitSet(new long[]{0x00000000008E0490L}); 
     16461    public static final BitSet FOLLOW_rule__Rule__Group__3_in_rule__Rule__Group__24279 = new BitSet(new long[]{0x0000000000000002L}); 
     16462    public static final BitSet FOLLOW_27_in_rule__Rule__Group__2__Impl4307 = new BitSet(new long[]{0x0000000000000002L}); 
     16463    public static final BitSet FOLLOW_rule__Rule__Group__3__Impl_in_rule__Rule__Group__34338 = new BitSet(new long[]{0x00000000008E0490L}); 
     16464    public static final BitSet FOLLOW_rule__Rule__Group__4_in_rule__Rule__Group__34341 = new BitSet(new long[]{0x0000000000000002L}); 
     16465    public static final BitSet FOLLOW_rule__Rule__DefinitionListAssignment_3_in_rule__Rule__Group__3__Impl4368 = new BitSet(new long[]{0x0000000000000002L}); 
     16466    public static final BitSet FOLLOW_rule__Rule__Group__4__Impl_in_rule__Rule__Group__44399 = new BitSet(new long[]{0x0000000000000002L}); 
     16467    public static final BitSet FOLLOW_23_in_rule__Rule__Group__4__Impl4428 = new BitSet(new long[]{0x0000000000000002L}); 
     16468    public static final BitSet FOLLOW_rule__Rule__Group_0__0__Impl_in_rule__Rule__Group_0__04471 = new BitSet(new long[]{0x0000000010000010L}); 
     16469    public static final BitSet FOLLOW_rule__Rule__Group_0__1_in_rule__Rule__Group_0__04474 = new BitSet(new long[]{0x0000000000000002L}); 
     16470    public static final BitSet FOLLOW_rule__Rule__RulenumberAssignment_0_0_in_rule__Rule__Group_0__0__Impl4501 = new BitSet(new long[]{0x0000000000000002L}); 
     16471    public static final BitSet FOLLOW_rule__Rule__Group_0__1__Impl_in_rule__Rule__Group_0__14531 = new BitSet(new long[]{0x0000000010000010L}); 
     16472    public static final BitSet FOLLOW_rule__Rule__Group_0__2_in_rule__Rule__Group_0__14534 = new BitSet(new long[]{0x0000000000000002L}); 
     16473    public static final BitSet FOLLOW_rule__Rule__RulevariantAssignment_0_1_in_rule__Rule__Group_0__1__Impl4561 = new BitSet(new long[]{0x0000000000000002L}); 
     16474    public static final BitSet FOLLOW_rule__Rule__Group_0__2__Impl_in_rule__Rule__Group_0__24592 = new BitSet(new long[]{0x0000000000000002L}); 
     16475    public static final BitSet FOLLOW_28_in_rule__Rule__Group_0__2__Impl4620 = new BitSet(new long[]{0x0000000000000002L}); 
     16476    public static final BitSet FOLLOW_rule__ExtRule__Group__0__Impl_in_rule__ExtRule__Group__04657 = new BitSet(new long[]{0x0000000000000130L}); 
     16477    public static final BitSet FOLLOW_rule__ExtRule__Group__1_in_rule__ExtRule__Group__04660 = new BitSet(new long[]{0x0000000000000002L}); 
     16478    public static final BitSet FOLLOW_rule__ExtRule__Group_0__0_in_rule__ExtRule__Group__0__Impl4687 = new BitSet(new long[]{0x0000000000000002L}); 
     16479    public static final BitSet FOLLOW_rule__ExtRule__Group__1__Impl_in_rule__ExtRule__Group__14718 = new BitSet(new long[]{0x0000000000020000L}); 
     16480    public static final BitSet FOLLOW_rule__ExtRule__Group__2_in_rule__ExtRule__Group__14721 = new BitSet(new long[]{0x0000000000000002L}); 
     16481    public static final BitSet FOLLOW_rule__ExtRule__NameAssignment_1_in_rule__ExtRule__Group__1__Impl4748 = new BitSet(new long[]{0x0000000000000002L}); 
     16482    public static final BitSet FOLLOW_rule__ExtRule__Group__2__Impl_in_rule__ExtRule__Group__24778 = new BitSet(new long[]{0x0000000020000000L}); 
     16483    public static final BitSet FOLLOW_rule__ExtRule__Group__3_in_rule__ExtRule__Group__24781 = new BitSet(new long[]{0x0000000000000002L}); 
     16484    public static final BitSet FOLLOW_rule__ExtRule__Group_2__0_in_rule__ExtRule__Group__2__Impl4808 = new BitSet(new long[]{0x0000000000000002L}); 
     16485    public static final BitSet FOLLOW_rule__ExtRule__Group__3__Impl_in_rule__ExtRule__Group__34838 = new BitSet(new long[]{0x0000000000BFE490L}); 
     16486    public static final BitSet FOLLOW_rule__ExtRule__Group__4_in_rule__ExtRule__Group__34841 = new BitSet(new long[]{0x0000000000000002L}); 
     16487    public static final BitSet FOLLOW_29_in_rule__ExtRule__Group__3__Impl4869 = new BitSet(new long[]{0x0000000000000002L}); 
     16488    public static final BitSet FOLLOW_rule__ExtRule__Group__4__Impl_in_rule__ExtRule__Group__44900 = new BitSet(new long[]{0x0000000000BFE490L}); 
     16489    public static final BitSet FOLLOW_rule__ExtRule__Group__5_in_rule__ExtRule__Group__44903 = new BitSet(new long[]{0x0000000000000002L}); 
     16490    public static final BitSet FOLLOW_rule__ExtRule__Alternatives_4_in_rule__ExtRule__Group__4__Impl4930 = new BitSet(new long[]{0x00000000003FE492L}); 
     16491    public static final BitSet FOLLOW_rule__ExtRule__Group__5__Impl_in_rule__ExtRule__Group__54961 = new BitSet(new long[]{0x0000000000000002L}); 
     16492    public static final BitSet FOLLOW_23_in_rule__ExtRule__Group__5__Impl4990 = new BitSet(new long[]{0x0000000000000002L}); 
     16493    public static final BitSet FOLLOW_rule__ExtRule__Group_0__0__Impl_in_rule__ExtRule__Group_0__05035 = new BitSet(new long[]{0x0000000010000010L}); 
     16494    public static final BitSet FOLLOW_rule__ExtRule__Group_0__1_in_rule__ExtRule__Group_0__05038 = new BitSet(new long[]{0x0000000000000002L}); 
     16495    public static final BitSet FOLLOW_rule__ExtRule__RulenumberAssignment_0_0_in_rule__ExtRule__Group_0__0__Impl5065 = new BitSet(new long[]{0x0000000000000002L}); 
     16496    public static final BitSet FOLLOW_rule__ExtRule__Group_0__1__Impl_in_rule__ExtRule__Group_0__15095 = new BitSet(new long[]{0x0000000010000010L}); 
     16497    public static final BitSet FOLLOW_rule__ExtRule__Group_0__2_in_rule__ExtRule__Group_0__15098 = new BitSet(new long[]{0x0000000000000002L}); 
     16498    public static final BitSet FOLLOW_rule__ExtRule__RulevariantAssignment_0_1_in_rule__ExtRule__Group_0__1__Impl5125 = new BitSet(new long[]{0x0000000000000002L}); 
     16499    public static final BitSet FOLLOW_rule__ExtRule__Group_0__2__Impl_in_rule__ExtRule__Group_0__25156 = new BitSet(new long[]{0x0000000000000002L}); 
     16500    public static final BitSet FOLLOW_28_in_rule__ExtRule__Group_0__2__Impl5184 = new BitSet(new long[]{0x0000000000000002L}); 
     16501    public static final BitSet FOLLOW_rule__ExtRule__Group_2__0__Impl_in_rule__ExtRule__Group_2__05221 = new BitSet(new long[]{0x0000000000000100L}); 
     16502    public static final BitSet FOLLOW_rule__ExtRule__Group_2__1_in_rule__ExtRule__Group_2__05224 = new BitSet(new long[]{0x0000000000000002L}); 
     16503    public static final BitSet FOLLOW_17_in_rule__ExtRule__Group_2__0__Impl5252 = new BitSet(new long[]{0x0000000000000002L}); 
     16504    public static final BitSet FOLLOW_rule__ExtRule__Group_2__1__Impl_in_rule__ExtRule__Group_2__15283 = new BitSet(new long[]{0x0000000000002000L}); 
     16505    public static final BitSet FOLLOW_rule__ExtRule__Group_2__2_in_rule__ExtRule__Group_2__15286 = new BitSet(new long[]{0x0000000000000002L}); 
     16506    public static final BitSet FOLLOW_rule__ExtRule__RuleextAssignment_2_1_in_rule__ExtRule__Group_2__1__Impl5313 = new BitSet(new long[]{0x0000000000000002L}); 
     16507    public static final BitSet FOLLOW_rule__ExtRule__Group_2__2__Impl_in_rule__ExtRule__Group_2__25343 = new BitSet(new long[]{0x0000000000000002L}); 
     16508    public static final BitSet FOLLOW_13_in_rule__ExtRule__Group_2__2__Impl5371 = new BitSet(new long[]{0x0000000000000002L}); 
     16509    public static final BitSet FOLLOW_rule__GlobalCombinator__Group__0__Impl_in_rule__GlobalCombinator__Group__05408 = new BitSet(new long[]{0x0000000000000200L}); 
     16510    public static final BitSet FOLLOW_rule__GlobalCombinator__Group__1_in_rule__GlobalCombinator__Group__05411 = new BitSet(new long[]{0x0000000000000002L}); 
     16511    public static final BitSet FOLLOW_rule__GlobalCombinator__Group_0__0_in_rule__GlobalCombinator__Group__0__Impl5438 = new BitSet(new long[]{0x0000000000000002L}); 
     16512    public static final BitSet FOLLOW_rule__GlobalCombinator__Group__1__Impl_in_rule__GlobalCombinator__Group__15468 = new BitSet(new long[]{0x0000000000800000L}); 
     16513    public static final BitSet FOLLOW_rule__GlobalCombinator__Group__2_in_rule__GlobalCombinator__Group__15471 = new BitSet(new long[]{0x0000000000000002L}); 
     16514    public static final BitSet FOLLOW_rule__GlobalCombinator__LogicAssignment_1_in_rule__GlobalCombinator__Group__1__Impl5498 = new BitSet(new long[]{0x0000000000000002L}); 
     16515    public static final BitSet FOLLOW_rule__GlobalCombinator__Group__2__Impl_in_rule__GlobalCombinator__Group__25528 = new BitSet(new long[]{0x0000000000000002L}); 
     16516    public static final BitSet FOLLOW_23_in_rule__GlobalCombinator__Group__2__Impl5557 = new BitSet(new long[]{0x0000000000000002L}); 
     16517    public static final BitSet FOLLOW_rule__GlobalCombinator__Group_0__0__Impl_in_rule__GlobalCombinator__Group_0__05596 = new BitSet(new long[]{0x0000000080000000L}); 
     16518    public static final BitSet FOLLOW_rule__GlobalCombinator__Group_0__1_in_rule__GlobalCombinator__Group_0__05599 = new BitSet(new long[]{0x0000000000000002L}); 
     16519    public static final BitSet FOLLOW_30_in_rule__GlobalCombinator__Group_0__0__Impl5627 = new BitSet(new long[]{0x0000000000000002L}); 
     16520    public static final BitSet FOLLOW_rule__GlobalCombinator__Group_0__1__Impl_in_rule__GlobalCombinator__Group_0__15658 = new BitSet(new long[]{0x0000000000000002L}); 
     16521    public static final BitSet FOLLOW_31_in_rule__GlobalCombinator__Group_0__1__Impl5686 = new BitSet(new long[]{0x0000000000000002L}); 
     16522    public static final BitSet FOLLOW_rule__RuleCombinator__Group__0__Impl_in_rule__RuleCombinator__Group__05721 = new BitSet(new long[]{0x0000000000000200L}); 
     16523    public static final BitSet FOLLOW_rule__RuleCombinator__Group__1_in_rule__RuleCombinator__Group__05724 = new BitSet(new long[]{0x0000000000000002L}); 
     16524    public static final BitSet FOLLOW_rule__RuleCombinator__Group_0__0_in_rule__RuleCombinator__Group__0__Impl5751 = new BitSet(new long[]{0x0000000000000002L}); 
     16525    public static final BitSet FOLLOW_rule__RuleCombinator__Group__1__Impl_in_rule__RuleCombinator__Group__15781 = new BitSet(new long[]{0x0000000000820000L}); 
     16526    public static final BitSet FOLLOW_rule__RuleCombinator__Group__2_in_rule__RuleCombinator__Group__15784 = new BitSet(new long[]{0x0000000000000002L}); 
     16527    public static final BitSet FOLLOW_rule__RuleCombinator__LogicAssignment_1_in_rule__RuleCombinator__Group__1__Impl5811 = new BitSet(new long[]{0x0000000000000002L}); 
     16528    public static final BitSet FOLLOW_rule__RuleCombinator__Group__2__Impl_in_rule__RuleCombinator__Group__25841 = new BitSet(new long[]{0x0000000000820000L}); 
     16529    public static final BitSet FOLLOW_rule__RuleCombinator__Group__3_in_rule__RuleCombinator__Group__25844 = new BitSet(new long[]{0x0000000000000002L}); 
     16530    public static final BitSet FOLLOW_rule__RuleCombinator__Group_2__0_in_rule__RuleCombinator__Group__2__Impl5871 = new BitSet(new long[]{0x0000000000020002L}); 
     16531    public static final BitSet FOLLOW_rule__RuleCombinator__Group__3__Impl_in_rule__RuleCombinator__Group__35902 = new BitSet(new long[]{0x0000000000000002L}); 
     16532    public static final BitSet FOLLOW_23_in_rule__RuleCombinator__Group__3__Impl5931 = new BitSet(new long[]{0x0000000000000002L}); 
     16533    public static final BitSet FOLLOW_rule__RuleCombinator__Group_0__0__Impl_in_rule__RuleCombinator__Group_0__05972 = new BitSet(new long[]{0x0000000080000000L}); 
     16534    public static final BitSet FOLLOW_rule__RuleCombinator__Group_0__1_in_rule__RuleCombinator__Group_0__05975 = new BitSet(new long[]{0x0000000000000002L}); 
     16535    public static final BitSet FOLLOW_32_in_rule__RuleCombinator__Group_0__0__Impl6003 = new BitSet(new long[]{0x0000000000000002L}); 
     16536    public static final BitSet FOLLOW_rule__RuleCombinator__Group_0__1__Impl_in_rule__RuleCombinator__Group_0__16034 = new BitSet(new long[]{0x0000000000000010L}); 
     16537    public static final BitSet FOLLOW_rule__RuleCombinator__Group_0__2_in_rule__RuleCombinator__Group_0__16037 = new BitSet(new long[]{0x0000000000000002L}); 
     16538    public static final BitSet FOLLOW_31_in_rule__RuleCombinator__Group_0__1__Impl6065 = new BitSet(new long[]{0x0000000000000002L}); 
     16539    public static final BitSet FOLLOW_rule__RuleCombinator__Group_0__2__Impl_in_rule__RuleCombinator__Group_0__26096 = new BitSet(new long[]{0x0000000000000002L}); 
     16540    public static final BitSet FOLLOW_rule__RuleCombinator__NameAssignment_0_2_in_rule__RuleCombinator__Group_0__2__Impl6123 = new BitSet(new long[]{0x0000000000000002L}); 
     16541    public static final BitSet FOLLOW_rule__RuleCombinator__Group_2__0__Impl_in_rule__RuleCombinator__Group_2__06159 = new BitSet(new long[]{0x0000000000000080L}); 
     16542    public static final BitSet FOLLOW_rule__RuleCombinator__Group_2__1_in_rule__RuleCombinator__Group_2__06162 = new BitSet(new long[]{0x0000000000000002L}); 
     16543    public static final BitSet FOLLOW_17_in_rule__RuleCombinator__Group_2__0__Impl6190 = new BitSet(new long[]{0x0000000000000002L}); 
     16544    public static final BitSet FOLLOW_rule__RuleCombinator__Group_2__1__Impl_in_rule__RuleCombinator__Group_2__16221 = new BitSet(new long[]{0x0000000000002000L}); 
     16545    public static final BitSet FOLLOW_rule__RuleCombinator__Group_2__2_in_rule__RuleCombinator__Group_2__16224 = new BitSet(new long[]{0x0000000000000002L}); 
     16546    public static final BitSet FOLLOW_rule__RuleCombinator__LABELAssignment_2_1_in_rule__RuleCombinator__Group_2__1__Impl6251 = new BitSet(new long[]{0x0000000000000002L}); 
     16547    public static final BitSet FOLLOW_rule__RuleCombinator__Group_2__2__Impl_in_rule__RuleCombinator__Group_2__26281 = new BitSet(new long[]{0x0000000000000002L}); 
     16548    public static final BitSet FOLLOW_13_in_rule__RuleCombinator__Group_2__2__Impl6309 = new BitSet(new long[]{0x0000000000000002L}); 
     16549    public static final BitSet FOLLOW_rule__HookCombinator__Group__0__Impl_in_rule__HookCombinator__Group__06346 = new BitSet(new long[]{0x0000000080000000L}); 
     16550    public static final BitSet FOLLOW_rule__HookCombinator__Group__1_in_rule__HookCombinator__Group__06349 = new BitSet(new long[]{0x0000000000000002L}); 
     16551    public static final BitSet FOLLOW_33_in_rule__HookCombinator__Group__0__Impl6377 = new BitSet(new long[]{0x0000000000000002L}); 
     16552    public static final BitSet FOLLOW_rule__HookCombinator__Group__1__Impl_in_rule__HookCombinator__Group__16408 = new BitSet(new long[]{0x0000000000000010L}); 
     16553    public static final BitSet FOLLOW_rule__HookCombinator__Group__2_in_rule__HookCombinator__Group__16411 = new BitSet(new long[]{0x0000000000000002L}); 
     16554    public static final BitSet FOLLOW_31_in_rule__HookCombinator__Group__1__Impl6439 = new BitSet(new long[]{0x0000000000000002L}); 
     16555    public static final BitSet FOLLOW_rule__HookCombinator__Group__2__Impl_in_rule__HookCombinator__Group__26470 = new BitSet(new long[]{0x0000000000020000L}); 
     16556    public static final BitSet FOLLOW_rule__HookCombinator__Group__3_in_rule__HookCombinator__Group__26473 = new BitSet(new long[]{0x0000000000000002L}); 
     16557    public static final BitSet FOLLOW_rule__HookCombinator__NameAssignment_2_in_rule__HookCombinator__Group__2__Impl6500 = new BitSet(new long[]{0x0000000000000002L}); 
     16558    public static final BitSet FOLLOW_rule__HookCombinator__Group__3__Impl_in_rule__HookCombinator__Group__36530 = new BitSet(new long[]{0x0000000000000100L}); 
     16559    public static final BitSet FOLLOW_rule__HookCombinator__Group__4_in_rule__HookCombinator__Group__36533 = new BitSet(new long[]{0x0000000000000002L}); 
     16560    public static final BitSet FOLLOW_17_in_rule__HookCombinator__Group__3__Impl6561 = new BitSet(new long[]{0x0000000000000002L}); 
     16561    public static final BitSet FOLLOW_rule__HookCombinator__Group__4__Impl_in_rule__HookCombinator__Group__46592 = new BitSet(new long[]{0x0000000000002000L}); 
     16562    public static final BitSet FOLLOW_rule__HookCombinator__Group__5_in_rule__HookCombinator__Group__46595 = new BitSet(new long[]{0x0000000000000002L}); 
     16563    public static final BitSet FOLLOW_rule__HookCombinator__RuleextAssignment_4_in_rule__HookCombinator__Group__4__Impl6622 = new BitSet(new long[]{0x0000000000000002L}); 
     16564    public static final BitSet FOLLOW_rule__HookCombinator__Group__5__Impl_in_rule__HookCombinator__Group__56652 = new BitSet(new long[]{0x0000000000020200L}); 
     16565    public static final BitSet FOLLOW_rule__HookCombinator__Group__6_in_rule__HookCombinator__Group__56655 = new BitSet(new long[]{0x0000000000000002L}); 
     16566    public static final BitSet FOLLOW_13_in_rule__HookCombinator__Group__5__Impl6683 = new BitSet(new long[]{0x0000000000000002L}); 
     16567    public static final BitSet FOLLOW_rule__HookCombinator__Group__6__Impl_in_rule__HookCombinator__Group__66714 = new BitSet(new long[]{0x0000000000020200L}); 
     16568    public static final BitSet FOLLOW_rule__HookCombinator__Group__7_in_rule__HookCombinator__Group__66717 = new BitSet(new long[]{0x0000000000000002L}); 
     16569    public static final BitSet FOLLOW_rule__HookCombinator__LogicAssignment_6_in_rule__HookCombinator__Group__6__Impl6744 = new BitSet(new long[]{0x0000000000000002L}); 
     16570    public static final BitSet FOLLOW_rule__HookCombinator__Group__7__Impl_in_rule__HookCombinator__Group__76775 = new BitSet(new long[]{0x0000000000800000L}); 
     16571    public static final BitSet FOLLOW_rule__HookCombinator__Group__8_in_rule__HookCombinator__Group__76778 = new BitSet(new long[]{0x0000000000000002L}); 
     16572    public static final BitSet FOLLOW_rule__HookCombinator__Group_7__0_in_rule__HookCombinator__Group__7__Impl6807 = new BitSet(new long[]{0x0000000000020202L}); 
     16573    public static final BitSet FOLLOW_rule__HookCombinator__Group_7__0_in_rule__HookCombinator__Group__7__Impl6819 = new BitSet(new long[]{0x0000000000020202L}); 
     16574    public static final BitSet FOLLOW_rule__HookCombinator__Group__8__Impl_in_rule__HookCombinator__Group__86852 = new BitSet(new long[]{0x0000000000000002L}); 
     16575    public static final BitSet FOLLOW_23_in_rule__HookCombinator__Group__8__Impl6881 = new BitSet(new long[]{0x0000000000000002L}); 
     16576    public static final BitSet FOLLOW_rule__HookCombinator__Group_7__0__Impl_in_rule__HookCombinator__Group_7__06932 = new BitSet(new long[]{0x0000000000000080L}); 
     16577    public static final BitSet FOLLOW_rule__HookCombinator__Group_7__1_in_rule__HookCombinator__Group_7__06935 = new BitSet(new long[]{0x0000000000000002L}); 
     16578    public static final BitSet FOLLOW_17_in_rule__HookCombinator__Group_7__0__Impl6963 = new BitSet(new long[]{0x0000000000000002L}); 
     16579    public static final BitSet FOLLOW_rule__HookCombinator__Group_7__1__Impl_in_rule__HookCombinator__Group_7__16994 = new BitSet(new long[]{0x0000000000002000L}); 
     16580    public static final BitSet FOLLOW_rule__HookCombinator__Group_7__2_in_rule__HookCombinator__Group_7__16997 = new BitSet(new long[]{0x0000000000000002L}); 
     16581    public static final BitSet FOLLOW_rule__HookCombinator__LABELAssignment_7_1_in_rule__HookCombinator__Group_7__1__Impl7024 = new BitSet(new long[]{0x0000000000000002L}); 
     16582    public static final BitSet FOLLOW_rule__HookCombinator__Group_7__2__Impl_in_rule__HookCombinator__Group_7__27054 = new BitSet(new long[]{0x0000000000000002L}); 
     16583    public static final BitSet FOLLOW_13_in_rule__HookCombinator__Group_7__2__Impl7082 = new BitSet(new long[]{0x0000000000000002L}); 
     16584    public static final BitSet FOLLOW_rule__DefinitionList__Group__0__Impl_in_rule__DefinitionList__Group__07119 = new BitSet(new long[]{0x0000000000010000L}); 
     16585    public static final BitSet FOLLOW_rule__DefinitionList__Group__1_in_rule__DefinitionList__Group__07122 = new BitSet(new long[]{0x0000000000000002L}); 
     16586    public static final BitSet FOLLOW_rule__DefinitionList__SingleDefinitionAssignment_0_in_rule__DefinitionList__Group__0__Impl7149 = new BitSet(new long[]{0x0000000000000002L}); 
     16587    public static final BitSet FOLLOW_rule__DefinitionList__Group__1__Impl_in_rule__DefinitionList__Group__17179 = new BitSet(new long[]{0x0000000000000002L}); 
     16588    public static final BitSet FOLLOW_rule__DefinitionList__Group_1__0_in_rule__DefinitionList__Group__1__Impl7206 = new BitSet(new long[]{0x0000000000010002L}); 
     16589    public static final BitSet FOLLOW_rule__DefinitionList__Group_1__0__Impl_in_rule__DefinitionList__Group_1__07241 = new BitSet(new long[]{0x00000000000E0490L}); 
     16590    public static final BitSet FOLLOW_rule__DefinitionList__Group_1__1_in_rule__DefinitionList__Group_1__07244 = new BitSet(new long[]{0x0000000000000002L}); 
     16591    public static final BitSet FOLLOW_16_in_rule__DefinitionList__Group_1__0__Impl7272 = new BitSet(new long[]{0x0000000000000002L}); 
     16592    public static final BitSet FOLLOW_rule__DefinitionList__Group_1__1__Impl_in_rule__DefinitionList__Group_1__17303 = new BitSet(new long[]{0x0000000000000002L}); 
     16593    public static final BitSet FOLLOW_rule__DefinitionList__SingleDefinitionAssignment_1_1_in_rule__DefinitionList__Group_1__1__Impl7330 = new BitSet(new long[]{0x0000000000000002L}); 
     16594    public static final BitSet FOLLOW_rule__GroupedSequence__Group__0__Impl_in_rule__GroupedSequence__Group__07364 = new BitSet(new long[]{0x00000000000E0490L}); 
     16595    public static final BitSet FOLLOW_rule__GroupedSequence__Group__1_in_rule__GroupedSequence__Group__07367 = new BitSet(new long[]{0x0000000000000002L}); 
     16596    public static final BitSet FOLLOW_17_in_rule__GroupedSequence__Group__0__Impl7395 = new BitSet(new long[]{0x0000000000000002L}); 
     16597    public static final BitSet FOLLOW_rule__GroupedSequence__Group__1__Impl_in_rule__GroupedSequence__Group__17426 = new BitSet(new long[]{0x0000000000002000L}); 
     16598    public static final BitSet FOLLOW_rule__GroupedSequence__Group__2_in_rule__GroupedSequence__Group__17429 = new BitSet(new long[]{0x0000000000000002L}); 
     16599    public static final BitSet FOLLOW_rule__GroupedSequence__DefinitionListAssignment_1_in_rule__GroupedSequence__Group__1__Impl7456 = new BitSet(new long[]{0x0000000000000002L}); 
     16600    public static final BitSet FOLLOW_rule__GroupedSequence__Group__2__Impl_in_rule__GroupedSequence__Group__27486 = new BitSet(new long[]{0x0000000000000002L}); 
     16601    public static final BitSet FOLLOW_13_in_rule__GroupedSequence__Group__2__Impl7514 = new BitSet(new long[]{0x0000000000000002L}); 
     16602    public static final BitSet FOLLOW_rule__OptionalSequence__Group__0__Impl_in_rule__OptionalSequence__Group__07551 = new BitSet(new long[]{0x00000000000E0490L}); 
     16603    public static final BitSet FOLLOW_rule__OptionalSequence__Group__1_in_rule__OptionalSequence__Group__07554 = new BitSet(new long[]{0x0000000000000002L}); 
     16604    public static final BitSet FOLLOW_18_in_rule__OptionalSequence__Group__0__Impl7582 = new BitSet(new long[]{0x0000000000000002L}); 
     16605    public static final BitSet FOLLOW_rule__OptionalSequence__Group__1__Impl_in_rule__OptionalSequence__Group__17613 = new BitSet(new long[]{0x0000000000004000L}); 
     16606    public static final BitSet FOLLOW_rule__OptionalSequence__Group__2_in_rule__OptionalSequence__Group__17616 = new BitSet(new long[]{0x0000000000000002L}); 
     16607    public static final BitSet FOLLOW_rule__OptionalSequence__DefinitionListAssignment_1_in_rule__OptionalSequence__Group__1__Impl7643 = new BitSet(new long[]{0x0000000000000002L}); 
     16608    public static final BitSet FOLLOW_rule__OptionalSequence__Group__2__Impl_in_rule__OptionalSequence__Group__27673 = new BitSet(new long[]{0x0000000000000002L}); 
     16609    public static final BitSet FOLLOW_14_in_rule__OptionalSequence__Group__2__Impl7701 = new BitSet(new long[]{0x0000000000000002L}); 
     16610    public static final BitSet FOLLOW_rule__RepeatedSequence__Group__0__Impl_in_rule__RepeatedSequence__Group__07738 = new BitSet(new long[]{0x00000000000E0490L}); 
     16611    public static final BitSet FOLLOW_rule__RepeatedSequence__Group__1_in_rule__RepeatedSequence__Group__07741 = new BitSet(new long[]{0x0000000000000002L}); 
     16612    public static final BitSet FOLLOW_19_in_rule__RepeatedSequence__Group__0__Impl7769 = new BitSet(new long[]{0x0000000000000002L}); 
     16613    public static final BitSet FOLLOW_rule__RepeatedSequence__Group__1__Impl_in_rule__RepeatedSequence__Group__17800 = new BitSet(new long[]{0x0000000000008000L}); 
     16614    public static final BitSet FOLLOW_rule__RepeatedSequence__Group__2_in_rule__RepeatedSequence__Group__17803 = new BitSet(new long[]{0x0000000000000002L}); 
     16615    public static final BitSet FOLLOW_rule__RepeatedSequence__DefinitionsAssignment_1_in_rule__RepeatedSequence__Group__1__Impl7830 = new BitSet(new long[]{0x0000000000000002L}); 
     16616    public static final BitSet FOLLOW_rule__RepeatedSequence__Group__2__Impl_in_rule__RepeatedSequence__Group__27860 = new BitSet(new long[]{0x0000000400200000L}); 
     16617    public static final BitSet FOLLOW_rule__RepeatedSequence__Group__3_in_rule__RepeatedSequence__Group__27863 = new BitSet(new long[]{0x0000000000000002L}); 
     16618    public static final BitSet FOLLOW_15_in_rule__RepeatedSequence__Group__2__Impl7891 = new BitSet(new long[]{0x0000000000000002L}); 
     16619    public static final BitSet FOLLOW_rule__RepeatedSequence__Group__3__Impl_in_rule__RepeatedSequence__Group__37922 = new BitSet(new long[]{0x0000000000000002L}); 
     16620    public static final BitSet FOLLOW_rule__RepeatedSequence__Alternatives_3_in_rule__RepeatedSequence__Group__3__Impl7949 = new BitSet(new long[]{0x0000000000000002L}); 
     16621    public static final BitSet FOLLOW_rule__RepeatRange__Group__0__Impl_in_rule__RepeatRange__Group__07987 = new BitSet(new long[]{0x0000000000020000L}); 
     16622    public static final BitSet FOLLOW_rule__RepeatRange__Group__1_in_rule__RepeatRange__Group__07990 = new BitSet(new long[]{0x0000000000000002L}); 
     16623    public static final BitSet FOLLOW_34_in_rule__RepeatRange__Group__0__Impl8018 = new BitSet(new long[]{0x0000000000000002L}); 
     16624    public static final BitSet FOLLOW_rule__RepeatRange__Group__1__Impl_in_rule__RepeatRange__Group__18049 = new BitSet(new long[]{0x0000000000000100L}); 
     16625    public static final BitSet FOLLOW_rule__RepeatRange__Group__2_in_rule__RepeatRange__Group__18052 = new BitSet(new long[]{0x0000000000000002L}); 
     16626    public static final BitSet FOLLOW_17_in_rule__RepeatRange__Group__1__Impl8080 = new BitSet(new long[]{0x0000000000000002L}); 
     16627    public static final BitSet FOLLOW_rule__RepeatRange__Group__2__Impl_in_rule__RepeatRange__Group__28111 = new BitSet(new long[]{0x0000000800000000L}); 
     16628    public static final BitSet FOLLOW_rule__RepeatRange__Group__3_in_rule__RepeatRange__Group__28114 = new BitSet(new long[]{0x0000000000000002L}); 
     16629    public static final BitSet FOLLOW_rule__RepeatRange__FromAssignment_2_in_rule__RepeatRange__Group__2__Impl8141 = new BitSet(new long[]{0x0000000000000002L}); 
     16630    public static final BitSet FOLLOW_rule__RepeatRange__Group__3__Impl_in_rule__RepeatRange__Group__38171 = new BitSet(new long[]{0x0000000000000100L}); 
     16631    public static final BitSet FOLLOW_rule__RepeatRange__Group__4_in_rule__RepeatRange__Group__38174 = new BitSet(new long[]{0x0000000000000002L}); 
     16632    public static final BitSet FOLLOW_35_in_rule__RepeatRange__Group__3__Impl8202 = new BitSet(new long[]{0x0000000000000002L}); 
     16633    public static final BitSet FOLLOW_rule__RepeatRange__Group__4__Impl_in_rule__RepeatRange__Group__48233 = new BitSet(new long[]{0x0000000000002000L}); 
     16634    public static final BitSet FOLLOW_rule__RepeatRange__Group__5_in_rule__RepeatRange__Group__48236 = new BitSet(new long[]{0x0000000000000002L}); 
     16635    public static final BitSet FOLLOW_rule__RepeatRange__ToAssignment_4_in_rule__RepeatRange__Group__4__Impl8263 = new BitSet(new long[]{0x0000000000000002L}); 
     16636    public static final BitSet FOLLOW_rule__RepeatRange__Group__5__Impl_in_rule__RepeatRange__Group__58293 = new BitSet(new long[]{0x0000000000000002L}); 
     16637    public static final BitSet FOLLOW_13_in_rule__RepeatRange__Group__5__Impl8321 = new BitSet(new long[]{0x0000000000000002L}); 
     16638    public static final BitSet FOLLOW_RULE_ID_in_rule__EtsiBnf__NameAssignment_0_18369 = new BitSet(new long[]{0x0000000000000002L}); 
     16639    public static final BitSet FOLLOW_36_in_rule__EtsiBnf__TypeAssignment_0_2_08405 = new BitSet(new long[]{0x0000000000000002L}); 
     16640    public static final BitSet FOLLOW_ruleImportSection_in_rule__EtsiBnf__ImportSectionAssignment_0_2_28444 = new BitSet(new long[]{0x0000000000000002L}); 
     16641    public static final BitSet FOLLOW_ruleBnfEntry_in_rule__EtsiBnf__BnfEntryAssignment_0_2_38475 = new BitSet(new long[]{0x0000000000000002L}); 
     16642    public static final BitSet FOLLOW_37_in_rule__EtsiBnf__TypeAssignment_1_08511 = new BitSet(new long[]{0x0000000000000002L}); 
     16643    public static final BitSet FOLLOW_ruleImportSection_in_rule__EtsiBnf__ImportSectionAssignment_1_28550 = new BitSet(new long[]{0x0000000000000002L}); 
     16644    public static final BitSet FOLLOW_ruleDeltaEntry_in_rule__EtsiBnf__DeltaEntryAssignment_1_38581 = new BitSet(new long[]{0x0000000000000002L}); 
     16645    public static final BitSet FOLLOW_38_in_rule__EtsiBnf__TypeAssignment_2_08617 = new BitSet(new long[]{0x0000000000000002L}); 
     16646    public static final BitSet FOLLOW_ruleImportSection_in_rule__EtsiBnf__ImportSectionAssignment_2_28656 = new BitSet(new long[]{0x0000000000000002L}); 
     16647    public static final BitSet FOLLOW_ruleMergeEntry_in_rule__EtsiBnf__MergeEntryAssignment_2_38687 = new BitSet(new long[]{0x0000000000000002L}); 
     16648    public static final BitSet FOLLOW_ruleImport_in_rule__ImportSection__ImportsAssignment8718 = new BitSet(new long[]{0x0000000000000002L}); 
     16649    public static final BitSet FOLLOW_ruleSectionHeading_in_rule__BnfEntry__SectionheaderAssignment_08749 = new BitSet(new long[]{0x0000000000000002L}); 
     16650    public static final BitSet FOLLOW_ruleRule_in_rule__BnfEntry__RuleAssignment_18780 = new BitSet(new long[]{0x0000000000000002L}); 
     16651    public static final BitSet FOLLOW_ruleComment_in_rule__BnfEntry__CommentAssignment_28811 = new BitSet(new long[]{0x0000000000000002L}); 
     16652    public static final BitSet FOLLOW_ruleRule_in_rule__DeltaEntry__RuleAssignment_08842 = new BitSet(new long[]{0x0000000000000002L}); 
     16653    public static final BitSet FOLLOW_ruleSectionHeading_in_rule__DeltaEntry__SectionheaderAssignment_18873 = new BitSet(new long[]{0x0000000000000002L}); 
     16654    public static final BitSet FOLLOW_ruleExtRule_in_rule__DeltaEntry__ExtRuleAssignment_28904 = new BitSet(new long[]{0x0000000000000002L}); 
     16655    public static final BitSet FOLLOW_ruleSectionHeading_in_rule__MergeEntry__SectionheaderAssignment_08935 = new BitSet(new long[]{0x0000000000000002L}); 
     16656    public static final BitSet FOLLOW_ruleMergeRule_in_rule__MergeEntry__MergeRuleAssignment_18966 = new BitSet(new long[]{0x0000000000000002L}); 
     16657    public static final BitSet FOLLOW_RULE_SECTIONHEADER_in_rule__SectionHeading__SectionHeaderAssignment_18997 = new BitSet(new long[]{0x0000000000000002L}); 
     16658    public static final BitSet FOLLOW_RULE_ML_COMMENT_in_rule__Comment__ContentAssignment_19028 = new BitSet(new long[]{0x0000000000000002L}); 
     16659    public static final BitSet FOLLOW_RULE_STRING_in_rule__Import__ImportURIAssignment_19059 = new BitSet(new long[]{0x0000000000000002L}); 
     16660    public static final BitSet FOLLOW_39_in_rule__Import__GrammarTypeAssignment_2_1_09095 = new BitSet(new long[]{0x0000000000000002L}); 
     16661    public static final BitSet FOLLOW_40_in_rule__Import__GrammarTypeAssignment_2_1_19139 = new BitSet(new long[]{0x0000000000000002L}); 
     16662    public static final BitSet FOLLOW_41_in_rule__Import__GrammarTypeAssignment_2_1_29183 = new BitSet(new long[]{0x0000000000000002L}); 
     16663    public static final BitSet FOLLOW_RULE_ID_in_rule__Import__LabelAssignment_3_19222 = new BitSet(new long[]{0x0000000000000002L}); 
     16664    public static final BitSet FOLLOW_RULE_INT_in_rule__Rule__RulenumberAssignment_0_09253 = new BitSet(new long[]{0x0000000000000002L}); 
     16665    public static final BitSet FOLLOW_RULE_ID_in_rule__Rule__RulevariantAssignment_0_19284 = new BitSet(new long[]{0x0000000000000002L}); 
     16666    public static final BitSet FOLLOW_RULE_ID_in_rule__Rule__NameAssignment_19315 = new BitSet(new long[]{0x0000000000000002L}); 
     16667    public static final BitSet FOLLOW_ruleDefinitionList_in_rule__Rule__DefinitionListAssignment_39346 = new BitSet(new long[]{0x0000000000000002L}); 
     16668    public static final BitSet FOLLOW_RULE_INT_in_rule__ExtRule__RulenumberAssignment_0_09377 = new BitSet(new long[]{0x0000000000000002L}); 
     16669    public static final BitSet FOLLOW_RULE_ID_in_rule__ExtRule__RulevariantAssignment_0_19408 = new BitSet(new long[]{0x0000000000000002L}); 
     16670    public static final BitSet FOLLOW_RULE_ID_in_rule__ExtRule__NameAssignment_19439 = new BitSet(new long[]{0x0000000000000002L}); 
     16671    public static final BitSet FOLLOW_RULE_INT_in_rule__ExtRule__RuleextAssignment_2_19470 = new BitSet(new long[]{0x0000000000000002L}); 
     16672    public static final BitSet FOLLOW_ruleAtom_in_rule__ExtRule__ElementsAssignment_4_09501 = new BitSet(new long[]{0x0000000000000002L}); 
     16673    public static final BitSet FOLLOW_RULE_LOGIC_in_rule__GlobalCombinator__LogicAssignment_19532 = new BitSet(new long[]{0x0000000000000002L}); 
     16674    public static final BitSet FOLLOW_RULE_ID_in_rule__RuleCombinator__NameAssignment_0_29563 = new BitSet(new long[]{0x0000000000000002L}); 
     16675    public static final BitSet FOLLOW_RULE_LOGIC_in_rule__RuleCombinator__LogicAssignment_19594 = new BitSet(new long[]{0x0000000000000002L}); 
     16676    public static final BitSet FOLLOW_RULE_STRING_in_rule__RuleCombinator__LABELAssignment_2_19625 = new BitSet(new long[]{0x0000000000000002L}); 
     16677    public static final BitSet FOLLOW_RULE_ID_in_rule__HookCombinator__NameAssignment_29656 = new BitSet(new long[]{0x0000000000000002L}); 
     16678    public static final BitSet FOLLOW_RULE_INT_in_rule__HookCombinator__RuleextAssignment_49687 = new BitSet(new long[]{0x0000000000000002L}); 
     16679    public static final BitSet FOLLOW_RULE_LOGIC_in_rule__HookCombinator__LogicAssignment_69718 = new BitSet(new long[]{0x0000000000000002L}); 
     16680    public static final BitSet FOLLOW_RULE_STRING_in_rule__HookCombinator__LABELAssignment_7_19749 = new BitSet(new long[]{0x0000000000000002L}); 
     16681    public static final BitSet FOLLOW_ruleSingleDefinition_in_rule__DefinitionList__SingleDefinitionAssignment_09780 = new BitSet(new long[]{0x0000000000000002L}); 
     16682    public static final BitSet FOLLOW_ruleSingleDefinition_in_rule__DefinitionList__SingleDefinitionAssignment_1_19811 = new BitSet(new long[]{0x0000000000000002L}); 
     16683    public static final BitSet FOLLOW_ruleTerm_in_rule__SingleDefinition__TermsAssignment9842 = new BitSet(new long[]{0x0000000000000002L}); 
     16684    public static final BitSet FOLLOW_ruleAtom_in_rule__Term__TermAtomAssignment_09873 = new BitSet(new long[]{0x0000000000000002L}); 
     16685    public static final BitSet FOLLOW_ruleGroupedSequence_in_rule__Term__TermGroupedSequenceAssignment_19904 = new BitSet(new long[]{0x0000000000000002L}); 
     16686    public static final BitSet FOLLOW_ruleOptionalSequence_in_rule__Term__TermOptionalSequenceAssignment_29935 = new BitSet(new long[]{0x0000000000000002L}); 
     16687    public static final BitSet FOLLOW_ruleRepeatedSequence_in_rule__Term__TermRepeatedSequenceAssignment_39966 = new BitSet(new long[]{0x0000000000000002L}); 
     16688    public static final BitSet FOLLOW_ruleStringRule_in_rule__Atom__AtomStringRuleAssignment_09997 = new BitSet(new long[]{0x0000000000000002L}); 
     16689    public static final BitSet FOLLOW_ruleRuleReference_in_rule__Atom__AtomRuleReferenceAssignment_110028 = new BitSet(new long[]{0x0000000000000002L}); 
     16690    public static final BitSet FOLLOW_RULE_ID_in_rule__RuleReference__RulerefAssignment10063 = new BitSet(new long[]{0x0000000000000002L}); 
     16691    public static final BitSet FOLLOW_RULE_STRING_in_rule__StringRule__LiteralAssignment_010098 = new BitSet(new long[]{0x0000000000000002L}); 
     16692    public static final BitSet FOLLOW_RULE_COLON_in_rule__StringRule__ColonAssignment_110129 = new BitSet(new long[]{0x0000000000000002L}); 
     16693    public static final BitSet FOLLOW_ruleDefinitionList_in_rule__GroupedSequence__DefinitionListAssignment_110160 = new BitSet(new long[]{0x0000000000000002L}); 
     16694    public static final BitSet FOLLOW_ruleDefinitionList_in_rule__OptionalSequence__DefinitionListAssignment_110191 = new BitSet(new long[]{0x0000000000000002L}); 
     16695    public static final BitSet FOLLOW_ruleDefinitionList_in_rule__RepeatedSequence__DefinitionsAssignment_110222 = new BitSet(new long[]{0x0000000000000002L}); 
     16696    public static final BitSet FOLLOW_21_in_rule__RepeatedSequence__MorethanonceAssignment_3_010258 = new BitSet(new long[]{0x0000000000000002L}); 
     16697    public static final BitSet FOLLOW_ruleRepeatRange_in_rule__RepeatedSequence__RangeAssignment_3_110297 = new BitSet(new long[]{0x0000000000000002L}); 
     16698    public static final BitSet FOLLOW_RULE_INT_in_rule__RepeatRange__FromAssignment_210328 = new BitSet(new long[]{0x0000000000000002L}); 
     16699    public static final BitSet FOLLOW_RULE_INT_in_rule__RepeatRange__ToAssignment_410359 = new BitSet(new long[]{0x0000000000000002L}); 
     16700    public static final BitSet FOLLOW_rule__RepeatedSequence__MorethanonceAssignment_3_0_in_synpred29_InternalEbnf2352 = new BitSet(new long[]{0x0000000000000002L}); 
    1627816701 
    1627916702} 
Note: See TracChangeset for help on using the changeset viewer.