001    // $ANTLR 3.0.1 /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g 2012-09-12 08:31:36
002    
003    /**
004     * Copyright (c) 2000-2012 Liferay, Inc. All rights reserved.
005     *
006     * This library is free software; you can redistribute it and/or modify it under
007     * the terms of the GNU Lesser General Public License as published by the Free
008     * Software Foundation; either version 2.1 of the License, or (at your option)
009     * any later version.
010     *
011     * This library is distributed in the hope that it will be useful, but WITHOUT
012     * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
013     * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
014     * details.
015     */
016    
017    package com.liferay.portal.parsers.creole.parser;
018    
019    import com.liferay.portal.kernel.util.StringBundler;
020    import com.liferay.portal.parsers.creole.ast.ASTNode;
021    import com.liferay.portal.parsers.creole.ast.BaseListNode;
022    import com.liferay.portal.parsers.creole.ast.BaseParentableNode;
023    import com.liferay.portal.parsers.creole.ast.BoldTextNode;
024    import com.liferay.portal.parsers.creole.ast.CollectionNode;
025    import com.liferay.portal.parsers.creole.ast.extension.TableOfContentsNode;
026    import com.liferay.portal.parsers.creole.ast.ForcedEndOfLineNode;
027    import com.liferay.portal.parsers.creole.ast.FormattedTextNode;
028    import com.liferay.portal.parsers.creole.ast.HeadingNode;
029    import com.liferay.portal.parsers.creole.ast.HorizontalNode;
030    import com.liferay.portal.parsers.creole.ast.ImageNode;
031    import com.liferay.portal.parsers.creole.ast.ItalicTextNode;
032    import com.liferay.portal.parsers.creole.ast.ItemNode;
033    import com.liferay.portal.parsers.creole.ast.LineNode;
034    import com.liferay.portal.parsers.creole.ast.ListNode;
035    import com.liferay.portal.parsers.creole.ast.link.InterwikiLinkNode;
036    import com.liferay.portal.parsers.creole.ast.link.LinkNode;
037    import com.liferay.portal.parsers.creole.ast.NoWikiSectionNode;
038    import com.liferay.portal.parsers.creole.ast.OrderedListItemNode;
039    import com.liferay.portal.parsers.creole.ast.OrderedListNode;
040    import com.liferay.portal.parsers.creole.ast.ParagraphNode;
041    import com.liferay.portal.parsers.creole.ast.ScapedNode;
042    import com.liferay.portal.parsers.creole.ast.table.TableCellNode;
043    import com.liferay.portal.parsers.creole.ast.table.TableDataNode;
044    import com.liferay.portal.parsers.creole.ast.table.TableHeaderNode;
045    import com.liferay.portal.parsers.creole.ast.table.TableNode;
046    import com.liferay.portal.parsers.creole.ast.UnorderedListItemNode;
047    import com.liferay.portal.parsers.creole.ast.UnorderedListNode;
048    import com.liferay.portal.parsers.creole.ast.UnformattedTextNode;
049    import com.liferay.portal.parsers.creole.ast.WikiPageNode;
050    
051    import java.util.Stack;
052    
053    /**
054    * This is a generated file from Creole10.g. DO NOT MODIFY THIS FILE MANUALLY!!
055    * If needed, modify the grammar and rerun the ant generation task
056    * (ant build-creole-parser)
057    */
058    
059    
060    import org.antlr.runtime.*;
061    import java.util.Stack;
062    import java.util.List;
063    import java.util.ArrayList;
064    import java.util.Map;
065    import java.util.HashMap;
066    @SuppressWarnings("all")
067    public class Creole10Parser extends Parser {
068        public static final String[] tokenNames = new String[] {
069            "<invalid>", "<EOR>", "<DOWN>", "<UP>", "FORCED_END_OF_LINE", "HEADING_SECTION", "HORIZONTAL_SECTION", "LIST_ITEM", "LIST_ITEM_PART", "NOWIKI_SECTION", "SCAPE_NODE", "TEXT_NODE", "UNORDERED_LIST", "UNFORMATTED_TEXT", "WIKI", "NEWLINE", "POUND", "STAR", "EQUAL", "PIPE", "ITAL", "LINK_OPEN", "IMAGE_OPEN", "NOWIKI_OPEN", "EXTENSION", "FORCED_LINEBREAK", "ESCAPE", "NOWIKI_BLOCK_CLOSE", "NOWIKI_CLOSE", "LINK_CLOSE", "IMAGE_CLOSE", "BLANKS", "TABLE_OF_CONTENTS_TEXT", "DASH", "CR", "LF", "SPACE", "TABULATOR", "BRACE_CLOSE", "COLON_SLASH", "SLASH", "TABLE_OF_CONTENTS_OPEN_MARKUP", "TABLE_OF_CONTENTS_CLOSE_MARKUP", "INSIGNIFICANT_CHAR", "':'", "'C'", "'2'", "'D'", "'o'", "'k'", "'u'", "'W'", "'i'", "'F'", "'l'", "'c'", "'r'", "'G'", "'g'", "'e'", "'J'", "'S'", "'P'", "'M'", "'a'", "'t'", "'b'", "'d'", "'n'", "'O'", "'m'", "'s'", "'h'", "'p'", "'R'", "'x'", "'T'", "'y'", "'U'", "'X'"
070        };
071        public static final int INSIGNIFICANT_CHAR=43;
072        public static final int STAR=17;
073        public static final int FORCED_END_OF_LINE=4;
074        public static final int TABLE_OF_CONTENTS_TEXT=32;
075        public static final int NOWIKI_BLOCK_CLOSE=27;
076        public static final int EOF=-1;
077        public static final int NOWIKI_CLOSE=28;
078        public static final int SPACE=36;
079        public static final int LIST_ITEM=7;
080        public static final int TEXT_NODE=11;
081        public static final int WIKI=14;
082        public static final int SLASH=40;
083        public static final int ESCAPE=26;
084        public static final int BRACE_CLOSE=38;
085        public static final int EQUAL=18;
086        public static final int TABULATOR=37;
087        public static final int PIPE=19;
088        public static final int LIST_ITEM_PART=8;
089        public static final int LINK_OPEN=21;
090        public static final int TABLE_OF_CONTENTS_OPEN_MARKUP=41;
091        public static final int BLANKS=31;
092        public static final int FORCED_LINEBREAK=25;
093        public static final int UNORDERED_LIST=12;
094        public static final int POUND=16;
095        public static final int DASH=33;
096        public static final int HEADING_SECTION=5;
097        public static final int NOWIKI_OPEN=23;
098        public static final int HORIZONTAL_SECTION=6;
099        public static final int UNFORMATTED_TEXT=13;
100        public static final int NOWIKI_SECTION=9;
101        public static final int ITAL=20;
102        public static final int IMAGE_OPEN=22;
103        public static final int COLON_SLASH=39;
104        public static final int NEWLINE=15;
105        public static final int SCAPE_NODE=10;
106        public static final int IMAGE_CLOSE=30;
107        public static final int TABLE_OF_CONTENTS_CLOSE_MARKUP=42;
108        public static final int LINK_CLOSE=29;
109        public static final int CR=34;
110        public static final int EXTENSION=24;
111        public static final int LF=35;
112        protected static class CountLevel_scope {
113            int level;
114            String currentMarkup;
115            String groups;
116        }
117        protected Stack CountLevel_stack = new Stack();
118    
119    
120            public Creole10Parser(TokenStream input) {
121                super(input);
122                ruleMemo = new HashMap[127+1];
123             }
124            
125    
126        public String[] getTokenNames() { return tokenNames; }
127        public String getGrammarFileName() { return "/home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g"; }
128    
129    
130            public WikiPageNode getWikiPageNode() {
131                    if (_wikipage == null)
132                            throw new IllegalStateException("No succesful parsing process");
133    
134                    return _wikipage;
135            }
136    
137            protected static final String GROUPING_SEPARATOR = "-";
138    
139            protected BaseParentableNode buildAndComposeListNode(BaseParentableNode baseParentableNode, ItemNode itemNode, boolean ordered) {
140                    BaseParentableNode listNode = null;
141                    
142                    if (ordered) {
143                            listNode = new OrderedListNode(baseParentableNode);
144                    } 
145                    else {
146                            listNode = new UnorderedListNode(baseParentableNode);
147                    }
148    
149                    itemNode.setBaseParentableNode(listNode);
150                    listNode.addChildASTNode(itemNode);
151    
152                    baseParentableNode.addChildASTNode(listNode);
153    
154                    return listNode;
155            }
156    
157            private WikiPageNode _wikipage = null;
158    
159    
160    
161    
162        // $ANTLR start wikipage
163        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:135:1: wikipage : ( whitespaces )? p= paragraphs EOF ;
164        public final void wikipage() throws RecognitionException {
165            CollectionNode p = null;
166    
167    
168            try {
169                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:136:2: ( ( whitespaces )? p= paragraphs EOF )
170                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:136:4: ( whitespaces )? p= paragraphs EOF
171                {
172                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:136:4: ( whitespaces )?
173                int alt1=2;
174                int LA1_0 = input.LA(1);
175    
176                if ( (LA1_0==NEWLINE||LA1_0==BLANKS) ) {
177                    alt1=1;
178                }
179                switch (alt1) {
180                    case 1 :
181                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:136:6: whitespaces
182                        {
183                        pushFollow(FOLLOW_whitespaces_in_wikipage111);
184                        whitespaces();
185                        _fsp--;
186                        if (failed) return ;
187    
188                        }
189                        break;
190    
191                }
192    
193                pushFollow(FOLLOW_paragraphs_in_wikipage119);
194                p=paragraphs();
195                _fsp--;
196                if (failed) return ;
197                if ( backtracking==0 ) {
198                   _wikipage = new WikiPageNode(p); 
199                }
200                match(input,EOF,FOLLOW_EOF_in_wikipage124); if (failed) return ;
201    
202                }
203    
204            }
205            catch (RecognitionException re) {
206                reportError(re);
207                recover(input,re);
208            }
209            finally {
210            }
211            return ;
212        }
213        // $ANTLR end wikipage
214    
215    
216        // $ANTLR start paragraphs
217        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:138:1: paragraphs returns [CollectionNode sections = new CollectionNode()] : (p= paragraph )* ;
218        public final CollectionNode paragraphs() throws RecognitionException {
219            CollectionNode sections =  new CollectionNode();
220    
221            ASTNode p = null;
222    
223    
224            try {
225                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:139:2: ( (p= paragraph )* )
226                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:139:4: (p= paragraph )*
227                {
228                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:139:4: (p= paragraph )*
229                loop2:
230                do {
231                    int alt2=2;
232                    int LA2_0 = input.LA(1);
233    
234                    if ( ((LA2_0>=FORCED_END_OF_LINE && LA2_0<=WIKI)||(LA2_0>=POUND && LA2_0<=79)) ) {
235                        alt2=1;
236                    }
237    
238    
239                    switch (alt2) {
240                    case 1 :
241                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:139:5: p= paragraph
242                        {
243                        pushFollow(FOLLOW_paragraph_in_paragraphs142);
244                        p=paragraph();
245                        _fsp--;
246                        if (failed) return sections;
247                        if ( backtracking==0 ) {
248    
249                                            if (p != null){ // at this moment we ignore paragraps with blanks
250                                                    sections.add(p);
251                                            }
252                                            
253                        }
254    
255                        }
256                        break;
257    
258                    default :
259                        break loop2;
260                    }
261                } while (true);
262    
263    
264                }
265    
266            }
267            catch (RecognitionException re) {
268                reportError(re);
269                recover(input,re);
270            }
271            finally {
272            }
273            return sections;
274        }
275        // $ANTLR end paragraphs
276    
277    
278        // $ANTLR start paragraph
279        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:145:1: paragraph returns [ASTNode node = null] : (n= nowiki_block | blanks paragraph_separator | ( blanks )? (tof= table_of_contents | h= heading | {...}?hn= horizontalrule | l= list | t= table | tp= text_paragraph ) ( paragraph_separator )? );
280        public final ASTNode paragraph() throws RecognitionException {
281            ASTNode node =  null;
282    
283            NoWikiSectionNode n = null;
284    
285            ASTNode tof = null;
286    
287            ASTNode h = null;
288    
289            ASTNode hn = null;
290    
291            ListNode l = null;
292    
293            TableNode t = null;
294    
295            ParagraphNode tp = null;
296    
297    
298            try {
299                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:146:2: (n= nowiki_block | blanks paragraph_separator | ( blanks )? (tof= table_of_contents | h= heading | {...}?hn= horizontalrule | l= list | t= table | tp= text_paragraph ) ( paragraph_separator )? )
300                int alt6=3;
301                switch ( input.LA(1) ) {
302                case NOWIKI_OPEN:
303                    {
304                    int LA6_1 = input.LA(2);
305    
306                    if ( ((LA6_1>=FORCED_END_OF_LINE && LA6_1<=WIKI)||(LA6_1>=POUND && LA6_1<=79)) ) {
307                        alt6=3;
308                    }
309                    else if ( (LA6_1==NEWLINE) ) {
310                        alt6=1;
311                    }
312                    else {
313                        if (backtracking>0) {failed=true; return node;}
314                        NoViableAltException nvae =
315                            new NoViableAltException("145:1: paragraph returns [ASTNode node = null] : (n= nowiki_block | blanks paragraph_separator | ( blanks )? (tof= table_of_contents | h= heading | {...}?hn= horizontalrule | l= list | t= table | tp= text_paragraph ) ( paragraph_separator )? );", 6, 1, input);
316    
317                        throw nvae;
318                    }
319                    }
320                    break;
321                case BLANKS:
322                    {
323                    switch ( input.LA(2) ) {
324                    case NEWLINE:
325                        {
326                        alt6=2;
327                        }
328                        break;
329                    case EOF:
330                        {
331                        alt6=2;
332                        }
333                        break;
334                    case FORCED_END_OF_LINE:
335                    case HEADING_SECTION:
336                    case HORIZONTAL_SECTION:
337                    case LIST_ITEM:
338                    case LIST_ITEM_PART:
339                    case NOWIKI_SECTION:
340                    case SCAPE_NODE:
341                    case TEXT_NODE:
342                    case UNORDERED_LIST:
343                    case UNFORMATTED_TEXT:
344                    case WIKI:
345                    case POUND:
346                    case STAR:
347                    case EQUAL:
348                    case PIPE:
349                    case ITAL:
350                    case LINK_OPEN:
351                    case IMAGE_OPEN:
352                    case NOWIKI_OPEN:
353                    case EXTENSION:
354                    case FORCED_LINEBREAK:
355                    case ESCAPE:
356                    case NOWIKI_BLOCK_CLOSE:
357                    case NOWIKI_CLOSE:
358                    case LINK_CLOSE:
359                    case IMAGE_CLOSE:
360                    case BLANKS:
361                    case TABLE_OF_CONTENTS_TEXT:
362                    case DASH:
363                    case CR:
364                    case LF:
365                    case SPACE:
366                    case TABULATOR:
367                    case BRACE_CLOSE:
368                    case COLON_SLASH:
369                    case SLASH:
370                    case TABLE_OF_CONTENTS_OPEN_MARKUP:
371                    case TABLE_OF_CONTENTS_CLOSE_MARKUP:
372                    case INSIGNIFICANT_CHAR:
373                    case 44:
374                    case 45:
375                    case 46:
376                    case 47:
377                    case 48:
378                    case 49:
379                    case 50:
380                    case 51:
381                    case 52:
382                    case 53:
383                    case 54:
384                    case 55:
385                    case 56:
386                    case 57:
387                    case 58:
388                    case 59:
389                    case 60:
390                    case 61:
391                    case 62:
392                    case 63:
393                    case 64:
394                    case 65:
395                    case 66:
396                    case 67:
397                    case 68:
398                    case 69:
399                    case 70:
400                    case 71:
401                    case 72:
402                    case 73:
403                    case 74:
404                    case 75:
405                    case 76:
406                    case 77:
407                    case 78:
408                    case 79:
409                        {
410                        alt6=3;
411                        }
412                        break;
413                    default:
414                        if (backtracking>0) {failed=true; return node;}
415                        NoViableAltException nvae =
416                            new NoViableAltException("145:1: paragraph returns [ASTNode node = null] : (n= nowiki_block | blanks paragraph_separator | ( blanks )? (tof= table_of_contents | h= heading | {...}?hn= horizontalrule | l= list | t= table | tp= text_paragraph ) ( paragraph_separator )? );", 6, 2, input);
417    
418                        throw nvae;
419                    }
420    
421                    }
422                    break;
423                case FORCED_END_OF_LINE:
424                case HEADING_SECTION:
425                case HORIZONTAL_SECTION:
426                case LIST_ITEM:
427                case LIST_ITEM_PART:
428                case NOWIKI_SECTION:
429                case SCAPE_NODE:
430                case TEXT_NODE:
431                case UNORDERED_LIST:
432                case UNFORMATTED_TEXT:
433                case WIKI:
434                case POUND:
435                case STAR:
436                case EQUAL:
437                case PIPE:
438                case ITAL:
439                case LINK_OPEN:
440                case IMAGE_OPEN:
441                case EXTENSION:
442                case FORCED_LINEBREAK:
443                case ESCAPE:
444                case NOWIKI_BLOCK_CLOSE:
445                case NOWIKI_CLOSE:
446                case LINK_CLOSE:
447                case IMAGE_CLOSE:
448                case TABLE_OF_CONTENTS_TEXT:
449                case DASH:
450                case CR:
451                case LF:
452                case SPACE:
453                case TABULATOR:
454                case BRACE_CLOSE:
455                case COLON_SLASH:
456                case SLASH:
457                case TABLE_OF_CONTENTS_OPEN_MARKUP:
458                case TABLE_OF_CONTENTS_CLOSE_MARKUP:
459                case INSIGNIFICANT_CHAR:
460                case 44:
461                case 45:
462                case 46:
463                case 47:
464                case 48:
465                case 49:
466                case 50:
467                case 51:
468                case 52:
469                case 53:
470                case 54:
471                case 55:
472                case 56:
473                case 57:
474                case 58:
475                case 59:
476                case 60:
477                case 61:
478                case 62:
479                case 63:
480                case 64:
481                case 65:
482                case 66:
483                case 67:
484                case 68:
485                case 69:
486                case 70:
487                case 71:
488                case 72:
489                case 73:
490                case 74:
491                case 75:
492                case 76:
493                case 77:
494                case 78:
495                case 79:
496                    {
497                    alt6=3;
498                    }
499                    break;
500                default:
501                    if (backtracking>0) {failed=true; return node;}
502                    NoViableAltException nvae =
503                        new NoViableAltException("145:1: paragraph returns [ASTNode node = null] : (n= nowiki_block | blanks paragraph_separator | ( blanks )? (tof= table_of_contents | h= heading | {...}?hn= horizontalrule | l= list | t= table | tp= text_paragraph ) ( paragraph_separator )? );", 6, 0, input);
504    
505                    throw nvae;
506                }
507    
508                switch (alt6) {
509                    case 1 :
510                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:146:4: n= nowiki_block
511                        {
512                        pushFollow(FOLLOW_nowiki_block_in_paragraph163);
513                        n=nowiki_block();
514                        _fsp--;
515                        if (failed) return node;
516                        if ( backtracking==0 ) {
517                           node = n; 
518                        }
519    
520                        }
521                        break;
522                    case 2 :
523                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:147:4: blanks paragraph_separator
524                        {
525                        pushFollow(FOLLOW_blanks_in_paragraph170);
526                        blanks();
527                        _fsp--;
528                        if (failed) return node;
529                        pushFollow(FOLLOW_paragraph_separator_in_paragraph173);
530                        paragraph_separator();
531                        _fsp--;
532                        if (failed) return node;
533    
534                        }
535                        break;
536                    case 3 :
537                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:148:4: ( blanks )? (tof= table_of_contents | h= heading | {...}?hn= horizontalrule | l= list | t= table | tp= text_paragraph ) ( paragraph_separator )?
538                        {
539                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:148:4: ( blanks )?
540                        int alt3=2;
541                        int LA3_0 = input.LA(1);
542    
543                        if ( (LA3_0==BLANKS) ) {
544                            alt3=1;
545                        }
546                        switch (alt3) {
547                            case 1 :
548                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:148:6: blanks
549                                {
550                                pushFollow(FOLLOW_blanks_in_paragraph180);
551                                blanks();
552                                _fsp--;
553                                if (failed) return node;
554    
555                                }
556                                break;
557    
558                        }
559    
560                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:149:4: (tof= table_of_contents | h= heading | {...}?hn= horizontalrule | l= list | t= table | tp= text_paragraph )
561                        int alt4=6;
562                        switch ( input.LA(1) ) {
563                        case TABLE_OF_CONTENTS_TEXT:
564                            {
565                            alt4=1;
566                            }
567                            break;
568                        case EQUAL:
569                            {
570                            alt4=2;
571                            }
572                            break;
573                        case DASH:
574                            {
575                            int LA4_3 = input.LA(2);
576    
577                            if ( ( input.LA(1) == DASH && input.LA(2) == DASH &&
578                                                            input.LA(3) == DASH && input.LA(4) == DASH ) ) {
579                                alt4=3;
580                            }
581                            else if ( (true) ) {
582                                alt4=6;
583                            }
584                            else {
585                                if (backtracking>0) {failed=true; return node;}
586                                NoViableAltException nvae =
587                                    new NoViableAltException("149:4: (tof= table_of_contents | h= heading | {...}?hn= horizontalrule | l= list | t= table | tp= text_paragraph )", 4, 3, input);
588    
589                                throw nvae;
590                            }
591                            }
592                            break;
593                        case POUND:
594                            {
595                            alt4=4;
596                            }
597                            break;
598                        case STAR:
599                            {
600                            int LA4_5 = input.LA(2);
601    
602                            if ( (!( input.LA(1) != STAR || (input.LA(1) == STAR && input.LA(2) == STAR) )) ) {
603                                alt4=4;
604                            }
605                            else if ( ( input.LA(1) != STAR || (input.LA(1) == STAR && input.LA(2) == STAR) ) ) {
606                                alt4=6;
607                            }
608                            else {
609                                if (backtracking>0) {failed=true; return node;}
610                                NoViableAltException nvae =
611                                    new NoViableAltException("149:4: (tof= table_of_contents | h= heading | {...}?hn= horizontalrule | l= list | t= table | tp= text_paragraph )", 4, 5, input);
612    
613                                throw nvae;
614                            }
615                            }
616                            break;
617                        case PIPE:
618                            {
619                            alt4=5;
620                            }
621                            break;
622                        case FORCED_END_OF_LINE:
623                        case HEADING_SECTION:
624                        case HORIZONTAL_SECTION:
625                        case LIST_ITEM:
626                        case LIST_ITEM_PART:
627                        case NOWIKI_SECTION:
628                        case SCAPE_NODE:
629                        case TEXT_NODE:
630                        case UNORDERED_LIST:
631                        case UNFORMATTED_TEXT:
632                        case WIKI:
633                        case ITAL:
634                        case LINK_OPEN:
635                        case IMAGE_OPEN:
636                        case NOWIKI_OPEN:
637                        case EXTENSION:
638                        case FORCED_LINEBREAK:
639                        case ESCAPE:
640                        case NOWIKI_BLOCK_CLOSE:
641                        case NOWIKI_CLOSE:
642                        case LINK_CLOSE:
643                        case IMAGE_CLOSE:
644                        case BLANKS:
645                        case CR:
646                        case LF:
647                        case SPACE:
648                        case TABULATOR:
649                        case BRACE_CLOSE:
650                        case COLON_SLASH:
651                        case SLASH:
652                        case TABLE_OF_CONTENTS_OPEN_MARKUP:
653                        case TABLE_OF_CONTENTS_CLOSE_MARKUP:
654                        case INSIGNIFICANT_CHAR:
655                        case 44:
656                        case 45:
657                        case 46:
658                        case 47:
659                        case 48:
660                        case 49:
661                        case 50:
662                        case 51:
663                        case 52:
664                        case 53:
665                        case 54:
666                        case 55:
667                        case 56:
668                        case 57:
669                        case 58:
670                        case 59:
671                        case 60:
672                        case 61:
673                        case 62:
674                        case 63:
675                        case 64:
676                        case 65:
677                        case 66:
678                        case 67:
679                        case 68:
680                        case 69:
681                        case 70:
682                        case 71:
683                        case 72:
684                        case 73:
685                        case 74:
686                        case 75:
687                        case 76:
688                        case 77:
689                        case 78:
690                        case 79:
691                            {
692                            alt4=6;
693                            }
694                            break;
695                        default:
696                            if (backtracking>0) {failed=true; return node;}
697                            NoViableAltException nvae =
698                                new NoViableAltException("149:4: (tof= table_of_contents | h= heading | {...}?hn= horizontalrule | l= list | t= table | tp= text_paragraph )", 4, 0, input);
699    
700                            throw nvae;
701                        }
702    
703                        switch (alt4) {
704                            case 1 :
705                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:149:6: tof= table_of_contents
706                                {
707                                pushFollow(FOLLOW_table_of_contents_in_paragraph194);
708                                tof=table_of_contents();
709                                _fsp--;
710                                if (failed) return node;
711                                if ( backtracking==0 ) {
712                                  node = tof;
713                                }
714    
715                                }
716                                break;
717                            case 2 :
718                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:150:6: h= heading
719                                {
720                                pushFollow(FOLLOW_heading_in_paragraph208);
721                                h=heading();
722                                _fsp--;
723                                if (failed) return node;
724                                if ( backtracking==0 ) {
725                                   node = h;
726                                }
727    
728                                }
729                                break;
730                            case 3 :
731                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:151:6: {...}?hn= horizontalrule
732                                {
733                                if ( !( input.LA(1) == DASH && input.LA(2) == DASH &&
734                                                            input.LA(3) == DASH && input.LA(4) == DASH ) ) {
735                                    if (backtracking>0) {failed=true; return node;}
736                                    throw new FailedPredicateException(input, "paragraph", " input.LA(1) == DASH && input.LA(2) == DASH &&\n\t\t\t\tinput.LA(3) == DASH && input.LA(4) == DASH ");
737                                }
738                                pushFollow(FOLLOW_horizontalrule_in_paragraph227);
739                                hn=horizontalrule();
740                                _fsp--;
741                                if (failed) return node;
742                                if ( backtracking==0 ) {
743                                  node = hn;
744                                }
745    
746                                }
747                                break;
748                            case 4 :
749                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:154:6: l= list
750                                {
751                                pushFollow(FOLLOW_list_in_paragraph240);
752                                l=list();
753                                _fsp--;
754                                if (failed) return node;
755                                if ( backtracking==0 ) {
756                                  node = l;
757                                }
758    
759                                }
760                                break;
761                            case 5 :
762                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:155:6: t= table
763                                {
764                                pushFollow(FOLLOW_table_in_paragraph253);
765                                t=table();
766                                _fsp--;
767                                if (failed) return node;
768                                if ( backtracking==0 ) {
769                                   node = t; 
770                                }
771    
772                                }
773                                break;
774                            case 6 :
775                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:156:6: tp= text_paragraph
776                                {
777                                pushFollow(FOLLOW_text_paragraph_in_paragraph266);
778                                tp=text_paragraph();
779                                _fsp--;
780                                if (failed) return node;
781                                if ( backtracking==0 ) {
782                                  node = tp; 
783                                }
784    
785                                }
786                                break;
787    
788                        }
789    
790                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:157:7: ( paragraph_separator )?
791                        int alt5=2;
792                        int LA5_0 = input.LA(1);
793    
794                        if ( (LA5_0==NEWLINE) ) {
795                            alt5=1;
796                        }
797                        else if ( (LA5_0==EOF) ) {
798                            int LA5_2 = input.LA(2);
799    
800                            if ( (LA5_2==EOF) ) {
801                                int LA5_4 = input.LA(3);
802    
803                                if ( (LA5_4==EOF) ) {
804                                    alt5=1;
805                                }
806                            }
807                            else if ( ((LA5_2>=FORCED_END_OF_LINE && LA5_2<=WIKI)||(LA5_2>=POUND && LA5_2<=79)) ) {
808                                alt5=1;
809                            }
810                        }
811                        switch (alt5) {
812                            case 1 :
813                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:157:9: paragraph_separator
814                                {
815                                pushFollow(FOLLOW_paragraph_separator_in_paragraph279);
816                                paragraph_separator();
817                                _fsp--;
818                                if (failed) return node;
819    
820                                }
821                                break;
822    
823                        }
824    
825    
826                        }
827                        break;
828    
829                }
830            }
831            catch (RecognitionException re) {
832                reportError(re);
833                recover(input,re);
834            }
835            finally {
836            }
837            return node;
838        }
839        // $ANTLR end paragraph
840    
841    
842        // $ANTLR start text_paragraph
843        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:164:1: text_paragraph returns [ ParagraphNode paragraph = new ParagraphNode() ] : (tl= text_line | ( NOWIKI_OPEN ~ ( NEWLINE ) )=>nw= nowiki_inline (te= text_element )* text_lineseparator )+ ;
844        public final ParagraphNode text_paragraph() throws RecognitionException {
845            ParagraphNode paragraph =  new ParagraphNode();
846    
847            LineNode tl = null;
848    
849            NoWikiSectionNode nw = null;
850    
851            ASTNode te = null;
852    
853    
854            try {
855                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:165:2: ( (tl= text_line | ( NOWIKI_OPEN ~ ( NEWLINE ) )=>nw= nowiki_inline (te= text_element )* text_lineseparator )+ )
856                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:165:4: (tl= text_line | ( NOWIKI_OPEN ~ ( NEWLINE ) )=>nw= nowiki_inline (te= text_element )* text_lineseparator )+
857                {
858                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:165:4: (tl= text_line | ( NOWIKI_OPEN ~ ( NEWLINE ) )=>nw= nowiki_inline (te= text_element )* text_lineseparator )+
859                int cnt8=0;
860                loop8:
861                do {
862                    int alt8=3;
863                    switch ( input.LA(1) ) {
864                    case NOWIKI_OPEN:
865                        {
866                        int LA8_2 = input.LA(2);
867    
868                        if ( (synpred1()) ) {
869                            alt8=2;
870                        }
871    
872    
873                        }
874                        break;
875                    case BLANKS:
876                        {
877                        alt8=1;
878                        }
879                        break;
880                    case TABLE_OF_CONTENTS_TEXT:
881                        {
882                        alt8=1;
883                        }
884                        break;
885                    case DASH:
886                        {
887                        alt8=1;
888                        }
889                        break;
890                    case STAR:
891                        {
892                        int LA8_6 = input.LA(2);
893    
894                        if ( ( input.LA(1) != STAR || (input.LA(1) == STAR && input.LA(2) == STAR) ) ) {
895                            alt8=1;
896                        }
897    
898    
899                        }
900                        break;
901                    case ITAL:
902                        {
903                        int LA8_7 = input.LA(2);
904    
905                        if ( ( input.LA(1) != STAR || (input.LA(1) == STAR && input.LA(2) == STAR) ) ) {
906                            alt8=1;
907                        }
908    
909    
910                        }
911                        break;
912                    case FORCED_END_OF_LINE:
913                    case HEADING_SECTION:
914                    case HORIZONTAL_SECTION:
915                    case LIST_ITEM:
916                    case LIST_ITEM_PART:
917                    case NOWIKI_SECTION:
918                    case SCAPE_NODE:
919                    case TEXT_NODE:
920                    case UNORDERED_LIST:
921                    case UNFORMATTED_TEXT:
922                    case WIKI:
923                    case NOWIKI_BLOCK_CLOSE:
924                    case NOWIKI_CLOSE:
925                    case LINK_CLOSE:
926                    case IMAGE_CLOSE:
927                    case CR:
928                    case LF:
929                    case SPACE:
930                    case TABULATOR:
931                    case BRACE_CLOSE:
932                    case COLON_SLASH:
933                    case SLASH:
934                    case TABLE_OF_CONTENTS_OPEN_MARKUP:
935                    case TABLE_OF_CONTENTS_CLOSE_MARKUP:
936                    case INSIGNIFICANT_CHAR:
937                    case 44:
938                    case 45:
939                    case 46:
940                    case 47:
941                    case 48:
942                    case 49:
943                    case 50:
944                    case 51:
945                    case 52:
946                    case 53:
947                    case 54:
948                    case 55:
949                    case 56:
950                    case 57:
951                    case 58:
952                    case 59:
953                    case 60:
954                    case 61:
955                    case 62:
956                    case 63:
957                    case 64:
958                    case 65:
959                    case 66:
960                    case 67:
961                    case 68:
962                    case 69:
963                    case 70:
964                    case 71:
965                    case 72:
966                    case 73:
967                    case 74:
968                    case 75:
969                    case 76:
970                    case 77:
971                    case 78:
972                    case 79:
973                        {
974                        alt8=1;
975                        }
976                        break;
977                    case FORCED_LINEBREAK:
978                        {
979                        alt8=1;
980                        }
981                        break;
982                    case ESCAPE:
983                        {
984                        alt8=1;
985                        }
986                        break;
987                    case LINK_OPEN:
988                        {
989                        alt8=1;
990                        }
991                        break;
992                    case IMAGE_OPEN:
993                        {
994                        alt8=1;
995                        }
996                        break;
997                    case EXTENSION:
998                        {
999                        alt8=1;
1000                        }
1001                        break;
1002    
1003                    }
1004    
1005                    switch (alt8) {
1006                    case 1 :
1007                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:165:6: tl= text_line
1008                        {
1009                        pushFollow(FOLLOW_text_line_in_text_paragraph307);
1010                        tl=text_line();
1011                        _fsp--;
1012                        if (failed) return paragraph;
1013                        if ( backtracking==0 ) {
1014                            paragraph.addChildASTNode(tl);  
1015                        }
1016    
1017                        }
1018                        break;
1019                    case 2 :
1020                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:166:5: ( NOWIKI_OPEN ~ ( NEWLINE ) )=>nw= nowiki_inline (te= text_element )* text_lineseparator
1021                        {
1022                        pushFollow(FOLLOW_nowiki_inline_in_text_paragraph339);
1023                        nw=nowiki_inline();
1024                        _fsp--;
1025                        if (failed) return paragraph;
1026                        if ( backtracking==0 ) {
1027                          paragraph.addChildASTNode(nw);
1028                        }
1029                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:167:66: (te= text_element )*
1030                        loop7:
1031                        do {
1032                            int alt7=2;
1033                            int LA7_0 = input.LA(1);
1034    
1035                            if ( ((LA7_0>=FORCED_END_OF_LINE && LA7_0<=WIKI)||(LA7_0>=POUND && LA7_0<=79)) ) {
1036                                alt7=1;
1037                            }
1038    
1039    
1040                            switch (alt7) {
1041                            case 1 :
1042                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:167:68: te= text_element
1043                                {
1044                                pushFollow(FOLLOW_text_element_in_text_paragraph350);
1045                                te=text_element();
1046                                _fsp--;
1047                                if (failed) return paragraph;
1048                                if ( backtracking==0 ) {
1049                                  paragraph.addChildASTNode(te);
1050                                }
1051    
1052                                }
1053                                break;
1054    
1055                            default :
1056                                break loop7;
1057                            }
1058                        } while (true);
1059    
1060                        pushFollow(FOLLOW_text_lineseparator_in_text_paragraph359);
1061                        text_lineseparator();
1062                        _fsp--;
1063                        if (failed) return paragraph;
1064    
1065                        }
1066                        break;
1067    
1068                    default :
1069                        if ( cnt8 >= 1 ) break loop8;
1070                        if (backtracking>0) {failed=true; return paragraph;}
1071                            EarlyExitException eee =
1072                                new EarlyExitException(8, input);
1073                            throw eee;
1074                    }
1075                    cnt8++;
1076                } while (true);
1077    
1078    
1079                }
1080    
1081            }
1082            catch (RecognitionException re) {
1083                reportError(re);
1084                recover(input,re);
1085            }
1086            finally {
1087            }
1088            return paragraph;
1089        }
1090        // $ANTLR end text_paragraph
1091    
1092    
1093        // $ANTLR start text_line
1094        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:170:1: text_line returns [LineNode line = new LineNode()] : first= text_firstelement (element= text_element )* text_lineseparator ;
1095        public final LineNode text_line() throws RecognitionException {
1096            LineNode line =  new LineNode();
1097    
1098            ASTNode first = null;
1099    
1100            ASTNode element = null;
1101    
1102    
1103            try {
1104                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:171:2: (first= text_firstelement (element= text_element )* text_lineseparator )
1105                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:171:4: first= text_firstelement (element= text_element )* text_lineseparator
1106                {
1107                pushFollow(FOLLOW_text_firstelement_in_text_line382);
1108                first=text_firstelement();
1109                _fsp--;
1110                if (failed) return line;
1111                if ( backtracking==0 ) {
1112    
1113                                                                                            if (first != null) { // recovering from errors
1114                                                                                                    line.addChildASTNode(first);
1115                                                                                            }
1116                                                                                    
1117                }
1118                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:176:9: (element= text_element )*
1119                loop9:
1120                do {
1121                    int alt9=2;
1122                    int LA9_0 = input.LA(1);
1123    
1124                    if ( ((LA9_0>=FORCED_END_OF_LINE && LA9_0<=WIKI)||(LA9_0>=POUND && LA9_0<=79)) ) {
1125                        alt9=1;
1126                    }
1127    
1128    
1129                    switch (alt9) {
1130                    case 1 :
1131                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:176:11: element= text_element
1132                        {
1133                        pushFollow(FOLLOW_text_element_in_text_line401);
1134                        element=text_element();
1135                        _fsp--;
1136                        if (failed) return line;
1137                        if ( backtracking==0 ) {
1138    
1139                                                                                    if (element != null) // recovering from errors
1140                                                                                            line.addChildASTNode(element);
1141                                                                            
1142                        }
1143    
1144                        }
1145                        break;
1146    
1147                    default :
1148                        break loop9;
1149                    }
1150                } while (true);
1151    
1152                pushFollow(FOLLOW_text_lineseparator_in_text_line415);
1153                text_lineseparator();
1154                _fsp--;
1155                if (failed) return line;
1156    
1157                }
1158    
1159            }
1160            catch (RecognitionException re) {
1161                reportError(re);
1162                recover(input,re);
1163            }
1164            finally {
1165            }
1166            return line;
1167        }
1168        // $ANTLR end text_line
1169    
1170    
1171        // $ANTLR start text_firstelement
1172        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:182:1: text_firstelement returns [ASTNode item = null] : ({...}?tf= text_formattedelement | tu= text_first_unformattedelement );
1173        public final ASTNode text_firstelement() throws RecognitionException {
1174            ASTNode item =  null;
1175    
1176            FormattedTextNode tf = null;
1177    
1178            ASTNode tu = null;
1179    
1180    
1181            try {
1182                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:183:2: ({...}?tf= text_formattedelement | tu= text_first_unformattedelement )
1183                int alt10=2;
1184                int LA10_0 = input.LA(1);
1185    
1186                if ( (LA10_0==STAR||LA10_0==ITAL) ) {
1187                    alt10=1;
1188                }
1189                else if ( ((LA10_0>=FORCED_END_OF_LINE && LA10_0<=WIKI)||(LA10_0>=LINK_OPEN && LA10_0<=IMAGE_OPEN)||(LA10_0>=EXTENSION && LA10_0<=79)) ) {
1190                    alt10=2;
1191                }
1192                else {
1193                    if (backtracking>0) {failed=true; return item;}
1194                    NoViableAltException nvae =
1195                        new NoViableAltException("182:1: text_firstelement returns [ASTNode item = null] : ({...}?tf= text_formattedelement | tu= text_first_unformattedelement );", 10, 0, input);
1196    
1197                    throw nvae;
1198                }
1199                switch (alt10) {
1200                    case 1 :
1201                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:183:4: {...}?tf= text_formattedelement
1202                        {
1203                        if ( !( input.LA(1) != STAR || (input.LA(1) == STAR && input.LA(2) == STAR) ) ) {
1204                            if (backtracking>0) {failed=true; return item;}
1205                            throw new FailedPredicateException(input, "text_firstelement", " input.LA(1) != STAR || (input.LA(1) == STAR && input.LA(2) == STAR) ");
1206                        }
1207                        pushFollow(FOLLOW_text_formattedelement_in_text_firstelement437);
1208                        tf=text_formattedelement();
1209                        _fsp--;
1210                        if (failed) return item;
1211                        if ( backtracking==0 ) {
1212                           item = tf; 
1213                        }
1214    
1215                        }
1216                        break;
1217                    case 2 :
1218                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:185:4: tu= text_first_unformattedelement
1219                        {
1220                        pushFollow(FOLLOW_text_first_unformattedelement_in_text_firstelement448);
1221                        tu=text_first_unformattedelement();
1222                        _fsp--;
1223                        if (failed) return item;
1224                        if ( backtracking==0 ) {
1225                           item = tu; 
1226                        }
1227    
1228                        }
1229                        break;
1230    
1231                }
1232            }
1233            catch (RecognitionException re) {
1234                reportError(re);
1235                recover(input,re);
1236            }
1237            finally {
1238            }
1239            return item;
1240        }
1241        // $ANTLR end text_firstelement
1242    
1243    
1244        // $ANTLR start text_formattedelement
1245        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:187:1: text_formattedelement returns [FormattedTextNode item = null] : ( ital_markup ic= text_italcontent ( ( NEWLINE )? ital_markup )? | bold_markup bc= text_boldcontent ( ( NEWLINE )? bold_markup )? );
1246        public final FormattedTextNode text_formattedelement() throws RecognitionException {
1247            FormattedTextNode item =  null;
1248    
1249            CollectionNode ic = null;
1250    
1251            CollectionNode bc = null;
1252    
1253    
1254            try {
1255                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:188:2: ( ital_markup ic= text_italcontent ( ( NEWLINE )? ital_markup )? | bold_markup bc= text_boldcontent ( ( NEWLINE )? bold_markup )? )
1256                int alt15=2;
1257                int LA15_0 = input.LA(1);
1258    
1259                if ( (LA15_0==ITAL) ) {
1260                    alt15=1;
1261                }
1262                else if ( (LA15_0==STAR) ) {
1263                    alt15=2;
1264                }
1265                else {
1266                    if (backtracking>0) {failed=true; return item;}
1267                    NoViableAltException nvae =
1268                        new NoViableAltException("187:1: text_formattedelement returns [FormattedTextNode item = null] : ( ital_markup ic= text_italcontent ( ( NEWLINE )? ital_markup )? | bold_markup bc= text_boldcontent ( ( NEWLINE )? bold_markup )? );", 15, 0, input);
1269    
1270                    throw nvae;
1271                }
1272                switch (alt15) {
1273                    case 1 :
1274                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:188:4: ital_markup ic= text_italcontent ( ( NEWLINE )? ital_markup )?
1275                        {
1276                        pushFollow(FOLLOW_ital_markup_in_text_formattedelement464);
1277                        ital_markup();
1278                        _fsp--;
1279                        if (failed) return item;
1280                        pushFollow(FOLLOW_text_italcontent_in_text_formattedelement470);
1281                        ic=text_italcontent();
1282                        _fsp--;
1283                        if (failed) return item;
1284                        if ( backtracking==0 ) {
1285                           item = new ItalicTextNode(ic); 
1286                        }
1287                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:188:81: ( ( NEWLINE )? ital_markup )?
1288                        int alt12=2;
1289                        int LA12_0 = input.LA(1);
1290    
1291                        if ( (LA12_0==NEWLINE) ) {
1292                            int LA12_1 = input.LA(2);
1293    
1294                            if ( (LA12_1==ITAL) ) {
1295                                alt12=1;
1296                            }
1297                        }
1298                        else if ( (LA12_0==ITAL) ) {
1299                            alt12=1;
1300                        }
1301                        switch (alt12) {
1302                            case 1 :
1303                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:188:83: ( NEWLINE )? ital_markup
1304                                {
1305                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:188:83: ( NEWLINE )?
1306                                int alt11=2;
1307                                int LA11_0 = input.LA(1);
1308    
1309                                if ( (LA11_0==NEWLINE) ) {
1310                                    alt11=1;
1311                                }
1312                                switch (alt11) {
1313                                    case 1 :
1314                                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:188:85: NEWLINE
1315                                        {
1316                                        match(input,NEWLINE,FOLLOW_NEWLINE_in_text_formattedelement479); if (failed) return item;
1317    
1318                                        }
1319                                        break;
1320    
1321                                }
1322    
1323                                pushFollow(FOLLOW_ital_markup_in_text_formattedelement485);
1324                                ital_markup();
1325                                _fsp--;
1326                                if (failed) return item;
1327    
1328                                }
1329                                break;
1330    
1331                        }
1332    
1333    
1334                        }
1335                        break;
1336                    case 2 :
1337                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:189:4: bold_markup bc= text_boldcontent ( ( NEWLINE )? bold_markup )?
1338                        {
1339                        pushFollow(FOLLOW_bold_markup_in_text_formattedelement493);
1340                        bold_markup();
1341                        _fsp--;
1342                        if (failed) return item;
1343                        pushFollow(FOLLOW_text_boldcontent_in_text_formattedelement500);
1344                        bc=text_boldcontent();
1345                        _fsp--;
1346                        if (failed) return item;
1347                        if ( backtracking==0 ) {
1348                          item = new BoldTextNode(bc); 
1349                        }
1350                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:189:79: ( ( NEWLINE )? bold_markup )?
1351                        int alt14=2;
1352                        int LA14_0 = input.LA(1);
1353    
1354                        if ( (LA14_0==NEWLINE) ) {
1355                            int LA14_1 = input.LA(2);
1356    
1357                            if ( (LA14_1==STAR) ) {
1358                                int LA14_4 = input.LA(3);
1359    
1360                                if ( (LA14_4==STAR) ) {
1361                                    alt14=1;
1362                                }
1363                            }
1364                        }
1365                        else if ( (LA14_0==STAR) ) {
1366                            int LA14_2 = input.LA(2);
1367    
1368                            if ( (LA14_2==STAR) ) {
1369                                alt14=1;
1370                            }
1371                        }
1372                        switch (alt14) {
1373                            case 1 :
1374                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:189:81: ( NEWLINE )? bold_markup
1375                                {
1376                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:189:81: ( NEWLINE )?
1377                                int alt13=2;
1378                                int LA13_0 = input.LA(1);
1379    
1380                                if ( (LA13_0==NEWLINE) ) {
1381                                    alt13=1;
1382                                }
1383                                switch (alt13) {
1384                                    case 1 :
1385                                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:189:83: NEWLINE
1386                                        {
1387                                        match(input,NEWLINE,FOLLOW_NEWLINE_in_text_formattedelement509); if (failed) return item;
1388    
1389                                        }
1390                                        break;
1391    
1392                                }
1393    
1394                                pushFollow(FOLLOW_bold_markup_in_text_formattedelement515);
1395                                bold_markup();
1396                                _fsp--;
1397                                if (failed) return item;
1398    
1399                                }
1400                                break;
1401    
1402                        }
1403    
1404    
1405                        }
1406                        break;
1407    
1408                }
1409            }
1410            catch (RecognitionException re) {
1411                reportError(re);
1412                recover(input,re);
1413            }
1414            finally {
1415            }
1416            return item;
1417        }
1418        // $ANTLR end text_formattedelement
1419    
1420    
1421        // $ANTLR start text_boldcontent
1422        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:191:1: text_boldcontent returns [ CollectionNode text = new CollectionNode() ] : ( ( NEWLINE )? (p= text_boldcontentpart )* | EOF );
1423        public final CollectionNode text_boldcontent() throws RecognitionException {
1424            CollectionNode text =  new CollectionNode();
1425    
1426            FormattedTextNode p = null;
1427    
1428    
1429            try {
1430                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:192:2: ( ( NEWLINE )? (p= text_boldcontentpart )* | EOF )
1431                int alt18=2;
1432                int LA18_0 = input.LA(1);
1433    
1434                if ( ((LA18_0>=FORCED_END_OF_LINE && LA18_0<=79)) ) {
1435                    alt18=1;
1436                }
1437                else if ( (LA18_0==EOF) ) {
1438                    alt18=1;
1439                }
1440                else {
1441                    if (backtracking>0) {failed=true; return text;}
1442                    NoViableAltException nvae =
1443                        new NoViableAltException("191:1: text_boldcontent returns [ CollectionNode text = new CollectionNode() ] : ( ( NEWLINE )? (p= text_boldcontentpart )* | EOF );", 18, 0, input);
1444    
1445                    throw nvae;
1446                }
1447                switch (alt18) {
1448                    case 1 :
1449                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:192:4: ( NEWLINE )? (p= text_boldcontentpart )*
1450                        {
1451                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:192:4: ( NEWLINE )?
1452                        int alt16=2;
1453                        int LA16_0 = input.LA(1);
1454    
1455                        if ( (LA16_0==NEWLINE) ) {
1456                            alt16=1;
1457                        }
1458                        switch (alt16) {
1459                            case 1 :
1460                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:192:6: NEWLINE
1461                                {
1462                                match(input,NEWLINE,FOLLOW_NEWLINE_in_text_boldcontent534); if (failed) return text;
1463    
1464                                }
1465                                break;
1466    
1467                        }
1468    
1469                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:192:18: (p= text_boldcontentpart )*
1470                        loop17:
1471                        do {
1472                            int alt17=2;
1473                            switch ( input.LA(1) ) {
1474                            case STAR:
1475                                {
1476                                int LA17_2 = input.LA(2);
1477    
1478                                if ( ( input.LA(2) != STAR ) ) {
1479                                    alt17=1;
1480                                }
1481    
1482    
1483                                }
1484                                break;
1485                            case FORCED_END_OF_LINE:
1486                            case HEADING_SECTION:
1487                            case HORIZONTAL_SECTION:
1488                            case LIST_ITEM:
1489                            case LIST_ITEM_PART:
1490                            case NOWIKI_SECTION:
1491                            case SCAPE_NODE:
1492                            case TEXT_NODE:
1493                            case UNORDERED_LIST:
1494                            case UNFORMATTED_TEXT:
1495                            case WIKI:
1496                            case POUND:
1497                            case EQUAL:
1498                            case PIPE:
1499                            case NOWIKI_BLOCK_CLOSE:
1500                            case NOWIKI_CLOSE:
1501                            case LINK_CLOSE:
1502                            case IMAGE_CLOSE:
1503                            case BLANKS:
1504                            case TABLE_OF_CONTENTS_TEXT:
1505                            case DASH:
1506                            case CR:
1507                            case LF:
1508                            case SPACE:
1509                            case TABULATOR:
1510                            case BRACE_CLOSE:
1511                            case COLON_SLASH:
1512                            case SLASH:
1513                            case TABLE_OF_CONTENTS_OPEN_MARKUP:
1514                            case TABLE_OF_CONTENTS_CLOSE_MARKUP:
1515                            case INSIGNIFICANT_CHAR:
1516                            case 44:
1517                            case 45:
1518                            case 46:
1519                            case 47:
1520                            case 48:
1521                            case 49:
1522                            case 50:
1523                            case 51:
1524                            case 52:
1525                            case 53:
1526                            case 54:
1527                            case 55:
1528                            case 56:
1529                            case 57:
1530                            case 58:
1531                            case 59:
1532                            case 60:
1533                            case 61:
1534                            case 62:
1535                            case 63:
1536                            case 64:
1537                            case 65:
1538                            case 66:
1539                            case 67:
1540                            case 68:
1541                            case 69:
1542                            case 70:
1543                            case 71:
1544                            case 72:
1545                            case 73:
1546                            case 74:
1547                            case 75:
1548                            case 76:
1549                            case 77:
1550                            case 78:
1551                            case 79:
1552                                {
1553                                alt17=1;
1554                                }
1555                                break;
1556                            case FORCED_LINEBREAK:
1557                                {
1558                                alt17=1;
1559                                }
1560                                break;
1561                            case ESCAPE:
1562                                {
1563                                alt17=1;
1564                                }
1565                                break;
1566                            case LINK_OPEN:
1567                                {
1568                                alt17=1;
1569                                }
1570                                break;
1571                            case IMAGE_OPEN:
1572                                {
1573                                alt17=1;
1574                                }
1575                                break;
1576                            case EXTENSION:
1577                                {
1578                                alt17=1;
1579                                }
1580                                break;
1581                            case NOWIKI_OPEN:
1582                                {
1583                                alt17=1;
1584                                }
1585                                break;
1586                            case ITAL:
1587                                {
1588                                alt17=1;
1589                                }
1590                                break;
1591    
1592                            }
1593    
1594                            switch (alt17) {
1595                            case 1 :
1596                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:192:20: p= text_boldcontentpart
1597                                {
1598                                pushFollow(FOLLOW_text_boldcontentpart_in_text_boldcontent546);
1599                                p=text_boldcontentpart();
1600                                _fsp--;
1601                                if (failed) return text;
1602                                if ( backtracking==0 ) {
1603                                   text.add(p); 
1604                                }
1605    
1606                                }
1607                                break;
1608    
1609                            default :
1610                                break loop17;
1611                            }
1612                        } while (true);
1613    
1614    
1615                        }
1616                        break;
1617                    case 2 :
1618                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:193:4: EOF
1619                        {
1620                        match(input,EOF,FOLLOW_EOF_in_text_boldcontent557); if (failed) return text;
1621    
1622                        }
1623                        break;
1624    
1625                }
1626            }
1627            catch (RecognitionException re) {
1628                reportError(re);
1629                recover(input,re);
1630            }
1631            finally {
1632            }
1633            return text;
1634        }
1635        // $ANTLR end text_boldcontent
1636    
1637    
1638        // $ANTLR start text_italcontent
1639        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:195:1: text_italcontent returns [ CollectionNode text = new CollectionNode() ] : ( ( NEWLINE )? (p= text_italcontentpart )* | EOF );
1640        public final CollectionNode text_italcontent() throws RecognitionException {
1641            CollectionNode text =  new CollectionNode();
1642    
1643            FormattedTextNode p = null;
1644    
1645    
1646            try {
1647                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:196:2: ( ( NEWLINE )? (p= text_italcontentpart )* | EOF )
1648                int alt21=2;
1649                int LA21_0 = input.LA(1);
1650    
1651                if ( ((LA21_0>=FORCED_END_OF_LINE && LA21_0<=79)) ) {
1652                    alt21=1;
1653                }
1654                else if ( (LA21_0==EOF) ) {
1655                    alt21=1;
1656                }
1657                else {
1658                    if (backtracking>0) {failed=true; return text;}
1659                    NoViableAltException nvae =
1660                        new NoViableAltException("195:1: text_italcontent returns [ CollectionNode text = new CollectionNode() ] : ( ( NEWLINE )? (p= text_italcontentpart )* | EOF );", 21, 0, input);
1661    
1662                    throw nvae;
1663                }
1664                switch (alt21) {
1665                    case 1 :
1666                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:196:4: ( NEWLINE )? (p= text_italcontentpart )*
1667                        {
1668                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:196:4: ( NEWLINE )?
1669                        int alt19=2;
1670                        int LA19_0 = input.LA(1);
1671    
1672                        if ( (LA19_0==NEWLINE) ) {
1673                            alt19=1;
1674                        }
1675                        switch (alt19) {
1676                            case 1 :
1677                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:196:6: NEWLINE
1678                                {
1679                                match(input,NEWLINE,FOLLOW_NEWLINE_in_text_italcontent573); if (failed) return text;
1680    
1681                                }
1682                                break;
1683    
1684                        }
1685    
1686                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:196:18: (p= text_italcontentpart )*
1687                        loop20:
1688                        do {
1689                            int alt20=2;
1690                            switch ( input.LA(1) ) {
1691                            case STAR:
1692                                {
1693                                alt20=1;
1694                                }
1695                                break;
1696                            case FORCED_END_OF_LINE:
1697                            case HEADING_SECTION:
1698                            case HORIZONTAL_SECTION:
1699                            case LIST_ITEM:
1700                            case LIST_ITEM_PART:
1701                            case NOWIKI_SECTION:
1702                            case SCAPE_NODE:
1703                            case TEXT_NODE:
1704                            case UNORDERED_LIST:
1705                            case UNFORMATTED_TEXT:
1706                            case WIKI:
1707                            case POUND:
1708                            case EQUAL:
1709                            case PIPE:
1710                            case NOWIKI_BLOCK_CLOSE:
1711                            case NOWIKI_CLOSE:
1712                            case LINK_CLOSE:
1713                            case IMAGE_CLOSE:
1714                            case BLANKS:
1715                            case TABLE_OF_CONTENTS_TEXT:
1716                            case DASH:
1717                            case CR:
1718                            case LF:
1719                            case SPACE:
1720                            case TABULATOR:
1721                            case BRACE_CLOSE:
1722                            case COLON_SLASH:
1723                            case SLASH:
1724                            case TABLE_OF_CONTENTS_OPEN_MARKUP:
1725                            case TABLE_OF_CONTENTS_CLOSE_MARKUP:
1726                            case INSIGNIFICANT_CHAR:
1727                            case 44:
1728                            case 45:
1729                            case 46:
1730                            case 47:
1731                            case 48:
1732                            case 49:
1733                            case 50:
1734                            case 51:
1735                            case 52:
1736                            case 53:
1737                            case 54:
1738                            case 55:
1739                            case 56:
1740                            case 57:
1741                            case 58:
1742                            case 59:
1743                            case 60:
1744                            case 61:
1745                            case 62:
1746                            case 63:
1747                            case 64:
1748                            case 65:
1749                            case 66:
1750                            case 67:
1751                            case 68:
1752                            case 69:
1753                            case 70:
1754                            case 71:
1755                            case 72:
1756                            case 73:
1757                            case 74:
1758                            case 75:
1759                            case 76:
1760                            case 77:
1761                            case 78:
1762                            case 79:
1763                                {
1764                                alt20=1;
1765                                }
1766                                break;
1767                            case FORCED_LINEBREAK:
1768                                {
1769                                alt20=1;
1770                                }
1771                                break;
1772                            case ESCAPE:
1773                                {
1774                                alt20=1;
1775                                }
1776                                break;
1777                            case LINK_OPEN:
1778                                {
1779                                alt20=1;
1780                                }
1781                                break;
1782                            case IMAGE_OPEN:
1783                                {
1784                                alt20=1;
1785                                }
1786                                break;
1787                            case EXTENSION:
1788                                {
1789                                alt20=1;
1790                                }
1791                                break;
1792                            case NOWIKI_OPEN:
1793                                {
1794                                alt20=1;
1795                                }
1796                                break;
1797    
1798                            }
1799    
1800                            switch (alt20) {
1801                            case 1 :
1802                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:196:20: p= text_italcontentpart
1803                                {
1804                                pushFollow(FOLLOW_text_italcontentpart_in_text_italcontent585);
1805                                p=text_italcontentpart();
1806                                _fsp--;
1807                                if (failed) return text;
1808                                if ( backtracking==0 ) {
1809                                   text.add(p); 
1810                                }
1811    
1812                                }
1813                                break;
1814    
1815                            default :
1816                                break loop20;
1817                            }
1818                        } while (true);
1819    
1820    
1821                        }
1822                        break;
1823                    case 2 :
1824                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:197:4: EOF
1825                        {
1826                        match(input,EOF,FOLLOW_EOF_in_text_italcontent596); if (failed) return text;
1827    
1828                        }
1829                        break;
1830    
1831                }
1832            }
1833            catch (RecognitionException re) {
1834                reportError(re);
1835                recover(input,re);
1836            }
1837            finally {
1838            }
1839            return text;
1840        }
1841        // $ANTLR end text_italcontent
1842    
1843    
1844        // $ANTLR start text_element
1845        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:199:1: text_element returns [ASTNode item = null] : ( onestar tu1= text_unformattedelement | tu2= text_unformattedelement onestar | tf= text_formattedelement );
1846        public final ASTNode text_element() throws RecognitionException {
1847            ASTNode item =  null;
1848    
1849            ASTNode tu1 = null;
1850    
1851            ASTNode tu2 = null;
1852    
1853            FormattedTextNode tf = null;
1854    
1855    
1856            try {
1857                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:200:2: ( onestar tu1= text_unformattedelement | tu2= text_unformattedelement onestar | tf= text_formattedelement )
1858                int alt22=3;
1859                switch ( input.LA(1) ) {
1860                case STAR:
1861                    {
1862                    int LA22_1 = input.LA(2);
1863    
1864                    if ( ( input.LA(2) != STAR ) ) {
1865                        alt22=1;
1866                    }
1867                    else if ( (true) ) {
1868                        alt22=3;
1869                    }
1870                    else {
1871                        if (backtracking>0) {failed=true; return item;}
1872                        NoViableAltException nvae =
1873                            new NoViableAltException("199:1: text_element returns [ASTNode item = null] : ( onestar tu1= text_unformattedelement | tu2= text_unformattedelement onestar | tf= text_formattedelement );", 22, 1, input);
1874    
1875                        throw nvae;
1876                    }
1877                    }
1878                    break;
1879                case FORCED_END_OF_LINE:
1880                case HEADING_SECTION:
1881                case HORIZONTAL_SECTION:
1882                case LIST_ITEM:
1883                case LIST_ITEM_PART:
1884                case NOWIKI_SECTION:
1885                case SCAPE_NODE:
1886                case TEXT_NODE:
1887                case UNORDERED_LIST:
1888                case UNFORMATTED_TEXT:
1889                case WIKI:
1890                case POUND:
1891                case EQUAL:
1892                case PIPE:
1893                case NOWIKI_BLOCK_CLOSE:
1894                case NOWIKI_CLOSE:
1895                case LINK_CLOSE:
1896                case IMAGE_CLOSE:
1897                case BLANKS:
1898                case TABLE_OF_CONTENTS_TEXT:
1899                case DASH:
1900                case CR:
1901                case LF:
1902                case SPACE:
1903                case TABULATOR:
1904                case BRACE_CLOSE:
1905                case COLON_SLASH:
1906                case SLASH:
1907                case TABLE_OF_CONTENTS_OPEN_MARKUP:
1908                case TABLE_OF_CONTENTS_CLOSE_MARKUP:
1909                case INSIGNIFICANT_CHAR:
1910                case 44:
1911                case 45:
1912                case 46:
1913                case 47:
1914                case 48:
1915                case 49:
1916                case 50:
1917                case 51:
1918                case 52:
1919                case 53:
1920                case 54:
1921                case 55:
1922                case 56:
1923                case 57:
1924                case 58:
1925                case 59:
1926                case 60:
1927                case 61:
1928                case 62:
1929                case 63:
1930                case 64:
1931                case 65:
1932                case 66:
1933                case 67:
1934                case 68:
1935                case 69:
1936                case 70:
1937                case 71:
1938                case 72:
1939                case 73:
1940                case 74:
1941                case 75:
1942                case 76:
1943                case 77:
1944                case 78:
1945                case 79:
1946                    {
1947                    alt22=1;
1948                    }
1949                    break;
1950                case FORCED_LINEBREAK:
1951                    {
1952                    alt22=1;
1953                    }
1954                    break;
1955                case ESCAPE:
1956                    {
1957                    alt22=1;
1958                    }
1959                    break;
1960                case LINK_OPEN:
1961                    {
1962                    alt22=1;
1963                    }
1964                    break;
1965                case IMAGE_OPEN:
1966                    {
1967                    alt22=1;
1968                    }
1969                    break;
1970                case EXTENSION:
1971                    {
1972                    alt22=1;
1973                    }
1974                    break;
1975                case NOWIKI_OPEN:
1976                    {
1977                    alt22=1;
1978                    }
1979                    break;
1980                case ITAL:
1981                    {
1982                    alt22=3;
1983                    }
1984                    break;
1985                default:
1986                    if (backtracking>0) {failed=true; return item;}
1987                    NoViableAltException nvae =
1988                        new NoViableAltException("199:1: text_element returns [ASTNode item = null] : ( onestar tu1= text_unformattedelement | tu2= text_unformattedelement onestar | tf= text_formattedelement );", 22, 0, input);
1989    
1990                    throw nvae;
1991                }
1992    
1993                switch (alt22) {
1994                    case 1 :
1995                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:200:4: onestar tu1= text_unformattedelement
1996                        {
1997                        pushFollow(FOLLOW_onestar_in_text_element610);
1998                        onestar();
1999                        _fsp--;
2000                        if (failed) return item;
2001                        pushFollow(FOLLOW_text_unformattedelement_in_text_element617);
2002                        tu1=text_unformattedelement();
2003                        _fsp--;
2004                        if (failed) return item;
2005                        if ( backtracking==0 ) {
2006                           item = tu1; 
2007                        }
2008    
2009                        }
2010                        break;
2011                    case 2 :
2012                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:201:4: tu2= text_unformattedelement onestar
2013                        {
2014                        pushFollow(FOLLOW_text_unformattedelement_in_text_element628);
2015                        tu2=text_unformattedelement();
2016                        _fsp--;
2017                        if (failed) return item;
2018                        pushFollow(FOLLOW_onestar_in_text_element631);
2019                        onestar();
2020                        _fsp--;
2021                        if (failed) return item;
2022                        if ( backtracking==0 ) {
2023                           item = tu2; 
2024                        }
2025    
2026                        }
2027                        break;
2028                    case 3 :
2029                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:202:4: tf= text_formattedelement
2030                        {
2031                        pushFollow(FOLLOW_text_formattedelement_in_text_element642);
2032                        tf=text_formattedelement();
2033                        _fsp--;
2034                        if (failed) return item;
2035                        if ( backtracking==0 ) {
2036                           item = tf; 
2037                        }
2038    
2039                        }
2040                        break;
2041    
2042                }
2043            }
2044            catch (RecognitionException re) {
2045                reportError(re);
2046                recover(input,re);
2047            }
2048            finally {
2049            }
2050            return item;
2051        }
2052        // $ANTLR end text_element
2053    
2054    
2055        // $ANTLR start text_boldcontentpart
2056        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:205:1: text_boldcontentpart returns [FormattedTextNode node = null] : ( ital_markup t= text_bolditalcontent ( ital_markup )? | tf= text_formattedcontent );
2057        public final FormattedTextNode text_boldcontentpart() throws RecognitionException {
2058            FormattedTextNode node =  null;
2059    
2060            ASTNode t = null;
2061    
2062            CollectionNode tf = null;
2063    
2064    
2065            try {
2066                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:206:2: ( ital_markup t= text_bolditalcontent ( ital_markup )? | tf= text_formattedcontent )
2067                int alt24=2;
2068                int LA24_0 = input.LA(1);
2069    
2070                if ( (LA24_0==ITAL) ) {
2071                    alt24=1;
2072                }
2073                else if ( ((LA24_0>=FORCED_END_OF_LINE && LA24_0<=WIKI)||(LA24_0>=POUND && LA24_0<=PIPE)||(LA24_0>=LINK_OPEN && LA24_0<=79)) ) {
2074                    alt24=2;
2075                }
2076                else {
2077                    if (backtracking>0) {failed=true; return node;}
2078                    NoViableAltException nvae =
2079                        new NoViableAltException("205:1: text_boldcontentpart returns [FormattedTextNode node = null] : ( ital_markup t= text_bolditalcontent ( ital_markup )? | tf= text_formattedcontent );", 24, 0, input);
2080    
2081                    throw nvae;
2082                }
2083                switch (alt24) {
2084                    case 1 :
2085                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:206:4: ital_markup t= text_bolditalcontent ( ital_markup )?
2086                        {
2087                        pushFollow(FOLLOW_ital_markup_in_text_boldcontentpart659);
2088                        ital_markup();
2089                        _fsp--;
2090                        if (failed) return node;
2091                        pushFollow(FOLLOW_text_bolditalcontent_in_text_boldcontentpart666);
2092                        t=text_bolditalcontent();
2093                        _fsp--;
2094                        if (failed) return node;
2095                        if ( backtracking==0 ) {
2096                          node = new ItalicTextNode(t); 
2097                        }
2098                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:206:84: ( ital_markup )?
2099                        int alt23=2;
2100                        int LA23_0 = input.LA(1);
2101    
2102                        if ( (LA23_0==ITAL) ) {
2103                            alt23=1;
2104                        }
2105                        switch (alt23) {
2106                            case 1 :
2107                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:206:86: ital_markup
2108                                {
2109                                pushFollow(FOLLOW_ital_markup_in_text_boldcontentpart673);
2110                                ital_markup();
2111                                _fsp--;
2112                                if (failed) return node;
2113    
2114                                }
2115                                break;
2116    
2117                        }
2118    
2119    
2120                        }
2121                        break;
2122                    case 2 :
2123                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:207:4: tf= text_formattedcontent
2124                        {
2125                        pushFollow(FOLLOW_text_formattedcontent_in_text_boldcontentpart685);
2126                        tf=text_formattedcontent();
2127                        _fsp--;
2128                        if (failed) return node;
2129                        if ( backtracking==0 ) {
2130                          node = new FormattedTextNode(tf); 
2131                        }
2132    
2133                        }
2134                        break;
2135    
2136                }
2137            }
2138            catch (RecognitionException re) {
2139                reportError(re);
2140                recover(input,re);
2141            }
2142            finally {
2143            }
2144            return node;
2145        }
2146        // $ANTLR end text_boldcontentpart
2147    
2148    
2149        // $ANTLR start text_italcontentpart
2150        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:209:1: text_italcontentpart returns [FormattedTextNode node = null] : ( bold_markup t= text_bolditalcontent ( bold_markup )? | tf= text_formattedcontent );
2151        public final FormattedTextNode text_italcontentpart() throws RecognitionException {
2152            FormattedTextNode node =  null;
2153    
2154            ASTNode t = null;
2155    
2156            CollectionNode tf = null;
2157    
2158    
2159            try {
2160                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:210:2: ( bold_markup t= text_bolditalcontent ( bold_markup )? | tf= text_formattedcontent )
2161                int alt26=2;
2162                int LA26_0 = input.LA(1);
2163    
2164                if ( (LA26_0==STAR) ) {
2165                    int LA26_1 = input.LA(2);
2166    
2167                    if ( (LA26_1==STAR) ) {
2168                        alt26=1;
2169                    }
2170                    else if ( ((LA26_1>=FORCED_END_OF_LINE && LA26_1<=WIKI)||LA26_1==POUND||(LA26_1>=EQUAL && LA26_1<=PIPE)||(LA26_1>=LINK_OPEN && LA26_1<=79)) ) {
2171                        alt26=2;
2172                    }
2173                    else {
2174                        if (backtracking>0) {failed=true; return node;}
2175                        NoViableAltException nvae =
2176                            new NoViableAltException("209:1: text_italcontentpart returns [FormattedTextNode node = null] : ( bold_markup t= text_bolditalcontent ( bold_markup )? | tf= text_formattedcontent );", 26, 1, input);
2177    
2178                        throw nvae;
2179                    }
2180                }
2181                else if ( ((LA26_0>=FORCED_END_OF_LINE && LA26_0<=WIKI)||LA26_0==POUND||(LA26_0>=EQUAL && LA26_0<=PIPE)||(LA26_0>=LINK_OPEN && LA26_0<=79)) ) {
2182                    alt26=2;
2183                }
2184                else {
2185                    if (backtracking>0) {failed=true; return node;}
2186                    NoViableAltException nvae =
2187                        new NoViableAltException("209:1: text_italcontentpart returns [FormattedTextNode node = null] : ( bold_markup t= text_bolditalcontent ( bold_markup )? | tf= text_formattedcontent );", 26, 0, input);
2188    
2189                    throw nvae;
2190                }
2191                switch (alt26) {
2192                    case 1 :
2193                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:210:4: bold_markup t= text_bolditalcontent ( bold_markup )?
2194                        {
2195                        pushFollow(FOLLOW_bold_markup_in_text_italcontentpart701);
2196                        bold_markup();
2197                        _fsp--;
2198                        if (failed) return node;
2199                        pushFollow(FOLLOW_text_bolditalcontent_in_text_italcontentpart708);
2200                        t=text_bolditalcontent();
2201                        _fsp--;
2202                        if (failed) return node;
2203                        if ( backtracking==0 ) {
2204                           node = new BoldTextNode(t); 
2205                        }
2206                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:210:82: ( bold_markup )?
2207                        int alt25=2;
2208                        int LA25_0 = input.LA(1);
2209    
2210                        if ( (LA25_0==STAR) ) {
2211                            int LA25_1 = input.LA(2);
2212    
2213                            if ( (LA25_1==STAR) ) {
2214                                alt25=1;
2215                            }
2216                        }
2217                        switch (alt25) {
2218                            case 1 :
2219                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:210:84: bold_markup
2220                                {
2221                                pushFollow(FOLLOW_bold_markup_in_text_italcontentpart714);
2222                                bold_markup();
2223                                _fsp--;
2224                                if (failed) return node;
2225    
2226                                }
2227                                break;
2228    
2229                        }
2230    
2231    
2232                        }
2233                        break;
2234                    case 2 :
2235                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:211:4: tf= text_formattedcontent
2236                        {
2237                        pushFollow(FOLLOW_text_formattedcontent_in_text_italcontentpart725);
2238                        tf=text_formattedcontent();
2239                        _fsp--;
2240                        if (failed) return node;
2241                        if ( backtracking==0 ) {
2242                          node = new FormattedTextNode(tf); 
2243                        }
2244    
2245                        }
2246                        break;
2247    
2248                }
2249            }
2250            catch (RecognitionException re) {
2251                reportError(re);
2252                recover(input,re);
2253            }
2254            finally {
2255            }
2256            return node;
2257        }
2258        // $ANTLR end text_italcontentpart
2259    
2260    
2261        // $ANTLR start text_bolditalcontent
2262        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:213:1: text_bolditalcontent returns [ASTNode items = null] : ( ( NEWLINE )? (tf= text_formattedcontent )? | EOF );
2263        public final ASTNode text_bolditalcontent() throws RecognitionException {
2264            ASTNode items =  null;
2265    
2266            CollectionNode tf = null;
2267    
2268    
2269            try {
2270                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:214:2: ( ( NEWLINE )? (tf= text_formattedcontent )? | EOF )
2271                int alt29=2;
2272                int LA29_0 = input.LA(1);
2273    
2274                if ( ((LA29_0>=FORCED_END_OF_LINE && LA29_0<=79)) ) {
2275                    alt29=1;
2276                }
2277                else if ( (LA29_0==EOF) ) {
2278                    alt29=1;
2279                }
2280                else {
2281                    if (backtracking>0) {failed=true; return items;}
2282                    NoViableAltException nvae =
2283                        new NoViableAltException("213:1: text_bolditalcontent returns [ASTNode items = null] : ( ( NEWLINE )? (tf= text_formattedcontent )? | EOF );", 29, 0, input);
2284    
2285                    throw nvae;
2286                }
2287                switch (alt29) {
2288                    case 1 :
2289                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:214:4: ( NEWLINE )? (tf= text_formattedcontent )?
2290                        {
2291                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:214:4: ( NEWLINE )?
2292                        int alt27=2;
2293                        int LA27_0 = input.LA(1);
2294    
2295                        if ( (LA27_0==NEWLINE) ) {
2296                            alt27=1;
2297                        }
2298                        switch (alt27) {
2299                            case 1 :
2300                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:214:6: NEWLINE
2301                                {
2302                                match(input,NEWLINE,FOLLOW_NEWLINE_in_text_bolditalcontent743); if (failed) return items;
2303    
2304                                }
2305                                break;
2306    
2307                        }
2308    
2309                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:214:18: (tf= text_formattedcontent )?
2310                        int alt28=2;
2311                        switch ( input.LA(1) ) {
2312                            case STAR:
2313                                {
2314                                int LA28_1 = input.LA(2);
2315    
2316                                if ( ( input.LA(2) != STAR ) ) {
2317                                    alt28=1;
2318                                }
2319                                }
2320                                break;
2321                            case FORCED_END_OF_LINE:
2322                            case HEADING_SECTION:
2323                            case HORIZONTAL_SECTION:
2324                            case LIST_ITEM:
2325                            case LIST_ITEM_PART:
2326                            case NOWIKI_SECTION:
2327                            case SCAPE_NODE:
2328                            case TEXT_NODE:
2329                            case UNORDERED_LIST:
2330                            case UNFORMATTED_TEXT:
2331                            case WIKI:
2332                            case POUND:
2333                            case EQUAL:
2334                            case PIPE:
2335                            case NOWIKI_BLOCK_CLOSE:
2336                            case NOWIKI_CLOSE:
2337                            case LINK_CLOSE:
2338                            case IMAGE_CLOSE:
2339                            case BLANKS:
2340                            case TABLE_OF_CONTENTS_TEXT:
2341                            case DASH:
2342                            case CR:
2343                            case LF:
2344                            case SPACE:
2345                            case TABULATOR:
2346                            case BRACE_CLOSE:
2347                            case COLON_SLASH:
2348                            case SLASH:
2349                            case TABLE_OF_CONTENTS_OPEN_MARKUP:
2350                            case TABLE_OF_CONTENTS_CLOSE_MARKUP:
2351                            case INSIGNIFICANT_CHAR:
2352                            case 44:
2353                            case 45:
2354                            case 46:
2355                            case 47:
2356                            case 48:
2357                            case 49:
2358                            case 50:
2359                            case 51:
2360                            case 52:
2361                            case 53:
2362                            case 54:
2363                            case 55:
2364                            case 56:
2365                            case 57:
2366                            case 58:
2367                            case 59:
2368                            case 60:
2369                            case 61:
2370                            case 62:
2371                            case 63:
2372                            case 64:
2373                            case 65:
2374                            case 66:
2375                            case 67:
2376                            case 68:
2377                            case 69:
2378                            case 70:
2379                            case 71:
2380                            case 72:
2381                            case 73:
2382                            case 74:
2383                            case 75:
2384                            case 76:
2385                            case 77:
2386                            case 78:
2387                            case 79:
2388                                {
2389                                alt28=1;
2390                                }
2391                                break;
2392                            case FORCED_LINEBREAK:
2393                                {
2394                                alt28=1;
2395                                }
2396                                break;
2397                            case ESCAPE:
2398                                {
2399                                alt28=1;
2400                                }
2401                                break;
2402                            case LINK_OPEN:
2403                                {
2404                                alt28=1;
2405                                }
2406                                break;
2407                            case IMAGE_OPEN:
2408                                {
2409                                alt28=1;
2410                                }
2411                                break;
2412                            case EXTENSION:
2413                                {
2414                                alt28=1;
2415                                }
2416                                break;
2417                            case NOWIKI_OPEN:
2418                                {
2419                                alt28=1;
2420                                }
2421                                break;
2422                        }
2423    
2424                        switch (alt28) {
2425                            case 1 :
2426                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:214:20: tf= text_formattedcontent
2427                                {
2428                                pushFollow(FOLLOW_text_formattedcontent_in_text_bolditalcontent754);
2429                                tf=text_formattedcontent();
2430                                _fsp--;
2431                                if (failed) return items;
2432                                if ( backtracking==0 ) {
2433                                  items = tf; 
2434                                }
2435    
2436                                }
2437                                break;
2438    
2439                        }
2440    
2441    
2442                        }
2443                        break;
2444                    case 2 :
2445                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:215:4: EOF
2446                        {
2447                        match(input,EOF,FOLLOW_EOF_in_text_bolditalcontent764); if (failed) return items;
2448    
2449                        }
2450                        break;
2451    
2452                }
2453            }
2454            catch (RecognitionException re) {
2455                reportError(re);
2456                recover(input,re);
2457            }
2458            finally {
2459            }
2460            return items;
2461        }
2462        // $ANTLR end text_bolditalcontent
2463    
2464    
2465        // $ANTLR start text_formattedcontent
2466        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:217:1: text_formattedcontent returns [CollectionNode items = new CollectionNode ()] : onestar (t= text_unformattedelement onestar ( text_linebreak )? )+ ;
2467        public final CollectionNode text_formattedcontent() throws RecognitionException {
2468            CollectionNode items =  new CollectionNode ();
2469    
2470            ASTNode t = null;
2471    
2472    
2473            try {
2474                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:218:2: ( onestar (t= text_unformattedelement onestar ( text_linebreak )? )+ )
2475                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:218:4: onestar (t= text_unformattedelement onestar ( text_linebreak )? )+
2476                {
2477                pushFollow(FOLLOW_onestar_in_text_formattedcontent778);
2478                onestar();
2479                _fsp--;
2480                if (failed) return items;
2481                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:218:13: (t= text_unformattedelement onestar ( text_linebreak )? )+
2482                int cnt31=0;
2483                loop31:
2484                do {
2485                    int alt31=2;
2486                    switch ( input.LA(1) ) {
2487                    case FORCED_END_OF_LINE:
2488                    case HEADING_SECTION:
2489                    case HORIZONTAL_SECTION:
2490                    case LIST_ITEM:
2491                    case LIST_ITEM_PART:
2492                    case NOWIKI_SECTION:
2493                    case SCAPE_NODE:
2494                    case TEXT_NODE:
2495                    case UNORDERED_LIST:
2496                    case UNFORMATTED_TEXT:
2497                    case WIKI:
2498                    case POUND:
2499                    case EQUAL:
2500                    case PIPE:
2501                    case NOWIKI_BLOCK_CLOSE:
2502                    case NOWIKI_CLOSE:
2503                    case LINK_CLOSE:
2504                    case IMAGE_CLOSE:
2505                    case BLANKS:
2506                    case TABLE_OF_CONTENTS_TEXT:
2507                    case DASH:
2508                    case CR:
2509                    case LF:
2510                    case SPACE:
2511                    case TABULATOR:
2512                    case BRACE_CLOSE:
2513                    case COLON_SLASH:
2514                    case SLASH:
2515                    case TABLE_OF_CONTENTS_OPEN_MARKUP:
2516                    case TABLE_OF_CONTENTS_CLOSE_MARKUP:
2517                    case INSIGNIFICANT_CHAR:
2518                    case 44:
2519                    case 45:
2520                    case 46:
2521                    case 47:
2522                    case 48:
2523                    case 49:
2524                    case 50:
2525                    case 51:
2526                    case 52:
2527                    case 53:
2528                    case 54:
2529                    case 55:
2530                    case 56:
2531                    case 57:
2532                    case 58:
2533                    case 59:
2534                    case 60:
2535                    case 61:
2536                    case 62:
2537                    case 63:
2538                    case 64:
2539                    case 65:
2540                    case 66:
2541                    case 67:
2542                    case 68:
2543                    case 69:
2544                    case 70:
2545                    case 71:
2546                    case 72:
2547                    case 73:
2548                    case 74:
2549                    case 75:
2550                    case 76:
2551                    case 77:
2552                    case 78:
2553                    case 79:
2554                        {
2555                        alt31=1;
2556                        }
2557                        break;
2558                    case FORCED_LINEBREAK:
2559                        {
2560                        alt31=1;
2561                        }
2562                        break;
2563                    case ESCAPE:
2564                        {
2565                        alt31=1;
2566                        }
2567                        break;
2568                    case LINK_OPEN:
2569                        {
2570                        alt31=1;
2571                        }
2572                        break;
2573                    case IMAGE_OPEN:
2574                        {
2575                        alt31=1;
2576                        }
2577                        break;
2578                    case EXTENSION:
2579                        {
2580                        alt31=1;
2581                        }
2582                        break;
2583                    case NOWIKI_OPEN:
2584                        {
2585                        alt31=1;
2586                        }
2587                        break;
2588    
2589                    }
2590    
2591                    switch (alt31) {
2592                    case 1 :
2593                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:218:15: t= text_unformattedelement onestar ( text_linebreak )?
2594                        {
2595                        pushFollow(FOLLOW_text_unformattedelement_in_text_formattedcontent787);
2596                        t=text_unformattedelement();
2597                        _fsp--;
2598                        if (failed) return items;
2599                        if ( backtracking==0 ) {
2600                          items.add(t); 
2601                        }
2602                        pushFollow(FOLLOW_onestar_in_text_formattedcontent792);
2603                        onestar();
2604                        _fsp--;
2605                        if (failed) return items;
2606                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:218:81: ( text_linebreak )?
2607                        int alt30=2;
2608                        int LA30_0 = input.LA(1);
2609    
2610                        if ( (LA30_0==NEWLINE) ) {
2611                            int LA30_1 = input.LA(2);
2612    
2613                            if ( ( input.LA(2) != DASH && input.LA(2) != POUND &&
2614                                            input.LA(2) != EQUAL && input.LA(2) != NEWLINE ) ) {
2615                                alt30=1;
2616                            }
2617                        }
2618                        else if ( (LA30_0==EOF) ) {
2619                            int LA30_2 = input.LA(2);
2620    
2621                            if ( ( input.LA(2) != DASH && input.LA(2) != POUND &&
2622                                            input.LA(2) != EQUAL && input.LA(2) != NEWLINE ) ) {
2623                                alt30=1;
2624                            }
2625                        }
2626                        switch (alt30) {
2627                            case 1 :
2628                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:218:83: text_linebreak
2629                                {
2630                                pushFollow(FOLLOW_text_linebreak_in_text_formattedcontent797);
2631                                text_linebreak();
2632                                _fsp--;
2633                                if (failed) return items;
2634    
2635                                }
2636                                break;
2637    
2638                        }
2639    
2640    
2641                        }
2642                        break;
2643    
2644                    default :
2645                        if ( cnt31 >= 1 ) break loop31;
2646                        if (backtracking>0) {failed=true; return items;}
2647                            EarlyExitException eee =
2648                                new EarlyExitException(31, input);
2649                            throw eee;
2650                    }
2651                    cnt31++;
2652                } while (true);
2653    
2654    
2655                }
2656    
2657            }
2658            catch (RecognitionException re) {
2659                reportError(re);
2660                recover(input,re);
2661            }
2662            finally {
2663            }
2664            return items;
2665        }
2666        // $ANTLR end text_formattedcontent
2667    
2668    
2669        // $ANTLR start text_linebreak
2670        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:220:1: text_linebreak : {...}? text_lineseparator ;
2671        public final void text_linebreak() throws RecognitionException {
2672            try {
2673                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:221:2: ({...}? text_lineseparator )
2674                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:221:4: {...}? text_lineseparator
2675                {
2676                if ( !( input.LA(2) != DASH && input.LA(2) != POUND &&
2677                            input.LA(2) != EQUAL && input.LA(2) != NEWLINE ) ) {
2678                    if (backtracking>0) {failed=true; return ;}
2679                    throw new FailedPredicateException(input, "text_linebreak", " input.LA(2) != DASH && input.LA(2) != POUND &&\n\t\tinput.LA(2) != EQUAL && input.LA(2) != NEWLINE ");
2680                }
2681                pushFollow(FOLLOW_text_lineseparator_in_text_linebreak817);
2682                text_lineseparator();
2683                _fsp--;
2684                if (failed) return ;
2685    
2686                }
2687    
2688            }
2689            catch (RecognitionException re) {
2690                reportError(re);
2691                recover(input,re);
2692            }
2693            finally {
2694            }
2695            return ;
2696        }
2697        // $ANTLR end text_linebreak
2698    
2699    
2700        // $ANTLR start text_inlineelement
2701        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:225:1: text_inlineelement returns [ASTNode element = null ] : (tf= text_first_inlineelement | nwi= nowiki_inline );
2702        public final ASTNode text_inlineelement() throws RecognitionException {
2703            ASTNode element =  null;
2704    
2705            ASTNode tf = null;
2706    
2707            NoWikiSectionNode nwi = null;
2708    
2709    
2710            try {
2711                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:226:2: (tf= text_first_inlineelement | nwi= nowiki_inline )
2712                int alt32=2;
2713                int LA32_0 = input.LA(1);
2714    
2715                if ( ((LA32_0>=LINK_OPEN && LA32_0<=IMAGE_OPEN)||LA32_0==EXTENSION) ) {
2716                    alt32=1;
2717                }
2718                else if ( (LA32_0==NOWIKI_OPEN) ) {
2719                    alt32=2;
2720                }
2721                else {
2722                    if (backtracking>0) {failed=true; return element;}
2723                    NoViableAltException nvae =
2724                        new NoViableAltException("225:1: text_inlineelement returns [ASTNode element = null ] : (tf= text_first_inlineelement | nwi= nowiki_inline );", 32, 0, input);
2725    
2726                    throw nvae;
2727                }
2728                switch (alt32) {
2729                    case 1 :
2730                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:226:4: tf= text_first_inlineelement
2731                        {
2732                        pushFollow(FOLLOW_text_first_inlineelement_in_text_inlineelement835);
2733                        tf=text_first_inlineelement();
2734                        _fsp--;
2735                        if (failed) return element;
2736                        if ( backtracking==0 ) {
2737                          element = tf; 
2738                        }
2739    
2740                        }
2741                        break;
2742                    case 2 :
2743                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:227:4: nwi= nowiki_inline
2744                        {
2745                        pushFollow(FOLLOW_nowiki_inline_in_text_inlineelement846);
2746                        nwi=nowiki_inline();
2747                        _fsp--;
2748                        if (failed) return element;
2749                        if ( backtracking==0 ) {
2750                          element = nwi; 
2751                        }
2752    
2753                        }
2754                        break;
2755    
2756                }
2757            }
2758            catch (RecognitionException re) {
2759                reportError(re);
2760                recover(input,re);
2761            }
2762            finally {
2763            }
2764            return element;
2765        }
2766        // $ANTLR end text_inlineelement
2767    
2768    
2769        // $ANTLR start text_first_inlineelement
2770        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:229:1: text_first_inlineelement returns [ASTNode element = null] : (l= link | i= image | e= extension );
2771        public final ASTNode text_first_inlineelement() throws RecognitionException {
2772            ASTNode element =  null;
2773    
2774            LinkNode l = null;
2775    
2776            ImageNode i = null;
2777    
2778            ASTNode e = null;
2779    
2780    
2781            try {
2782                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:230:2: (l= link | i= image | e= extension )
2783                int alt33=3;
2784                switch ( input.LA(1) ) {
2785                case LINK_OPEN:
2786                    {
2787                    alt33=1;
2788                    }
2789                    break;
2790                case IMAGE_OPEN:
2791                    {
2792                    alt33=2;
2793                    }
2794                    break;
2795                case EXTENSION:
2796                    {
2797                    alt33=3;
2798                    }
2799                    break;
2800                default:
2801                    if (backtracking>0) {failed=true; return element;}
2802                    NoViableAltException nvae =
2803                        new NoViableAltException("229:1: text_first_inlineelement returns [ASTNode element = null] : (l= link | i= image | e= extension );", 33, 0, input);
2804    
2805                    throw nvae;
2806                }
2807    
2808                switch (alt33) {
2809                    case 1 :
2810                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:231:3: l= link
2811                        {
2812                        pushFollow(FOLLOW_link_in_text_first_inlineelement867);
2813                        l=link();
2814                        _fsp--;
2815                        if (failed) return element;
2816                        if ( backtracking==0 ) {
2817                          element = l;
2818                        }
2819    
2820                        }
2821                        break;
2822                    case 2 :
2823                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:232:4: i= image
2824                        {
2825                        pushFollow(FOLLOW_image_in_text_first_inlineelement878);
2826                        i=image();
2827                        _fsp--;
2828                        if (failed) return element;
2829                        if ( backtracking==0 ) {
2830                          element = i;
2831                        }
2832    
2833                        }
2834                        break;
2835                    case 3 :
2836                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:233:4: e= extension
2837                        {
2838                        pushFollow(FOLLOW_extension_in_text_first_inlineelement888);
2839                        e=extension();
2840                        _fsp--;
2841                        if (failed) return element;
2842                        if ( backtracking==0 ) {
2843                          element = e;
2844                        }
2845    
2846                        }
2847                        break;
2848    
2849                }
2850            }
2851            catch (RecognitionException re) {
2852                reportError(re);
2853                recover(input,re);
2854            }
2855            finally {
2856            }
2857            return element;
2858        }
2859        // $ANTLR end text_first_inlineelement
2860    
2861    
2862        // $ANTLR start text_first_unformattedelement
2863        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:235:1: text_first_unformattedelement returns [ASTNode item = null] : (tfu= text_first_unformatted | tfi= text_first_inlineelement );
2864        public final ASTNode text_first_unformattedelement() throws RecognitionException {
2865            ASTNode item =  null;
2866    
2867            CollectionNode tfu = null;
2868    
2869            ASTNode tfi = null;
2870    
2871    
2872            try {
2873                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:236:2: (tfu= text_first_unformatted | tfi= text_first_inlineelement )
2874                int alt34=2;
2875                int LA34_0 = input.LA(1);
2876    
2877                if ( ((LA34_0>=FORCED_END_OF_LINE && LA34_0<=WIKI)||(LA34_0>=FORCED_LINEBREAK && LA34_0<=79)) ) {
2878                    alt34=1;
2879                }
2880                else if ( ((LA34_0>=LINK_OPEN && LA34_0<=IMAGE_OPEN)||LA34_0==EXTENSION) ) {
2881                    alt34=2;
2882                }
2883                else {
2884                    if (backtracking>0) {failed=true; return item;}
2885                    NoViableAltException nvae =
2886                        new NoViableAltException("235:1: text_first_unformattedelement returns [ASTNode item = null] : (tfu= text_first_unformatted | tfi= text_first_inlineelement );", 34, 0, input);
2887    
2888                    throw nvae;
2889                }
2890                switch (alt34) {
2891                    case 1 :
2892                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:236:4: tfu= text_first_unformatted
2893                        {
2894                        pushFollow(FOLLOW_text_first_unformatted_in_text_first_unformattedelement908);
2895                        tfu=text_first_unformatted();
2896                        _fsp--;
2897                        if (failed) return item;
2898                        if ( backtracking==0 ) {
2899                          item = new UnformattedTextNode(tfu);
2900                        }
2901    
2902                        }
2903                        break;
2904                    case 2 :
2905                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:237:4: tfi= text_first_inlineelement
2906                        {
2907                        pushFollow(FOLLOW_text_first_inlineelement_in_text_first_unformattedelement919);
2908                        tfi=text_first_inlineelement();
2909                        _fsp--;
2910                        if (failed) return item;
2911                        if ( backtracking==0 ) {
2912                           item = tfi; 
2913                        }
2914    
2915                        }
2916                        break;
2917    
2918                }
2919            }
2920            catch (RecognitionException re) {
2921                reportError(re);
2922                recover(input,re);
2923            }
2924            finally {
2925            }
2926            return item;
2927        }
2928        // $ANTLR end text_first_unformattedelement
2929    
2930    
2931        // $ANTLR start text_first_unformatted
2932        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:239:1: text_first_unformatted returns [CollectionNode items = new CollectionNode()] : (t= text_first_unformmatted_text | ( forced_linebreak | e= escaped )+ );
2933        public final CollectionNode text_first_unformatted() throws RecognitionException {
2934            CollectionNode items =  new CollectionNode();
2935    
2936            StringBundler t = null;
2937    
2938            ScapedNode e = null;
2939    
2940    
2941            try {
2942                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:240:2: (t= text_first_unformmatted_text | ( forced_linebreak | e= escaped )+ )
2943                int alt36=2;
2944                int LA36_0 = input.LA(1);
2945    
2946                if ( ((LA36_0>=FORCED_END_OF_LINE && LA36_0<=WIKI)||(LA36_0>=NOWIKI_BLOCK_CLOSE && LA36_0<=79)) ) {
2947                    alt36=1;
2948                }
2949                else if ( ((LA36_0>=FORCED_LINEBREAK && LA36_0<=ESCAPE)) ) {
2950                    alt36=2;
2951                }
2952                else {
2953                    if (backtracking>0) {failed=true; return items;}
2954                    NoViableAltException nvae =
2955                        new NoViableAltException("239:1: text_first_unformatted returns [CollectionNode items = new CollectionNode()] : (t= text_first_unformmatted_text | ( forced_linebreak | e= escaped )+ );", 36, 0, input);
2956    
2957                    throw nvae;
2958                }
2959                switch (alt36) {
2960                    case 1 :
2961                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:240:6: t= text_first_unformmatted_text
2962                        {
2963                        pushFollow(FOLLOW_text_first_unformmatted_text_in_text_first_unformatted941);
2964                        t=text_first_unformmatted_text();
2965                        _fsp--;
2966                        if (failed) return items;
2967                        if ( backtracking==0 ) {
2968                          items.add(new UnformattedTextNode(t.toString()));
2969                        }
2970    
2971                        }
2972                        break;
2973                    case 2 :
2974                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:241:5: ( forced_linebreak | e= escaped )+
2975                        {
2976                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:241:5: ( forced_linebreak | e= escaped )+
2977                        int cnt35=0;
2978                        loop35:
2979                        do {
2980                            int alt35=3;
2981                            int LA35_0 = input.LA(1);
2982    
2983                            if ( (LA35_0==FORCED_LINEBREAK) ) {
2984                                alt35=1;
2985                            }
2986                            else if ( (LA35_0==ESCAPE) ) {
2987                                int LA35_3 = input.LA(2);
2988    
2989                                if ( ((LA35_3>=FORCED_END_OF_LINE && LA35_3<=79)) ) {
2990                                    alt35=2;
2991                                }
2992    
2993    
2994                            }
2995    
2996    
2997                            switch (alt35) {
2998                            case 1 :
2999                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:241:6: forced_linebreak
3000                                {
3001                                pushFollow(FOLLOW_forced_linebreak_in_text_first_unformatted950);
3002                                forced_linebreak();
3003                                _fsp--;
3004                                if (failed) return items;
3005                                if ( backtracking==0 ) {
3006                                   items.add(new ForcedEndOfLineNode()); 
3007                                }
3008    
3009                                }
3010                                break;
3011                            case 2 :
3012                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:242:5: e= escaped
3013                                {
3014                                pushFollow(FOLLOW_escaped_in_text_first_unformatted962);
3015                                e=escaped();
3016                                _fsp--;
3017                                if (failed) return items;
3018                                if ( backtracking==0 ) {
3019                                  items.add(e);
3020                                }
3021    
3022                                }
3023                                break;
3024    
3025                            default :
3026                                if ( cnt35 >= 1 ) break loop35;
3027                                if (backtracking>0) {failed=true; return items;}
3028                                    EarlyExitException eee =
3029                                        new EarlyExitException(35, input);
3030                                    throw eee;
3031                            }
3032                            cnt35++;
3033                        } while (true);
3034    
3035    
3036                        }
3037                        break;
3038    
3039                }
3040            }
3041            catch (RecognitionException re) {
3042                reportError(re);
3043                recover(input,re);
3044            }
3045            finally {
3046            }
3047            return items;
3048        }
3049        // $ANTLR end text_first_unformatted
3050    
3051    
3052        // $ANTLR start text_first_unformmatted_text
3053        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:245:1: text_first_unformmatted_text returns [StringBundler text = new StringBundler()] : (c=~ ( POUND | STAR | EQUAL | PIPE | ITAL | LINK_OPEN | IMAGE_OPEN | NOWIKI_OPEN | EXTENSION | FORCED_LINEBREAK | ESCAPE | NEWLINE | EOF ) )+ ;
3054        public final StringBundler text_first_unformmatted_text() throws RecognitionException {
3055            StringBundler text =  new StringBundler();
3056    
3057            Token c=null;
3058    
3059            try {
3060                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:246:2: ( (c=~ ( POUND | STAR | EQUAL | PIPE | ITAL | LINK_OPEN | IMAGE_OPEN | NOWIKI_OPEN | EXTENSION | FORCED_LINEBREAK | ESCAPE | NEWLINE | EOF ) )+ )
3061                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:247:3: (c=~ ( POUND | STAR | EQUAL | PIPE | ITAL | LINK_OPEN | IMAGE_OPEN | NOWIKI_OPEN | EXTENSION | FORCED_LINEBREAK | ESCAPE | NEWLINE | EOF ) )+
3062                {
3063                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:247:3: (c=~ ( POUND | STAR | EQUAL | PIPE | ITAL | LINK_OPEN | IMAGE_OPEN | NOWIKI_OPEN | EXTENSION | FORCED_LINEBREAK | ESCAPE | NEWLINE | EOF ) )+
3064                int cnt37=0;
3065                loop37:
3066                do {
3067                    int alt37=2;
3068                    int LA37_0 = input.LA(1);
3069    
3070                    if ( ((LA37_0>=FORCED_END_OF_LINE && LA37_0<=WIKI)||(LA37_0>=NOWIKI_BLOCK_CLOSE && LA37_0<=79)) ) {
3071                        alt37=1;
3072                    }
3073    
3074    
3075                    switch (alt37) {
3076                    case 1 :
3077                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:247:4: c=~ ( POUND | STAR | EQUAL | PIPE | ITAL | LINK_OPEN | IMAGE_OPEN | NOWIKI_OPEN | EXTENSION | FORCED_LINEBREAK | ESCAPE | NEWLINE | EOF )
3078                        {
3079                        c=(Token)input.LT(1);
3080                        if ( (input.LA(1)>=FORCED_END_OF_LINE && input.LA(1)<=WIKI)||(input.LA(1)>=NOWIKI_BLOCK_CLOSE && input.LA(1)<=79) ) {
3081                            input.consume();
3082                            errorRecovery=false;failed=false;
3083                        }
3084                        else {
3085                            if (backtracking>0) {failed=true; return text;}
3086                            MismatchedSetException mse =
3087                                new MismatchedSetException(null,input);
3088                            recoverFromMismatchedSet(input,mse,FOLLOW_set_in_text_first_unformmatted_text990);    throw mse;
3089                        }
3090    
3091                        if ( backtracking==0 ) {
3092                          text.append(c.getText()); 
3093                        }
3094    
3095                        }
3096                        break;
3097    
3098                    default :
3099                        if ( cnt37 >= 1 ) break loop37;
3100                        if (backtracking>0) {failed=true; return text;}
3101                            EarlyExitException eee =
3102                                new EarlyExitException(37, input);
3103                            throw eee;
3104                    }
3105                    cnt37++;
3106                } while (true);
3107    
3108    
3109                }
3110    
3111            }
3112            catch (RecognitionException re) {
3113                reportError(re);
3114                recover(input,re);
3115            }
3116            finally {
3117            }
3118            return text;
3119        }
3120        // $ANTLR end text_first_unformmatted_text
3121    
3122    
3123        // $ANTLR start text_unformattedelement
3124        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:261:1: text_unformattedelement returns [ASTNode contents = null] : (text= text_unformatted | ti= text_inlineelement );
3125        public final ASTNode text_unformattedelement() throws RecognitionException {
3126            ASTNode contents =  null;
3127    
3128            CollectionNode text = null;
3129    
3130            ASTNode ti = null;
3131    
3132    
3133            try {
3134                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:262:2: (text= text_unformatted | ti= text_inlineelement )
3135                int alt38=2;
3136                int LA38_0 = input.LA(1);
3137    
3138                if ( ((LA38_0>=FORCED_END_OF_LINE && LA38_0<=WIKI)||LA38_0==POUND||(LA38_0>=EQUAL && LA38_0<=PIPE)||(LA38_0>=FORCED_LINEBREAK && LA38_0<=79)) ) {
3139                    alt38=1;
3140                }
3141                else if ( ((LA38_0>=LINK_OPEN && LA38_0<=EXTENSION)) ) {
3142                    alt38=2;
3143                }
3144                else {
3145                    if (backtracking>0) {failed=true; return contents;}
3146                    NoViableAltException nvae =
3147                        new NoViableAltException("261:1: text_unformattedelement returns [ASTNode contents = null] : (text= text_unformatted | ti= text_inlineelement );", 38, 0, input);
3148    
3149                    throw nvae;
3150                }
3151                switch (alt38) {
3152                    case 1 :
3153                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:262:4: text= text_unformatted
3154                        {
3155                        pushFollow(FOLLOW_text_unformatted_in_text_unformattedelement1104);
3156                        text=text_unformatted();
3157                        _fsp--;
3158                        if (failed) return contents;
3159                        if ( backtracking==0 ) {
3160                           contents = text; 
3161                        }
3162    
3163                        }
3164                        break;
3165                    case 2 :
3166                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:263:4: ti= text_inlineelement
3167                        {
3168                        pushFollow(FOLLOW_text_inlineelement_in_text_unformattedelement1115);
3169                        ti=text_inlineelement();
3170                        _fsp--;
3171                        if (failed) return contents;
3172                        if ( backtracking==0 ) {
3173                           contents = ti; 
3174                        }
3175    
3176                        }
3177                        break;
3178    
3179                }
3180            }
3181            catch (RecognitionException re) {
3182                reportError(re);
3183                recover(input,re);
3184            }
3185            finally {
3186            }
3187            return contents;
3188        }
3189        // $ANTLR end text_unformattedelement
3190    
3191    
3192        // $ANTLR start text_unformatted
3193        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:266:1: text_unformatted returns [CollectionNode items = new CollectionNode()] : (contents= text_unformated_text | ( forced_linebreak | e= escaped )+ );
3194        public final CollectionNode text_unformatted() throws RecognitionException {
3195            CollectionNode items =  new CollectionNode();
3196    
3197            StringBundler contents = null;
3198    
3199            ScapedNode e = null;
3200    
3201    
3202            try {
3203                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:267:2: (contents= text_unformated_text | ( forced_linebreak | e= escaped )+ )
3204                int alt40=2;
3205                int LA40_0 = input.LA(1);
3206    
3207                if ( ((LA40_0>=FORCED_END_OF_LINE && LA40_0<=WIKI)||LA40_0==POUND||(LA40_0>=EQUAL && LA40_0<=PIPE)||(LA40_0>=NOWIKI_BLOCK_CLOSE && LA40_0<=79)) ) {
3208                    alt40=1;
3209                }
3210                else if ( ((LA40_0>=FORCED_LINEBREAK && LA40_0<=ESCAPE)) ) {
3211                    alt40=2;
3212                }
3213                else {
3214                    if (backtracking>0) {failed=true; return items;}
3215                    NoViableAltException nvae =
3216                        new NoViableAltException("266:1: text_unformatted returns [CollectionNode items = new CollectionNode()] : (contents= text_unformated_text | ( forced_linebreak | e= escaped )+ );", 40, 0, input);
3217    
3218                    throw nvae;
3219                }
3220                switch (alt40) {
3221                    case 1 :
3222                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:267:5: contents= text_unformated_text
3223                        {
3224                        pushFollow(FOLLOW_text_unformated_text_in_text_unformatted1137);
3225                        contents=text_unformated_text();
3226                        _fsp--;
3227                        if (failed) return items;
3228                        if ( backtracking==0 ) {
3229                          items.add(new UnformattedTextNode(contents.toString())); 
3230                        }
3231    
3232                        }
3233                        break;
3234                    case 2 :
3235                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:268:5: ( forced_linebreak | e= escaped )+
3236                        {
3237                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:268:5: ( forced_linebreak | e= escaped )+
3238                        int cnt39=0;
3239                        loop39:
3240                        do {
3241                            int alt39=3;
3242                            int LA39_0 = input.LA(1);
3243    
3244                            if ( (LA39_0==FORCED_LINEBREAK) ) {
3245                                alt39=1;
3246                            }
3247                            else if ( (LA39_0==ESCAPE) ) {
3248                                alt39=2;
3249                            }
3250    
3251    
3252                            switch (alt39) {
3253                            case 1 :
3254                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:268:6: forced_linebreak
3255                                {
3256                                pushFollow(FOLLOW_forced_linebreak_in_text_unformatted1146);
3257                                forced_linebreak();
3258                                _fsp--;
3259                                if (failed) return items;
3260                                if ( backtracking==0 ) {
3261                                   items.add(new ForcedEndOfLineNode()); 
3262                                }
3263    
3264                                }
3265                                break;
3266                            case 2 :
3267                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:269:5: e= escaped
3268                                {
3269                                pushFollow(FOLLOW_escaped_in_text_unformatted1158);
3270                                e=escaped();
3271                                _fsp--;
3272                                if (failed) return items;
3273                                if ( backtracking==0 ) {
3274                                  items.add(e);
3275                                }
3276    
3277                                }
3278                                break;
3279    
3280                            default :
3281                                if ( cnt39 >= 1 ) break loop39;
3282                                if (backtracking>0) {failed=true; return items;}
3283                                    EarlyExitException eee =
3284                                        new EarlyExitException(39, input);
3285                                    throw eee;
3286                            }
3287                            cnt39++;
3288                        } while (true);
3289    
3290    
3291                        }
3292                        break;
3293    
3294                }
3295            }
3296            catch (RecognitionException re) {
3297                reportError(re);
3298                recover(input,re);
3299            }
3300            finally {
3301            }
3302            return items;
3303        }
3304        // $ANTLR end text_unformatted
3305    
3306    
3307        // $ANTLR start text_unformated_text
3308        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:272:1: text_unformated_text returns [StringBundler text = new StringBundler()] : (c=~ ( ITAL | STAR | LINK_OPEN | IMAGE_OPEN | NOWIKI_OPEN | EXTENSION | FORCED_LINEBREAK | ESCAPE | NEWLINE | EOF ) )+ ;
3309        public final StringBundler text_unformated_text() throws RecognitionException {
3310            StringBundler text =  new StringBundler();
3311    
3312            Token c=null;
3313    
3314            try {
3315                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:273:1: ( (c=~ ( ITAL | STAR | LINK_OPEN | IMAGE_OPEN | NOWIKI_OPEN | EXTENSION | FORCED_LINEBREAK | ESCAPE | NEWLINE | EOF ) )+ )
3316                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:274:2: (c=~ ( ITAL | STAR | LINK_OPEN | IMAGE_OPEN | NOWIKI_OPEN | EXTENSION | FORCED_LINEBREAK | ESCAPE | NEWLINE | EOF ) )+
3317                {
3318                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:274:2: (c=~ ( ITAL | STAR | LINK_OPEN | IMAGE_OPEN | NOWIKI_OPEN | EXTENSION | FORCED_LINEBREAK | ESCAPE | NEWLINE | EOF ) )+
3319                int cnt41=0;
3320                loop41:
3321                do {
3322                    int alt41=2;
3323                    int LA41_0 = input.LA(1);
3324    
3325                    if ( ((LA41_0>=FORCED_END_OF_LINE && LA41_0<=WIKI)||LA41_0==POUND||(LA41_0>=EQUAL && LA41_0<=PIPE)||(LA41_0>=NOWIKI_BLOCK_CLOSE && LA41_0<=79)) ) {
3326                        alt41=1;
3327                    }
3328    
3329    
3330                    switch (alt41) {
3331                    case 1 :
3332                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:274:3: c=~ ( ITAL | STAR | LINK_OPEN | IMAGE_OPEN | NOWIKI_OPEN | EXTENSION | FORCED_LINEBREAK | ESCAPE | NEWLINE | EOF )
3333                        {
3334                        c=(Token)input.LT(1);
3335                        if ( (input.LA(1)>=FORCED_END_OF_LINE && input.LA(1)<=WIKI)||input.LA(1)==POUND||(input.LA(1)>=EQUAL && input.LA(1)<=PIPE)||(input.LA(1)>=NOWIKI_BLOCK_CLOSE && input.LA(1)<=79) ) {
3336                            input.consume();
3337                            errorRecovery=false;failed=false;
3338                        }
3339                        else {
3340                            if (backtracking>0) {failed=true; return text;}
3341                            MismatchedSetException mse =
3342                                new MismatchedSetException(null,input);
3343                            recoverFromMismatchedSet(input,mse,FOLLOW_set_in_text_unformated_text1183);    throw mse;
3344                        }
3345    
3346                        if ( backtracking==0 ) {
3347                           text.append(c.getText());
3348                        }
3349    
3350                        }
3351                        break;
3352    
3353                    default :
3354                        if ( cnt41 >= 1 ) break loop41;
3355                        if (backtracking>0) {failed=true; return text;}
3356                            EarlyExitException eee =
3357                                new EarlyExitException(41, input);
3358                            throw eee;
3359                    }
3360                    cnt41++;
3361                } while (true);
3362    
3363    
3364                }
3365    
3366            }
3367            catch (RecognitionException re) {
3368                reportError(re);
3369                recover(input,re);
3370            }
3371            finally {
3372            }
3373            return text;
3374        }
3375        // $ANTLR end text_unformated_text
3376    
3377        protected static class heading_scope {
3378            CollectionNode items;
3379            int nestedLevel;
3380            String text;
3381        }
3382        protected Stack heading_stack = new Stack();
3383    
3384    
3385        // $ANTLR start heading
3386        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:288:1: heading returns [ASTNode header] : heading_markup heading_content ( heading_markup )? ( blanks )? paragraph_separator ;
3387        public final ASTNode heading() throws RecognitionException {
3388            heading_stack.push(new heading_scope());
3389            ASTNode header = null;
3390    
3391    
3392                            ((heading_scope)heading_stack.peek()).items = new CollectionNode();
3393                            ((heading_scope)heading_stack.peek()).text = new String();
3394                    
3395            try {
3396                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:298:2: ( heading_markup heading_content ( heading_markup )? ( blanks )? paragraph_separator )
3397                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:298:4: heading_markup heading_content ( heading_markup )? ( blanks )? paragraph_separator
3398                {
3399                pushFollow(FOLLOW_heading_markup_in_heading1285);
3400                heading_markup();
3401                _fsp--;
3402                if (failed) return header;
3403                if ( backtracking==0 ) {
3404                  ((heading_scope)heading_stack.peek()).nestedLevel++;
3405                }
3406                pushFollow(FOLLOW_heading_content_in_heading1290);
3407                heading_content();
3408                _fsp--;
3409                if (failed) return header;
3410                if ( backtracking==0 ) {
3411                   header = new HeadingNode(((heading_scope)heading_stack.peek()).items,((heading_scope)heading_stack.peek()).nestedLevel); 
3412                }
3413                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:298:134: ( heading_markup )?
3414                int alt42=2;
3415                int LA42_0 = input.LA(1);
3416    
3417                if ( (LA42_0==EQUAL) ) {
3418                    alt42=1;
3419                }
3420                switch (alt42) {
3421                    case 1 :
3422                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:298:136: heading_markup
3423                        {
3424                        pushFollow(FOLLOW_heading_markup_in_heading1297);
3425                        heading_markup();
3426                        _fsp--;
3427                        if (failed) return header;
3428    
3429                        }
3430                        break;
3431    
3432                }
3433    
3434                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:298:155: ( blanks )?
3435                int alt43=2;
3436                int LA43_0 = input.LA(1);
3437    
3438                if ( (LA43_0==BLANKS) ) {
3439                    alt43=1;
3440                }
3441                switch (alt43) {
3442                    case 1 :
3443                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:298:157: blanks
3444                        {
3445                        pushFollow(FOLLOW_blanks_in_heading1305);
3446                        blanks();
3447                        _fsp--;
3448                        if (failed) return header;
3449    
3450                        }
3451                        break;
3452    
3453                }
3454    
3455                pushFollow(FOLLOW_paragraph_separator_in_heading1312);
3456                paragraph_separator();
3457                _fsp--;
3458                if (failed) return header;
3459    
3460                }
3461    
3462            }
3463            catch (RecognitionException re) {
3464                reportError(re);
3465                recover(input,re);
3466            }
3467            finally {
3468                heading_stack.pop();
3469            }
3470            return header;
3471        }
3472        // $ANTLR end heading
3473    
3474    
3475        // $ANTLR start heading_content
3476        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:301:1: heading_content : ( heading_markup heading_content ( heading_markup )? | ht= heading_text );
3477        public final void heading_content() throws RecognitionException {
3478            CollectionNode ht = null;
3479    
3480    
3481            try {
3482                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:302:2: ( heading_markup heading_content ( heading_markup )? | ht= heading_text )
3483                int alt45=2;
3484                int LA45_0 = input.LA(1);
3485    
3486                if ( (LA45_0==EQUAL) ) {
3487                    alt45=1;
3488                }
3489                else if ( (LA45_0==EOF||(LA45_0>=FORCED_END_OF_LINE && LA45_0<=STAR)||(LA45_0>=PIPE && LA45_0<=FORCED_LINEBREAK)||(LA45_0>=NOWIKI_BLOCK_CLOSE && LA45_0<=79)) ) {
3490                    alt45=2;
3491                }
3492                else {
3493                    if (backtracking>0) {failed=true; return ;}
3494                    NoViableAltException nvae =
3495                        new NoViableAltException("301:1: heading_content : ( heading_markup heading_content ( heading_markup )? | ht= heading_text );", 45, 0, input);
3496    
3497                    throw nvae;
3498                }
3499                switch (alt45) {
3500                    case 1 :
3501                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:302:4: heading_markup heading_content ( heading_markup )?
3502                        {
3503                        pushFollow(FOLLOW_heading_markup_in_heading_content1322);
3504                        heading_markup();
3505                        _fsp--;
3506                        if (failed) return ;
3507                        if ( backtracking==0 ) {
3508                          ((heading_scope)heading_stack.peek()).nestedLevel++;
3509                        }
3510                        pushFollow(FOLLOW_heading_content_in_heading_content1327);
3511                        heading_content();
3512                        _fsp--;
3513                        if (failed) return ;
3514                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:302:64: ( heading_markup )?
3515                        int alt44=2;
3516                        int LA44_0 = input.LA(1);
3517    
3518                        if ( (LA44_0==EQUAL) ) {
3519                            alt44=1;
3520                        }
3521                        switch (alt44) {
3522                            case 1 :
3523                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:302:66: heading_markup
3524                                {
3525                                pushFollow(FOLLOW_heading_markup_in_heading_content1332);
3526                                heading_markup();
3527                                _fsp--;
3528                                if (failed) return ;
3529    
3530                                }
3531                                break;
3532    
3533                        }
3534    
3535    
3536                        }
3537                        break;
3538                    case 2 :
3539                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:303:4: ht= heading_text
3540                        {
3541                        pushFollow(FOLLOW_heading_text_in_heading_content1344);
3542                        ht=heading_text();
3543                        _fsp--;
3544                        if (failed) return ;
3545                        if ( backtracking==0 ) {
3546                          ((heading_scope)heading_stack.peek()).items = ht;
3547                        }
3548    
3549                        }
3550                        break;
3551    
3552                }
3553            }
3554            catch (RecognitionException re) {
3555                reportError(re);
3556                recover(input,re);
3557            }
3558            finally {
3559            }
3560            return ;
3561        }
3562        // $ANTLR end heading_content
3563    
3564    
3565        // $ANTLR start heading_text
3566        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:306:1: heading_text returns [CollectionNode items = null] : te= heading_cellcontent ;
3567        public final CollectionNode heading_text() throws RecognitionException {
3568            CollectionNode items =  null;
3569    
3570            CollectionNode te = null;
3571    
3572    
3573            try {
3574                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:307:2: (te= heading_cellcontent )
3575                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:307:4: te= heading_cellcontent
3576                {
3577                pushFollow(FOLLOW_heading_cellcontent_in_heading_text1365);
3578                te=heading_cellcontent();
3579                _fsp--;
3580                if (failed) return items;
3581                if ( backtracking==0 ) {
3582                  items = te;
3583                }
3584    
3585                }
3586    
3587            }
3588            catch (RecognitionException re) {
3589                reportError(re);
3590                recover(input,re);
3591            }
3592            finally {
3593            }
3594            return items;
3595        }
3596        // $ANTLR end heading_text
3597    
3598    
3599        // $ANTLR start heading_cellcontent
3600        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:310:1: heading_cellcontent returns [CollectionNode items = new CollectionNode()] : onestar (tcp= heading_cellcontentpart onestar )* ;
3601        public final CollectionNode heading_cellcontent() throws RecognitionException {
3602            CollectionNode items =  new CollectionNode();
3603    
3604            ASTNode tcp = null;
3605    
3606    
3607            try {
3608                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:311:2: ( onestar (tcp= heading_cellcontentpart onestar )* )
3609                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:311:4: onestar (tcp= heading_cellcontentpart onestar )*
3610                {
3611                pushFollow(FOLLOW_onestar_in_heading_cellcontent1382);
3612                onestar();
3613                _fsp--;
3614                if (failed) return items;
3615                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:311:13: (tcp= heading_cellcontentpart onestar )*
3616                loop46:
3617                do {
3618                    int alt46=2;
3619                    int LA46_0 = input.LA(1);
3620    
3621                    if ( ((LA46_0>=FORCED_END_OF_LINE && LA46_0<=WIKI)||(LA46_0>=POUND && LA46_0<=STAR)||(LA46_0>=PIPE && LA46_0<=FORCED_LINEBREAK)||(LA46_0>=NOWIKI_BLOCK_CLOSE && LA46_0<=79)) ) {
3622                        alt46=1;
3623                    }
3624    
3625    
3626                    switch (alt46) {
3627                    case 1 :
3628                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:311:15: tcp= heading_cellcontentpart onestar
3629                        {
3630                        pushFollow(FOLLOW_heading_cellcontentpart_in_heading_cellcontent1391);
3631                        tcp=heading_cellcontentpart();
3632                        _fsp--;
3633                        if (failed) return items;
3634                        if ( backtracking==0 ) {
3635    
3636    
3637                                                                            if (tcp != null) { // some AST Node could be NULL if bad CREOLE syntax is wrotten
3638                                                                                    items.add(tcp);
3639                                                                            }
3640    
3641                                                                            
3642                        }
3643                        pushFollow(FOLLOW_onestar_in_heading_cellcontent1402);
3644                        onestar();
3645                        _fsp--;
3646                        if (failed) return items;
3647    
3648                        }
3649                        break;
3650    
3651                    default :
3652                        break loop46;
3653                    }
3654                } while (true);
3655    
3656    
3657                }
3658    
3659            }
3660            catch (RecognitionException re) {
3661                reportError(re);
3662                recover(input,re);
3663            }
3664            finally {
3665            }
3666            return items;
3667        }
3668        // $ANTLR end heading_cellcontent
3669    
3670    
3671        // $ANTLR start heading_cellcontentpart
3672        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:320:1: heading_cellcontentpart returns [ASTNode node = null] : (tf= heading_formattedelement | tu= heading_unformattedelement );
3673        public final ASTNode heading_cellcontentpart() throws RecognitionException {
3674            ASTNode node =  null;
3675    
3676            ASTNode tf = null;
3677    
3678            ASTNode tu = null;
3679    
3680    
3681            try {
3682                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:321:2: (tf= heading_formattedelement | tu= heading_unformattedelement )
3683                int alt47=2;
3684                switch ( input.LA(1) ) {
3685                case ITAL:
3686                    {
3687                    alt47=1;
3688                    }
3689                    break;
3690                case STAR:
3691                    {
3692                    int LA47_2 = input.LA(2);
3693    
3694                    if ( (LA47_2==STAR) ) {
3695                        alt47=1;
3696                    }
3697                    else if ( (LA47_2==EOF||(LA47_2>=FORCED_END_OF_LINE && LA47_2<=POUND)||(LA47_2>=EQUAL && LA47_2<=FORCED_LINEBREAK)||(LA47_2>=NOWIKI_BLOCK_CLOSE && LA47_2<=79)) ) {
3698                        alt47=2;
3699                    }
3700                    else {
3701                        if (backtracking>0) {failed=true; return node;}
3702                        NoViableAltException nvae =
3703                            new NoViableAltException("320:1: heading_cellcontentpart returns [ASTNode node = null] : (tf= heading_formattedelement | tu= heading_unformattedelement );", 47, 2, input);
3704    
3705                        throw nvae;
3706                    }
3707                    }
3708                    break;
3709                case FORCED_END_OF_LINE:
3710                case HEADING_SECTION:
3711                case HORIZONTAL_SECTION:
3712                case LIST_ITEM:
3713                case LIST_ITEM_PART:
3714                case NOWIKI_SECTION:
3715                case SCAPE_NODE:
3716                case TEXT_NODE:
3717                case UNORDERED_LIST:
3718                case UNFORMATTED_TEXT:
3719                case WIKI:
3720                case POUND:
3721                case PIPE:
3722                case LINK_OPEN:
3723                case IMAGE_OPEN:
3724                case NOWIKI_OPEN:
3725                case EXTENSION:
3726                case FORCED_LINEBREAK:
3727                case NOWIKI_BLOCK_CLOSE:
3728                case NOWIKI_CLOSE:
3729                case LINK_CLOSE:
3730                case IMAGE_CLOSE:
3731                case BLANKS:
3732                case TABLE_OF_CONTENTS_TEXT:
3733                case DASH:
3734                case CR:
3735                case LF:
3736                case SPACE:
3737                case TABULATOR:
3738                case BRACE_CLOSE:
3739                case COLON_SLASH:
3740                case SLASH:
3741                case TABLE_OF_CONTENTS_OPEN_MARKUP:
3742                case TABLE_OF_CONTENTS_CLOSE_MARKUP:
3743                case INSIGNIFICANT_CHAR:
3744                case 44:
3745                case 45:
3746                case 46:
3747                case 47:
3748                case 48:
3749                case 49:
3750                case 50:
3751                case 51:
3752                case 52:
3753                case 53:
3754                case 54:
3755                case 55:
3756                case 56:
3757                case 57:
3758                case 58:
3759                case 59:
3760                case 60:
3761                case 61:
3762                case 62:
3763                case 63:
3764                case 64:
3765                case 65:
3766                case 66:
3767                case 67:
3768                case 68:
3769                case 69:
3770                case 70:
3771                case 71:
3772                case 72:
3773                case 73:
3774                case 74:
3775                case 75:
3776                case 76:
3777                case 77:
3778                case 78:
3779                case 79:
3780                    {
3781                    alt47=2;
3782                    }
3783                    break;
3784                default:
3785                    if (backtracking>0) {failed=true; return node;}
3786                    NoViableAltException nvae =
3787                        new NoViableAltException("320:1: heading_cellcontentpart returns [ASTNode node = null] : (tf= heading_formattedelement | tu= heading_unformattedelement );", 47, 0, input);
3788    
3789                    throw nvae;
3790                }
3791    
3792                switch (alt47) {
3793                    case 1 :
3794                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:321:4: tf= heading_formattedelement
3795                        {
3796                        pushFollow(FOLLOW_heading_formattedelement_in_heading_cellcontentpart1423);
3797                        tf=heading_formattedelement();
3798                        _fsp--;
3799                        if (failed) return node;
3800                        if ( backtracking==0 ) {
3801                          node =tf;
3802                        }
3803    
3804                        }
3805                        break;
3806                    case 2 :
3807                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:322:4: tu= heading_unformattedelement
3808                        {
3809                        pushFollow(FOLLOW_heading_unformattedelement_in_heading_cellcontentpart1434);
3810                        tu=heading_unformattedelement();
3811                        _fsp--;
3812                        if (failed) return node;
3813                        if ( backtracking==0 ) {
3814                          node =tu;
3815                        }
3816    
3817                        }
3818                        break;
3819    
3820                }
3821            }
3822            catch (RecognitionException re) {
3823                reportError(re);
3824                recover(input,re);
3825            }
3826            finally {
3827            }
3828            return node;
3829        }
3830        // $ANTLR end heading_cellcontentpart
3831    
3832    
3833        // $ANTLR start heading_formattedelement
3834        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:324:1: heading_formattedelement returns [ASTNode content = null] : ( ital_markup (tic= heading_italcontent )? ( ital_markup )? | bold_markup (tbc= heading_boldcontent )? ( bold_markup )? );
3835        public final ASTNode heading_formattedelement() throws RecognitionException {
3836            ASTNode content =  null;
3837    
3838            CollectionNode tic = null;
3839    
3840            CollectionNode tbc = null;
3841    
3842    
3843            try {
3844                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:325:2: ( ital_markup (tic= heading_italcontent )? ( ital_markup )? | bold_markup (tbc= heading_boldcontent )? ( bold_markup )? )
3845                int alt52=2;
3846                int LA52_0 = input.LA(1);
3847    
3848                if ( (LA52_0==ITAL) ) {
3849                    alt52=1;
3850                }
3851                else if ( (LA52_0==STAR) ) {
3852                    alt52=2;
3853                }
3854                else {
3855                    if (backtracking>0) {failed=true; return content;}
3856                    NoViableAltException nvae =
3857                        new NoViableAltException("324:1: heading_formattedelement returns [ASTNode content = null] : ( ital_markup (tic= heading_italcontent )? ( ital_markup )? | bold_markup (tbc= heading_boldcontent )? ( bold_markup )? );", 52, 0, input);
3858    
3859                    throw nvae;
3860                }
3861                switch (alt52) {
3862                    case 1 :
3863                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:325:4: ital_markup (tic= heading_italcontent )? ( ital_markup )?
3864                        {
3865                        pushFollow(FOLLOW_ital_markup_in_heading_formattedelement1450);
3866                        ital_markup();
3867                        _fsp--;
3868                        if (failed) return content;
3869                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:325:18: (tic= heading_italcontent )?
3870                        int alt48=2;
3871                        switch ( input.LA(1) ) {
3872                            case STAR:
3873                                {
3874                                alt48=1;
3875                                }
3876                                break;
3877                            case ITAL:
3878                                {
3879                                alt48=1;
3880                                }
3881                                break;
3882                            case LINK_OPEN:
3883                                {
3884                                alt48=1;
3885                                }
3886                                break;
3887                            case IMAGE_OPEN:
3888                                {
3889                                alt48=1;
3890                                }
3891                                break;
3892                            case NOWIKI_OPEN:
3893                                {
3894                                alt48=1;
3895                                }
3896                                break;
3897                            case EOF:
3898                                {
3899                                alt48=1;
3900                                }
3901                                break;
3902                            case BLANKS:
3903                                {
3904                                alt48=1;
3905                                }
3906                                break;
3907                            case FORCED_END_OF_LINE:
3908                            case HEADING_SECTION:
3909                            case HORIZONTAL_SECTION:
3910                            case LIST_ITEM:
3911                            case LIST_ITEM_PART:
3912                            case NOWIKI_SECTION:
3913                            case SCAPE_NODE:
3914                            case TEXT_NODE:
3915                            case UNORDERED_LIST:
3916                            case UNFORMATTED_TEXT:
3917                            case WIKI:
3918                            case POUND:
3919                            case PIPE:
3920                            case EXTENSION:
3921                            case FORCED_LINEBREAK:
3922                            case NOWIKI_BLOCK_CLOSE:
3923                            case NOWIKI_CLOSE:
3924                            case LINK_CLOSE:
3925                            case IMAGE_CLOSE:
3926                            case TABLE_OF_CONTENTS_TEXT:
3927                            case DASH:
3928                            case CR:
3929                            case LF:
3930                            case SPACE:
3931                            case TABULATOR:
3932                            case BRACE_CLOSE:
3933                            case COLON_SLASH:
3934                            case SLASH:
3935                            case TABLE_OF_CONTENTS_OPEN_MARKUP:
3936                            case TABLE_OF_CONTENTS_CLOSE_MARKUP:
3937                            case INSIGNIFICANT_CHAR:
3938                            case 44:
3939                            case 45:
3940                            case 46:
3941                            case 47:
3942                            case 48:
3943                            case 49:
3944                            case 50:
3945                            case 51:
3946                            case 52:
3947                            case 53:
3948                            case 54:
3949                            case 55:
3950                            case 56:
3951                            case 57:
3952                            case 58:
3953                            case 59:
3954                            case 60:
3955                            case 61:
3956                            case 62:
3957                            case 63:
3958                            case 64:
3959                            case 65:
3960                            case 66:
3961                            case 67:
3962                            case 68:
3963                            case 69:
3964                            case 70:
3965                            case 71:
3966                            case 72:
3967                            case 73:
3968                            case 74:
3969                            case 75:
3970                            case 76:
3971                            case 77:
3972                            case 78:
3973                            case 79:
3974                                {
3975                                alt48=1;
3976                                }
3977                                break;
3978                        }
3979    
3980                        switch (alt48) {
3981                            case 1 :
3982                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:325:20: tic= heading_italcontent
3983                                {
3984                                pushFollow(FOLLOW_heading_italcontent_in_heading_formattedelement1460);
3985                                tic=heading_italcontent();
3986                                _fsp--;
3987                                if (failed) return content;
3988                                if ( backtracking==0 ) {
3989                                   content = new ItalicTextNode(tic); 
3990                                }
3991    
3992                                }
3993                                break;
3994    
3995                        }
3996    
3997                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:325:96: ( ital_markup )?
3998                        int alt49=2;
3999                        int LA49_0 = input.LA(1);
4000    
4001                        if ( (LA49_0==ITAL) ) {
4002                            alt49=1;
4003                        }
4004                        switch (alt49) {
4005                            case 1 :
4006                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:325:98: ital_markup
4007                                {
4008                                pushFollow(FOLLOW_ital_markup_in_heading_formattedelement1469);
4009                                ital_markup();
4010                                _fsp--;
4011                                if (failed) return content;
4012    
4013                                }
4014                                break;
4015    
4016                        }
4017    
4018    
4019                        }
4020                        break;
4021                    case 2 :
4022                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:326:4: bold_markup (tbc= heading_boldcontent )? ( bold_markup )?
4023                        {
4024                        pushFollow(FOLLOW_bold_markup_in_heading_formattedelement1477);
4025                        bold_markup();
4026                        _fsp--;
4027                        if (failed) return content;
4028                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:326:16: (tbc= heading_boldcontent )?
4029                        int alt50=2;
4030                        switch ( input.LA(1) ) {
4031                            case STAR:
4032                                {
4033                                alt50=1;
4034                                }
4035                                break;
4036                            case ITAL:
4037                                {
4038                                alt50=1;
4039                                }
4040                                break;
4041                            case LINK_OPEN:
4042                                {
4043                                alt50=1;
4044                                }
4045                                break;
4046                            case IMAGE_OPEN:
4047                                {
4048                                alt50=1;
4049                                }
4050                                break;
4051                            case NOWIKI_OPEN:
4052                                {
4053                                alt50=1;
4054                                }
4055                                break;
4056                            case BLANKS:
4057                                {
4058                                alt50=1;
4059                                }
4060                                break;
4061                            case EOF:
4062                                {
4063                                alt50=1;
4064                                }
4065                                break;
4066                            case FORCED_END_OF_LINE:
4067                            case HEADING_SECTION:
4068                            case HORIZONTAL_SECTION:
4069                            case LIST_ITEM:
4070                            case LIST_ITEM_PART:
4071                            case NOWIKI_SECTION:
4072                            case SCAPE_NODE:
4073                            case TEXT_NODE:
4074                            case UNORDERED_LIST:
4075                            case UNFORMATTED_TEXT:
4076                            case WIKI:
4077                            case POUND:
4078                            case PIPE:
4079                            case EXTENSION:
4080                            case FORCED_LINEBREAK:
4081                            case NOWIKI_BLOCK_CLOSE:
4082                            case NOWIKI_CLOSE:
4083                            case LINK_CLOSE:
4084                            case IMAGE_CLOSE:
4085                            case TABLE_OF_CONTENTS_TEXT:
4086                            case DASH:
4087                            case CR:
4088                            case LF:
4089                            case SPACE:
4090                            case TABULATOR:
4091                            case BRACE_CLOSE:
4092                            case COLON_SLASH:
4093                            case SLASH:
4094                            case TABLE_OF_CONTENTS_OPEN_MARKUP:
4095                            case TABLE_OF_CONTENTS_CLOSE_MARKUP:
4096                            case INSIGNIFICANT_CHAR:
4097                            case 44:
4098                            case 45:
4099                            case 46:
4100                            case 47:
4101                            case 48:
4102                            case 49:
4103                            case 50:
4104                            case 51:
4105                            case 52:
4106                            case 53:
4107                            case 54:
4108                            case 55:
4109                            case 56:
4110                            case 57:
4111                            case 58:
4112                            case 59:
4113                            case 60:
4114                            case 61:
4115                            case 62:
4116                            case 63:
4117                            case 64:
4118                            case 65:
4119                            case 66:
4120                            case 67:
4121                            case 68:
4122                            case 69:
4123                            case 70:
4124                            case 71:
4125                            case 72:
4126                            case 73:
4127                            case 74:
4128                            case 75:
4129                            case 76:
4130                            case 77:
4131                            case 78:
4132                            case 79:
4133                                {
4134                                alt50=1;
4135                                }
4136                                break;
4137                        }
4138    
4139                        switch (alt50) {
4140                            case 1 :
4141                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:326:18: tbc= heading_boldcontent
4142                                {
4143                                pushFollow(FOLLOW_heading_boldcontent_in_heading_formattedelement1484);
4144                                tbc=heading_boldcontent();
4145                                _fsp--;
4146                                if (failed) return content;
4147                                if ( backtracking==0 ) {
4148                                  content = new BoldTextNode(tbc);
4149                                }
4150    
4151                                }
4152                                break;
4153    
4154                        }
4155    
4156                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:326:90: ( bold_markup )?
4157                        int alt51=2;
4158                        int LA51_0 = input.LA(1);
4159    
4160                        if ( (LA51_0==STAR) ) {
4161                            int LA51_1 = input.LA(2);
4162    
4163                            if ( (LA51_1==STAR) ) {
4164                                alt51=1;
4165                            }
4166                        }
4167                        switch (alt51) {
4168                            case 1 :
4169                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:326:92: bold_markup
4170                                {
4171                                pushFollow(FOLLOW_bold_markup_in_heading_formattedelement1494);
4172                                bold_markup();
4173                                _fsp--;
4174                                if (failed) return content;
4175    
4176                                }
4177                                break;
4178    
4179                        }
4180    
4181    
4182                        }
4183                        break;
4184    
4185                }
4186            }
4187            catch (RecognitionException re) {
4188                reportError(re);
4189                recover(input,re);
4190            }
4191            finally {
4192            }
4193            return content;
4194        }
4195        // $ANTLR end heading_formattedelement
4196    
4197    
4198        // $ANTLR start heading_boldcontent
4199        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:328:1: heading_boldcontent returns [CollectionNode items = new CollectionNode()] : ( onestar (tb= heading_boldcontentpart onestar )+ | EOF );
4200        public final CollectionNode heading_boldcontent() throws RecognitionException {
4201            CollectionNode items =  new CollectionNode();
4202    
4203            ASTNode tb = null;
4204    
4205    
4206            try {
4207                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:329:2: ( onestar (tb= heading_boldcontentpart onestar )+ | EOF )
4208                int alt54=2;
4209                int LA54_0 = input.LA(1);
4210    
4211                if ( ((LA54_0>=FORCED_END_OF_LINE && LA54_0<=WIKI)||(LA54_0>=POUND && LA54_0<=STAR)||(LA54_0>=PIPE && LA54_0<=FORCED_LINEBREAK)||(LA54_0>=NOWIKI_BLOCK_CLOSE && LA54_0<=79)) ) {
4212                    alt54=1;
4213                }
4214                else if ( (LA54_0==EOF) ) {
4215                    alt54=2;
4216                }
4217                else {
4218                    if (backtracking>0) {failed=true; return items;}
4219                    NoViableAltException nvae =
4220                        new NoViableAltException("328:1: heading_boldcontent returns [CollectionNode items = new CollectionNode()] : ( onestar (tb= heading_boldcontentpart onestar )+ | EOF );", 54, 0, input);
4221    
4222                    throw nvae;
4223                }
4224                switch (alt54) {
4225                    case 1 :
4226                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:329:4: onestar (tb= heading_boldcontentpart onestar )+
4227                        {
4228                        pushFollow(FOLLOW_onestar_in_heading_boldcontent1511);
4229                        onestar();
4230                        _fsp--;
4231                        if (failed) return items;
4232                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:329:13: (tb= heading_boldcontentpart onestar )+
4233                        int cnt53=0;
4234                        loop53:
4235                        do {
4236                            int alt53=2;
4237                            switch ( input.LA(1) ) {
4238                            case STAR:
4239                                {
4240                                alt53=1;
4241                                }
4242                                break;
4243                            case BLANKS:
4244                                {
4245                                alt53=1;
4246                                }
4247                                break;
4248                            case ITAL:
4249                                {
4250                                alt53=1;
4251                                }
4252                                break;
4253                            case FORCED_END_OF_LINE:
4254                            case HEADING_SECTION:
4255                            case HORIZONTAL_SECTION:
4256                            case LIST_ITEM:
4257                            case LIST_ITEM_PART:
4258                            case NOWIKI_SECTION:
4259                            case SCAPE_NODE:
4260                            case TEXT_NODE:
4261                            case UNORDERED_LIST:
4262                            case UNFORMATTED_TEXT:
4263                            case WIKI:
4264                            case POUND:
4265                            case PIPE:
4266                            case EXTENSION:
4267                            case FORCED_LINEBREAK:
4268                            case NOWIKI_BLOCK_CLOSE:
4269                            case NOWIKI_CLOSE:
4270                            case LINK_CLOSE:
4271                            case IMAGE_CLOSE:
4272                            case TABLE_OF_CONTENTS_TEXT:
4273                            case DASH:
4274                            case CR:
4275                            case LF:
4276                            case SPACE:
4277                            case TABULATOR:
4278                            case BRACE_CLOSE:
4279                            case COLON_SLASH:
4280                            case SLASH:
4281                            case TABLE_OF_CONTENTS_OPEN_MARKUP:
4282                            case TABLE_OF_CONTENTS_CLOSE_MARKUP:
4283                            case INSIGNIFICANT_CHAR:
4284                            case 44:
4285                            case 45:
4286                            case 46:
4287                            case 47:
4288                            case 48:
4289                            case 49:
4290                            case 50:
4291                            case 51:
4292                            case 52:
4293                            case 53:
4294                            case 54:
4295                            case 55:
4296                            case 56:
4297                            case 57:
4298                            case 58:
4299                            case 59:
4300                            case 60:
4301                            case 61:
4302                            case 62:
4303                            case 63:
4304                            case 64:
4305                            case 65:
4306                            case 66:
4307                            case 67:
4308                            case 68:
4309                            case 69:
4310                            case 70:
4311                            case 71:
4312                            case 72:
4313                            case 73:
4314                            case 74:
4315                            case 75:
4316                            case 76:
4317                            case 77:
4318                            case 78:
4319                            case 79:
4320                                {
4321                                alt53=1;
4322                                }
4323                                break;
4324                            case LINK_OPEN:
4325                                {
4326                                alt53=1;
4327                                }
4328                                break;
4329                            case IMAGE_OPEN:
4330                                {
4331                                alt53=1;
4332                                }
4333                                break;
4334                            case NOWIKI_OPEN:
4335                                {
4336                                alt53=1;
4337                                }
4338                                break;
4339    
4340                            }
4341    
4342                            switch (alt53) {
4343                            case 1 :
4344                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:329:15: tb= heading_boldcontentpart onestar
4345                                {
4346                                pushFollow(FOLLOW_heading_boldcontentpart_in_heading_boldcontent1520);
4347                                tb=heading_boldcontentpart();
4348                                _fsp--;
4349                                if (failed) return items;
4350                                if ( backtracking==0 ) {
4351                                   items.add(tb); 
4352                                }
4353                                pushFollow(FOLLOW_onestar_in_heading_boldcontent1525);
4354                                onestar();
4355                                _fsp--;
4356                                if (failed) return items;
4357    
4358                                }
4359                                break;
4360    
4361                            default :
4362                                if ( cnt53 >= 1 ) break loop53;
4363                                if (backtracking>0) {failed=true; return items;}
4364                                    EarlyExitException eee =
4365                                        new EarlyExitException(53, input);
4366                                    throw eee;
4367                            }
4368                            cnt53++;
4369                        } while (true);
4370    
4371    
4372                        }
4373                        break;
4374                    case 2 :
4375                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:330:4: EOF
4376                        {
4377                        match(input,EOF,FOLLOW_EOF_in_heading_boldcontent1533); if (failed) return items;
4378    
4379                        }
4380                        break;
4381    
4382                }
4383            }
4384            catch (RecognitionException re) {
4385                reportError(re);
4386                recover(input,re);
4387            }
4388            finally {
4389            }
4390            return items;
4391        }
4392        // $ANTLR end heading_boldcontent
4393    
4394    
4395        // $ANTLR start heading_italcontent
4396        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:332:1: heading_italcontent returns [CollectionNode items = new CollectionNode()] : ( onestar (ti= heading_italcontentpart onestar )+ | EOF );
4397        public final CollectionNode heading_italcontent() throws RecognitionException {
4398            CollectionNode items =  new CollectionNode();
4399    
4400            ASTNode ti = null;
4401    
4402    
4403            try {
4404                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:333:2: ( onestar (ti= heading_italcontentpart onestar )+ | EOF )
4405                int alt56=2;
4406                int LA56_0 = input.LA(1);
4407    
4408                if ( ((LA56_0>=FORCED_END_OF_LINE && LA56_0<=WIKI)||(LA56_0>=POUND && LA56_0<=STAR)||(LA56_0>=PIPE && LA56_0<=FORCED_LINEBREAK)||(LA56_0>=NOWIKI_BLOCK_CLOSE && LA56_0<=79)) ) {
4409                    alt56=1;
4410                }
4411                else if ( (LA56_0==EOF) ) {
4412                    alt56=2;
4413                }
4414                else {
4415                    if (backtracking>0) {failed=true; return items;}
4416                    NoViableAltException nvae =
4417                        new NoViableAltException("332:1: heading_italcontent returns [CollectionNode items = new CollectionNode()] : ( onestar (ti= heading_italcontentpart onestar )+ | EOF );", 56, 0, input);
4418    
4419                    throw nvae;
4420                }
4421                switch (alt56) {
4422                    case 1 :
4423                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:333:4: onestar (ti= heading_italcontentpart onestar )+
4424                        {
4425                        pushFollow(FOLLOW_onestar_in_heading_italcontent1547);
4426                        onestar();
4427                        _fsp--;
4428                        if (failed) return items;
4429                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:333:13: (ti= heading_italcontentpart onestar )+
4430                        int cnt55=0;
4431                        loop55:
4432                        do {
4433                            int alt55=2;
4434                            switch ( input.LA(1) ) {
4435                            case ITAL:
4436                                {
4437                                alt55=1;
4438                                }
4439                                break;
4440                            case STAR:
4441                                {
4442                                alt55=1;
4443                                }
4444                                break;
4445                            case BLANKS:
4446                                {
4447                                alt55=1;
4448                                }
4449                                break;
4450                            case FORCED_END_OF_LINE:
4451                            case HEADING_SECTION:
4452                            case HORIZONTAL_SECTION:
4453                            case LIST_ITEM:
4454                            case LIST_ITEM_PART:
4455                            case NOWIKI_SECTION:
4456                            case SCAPE_NODE:
4457                            case TEXT_NODE:
4458                            case UNORDERED_LIST:
4459                            case UNFORMATTED_TEXT:
4460                            case WIKI:
4461                            case POUND:
4462                            case PIPE:
4463                            case EXTENSION:
4464                            case FORCED_LINEBREAK:
4465                            case NOWIKI_BLOCK_CLOSE:
4466                            case NOWIKI_CLOSE:
4467                            case LINK_CLOSE:
4468                            case IMAGE_CLOSE:
4469                            case TABLE_OF_CONTENTS_TEXT:
4470                            case DASH:
4471                            case CR:
4472                            case LF:
4473                            case SPACE:
4474                            case TABULATOR:
4475                            case BRACE_CLOSE:
4476                            case COLON_SLASH:
4477                            case SLASH:
4478                            case TABLE_OF_CONTENTS_OPEN_MARKUP:
4479                            case TABLE_OF_CONTENTS_CLOSE_MARKUP:
4480                            case INSIGNIFICANT_CHAR:
4481                            case 44:
4482                            case 45:
4483                            case 46:
4484                            case 47:
4485                            case 48:
4486                            case 49:
4487                            case 50:
4488                            case 51:
4489                            case 52:
4490                            case 53:
4491                            case 54:
4492                            case 55:
4493                            case 56:
4494                            case 57:
4495                            case 58:
4496                            case 59:
4497                            case 60:
4498                            case 61:
4499                            case 62:
4500                            case 63:
4501                            case 64:
4502                            case 65:
4503                            case 66:
4504                            case 67:
4505                            case 68:
4506                            case 69:
4507                            case 70:
4508                            case 71:
4509                            case 72:
4510                            case 73:
4511                            case 74:
4512                            case 75:
4513                            case 76:
4514                            case 77:
4515                            case 78:
4516                            case 79:
4517                                {
4518                                alt55=1;
4519                                }
4520                                break;
4521                            case LINK_OPEN:
4522                                {
4523                                alt55=1;
4524                                }
4525                                break;
4526                            case IMAGE_OPEN:
4527                                {
4528                                alt55=1;
4529                                }
4530                                break;
4531                            case NOWIKI_OPEN:
4532                                {
4533                                alt55=1;
4534                                }
4535                                break;
4536    
4537                            }
4538    
4539                            switch (alt55) {
4540                            case 1 :
4541                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:333:15: ti= heading_italcontentpart onestar
4542                                {
4543                                pushFollow(FOLLOW_heading_italcontentpart_in_heading_italcontent1556);
4544                                ti=heading_italcontentpart();
4545                                _fsp--;
4546                                if (failed) return items;
4547                                if ( backtracking==0 ) {
4548                                   items.add(ti); 
4549                                }
4550                                pushFollow(FOLLOW_onestar_in_heading_italcontent1561);
4551                                onestar();
4552                                _fsp--;
4553                                if (failed) return items;
4554    
4555                                }
4556                                break;
4557    
4558                            default :
4559                                if ( cnt55 >= 1 ) break loop55;
4560                                if (backtracking>0) {failed=true; return items;}
4561                                    EarlyExitException eee =
4562                                        new EarlyExitException(55, input);
4563                                    throw eee;
4564                            }
4565                            cnt55++;
4566                        } while (true);
4567    
4568    
4569                        }
4570                        break;
4571                    case 2 :
4572                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:334:4: EOF
4573                        {
4574                        match(input,EOF,FOLLOW_EOF_in_heading_italcontent1569); if (failed) return items;
4575    
4576                        }
4577                        break;
4578    
4579                }
4580            }
4581            catch (RecognitionException re) {
4582                reportError(re);
4583                recover(input,re);
4584            }
4585            finally {
4586            }
4587            return items;
4588        }
4589        // $ANTLR end heading_italcontent
4590    
4591    
4592        // $ANTLR start heading_boldcontentpart
4593        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:336:1: heading_boldcontentpart returns [ASTNode node = null] : (tf= heading_formattedcontent | ital_markup tb= heading_bolditalcontent ( ital_markup )? );
4594        public final ASTNode heading_boldcontentpart() throws RecognitionException {
4595            ASTNode node =  null;
4596    
4597            CollectionNode tf = null;
4598    
4599            CollectionNode tb = null;
4600    
4601    
4602            try {
4603                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:337:2: (tf= heading_formattedcontent | ital_markup tb= heading_bolditalcontent ( ital_markup )? )
4604                int alt58=2;
4605                int LA58_0 = input.LA(1);
4606    
4607                if ( ((LA58_0>=FORCED_END_OF_LINE && LA58_0<=WIKI)||(LA58_0>=POUND && LA58_0<=STAR)||(LA58_0>=PIPE && LA58_0<=FORCED_LINEBREAK)||(LA58_0>=NOWIKI_BLOCK_CLOSE && LA58_0<=79)) ) {
4608                    alt58=1;
4609                }
4610                else {
4611                    if (backtracking>0) {failed=true; return node;}
4612                    NoViableAltException nvae =
4613                        new NoViableAltException("336:1: heading_boldcontentpart returns [ASTNode node = null] : (tf= heading_formattedcontent | ital_markup tb= heading_bolditalcontent ( ital_markup )? );", 58, 0, input);
4614    
4615                    throw nvae;
4616                }
4617                switch (alt58) {
4618                    case 1 :
4619                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:337:4: tf= heading_formattedcontent
4620                        {
4621                        pushFollow(FOLLOW_heading_formattedcontent_in_heading_boldcontentpart1587);
4622                        tf=heading_formattedcontent();
4623                        _fsp--;
4624                        if (failed) return node;
4625                        if ( backtracking==0 ) {
4626                          node = tf; 
4627                        }
4628    
4629                        }
4630                        break;
4631                    case 2 :
4632                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:338:4: ital_markup tb= heading_bolditalcontent ( ital_markup )?
4633                        {
4634                        pushFollow(FOLLOW_ital_markup_in_heading_boldcontentpart1594);
4635                        ital_markup();
4636                        _fsp--;
4637                        if (failed) return node;
4638                        pushFollow(FOLLOW_heading_bolditalcontent_in_heading_boldcontentpart1601);
4639                        tb=heading_bolditalcontent();
4640                        _fsp--;
4641                        if (failed) return node;
4642                        if ( backtracking==0 ) {
4643                           node = new ItalicTextNode(tb);  
4644                        }
4645                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:338:94: ( ital_markup )?
4646                        int alt57=2;
4647                        int LA57_0 = input.LA(1);
4648    
4649                        if ( (LA57_0==ITAL) ) {
4650                            alt57=1;
4651                        }
4652                        switch (alt57) {
4653                            case 1 :
4654                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:338:96: ital_markup
4655                                {
4656                                pushFollow(FOLLOW_ital_markup_in_heading_boldcontentpart1608);
4657                                ital_markup();
4658                                _fsp--;
4659                                if (failed) return node;
4660    
4661                                }
4662                                break;
4663    
4664                        }
4665    
4666    
4667                        }
4668                        break;
4669    
4670                }
4671            }
4672            catch (RecognitionException re) {
4673                reportError(re);
4674                recover(input,re);
4675            }
4676            finally {
4677            }
4678            return node;
4679        }
4680        // $ANTLR end heading_boldcontentpart
4681    
4682    
4683        // $ANTLR start heading_italcontentpart
4684        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:340:1: heading_italcontentpart returns [ASTNode node = null] : ( bold_markup tb= heading_bolditalcontent ( bold_markup )? | tf= heading_formattedcontent );
4685        public final ASTNode heading_italcontentpart() throws RecognitionException {
4686            ASTNode node =  null;
4687    
4688            CollectionNode tb = null;
4689    
4690            CollectionNode tf = null;
4691    
4692    
4693            try {
4694                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:341:2: ( bold_markup tb= heading_bolditalcontent ( bold_markup )? | tf= heading_formattedcontent )
4695                int alt60=2;
4696                int LA60_0 = input.LA(1);
4697    
4698                if ( (LA60_0==STAR) ) {
4699                    int LA60_1 = input.LA(2);
4700    
4701                    if ( (LA60_1==STAR) ) {
4702                        alt60=1;
4703                    }
4704                    else if ( (LA60_1==EOF||(LA60_1>=FORCED_END_OF_LINE && LA60_1<=POUND)||(LA60_1>=EQUAL && LA60_1<=FORCED_LINEBREAK)||(LA60_1>=NOWIKI_BLOCK_CLOSE && LA60_1<=79)) ) {
4705                        alt60=2;
4706                    }
4707                    else {
4708                        if (backtracking>0) {failed=true; return node;}
4709                        NoViableAltException nvae =
4710                            new NoViableAltException("340:1: heading_italcontentpart returns [ASTNode node = null] : ( bold_markup tb= heading_bolditalcontent ( bold_markup )? | tf= heading_formattedcontent );", 60, 1, input);
4711    
4712                        throw nvae;
4713                    }
4714                }
4715                else if ( ((LA60_0>=FORCED_END_OF_LINE && LA60_0<=WIKI)||LA60_0==POUND||(LA60_0>=PIPE && LA60_0<=FORCED_LINEBREAK)||(LA60_0>=NOWIKI_BLOCK_CLOSE && LA60_0<=79)) ) {
4716                    alt60=2;
4717                }
4718                else {
4719                    if (backtracking>0) {failed=true; return node;}
4720                    NoViableAltException nvae =
4721                        new NoViableAltException("340:1: heading_italcontentpart returns [ASTNode node = null] : ( bold_markup tb= heading_bolditalcontent ( bold_markup )? | tf= heading_formattedcontent );", 60, 0, input);
4722    
4723                    throw nvae;
4724                }
4725                switch (alt60) {
4726                    case 1 :
4727                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:341:4: bold_markup tb= heading_bolditalcontent ( bold_markup )?
4728                        {
4729                        pushFollow(FOLLOW_bold_markup_in_heading_italcontentpart1625);
4730                        bold_markup();
4731                        _fsp--;
4732                        if (failed) return node;
4733                        pushFollow(FOLLOW_heading_bolditalcontent_in_heading_italcontentpart1632);
4734                        tb=heading_bolditalcontent();
4735                        _fsp--;
4736                        if (failed) return node;
4737                        if ( backtracking==0 ) {
4738                          node = new BoldTextNode(tb); 
4739                        }
4740                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:341:90: ( bold_markup )?
4741                        int alt59=2;
4742                        int LA59_0 = input.LA(1);
4743    
4744                        if ( (LA59_0==STAR) ) {
4745                            int LA59_1 = input.LA(2);
4746    
4747                            if ( (LA59_1==STAR) ) {
4748                                alt59=1;
4749                            }
4750                        }
4751                        switch (alt59) {
4752                            case 1 :
4753                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:341:92: bold_markup
4754                                {
4755                                pushFollow(FOLLOW_bold_markup_in_heading_italcontentpart1639);
4756                                bold_markup();
4757                                _fsp--;
4758                                if (failed) return node;
4759    
4760                                }
4761                                break;
4762    
4763                        }
4764    
4765    
4766                        }
4767                        break;
4768                    case 2 :
4769                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:342:4: tf= heading_formattedcontent
4770                        {
4771                        pushFollow(FOLLOW_heading_formattedcontent_in_heading_italcontentpart1651);
4772                        tf=heading_formattedcontent();
4773                        _fsp--;
4774                        if (failed) return node;
4775                        if ( backtracking==0 ) {
4776                           node = tf; 
4777                        }
4778    
4779                        }
4780                        break;
4781    
4782                }
4783            }
4784            catch (RecognitionException re) {
4785                reportError(re);
4786                recover(input,re);
4787            }
4788            finally {
4789            }
4790            return node;
4791        }
4792        // $ANTLR end heading_italcontentpart
4793    
4794    
4795        // $ANTLR start heading_bolditalcontent
4796        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:344:1: heading_bolditalcontent returns [CollectionNode elements = null] : ( onestar (tfc= heading_formattedcontent onestar )? | EOF );
4797        public final CollectionNode heading_bolditalcontent() throws RecognitionException {
4798            CollectionNode elements =  null;
4799    
4800            CollectionNode tfc = null;
4801    
4802    
4803            try {
4804                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:345:2: ( onestar (tfc= heading_formattedcontent onestar )? | EOF )
4805                int alt62=2;
4806                int LA62_0 = input.LA(1);
4807    
4808                if ( ((LA62_0>=FORCED_END_OF_LINE && LA62_0<=FORCED_LINEBREAK)||(LA62_0>=NOWIKI_BLOCK_CLOSE && LA62_0<=79)) ) {
4809                    alt62=1;
4810                }
4811                else if ( (LA62_0==EOF) ) {
4812                    alt62=1;
4813                }
4814                else {
4815                    if (backtracking>0) {failed=true; return elements;}
4816                    NoViableAltException nvae =
4817                        new NoViableAltException("344:1: heading_bolditalcontent returns [CollectionNode elements = null] : ( onestar (tfc= heading_formattedcontent onestar )? | EOF );", 62, 0, input);
4818    
4819                    throw nvae;
4820                }
4821                switch (alt62) {
4822                    case 1 :
4823                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:345:4: onestar (tfc= heading_formattedcontent onestar )?
4824                        {
4825                        pushFollow(FOLLOW_onestar_in_heading_bolditalcontent1667);
4826                        onestar();
4827                        _fsp--;
4828                        if (failed) return elements;
4829                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:345:13: (tfc= heading_formattedcontent onestar )?
4830                        int alt61=2;
4831                        switch ( input.LA(1) ) {
4832                            case ITAL:
4833                                {
4834                                alt61=1;
4835                                }
4836                                break;
4837                            case LINK_OPEN:
4838                                {
4839                                alt61=1;
4840                                }
4841                                break;
4842                            case IMAGE_OPEN:
4843                                {
4844                                alt61=1;
4845                                }
4846                                break;
4847                            case NOWIKI_OPEN:
4848                                {
4849                                alt61=1;
4850                                }
4851                                break;
4852                            case STAR:
4853                                {
4854                                alt61=1;
4855                                }
4856                                break;
4857                            case BLANKS:
4858                                {
4859                                alt61=1;
4860                                }
4861                                break;
4862                            case FORCED_END_OF_LINE:
4863                            case HEADING_SECTION:
4864                            case HORIZONTAL_SECTION:
4865                            case LIST_ITEM:
4866                            case LIST_ITEM_PART:
4867                            case NOWIKI_SECTION:
4868                            case SCAPE_NODE:
4869                            case TEXT_NODE:
4870                            case UNORDERED_LIST:
4871                            case UNFORMATTED_TEXT:
4872                            case WIKI:
4873                            case POUND:
4874                            case PIPE:
4875                            case EXTENSION:
4876                            case FORCED_LINEBREAK:
4877                            case NOWIKI_BLOCK_CLOSE:
4878                            case NOWIKI_CLOSE:
4879                            case LINK_CLOSE:
4880                            case IMAGE_CLOSE:
4881                            case TABLE_OF_CONTENTS_TEXT:
4882                            case DASH:
4883                            case CR:
4884                            case LF:
4885                            case SPACE:
4886                            case TABULATOR:
4887                            case BRACE_CLOSE:
4888                            case COLON_SLASH:
4889                            case SLASH:
4890                            case TABLE_OF_CONTENTS_OPEN_MARKUP:
4891                            case TABLE_OF_CONTENTS_CLOSE_MARKUP:
4892                            case INSIGNIFICANT_CHAR:
4893                            case 44:
4894                            case 45:
4895                            case 46:
4896                            case 47:
4897                            case 48:
4898                            case 49:
4899                            case 50:
4900                            case 51:
4901                            case 52:
4902                            case 53:
4903                            case 54:
4904                            case 55:
4905                            case 56:
4906                            case 57:
4907                            case 58:
4908                            case 59:
4909                            case 60:
4910                            case 61:
4911                            case 62:
4912                            case 63:
4913                            case 64:
4914                            case 65:
4915                            case 66:
4916                            case 67:
4917                            case 68:
4918                            case 69:
4919                            case 70:
4920                            case 71:
4921                            case 72:
4922                            case 73:
4923                            case 74:
4924                            case 75:
4925                            case 76:
4926                            case 77:
4927                            case 78:
4928                            case 79:
4929                                {
4930                                alt61=1;
4931                                }
4932                                break;
4933                        }
4934    
4935                        switch (alt61) {
4936                            case 1 :
4937                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:345:15: tfc= heading_formattedcontent onestar
4938                                {
4939                                pushFollow(FOLLOW_heading_formattedcontent_in_heading_bolditalcontent1676);
4940                                tfc=heading_formattedcontent();
4941                                _fsp--;
4942                                if (failed) return elements;
4943                                if ( backtracking==0 ) {
4944                                   elements = tfc; 
4945                                }
4946                                pushFollow(FOLLOW_onestar_in_heading_bolditalcontent1681);
4947                                onestar();
4948                                _fsp--;
4949                                if (failed) return elements;
4950    
4951                                }
4952                                break;
4953    
4954                        }
4955    
4956    
4957                        }
4958                        break;
4959                    case 2 :
4960                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:346:4: EOF
4961                        {
4962                        match(input,EOF,FOLLOW_EOF_in_heading_bolditalcontent1689); if (failed) return elements;
4963    
4964                        }
4965                        break;
4966    
4967                }
4968            }
4969            catch (RecognitionException re) {
4970                reportError(re);
4971                recover(input,re);
4972            }
4973            finally {
4974            }
4975            return elements;
4976        }
4977        // $ANTLR end heading_bolditalcontent
4978    
4979    
4980        // $ANTLR start heading_formattedcontent
4981        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:348:1: heading_formattedcontent returns [CollectionNode elements = new CollectionNode()] : (tu= heading_unformattedelement )+ ;
4982        public final CollectionNode heading_formattedcontent() throws RecognitionException {
4983            CollectionNode elements =  new CollectionNode();
4984    
4985            ASTNode tu = null;
4986    
4987    
4988            try {
4989                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:349:2: ( (tu= heading_unformattedelement )+ )
4990                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:349:4: (tu= heading_unformattedelement )+
4991                {
4992                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:349:4: (tu= heading_unformattedelement )+
4993                int cnt63=0;
4994                loop63:
4995                do {
4996                    int alt63=2;
4997                    switch ( input.LA(1) ) {
4998                    case STAR:
4999                        {
5000                        alt63=1;
5001                        }
5002                        break;
5003                    case BLANKS:
5004                        {
5005                        alt63=1;
5006                        }
5007                        break;
5008                    case ITAL:
5009                        {
5010                        alt63=1;
5011                        }
5012                        break;
5013                    case FORCED_END_OF_LINE:
5014                    case HEADING_SECTION:
5015                    case HORIZONTAL_SECTION:
5016                    case LIST_ITEM:
5017                    case LIST_ITEM_PART:
5018                    case NOWIKI_SECTION:
5019                    case SCAPE_NODE:
5020                    case TEXT_NODE:
5021                    case UNORDERED_LIST:
5022                    case UNFORMATTED_TEXT:
5023                    case WIKI:
5024                    case POUND:
5025                    case PIPE:
5026                    case EXTENSION:
5027                    case FORCED_LINEBREAK:
5028                    case NOWIKI_BLOCK_CLOSE:
5029                    case NOWIKI_CLOSE:
5030                    case LINK_CLOSE:
5031                    case IMAGE_CLOSE:
5032                    case TABLE_OF_CONTENTS_TEXT:
5033                    case DASH:
5034                    case CR:
5035                    case LF:
5036                    case SPACE:
5037                    case TABULATOR:
5038                    case BRACE_CLOSE:
5039                    case COLON_SLASH:
5040                    case SLASH:
5041                    case TABLE_OF_CONTENTS_OPEN_MARKUP:
5042                    case TABLE_OF_CONTENTS_CLOSE_MARKUP:
5043                    case INSIGNIFICANT_CHAR:
5044                    case 44:
5045                    case 45:
5046                    case 46:
5047                    case 47:
5048                    case 48:
5049                    case 49:
5050                    case 50:
5051                    case 51:
5052                    case 52:
5053                    case 53:
5054                    case 54:
5055                    case 55:
5056                    case 56:
5057                    case 57:
5058                    case 58:
5059                    case 59:
5060                    case 60:
5061                    case 61:
5062                    case 62:
5063                    case 63:
5064                    case 64:
5065                    case 65:
5066                    case 66:
5067                    case 67:
5068                    case 68:
5069                    case 69:
5070                    case 70:
5071                    case 71:
5072                    case 72:
5073                    case 73:
5074                    case 74:
5075                    case 75:
5076                    case 76:
5077                    case 77:
5078                    case 78:
5079                    case 79:
5080                        {
5081                        alt63=1;
5082                        }
5083                        break;
5084                    case LINK_OPEN:
5085                        {
5086                        alt63=1;
5087                        }
5088                        break;
5089                    case IMAGE_OPEN:
5090                        {
5091                        alt63=1;
5092                        }
5093                        break;
5094                    case NOWIKI_OPEN:
5095                        {
5096                        alt63=1;
5097                        }
5098                        break;
5099    
5100                    }
5101    
5102                    switch (alt63) {
5103                    case 1 :
5104                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:349:6: tu= heading_unformattedelement
5105                        {
5106                        pushFollow(FOLLOW_heading_unformattedelement_in_heading_formattedcontent1709);
5107                        tu=heading_unformattedelement();
5108                        _fsp--;
5109                        if (failed) return elements;
5110                        if ( backtracking==0 ) {
5111                           elements.add(tu); 
5112                        }
5113    
5114                        }
5115                        break;
5116    
5117                    default :
5118                        if ( cnt63 >= 1 ) break loop63;
5119                        if (backtracking>0) {failed=true; return elements;}
5120                            EarlyExitException eee =
5121                                new EarlyExitException(63, input);
5122                            throw eee;
5123                    }
5124                    cnt63++;
5125                } while (true);
5126    
5127    
5128                }
5129    
5130            }
5131            catch (RecognitionException re) {
5132                reportError(re);
5133                recover(input,re);
5134            }
5135            finally {
5136            }
5137            return elements;
5138        }
5139        // $ANTLR end heading_formattedcontent
5140    
5141    
5142        // $ANTLR start heading_unformattedelement
5143        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:351:1: heading_unformattedelement returns [ASTNode content = null] : (tu= heading_unformatted_text | ti= heading_inlineelement );
5144        public final ASTNode heading_unformattedelement() throws RecognitionException {
5145            ASTNode content =  null;
5146    
5147            StringBundler tu = null;
5148    
5149            ASTNode ti = null;
5150    
5151    
5152            try {
5153                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:352:2: (tu= heading_unformatted_text | ti= heading_inlineelement )
5154                int alt64=2;
5155                int LA64_0 = input.LA(1);
5156    
5157                if ( ((LA64_0>=FORCED_END_OF_LINE && LA64_0<=WIKI)||(LA64_0>=POUND && LA64_0<=STAR)||(LA64_0>=PIPE && LA64_0<=ITAL)||(LA64_0>=EXTENSION && LA64_0<=FORCED_LINEBREAK)||(LA64_0>=NOWIKI_BLOCK_CLOSE && LA64_0<=79)) ) {
5158                    alt64=1;
5159                }
5160                else if ( ((LA64_0>=LINK_OPEN && LA64_0<=NOWIKI_OPEN)) ) {
5161                    alt64=2;
5162                }
5163                else {
5164                    if (backtracking>0) {failed=true; return content;}
5165                    NoViableAltException nvae =
5166                        new NoViableAltException("351:1: heading_unformattedelement returns [ASTNode content = null] : (tu= heading_unformatted_text | ti= heading_inlineelement );", 64, 0, input);
5167    
5168                    throw nvae;
5169                }
5170                switch (alt64) {
5171                    case 1 :
5172                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:352:4: tu= heading_unformatted_text
5173                        {
5174                        pushFollow(FOLLOW_heading_unformatted_text_in_heading_unformattedelement1732);
5175                        tu=heading_unformatted_text();
5176                        _fsp--;
5177                        if (failed) return content;
5178                        if ( backtracking==0 ) {
5179                          content = new UnformattedTextNode(tu.toString());
5180                        }
5181    
5182                        }
5183                        break;
5184                    case 2 :
5185                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:353:4: ti= heading_inlineelement
5186                        {
5187                        pushFollow(FOLLOW_heading_inlineelement_in_heading_unformattedelement1744);
5188                        ti=heading_inlineelement();
5189                        _fsp--;
5190                        if (failed) return content;
5191                        if ( backtracking==0 ) {
5192                          content = ti;
5193                        }
5194    
5195                        }
5196                        break;
5197    
5198                }
5199            }
5200            catch (RecognitionException re) {
5201                reportError(re);
5202                recover(input,re);
5203            }
5204            finally {
5205            }
5206            return content;
5207        }
5208        // $ANTLR end heading_unformattedelement
5209    
5210    
5211        // $ANTLR start heading_inlineelement
5212        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:355:1: heading_inlineelement returns [ASTNode element = null] : (l= link | i= image | nwi= nowiki_inline );
5213        public final ASTNode heading_inlineelement() throws RecognitionException {
5214            ASTNode element =  null;
5215    
5216            LinkNode l = null;
5217    
5218            ImageNode i = null;
5219    
5220            NoWikiSectionNode nwi = null;
5221    
5222    
5223            try {
5224                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:356:2: (l= link | i= image | nwi= nowiki_inline )
5225                int alt65=3;
5226                switch ( input.LA(1) ) {
5227                case LINK_OPEN:
5228                    {
5229                    alt65=1;
5230                    }
5231                    break;
5232                case IMAGE_OPEN:
5233                    {
5234                    alt65=2;
5235                    }
5236                    break;
5237                case NOWIKI_OPEN:
5238                    {
5239                    alt65=3;
5240                    }
5241                    break;
5242                default:
5243                    if (backtracking>0) {failed=true; return element;}
5244                    NoViableAltException nvae =
5245                        new NoViableAltException("355:1: heading_inlineelement returns [ASTNode element = null] : (l= link | i= image | nwi= nowiki_inline );", 65, 0, input);
5246    
5247                    throw nvae;
5248                }
5249    
5250                switch (alt65) {
5251                    case 1 :
5252                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:356:4: l= link
5253                        {
5254                        pushFollow(FOLLOW_link_in_heading_inlineelement1764);
5255                        l=link();
5256                        _fsp--;
5257                        if (failed) return element;
5258                        if ( backtracking==0 ) {
5259                          element = l; 
5260                        }
5261    
5262                        }
5263                        break;
5264                    case 2 :
5265                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:357:4: i= image
5266                        {
5267                        pushFollow(FOLLOW_image_in_heading_inlineelement1774);
5268                        i=image();
5269                        _fsp--;
5270                        if (failed) return element;
5271                        if ( backtracking==0 ) {
5272                          element = i; 
5273                        }
5274    
5275                        }
5276                        break;
5277                    case 3 :
5278                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:358:4: nwi= nowiki_inline
5279                        {
5280                        pushFollow(FOLLOW_nowiki_inline_in_heading_inlineelement1785);
5281                        nwi=nowiki_inline();
5282                        _fsp--;
5283                        if (failed) return element;
5284                        if ( backtracking==0 ) {
5285                          element = nwi; 
5286                        }
5287    
5288                        }
5289                        break;
5290    
5291                }
5292            }
5293            catch (RecognitionException re) {
5294                reportError(re);
5295                recover(input,re);
5296            }
5297            finally {
5298            }
5299            return element;
5300        }
5301        // $ANTLR end heading_inlineelement
5302    
5303    
5304        // $ANTLR start heading_unformatted_text
5305        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:361:1: heading_unformatted_text returns [StringBundler text = new StringBundler()] : (c=~ ( LINK_OPEN | IMAGE_OPEN | NOWIKI_OPEN | EQUAL | ESCAPE | NEWLINE | EOF ) )+ ;
5306        public final StringBundler heading_unformatted_text() throws RecognitionException {
5307            StringBundler text =  new StringBundler();
5308    
5309            Token c=null;
5310    
5311            try {
5312                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:362:2: ( (c=~ ( LINK_OPEN | IMAGE_OPEN | NOWIKI_OPEN | EQUAL | ESCAPE | NEWLINE | EOF ) )+ )
5313                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:362:4: (c=~ ( LINK_OPEN | IMAGE_OPEN | NOWIKI_OPEN | EQUAL | ESCAPE | NEWLINE | EOF ) )+
5314                {
5315                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:362:4: (c=~ ( LINK_OPEN | IMAGE_OPEN | NOWIKI_OPEN | EQUAL | ESCAPE | NEWLINE | EOF ) )+
5316                int cnt66=0;
5317                loop66:
5318                do {
5319                    int alt66=2;
5320                    switch ( input.LA(1) ) {
5321                    case STAR:
5322                        {
5323                        alt66=1;
5324                        }
5325                        break;
5326                    case BLANKS:
5327                        {
5328                        alt66=1;
5329                        }
5330                        break;
5331                    case ITAL:
5332                        {
5333                        alt66=1;
5334                        }
5335                        break;
5336                    case FORCED_END_OF_LINE:
5337                    case HEADING_SECTION:
5338                    case HORIZONTAL_SECTION:
5339                    case LIST_ITEM:
5340                    case LIST_ITEM_PART:
5341                    case NOWIKI_SECTION:
5342                    case SCAPE_NODE:
5343                    case TEXT_NODE:
5344                    case UNORDERED_LIST:
5345                    case UNFORMATTED_TEXT:
5346                    case WIKI:
5347                    case POUND:
5348                    case PIPE:
5349                    case EXTENSION:
5350                    case FORCED_LINEBREAK:
5351                    case NOWIKI_BLOCK_CLOSE:
5352                    case NOWIKI_CLOSE:
5353                    case LINK_CLOSE:
5354                    case IMAGE_CLOSE:
5355                    case TABLE_OF_CONTENTS_TEXT:
5356                    case DASH:
5357                    case CR:
5358                    case LF:
5359                    case SPACE:
5360                    case TABULATOR:
5361                    case BRACE_CLOSE:
5362                    case COLON_SLASH:
5363                    case SLASH:
5364                    case TABLE_OF_CONTENTS_OPEN_MARKUP:
5365                    case TABLE_OF_CONTENTS_CLOSE_MARKUP:
5366                    case INSIGNIFICANT_CHAR:
5367                    case 44:
5368                    case 45:
5369                    case 46:
5370                    case 47:
5371                    case 48:
5372                    case 49:
5373                    case 50:
5374                    case 51:
5375                    case 52:
5376                    case 53:
5377                    case 54:
5378                    case 55:
5379                    case 56:
5380                    case 57:
5381                    case 58:
5382                    case 59:
5383                    case 60:
5384                    case 61:
5385                    case 62:
5386                    case 63:
5387                    case 64:
5388                    case 65:
5389                    case 66:
5390                    case 67:
5391                    case 68:
5392                    case 69:
5393                    case 70:
5394                    case 71:
5395                    case 72:
5396                    case 73:
5397                    case 74:
5398                    case 75:
5399                    case 76:
5400                    case 77:
5401                    case 78:
5402                    case 79:
5403                        {
5404                        alt66=1;
5405                        }
5406                        break;
5407    
5408                    }
5409    
5410                    switch (alt66) {
5411                    case 1 :
5412                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:362:6: c=~ ( LINK_OPEN | IMAGE_OPEN | NOWIKI_OPEN | EQUAL | ESCAPE | NEWLINE | EOF )
5413                        {
5414                        c=(Token)input.LT(1);
5415                        if ( (input.LA(1)>=FORCED_END_OF_LINE && input.LA(1)<=WIKI)||(input.LA(1)>=POUND && input.LA(1)<=STAR)||(input.LA(1)>=PIPE && input.LA(1)<=ITAL)||(input.LA(1)>=EXTENSION && input.LA(1)<=FORCED_LINEBREAK)||(input.LA(1)>=NOWIKI_BLOCK_CLOSE && input.LA(1)<=79) ) {
5416                            input.consume();
5417                            errorRecovery=false;failed=false;
5418                        }
5419                        else {
5420                            if (backtracking>0) {failed=true; return text;}
5421                            MismatchedSetException mse =
5422                                new MismatchedSetException(null,input);
5423                            recoverFromMismatchedSet(input,mse,FOLLOW_set_in_heading_unformatted_text1808);    throw mse;
5424                        }
5425    
5426                        if ( backtracking==0 ) {
5427                          text.append(c.getText());
5428                        }
5429    
5430                        }
5431                        break;
5432    
5433                    default :
5434                        if ( cnt66 >= 1 ) break loop66;
5435                        if (backtracking>0) {failed=true; return text;}
5436                            EarlyExitException eee =
5437                                new EarlyExitException(66, input);
5438                            throw eee;
5439                    }
5440                    cnt66++;
5441                } while (true);
5442    
5443    
5444                }
5445    
5446            }
5447            catch (RecognitionException re) {
5448                reportError(re);
5449                recover(input,re);
5450            }
5451            finally {
5452            }
5453            return text;
5454        }
5455        // $ANTLR end heading_unformatted_text
5456    
5457        protected static class list_scope {
5458            BaseListNode currentParent;
5459            ListNode root;
5460            Stack<ItemNode> parents;
5461            int lastLevel = 1;
5462        }
5463        protected Stack list_stack = new Stack();
5464    
5465    
5466        // $ANTLR start list
5467        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:368:1: list returns [ListNode listNode = null] : (elem= list_elems )+ ( end_of_list )? ;
5468        public final ListNode list() throws RecognitionException {
5469            list_stack.push(new list_scope());
5470            ListNode listNode =  null;
5471    
5472    
5473                            ((list_scope)list_stack.peek()).root = new ListNode();
5474    
5475                            if (input.LA(1) == POUND) {
5476                                    ((list_scope)list_stack.peek()).currentParent = new OrderedListNode(((list_scope)list_stack.peek()).root);
5477                            }
5478                            else {
5479                                    ((list_scope)list_stack.peek()).currentParent = new UnorderedListNode(((list_scope)list_stack.peek()).root);
5480                            }
5481    
5482                            ((list_scope)list_stack.peek()).root.addChildASTNode(((list_scope)list_stack.peek()).currentParent);
5483    
5484                            ((list_scope)list_stack.peek()).parents = new Stack<ItemNode>();
5485                    
5486            try {
5487                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:392:2: ( (elem= list_elems )+ ( end_of_list )? )
5488                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:392:4: (elem= list_elems )+ ( end_of_list )?
5489                {
5490                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:392:4: (elem= list_elems )+
5491                int cnt67=0;
5492                loop67:
5493                do {
5494                    int alt67=2;
5495                    int LA67_0 = input.LA(1);
5496    
5497                    if ( (LA67_0==POUND) ) {
5498                        alt67=1;
5499                    }
5500                    else if ( (LA67_0==STAR) ) {
5501                        alt67=1;
5502                    }
5503    
5504    
5505                    switch (alt67) {
5506                    case 1 :
5507                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:392:6: elem= list_elems
5508                        {
5509                        pushFollow(FOLLOW_list_elems_in_list1882);
5510                        list_elems();
5511                        _fsp--;
5512                        if (failed) return listNode;
5513    
5514                        }
5515                        break;
5516    
5517                    default :
5518                        if ( cnt67 >= 1 ) break loop67;
5519                        if (backtracking>0) {failed=true; return listNode;}
5520                            EarlyExitException eee =
5521                                new EarlyExitException(67, input);
5522                            throw eee;
5523                    }
5524                    cnt67++;
5525                } while (true);
5526    
5527                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:392:28: ( end_of_list )?
5528                int alt68=2;
5529                int LA68_0 = input.LA(1);
5530    
5531                if ( (LA68_0==NEWLINE) ) {
5532                    alt68=1;
5533                }
5534                else if ( (LA68_0==EOF) ) {
5535                    alt68=1;
5536                }
5537                switch (alt68) {
5538                    case 1 :
5539                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:392:30: end_of_list
5540                        {
5541                        pushFollow(FOLLOW_end_of_list_in_list1890);
5542                        end_of_list();
5543                        _fsp--;
5544                        if (failed) return listNode;
5545    
5546                        }
5547                        break;
5548    
5549                }
5550    
5551    
5552                }
5553    
5554                if ( backtracking==0 ) {
5555    
5556                            listNode = ((list_scope)list_stack.peek()).root;
5557                    
5558                }
5559            }
5560            catch (RecognitionException re) {
5561                reportError(re);
5562                recover(input,re);
5563            }
5564            finally {
5565                list_stack.pop();
5566            }
5567            return listNode;
5568        }
5569        // $ANTLR end list
5570    
5571    
5572        // $ANTLR start list_elems
5573        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:395:1: list_elems : (om= list_ordelem_markup elem= list_elem | um= list_unordelem_markup elem= list_elem );
5574        public final void list_elems() throws RecognitionException {
5575            CountLevel_stack.push(new CountLevel_scope());
5576    
5577            list_ordelem_markup_return om = null;
5578    
5579            CollectionNode elem = null;
5580    
5581            list_unordelem_markup_return um = null;
5582    
5583    
5584    
5585                            ((CountLevel_scope)CountLevel_stack.peek()).level = 0;
5586                    
5587            try {
5588                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:400:2: (om= list_ordelem_markup elem= list_elem | um= list_unordelem_markup elem= list_elem )
5589                int alt69=2;
5590                int LA69_0 = input.LA(1);
5591    
5592                if ( (LA69_0==POUND) ) {
5593                    alt69=1;
5594                }
5595                else if ( (LA69_0==STAR) ) {
5596                    alt69=2;
5597                }
5598                else {
5599                    if (backtracking>0) {failed=true; return ;}
5600                    NoViableAltException nvae =
5601                        new NoViableAltException("395:1: list_elems : (om= list_ordelem_markup elem= list_elem | um= list_unordelem_markup elem= list_elem );", 69, 0, input);
5602    
5603                    throw nvae;
5604                }
5605                switch (alt69) {
5606                    case 1 :
5607                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:400:4: om= list_ordelem_markup elem= list_elem
5608                        {
5609                        pushFollow(FOLLOW_list_ordelem_markup_in_list_elems1920);
5610                        om=list_ordelem_markup();
5611                        _fsp--;
5612                        if (failed) return ;
5613                        if ( backtracking==0 ) {
5614                          ++((CountLevel_scope)CountLevel_stack.peek()).level;((CountLevel_scope)CountLevel_stack.peek()).currentMarkup = input.toString(om.start,om.stop);((CountLevel_scope)CountLevel_stack.peek()).groups += input.toString(om.start,om.stop);
5615                        }
5616                        pushFollow(FOLLOW_list_elem_in_list_elems1932);
5617                        elem=list_elem();
5618                        _fsp--;
5619                        if (failed) return ;
5620                        if ( backtracking==0 ) {
5621                            
5622    
5623                                                            Stack<ItemNode> parents = ((list_scope)list_stack.peek()).parents;
5624    
5625                                                            ItemNode top = parents.isEmpty()?null:parents.peek();
5626    
5627                                                            BaseParentableNode baseParentableNode = ((list_scope)list_stack.peek()).currentParent;
5628    
5629                                                            if (top == null) {
5630                                                                    OrderedListItemNode node = new OrderedListItemNode(((CountLevel_scope)CountLevel_stack.peek()).level, baseParentableNode, elem);
5631                                                                    baseParentableNode.addChildASTNode(node);
5632    
5633                                                                    parents.push(node);
5634    
5635                                                            }
5636                                                            else if (((CountLevel_scope)CountLevel_stack.peek()).level > ((list_scope)list_stack.peek()).lastLevel) {          
5637                                                                    OrderedListNode orderedListNode = new OrderedListNode(top);
5638    
5639                                                                    OrderedListItemNode node = new OrderedListItemNode(((CountLevel_scope)CountLevel_stack.peek()).level, orderedListNode, elem);
5640                                                                    orderedListNode.addChildASTNode(node);
5641    
5642                                                                    top.addChildASTNode(orderedListNode);
5643    
5644                                                                    parents.push(node);
5645                                                            } 
5646                                                            else if (((CountLevel_scope)CountLevel_stack.peek()).level < ((list_scope)list_stack.peek()).lastLevel) {
5647                                                                    ItemNode in = parents.peek();
5648    
5649                                                                    while (in.getLevel() > ((CountLevel_scope)CountLevel_stack.peek()).level) {
5650                                                                            in = parents.pop();
5651                                                                            --((list_scope)list_stack.peek()).lastLevel;
5652                                                                    }
5653    
5654                                                                    top = in;
5655    
5656                                                                    baseParentableNode = top.getBaseParentableNode();
5657    
5658                                                                    OrderedListItemNode node = new OrderedListItemNode(((CountLevel_scope)CountLevel_stack.peek()).level, baseParentableNode, elem);
5659    
5660                                                                    if (baseParentableNode instanceof UnorderedListItemNode) {
5661                                                                            buildAndComposeListNode(baseParentableNode, node, true);
5662                                                                    }
5663                                                                    else if (baseParentableNode instanceof UnorderedListNode) {
5664                                                                            baseParentableNode = ((UnorderedListNode)baseParentableNode).getBaseParentableNode();
5665    
5666                                                                            buildAndComposeListNode(baseParentableNode, node, true);
5667                                                                    }
5668                                                                    else if (baseParentableNode instanceof OrderedListNode && top instanceof UnorderedListItemNode) {
5669                                                                            baseParentableNode = ((OrderedListNode)baseParentableNode).getBaseParentableNode();
5670    
5671                                                                            buildAndComposeListNode(baseParentableNode, node, true);
5672                                                                    }
5673                                                                    else {
5674                                                                            baseParentableNode.addChildASTNode(node);
5675                                                                    }
5676    
5677                                                                    parents.push(node);
5678    
5679                                                            }
5680                                                            else {
5681                                                                    baseParentableNode = top.getBaseParentableNode();
5682    
5683                                                                    OrderedListItemNode node = new OrderedListItemNode(((CountLevel_scope)CountLevel_stack.peek()).level, baseParentableNode, elem);
5684    
5685                                                                    if (baseParentableNode instanceof UnorderedListItemNode) {
5686                                                                            buildAndComposeListNode(baseParentableNode, node, true);
5687                                                                    } 
5688                                                                    else if (baseParentableNode instanceof UnorderedListNode) {
5689                                                                            baseParentableNode = ((UnorderedListNode)baseParentableNode).getBaseParentableNode();
5690    
5691                                                                            buildAndComposeListNode(baseParentableNode, node, true);
5692                                                                    } 
5693                                                                    else if (baseParentableNode instanceof OrderedListNode && top instanceof UnorderedListItemNode) {
5694                                                                            baseParentableNode = ((OrderedListNode)baseParentableNode).getBaseParentableNode();
5695    
5696                                                                            buildAndComposeListNode(baseParentableNode, node, true);
5697                                                                    } 
5698                                                                    else {
5699                                                                            baseParentableNode.addChildASTNode(node);
5700                                                                    }
5701    
5702                                                                    parents.pop();
5703                                                                    parents.push(node);
5704                                                            }
5705    
5706                                                            ((list_scope)list_stack.peek()).lastLevel = ((CountLevel_scope)CountLevel_stack.peek()).level;
5707                                                    
5708                        }
5709    
5710                        }
5711                        break;
5712                    case 2 :
5713                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:488:4: um= list_unordelem_markup elem= list_elem
5714                        {
5715                        pushFollow(FOLLOW_list_unordelem_markup_in_list_elems1943);
5716                        um=list_unordelem_markup();
5717                        _fsp--;
5718                        if (failed) return ;
5719                        if ( backtracking==0 ) {
5720                          ++((CountLevel_scope)CountLevel_stack.peek()).level; ((CountLevel_scope)CountLevel_stack.peek()).currentMarkup = input.toString(um.start,um.stop);((CountLevel_scope)CountLevel_stack.peek()).groups += input.toString(um.start,um.stop);
5721                        }
5722                        pushFollow(FOLLOW_list_elem_in_list_elems1955);
5723                        elem=list_elem();
5724                        _fsp--;
5725                        if (failed) return ;
5726                        if ( backtracking==0 ) {
5727    
5728    
5729                                                            Stack<ItemNode> parents = ((list_scope)list_stack.peek()).parents;
5730    
5731                                                            ItemNode top = parents.isEmpty()?null:parents.peek();
5732    
5733                                                            BaseParentableNode baseParentableNode = ((list_scope)list_stack.peek()).currentParent;
5734    
5735                                                            if (top == null) {
5736                                                                    UnorderedListItemNode node = new UnorderedListItemNode(((CountLevel_scope)CountLevel_stack.peek()).level, baseParentableNode, elem);
5737                                                                    baseParentableNode.addChildASTNode(node);
5738    
5739                                                                    parents.push(node);
5740    
5741                                                            } 
5742                                                            else if (((CountLevel_scope)CountLevel_stack.peek()).level > ((list_scope)list_stack.peek()).lastLevel) {
5743                                                                    UnorderedListNode unorderedListNode = new UnorderedListNode(top);
5744    
5745                                                                    UnorderedListItemNode node = new UnorderedListItemNode(((CountLevel_scope)CountLevel_stack.peek()).level, unorderedListNode, elem);
5746                                                                    unorderedListNode.addChildASTNode(node);
5747    
5748                                                                    top.addChildASTNode(unorderedListNode);
5749    
5750                                                                    parents.push(node);
5751    
5752                                                            } 
5753                                                            else if (((CountLevel_scope)CountLevel_stack.peek()).level < ((list_scope)list_stack.peek()).lastLevel) {
5754                                                                    ItemNode in = parents.peek();
5755    
5756                                                                    while (in.getLevel() > ((CountLevel_scope)CountLevel_stack.peek()).level) {
5757                                                                            in = parents.pop();
5758                                                                            --((list_scope)list_stack.peek()).lastLevel;
5759                                                                    }
5760    
5761                                                                    top = in;
5762    
5763                                                                    baseParentableNode = top.getBaseParentableNode();
5764    
5765                                                                    UnorderedListItemNode node = new UnorderedListItemNode(((CountLevel_scope)CountLevel_stack.peek()).level, baseParentableNode, elem);
5766    
5767                                                                    if (baseParentableNode instanceof OrderedListItemNode) {
5768                                                                            buildAndComposeListNode(baseParentableNode, node, false);
5769                                                                    } 
5770                                                                    else if (baseParentableNode instanceof OrderedListNode) {
5771                                                                            baseParentableNode = ((OrderedListNode)baseParentableNode).getBaseParentableNode();
5772    
5773                                                                            buildAndComposeListNode(baseParentableNode, node, false);
5774                                                                    }
5775                                                                    else if (baseParentableNode instanceof UnorderedListNode && top instanceof OrderedListItemNode) {
5776                                                                            baseParentableNode = ((UnorderedListNode)baseParentableNode).getBaseParentableNode();
5777    
5778                                                                            buildAndComposeListNode(baseParentableNode, node, false);
5779                                                                    } 
5780                                                                    else {
5781                                                                            baseParentableNode.addChildASTNode(node);
5782                                                                    }
5783    
5784                                                                    parents.push(node);
5785    
5786                                                            } 
5787                                                            else {
5788                                                                    baseParentableNode = top.getBaseParentableNode();
5789    
5790                                                                    UnorderedListItemNode node = new UnorderedListItemNode(((CountLevel_scope)CountLevel_stack.peek()).level, baseParentableNode, elem);
5791    
5792                                                                    if (baseParentableNode instanceof OrderedListItemNode) {
5793                                                                            buildAndComposeListNode(baseParentableNode, node, false);
5794                                                                    } 
5795                                                                    else if (baseParentableNode instanceof OrderedListNode ) {
5796                                                                            baseParentableNode = ((OrderedListNode)baseParentableNode).getBaseParentableNode();
5797    
5798                                                                            buildAndComposeListNode(baseParentableNode, node, false);
5799                                                                    } 
5800                                                                    else if (baseParentableNode instanceof UnorderedListNode && top instanceof OrderedListItemNode) {
5801                                                                            baseParentableNode = ((UnorderedListNode)baseParentableNode).getBaseParentableNode();
5802    
5803                                                                            buildAndComposeListNode(baseParentableNode, node, false);
5804                                                                    } 
5805                                                                    else {
5806                                                                            baseParentableNode.addChildASTNode(node);
5807                                                                    }
5808    
5809                                                                    parents.pop();
5810                                                                    parents.push(node);
5811                                                            }
5812    
5813                                                            ((list_scope)list_stack.peek()).lastLevel = ((CountLevel_scope)CountLevel_stack.peek()).level;
5814                                                    
5815                        }
5816    
5817                        }
5818                        break;
5819    
5820                }
5821            }
5822            catch (RecognitionException re) {
5823                reportError(re);
5824                recover(input,re);
5825            }
5826            finally {
5827                CountLevel_stack.pop();
5828    
5829            }
5830            return ;
5831        }
5832        // $ANTLR end list_elems
5833    
5834    
5835        // $ANTLR start list_elem
5836        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:578:1: list_elem returns [CollectionNode items = null] : (m= list_elem_markup )* c= list_elemcontent list_elemseparator ;
5837        public final CollectionNode list_elem() throws RecognitionException {
5838            CollectionNode items =  null;
5839    
5840            list_elem_markup_return m = null;
5841    
5842            CollectionNode c = null;
5843    
5844    
5845            try {
5846                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:579:2: ( (m= list_elem_markup )* c= list_elemcontent list_elemseparator )
5847                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:579:4: (m= list_elem_markup )* c= list_elemcontent list_elemseparator
5848                {
5849                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:579:4: (m= list_elem_markup )*
5850                loop70:
5851                do {
5852                    int alt70=2;
5853                    int LA70_0 = input.LA(1);
5854    
5855                    if ( (LA70_0==STAR) ) {
5856                        alt70=1;
5857                    }
5858                    else if ( (LA70_0==POUND) ) {
5859                        alt70=1;
5860                    }
5861    
5862    
5863                    switch (alt70) {
5864                    case 1 :
5865                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:579:6: m= list_elem_markup
5866                        {
5867                        pushFollow(FOLLOW_list_elem_markup_in_list_elem1978);
5868                        m=list_elem_markup();
5869                        _fsp--;
5870                        if (failed) return items;
5871                        if ( backtracking==0 ) {
5872    
5873                                                         ++((CountLevel_scope)CountLevel_stack.peek()).level;
5874                                                         if (!input.toString(m.start,m.stop).equals(((CountLevel_scope)CountLevel_stack.peek()).currentMarkup)) {
5875                                                                            ((CountLevel_scope)CountLevel_stack.peek()).groups+= GROUPING_SEPARATOR;
5876                                                         }
5877                                                         ((CountLevel_scope)CountLevel_stack.peek()).groups+= input.toString(m.start,m.stop);
5878                                                         ((CountLevel_scope)CountLevel_stack.peek()).currentMarkup = input.toString(m.start,m.stop);
5879                                                      
5880                        }
5881    
5882                        }
5883                        break;
5884    
5885                    default :
5886                        break loop70;
5887                    }
5888                } while (true);
5889    
5890                pushFollow(FOLLOW_list_elemcontent_in_list_elem1989);
5891                c=list_elemcontent();
5892                _fsp--;
5893                if (failed) return items;
5894                if ( backtracking==0 ) {
5895                  items = c; 
5896                }
5897                pushFollow(FOLLOW_list_elemseparator_in_list_elem1994);
5898                list_elemseparator();
5899                _fsp--;
5900                if (failed) return items;
5901    
5902                }
5903    
5904            }
5905            catch (RecognitionException re) {
5906                reportError(re);
5907                recover(input,re);
5908            }
5909            finally {
5910            }
5911            return items;
5912        }
5913        // $ANTLR end list_elem
5914    
5915        public static class list_elem_markup_return extends ParserRuleReturnScope {
5916        };
5917    
5918        // $ANTLR start list_elem_markup
5919        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:588:1: list_elem_markup : ( list_ordelem_markup | list_unordelem_markup );
5920        public final list_elem_markup_return list_elem_markup() throws RecognitionException {
5921            list_elem_markup_return retval = new list_elem_markup_return();
5922            retval.start = input.LT(1);
5923    
5924            try {
5925                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:589:2: ( list_ordelem_markup | list_unordelem_markup )
5926                int alt71=2;
5927                int LA71_0 = input.LA(1);
5928    
5929                if ( (LA71_0==POUND) ) {
5930                    alt71=1;
5931                }
5932                else if ( (LA71_0==STAR) ) {
5933                    alt71=2;
5934                }
5935                else {
5936                    if (backtracking>0) {failed=true; return retval;}
5937                    NoViableAltException nvae =
5938                        new NoViableAltException("588:1: list_elem_markup : ( list_ordelem_markup | list_unordelem_markup );", 71, 0, input);
5939    
5940                    throw nvae;
5941                }
5942                switch (alt71) {
5943                    case 1 :
5944                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:589:4: list_ordelem_markup
5945                        {
5946                        pushFollow(FOLLOW_list_ordelem_markup_in_list_elem_markup2004);
5947                        list_ordelem_markup();
5948                        _fsp--;
5949                        if (failed) return retval;
5950    
5951                        }
5952                        break;
5953                    case 2 :
5954                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:590:4: list_unordelem_markup
5955                        {
5956                        pushFollow(FOLLOW_list_unordelem_markup_in_list_elem_markup2009);
5957                        list_unordelem_markup();
5958                        _fsp--;
5959                        if (failed) return retval;
5960    
5961                        }
5962                        break;
5963    
5964                }
5965                retval.stop = input.LT(-1);
5966    
5967            }
5968            catch (RecognitionException re) {
5969                reportError(re);
5970                recover(input,re);
5971            }
5972            finally {
5973            }
5974            return retval;
5975        }
5976        // $ANTLR end list_elem_markup
5977    
5978    
5979        // $ANTLR start list_elemcontent
5980        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:592:1: list_elemcontent returns [CollectionNode items = new CollectionNode()] : onestar (part= list_elemcontentpart onestar )* ;
5981        public final CollectionNode list_elemcontent() throws RecognitionException {
5982            CollectionNode items =  new CollectionNode();
5983    
5984            ASTNode part = null;
5985    
5986    
5987            try {
5988                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:593:2: ( onestar (part= list_elemcontentpart onestar )* )
5989                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:593:4: onestar (part= list_elemcontentpart onestar )*
5990                {
5991                pushFollow(FOLLOW_onestar_in_list_elemcontent2023);
5992                onestar();
5993                _fsp--;
5994                if (failed) return items;
5995                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:593:13: (part= list_elemcontentpart onestar )*
5996                loop72:
5997                do {
5998                    int alt72=2;
5999                    int LA72_0 = input.LA(1);
6000    
6001                    if ( ((LA72_0>=FORCED_END_OF_LINE && LA72_0<=WIKI)||(LA72_0>=POUND && LA72_0<=79)) ) {
6002                        alt72=1;
6003                    }
6004    
6005    
6006                    switch (alt72) {
6007                    case 1 :
6008                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:593:15: part= list_elemcontentpart onestar
6009                        {
6010                        pushFollow(FOLLOW_list_elemcontentpart_in_list_elemcontent2032);
6011                        part=list_elemcontentpart();
6012                        _fsp--;
6013                        if (failed) return items;
6014                        if ( backtracking==0 ) {
6015                           items.add(part); 
6016                        }
6017                        pushFollow(FOLLOW_onestar_in_list_elemcontent2037);
6018                        onestar();
6019                        _fsp--;
6020                        if (failed) return items;
6021    
6022                        }
6023                        break;
6024    
6025                    default :
6026                        break loop72;
6027                    }
6028                } while (true);
6029    
6030    
6031                }
6032    
6033            }
6034            catch (RecognitionException re) {
6035                reportError(re);
6036                recover(input,re);
6037            }
6038            finally {
6039            }
6040            return items;
6041        }
6042        // $ANTLR end list_elemcontent
6043    
6044    
6045        // $ANTLR start list_elemcontentpart
6046        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:595:1: list_elemcontentpart returns [ASTNode node = null] : (tuf= text_unformattedelement | tf= list_formatted_elem );
6047        public final ASTNode list_elemcontentpart() throws RecognitionException {
6048            ASTNode node =  null;
6049    
6050            ASTNode tuf = null;
6051    
6052            CollectionNode tf = null;
6053    
6054    
6055            try {
6056                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:596:2: (tuf= text_unformattedelement | tf= list_formatted_elem )
6057                int alt73=2;
6058                int LA73_0 = input.LA(1);
6059    
6060                if ( ((LA73_0>=FORCED_END_OF_LINE && LA73_0<=WIKI)||LA73_0==POUND||(LA73_0>=EQUAL && LA73_0<=PIPE)||(LA73_0>=LINK_OPEN && LA73_0<=79)) ) {
6061                    alt73=1;
6062                }
6063                else if ( (LA73_0==STAR||LA73_0==ITAL) ) {
6064                    alt73=2;
6065                }
6066                else {
6067                    if (backtracking>0) {failed=true; return node;}
6068                    NoViableAltException nvae =
6069                        new NoViableAltException("595:1: list_elemcontentpart returns [ASTNode node = null] : (tuf= text_unformattedelement | tf= list_formatted_elem );", 73, 0, input);
6070    
6071                    throw nvae;
6072                }
6073                switch (alt73) {
6074                    case 1 :
6075                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:596:4: tuf= text_unformattedelement
6076                        {
6077                        pushFollow(FOLLOW_text_unformattedelement_in_list_elemcontentpart2058);
6078                        tuf=text_unformattedelement();
6079                        _fsp--;
6080                        if (failed) return node;
6081                        if ( backtracking==0 ) {
6082    
6083                                                    if (tuf instanceof CollectionNode)
6084                                                            node = new UnformattedTextNode(tuf);
6085                                                    else
6086                                                            node = tuf;
6087                                                    
6088                        }
6089    
6090                        }
6091                        break;
6092                    case 2 :
6093                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:602:4: tf= list_formatted_elem
6094                        {
6095                        pushFollow(FOLLOW_list_formatted_elem_in_list_elemcontentpart2069);
6096                        tf=list_formatted_elem();
6097                        _fsp--;
6098                        if (failed) return node;
6099                        if ( backtracking==0 ) {
6100                           node = new FormattedTextNode(tf);
6101                        }
6102    
6103                        }
6104                        break;
6105    
6106                }
6107            }
6108            catch (RecognitionException re) {
6109                reportError(re);
6110                recover(input,re);
6111            }
6112            finally {
6113            }
6114            return node;
6115        }
6116        // $ANTLR end list_elemcontentpart
6117    
6118    
6119        // $ANTLR start list_formatted_elem
6120        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:604:1: list_formatted_elem returns [CollectionNode contents = new CollectionNode()] : ( bold_markup onestar (boldContents= list_boldcontentpart onestar )* ( bold_markup )? | ital_markup onestar (italContents= list_italcontentpart onestar )* ( ital_markup )? );
6121        public final CollectionNode list_formatted_elem() throws RecognitionException {
6122            CollectionNode contents =  new CollectionNode();
6123    
6124            ASTNode boldContents = null;
6125    
6126            ASTNode italContents = null;
6127    
6128    
6129            try {
6130                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:605:2: ( bold_markup onestar (boldContents= list_boldcontentpart onestar )* ( bold_markup )? | ital_markup onestar (italContents= list_italcontentpart onestar )* ( ital_markup )? )
6131                int alt78=2;
6132                int LA78_0 = input.LA(1);
6133    
6134                if ( (LA78_0==STAR) ) {
6135                    alt78=1;
6136                }
6137                else if ( (LA78_0==ITAL) ) {
6138                    alt78=2;
6139                }
6140                else {
6141                    if (backtracking>0) {failed=true; return contents;}
6142                    NoViableAltException nvae =
6143                        new NoViableAltException("604:1: list_formatted_elem returns [CollectionNode contents = new CollectionNode()] : ( bold_markup onestar (boldContents= list_boldcontentpart onestar )* ( bold_markup )? | ital_markup onestar (italContents= list_italcontentpart onestar )* ( ital_markup )? );", 78, 0, input);
6144    
6145                    throw nvae;
6146                }
6147                switch (alt78) {
6148                    case 1 :
6149                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:605:4: bold_markup onestar (boldContents= list_boldcontentpart onestar )* ( bold_markup )?
6150                        {
6151                        pushFollow(FOLLOW_bold_markup_in_list_formatted_elem2085);
6152                        bold_markup();
6153                        _fsp--;
6154                        if (failed) return contents;
6155                        pushFollow(FOLLOW_onestar_in_list_formatted_elem2088);
6156                        onestar();
6157                        _fsp--;
6158                        if (failed) return contents;
6159                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:605:26: (boldContents= list_boldcontentpart onestar )*
6160                        loop74:
6161                        do {
6162                            int alt74=2;
6163                            switch ( input.LA(1) ) {
6164                            case FORCED_END_OF_LINE:
6165                            case HEADING_SECTION:
6166                            case HORIZONTAL_SECTION:
6167                            case LIST_ITEM:
6168                            case LIST_ITEM_PART:
6169                            case NOWIKI_SECTION:
6170                            case SCAPE_NODE:
6171                            case TEXT_NODE:
6172                            case UNORDERED_LIST:
6173                            case UNFORMATTED_TEXT:
6174                            case WIKI:
6175                            case POUND:
6176                            case EQUAL:
6177                            case PIPE:
6178                            case NOWIKI_BLOCK_CLOSE:
6179                            case NOWIKI_CLOSE:
6180                            case LINK_CLOSE:
6181                            case IMAGE_CLOSE:
6182                            case BLANKS:
6183                            case TABLE_OF_CONTENTS_TEXT:
6184                            case DASH:
6185                            case CR:
6186                            case LF:
6187                            case SPACE:
6188                            case TABULATOR:
6189                            case BRACE_CLOSE:
6190                            case COLON_SLASH:
6191                            case SLASH:
6192                            case TABLE_OF_CONTENTS_OPEN_MARKUP:
6193                            case TABLE_OF_CONTENTS_CLOSE_MARKUP:
6194                            case INSIGNIFICANT_CHAR:
6195                            case 44:
6196                            case 45:
6197                            case 46:
6198                            case 47:
6199                            case 48:
6200                            case 49:
6201                            case 50:
6202                            case 51:
6203                            case 52:
6204                            case 53:
6205                            case 54:
6206                            case 55:
6207                            case 56:
6208                            case 57:
6209                            case 58:
6210                            case 59:
6211                            case 60:
6212                            case 61:
6213                            case 62:
6214                            case 63:
6215                            case 64:
6216                            case 65:
6217                            case 66:
6218                            case 67:
6219                            case 68:
6220                            case 69:
6221                            case 70:
6222                            case 71:
6223                            case 72:
6224                            case 73:
6225                            case 74:
6226                            case 75:
6227                            case 76:
6228                            case 77:
6229                            case 78:
6230                            case 79:
6231                                {
6232                                alt74=1;
6233                                }
6234                                break;
6235                            case FORCED_LINEBREAK:
6236                                {
6237                                alt74=1;
6238                                }
6239                                break;
6240                            case ESCAPE:
6241                                {
6242                                alt74=1;
6243                                }
6244                                break;
6245                            case LINK_OPEN:
6246                                {
6247                                alt74=1;
6248                                }
6249                                break;
6250                            case IMAGE_OPEN:
6251                                {
6252                                alt74=1;
6253                                }
6254                                break;
6255                            case EXTENSION:
6256                                {
6257                                alt74=1;
6258                                }
6259                                break;
6260                            case NOWIKI_OPEN:
6261                                {
6262                                alt74=1;
6263                                }
6264                                break;
6265                            case ITAL:
6266                                {
6267                                alt74=1;
6268                                }
6269                                break;
6270    
6271                            }
6272    
6273                            switch (alt74) {
6274                            case 1 :
6275                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:605:28: boldContents= list_boldcontentpart onestar
6276                                {
6277                                pushFollow(FOLLOW_list_boldcontentpart_in_list_formatted_elem2097);
6278                                boldContents=list_boldcontentpart();
6279                                _fsp--;
6280                                if (failed) return contents;
6281                                if ( backtracking==0 ) {
6282    
6283                                                                            BoldTextNode add = null;
6284                                                                            if (boldContents instanceof CollectionNode){
6285                                                                                 add = new BoldTextNode(boldContents);
6286                                                                            }
6287                                                                            else {
6288                                                                                CollectionNode c = new CollectionNode();
6289                                                                                c.add(boldContents);
6290                                                                                add = new BoldTextNode(c);
6291                                                                            }
6292                                                                            contents.add(add);
6293                                                                            
6294                                }
6295                                pushFollow(FOLLOW_onestar_in_list_formatted_elem2106);
6296                                onestar();
6297                                _fsp--;
6298                                if (failed) return contents;
6299    
6300                                }
6301                                break;
6302    
6303                            default :
6304                                break loop74;
6305                            }
6306                        } while (true);
6307    
6308                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:618:3: ( bold_markup )?
6309                        int alt75=2;
6310                        int LA75_0 = input.LA(1);
6311    
6312                        if ( (LA75_0==STAR) ) {
6313                            int LA75_1 = input.LA(2);
6314    
6315                            if ( (LA75_1==STAR) ) {
6316                                alt75=1;
6317                            }
6318                        }
6319                        switch (alt75) {
6320                            case 1 :
6321                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:618:5: bold_markup
6322                                {
6323                                pushFollow(FOLLOW_bold_markup_in_list_formatted_elem2115);
6324                                bold_markup();
6325                                _fsp--;
6326                                if (failed) return contents;
6327    
6328                                }
6329                                break;
6330    
6331                        }
6332    
6333    
6334                        }
6335                        break;
6336                    case 2 :
6337                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:619:4: ital_markup onestar (italContents= list_italcontentpart onestar )* ( ital_markup )?
6338                        {
6339                        pushFollow(FOLLOW_ital_markup_in_list_formatted_elem2123);
6340                        ital_markup();
6341                        _fsp--;
6342                        if (failed) return contents;
6343                        pushFollow(FOLLOW_onestar_in_list_formatted_elem2128);
6344                        onestar();
6345                        _fsp--;
6346                        if (failed) return contents;
6347                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:619:28: (italContents= list_italcontentpart onestar )*
6348                        loop76:
6349                        do {
6350                            int alt76=2;
6351                            switch ( input.LA(1) ) {
6352                            case STAR:
6353                                {
6354                                alt76=1;
6355                                }
6356                                break;
6357                            case FORCED_END_OF_LINE:
6358                            case HEADING_SECTION:
6359                            case HORIZONTAL_SECTION:
6360                            case LIST_ITEM:
6361                            case LIST_ITEM_PART:
6362                            case NOWIKI_SECTION:
6363                            case SCAPE_NODE:
6364                            case TEXT_NODE:
6365                            case UNORDERED_LIST:
6366                            case UNFORMATTED_TEXT:
6367                            case WIKI:
6368                            case POUND:
6369                            case EQUAL:
6370                            case PIPE:
6371                            case NOWIKI_BLOCK_CLOSE:
6372                            case NOWIKI_CLOSE:
6373                            case LINK_CLOSE:
6374                            case IMAGE_CLOSE:
6375                            case BLANKS:
6376                            case TABLE_OF_CONTENTS_TEXT:
6377                            case DASH:
6378                            case CR:
6379                            case LF:
6380                            case SPACE:
6381                            case TABULATOR:
6382                            case BRACE_CLOSE:
6383                            case COLON_SLASH:
6384                            case SLASH:
6385                            case TABLE_OF_CONTENTS_OPEN_MARKUP:
6386                            case TABLE_OF_CONTENTS_CLOSE_MARKUP:
6387                            case INSIGNIFICANT_CHAR:
6388                            case 44:
6389                            case 45:
6390                            case 46:
6391                            case 47:
6392                            case 48:
6393                            case 49:
6394                            case 50:
6395                            case 51:
6396                            case 52:
6397                            case 53:
6398                            case 54:
6399                            case 55:
6400                            case 56:
6401                            case 57:
6402                            case 58:
6403                            case 59:
6404                            case 60:
6405                            case 61:
6406                            case 62:
6407                            case 63:
6408                            case 64:
6409                            case 65:
6410                            case 66:
6411                            case 67:
6412                            case 68:
6413                            case 69:
6414                            case 70:
6415                            case 71:
6416                            case 72:
6417                            case 73:
6418                            case 74:
6419                            case 75:
6420                            case 76:
6421                            case 77:
6422                            case 78:
6423                            case 79:
6424                                {
6425                                alt76=1;
6426                                }
6427                                break;
6428                            case FORCED_LINEBREAK:
6429                                {
6430                                alt76=1;
6431                                }
6432                                break;
6433                            case ESCAPE:
6434                                {
6435                                alt76=1;
6436                                }
6437                                break;
6438                            case LINK_OPEN:
6439                                {
6440                                alt76=1;
6441                                }
6442                                break;
6443                            case IMAGE_OPEN:
6444                                {
6445                                alt76=1;
6446                                }
6447                                break;
6448                            case EXTENSION:
6449                                {
6450                                alt76=1;
6451                                }
6452                                break;
6453                            case NOWIKI_OPEN:
6454                                {
6455                                alt76=1;
6456                                }
6457                                break;
6458    
6459                            }
6460    
6461                            switch (alt76) {
6462                            case 1 :
6463                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:619:30: italContents= list_italcontentpart onestar
6464                                {
6465                                pushFollow(FOLLOW_list_italcontentpart_in_list_formatted_elem2137);
6466                                italContents=list_italcontentpart();
6467                                _fsp--;
6468                                if (failed) return contents;
6469                                if ( backtracking==0 ) {
6470    
6471                                                                            ItalicTextNode add = null;
6472                                                                            if (italContents instanceof CollectionNode){
6473                                                                                add = new ItalicTextNode(italContents);
6474                                                                            }
6475                                                                            else {
6476                                                                                  CollectionNode c = new CollectionNode();
6477                                                                                  c.add(italContents);
6478                                                                                  add = new ItalicTextNode(c);
6479                                                                            }
6480                                                                            contents.add(add);
6481                                                                            
6482                                }
6483                                pushFollow(FOLLOW_onestar_in_list_formatted_elem2146);
6484                                onestar();
6485                                _fsp--;
6486                                if (failed) return contents;
6487    
6488                                }
6489                                break;
6490    
6491                            default :
6492                                break loop76;
6493                            }
6494                        } while (true);
6495    
6496                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:631:3: ( ital_markup )?
6497                        int alt77=2;
6498                        int LA77_0 = input.LA(1);
6499    
6500                        if ( (LA77_0==ITAL) ) {
6501                            alt77=1;
6502                        }
6503                        switch (alt77) {
6504                            case 1 :
6505                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:631:5: ital_markup
6506                                {
6507                                pushFollow(FOLLOW_ital_markup_in_list_formatted_elem2155);
6508                                ital_markup();
6509                                _fsp--;
6510                                if (failed) return contents;
6511    
6512                                }
6513                                break;
6514    
6515                        }
6516    
6517    
6518                        }
6519                        break;
6520    
6521                }
6522            }
6523            catch (RecognitionException re) {
6524                reportError(re);
6525                recover(input,re);
6526            }
6527            finally {
6528            }
6529            return contents;
6530        }
6531        // $ANTLR end list_formatted_elem
6532    
6533        protected static class list_boldcontentpart_scope {
6534            List<ASTNode> elements;
6535        }
6536        protected Stack list_boldcontentpart_stack = new Stack();
6537    
6538    
6539        // $ANTLR start list_boldcontentpart
6540        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:634:1: list_boldcontentpart returns [ASTNode contents = null] : ( ital_markup c= list_bolditalcontent ( ital_markup )? | (t= text_unformattedelement )+ );
6541        public final ASTNode list_boldcontentpart() throws RecognitionException {
6542            list_boldcontentpart_stack.push(new list_boldcontentpart_scope());
6543            ASTNode contents =  null;
6544    
6545            ASTNode c = null;
6546    
6547            ASTNode t = null;
6548    
6549    
6550    
6551                    ((list_boldcontentpart_scope)list_boldcontentpart_stack.peek()).elements = new ArrayList<ASTNode>();
6552    
6553            try {
6554                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:641:2: ( ital_markup c= list_bolditalcontent ( ital_markup )? | (t= text_unformattedelement )+ )
6555                int alt81=2;
6556                int LA81_0 = input.LA(1);
6557    
6558                if ( (LA81_0==ITAL) ) {
6559                    alt81=1;
6560                }
6561                else if ( ((LA81_0>=FORCED_END_OF_LINE && LA81_0<=WIKI)||LA81_0==POUND||(LA81_0>=EQUAL && LA81_0<=PIPE)||(LA81_0>=LINK_OPEN && LA81_0<=79)) ) {
6562                    alt81=2;
6563                }
6564                else {
6565                    if (backtracking>0) {failed=true; return contents;}
6566                    NoViableAltException nvae =
6567                        new NoViableAltException("634:1: list_boldcontentpart returns [ASTNode contents = null] : ( ital_markup c= list_bolditalcontent ( ital_markup )? | (t= text_unformattedelement )+ );", 81, 0, input);
6568    
6569                    throw nvae;
6570                }
6571                switch (alt81) {
6572                    case 1 :
6573                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:641:4: ital_markup c= list_bolditalcontent ( ital_markup )?
6574                        {
6575                        pushFollow(FOLLOW_ital_markup_in_list_boldcontentpart2181);
6576                        ital_markup();
6577                        _fsp--;
6578                        if (failed) return contents;
6579                        pushFollow(FOLLOW_list_bolditalcontent_in_list_boldcontentpart2188);
6580                        c=list_bolditalcontent();
6581                        _fsp--;
6582                        if (failed) return contents;
6583                        if ( backtracking==0 ) {
6584                          contents = new ItalicTextNode(c);
6585                        }
6586                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:641:86: ( ital_markup )?
6587                        int alt79=2;
6588                        int LA79_0 = input.LA(1);
6589    
6590                        if ( (LA79_0==ITAL) ) {
6591                            alt79=1;
6592                        }
6593                        switch (alt79) {
6594                            case 1 :
6595                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:641:88: ital_markup
6596                                {
6597                                pushFollow(FOLLOW_ital_markup_in_list_boldcontentpart2195);
6598                                ital_markup();
6599                                _fsp--;
6600                                if (failed) return contents;
6601    
6602                                }
6603                                break;
6604    
6605                        }
6606    
6607    
6608                        }
6609                        break;
6610                    case 2 :
6611                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:642:4: (t= text_unformattedelement )+
6612                        {
6613                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:642:4: (t= text_unformattedelement )+
6614                        int cnt80=0;
6615                        loop80:
6616                        do {
6617                            int alt80=2;
6618                            switch ( input.LA(1) ) {
6619                            case FORCED_END_OF_LINE:
6620                            case HEADING_SECTION:
6621                            case HORIZONTAL_SECTION:
6622                            case LIST_ITEM:
6623                            case LIST_ITEM_PART:
6624                            case NOWIKI_SECTION:
6625                            case SCAPE_NODE:
6626                            case TEXT_NODE:
6627                            case UNORDERED_LIST:
6628                            case UNFORMATTED_TEXT:
6629                            case WIKI:
6630                            case POUND:
6631                            case EQUAL:
6632                            case PIPE:
6633                            case NOWIKI_BLOCK_CLOSE:
6634                            case NOWIKI_CLOSE:
6635                            case LINK_CLOSE:
6636                            case IMAGE_CLOSE:
6637                            case BLANKS:
6638                            case TABLE_OF_CONTENTS_TEXT:
6639                            case DASH:
6640                            case CR:
6641                            case LF:
6642                            case SPACE:
6643                            case TABULATOR:
6644                            case BRACE_CLOSE:
6645                            case COLON_SLASH:
6646                            case SLASH:
6647                            case TABLE_OF_CONTENTS_OPEN_MARKUP:
6648                            case TABLE_OF_CONTENTS_CLOSE_MARKUP:
6649                            case INSIGNIFICANT_CHAR:
6650                            case 44:
6651                            case 45:
6652                            case 46:
6653                            case 47:
6654                            case 48:
6655                            case 49:
6656                            case 50:
6657                            case 51:
6658                            case 52:
6659                            case 53:
6660                            case 54:
6661                            case 55:
6662                            case 56:
6663                            case 57:
6664                            case 58:
6665                            case 59:
6666                            case 60:
6667                            case 61:
6668                            case 62:
6669                            case 63:
6670                            case 64:
6671                            case 65:
6672                            case 66:
6673                            case 67:
6674                            case 68:
6675                            case 69:
6676                            case 70:
6677                            case 71:
6678                            case 72:
6679                            case 73:
6680                            case 74:
6681                            case 75:
6682                            case 76:
6683                            case 77:
6684                            case 78:
6685                            case 79:
6686                                {
6687                                alt80=1;
6688                                }
6689                                break;
6690                            case FORCED_LINEBREAK:
6691                                {
6692                                alt80=1;
6693                                }
6694                                break;
6695                            case ESCAPE:
6696                                {
6697                                alt80=1;
6698                                }
6699                                break;
6700                            case LINK_OPEN:
6701                                {
6702                                alt80=1;
6703                                }
6704                                break;
6705                            case IMAGE_OPEN:
6706                                {
6707                                alt80=1;
6708                                }
6709                                break;
6710                            case EXTENSION:
6711                                {
6712                                alt80=1;
6713                                }
6714                                break;
6715                            case NOWIKI_OPEN:
6716                                {
6717                                alt80=1;
6718                                }
6719                                break;
6720    
6721                            }
6722    
6723                            switch (alt80) {
6724                            case 1 :
6725                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:642:6: t= text_unformattedelement
6726                                {
6727                                pushFollow(FOLLOW_text_unformattedelement_in_list_boldcontentpart2209);
6728                                t=text_unformattedelement();
6729                                _fsp--;
6730                                if (failed) return contents;
6731                                if ( backtracking==0 ) {
6732                                   ((list_boldcontentpart_scope)list_boldcontentpart_stack.peek()).elements.add(t); 
6733                                }
6734    
6735                                }
6736                                break;
6737    
6738                            default :
6739                                if ( cnt80 >= 1 ) break loop80;
6740                                if (backtracking>0) {failed=true; return contents;}
6741                                    EarlyExitException eee =
6742                                        new EarlyExitException(80, input);
6743                                    throw eee;
6744                            }
6745                            cnt80++;
6746                        } while (true);
6747    
6748                        if ( backtracking==0 ) {
6749                          contents = new CollectionNode(((list_boldcontentpart_scope)list_boldcontentpart_stack.peek()).elements); 
6750                        }
6751    
6752                        }
6753                        break;
6754    
6755                }
6756            }
6757            catch (RecognitionException re) {
6758                reportError(re);
6759                recover(input,re);
6760            }
6761            finally {
6762                list_boldcontentpart_stack.pop();
6763            }
6764            return contents;
6765        }
6766        // $ANTLR end list_boldcontentpart
6767    
6768    
6769        // $ANTLR start list_bolditalcontent
6770        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:646:1: list_bolditalcontent returns [ASTNode text = null] : (t= text_unformattedelement )+ ;
6771        public final ASTNode list_bolditalcontent() throws RecognitionException {
6772            ASTNode text =  null;
6773    
6774            ASTNode t = null;
6775    
6776    
6777            try {
6778                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:647:2: ( (t= text_unformattedelement )+ )
6779                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:647:4: (t= text_unformattedelement )+
6780                {
6781                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:647:4: (t= text_unformattedelement )+
6782                int cnt82=0;
6783                loop82:
6784                do {
6785                    int alt82=2;
6786                    switch ( input.LA(1) ) {
6787                    case FORCED_END_OF_LINE:
6788                    case HEADING_SECTION:
6789                    case HORIZONTAL_SECTION:
6790                    case LIST_ITEM:
6791                    case LIST_ITEM_PART:
6792                    case NOWIKI_SECTION:
6793                    case SCAPE_NODE:
6794                    case TEXT_NODE:
6795                    case UNORDERED_LIST:
6796                    case UNFORMATTED_TEXT:
6797                    case WIKI:
6798                    case POUND:
6799                    case EQUAL:
6800                    case PIPE:
6801                    case NOWIKI_BLOCK_CLOSE:
6802                    case NOWIKI_CLOSE:
6803                    case LINK_CLOSE:
6804                    case IMAGE_CLOSE:
6805                    case BLANKS:
6806                    case TABLE_OF_CONTENTS_TEXT:
6807                    case DASH:
6808                    case CR:
6809                    case LF:
6810                    case SPACE:
6811                    case TABULATOR:
6812                    case BRACE_CLOSE:
6813                    case COLON_SLASH:
6814                    case SLASH:
6815                    case TABLE_OF_CONTENTS_OPEN_MARKUP:
6816                    case TABLE_OF_CONTENTS_CLOSE_MARKUP:
6817                    case INSIGNIFICANT_CHAR:
6818                    case 44:
6819                    case 45:
6820                    case 46:
6821                    case 47:
6822                    case 48:
6823                    case 49:
6824                    case 50:
6825                    case 51:
6826                    case 52:
6827                    case 53:
6828                    case 54:
6829                    case 55:
6830                    case 56:
6831                    case 57:
6832                    case 58:
6833                    case 59:
6834                    case 60:
6835                    case 61:
6836                    case 62:
6837                    case 63:
6838                    case 64:
6839                    case 65:
6840                    case 66:
6841                    case 67:
6842                    case 68:
6843                    case 69:
6844                    case 70:
6845                    case 71:
6846                    case 72:
6847                    case 73:
6848                    case 74:
6849                    case 75:
6850                    case 76:
6851                    case 77:
6852                    case 78:
6853                    case 79:
6854                        {
6855                        alt82=1;
6856                        }
6857                        break;
6858                    case FORCED_LINEBREAK:
6859                        {
6860                        alt82=1;
6861                        }
6862                        break;
6863                    case ESCAPE:
6864                        {
6865                        alt82=1;
6866                        }
6867                        break;
6868                    case LINK_OPEN:
6869                        {
6870                        alt82=1;
6871                        }
6872                        break;
6873                    case IMAGE_OPEN:
6874                        {
6875                        alt82=1;
6876                        }
6877                        break;
6878                    case EXTENSION:
6879                        {
6880                        alt82=1;
6881                        }
6882                        break;
6883                    case NOWIKI_OPEN:
6884                        {
6885                        alt82=1;
6886                        }
6887                        break;
6888    
6889                    }
6890    
6891                    switch (alt82) {
6892                    case 1 :
6893                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:647:6: t= text_unformattedelement
6894                        {
6895                        pushFollow(FOLLOW_text_unformattedelement_in_list_bolditalcontent2240);
6896                        t=text_unformattedelement();
6897                        _fsp--;
6898                        if (failed) return text;
6899                        if ( backtracking==0 ) {
6900                           text = t; 
6901                        }
6902    
6903                        }
6904                        break;
6905    
6906                    default :
6907                        if ( cnt82 >= 1 ) break loop82;
6908                        if (backtracking>0) {failed=true; return text;}
6909                            EarlyExitException eee =
6910                                new EarlyExitException(82, input);
6911                            throw eee;
6912                    }
6913                    cnt82++;
6914                } while (true);
6915    
6916    
6917                }
6918    
6919            }
6920            catch (RecognitionException re) {
6921                reportError(re);
6922                recover(input,re);
6923            }
6924            finally {
6925            }
6926            return text;
6927        }
6928        // $ANTLR end list_bolditalcontent
6929    
6930        protected static class list_italcontentpart_scope {
6931            List<ASTNode> elements;
6932        }
6933        protected Stack list_italcontentpart_stack = new Stack();
6934    
6935    
6936        // $ANTLR start list_italcontentpart
6937        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:650:1: list_italcontentpart returns [ASTNode contents = null] : ( bold_markup c= list_bolditalcontent ( bold_markup )? | (t= text_unformattedelement )+ );
6938        public final ASTNode list_italcontentpart() throws RecognitionException {
6939            list_italcontentpart_stack.push(new list_italcontentpart_scope());
6940            ASTNode contents =  null;
6941    
6942            ASTNode c = null;
6943    
6944            ASTNode t = null;
6945    
6946    
6947    
6948                    ((list_italcontentpart_scope)list_italcontentpart_stack.peek()).elements = new ArrayList<ASTNode>();
6949    
6950            try {
6951                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:657:2: ( bold_markup c= list_bolditalcontent ( bold_markup )? | (t= text_unformattedelement )+ )
6952                int alt85=2;
6953                int LA85_0 = input.LA(1);
6954    
6955                if ( (LA85_0==STAR) ) {
6956                    alt85=1;
6957                }
6958                else if ( ((LA85_0>=FORCED_END_OF_LINE && LA85_0<=WIKI)||LA85_0==POUND||(LA85_0>=EQUAL && LA85_0<=PIPE)||(LA85_0>=LINK_OPEN && LA85_0<=79)) ) {
6959                    alt85=2;
6960                }
6961                else {
6962                    if (backtracking>0) {failed=true; return contents;}
6963                    NoViableAltException nvae =
6964                        new NoViableAltException("650:1: list_italcontentpart returns [ASTNode contents = null] : ( bold_markup c= list_bolditalcontent ( bold_markup )? | (t= text_unformattedelement )+ );", 85, 0, input);
6965    
6966                    throw nvae;
6967                }
6968                switch (alt85) {
6969                    case 1 :
6970                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:657:4: bold_markup c= list_bolditalcontent ( bold_markup )?
6971                        {
6972                        pushFollow(FOLLOW_bold_markup_in_list_italcontentpart2268);
6973                        bold_markup();
6974                        _fsp--;
6975                        if (failed) return contents;
6976                        pushFollow(FOLLOW_list_bolditalcontent_in_list_italcontentpart2275);
6977                        c=list_bolditalcontent();
6978                        _fsp--;
6979                        if (failed) return contents;
6980                        if ( backtracking==0 ) {
6981                           contents = new BoldTextNode(c); 
6982                        }
6983                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:657:86: ( bold_markup )?
6984                        int alt83=2;
6985                        int LA83_0 = input.LA(1);
6986    
6987                        if ( (LA83_0==STAR) ) {
6988                            int LA83_1 = input.LA(2);
6989    
6990                            if ( (LA83_1==STAR) ) {
6991                                alt83=1;
6992                            }
6993                        }
6994                        switch (alt83) {
6995                            case 1 :
6996                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:657:88: bold_markup
6997                                {
6998                                pushFollow(FOLLOW_bold_markup_in_list_italcontentpart2282);
6999                                bold_markup();
7000                                _fsp--;
7001                                if (failed) return contents;
7002    
7003                                }
7004                                break;
7005    
7006                        }
7007    
7008    
7009                        }
7010                        break;
7011                    case 2 :
7012                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:658:4: (t= text_unformattedelement )+
7013                        {
7014                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:658:4: (t= text_unformattedelement )+
7015                        int cnt84=0;
7016                        loop84:
7017                        do {
7018                            int alt84=2;
7019                            switch ( input.LA(1) ) {
7020                            case FORCED_END_OF_LINE:
7021                            case HEADING_SECTION:
7022                            case HORIZONTAL_SECTION:
7023                            case LIST_ITEM:
7024                            case LIST_ITEM_PART:
7025                            case NOWIKI_SECTION:
7026                            case SCAPE_NODE:
7027                            case TEXT_NODE:
7028                            case UNORDERED_LIST:
7029                            case UNFORMATTED_TEXT:
7030                            case WIKI:
7031                            case POUND:
7032                            case EQUAL:
7033                            case PIPE:
7034                            case NOWIKI_BLOCK_CLOSE:
7035                            case NOWIKI_CLOSE:
7036                            case LINK_CLOSE:
7037                            case IMAGE_CLOSE:
7038                            case BLANKS:
7039                            case TABLE_OF_CONTENTS_TEXT:
7040                            case DASH:
7041                            case CR:
7042                            case LF:
7043                            case SPACE:
7044                            case TABULATOR:
7045                            case BRACE_CLOSE:
7046                            case COLON_SLASH:
7047                            case SLASH:
7048                            case TABLE_OF_CONTENTS_OPEN_MARKUP:
7049                            case TABLE_OF_CONTENTS_CLOSE_MARKUP:
7050                            case INSIGNIFICANT_CHAR:
7051                            case 44:
7052                            case 45:
7053                            case 46:
7054                            case 47:
7055                            case 48:
7056                            case 49:
7057                            case 50:
7058                            case 51:
7059                            case 52:
7060                            case 53:
7061                            case 54:
7062                            case 55:
7063                            case 56:
7064                            case 57:
7065                            case 58:
7066                            case 59:
7067                            case 60:
7068                            case 61:
7069                            case 62:
7070                            case 63:
7071                            case 64:
7072                            case 65:
7073                            case 66:
7074                            case 67:
7075                            case 68:
7076                            case 69:
7077                            case 70:
7078                            case 71:
7079                            case 72:
7080                            case 73:
7081                            case 74:
7082                            case 75:
7083                            case 76:
7084                            case 77:
7085                            case 78:
7086                            case 79:
7087                                {
7088                                alt84=1;
7089                                }
7090                                break;
7091                            case FORCED_LINEBREAK:
7092                                {
7093                                alt84=1;
7094                                }
7095                                break;
7096                            case ESCAPE:
7097                                {
7098                                alt84=1;
7099                                }
7100                                break;
7101                            case LINK_OPEN:
7102                                {
7103                                alt84=1;
7104                                }
7105                                break;
7106                            case IMAGE_OPEN:
7107                                {
7108                                alt84=1;
7109                                }
7110                                break;
7111                            case EXTENSION:
7112                                {
7113                                alt84=1;
7114                                }
7115                                break;
7116                            case NOWIKI_OPEN:
7117                                {
7118                                alt84=1;
7119                                }
7120                                break;
7121    
7122                            }
7123    
7124                            switch (alt84) {
7125                            case 1 :
7126                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:658:6: t= text_unformattedelement
7127                                {
7128                                pushFollow(FOLLOW_text_unformattedelement_in_list_italcontentpart2296);
7129                                t=text_unformattedelement();
7130                                _fsp--;
7131                                if (failed) return contents;
7132                                if ( backtracking==0 ) {
7133                                   ((list_italcontentpart_scope)list_italcontentpart_stack.peek()).elements.add(t); 
7134                                }
7135    
7136                                }
7137                                break;
7138    
7139                            default :
7140                                if ( cnt84 >= 1 ) break loop84;
7141                                if (backtracking>0) {failed=true; return contents;}
7142                                    EarlyExitException eee =
7143                                        new EarlyExitException(84, input);
7144                                    throw eee;
7145                            }
7146                            cnt84++;
7147                        } while (true);
7148    
7149                        if ( backtracking==0 ) {
7150                           contents = new CollectionNode(((list_italcontentpart_scope)list_italcontentpart_stack.peek()).elements); 
7151                        }
7152    
7153                        }
7154                        break;
7155    
7156                }
7157            }
7158            catch (RecognitionException re) {
7159                reportError(re);
7160                recover(input,re);
7161            }
7162            finally {
7163                list_italcontentpart_stack.pop();
7164            }
7165            return contents;
7166        }
7167        // $ANTLR end list_italcontentpart
7168    
7169    
7170        // $ANTLR start table
7171        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:662:1: table returns [TableNode table = new TableNode()] : (tr= table_row )+ ;
7172        public final TableNode table() throws RecognitionException {
7173            TableNode table =  new TableNode();
7174    
7175            CollectionNode tr = null;
7176    
7177    
7178            try {
7179                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:663:2: ( (tr= table_row )+ )
7180                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:663:4: (tr= table_row )+
7181                {
7182                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:663:4: (tr= table_row )+
7183                int cnt86=0;
7184                loop86:
7185                do {
7186                    int alt86=2;
7187                    int LA86_0 = input.LA(1);
7188    
7189                    if ( (LA86_0==PIPE) ) {
7190                        alt86=1;
7191                    }
7192    
7193    
7194                    switch (alt86) {
7195                    case 1 :
7196                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:663:6: tr= table_row
7197                        {
7198                        pushFollow(FOLLOW_table_row_in_table2324);
7199                        tr=table_row();
7200                        _fsp--;
7201                        if (failed) return table;
7202                        if ( backtracking==0 ) {
7203                          table.addChildASTNode(tr);
7204                        }
7205    
7206                        }
7207                        break;
7208    
7209                    default :
7210                        if ( cnt86 >= 1 ) break loop86;
7211                        if (backtracking>0) {failed=true; return table;}
7212                            EarlyExitException eee =
7213                                new EarlyExitException(86, input);
7214                            throw eee;
7215                    }
7216                    cnt86++;
7217                } while (true);
7218    
7219    
7220                }
7221    
7222            }
7223            catch (RecognitionException re) {
7224                reportError(re);
7225                recover(input,re);
7226            }
7227            finally {
7228            }
7229            return table;
7230        }
7231        // $ANTLR end table
7232    
7233    
7234        // $ANTLR start table_row
7235        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:665:1: table_row returns [CollectionNode row = new CollectionNode()] : (tc= table_cell )+ table_rowseparator ;
7236        public final CollectionNode table_row() throws RecognitionException {
7237            CollectionNode row =  new CollectionNode();
7238    
7239            TableCellNode tc = null;
7240    
7241    
7242            try {
7243                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:666:2: ( (tc= table_cell )+ table_rowseparator )
7244                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:666:4: (tc= table_cell )+ table_rowseparator
7245                {
7246                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:666:4: (tc= table_cell )+
7247                int cnt87=0;
7248                loop87:
7249                do {
7250                    int alt87=2;
7251                    int LA87_0 = input.LA(1);
7252    
7253                    if ( (LA87_0==PIPE) ) {
7254                        alt87=1;
7255                    }
7256    
7257    
7258                    switch (alt87) {
7259                    case 1 :
7260                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:666:6: tc= table_cell
7261                        {
7262                        pushFollow(FOLLOW_table_cell_in_table_row2350);
7263                        tc=table_cell();
7264                        _fsp--;
7265                        if (failed) return row;
7266                        if ( backtracking==0 ) {
7267                           row.add(tc); 
7268                        }
7269    
7270                        }
7271                        break;
7272    
7273                    default :
7274                        if ( cnt87 >= 1 ) break loop87;
7275                        if (backtracking>0) {failed=true; return row;}
7276                            EarlyExitException eee =
7277                                new EarlyExitException(87, input);
7278                            throw eee;
7279                    }
7280                    cnt87++;
7281                } while (true);
7282    
7283                pushFollow(FOLLOW_table_rowseparator_in_table_row2358);
7284                table_rowseparator();
7285                _fsp--;
7286                if (failed) return row;
7287    
7288                }
7289    
7290            }
7291            catch (RecognitionException re) {
7292                reportError(re);
7293                recover(input,re);
7294            }
7295            finally {
7296            }
7297            return row;
7298        }
7299        // $ANTLR end table_row
7300    
7301    
7302        // $ANTLR start table_cell
7303        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:668:1: table_cell returns [TableCellNode cell = null] : ({...}?th= table_headercell | tc= table_normalcell );
7304        public final TableCellNode table_cell() throws RecognitionException {
7305            TableCellNode cell =  null;
7306    
7307            TableHeaderNode th = null;
7308    
7309            TableDataNode tc = null;
7310    
7311    
7312            try {
7313                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:669:2: ({...}?th= table_headercell | tc= table_normalcell )
7314                int alt88=2;
7315                int LA88_0 = input.LA(1);
7316    
7317                if ( (LA88_0==PIPE) ) {
7318                    int LA88_1 = input.LA(2);
7319    
7320                    if ( (LA88_1==EQUAL) ) {
7321                        int LA88_2 = input.LA(3);
7322    
7323                        if ( ( input.LA(2) == EQUAL ) ) {
7324                            alt88=1;
7325                        }
7326                        else if ( (true) ) {
7327                            alt88=2;
7328                        }
7329                        else {
7330                            if (backtracking>0) {failed=true; return cell;}
7331                            NoViableAltException nvae =
7332                                new NoViableAltException("668:1: table_cell returns [TableCellNode cell = null] : ({...}?th= table_headercell | tc= table_normalcell );", 88, 2, input);
7333    
7334                            throw nvae;
7335                        }
7336                    }
7337                    else if ( (LA88_1==EOF||(LA88_1>=FORCED_END_OF_LINE && LA88_1<=STAR)||(LA88_1>=PIPE && LA88_1<=79)) ) {
7338                        alt88=2;
7339                    }
7340                    else {
7341                        if (backtracking>0) {failed=true; return cell;}
7342                        NoViableAltException nvae =
7343                            new NoViableAltException("668:1: table_cell returns [TableCellNode cell = null] : ({...}?th= table_headercell | tc= table_normalcell );", 88, 1, input);
7344    
7345                        throw nvae;
7346                    }
7347                }
7348                else {
7349                    if (backtracking>0) {failed=true; return cell;}
7350                    NoViableAltException nvae =
7351                        new NoViableAltException("668:1: table_cell returns [TableCellNode cell = null] : ({...}?th= table_headercell | tc= table_normalcell );", 88, 0, input);
7352    
7353                    throw nvae;
7354                }
7355                switch (alt88) {
7356                    case 1 :
7357                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:669:4: {...}?th= table_headercell
7358                        {
7359                        if ( !( input.LA(2) == EQUAL ) ) {
7360                            if (backtracking>0) {failed=true; return cell;}
7361                            throw new FailedPredicateException(input, "table_cell", " input.LA(2) == EQUAL ");
7362                        }
7363                        pushFollow(FOLLOW_table_headercell_in_table_cell2379);
7364                        th=table_headercell();
7365                        _fsp--;
7366                        if (failed) return cell;
7367                        if ( backtracking==0 ) {
7368                          cell = th;
7369                        }
7370    
7371                        }
7372                        break;
7373                    case 2 :
7374                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:670:4: tc= table_normalcell
7375                        {
7376                        pushFollow(FOLLOW_table_normalcell_in_table_cell2390);
7377                        tc=table_normalcell();
7378                        _fsp--;
7379                        if (failed) return cell;
7380                        if ( backtracking==0 ) {
7381                          cell = tc; 
7382                        }
7383    
7384                        }
7385                        break;
7386    
7387                }
7388            }
7389            catch (RecognitionException re) {
7390                reportError(re);
7391                recover(input,re);
7392            }
7393            finally {
7394            }
7395            return cell;
7396        }
7397        // $ANTLR end table_cell
7398    
7399    
7400        // $ANTLR start table_headercell
7401        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:672:1: table_headercell returns [TableHeaderNode header = null] : table_headercell_markup tc= table_cellcontent ;
7402        public final TableHeaderNode table_headercell() throws RecognitionException {
7403            TableHeaderNode header =  null;
7404    
7405            CollectionNode tc = null;
7406    
7407    
7408            try {
7409                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:673:2: ( table_headercell_markup tc= table_cellcontent )
7410                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:673:4: table_headercell_markup tc= table_cellcontent
7411                {
7412                pushFollow(FOLLOW_table_headercell_markup_in_table_headercell2406);
7413                table_headercell_markup();
7414                _fsp--;
7415                if (failed) return header;
7416                pushFollow(FOLLOW_table_cellcontent_in_table_headercell2413);
7417                tc=table_cellcontent();
7418                _fsp--;
7419                if (failed) return header;
7420                if ( backtracking==0 ) {
7421                  header = new TableHeaderNode(tc);
7422                }
7423    
7424                }
7425    
7426            }
7427            catch (RecognitionException re) {
7428                reportError(re);
7429                recover(input,re);
7430            }
7431            finally {
7432            }
7433            return header;
7434        }
7435        // $ANTLR end table_headercell
7436    
7437    
7438        // $ANTLR start table_normalcell
7439        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:675:1: table_normalcell returns [TableDataNode cell = null] : table_cell_markup tc= table_cellcontent ;
7440        public final TableDataNode table_normalcell() throws RecognitionException {
7441            TableDataNode cell =  null;
7442    
7443            CollectionNode tc = null;
7444    
7445    
7446            try {
7447                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:676:2: ( table_cell_markup tc= table_cellcontent )
7448                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:676:4: table_cell_markup tc= table_cellcontent
7449                {
7450                pushFollow(FOLLOW_table_cell_markup_in_table_normalcell2429);
7451                table_cell_markup();
7452                _fsp--;
7453                if (failed) return cell;
7454                pushFollow(FOLLOW_table_cellcontent_in_table_normalcell2436);
7455                tc=table_cellcontent();
7456                _fsp--;
7457                if (failed) return cell;
7458                if ( backtracking==0 ) {
7459                   cell = new TableDataNode(tc); 
7460                }
7461    
7462                }
7463    
7464            }
7465            catch (RecognitionException re) {
7466                reportError(re);
7467                recover(input,re);
7468            }
7469            finally {
7470            }
7471            return cell;
7472        }
7473        // $ANTLR end table_normalcell
7474    
7475    
7476        // $ANTLR start table_cellcontent
7477        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:678:1: table_cellcontent returns [CollectionNode items = new CollectionNode()] : onestar (tcp= table_cellcontentpart onestar )* ;
7478        public final CollectionNode table_cellcontent() throws RecognitionException {
7479            CollectionNode items =  new CollectionNode();
7480    
7481            ASTNode tcp = null;
7482    
7483    
7484            try {
7485                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:679:2: ( onestar (tcp= table_cellcontentpart onestar )* )
7486                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:679:4: onestar (tcp= table_cellcontentpart onestar )*
7487                {
7488                pushFollow(FOLLOW_onestar_in_table_cellcontent2452);
7489                onestar();
7490                _fsp--;
7491                if (failed) return items;
7492                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:679:13: (tcp= table_cellcontentpart onestar )*
7493                loop89:
7494                do {
7495                    int alt89=2;
7496                    int LA89_0 = input.LA(1);
7497    
7498                    if ( ((LA89_0>=FORCED_END_OF_LINE && LA89_0<=WIKI)||(LA89_0>=POUND && LA89_0<=EQUAL)||(LA89_0>=ITAL && LA89_0<=79)) ) {
7499                        alt89=1;
7500                    }
7501    
7502    
7503                    switch (alt89) {
7504                    case 1 :
7505                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:679:15: tcp= table_cellcontentpart onestar
7506                        {
7507                        pushFollow(FOLLOW_table_cellcontentpart_in_table_cellcontent2461);
7508                        tcp=table_cellcontentpart();
7509                        _fsp--;
7510                        if (failed) return items;
7511                        if ( backtracking==0 ) {
7512    
7513                                            if (tcp != null) {
7514                                                    items.add(tcp);
7515                                            }
7516                                    
7517                        }
7518                        pushFollow(FOLLOW_onestar_in_table_cellcontent2468);
7519                        onestar();
7520                        _fsp--;
7521                        if (failed) return items;
7522    
7523                        }
7524                        break;
7525    
7526                    default :
7527                        break loop89;
7528                    }
7529                } while (true);
7530    
7531    
7532                }
7533    
7534            }
7535            catch (RecognitionException re) {
7536                reportError(re);
7537                recover(input,re);
7538            }
7539            finally {
7540            }
7541            return items;
7542        }
7543        // $ANTLR end table_cellcontent
7544    
7545    
7546        // $ANTLR start table_cellcontentpart
7547        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:686:1: table_cellcontentpart returns [ASTNode node = null] : (tf= table_formattedelement | tu= table_unformattedelement );
7548        public final ASTNode table_cellcontentpart() throws RecognitionException {
7549            ASTNode node =  null;
7550    
7551            ASTNode tf = null;
7552    
7553            ASTNode tu = null;
7554    
7555    
7556            try {
7557                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:687:2: (tf= table_formattedelement | tu= table_unformattedelement )
7558                int alt90=2;
7559                int LA90_0 = input.LA(1);
7560    
7561                if ( (LA90_0==STAR||LA90_0==ITAL) ) {
7562                    alt90=1;
7563                }
7564                else if ( ((LA90_0>=FORCED_END_OF_LINE && LA90_0<=WIKI)||LA90_0==POUND||LA90_0==EQUAL||(LA90_0>=LINK_OPEN && LA90_0<=79)) ) {
7565                    alt90=2;
7566                }
7567                else {
7568                    if (backtracking>0) {failed=true; return node;}
7569                    NoViableAltException nvae =
7570                        new NoViableAltException("686:1: table_cellcontentpart returns [ASTNode node = null] : (tf= table_formattedelement | tu= table_unformattedelement );", 90, 0, input);
7571    
7572                    throw nvae;
7573                }
7574                switch (alt90) {
7575                    case 1 :
7576                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:687:4: tf= table_formattedelement
7577                        {
7578                        pushFollow(FOLLOW_table_formattedelement_in_table_cellcontentpart2489);
7579                        tf=table_formattedelement();
7580                        _fsp--;
7581                        if (failed) return node;
7582                        if ( backtracking==0 ) {
7583                          node =tf;
7584                        }
7585    
7586                        }
7587                        break;
7588                    case 2 :
7589                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:688:4: tu= table_unformattedelement
7590                        {
7591                        pushFollow(FOLLOW_table_unformattedelement_in_table_cellcontentpart2500);
7592                        tu=table_unformattedelement();
7593                        _fsp--;
7594                        if (failed) return node;
7595                        if ( backtracking==0 ) {
7596                          node =tu;
7597                        }
7598    
7599                        }
7600                        break;
7601    
7602                }
7603            }
7604            catch (RecognitionException re) {
7605                reportError(re);
7606                recover(input,re);
7607            }
7608            finally {
7609            }
7610            return node;
7611        }
7612        // $ANTLR end table_cellcontentpart
7613    
7614    
7615        // $ANTLR start table_formattedelement
7616        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:690:1: table_formattedelement returns [ASTNode content = null] : ( ital_markup (tic= table_italcontent )? ( ital_markup )? | bold_markup (tbc= table_boldcontent )? ( bold_markup )? );
7617        public final ASTNode table_formattedelement() throws RecognitionException {
7618            ASTNode content =  null;
7619    
7620            CollectionNode tic = null;
7621    
7622            CollectionNode tbc = null;
7623    
7624    
7625            try {
7626                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:691:2: ( ital_markup (tic= table_italcontent )? ( ital_markup )? | bold_markup (tbc= table_boldcontent )? ( bold_markup )? )
7627                int alt95=2;
7628                int LA95_0 = input.LA(1);
7629    
7630                if ( (LA95_0==ITAL) ) {
7631                    alt95=1;
7632                }
7633                else if ( (LA95_0==STAR) ) {
7634                    alt95=2;
7635                }
7636                else {
7637                    if (backtracking>0) {failed=true; return content;}
7638                    NoViableAltException nvae =
7639                        new NoViableAltException("690:1: table_formattedelement returns [ASTNode content = null] : ( ital_markup (tic= table_italcontent )? ( ital_markup )? | bold_markup (tbc= table_boldcontent )? ( bold_markup )? );", 95, 0, input);
7640    
7641                    throw nvae;
7642                }
7643                switch (alt95) {
7644                    case 1 :
7645                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:691:4: ital_markup (tic= table_italcontent )? ( ital_markup )?
7646                        {
7647                        pushFollow(FOLLOW_ital_markup_in_table_formattedelement2516);
7648                        ital_markup();
7649                        _fsp--;
7650                        if (failed) return content;
7651                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:691:18: (tic= table_italcontent )?
7652                        int alt91=2;
7653                        switch ( input.LA(1) ) {
7654                            case STAR:
7655                                {
7656                                alt91=1;
7657                                }
7658                                break;
7659                            case FORCED_END_OF_LINE:
7660                            case HEADING_SECTION:
7661                            case HORIZONTAL_SECTION:
7662                            case LIST_ITEM:
7663                            case LIST_ITEM_PART:
7664                            case NOWIKI_SECTION:
7665                            case SCAPE_NODE:
7666                            case TEXT_NODE:
7667                            case UNORDERED_LIST:
7668                            case UNFORMATTED_TEXT:
7669                            case WIKI:
7670                            case POUND:
7671                            case EQUAL:
7672                            case NOWIKI_BLOCK_CLOSE:
7673                            case NOWIKI_CLOSE:
7674                            case LINK_CLOSE:
7675                            case IMAGE_CLOSE:
7676                            case BLANKS:
7677                            case TABLE_OF_CONTENTS_TEXT:
7678                            case DASH:
7679                            case CR:
7680                            case LF:
7681                            case SPACE:
7682                            case TABULATOR:
7683                            case BRACE_CLOSE:
7684                            case COLON_SLASH:
7685                            case SLASH:
7686                            case TABLE_OF_CONTENTS_OPEN_MARKUP:
7687                            case TABLE_OF_CONTENTS_CLOSE_MARKUP:
7688                            case INSIGNIFICANT_CHAR:
7689                            case 44:
7690                            case 45:
7691                            case 46:
7692                            case 47:
7693                            case 48:
7694                            case 49:
7695                            case 50:
7696                            case 51:
7697                            case 52:
7698                            case 53:
7699                            case 54:
7700                            case 55:
7701                            case 56:
7702                            case 57:
7703                            case 58:
7704                            case 59:
7705                            case 60:
7706                            case 61:
7707                            case 62:
7708                            case 63:
7709                            case 64:
7710                            case 65:
7711                            case 66:
7712                            case 67:
7713                            case 68:
7714                            case 69:
7715                            case 70:
7716                            case 71:
7717                            case 72:
7718                            case 73:
7719                            case 74:
7720                            case 75:
7721                            case 76:
7722                            case 77:
7723                            case 78:
7724                            case 79:
7725                                {
7726                                alt91=1;
7727                                }
7728                                break;
7729                            case FORCED_LINEBREAK:
7730                                {
7731                                alt91=1;
7732                                }
7733                                break;
7734                            case ESCAPE:
7735                                {
7736                                alt91=1;
7737                                }
7738                                break;
7739                            case LINK_OPEN:
7740                                {
7741                                alt91=1;
7742                                }
7743                                break;
7744                            case IMAGE_OPEN:
7745                                {
7746                                alt91=1;
7747                                }
7748                                break;
7749                            case EXTENSION:
7750                                {
7751                                alt91=1;
7752                                }
7753                                break;
7754                            case NOWIKI_OPEN:
7755                                {
7756                                alt91=1;
7757                                }
7758                                break;
7759                            case EOF:
7760                                {
7761                                alt91=1;
7762                                }
7763                                break;
7764                        }
7765    
7766                        switch (alt91) {
7767                            case 1 :
7768                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:691:20: tic= table_italcontent
7769                                {
7770                                pushFollow(FOLLOW_table_italcontent_in_table_formattedelement2526);
7771                                tic=table_italcontent();
7772                                _fsp--;
7773                                if (failed) return content;
7774                                if ( backtracking==0 ) {
7775                                   content = new ItalicTextNode(tic); 
7776                                }
7777    
7778                                }
7779                                break;
7780    
7781                        }
7782    
7783                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:691:94: ( ital_markup )?
7784                        int alt92=2;
7785                        int LA92_0 = input.LA(1);
7786    
7787                        if ( (LA92_0==ITAL) ) {
7788                            alt92=1;
7789                        }
7790                        switch (alt92) {
7791                            case 1 :
7792                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:691:96: ital_markup
7793                                {
7794                                pushFollow(FOLLOW_ital_markup_in_table_formattedelement2535);
7795                                ital_markup();
7796                                _fsp--;
7797                                if (failed) return content;
7798    
7799                                }
7800                                break;
7801    
7802                        }
7803    
7804    
7805                        }
7806                        break;
7807                    case 2 :
7808                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:692:4: bold_markup (tbc= table_boldcontent )? ( bold_markup )?
7809                        {
7810                        pushFollow(FOLLOW_bold_markup_in_table_formattedelement2543);
7811                        bold_markup();
7812                        _fsp--;
7813                        if (failed) return content;
7814                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:692:16: (tbc= table_boldcontent )?
7815                        int alt93=2;
7816                        switch ( input.LA(1) ) {
7817                            case STAR:
7818                                {
7819                                int LA93_1 = input.LA(2);
7820    
7821                                if ( ( input.LA(2) != STAR ) ) {
7822                                    alt93=1;
7823                                }
7824                                }
7825                                break;
7826                            case FORCED_END_OF_LINE:
7827                            case HEADING_SECTION:
7828                            case HORIZONTAL_SECTION:
7829                            case LIST_ITEM:
7830                            case LIST_ITEM_PART:
7831                            case NOWIKI_SECTION:
7832                            case SCAPE_NODE:
7833                            case TEXT_NODE:
7834                            case UNORDERED_LIST:
7835                            case UNFORMATTED_TEXT:
7836                            case WIKI:
7837                            case POUND:
7838                            case EQUAL:
7839                            case NOWIKI_BLOCK_CLOSE:
7840                            case NOWIKI_CLOSE:
7841                            case LINK_CLOSE:
7842                            case IMAGE_CLOSE:
7843                            case BLANKS:
7844                            case TABLE_OF_CONTENTS_TEXT:
7845                            case DASH:
7846                            case CR:
7847                            case LF:
7848                            case SPACE:
7849                            case TABULATOR:
7850                            case BRACE_CLOSE:
7851                            case COLON_SLASH:
7852                            case SLASH:
7853                            case TABLE_OF_CONTENTS_OPEN_MARKUP:
7854                            case TABLE_OF_CONTENTS_CLOSE_MARKUP:
7855                            case INSIGNIFICANT_CHAR:
7856                            case 44:
7857                            case 45:
7858                            case 46:
7859                            case 47:
7860                            case 48:
7861                            case 49:
7862                            case 50:
7863                            case 51:
7864                            case 52:
7865                            case 53:
7866                            case 54:
7867                            case 55:
7868                            case 56:
7869                            case 57:
7870                            case 58:
7871                            case 59:
7872                            case 60:
7873                            case 61:
7874                            case 62:
7875                            case 63:
7876                            case 64:
7877                            case 65:
7878                            case 66:
7879                            case 67:
7880                            case 68:
7881                            case 69:
7882                            case 70:
7883                            case 71:
7884                            case 72:
7885                            case 73:
7886                            case 74:
7887                            case 75:
7888                            case 76:
7889                            case 77:
7890                            case 78:
7891                            case 79:
7892                                {
7893                                alt93=1;
7894                                }
7895                                break;
7896                            case FORCED_LINEBREAK:
7897                                {
7898                                alt93=1;
7899                                }
7900                                break;
7901                            case ESCAPE:
7902                                {
7903                                alt93=1;
7904                                }
7905                                break;
7906                            case LINK_OPEN:
7907                                {
7908                                alt93=1;
7909                                }
7910                                break;
7911                            case IMAGE_OPEN:
7912                                {
7913                                alt93=1;
7914                                }
7915                                break;
7916                            case EXTENSION:
7917                                {
7918                                alt93=1;
7919                                }
7920                                break;
7921                            case NOWIKI_OPEN:
7922                                {
7923                                alt93=1;
7924                                }
7925                                break;
7926                            case ITAL:
7927                                {
7928                                alt93=1;
7929                                }
7930                                break;
7931                            case EOF:
7932                                {
7933                                alt93=1;
7934                                }
7935                                break;
7936                        }
7937    
7938                        switch (alt93) {
7939                            case 1 :
7940                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:692:18: tbc= table_boldcontent
7941                                {
7942                                pushFollow(FOLLOW_table_boldcontent_in_table_formattedelement2550);
7943                                tbc=table_boldcontent();
7944                                _fsp--;
7945                                if (failed) return content;
7946                                if ( backtracking==0 ) {
7947                                  content = new BoldTextNode(tbc);
7948                                }
7949    
7950                                }
7951                                break;
7952    
7953                        }
7954    
7955                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:692:88: ( bold_markup )?
7956                        int alt94=2;
7957                        int LA94_0 = input.LA(1);
7958    
7959                        if ( (LA94_0==STAR) ) {
7960                            int LA94_1 = input.LA(2);
7961    
7962                            if ( (LA94_1==STAR) ) {
7963                                alt94=1;
7964                            }
7965                        }
7966                        switch (alt94) {
7967                            case 1 :
7968                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:692:90: bold_markup
7969                                {
7970                                pushFollow(FOLLOW_bold_markup_in_table_formattedelement2560);
7971                                bold_markup();
7972                                _fsp--;
7973                                if (failed) return content;
7974    
7975                                }
7976                                break;
7977    
7978                        }
7979    
7980    
7981                        }
7982                        break;
7983    
7984                }
7985            }
7986            catch (RecognitionException re) {
7987                reportError(re);
7988                recover(input,re);
7989            }
7990            finally {
7991            }
7992            return content;
7993        }
7994        // $ANTLR end table_formattedelement
7995    
7996    
7997        // $ANTLR start table_boldcontent
7998        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:694:1: table_boldcontent returns [CollectionNode items = new CollectionNode()] : ( onestar (tb= table_boldcontentpart onestar )+ | EOF );
7999        public final CollectionNode table_boldcontent() throws RecognitionException {
8000            CollectionNode items =  new CollectionNode();
8001    
8002            ASTNode tb = null;
8003    
8004    
8005            try {
8006                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:695:2: ( onestar (tb= table_boldcontentpart onestar )+ | EOF )
8007                int alt97=2;
8008                int LA97_0 = input.LA(1);
8009    
8010                if ( ((LA97_0>=FORCED_END_OF_LINE && LA97_0<=WIKI)||(LA97_0>=POUND && LA97_0<=EQUAL)||(LA97_0>=ITAL && LA97_0<=79)) ) {
8011                    alt97=1;
8012                }
8013                else if ( (LA97_0==EOF) ) {
8014                    alt97=2;
8015                }
8016                else {
8017                    if (backtracking>0) {failed=true; return items;}
8018                    NoViableAltException nvae =
8019                        new NoViableAltException("694:1: table_boldcontent returns [CollectionNode items = new CollectionNode()] : ( onestar (tb= table_boldcontentpart onestar )+ | EOF );", 97, 0, input);
8020    
8021                    throw nvae;
8022                }
8023                switch (alt97) {
8024                    case 1 :
8025                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:695:4: onestar (tb= table_boldcontentpart onestar )+
8026                        {
8027                        pushFollow(FOLLOW_onestar_in_table_boldcontent2577);
8028                        onestar();
8029                        _fsp--;
8030                        if (failed) return items;
8031                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:695:13: (tb= table_boldcontentpart onestar )+
8032                        int cnt96=0;
8033                        loop96:
8034                        do {
8035                            int alt96=2;
8036                            switch ( input.LA(1) ) {
8037                            case ITAL:
8038                                {
8039                                alt96=1;
8040                                }
8041                                break;
8042                            case FORCED_END_OF_LINE:
8043                            case HEADING_SECTION:
8044                            case HORIZONTAL_SECTION:
8045                            case LIST_ITEM:
8046                            case LIST_ITEM_PART:
8047                            case NOWIKI_SECTION:
8048                            case SCAPE_NODE:
8049                            case TEXT_NODE:
8050                            case UNORDERED_LIST:
8051                            case UNFORMATTED_TEXT:
8052                            case WIKI:
8053                            case POUND:
8054                            case EQUAL:
8055                            case NOWIKI_BLOCK_CLOSE:
8056                            case NOWIKI_CLOSE:
8057                            case LINK_CLOSE:
8058                            case IMAGE_CLOSE:
8059                            case BLANKS:
8060                            case TABLE_OF_CONTENTS_TEXT:
8061                            case DASH:
8062                            case CR:
8063                            case LF:
8064                            case SPACE:
8065                            case TABULATOR:
8066                            case BRACE_CLOSE:
8067                            case COLON_SLASH:
8068                            case SLASH:
8069                            case TABLE_OF_CONTENTS_OPEN_MARKUP:
8070                            case TABLE_OF_CONTENTS_CLOSE_MARKUP:
8071                            case INSIGNIFICANT_CHAR:
8072                            case 44:
8073                            case 45:
8074                            case 46:
8075                            case 47:
8076                            case 48:
8077                            case 49:
8078                            case 50:
8079                            case 51:
8080                            case 52:
8081                            case 53:
8082                            case 54:
8083                            case 55:
8084                            case 56:
8085                            case 57:
8086                            case 58:
8087                            case 59:
8088                            case 60:
8089                            case 61:
8090                            case 62:
8091                            case 63:
8092                            case 64:
8093                            case 65:
8094                            case 66:
8095                            case 67:
8096                            case 68:
8097                            case 69:
8098                            case 70:
8099                            case 71:
8100                            case 72:
8101                            case 73:
8102                            case 74:
8103                            case 75:
8104                            case 76:
8105                            case 77:
8106                            case 78:
8107                            case 79:
8108                                {
8109                                alt96=1;
8110                                }
8111                                break;
8112                            case FORCED_LINEBREAK:
8113                                {
8114                                alt96=1;
8115                                }
8116                                break;
8117                            case ESCAPE:
8118                                {
8119                                alt96=1;
8120                                }
8121                                break;
8122                            case LINK_OPEN:
8123                                {
8124                                alt96=1;
8125                                }
8126                                break;
8127                            case IMAGE_OPEN:
8128                                {
8129                                alt96=1;
8130                                }
8131                                break;
8132                            case EXTENSION:
8133                                {
8134                                alt96=1;
8135                                }
8136                                break;
8137                            case NOWIKI_OPEN:
8138                                {
8139                                alt96=1;
8140                                }
8141                                break;
8142    
8143                            }
8144    
8145                            switch (alt96) {
8146                            case 1 :
8147                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:695:15: tb= table_boldcontentpart onestar
8148                                {
8149                                pushFollow(FOLLOW_table_boldcontentpart_in_table_boldcontent2586);
8150                                tb=table_boldcontentpart();
8151                                _fsp--;
8152                                if (failed) return items;
8153                                if ( backtracking==0 ) {
8154                                   items.add(tb); 
8155                                }
8156                                pushFollow(FOLLOW_onestar_in_table_boldcontent2591);
8157                                onestar();
8158                                _fsp--;
8159                                if (failed) return items;
8160    
8161                                }
8162                                break;
8163    
8164                            default :
8165                                if ( cnt96 >= 1 ) break loop96;
8166                                if (backtracking>0) {failed=true; return items;}
8167                                    EarlyExitException eee =
8168                                        new EarlyExitException(96, input);
8169                                    throw eee;
8170                            }
8171                            cnt96++;
8172                        } while (true);
8173    
8174    
8175                        }
8176                        break;
8177                    case 2 :
8178                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:696:4: EOF
8179                        {
8180                        match(input,EOF,FOLLOW_EOF_in_table_boldcontent2599); if (failed) return items;
8181    
8182                        }
8183                        break;
8184    
8185                }
8186            }
8187            catch (RecognitionException re) {
8188                reportError(re);
8189                recover(input,re);
8190            }
8191            finally {
8192            }
8193            return items;
8194        }
8195        // $ANTLR end table_boldcontent
8196    
8197    
8198        // $ANTLR start table_italcontent
8199        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:698:1: table_italcontent returns [CollectionNode items = new CollectionNode()] : ( onestar (ti= table_italcontentpart onestar )+ | EOF );
8200        public final CollectionNode table_italcontent() throws RecognitionException {
8201            CollectionNode items =  new CollectionNode();
8202    
8203            ASTNode ti = null;
8204    
8205    
8206            try {
8207                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:699:2: ( onestar (ti= table_italcontentpart onestar )+ | EOF )
8208                int alt99=2;
8209                int LA99_0 = input.LA(1);
8210    
8211                if ( ((LA99_0>=FORCED_END_OF_LINE && LA99_0<=WIKI)||(LA99_0>=POUND && LA99_0<=EQUAL)||(LA99_0>=LINK_OPEN && LA99_0<=79)) ) {
8212                    alt99=1;
8213                }
8214                else if ( (LA99_0==EOF) ) {
8215                    alt99=2;
8216                }
8217                else {
8218                    if (backtracking>0) {failed=true; return items;}
8219                    NoViableAltException nvae =
8220                        new NoViableAltException("698:1: table_italcontent returns [CollectionNode items = new CollectionNode()] : ( onestar (ti= table_italcontentpart onestar )+ | EOF );", 99, 0, input);
8221    
8222                    throw nvae;
8223                }
8224                switch (alt99) {
8225                    case 1 :
8226                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:699:4: onestar (ti= table_italcontentpart onestar )+
8227                        {
8228                        pushFollow(FOLLOW_onestar_in_table_italcontent2613);
8229                        onestar();
8230                        _fsp--;
8231                        if (failed) return items;
8232                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:699:13: (ti= table_italcontentpart onestar )+
8233                        int cnt98=0;
8234                        loop98:
8235                        do {
8236                            int alt98=2;
8237                            switch ( input.LA(1) ) {
8238                            case STAR:
8239                                {
8240                                alt98=1;
8241                                }
8242                                break;
8243                            case FORCED_END_OF_LINE:
8244                            case HEADING_SECTION:
8245                            case HORIZONTAL_SECTION:
8246                            case LIST_ITEM:
8247                            case LIST_ITEM_PART:
8248                            case NOWIKI_SECTION:
8249                            case SCAPE_NODE:
8250                            case TEXT_NODE:
8251                            case UNORDERED_LIST:
8252                            case UNFORMATTED_TEXT:
8253                            case WIKI:
8254                            case POUND:
8255                            case EQUAL:
8256                            case NOWIKI_BLOCK_CLOSE:
8257                            case NOWIKI_CLOSE:
8258                            case LINK_CLOSE:
8259                            case IMAGE_CLOSE:
8260                            case BLANKS:
8261                            case TABLE_OF_CONTENTS_TEXT:
8262                            case DASH:
8263                            case CR:
8264                            case LF:
8265                            case SPACE:
8266                            case TABULATOR:
8267                            case BRACE_CLOSE:
8268                            case COLON_SLASH:
8269                            case SLASH:
8270                            case TABLE_OF_CONTENTS_OPEN_MARKUP:
8271                            case TABLE_OF_CONTENTS_CLOSE_MARKUP:
8272                            case INSIGNIFICANT_CHAR:
8273                            case 44:
8274                            case 45:
8275                            case 46:
8276                            case 47:
8277                            case 48:
8278                            case 49:
8279                            case 50:
8280                            case 51:
8281                            case 52:
8282                            case 53:
8283                            case 54:
8284                            case 55:
8285                            case 56:
8286                            case 57:
8287                            case 58:
8288                            case 59:
8289                            case 60:
8290                            case 61:
8291                            case 62:
8292                            case 63:
8293                            case 64:
8294                            case 65:
8295                            case 66:
8296                            case 67:
8297                            case 68:
8298                            case 69:
8299                            case 70:
8300                            case 71:
8301                            case 72:
8302                            case 73:
8303                            case 74:
8304                            case 75:
8305                            case 76:
8306                            case 77:
8307                            case 78:
8308                            case 79:
8309                                {
8310                                alt98=1;
8311                                }
8312                                break;
8313                            case FORCED_LINEBREAK:
8314                                {
8315                                alt98=1;
8316                                }
8317                                break;
8318                            case ESCAPE:
8319                                {
8320                                alt98=1;
8321                                }
8322                                break;
8323                            case LINK_OPEN:
8324                                {
8325                                alt98=1;
8326                                }
8327                                break;
8328                            case IMAGE_OPEN:
8329                                {
8330                                alt98=1;
8331                                }
8332                                break;
8333                            case EXTENSION:
8334                                {
8335                                alt98=1;
8336                                }
8337                                break;
8338                            case NOWIKI_OPEN:
8339                                {
8340                                alt98=1;
8341                                }
8342                                break;
8343    
8344                            }
8345    
8346                            switch (alt98) {
8347                            case 1 :
8348                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:699:15: ti= table_italcontentpart onestar
8349                                {
8350                                pushFollow(FOLLOW_table_italcontentpart_in_table_italcontent2622);
8351                                ti=table_italcontentpart();
8352                                _fsp--;
8353                                if (failed) return items;
8354                                if ( backtracking==0 ) {
8355                                   items.add(ti); 
8356                                }
8357                                pushFollow(FOLLOW_onestar_in_table_italcontent2627);
8358                                onestar();
8359                                _fsp--;
8360                                if (failed) return items;
8361    
8362                                }
8363                                break;
8364    
8365                            default :
8366                                if ( cnt98 >= 1 ) break loop98;
8367                                if (backtracking>0) {failed=true; return items;}
8368                                    EarlyExitException eee =
8369                                        new EarlyExitException(98, input);
8370                                    throw eee;
8371                            }
8372                            cnt98++;
8373                        } while (true);
8374    
8375    
8376                        }
8377                        break;
8378                    case 2 :
8379                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:700:4: EOF
8380                        {
8381                        match(input,EOF,FOLLOW_EOF_in_table_italcontent2635); if (failed) return items;
8382    
8383                        }
8384                        break;
8385    
8386                }
8387            }
8388            catch (RecognitionException re) {
8389                reportError(re);
8390                recover(input,re);
8391            }
8392            finally {
8393            }
8394            return items;
8395        }
8396        // $ANTLR end table_italcontent
8397    
8398    
8399        // $ANTLR start table_boldcontentpart
8400        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:702:1: table_boldcontentpart returns [ASTNode node = null] : (tf= table_formattedcontent | ital_markup tb= table_bolditalcontent ( ital_markup )? );
8401        public final ASTNode table_boldcontentpart() throws RecognitionException {
8402            ASTNode node =  null;
8403    
8404            CollectionNode tf = null;
8405    
8406            CollectionNode tb = null;
8407    
8408    
8409            try {
8410                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:703:2: (tf= table_formattedcontent | ital_markup tb= table_bolditalcontent ( ital_markup )? )
8411                int alt101=2;
8412                int LA101_0 = input.LA(1);
8413    
8414                if ( ((LA101_0>=FORCED_END_OF_LINE && LA101_0<=WIKI)||LA101_0==POUND||LA101_0==EQUAL||(LA101_0>=LINK_OPEN && LA101_0<=79)) ) {
8415                    alt101=1;
8416                }
8417                else if ( (LA101_0==ITAL) ) {
8418                    alt101=2;
8419                }
8420                else {
8421                    if (backtracking>0) {failed=true; return node;}
8422                    NoViableAltException nvae =
8423                        new NoViableAltException("702:1: table_boldcontentpart returns [ASTNode node = null] : (tf= table_formattedcontent | ital_markup tb= table_bolditalcontent ( ital_markup )? );", 101, 0, input);
8424    
8425                    throw nvae;
8426                }
8427                switch (alt101) {
8428                    case 1 :
8429                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:703:4: tf= table_formattedcontent
8430                        {
8431                        pushFollow(FOLLOW_table_formattedcontent_in_table_boldcontentpart2653);
8432                        tf=table_formattedcontent();
8433                        _fsp--;
8434                        if (failed) return node;
8435                        if ( backtracking==0 ) {
8436                          node = tf; 
8437                        }
8438    
8439                        }
8440                        break;
8441                    case 2 :
8442                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:704:4: ital_markup tb= table_bolditalcontent ( ital_markup )?
8443                        {
8444                        pushFollow(FOLLOW_ital_markup_in_table_boldcontentpart2660);
8445                        ital_markup();
8446                        _fsp--;
8447                        if (failed) return node;
8448                        pushFollow(FOLLOW_table_bolditalcontent_in_table_boldcontentpart2667);
8449                        tb=table_bolditalcontent();
8450                        _fsp--;
8451                        if (failed) return node;
8452                        if ( backtracking==0 ) {
8453                           node = new ItalicTextNode(tb);  
8454                        }
8455                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:704:92: ( ital_markup )?
8456                        int alt100=2;
8457                        int LA100_0 = input.LA(1);
8458    
8459                        if ( (LA100_0==ITAL) ) {
8460                            alt100=1;
8461                        }
8462                        switch (alt100) {
8463                            case 1 :
8464                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:704:94: ital_markup
8465                                {
8466                                pushFollow(FOLLOW_ital_markup_in_table_boldcontentpart2674);
8467                                ital_markup();
8468                                _fsp--;
8469                                if (failed) return node;
8470    
8471                                }
8472                                break;
8473    
8474                        }
8475    
8476    
8477                        }
8478                        break;
8479    
8480                }
8481            }
8482            catch (RecognitionException re) {
8483                reportError(re);
8484                recover(input,re);
8485            }
8486            finally {
8487            }
8488            return node;
8489        }
8490        // $ANTLR end table_boldcontentpart
8491    
8492    
8493        // $ANTLR start table_italcontentpart
8494        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:706:1: table_italcontentpart returns [ASTNode node = null] : ( bold_markup tb= table_bolditalcontent ( bold_markup )? | tf= table_formattedcontent );
8495        public final ASTNode table_italcontentpart() throws RecognitionException {
8496            ASTNode node =  null;
8497    
8498            CollectionNode tb = null;
8499    
8500            CollectionNode tf = null;
8501    
8502    
8503            try {
8504                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:707:2: ( bold_markup tb= table_bolditalcontent ( bold_markup )? | tf= table_formattedcontent )
8505                int alt103=2;
8506                int LA103_0 = input.LA(1);
8507    
8508                if ( (LA103_0==STAR) ) {
8509                    alt103=1;
8510                }
8511                else if ( ((LA103_0>=FORCED_END_OF_LINE && LA103_0<=WIKI)||LA103_0==POUND||LA103_0==EQUAL||(LA103_0>=LINK_OPEN && LA103_0<=79)) ) {
8512                    alt103=2;
8513                }
8514                else {
8515                    if (backtracking>0) {failed=true; return node;}
8516                    NoViableAltException nvae =
8517                        new NoViableAltException("706:1: table_italcontentpart returns [ASTNode node = null] : ( bold_markup tb= table_bolditalcontent ( bold_markup )? | tf= table_formattedcontent );", 103, 0, input);
8518    
8519                    throw nvae;
8520                }
8521                switch (alt103) {
8522                    case 1 :
8523                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:707:4: bold_markup tb= table_bolditalcontent ( bold_markup )?
8524                        {
8525                        pushFollow(FOLLOW_bold_markup_in_table_italcontentpart2691);
8526                        bold_markup();
8527                        _fsp--;
8528                        if (failed) return node;
8529                        pushFollow(FOLLOW_table_bolditalcontent_in_table_italcontentpart2698);
8530                        tb=table_bolditalcontent();
8531                        _fsp--;
8532                        if (failed) return node;
8533                        if ( backtracking==0 ) {
8534                          node = new BoldTextNode(tb); 
8535                        }
8536                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:707:88: ( bold_markup )?
8537                        int alt102=2;
8538                        int LA102_0 = input.LA(1);
8539    
8540                        if ( (LA102_0==STAR) ) {
8541                            int LA102_1 = input.LA(2);
8542    
8543                            if ( (LA102_1==STAR) ) {
8544                                alt102=1;
8545                            }
8546                        }
8547                        switch (alt102) {
8548                            case 1 :
8549                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:707:90: bold_markup
8550                                {
8551                                pushFollow(FOLLOW_bold_markup_in_table_italcontentpart2705);
8552                                bold_markup();
8553                                _fsp--;
8554                                if (failed) return node;
8555    
8556                                }
8557                                break;
8558    
8559                        }
8560    
8561    
8562                        }
8563                        break;
8564                    case 2 :
8565                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:708:4: tf= table_formattedcontent
8566                        {
8567                        pushFollow(FOLLOW_table_formattedcontent_in_table_italcontentpart2717);
8568                        tf=table_formattedcontent();
8569                        _fsp--;
8570                        if (failed) return node;
8571                        if ( backtracking==0 ) {
8572                           node = tf; 
8573                        }
8574    
8575                        }
8576                        break;
8577    
8578                }
8579            }
8580            catch (RecognitionException re) {
8581                reportError(re);
8582                recover(input,re);
8583            }
8584            finally {
8585            }
8586            return node;
8587        }
8588        // $ANTLR end table_italcontentpart
8589    
8590    
8591        // $ANTLR start table_bolditalcontent
8592        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:710:1: table_bolditalcontent returns [CollectionNode elements = null] : ( onestar (tfc= table_formattedcontent onestar )? | EOF );
8593        public final CollectionNode table_bolditalcontent() throws RecognitionException {
8594            CollectionNode elements =  null;
8595    
8596            CollectionNode tfc = null;
8597    
8598    
8599            try {
8600                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:711:2: ( onestar (tfc= table_formattedcontent onestar )? | EOF )
8601                int alt105=2;
8602                int LA105_0 = input.LA(1);
8603    
8604                if ( ((LA105_0>=FORCED_END_OF_LINE && LA105_0<=EQUAL)||(LA105_0>=ITAL && LA105_0<=79)) ) {
8605                    alt105=1;
8606                }
8607                else if ( (LA105_0==EOF||LA105_0==PIPE) ) {
8608                    alt105=1;
8609                }
8610                else {
8611                    if (backtracking>0) {failed=true; return elements;}
8612                    NoViableAltException nvae =
8613                        new NoViableAltException("710:1: table_bolditalcontent returns [CollectionNode elements = null] : ( onestar (tfc= table_formattedcontent onestar )? | EOF );", 105, 0, input);
8614    
8615                    throw nvae;
8616                }
8617                switch (alt105) {
8618                    case 1 :
8619                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:711:4: onestar (tfc= table_formattedcontent onestar )?
8620                        {
8621                        pushFollow(FOLLOW_onestar_in_table_bolditalcontent2733);
8622                        onestar();
8623                        _fsp--;
8624                        if (failed) return elements;
8625                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:711:13: (tfc= table_formattedcontent onestar )?
8626                        int alt104=2;
8627                        switch ( input.LA(1) ) {
8628                            case FORCED_END_OF_LINE:
8629                            case HEADING_SECTION:
8630                            case HORIZONTAL_SECTION:
8631                            case LIST_ITEM:
8632                            case LIST_ITEM_PART:
8633                            case NOWIKI_SECTION:
8634                            case SCAPE_NODE:
8635                            case TEXT_NODE:
8636                            case UNORDERED_LIST:
8637                            case UNFORMATTED_TEXT:
8638                            case WIKI:
8639                            case POUND:
8640                            case EQUAL:
8641                            case NOWIKI_BLOCK_CLOSE:
8642                            case NOWIKI_CLOSE:
8643                            case LINK_CLOSE:
8644                            case IMAGE_CLOSE:
8645                            case BLANKS:
8646                            case TABLE_OF_CONTENTS_TEXT:
8647                            case DASH:
8648                            case CR:
8649                            case LF:
8650                            case SPACE:
8651                            case TABULATOR:
8652                            case BRACE_CLOSE:
8653                            case COLON_SLASH:
8654                            case SLASH:
8655                            case TABLE_OF_CONTENTS_OPEN_MARKUP:
8656                            case TABLE_OF_CONTENTS_CLOSE_MARKUP:
8657                            case INSIGNIFICANT_CHAR:
8658                            case 44:
8659                            case 45:
8660                            case 46:
8661                            case 47:
8662                            case 48:
8663                            case 49:
8664                            case 50:
8665                            case 51:
8666                            case 52:
8667                            case 53:
8668                            case 54:
8669                            case 55:
8670                            case 56:
8671                            case 57:
8672                            case 58:
8673                            case 59:
8674                            case 60:
8675                            case 61:
8676                            case 62:
8677                            case 63:
8678                            case 64:
8679                            case 65:
8680                            case 66:
8681                            case 67:
8682                            case 68:
8683                            case 69:
8684                            case 70:
8685                            case 71:
8686                            case 72:
8687                            case 73:
8688                            case 74:
8689                            case 75:
8690                            case 76:
8691                            case 77:
8692                            case 78:
8693                            case 79:
8694                                {
8695                                alt104=1;
8696                                }
8697                                break;
8698                            case FORCED_LINEBREAK:
8699                                {
8700                                alt104=1;
8701                                }
8702                                break;
8703                            case ESCAPE:
8704                                {
8705                                alt104=1;
8706                                }
8707                                break;
8708                            case LINK_OPEN:
8709                                {
8710                                alt104=1;
8711                                }
8712                                break;
8713                            case IMAGE_OPEN:
8714                                {
8715                                alt104=1;
8716                                }
8717                                break;
8718                            case EXTENSION:
8719                                {
8720                                alt104=1;
8721                                }
8722                                break;
8723                            case NOWIKI_OPEN:
8724                                {
8725                                alt104=1;
8726                                }
8727                                break;
8728                        }
8729    
8730                        switch (alt104) {
8731                            case 1 :
8732                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:711:15: tfc= table_formattedcontent onestar
8733                                {
8734                                pushFollow(FOLLOW_table_formattedcontent_in_table_bolditalcontent2742);
8735                                tfc=table_formattedcontent();
8736                                _fsp--;
8737                                if (failed) return elements;
8738                                if ( backtracking==0 ) {
8739                                   elements = tfc; 
8740                                }
8741                                pushFollow(FOLLOW_onestar_in_table_bolditalcontent2747);
8742                                onestar();
8743                                _fsp--;
8744                                if (failed) return elements;
8745    
8746                                }
8747                                break;
8748    
8749                        }
8750    
8751    
8752                        }
8753                        break;
8754                    case 2 :
8755                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:712:4: EOF
8756                        {
8757                        match(input,EOF,FOLLOW_EOF_in_table_bolditalcontent2755); if (failed) return elements;
8758    
8759                        }
8760                        break;
8761    
8762                }
8763            }
8764            catch (RecognitionException re) {
8765                reportError(re);
8766                recover(input,re);
8767            }
8768            finally {
8769            }
8770            return elements;
8771        }
8772        // $ANTLR end table_bolditalcontent
8773    
8774    
8775        // $ANTLR start table_formattedcontent
8776        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:714:1: table_formattedcontent returns [CollectionNode elements = new CollectionNode()] : (tu= table_unformattedelement )+ ;
8777        public final CollectionNode table_formattedcontent() throws RecognitionException {
8778            CollectionNode elements =  new CollectionNode();
8779    
8780            ASTNode tu = null;
8781    
8782    
8783            try {
8784                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:715:2: ( (tu= table_unformattedelement )+ )
8785                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:715:4: (tu= table_unformattedelement )+
8786                {
8787                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:715:4: (tu= table_unformattedelement )+
8788                int cnt106=0;
8789                loop106:
8790                do {
8791                    int alt106=2;
8792                    switch ( input.LA(1) ) {
8793                    case FORCED_END_OF_LINE:
8794                    case HEADING_SECTION:
8795                    case HORIZONTAL_SECTION:
8796                    case LIST_ITEM:
8797                    case LIST_ITEM_PART:
8798                    case NOWIKI_SECTION:
8799                    case SCAPE_NODE:
8800                    case TEXT_NODE:
8801                    case UNORDERED_LIST:
8802                    case UNFORMATTED_TEXT:
8803                    case WIKI:
8804                    case POUND:
8805                    case EQUAL:
8806                    case NOWIKI_BLOCK_CLOSE:
8807                    case NOWIKI_CLOSE:
8808                    case LINK_CLOSE:
8809                    case IMAGE_CLOSE:
8810                    case BLANKS:
8811                    case TABLE_OF_CONTENTS_TEXT:
8812                    case DASH:
8813                    case CR:
8814                    case LF:
8815                    case SPACE:
8816                    case TABULATOR:
8817                    case BRACE_CLOSE:
8818                    case COLON_SLASH:
8819                    case SLASH:
8820                    case TABLE_OF_CONTENTS_OPEN_MARKUP:
8821                    case TABLE_OF_CONTENTS_CLOSE_MARKUP:
8822                    case INSIGNIFICANT_CHAR:
8823                    case 44:
8824                    case 45:
8825                    case 46:
8826                    case 47:
8827                    case 48:
8828                    case 49:
8829                    case 50:
8830                    case 51:
8831                    case 52:
8832                    case 53:
8833                    case 54:
8834                    case 55:
8835                    case 56:
8836                    case 57:
8837                    case 58:
8838                    case 59:
8839                    case 60:
8840                    case 61:
8841                    case 62:
8842                    case 63:
8843                    case 64:
8844                    case 65:
8845                    case 66:
8846                    case 67:
8847                    case 68:
8848                    case 69:
8849                    case 70:
8850                    case 71:
8851                    case 72:
8852                    case 73:
8853                    case 74:
8854                    case 75:
8855                    case 76:
8856                    case 77:
8857                    case 78:
8858                    case 79:
8859                        {
8860                        alt106=1;
8861                        }
8862                        break;
8863                    case FORCED_LINEBREAK:
8864                        {
8865                        alt106=1;
8866                        }
8867                        break;
8868                    case ESCAPE:
8869                        {
8870                        alt106=1;
8871                        }
8872                        break;
8873                    case LINK_OPEN:
8874                        {
8875                        alt106=1;
8876                        }
8877                        break;
8878                    case IMAGE_OPEN:
8879                        {
8880                        alt106=1;
8881                        }
8882                        break;
8883                    case EXTENSION:
8884                        {
8885                        alt106=1;
8886                        }
8887                        break;
8888                    case NOWIKI_OPEN:
8889                        {
8890                        alt106=1;
8891                        }
8892                        break;
8893    
8894                    }
8895    
8896                    switch (alt106) {
8897                    case 1 :
8898                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:715:6: tu= table_unformattedelement
8899                        {
8900                        pushFollow(FOLLOW_table_unformattedelement_in_table_formattedcontent2775);
8901                        tu=table_unformattedelement();
8902                        _fsp--;
8903                        if (failed) return elements;
8904                        if ( backtracking==0 ) {
8905                           elements.add(tu); 
8906                        }
8907    
8908                        }
8909                        break;
8910    
8911                    default :
8912                        if ( cnt106 >= 1 ) break loop106;
8913                        if (backtracking>0) {failed=true; return elements;}
8914                            EarlyExitException eee =
8915                                new EarlyExitException(106, input);
8916                            throw eee;
8917                    }
8918                    cnt106++;
8919                } while (true);
8920    
8921    
8922                }
8923    
8924            }
8925            catch (RecognitionException re) {
8926                reportError(re);
8927                recover(input,re);
8928            }
8929            finally {
8930            }
8931            return elements;
8932        }
8933        // $ANTLR end table_formattedcontent
8934    
8935    
8936        // $ANTLR start table_unformattedelement
8937        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:717:1: table_unformattedelement returns [ASTNode content = null] : (tu= table_unformatted | ti= table_inlineelement );
8938        public final ASTNode table_unformattedelement() throws RecognitionException {
8939            ASTNode content =  null;
8940    
8941            CollectionNode tu = null;
8942    
8943            ASTNode ti = null;
8944    
8945    
8946            try {
8947                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:718:2: (tu= table_unformatted | ti= table_inlineelement )
8948                int alt107=2;
8949                int LA107_0 = input.LA(1);
8950    
8951                if ( ((LA107_0>=FORCED_END_OF_LINE && LA107_0<=WIKI)||LA107_0==POUND||LA107_0==EQUAL||(LA107_0>=FORCED_LINEBREAK && LA107_0<=79)) ) {
8952                    alt107=1;
8953                }
8954                else if ( ((LA107_0>=LINK_OPEN && LA107_0<=EXTENSION)) ) {
8955                    alt107=2;
8956                }
8957                else {
8958                    if (backtracking>0) {failed=true; return content;}
8959                    NoViableAltException nvae =
8960                        new NoViableAltException("717:1: table_unformattedelement returns [ASTNode content = null] : (tu= table_unformatted | ti= table_inlineelement );", 107, 0, input);
8961    
8962                    throw nvae;
8963                }
8964                switch (alt107) {
8965                    case 1 :
8966                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:718:4: tu= table_unformatted
8967                        {
8968                        pushFollow(FOLLOW_table_unformatted_in_table_unformattedelement2798);
8969                        tu=table_unformatted();
8970                        _fsp--;
8971                        if (failed) return content;
8972                        if ( backtracking==0 ) {
8973                          content = new UnformattedTextNode(tu);
8974                        }
8975    
8976                        }
8977                        break;
8978                    case 2 :
8979                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:719:4: ti= table_inlineelement
8980                        {
8981                        pushFollow(FOLLOW_table_inlineelement_in_table_unformattedelement2810);
8982                        ti=table_inlineelement();
8983                        _fsp--;
8984                        if (failed) return content;
8985                        if ( backtracking==0 ) {
8986                          content = ti;
8987                        }
8988    
8989                        }
8990                        break;
8991    
8992                }
8993            }
8994            catch (RecognitionException re) {
8995                reportError(re);
8996                recover(input,re);
8997            }
8998            finally {
8999            }
9000            return content;
9001        }
9002        // $ANTLR end table_unformattedelement
9003    
9004    
9005        // $ANTLR start table_inlineelement
9006        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:721:1: table_inlineelement returns [ASTNode element = null] : (l= link | i= image | e= extension | nw= nowiki_inline );
9007        public final ASTNode table_inlineelement() throws RecognitionException {
9008            ASTNode element =  null;
9009    
9010            LinkNode l = null;
9011    
9012            ImageNode i = null;
9013    
9014            ASTNode e = null;
9015    
9016            NoWikiSectionNode nw = null;
9017    
9018    
9019            try {
9020                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:722:2: (l= link | i= image | e= extension | nw= nowiki_inline )
9021                int alt108=4;
9022                switch ( input.LA(1) ) {
9023                case LINK_OPEN:
9024                    {
9025                    alt108=1;
9026                    }
9027                    break;
9028                case IMAGE_OPEN:
9029                    {
9030                    alt108=2;
9031                    }
9032                    break;
9033                case EXTENSION:
9034                    {
9035                    alt108=3;
9036                    }
9037                    break;
9038                case NOWIKI_OPEN:
9039                    {
9040                    alt108=4;
9041                    }
9042                    break;
9043                default:
9044                    if (backtracking>0) {failed=true; return element;}
9045                    NoViableAltException nvae =
9046                        new NoViableAltException("721:1: table_inlineelement returns [ASTNode element = null] : (l= link | i= image | e= extension | nw= nowiki_inline );", 108, 0, input);
9047    
9048                    throw nvae;
9049                }
9050    
9051                switch (alt108) {
9052                    case 1 :
9053                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:722:4: l= link
9054                        {
9055                        pushFollow(FOLLOW_link_in_table_inlineelement2830);
9056                        l=link();
9057                        _fsp--;
9058                        if (failed) return element;
9059                        if ( backtracking==0 ) {
9060                          element = l; 
9061                        }
9062    
9063                        }
9064                        break;
9065                    case 2 :
9066                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:723:4: i= image
9067                        {
9068                        pushFollow(FOLLOW_image_in_table_inlineelement2840);
9069                        i=image();
9070                        _fsp--;
9071                        if (failed) return element;
9072                        if ( backtracking==0 ) {
9073                          element = i; 
9074                        }
9075    
9076                        }
9077                        break;
9078                    case 3 :
9079                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:724:4: e= extension
9080                        {
9081                        pushFollow(FOLLOW_extension_in_table_inlineelement2851);
9082                        e=extension();
9083                        _fsp--;
9084                        if (failed) return element;
9085                        if ( backtracking==0 ) {
9086                          element = e; 
9087                        }
9088    
9089                        }
9090                        break;
9091                    case 4 :
9092                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:725:4: nw= nowiki_inline
9093                        {
9094                        pushFollow(FOLLOW_nowiki_inline_in_table_inlineelement2861);
9095                        nw=nowiki_inline();
9096                        _fsp--;
9097                        if (failed) return element;
9098                        if ( backtracking==0 ) {
9099                          element = nw; 
9100                        }
9101    
9102                        }
9103                        break;
9104    
9105                }
9106            }
9107            catch (RecognitionException re) {
9108                reportError(re);
9109                recover(input,re);
9110            }
9111            finally {
9112            }
9113            return element;
9114        }
9115        // $ANTLR end table_inlineelement
9116    
9117    
9118        // $ANTLR start table_unformatted
9119        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:727:1: table_unformatted returns [CollectionNode text = new CollectionNode()] : (t= table_unformatted_text | ( forced_linebreak | e= escaped )+ );
9120        public final CollectionNode table_unformatted() throws RecognitionException {
9121            CollectionNode text =  new CollectionNode();
9122    
9123            StringBundler t = null;
9124    
9125            ScapedNode e = null;
9126    
9127    
9128            try {
9129                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:728:2: (t= table_unformatted_text | ( forced_linebreak | e= escaped )+ )
9130                int alt110=2;
9131                int LA110_0 = input.LA(1);
9132    
9133                if ( ((LA110_0>=FORCED_END_OF_LINE && LA110_0<=WIKI)||LA110_0==POUND||LA110_0==EQUAL||(LA110_0>=NOWIKI_BLOCK_CLOSE && LA110_0<=79)) ) {
9134                    alt110=1;
9135                }
9136                else if ( ((LA110_0>=FORCED_LINEBREAK && LA110_0<=ESCAPE)) ) {
9137                    alt110=2;
9138                }
9139                else {
9140                    if (backtracking>0) {failed=true; return text;}
9141                    NoViableAltException nvae =
9142                        new NoViableAltException("727:1: table_unformatted returns [CollectionNode text = new CollectionNode()] : (t= table_unformatted_text | ( forced_linebreak | e= escaped )+ );", 110, 0, input);
9143    
9144                    throw nvae;
9145                }
9146                switch (alt110) {
9147                    case 1 :
9148                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:728:5: t= table_unformatted_text
9149                        {
9150                        pushFollow(FOLLOW_table_unformatted_text_in_table_unformatted2882);
9151                        t=table_unformatted_text();
9152                        _fsp--;
9153                        if (failed) return text;
9154                        if ( backtracking==0 ) {
9155                           text.add(new UnformattedTextNode(t.toString()));
9156                        }
9157    
9158                        }
9159                        break;
9160                    case 2 :
9161                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:729:5: ( forced_linebreak | e= escaped )+
9162                        {
9163                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:729:5: ( forced_linebreak | e= escaped )+
9164                        int cnt109=0;
9165                        loop109:
9166                        do {
9167                            int alt109=3;
9168                            int LA109_0 = input.LA(1);
9169    
9170                            if ( (LA109_0==FORCED_LINEBREAK) ) {
9171                                alt109=1;
9172                            }
9173                            else if ( (LA109_0==ESCAPE) ) {
9174                                alt109=2;
9175                            }
9176    
9177    
9178                            switch (alt109) {
9179                            case 1 :
9180                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:729:6: forced_linebreak
9181                                {
9182                                pushFollow(FOLLOW_forced_linebreak_in_table_unformatted2891);
9183                                forced_linebreak();
9184                                _fsp--;
9185                                if (failed) return text;
9186                                if ( backtracking==0 ) {
9187                                  text.add(new ForcedEndOfLineNode());
9188                                }
9189    
9190                                }
9191                                break;
9192                            case 2 :
9193                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:730:5: e= escaped
9194                                {
9195                                pushFollow(FOLLOW_escaped_in_table_unformatted2903);
9196                                e=escaped();
9197                                _fsp--;
9198                                if (failed) return text;
9199                                if ( backtracking==0 ) {
9200                                  text.add(e);
9201                                }
9202    
9203                                }
9204                                break;
9205    
9206                            default :
9207                                if ( cnt109 >= 1 ) break loop109;
9208                                if (backtracking>0) {failed=true; return text;}
9209                                    EarlyExitException eee =
9210                                        new EarlyExitException(109, input);
9211                                    throw eee;
9212                            }
9213                            cnt109++;
9214                        } while (true);
9215    
9216    
9217                        }
9218                        break;
9219    
9220                }
9221            }
9222            catch (RecognitionException re) {
9223                reportError(re);
9224                recover(input,re);
9225            }
9226            finally {
9227            }
9228            return text;
9229        }
9230        // $ANTLR end table_unformatted
9231    
9232    
9233        // $ANTLR start table_unformatted_text
9234        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:733:1: table_unformatted_text returns [StringBundler text = new StringBundler()] : (c=~ ( PIPE | ITAL | STAR | LINK_OPEN | IMAGE_OPEN | NOWIKI_OPEN | EXTENSION | FORCED_LINEBREAK | ESCAPE | NEWLINE | EOF ) )+ ;
9235        public final StringBundler table_unformatted_text() throws RecognitionException {
9236            StringBundler text =  new StringBundler();
9237    
9238            Token c=null;
9239    
9240            try {
9241                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:734:2: ( (c=~ ( PIPE | ITAL | STAR | LINK_OPEN | IMAGE_OPEN | NOWIKI_OPEN | EXTENSION | FORCED_LINEBREAK | ESCAPE | NEWLINE | EOF ) )+ )
9242                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:734:4: (c=~ ( PIPE | ITAL | STAR | LINK_OPEN | IMAGE_OPEN | NOWIKI_OPEN | EXTENSION | FORCED_LINEBREAK | ESCAPE | NEWLINE | EOF ) )+
9243                {
9244                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:734:4: (c=~ ( PIPE | ITAL | STAR | LINK_OPEN | IMAGE_OPEN | NOWIKI_OPEN | EXTENSION | FORCED_LINEBREAK | ESCAPE | NEWLINE | EOF ) )+
9245                int cnt111=0;
9246                loop111:
9247                do {
9248                    int alt111=2;
9249                    int LA111_0 = input.LA(1);
9250    
9251                    if ( ((LA111_0>=FORCED_END_OF_LINE && LA111_0<=WIKI)||LA111_0==POUND||LA111_0==EQUAL||(LA111_0>=NOWIKI_BLOCK_CLOSE && LA111_0<=79)) ) {
9252                        alt111=1;
9253                    }
9254    
9255    
9256                    switch (alt111) {
9257                    case 1 :
9258                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:734:6: c=~ ( PIPE | ITAL | STAR | LINK_OPEN | IMAGE_OPEN | NOWIKI_OPEN | EXTENSION | FORCED_LINEBREAK | ESCAPE | NEWLINE | EOF )
9259                        {
9260                        c=(Token)input.LT(1);
9261                        if ( (input.LA(1)>=FORCED_END_OF_LINE && input.LA(1)<=WIKI)||input.LA(1)==POUND||input.LA(1)==EQUAL||(input.LA(1)>=NOWIKI_BLOCK_CLOSE && input.LA(1)<=79) ) {
9262                            input.consume();
9263                            errorRecovery=false;failed=false;
9264                        }
9265                        else {
9266                            if (backtracking>0) {failed=true; return text;}
9267                            MismatchedSetException mse =
9268                                new MismatchedSetException(null,input);
9269                            recoverFromMismatchedSet(input,mse,FOLLOW_set_in_table_unformatted_text2929);    throw mse;
9270                        }
9271    
9272                        if ( backtracking==0 ) {
9273                          text.append(c.getText());
9274                        }
9275    
9276                        }
9277                        break;
9278    
9279                    default :
9280                        if ( cnt111 >= 1 ) break loop111;
9281                        if (backtracking>0) {failed=true; return text;}
9282                            EarlyExitException eee =
9283                                new EarlyExitException(111, input);
9284                            throw eee;
9285                    }
9286                    cnt111++;
9287                } while (true);
9288    
9289    
9290                }
9291    
9292            }
9293            catch (RecognitionException re) {
9294                reportError(re);
9295                recover(input,re);
9296            }
9297            finally {
9298            }
9299            return text;
9300        }
9301        // $ANTLR end table_unformatted_text
9302    
9303    
9304        // $ANTLR start nowiki_block
9305        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:748:1: nowiki_block returns [NoWikiSectionNode nowikiNode] : nowikiblock_open_markup contents= nowiki_block_contents nowikiblock_close_markup paragraph_separator ;
9306        public final NoWikiSectionNode nowiki_block() throws RecognitionException {
9307            NoWikiSectionNode nowikiNode = null;
9308    
9309            nowiki_block_contents_return contents = null;
9310    
9311    
9312            try {
9313                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:749:2: ( nowikiblock_open_markup contents= nowiki_block_contents nowikiblock_close_markup paragraph_separator )
9314                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:749:4: nowikiblock_open_markup contents= nowiki_block_contents nowikiblock_close_markup paragraph_separator
9315                {
9316                pushFollow(FOLLOW_nowikiblock_open_markup_in_nowiki_block3026);
9317                nowikiblock_open_markup();
9318                _fsp--;
9319                if (failed) return nowikiNode;
9320                pushFollow(FOLLOW_nowiki_block_contents_in_nowiki_block3033);
9321                contents=nowiki_block_contents();
9322                _fsp--;
9323                if (failed) return nowikiNode;
9324                if ( backtracking==0 ) {
9325                  nowikiNode = new NoWikiSectionNode(input.toString(contents.start,contents.stop).toString());
9326                }
9327                pushFollow(FOLLOW_nowikiblock_close_markup_in_nowiki_block3039);
9328                nowikiblock_close_markup();
9329                _fsp--;
9330                if (failed) return nowikiNode;
9331                pushFollow(FOLLOW_paragraph_separator_in_nowiki_block3042);
9332                paragraph_separator();
9333                _fsp--;
9334                if (failed) return nowikiNode;
9335    
9336                }
9337    
9338            }
9339            catch (RecognitionException re) {
9340                reportError(re);
9341                recover(input,re);
9342            }
9343            finally {
9344            }
9345            return nowikiNode;
9346        }
9347        // $ANTLR end nowiki_block
9348    
9349    
9350        // $ANTLR start nowikiblock_open_markup
9351        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:753:1: nowikiblock_open_markup : nowiki_open_markup newline ;
9352        public final void nowikiblock_open_markup() throws RecognitionException {
9353            try {
9354                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:754:2: ( nowiki_open_markup newline )
9355                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:754:4: nowiki_open_markup newline
9356                {
9357                pushFollow(FOLLOW_nowiki_open_markup_in_nowikiblock_open_markup3053);
9358                nowiki_open_markup();
9359                _fsp--;
9360                if (failed) return ;
9361                pushFollow(FOLLOW_newline_in_nowikiblock_open_markup3056);
9362                newline();
9363                _fsp--;
9364                if (failed) return ;
9365    
9366                }
9367    
9368            }
9369            catch (RecognitionException re) {
9370                reportError(re);
9371                recover(input,re);
9372            }
9373            finally {
9374            }
9375            return ;
9376        }
9377        // $ANTLR end nowikiblock_open_markup
9378    
9379    
9380        // $ANTLR start nowikiblock_close_markup
9381        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:757:1: nowikiblock_close_markup : NOWIKI_BLOCK_CLOSE ;
9382        public final void nowikiblock_close_markup() throws RecognitionException {
9383            try {
9384                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:758:2: ( NOWIKI_BLOCK_CLOSE )
9385                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:758:4: NOWIKI_BLOCK_CLOSE
9386                {
9387                match(input,NOWIKI_BLOCK_CLOSE,FOLLOW_NOWIKI_BLOCK_CLOSE_in_nowikiblock_close_markup3067); if (failed) return ;
9388    
9389                }
9390    
9391            }
9392            catch (RecognitionException re) {
9393                reportError(re);
9394                recover(input,re);
9395            }
9396            finally {
9397            }
9398            return ;
9399        }
9400        // $ANTLR end nowikiblock_close_markup
9401    
9402    
9403        // $ANTLR start nowiki_inline
9404        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:761:1: nowiki_inline returns [NoWikiSectionNode nowiki = null] : nowiki_open_markup t= nowiki_inline_contents nowiki_close_markup ;
9405        public final NoWikiSectionNode nowiki_inline() throws RecognitionException {
9406            NoWikiSectionNode nowiki =  null;
9407    
9408            StringBundler t = null;
9409    
9410    
9411            try {
9412                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:762:2: ( nowiki_open_markup t= nowiki_inline_contents nowiki_close_markup )
9413                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:762:4: nowiki_open_markup t= nowiki_inline_contents nowiki_close_markup
9414                {
9415                pushFollow(FOLLOW_nowiki_open_markup_in_nowiki_inline3082);
9416                nowiki_open_markup();
9417                _fsp--;
9418                if (failed) return nowiki;
9419                pushFollow(FOLLOW_nowiki_inline_contents_in_nowiki_inline3089);
9420                t=nowiki_inline_contents();
9421                _fsp--;
9422                if (failed) return nowiki;
9423                pushFollow(FOLLOW_nowiki_close_markup_in_nowiki_inline3093);
9424                nowiki_close_markup();
9425                _fsp--;
9426                if (failed) return nowiki;
9427                if ( backtracking==0 ) {
9428                  nowiki = new NoWikiSectionNode(t.toString());
9429                }
9430    
9431                }
9432    
9433            }
9434            catch (RecognitionException re) {
9435                reportError(re);
9436                recover(input,re);
9437            }
9438            finally {
9439            }
9440            return nowiki;
9441        }
9442        // $ANTLR end nowiki_inline
9443    
9444        public static class nowiki_block_contents_return extends ParserRuleReturnScope {
9445            public StringBundler contents = new StringBundler();
9446        };
9447    
9448        // $ANTLR start nowiki_block_contents
9449        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:765:1: nowiki_block_contents returns [StringBundler contents = new StringBundler()] : (c=~ ( NOWIKI_BLOCK_CLOSE | EOF ) )* ;
9450        public final nowiki_block_contents_return nowiki_block_contents() throws RecognitionException {
9451            nowiki_block_contents_return retval = new nowiki_block_contents_return();
9452            retval.start = input.LT(1);
9453    
9454            Token c=null;
9455    
9456            try {
9457                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:766:2: ( (c=~ ( NOWIKI_BLOCK_CLOSE | EOF ) )* )
9458                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:766:3: (c=~ ( NOWIKI_BLOCK_CLOSE | EOF ) )*
9459                {
9460                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:766:3: (c=~ ( NOWIKI_BLOCK_CLOSE | EOF ) )*
9461                loop112:
9462                do {
9463                    int alt112=2;
9464                    int LA112_0 = input.LA(1);
9465    
9466                    if ( ((LA112_0>=FORCED_END_OF_LINE && LA112_0<=ESCAPE)||(LA112_0>=NOWIKI_CLOSE && LA112_0<=79)) ) {
9467                        alt112=1;
9468                    }
9469    
9470    
9471                    switch (alt112) {
9472                    case 1 :
9473                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:766:4: c=~ ( NOWIKI_BLOCK_CLOSE | EOF )
9474                        {
9475                        c=(Token)input.LT(1);
9476                        if ( (input.LA(1)>=FORCED_END_OF_LINE && input.LA(1)<=ESCAPE)||(input.LA(1)>=NOWIKI_CLOSE && input.LA(1)<=79) ) {
9477                            input.consume();
9478                            errorRecovery=false;failed=false;
9479                        }
9480                        else {
9481                            if (backtracking>0) {failed=true; return retval;}
9482                            MismatchedSetException mse =
9483                                new MismatchedSetException(null,input);
9484                            recoverFromMismatchedSet(input,mse,FOLLOW_set_in_nowiki_block_contents3111);    throw mse;
9485                        }
9486    
9487                        if ( backtracking==0 ) {
9488                          retval.contents.append(c.getText());
9489                        }
9490    
9491                        }
9492                        break;
9493    
9494                    default :
9495                        break loop112;
9496                    }
9497                } while (true);
9498    
9499    
9500                }
9501    
9502                retval.stop = input.LT(-1);
9503    
9504            }
9505            catch (RecognitionException re) {
9506                reportError(re);
9507                recover(input,re);
9508            }
9509            finally {
9510            }
9511            return retval;
9512        }
9513        // $ANTLR end nowiki_block_contents
9514    
9515    
9516        // $ANTLR start nowiki_inline_contents
9517        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:769:1: nowiki_inline_contents returns [StringBundler text = new StringBundler()] : (c=~ ( NOWIKI_CLOSE | NEWLINE | EOF ) )* ;
9518        public final StringBundler nowiki_inline_contents() throws RecognitionException {
9519            StringBundler text =  new StringBundler();
9520    
9521            Token c=null;
9522    
9523            try {
9524                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:770:2: ( (c=~ ( NOWIKI_CLOSE | NEWLINE | EOF ) )* )
9525                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:770:4: (c=~ ( NOWIKI_CLOSE | NEWLINE | EOF ) )*
9526                {
9527                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:770:4: (c=~ ( NOWIKI_CLOSE | NEWLINE | EOF ) )*
9528                loop113:
9529                do {
9530                    int alt113=2;
9531                    int LA113_0 = input.LA(1);
9532    
9533                    if ( ((LA113_0>=FORCED_END_OF_LINE && LA113_0<=WIKI)||(LA113_0>=POUND && LA113_0<=NOWIKI_BLOCK_CLOSE)||(LA113_0>=LINK_CLOSE && LA113_0<=79)) ) {
9534                        alt113=1;
9535                    }
9536    
9537    
9538                    switch (alt113) {
9539                    case 1 :
9540                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:770:5: c=~ ( NOWIKI_CLOSE | NEWLINE | EOF )
9541                        {
9542                        c=(Token)input.LT(1);
9543                        if ( (input.LA(1)>=FORCED_END_OF_LINE && input.LA(1)<=WIKI)||(input.LA(1)>=POUND && input.LA(1)<=NOWIKI_BLOCK_CLOSE)||(input.LA(1)>=LINK_CLOSE && input.LA(1)<=79) ) {
9544                            input.consume();
9545                            errorRecovery=false;failed=false;
9546                        }
9547                        else {
9548                            if (backtracking>0) {failed=true; return text;}
9549                            MismatchedSetException mse =
9550                                new MismatchedSetException(null,input);
9551                            recoverFromMismatchedSet(input,mse,FOLLOW_set_in_nowiki_inline_contents3144);    throw mse;
9552                        }
9553    
9554                        if ( backtracking==0 ) {
9555                           text.append(c.getText()); 
9556                        }
9557    
9558                        }
9559                        break;
9560    
9561                    default :
9562                        break loop113;
9563                    }
9564                } while (true);
9565    
9566    
9567                }
9568    
9569            }
9570            catch (RecognitionException re) {
9571                reportError(re);
9572                recover(input,re);
9573            }
9574            finally {
9575            }
9576            return text;
9577        }
9578        // $ANTLR end nowiki_inline_contents
9579    
9580    
9581        // $ANTLR start horizontalrule
9582        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:777:1: horizontalrule returns [ASTNode horizontal = null] : horizontalrule_markup ( blanks )? paragraph_separator ;
9583        public final ASTNode horizontalrule() throws RecognitionException {
9584            ASTNode horizontal =  null;
9585    
9586            try {
9587                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:778:2: ( horizontalrule_markup ( blanks )? paragraph_separator )
9588                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:778:4: horizontalrule_markup ( blanks )? paragraph_separator
9589                {
9590                pushFollow(FOLLOW_horizontalrule_markup_in_horizontalrule3180);
9591                horizontalrule_markup();
9592                _fsp--;
9593                if (failed) return horizontal;
9594                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:778:27: ( blanks )?
9595                int alt114=2;
9596                int LA114_0 = input.LA(1);
9597    
9598                if ( (LA114_0==BLANKS) ) {
9599                    alt114=1;
9600                }
9601                switch (alt114) {
9602                    case 1 :
9603                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:778:29: blanks
9604                        {
9605                        pushFollow(FOLLOW_blanks_in_horizontalrule3185);
9606                        blanks();
9607                        _fsp--;
9608                        if (failed) return horizontal;
9609    
9610                        }
9611                        break;
9612    
9613                }
9614    
9615                pushFollow(FOLLOW_paragraph_separator_in_horizontalrule3191);
9616                paragraph_separator();
9617                _fsp--;
9618                if (failed) return horizontal;
9619                if ( backtracking==0 ) {
9620                  horizontal = new HorizontalNode();
9621                }
9622    
9623                }
9624    
9625            }
9626            catch (RecognitionException re) {
9627                reportError(re);
9628                recover(input,re);
9629            }
9630            finally {
9631            }
9632            return horizontal;
9633        }
9634        // $ANTLR end horizontalrule
9635    
9636    
9637        // $ANTLR start link
9638        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:785:1: link returns [LinkNode link = null] : link_open_markup a= link_address ( link_description_markup d= link_description )? link_close_markup ;
9639        public final LinkNode link() throws RecognitionException {
9640            LinkNode link =  null;
9641    
9642            LinkNode a = null;
9643    
9644            CollectionNode d = null;
9645    
9646    
9647            try {
9648                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:786:2: ( link_open_markup a= link_address ( link_description_markup d= link_description )? link_close_markup )
9649                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:786:4: link_open_markup a= link_address ( link_description_markup d= link_description )? link_close_markup
9650                {
9651                pushFollow(FOLLOW_link_open_markup_in_link3212);
9652                link_open_markup();
9653                _fsp--;
9654                if (failed) return link;
9655                pushFollow(FOLLOW_link_address_in_link3218);
9656                a=link_address();
9657                _fsp--;
9658                if (failed) return link;
9659                if ( backtracking==0 ) {
9660                  link = a; 
9661                }
9662                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:786:59: ( link_description_markup d= link_description )?
9663                int alt115=2;
9664                int LA115_0 = input.LA(1);
9665    
9666                if ( (LA115_0==PIPE) ) {
9667                    alt115=1;
9668                }
9669                switch (alt115) {
9670                    case 1 :
9671                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:786:60: link_description_markup d= link_description
9672                        {
9673                        pushFollow(FOLLOW_link_description_markup_in_link3224);
9674                        link_description_markup();
9675                        _fsp--;
9676                        if (failed) return link;
9677                        pushFollow(FOLLOW_link_description_in_link3232);
9678                        d=link_description();
9679                        _fsp--;
9680                        if (failed) return link;
9681                        if ( backtracking==0 ) {
9682    
9683                                            if (link == null) { // recover from possible errors
9684                                                link = new LinkNode();
9685                                            }
9686                                            link.setAltCollectionNode(d);
9687    
9688                                            
9689                        }
9690    
9691                        }
9692                        break;
9693    
9694                }
9695    
9696                pushFollow(FOLLOW_link_close_markup_in_link3240);
9697                link_close_markup();
9698                _fsp--;
9699                if (failed) return link;
9700    
9701                }
9702    
9703            }
9704            catch (RecognitionException re) {
9705                reportError(re);
9706                recover(input,re);
9707            }
9708            finally {
9709            }
9710            return link;
9711        }
9712        // $ANTLR end link
9713    
9714    
9715        // $ANTLR start link_address
9716        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );
9717        public final LinkNode link_address() throws RecognitionException {
9718            LinkNode link = null;
9719    
9720            InterwikiLinkNode li = null;
9721    
9722            StringBundler p = null;
9723    
9724            StringBundler lu = null;
9725    
9726    
9727            try {
9728                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:797:2: (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri )
9729                int alt116=2;
9730                switch ( input.LA(1) ) {
9731                case 45:
9732                    {
9733                    int LA116_1 = input.LA(2);
9734    
9735                    if ( (LA116_1==46) ) {
9736                        int LA116_16 = input.LA(3);
9737    
9738                        if ( ((LA116_16>=FORCED_END_OF_LINE && LA116_16<=WIKI)||(LA116_16>=POUND && LA116_16<=INSIGNIFICANT_CHAR)||(LA116_16>=45 && LA116_16<=79)) ) {
9739                            alt116=2;
9740                        }
9741                        else if ( (LA116_16==44) ) {
9742                            int LA116_34 = input.LA(4);
9743    
9744                            if ( ((LA116_34>=FORCED_END_OF_LINE && LA116_34<=WIKI)||(LA116_34>=POUND && LA116_34<=EQUAL)||(LA116_34>=ITAL && LA116_34<=NOWIKI_CLOSE)||(LA116_34>=IMAGE_CLOSE && LA116_34<=79)) ) {
9745                                alt116=1;
9746                            }
9747                            else if ( (LA116_34==PIPE||LA116_34==LINK_CLOSE) ) {
9748                                alt116=2;
9749                            }
9750                            else {
9751                                if (backtracking>0) {failed=true; return link;}
9752                                NoViableAltException nvae =
9753                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 34, input);
9754    
9755                                throw nvae;
9756                            }
9757                        }
9758                        else {
9759                            if (backtracking>0) {failed=true; return link;}
9760                            NoViableAltException nvae =
9761                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 16, input);
9762    
9763                            throw nvae;
9764                        }
9765                    }
9766                    else if ( ((LA116_1>=FORCED_END_OF_LINE && LA116_1<=WIKI)||(LA116_1>=POUND && LA116_1<=45)||(LA116_1>=47 && LA116_1<=79)) ) {
9767                        alt116=2;
9768                    }
9769                    else {
9770                        if (backtracking>0) {failed=true; return link;}
9771                        NoViableAltException nvae =
9772                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 1, input);
9773    
9774                        throw nvae;
9775                    }
9776                    }
9777                    break;
9778                case 47:
9779                    {
9780                    int LA116_2 = input.LA(2);
9781    
9782                    if ( (LA116_2==48) ) {
9783                        int LA116_17 = input.LA(3);
9784    
9785                        if ( (LA116_17==49) ) {
9786                            int LA116_35 = input.LA(4);
9787    
9788                            if ( (LA116_35==50) ) {
9789                                int LA116_55 = input.LA(5);
9790    
9791                                if ( (LA116_55==51) ) {
9792                                    int LA116_74 = input.LA(6);
9793    
9794                                    if ( (LA116_74==52) ) {
9795                                        int LA116_93 = input.LA(7);
9796    
9797                                        if ( (LA116_93==49) ) {
9798                                            int LA116_109 = input.LA(8);
9799    
9800                                            if ( (LA116_109==52) ) {
9801                                                int LA116_120 = input.LA(9);
9802    
9803                                                if ( ((LA116_120>=FORCED_END_OF_LINE && LA116_120<=WIKI)||(LA116_120>=POUND && LA116_120<=INSIGNIFICANT_CHAR)||(LA116_120>=45 && LA116_120<=79)) ) {
9804                                                    alt116=2;
9805                                                }
9806                                                else if ( (LA116_120==44) ) {
9807                                                    int LA116_34 = input.LA(10);
9808    
9809                                                    if ( ((LA116_34>=FORCED_END_OF_LINE && LA116_34<=WIKI)||(LA116_34>=POUND && LA116_34<=EQUAL)||(LA116_34>=ITAL && LA116_34<=NOWIKI_CLOSE)||(LA116_34>=IMAGE_CLOSE && LA116_34<=79)) ) {
9810                                                        alt116=1;
9811                                                    }
9812                                                    else if ( (LA116_34==PIPE||LA116_34==LINK_CLOSE) ) {
9813                                                        alt116=2;
9814                                                    }
9815                                                    else {
9816                                                        if (backtracking>0) {failed=true; return link;}
9817                                                        NoViableAltException nvae =
9818                                                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 34, input);
9819    
9820                                                        throw nvae;
9821                                                    }
9822                                                }
9823                                                else {
9824                                                    if (backtracking>0) {failed=true; return link;}
9825                                                    NoViableAltException nvae =
9826                                                        new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 120, input);
9827    
9828                                                    throw nvae;
9829                                                }
9830                                            }
9831                                            else if ( ((LA116_109>=FORCED_END_OF_LINE && LA116_109<=WIKI)||(LA116_109>=POUND && LA116_109<=51)||(LA116_109>=53 && LA116_109<=79)) ) {
9832                                                alt116=2;
9833                                            }
9834                                            else {
9835                                                if (backtracking>0) {failed=true; return link;}
9836                                                NoViableAltException nvae =
9837                                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 109, input);
9838    
9839                                                throw nvae;
9840                                            }
9841                                        }
9842                                        else if ( ((LA116_93>=FORCED_END_OF_LINE && LA116_93<=WIKI)||(LA116_93>=POUND && LA116_93<=48)||(LA116_93>=50 && LA116_93<=79)) ) {
9843                                            alt116=2;
9844                                        }
9845                                        else {
9846                                            if (backtracking>0) {failed=true; return link;}
9847                                            NoViableAltException nvae =
9848                                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 93, input);
9849    
9850                                            throw nvae;
9851                                        }
9852                                    }
9853                                    else if ( ((LA116_74>=FORCED_END_OF_LINE && LA116_74<=WIKI)||(LA116_74>=POUND && LA116_74<=51)||(LA116_74>=53 && LA116_74<=79)) ) {
9854                                        alt116=2;
9855                                    }
9856                                    else {
9857                                        if (backtracking>0) {failed=true; return link;}
9858                                        NoViableAltException nvae =
9859                                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 74, input);
9860    
9861                                        throw nvae;
9862                                    }
9863                                }
9864                                else if ( ((LA116_55>=FORCED_END_OF_LINE && LA116_55<=WIKI)||(LA116_55>=POUND && LA116_55<=50)||(LA116_55>=52 && LA116_55<=79)) ) {
9865                                    alt116=2;
9866                                }
9867                                else {
9868                                    if (backtracking>0) {failed=true; return link;}
9869                                    NoViableAltException nvae =
9870                                        new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 55, input);
9871    
9872                                    throw nvae;
9873                                }
9874                            }
9875                            else if ( ((LA116_35>=FORCED_END_OF_LINE && LA116_35<=WIKI)||(LA116_35>=POUND && LA116_35<=49)||(LA116_35>=51 && LA116_35<=79)) ) {
9876                                alt116=2;
9877                            }
9878                            else {
9879                                if (backtracking>0) {failed=true; return link;}
9880                                NoViableAltException nvae =
9881                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 35, input);
9882    
9883                                throw nvae;
9884                            }
9885                        }
9886                        else if ( ((LA116_17>=FORCED_END_OF_LINE && LA116_17<=WIKI)||(LA116_17>=POUND && LA116_17<=48)||(LA116_17>=50 && LA116_17<=79)) ) {
9887                            alt116=2;
9888                        }
9889                        else {
9890                            if (backtracking>0) {failed=true; return link;}
9891                            NoViableAltException nvae =
9892                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 17, input);
9893    
9894                            throw nvae;
9895                        }
9896                    }
9897                    else if ( ((LA116_2>=FORCED_END_OF_LINE && LA116_2<=WIKI)||(LA116_2>=POUND && LA116_2<=47)||(LA116_2>=49 && LA116_2<=79)) ) {
9898                        alt116=2;
9899                    }
9900                    else {
9901                        if (backtracking>0) {failed=true; return link;}
9902                        NoViableAltException nvae =
9903                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 2, input);
9904    
9905                        throw nvae;
9906                    }
9907                    }
9908                    break;
9909                case 53:
9910                    {
9911                    int LA116_3 = input.LA(2);
9912    
9913                    if ( (LA116_3==54) ) {
9914                        int LA116_18 = input.LA(3);
9915    
9916                        if ( (LA116_18==52) ) {
9917                            int LA116_36 = input.LA(4);
9918    
9919                            if ( (LA116_36==55) ) {
9920                                int LA116_56 = input.LA(5);
9921    
9922                                if ( (LA116_56==49) ) {
9923                                    int LA116_75 = input.LA(6);
9924    
9925                                    if ( (LA116_75==56) ) {
9926                                        int LA116_94 = input.LA(7);
9927    
9928                                        if ( ((LA116_94>=FORCED_END_OF_LINE && LA116_94<=WIKI)||(LA116_94>=POUND && LA116_94<=INSIGNIFICANT_CHAR)||(LA116_94>=45 && LA116_94<=79)) ) {
9929                                            alt116=2;
9930                                        }
9931                                        else if ( (LA116_94==44) ) {
9932                                            int LA116_34 = input.LA(8);
9933    
9934                                            if ( ((LA116_34>=FORCED_END_OF_LINE && LA116_34<=WIKI)||(LA116_34>=POUND && LA116_34<=EQUAL)||(LA116_34>=ITAL && LA116_34<=NOWIKI_CLOSE)||(LA116_34>=IMAGE_CLOSE && LA116_34<=79)) ) {
9935                                                alt116=1;
9936                                            }
9937                                            else if ( (LA116_34==PIPE||LA116_34==LINK_CLOSE) ) {
9938                                                alt116=2;
9939                                            }
9940                                            else {
9941                                                if (backtracking>0) {failed=true; return link;}
9942                                                NoViableAltException nvae =
9943                                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 34, input);
9944    
9945                                                throw nvae;
9946                                            }
9947                                        }
9948                                        else {
9949                                            if (backtracking>0) {failed=true; return link;}
9950                                            NoViableAltException nvae =
9951                                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 94, input);
9952    
9953                                            throw nvae;
9954                                        }
9955                                    }
9956                                    else if ( ((LA116_75>=FORCED_END_OF_LINE && LA116_75<=WIKI)||(LA116_75>=POUND && LA116_75<=55)||(LA116_75>=57 && LA116_75<=79)) ) {
9957                                        alt116=2;
9958                                    }
9959                                    else {
9960                                        if (backtracking>0) {failed=true; return link;}
9961                                        NoViableAltException nvae =
9962                                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 75, input);
9963    
9964                                        throw nvae;
9965                                    }
9966                                }
9967                                else if ( ((LA116_56>=FORCED_END_OF_LINE && LA116_56<=WIKI)||(LA116_56>=POUND && LA116_56<=48)||(LA116_56>=50 && LA116_56<=79)) ) {
9968                                    alt116=2;
9969                                }
9970                                else {
9971                                    if (backtracking>0) {failed=true; return link;}
9972                                    NoViableAltException nvae =
9973                                        new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 56, input);
9974    
9975                                    throw nvae;
9976                                }
9977                            }
9978                            else if ( ((LA116_36>=FORCED_END_OF_LINE && LA116_36<=WIKI)||(LA116_36>=POUND && LA116_36<=54)||(LA116_36>=56 && LA116_36<=79)) ) {
9979                                alt116=2;
9980                            }
9981                            else {
9982                                if (backtracking>0) {failed=true; return link;}
9983                                NoViableAltException nvae =
9984                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 36, input);
9985    
9986                                throw nvae;
9987                            }
9988                        }
9989                        else if ( ((LA116_18>=FORCED_END_OF_LINE && LA116_18<=WIKI)||(LA116_18>=POUND && LA116_18<=51)||(LA116_18>=53 && LA116_18<=79)) ) {
9990                            alt116=2;
9991                        }
9992                        else {
9993                            if (backtracking>0) {failed=true; return link;}
9994                            NoViableAltException nvae =
9995                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 18, input);
9996    
9997                            throw nvae;
9998                        }
9999                    }
10000                    else if ( ((LA116_3>=FORCED_END_OF_LINE && LA116_3<=WIKI)||(LA116_3>=POUND && LA116_3<=53)||(LA116_3>=55 && LA116_3<=79)) ) {
10001                        alt116=2;
10002                    }
10003                    else {
10004                        if (backtracking>0) {failed=true; return link;}
10005                        NoViableAltException nvae =
10006                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 3, input);
10007    
10008                        throw nvae;
10009                    }
10010                    }
10011                    break;
10012                case 57:
10013                    {
10014                    int LA116_4 = input.LA(2);
10015    
10016                    if ( (LA116_4==48) ) {
10017                        int LA116_19 = input.LA(3);
10018    
10019                        if ( (LA116_19==48) ) {
10020                            int LA116_37 = input.LA(4);
10021    
10022                            if ( (LA116_37==58) ) {
10023                                int LA116_57 = input.LA(5);
10024    
10025                                if ( (LA116_57==54) ) {
10026                                    int LA116_76 = input.LA(6);
10027    
10028                                    if ( (LA116_76==59) ) {
10029                                        int LA116_95 = input.LA(7);
10030    
10031                                        if ( (LA116_95==44) ) {
10032                                            int LA116_34 = input.LA(8);
10033    
10034                                            if ( ((LA116_34>=FORCED_END_OF_LINE && LA116_34<=WIKI)||(LA116_34>=POUND && LA116_34<=EQUAL)||(LA116_34>=ITAL && LA116_34<=NOWIKI_CLOSE)||(LA116_34>=IMAGE_CLOSE && LA116_34<=79)) ) {
10035                                                alt116=1;
10036                                            }
10037                                            else if ( (LA116_34==PIPE||LA116_34==LINK_CLOSE) ) {
10038                                                alt116=2;
10039                                            }
10040                                            else {
10041                                                if (backtracking>0) {failed=true; return link;}
10042                                                NoViableAltException nvae =
10043                                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 34, input);
10044    
10045                                                throw nvae;
10046                                            }
10047                                        }
10048                                        else if ( ((LA116_95>=FORCED_END_OF_LINE && LA116_95<=WIKI)||(LA116_95>=POUND && LA116_95<=INSIGNIFICANT_CHAR)||(LA116_95>=45 && LA116_95<=79)) ) {
10049                                            alt116=2;
10050                                        }
10051                                        else {
10052                                            if (backtracking>0) {failed=true; return link;}
10053                                            NoViableAltException nvae =
10054                                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 95, input);
10055    
10056                                            throw nvae;
10057                                        }
10058                                    }
10059                                    else if ( ((LA116_76>=FORCED_END_OF_LINE && LA116_76<=WIKI)||(LA116_76>=POUND && LA116_76<=58)||(LA116_76>=60 && LA116_76<=79)) ) {
10060                                        alt116=2;
10061                                    }
10062                                    else {
10063                                        if (backtracking>0) {failed=true; return link;}
10064                                        NoViableAltException nvae =
10065                                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 76, input);
10066    
10067                                        throw nvae;
10068                                    }
10069                                }
10070                                else if ( ((LA116_57>=FORCED_END_OF_LINE && LA116_57<=WIKI)||(LA116_57>=POUND && LA116_57<=53)||(LA116_57>=55 && LA116_57<=79)) ) {
10071                                    alt116=2;
10072                                }
10073                                else {
10074                                    if (backtracking>0) {failed=true; return link;}
10075                                    NoViableAltException nvae =
10076                                        new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 57, input);
10077    
10078                                    throw nvae;
10079                                }
10080                            }
10081                            else if ( ((LA116_37>=FORCED_END_OF_LINE && LA116_37<=WIKI)||(LA116_37>=POUND && LA116_37<=57)||(LA116_37>=59 && LA116_37<=79)) ) {
10082                                alt116=2;
10083                            }
10084                            else {
10085                                if (backtracking>0) {failed=true; return link;}
10086                                NoViableAltException nvae =
10087                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 37, input);
10088    
10089                                throw nvae;
10090                            }
10091                        }
10092                        else if ( ((LA116_19>=FORCED_END_OF_LINE && LA116_19<=WIKI)||(LA116_19>=POUND && LA116_19<=47)||(LA116_19>=49 && LA116_19<=79)) ) {
10093                            alt116=2;
10094                        }
10095                        else {
10096                            if (backtracking>0) {failed=true; return link;}
10097                            NoViableAltException nvae =
10098                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 19, input);
10099    
10100                            throw nvae;
10101                        }
10102                    }
10103                    else if ( ((LA116_4>=FORCED_END_OF_LINE && LA116_4<=WIKI)||(LA116_4>=POUND && LA116_4<=47)||(LA116_4>=49 && LA116_4<=79)) ) {
10104                        alt116=2;
10105                    }
10106                    else {
10107                        if (backtracking>0) {failed=true; return link;}
10108                        NoViableAltException nvae =
10109                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 4, input);
10110    
10111                        throw nvae;
10112                    }
10113                    }
10114                    break;
10115                case 60:
10116                    {
10117                    int LA116_5 = input.LA(2);
10118    
10119                    if ( (LA116_5==61) ) {
10120                        int LA116_20 = input.LA(3);
10121    
10122                        if ( (LA116_20==62) ) {
10123                            int LA116_38 = input.LA(4);
10124    
10125                            if ( (LA116_38==51) ) {
10126                                int LA116_58 = input.LA(5);
10127    
10128                                if ( (LA116_58==52) ) {
10129                                    int LA116_77 = input.LA(6);
10130    
10131                                    if ( (LA116_77==49) ) {
10132                                        int LA116_96 = input.LA(7);
10133    
10134                                        if ( (LA116_96==52) ) {
10135                                            int LA116_110 = input.LA(8);
10136    
10137                                            if ( ((LA116_110>=FORCED_END_OF_LINE && LA116_110<=WIKI)||(LA116_110>=POUND && LA116_110<=INSIGNIFICANT_CHAR)||(LA116_110>=45 && LA116_110<=79)) ) {
10138                                                alt116=2;
10139                                            }
10140                                            else if ( (LA116_110==44) ) {
10141                                                int LA116_34 = input.LA(9);
10142    
10143                                                if ( ((LA116_34>=FORCED_END_OF_LINE && LA116_34<=WIKI)||(LA116_34>=POUND && LA116_34<=EQUAL)||(LA116_34>=ITAL && LA116_34<=NOWIKI_CLOSE)||(LA116_34>=IMAGE_CLOSE && LA116_34<=79)) ) {
10144                                                    alt116=1;
10145                                                }
10146                                                else if ( (LA116_34==PIPE||LA116_34==LINK_CLOSE) ) {
10147                                                    alt116=2;
10148                                                }
10149                                                else {
10150                                                    if (backtracking>0) {failed=true; return link;}
10151                                                    NoViableAltException nvae =
10152                                                        new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 34, input);
10153    
10154                                                    throw nvae;
10155                                                }
10156                                            }
10157                                            else {
10158                                                if (backtracking>0) {failed=true; return link;}
10159                                                NoViableAltException nvae =
10160                                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 110, input);
10161    
10162                                                throw nvae;
10163                                            }
10164                                        }
10165                                        else if ( ((LA116_96>=FORCED_END_OF_LINE && LA116_96<=WIKI)||(LA116_96>=POUND && LA116_96<=51)||(LA116_96>=53 && LA116_96<=79)) ) {
10166                                            alt116=2;
10167                                        }
10168                                        else {
10169                                            if (backtracking>0) {failed=true; return link;}
10170                                            NoViableAltException nvae =
10171                                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 96, input);
10172    
10173                                            throw nvae;
10174                                        }
10175                                    }
10176                                    else if ( ((LA116_77>=FORCED_END_OF_LINE && LA116_77<=WIKI)||(LA116_77>=POUND && LA116_77<=48)||(LA116_77>=50 && LA116_77<=79)) ) {
10177                                        alt116=2;
10178                                    }
10179                                    else {
10180                                        if (backtracking>0) {failed=true; return link;}
10181                                        NoViableAltException nvae =
10182                                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 77, input);
10183    
10184                                        throw nvae;
10185                                    }
10186                                }
10187                                else if ( ((LA116_58>=FORCED_END_OF_LINE && LA116_58<=WIKI)||(LA116_58>=POUND && LA116_58<=51)||(LA116_58>=53 && LA116_58<=79)) ) {
10188                                    alt116=2;
10189                                }
10190                                else {
10191                                    if (backtracking>0) {failed=true; return link;}
10192                                    NoViableAltException nvae =
10193                                        new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 58, input);
10194    
10195                                    throw nvae;
10196                                }
10197                            }
10198                            else if ( ((LA116_38>=FORCED_END_OF_LINE && LA116_38<=WIKI)||(LA116_38>=POUND && LA116_38<=50)||(LA116_38>=52 && LA116_38<=79)) ) {
10199                                alt116=2;
10200                            }
10201                            else {
10202                                if (backtracking>0) {failed=true; return link;}
10203                                NoViableAltException nvae =
10204                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 38, input);
10205    
10206                                throw nvae;
10207                            }
10208                        }
10209                        else if ( ((LA116_20>=FORCED_END_OF_LINE && LA116_20<=WIKI)||(LA116_20>=POUND && LA116_20<=61)||(LA116_20>=63 && LA116_20<=79)) ) {
10210                            alt116=2;
10211                        }
10212                        else {
10213                            if (backtracking>0) {failed=true; return link;}
10214                            NoViableAltException nvae =
10215                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 20, input);
10216    
10217                            throw nvae;
10218                        }
10219                    }
10220                    else if ( ((LA116_5>=FORCED_END_OF_LINE && LA116_5<=WIKI)||(LA116_5>=POUND && LA116_5<=60)||(LA116_5>=62 && LA116_5<=79)) ) {
10221                        alt116=2;
10222                    }
10223                    else {
10224                        if (backtracking>0) {failed=true; return link;}
10225                        NoViableAltException nvae =
10226                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 5, input);
10227    
10228                        throw nvae;
10229                    }
10230                    }
10231                    break;
10232                case 63:
10233                    {
10234                    switch ( input.LA(2) ) {
10235                    case 48:
10236                        {
10237                        int LA116_21 = input.LA(3);
10238    
10239                        if ( (LA116_21==52) ) {
10240                            int LA116_39 = input.LA(4);
10241    
10242                            if ( (LA116_39==68) ) {
10243                                int LA116_59 = input.LA(5);
10244    
10245                                if ( (LA116_59==63) ) {
10246                                    int LA116_78 = input.LA(6);
10247    
10248                                    if ( (LA116_78==48) ) {
10249                                        int LA116_97 = input.LA(7);
10250    
10251                                        if ( (LA116_97==52) ) {
10252                                            int LA116_111 = input.LA(8);
10253    
10254                                            if ( (LA116_111==68) ) {
10255                                                int LA116_121 = input.LA(9);
10256    
10257                                                if ( ((LA116_121>=FORCED_END_OF_LINE && LA116_121<=WIKI)||(LA116_121>=POUND && LA116_121<=INSIGNIFICANT_CHAR)||(LA116_121>=45 && LA116_121<=79)) ) {
10258                                                    alt116=2;
10259                                                }
10260                                                else if ( (LA116_121==44) ) {
10261                                                    int LA116_34 = input.LA(10);
10262    
10263                                                    if ( ((LA116_34>=FORCED_END_OF_LINE && LA116_34<=WIKI)||(LA116_34>=POUND && LA116_34<=EQUAL)||(LA116_34>=ITAL && LA116_34<=NOWIKI_CLOSE)||(LA116_34>=IMAGE_CLOSE && LA116_34<=79)) ) {
10264                                                        alt116=1;
10265                                                    }
10266                                                    else if ( (LA116_34==PIPE||LA116_34==LINK_CLOSE) ) {
10267                                                        alt116=2;
10268                                                    }
10269                                                    else {
10270                                                        if (backtracking>0) {failed=true; return link;}
10271                                                        NoViableAltException nvae =
10272                                                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 34, input);
10273    
10274                                                        throw nvae;
10275                                                    }
10276                                                }
10277                                                else {
10278                                                    if (backtracking>0) {failed=true; return link;}
10279                                                    NoViableAltException nvae =
10280                                                        new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 121, input);
10281    
10282                                                    throw nvae;
10283                                                }
10284                                            }
10285                                            else if ( ((LA116_111>=FORCED_END_OF_LINE && LA116_111<=WIKI)||(LA116_111>=POUND && LA116_111<=67)||(LA116_111>=69 && LA116_111<=79)) ) {
10286                                                alt116=2;
10287                                            }
10288                                            else {
10289                                                if (backtracking>0) {failed=true; return link;}
10290                                                NoViableAltException nvae =
10291                                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 111, input);
10292    
10293                                                throw nvae;
10294                                            }
10295                                        }
10296                                        else if ( ((LA116_97>=FORCED_END_OF_LINE && LA116_97<=WIKI)||(LA116_97>=POUND && LA116_97<=51)||(LA116_97>=53 && LA116_97<=79)) ) {
10297                                            alt116=2;
10298                                        }
10299                                        else {
10300                                            if (backtracking>0) {failed=true; return link;}
10301                                            NoViableAltException nvae =
10302                                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 97, input);
10303    
10304                                            throw nvae;
10305                                        }
10306                                    }
10307                                    else if ( ((LA116_78>=FORCED_END_OF_LINE && LA116_78<=WIKI)||(LA116_78>=POUND && LA116_78<=47)||(LA116_78>=49 && LA116_78<=79)) ) {
10308                                        alt116=2;
10309                                    }
10310                                    else {
10311                                        if (backtracking>0) {failed=true; return link;}
10312                                        NoViableAltException nvae =
10313                                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 78, input);
10314    
10315                                        throw nvae;
10316                                    }
10317                                }
10318                                else if ( ((LA116_59>=FORCED_END_OF_LINE && LA116_59<=WIKI)||(LA116_59>=POUND && LA116_59<=62)||(LA116_59>=64 && LA116_59<=79)) ) {
10319                                    alt116=2;
10320                                }
10321                                else {
10322                                    if (backtracking>0) {failed=true; return link;}
10323                                    NoViableAltException nvae =
10324                                        new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 59, input);
10325    
10326                                    throw nvae;
10327                                }
10328                            }
10329                            else if ( ((LA116_39>=FORCED_END_OF_LINE && LA116_39<=WIKI)||(LA116_39>=POUND && LA116_39<=67)||(LA116_39>=69 && LA116_39<=79)) ) {
10330                                alt116=2;
10331                            }
10332                            else {
10333                                if (backtracking>0) {failed=true; return link;}
10334                                NoViableAltException nvae =
10335                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 39, input);
10336    
10337                                throw nvae;
10338                            }
10339                        }
10340                        else if ( ((LA116_21>=FORCED_END_OF_LINE && LA116_21<=WIKI)||(LA116_21>=POUND && LA116_21<=51)||(LA116_21>=53 && LA116_21<=79)) ) {
10341                            alt116=2;
10342                        }
10343                        else {
10344                            if (backtracking>0) {failed=true; return link;}
10345                            NoViableAltException nvae =
10346                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 21, input);
10347    
10348                            throw nvae;
10349                        }
10350                        }
10351                        break;
10352                    case 59:
10353                        {
10354                        switch ( input.LA(3) ) {
10355                        case 67:
10356                            {
10357                            int LA116_40 = input.LA(4);
10358    
10359                            if ( (LA116_40==52) ) {
10360                                int LA116_60 = input.LA(5);
10361    
10362                                if ( (LA116_60==64) ) {
10363                                    int LA116_79 = input.LA(6);
10364    
10365                                    if ( (LA116_79==51) ) {
10366                                        int LA116_98 = input.LA(7);
10367    
10368                                        if ( (LA116_98==52) ) {
10369                                            int LA116_112 = input.LA(8);
10370    
10371                                            if ( (LA116_112==49) ) {
10372                                                int LA116_122 = input.LA(9);
10373    
10374                                                if ( (LA116_122==52) ) {
10375                                                    int LA116_129 = input.LA(10);
10376    
10377                                                    if ( ((LA116_129>=FORCED_END_OF_LINE && LA116_129<=WIKI)||(LA116_129>=POUND && LA116_129<=INSIGNIFICANT_CHAR)||(LA116_129>=45 && LA116_129<=79)) ) {
10378                                                        alt116=2;
10379                                                    }
10380                                                    else if ( (LA116_129==44) ) {
10381                                                        int LA116_34 = input.LA(11);
10382    
10383                                                        if ( ((LA116_34>=FORCED_END_OF_LINE && LA116_34<=WIKI)||(LA116_34>=POUND && LA116_34<=EQUAL)||(LA116_34>=ITAL && LA116_34<=NOWIKI_CLOSE)||(LA116_34>=IMAGE_CLOSE && LA116_34<=79)) ) {
10384                                                            alt116=1;
10385                                                        }
10386                                                        else if ( (LA116_34==PIPE||LA116_34==LINK_CLOSE) ) {
10387                                                            alt116=2;
10388                                                        }
10389                                                        else {
10390                                                            if (backtracking>0) {failed=true; return link;}
10391                                                            NoViableAltException nvae =
10392                                                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 34, input);
10393    
10394                                                            throw nvae;
10395                                                        }
10396                                                    }
10397                                                    else {
10398                                                        if (backtracking>0) {failed=true; return link;}
10399                                                        NoViableAltException nvae =
10400                                                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 129, input);
10401    
10402                                                        throw nvae;
10403                                                    }
10404                                                }
10405                                                else if ( ((LA116_122>=FORCED_END_OF_LINE && LA116_122<=WIKI)||(LA116_122>=POUND && LA116_122<=51)||(LA116_122>=53 && LA116_122<=79)) ) {
10406                                                    alt116=2;
10407                                                }
10408                                                else {
10409                                                    if (backtracking>0) {failed=true; return link;}
10410                                                    NoViableAltException nvae =
10411                                                        new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 122, input);
10412    
10413                                                    throw nvae;
10414                                                }
10415                                            }
10416                                            else if ( ((LA116_112>=FORCED_END_OF_LINE && LA116_112<=WIKI)||(LA116_112>=POUND && LA116_112<=48)||(LA116_112>=50 && LA116_112<=79)) ) {
10417                                                alt116=2;
10418                                            }
10419                                            else {
10420                                                if (backtracking>0) {failed=true; return link;}
10421                                                NoViableAltException nvae =
10422                                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 112, input);
10423    
10424                                                throw nvae;
10425                                            }
10426                                        }
10427                                        else if ( ((LA116_98>=FORCED_END_OF_LINE && LA116_98<=WIKI)||(LA116_98>=POUND && LA116_98<=51)||(LA116_98>=53 && LA116_98<=79)) ) {
10428                                            alt116=2;
10429                                        }
10430                                        else {
10431                                            if (backtracking>0) {failed=true; return link;}
10432                                            NoViableAltException nvae =
10433                                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 98, input);
10434    
10435                                            throw nvae;
10436                                        }
10437                                    }
10438                                    else if ( ((LA116_79>=FORCED_END_OF_LINE && LA116_79<=WIKI)||(LA116_79>=POUND && LA116_79<=50)||(LA116_79>=52 && LA116_79<=79)) ) {
10439                                        alt116=2;
10440                                    }
10441                                    else {
10442                                        if (backtracking>0) {failed=true; return link;}
10443                                        NoViableAltException nvae =
10444                                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 79, input);
10445    
10446                                        throw nvae;
10447                                    }
10448                                }
10449                                else if ( ((LA116_60>=FORCED_END_OF_LINE && LA116_60<=WIKI)||(LA116_60>=POUND && LA116_60<=63)||(LA116_60>=65 && LA116_60<=79)) ) {
10450                                    alt116=2;
10451                                }
10452                                else {
10453                                    if (backtracking>0) {failed=true; return link;}
10454                                    NoViableAltException nvae =
10455                                        new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 60, input);
10456    
10457                                    throw nvae;
10458                                }
10459                            }
10460                            else if ( ((LA116_40>=FORCED_END_OF_LINE && LA116_40<=WIKI)||(LA116_40>=POUND && LA116_40<=51)||(LA116_40>=53 && LA116_40<=79)) ) {
10461                                alt116=2;
10462                            }
10463                            else {
10464                                if (backtracking>0) {failed=true; return link;}
10465                                NoViableAltException nvae =
10466                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 40, input);
10467    
10468                                throw nvae;
10469                            }
10470                            }
10471                            break;
10472                        case 64:
10473                            {
10474                            int LA116_41 = input.LA(4);
10475    
10476                            if ( (LA116_41==65) ) {
10477                                int LA116_61 = input.LA(5);
10478    
10479                                if ( (LA116_61==66) ) {
10480                                    int LA116_80 = input.LA(6);
10481    
10482                                    if ( (LA116_80==64) ) {
10483                                        int LA116_99 = input.LA(7);
10484    
10485                                        if ( (LA116_99==54) ) {
10486                                            int LA116_113 = input.LA(8);
10487    
10488                                            if ( (LA116_113==54) ) {
10489                                                int LA116_123 = input.LA(9);
10490    
10491                                                if ( ((LA116_123>=FORCED_END_OF_LINE && LA116_123<=WIKI)||(LA116_123>=POUND && LA116_123<=INSIGNIFICANT_CHAR)||(LA116_123>=45 && LA116_123<=79)) ) {
10492                                                    alt116=2;
10493                                                }
10494                                                else if ( (LA116_123==44) ) {
10495                                                    int LA116_34 = input.LA(10);
10496    
10497                                                    if ( ((LA116_34>=FORCED_END_OF_LINE && LA116_34<=WIKI)||(LA116_34>=POUND && LA116_34<=EQUAL)||(LA116_34>=ITAL && LA116_34<=NOWIKI_CLOSE)||(LA116_34>=IMAGE_CLOSE && LA116_34<=79)) ) {
10498                                                        alt116=1;
10499                                                    }
10500                                                    else if ( (LA116_34==PIPE||LA116_34==LINK_CLOSE) ) {
10501                                                        alt116=2;
10502                                                    }
10503                                                    else {
10504                                                        if (backtracking>0) {failed=true; return link;}
10505                                                        NoViableAltException nvae =
10506                                                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 34, input);
10507    
10508                                                        throw nvae;
10509                                                    }
10510                                                }
10511                                                else {
10512                                                    if (backtracking>0) {failed=true; return link;}
10513                                                    NoViableAltException nvae =
10514                                                        new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 123, input);
10515    
10516                                                    throw nvae;
10517                                                }
10518                                            }
10519                                            else if ( ((LA116_113>=FORCED_END_OF_LINE && LA116_113<=WIKI)||(LA116_113>=POUND && LA116_113<=53)||(LA116_113>=55 && LA116_113<=79)) ) {
10520                                                alt116=2;
10521                                            }
10522                                            else {
10523                                                if (backtracking>0) {failed=true; return link;}
10524                                                NoViableAltException nvae =
10525                                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 113, input);
10526    
10527                                                throw nvae;
10528                                            }
10529                                        }
10530                                        else if ( ((LA116_99>=FORCED_END_OF_LINE && LA116_99<=WIKI)||(LA116_99>=POUND && LA116_99<=53)||(LA116_99>=55 && LA116_99<=79)) ) {
10531                                            alt116=2;
10532                                        }
10533                                        else {
10534                                            if (backtracking>0) {failed=true; return link;}
10535                                            NoViableAltException nvae =
10536                                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 99, input);
10537    
10538                                            throw nvae;
10539                                        }
10540                                    }
10541                                    else if ( ((LA116_80>=FORCED_END_OF_LINE && LA116_80<=WIKI)||(LA116_80>=POUND && LA116_80<=63)||(LA116_80>=65 && LA116_80<=79)) ) {
10542                                        alt116=2;
10543                                    }
10544                                    else {
10545                                        if (backtracking>0) {failed=true; return link;}
10546                                        NoViableAltException nvae =
10547                                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 80, input);
10548    
10549                                        throw nvae;
10550                                    }
10551                                }
10552                                else if ( ((LA116_61>=FORCED_END_OF_LINE && LA116_61<=WIKI)||(LA116_61>=POUND && LA116_61<=65)||(LA116_61>=67 && LA116_61<=79)) ) {
10553                                    alt116=2;
10554                                }
10555                                else {
10556                                    if (backtracking>0) {failed=true; return link;}
10557                                    NoViableAltException nvae =
10558                                        new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 61, input);
10559    
10560                                    throw nvae;
10561                                }
10562                            }
10563                            else if ( ((LA116_41>=FORCED_END_OF_LINE && LA116_41<=WIKI)||(LA116_41>=POUND && LA116_41<=64)||(LA116_41>=66 && LA116_41<=79)) ) {
10564                                alt116=2;
10565                            }
10566                            else {
10567                                if (backtracking>0) {failed=true; return link;}
10568                                NoViableAltException nvae =
10569                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 41, input);
10570    
10571                                throw nvae;
10572                            }
10573                            }
10574                            break;
10575                        case FORCED_END_OF_LINE:
10576                        case HEADING_SECTION:
10577                        case HORIZONTAL_SECTION:
10578                        case LIST_ITEM:
10579                        case LIST_ITEM_PART:
10580                        case NOWIKI_SECTION:
10581                        case SCAPE_NODE:
10582                        case TEXT_NODE:
10583                        case UNORDERED_LIST:
10584                        case UNFORMATTED_TEXT:
10585                        case WIKI:
10586                        case POUND:
10587                        case STAR:
10588                        case EQUAL:
10589                        case PIPE:
10590                        case ITAL:
10591                        case LINK_OPEN:
10592                        case IMAGE_OPEN:
10593                        case NOWIKI_OPEN:
10594                        case EXTENSION:
10595                        case FORCED_LINEBREAK:
10596                        case ESCAPE:
10597                        case NOWIKI_BLOCK_CLOSE:
10598                        case NOWIKI_CLOSE:
10599                        case LINK_CLOSE:
10600                        case IMAGE_CLOSE:
10601                        case BLANKS:
10602                        case TABLE_OF_CONTENTS_TEXT:
10603                        case DASH:
10604                        case CR:
10605                        case LF:
10606                        case SPACE:
10607                        case TABULATOR:
10608                        case BRACE_CLOSE:
10609                        case COLON_SLASH:
10610                        case SLASH:
10611                        case TABLE_OF_CONTENTS_OPEN_MARKUP:
10612                        case TABLE_OF_CONTENTS_CLOSE_MARKUP:
10613                        case INSIGNIFICANT_CHAR:
10614                        case 44:
10615                        case 45:
10616                        case 46:
10617                        case 47:
10618                        case 48:
10619                        case 49:
10620                        case 50:
10621                        case 51:
10622                        case 52:
10623                        case 53:
10624                        case 54:
10625                        case 55:
10626                        case 56:
10627                        case 57:
10628                        case 58:
10629                        case 59:
10630                        case 60:
10631                        case 61:
10632                        case 62:
10633                        case 63:
10634                        case 65:
10635                        case 66:
10636                        case 68:
10637                        case 69:
10638                        case 70:
10639                        case 71:
10640                        case 72:
10641                        case 73:
10642                        case 74:
10643                        case 75:
10644                        case 76:
10645                        case 77:
10646                        case 78:
10647                        case 79:
10648                            {
10649                            alt116=2;
10650                            }
10651                            break;
10652                        default:
10653                            if (backtracking>0) {failed=true; return link;}
10654                            NoViableAltException nvae =
10655                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 22, input);
10656    
10657                            throw nvae;
10658                        }
10659    
10660                        }
10661                        break;
10662                    case FORCED_END_OF_LINE:
10663                    case HEADING_SECTION:
10664                    case HORIZONTAL_SECTION:
10665                    case LIST_ITEM:
10666                    case LIST_ITEM_PART:
10667                    case NOWIKI_SECTION:
10668                    case SCAPE_NODE:
10669                    case TEXT_NODE:
10670                    case UNORDERED_LIST:
10671                    case UNFORMATTED_TEXT:
10672                    case WIKI:
10673                    case POUND:
10674                    case STAR:
10675                    case EQUAL:
10676                    case PIPE:
10677                    case ITAL:
10678                    case LINK_OPEN:
10679                    case IMAGE_OPEN:
10680                    case NOWIKI_OPEN:
10681                    case EXTENSION:
10682                    case FORCED_LINEBREAK:
10683                    case ESCAPE:
10684                    case NOWIKI_BLOCK_CLOSE:
10685                    case NOWIKI_CLOSE:
10686                    case LINK_CLOSE:
10687                    case IMAGE_CLOSE:
10688                    case BLANKS:
10689                    case TABLE_OF_CONTENTS_TEXT:
10690                    case DASH:
10691                    case CR:
10692                    case LF:
10693                    case SPACE:
10694                    case TABULATOR:
10695                    case BRACE_CLOSE:
10696                    case COLON_SLASH:
10697                    case SLASH:
10698                    case TABLE_OF_CONTENTS_OPEN_MARKUP:
10699                    case TABLE_OF_CONTENTS_CLOSE_MARKUP:
10700                    case INSIGNIFICANT_CHAR:
10701                    case 44:
10702                    case 45:
10703                    case 46:
10704                    case 47:
10705                    case 49:
10706                    case 50:
10707                    case 51:
10708                    case 52:
10709                    case 53:
10710                    case 54:
10711                    case 55:
10712                    case 56:
10713                    case 57:
10714                    case 58:
10715                    case 60:
10716                    case 61:
10717                    case 62:
10718                    case 63:
10719                    case 64:
10720                    case 65:
10721                    case 66:
10722                    case 67:
10723                    case 68:
10724                    case 69:
10725                    case 70:
10726                    case 71:
10727                    case 72:
10728                    case 73:
10729                    case 74:
10730                    case 75:
10731                    case 76:
10732                    case 77:
10733                    case 78:
10734                    case 79:
10735                        {
10736                        alt116=2;
10737                        }
10738                        break;
10739                    default:
10740                        if (backtracking>0) {failed=true; return link;}
10741                        NoViableAltException nvae =
10742                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 6, input);
10743    
10744                        throw nvae;
10745                    }
10746    
10747                    }
10748                    break;
10749                case 69:
10750                    {
10751                    switch ( input.LA(2) ) {
10752                    case 67:
10753                        {
10754                        int LA116_23 = input.LA(3);
10755    
10756                        if ( (LA116_23==67) ) {
10757                            int LA116_42 = input.LA(4);
10758    
10759                            if ( (LA116_42==70) ) {
10760                                int LA116_62 = input.LA(5);
10761    
10762                                if ( (LA116_62==50) ) {
10763                                    int LA116_81 = input.LA(6);
10764    
10765                                    if ( (LA116_81==71) ) {
10766                                        int LA116_100 = input.LA(7);
10767    
10768                                        if ( (LA116_100==59) ) {
10769                                            int LA116_114 = input.LA(8);
10770    
10771                                            if ( ((LA116_114>=FORCED_END_OF_LINE && LA116_114<=WIKI)||(LA116_114>=POUND && LA116_114<=INSIGNIFICANT_CHAR)||(LA116_114>=45 && LA116_114<=79)) ) {
10772                                                alt116=2;
10773                                            }
10774                                            else if ( (LA116_114==44) ) {
10775                                                int LA116_34 = input.LA(9);
10776    
10777                                                if ( ((LA116_34>=FORCED_END_OF_LINE && LA116_34<=WIKI)||(LA116_34>=POUND && LA116_34<=EQUAL)||(LA116_34>=ITAL && LA116_34<=NOWIKI_CLOSE)||(LA116_34>=IMAGE_CLOSE && LA116_34<=79)) ) {
10778                                                    alt116=1;
10779                                                }
10780                                                else if ( (LA116_34==PIPE||LA116_34==LINK_CLOSE) ) {
10781                                                    alt116=2;
10782                                                }
10783                                                else {
10784                                                    if (backtracking>0) {failed=true; return link;}
10785                                                    NoViableAltException nvae =
10786                                                        new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 34, input);
10787    
10788                                                    throw nvae;
10789                                                }
10790                                            }
10791                                            else {
10792                                                if (backtracking>0) {failed=true; return link;}
10793                                                NoViableAltException nvae =
10794                                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 114, input);
10795    
10796                                                throw nvae;
10797                                            }
10798                                        }
10799                                        else if ( ((LA116_100>=FORCED_END_OF_LINE && LA116_100<=WIKI)||(LA116_100>=POUND && LA116_100<=58)||(LA116_100>=60 && LA116_100<=79)) ) {
10800                                            alt116=2;
10801                                        }
10802                                        else {
10803                                            if (backtracking>0) {failed=true; return link;}
10804                                            NoViableAltException nvae =
10805                                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 100, input);
10806    
10807                                            throw nvae;
10808                                        }
10809                                    }
10810                                    else if ( ((LA116_81>=FORCED_END_OF_LINE && LA116_81<=WIKI)||(LA116_81>=POUND && LA116_81<=70)||(LA116_81>=72 && LA116_81<=79)) ) {
10811                                        alt116=2;
10812                                    }
10813                                    else {
10814                                        if (backtracking>0) {failed=true; return link;}
10815                                        NoViableAltException nvae =
10816                                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 81, input);
10817    
10818                                        throw nvae;
10819                                    }
10820                                }
10821                                else if ( ((LA116_62>=FORCED_END_OF_LINE && LA116_62<=WIKI)||(LA116_62>=POUND && LA116_62<=49)||(LA116_62>=51 && LA116_62<=79)) ) {
10822                                    alt116=2;
10823                                }
10824                                else {
10825                                    if (backtracking>0) {failed=true; return link;}
10826                                    NoViableAltException nvae =
10827                                        new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 62, input);
10828    
10829                                    throw nvae;
10830                                }
10831                            }
10832                            else if ( ((LA116_42>=FORCED_END_OF_LINE && LA116_42<=WIKI)||(LA116_42>=POUND && LA116_42<=69)||(LA116_42>=71 && LA116_42<=79)) ) {
10833                                alt116=2;
10834                            }
10835                            else {
10836                                if (backtracking>0) {failed=true; return link;}
10837                                NoViableAltException nvae =
10838                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 42, input);
10839    
10840                                throw nvae;
10841                            }
10842                        }
10843                        else if ( ((LA116_23>=FORCED_END_OF_LINE && LA116_23<=WIKI)||(LA116_23>=POUND && LA116_23<=66)||(LA116_23>=68 && LA116_23<=79)) ) {
10844                            alt116=2;
10845                        }
10846                        else {
10847                            if (backtracking>0) {failed=true; return link;}
10848                            NoViableAltException nvae =
10849                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 23, input);
10850    
10851                            throw nvae;
10852                        }
10853                        }
10854                        break;
10855                    case 72:
10856                        {
10857                        int LA116_24 = input.LA(3);
10858    
10859                        if ( (LA116_24==64) ) {
10860                            int LA116_43 = input.LA(4);
10861    
10862                            if ( (LA116_43==68) ) {
10863                                int LA116_63 = input.LA(5);
10864    
10865                                if ( (LA116_63==64) ) {
10866                                    int LA116_82 = input.LA(6);
10867    
10868                                    if ( ((LA116_82>=FORCED_END_OF_LINE && LA116_82<=WIKI)||(LA116_82>=POUND && LA116_82<=INSIGNIFICANT_CHAR)||(LA116_82>=45 && LA116_82<=79)) ) {
10869                                        alt116=2;
10870                                    }
10871                                    else if ( (LA116_82==44) ) {
10872                                        int LA116_34 = input.LA(7);
10873    
10874                                        if ( ((LA116_34>=FORCED_END_OF_LINE && LA116_34<=WIKI)||(LA116_34>=POUND && LA116_34<=EQUAL)||(LA116_34>=ITAL && LA116_34<=NOWIKI_CLOSE)||(LA116_34>=IMAGE_CLOSE && LA116_34<=79)) ) {
10875                                            alt116=1;
10876                                        }
10877                                        else if ( (LA116_34==PIPE||LA116_34==LINK_CLOSE) ) {
10878                                            alt116=2;
10879                                        }
10880                                        else {
10881                                            if (backtracking>0) {failed=true; return link;}
10882                                            NoViableAltException nvae =
10883                                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 34, input);
10884    
10885                                            throw nvae;
10886                                        }
10887                                    }
10888                                    else {
10889                                        if (backtracking>0) {failed=true; return link;}
10890                                        NoViableAltException nvae =
10891                                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 82, input);
10892    
10893                                        throw nvae;
10894                                    }
10895                                }
10896                                else if ( ((LA116_63>=FORCED_END_OF_LINE && LA116_63<=WIKI)||(LA116_63>=POUND && LA116_63<=63)||(LA116_63>=65 && LA116_63<=79)) ) {
10897                                    alt116=2;
10898                                }
10899                                else {
10900                                    if (backtracking>0) {failed=true; return link;}
10901                                    NoViableAltException nvae =
10902                                        new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 63, input);
10903    
10904                                    throw nvae;
10905                                }
10906                            }
10907                            else if ( ((LA116_43>=FORCED_END_OF_LINE && LA116_43<=WIKI)||(LA116_43>=POUND && LA116_43<=67)||(LA116_43>=69 && LA116_43<=79)) ) {
10908                                alt116=2;
10909                            }
10910                            else {
10911                                if (backtracking>0) {failed=true; return link;}
10912                                NoViableAltException nvae =
10913                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 43, input);
10914    
10915                                throw nvae;
10916                            }
10917                        }
10918                        else if ( ((LA116_24>=FORCED_END_OF_LINE && LA116_24<=WIKI)||(LA116_24>=POUND && LA116_24<=63)||(LA116_24>=65 && LA116_24<=79)) ) {
10919                            alt116=2;
10920                        }
10921                        else {
10922                            if (backtracking>0) {failed=true; return link;}
10923                            NoViableAltException nvae =
10924                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 24, input);
10925    
10926                            throw nvae;
10927                        }
10928                        }
10929                        break;
10930                    case FORCED_END_OF_LINE:
10931                    case HEADING_SECTION:
10932                    case HORIZONTAL_SECTION:
10933                    case LIST_ITEM:
10934                    case LIST_ITEM_PART:
10935                    case NOWIKI_SECTION:
10936                    case SCAPE_NODE:
10937                    case TEXT_NODE:
10938                    case UNORDERED_LIST:
10939                    case UNFORMATTED_TEXT:
10940                    case WIKI:
10941                    case POUND:
10942                    case STAR:
10943                    case EQUAL:
10944                    case PIPE:
10945                    case ITAL:
10946                    case LINK_OPEN:
10947                    case IMAGE_OPEN:
10948                    case NOWIKI_OPEN:
10949                    case EXTENSION:
10950                    case FORCED_LINEBREAK:
10951                    case ESCAPE:
10952                    case NOWIKI_BLOCK_CLOSE:
10953                    case NOWIKI_CLOSE:
10954                    case LINK_CLOSE:
10955                    case IMAGE_CLOSE:
10956                    case BLANKS:
10957                    case TABLE_OF_CONTENTS_TEXT:
10958                    case DASH:
10959                    case CR:
10960                    case LF:
10961                    case SPACE:
10962                    case TABULATOR:
10963                    case BRACE_CLOSE:
10964                    case COLON_SLASH:
10965                    case SLASH:
10966                    case TABLE_OF_CONTENTS_OPEN_MARKUP:
10967                    case TABLE_OF_CONTENTS_CLOSE_MARKUP:
10968                    case INSIGNIFICANT_CHAR:
10969                    case 44:
10970                    case 45:
10971                    case 46:
10972                    case 47:
10973                    case 48:
10974                    case 49:
10975                    case 50:
10976                    case 51:
10977                    case 52:
10978                    case 53:
10979                    case 54:
10980                    case 55:
10981                    case 56:
10982                    case 57:
10983                    case 58:
10984                    case 59:
10985                    case 60:
10986                    case 61:
10987                    case 62:
10988                    case 63:
10989                    case 64:
10990                    case 65:
10991                    case 66:
10992                    case 68:
10993                    case 69:
10994                    case 70:
10995                    case 71:
10996                    case 73:
10997                    case 74:
10998                    case 75:
10999                    case 76:
11000                    case 77:
11001                    case 78:
11002                    case 79:
11003                        {
11004                        alt116=2;
11005                        }
11006                        break;
11007                    default:
11008                        if (backtracking>0) {failed=true; return link;}
11009                        NoViableAltException nvae =
11010                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 7, input);
11011    
11012                        throw nvae;
11013                    }
11014    
11015                    }
11016                    break;
11017                case 62:
11018                    {
11019                    switch ( input.LA(2) ) {
11020                    case 50:
11021                        {
11022                        switch ( input.LA(3) ) {
11023                        case 56:
11024                            {
11025                            int LA116_44 = input.LA(4);
11026    
11027                            if ( (LA116_44==73) ) {
11028                                int LA116_64 = input.LA(5);
11029    
11030                                if ( (LA116_64==54) ) {
11031                                    int LA116_83 = input.LA(6);
11032    
11033                                    if ( (LA116_83==59) ) {
11034                                        int LA116_101 = input.LA(7);
11035    
11036                                        if ( (LA116_101==51) ) {
11037                                            int LA116_115 = input.LA(8);
11038    
11039                                            if ( (LA116_115==52) ) {
11040                                                int LA116_124 = input.LA(9);
11041    
11042                                                if ( (LA116_124==49) ) {
11043                                                    int LA116_130 = input.LA(10);
11044    
11045                                                    if ( (LA116_130==52) ) {
11046                                                        int LA116_133 = input.LA(11);
11047    
11048                                                        if ( ((LA116_133>=FORCED_END_OF_LINE && LA116_133<=WIKI)||(LA116_133>=POUND && LA116_133<=INSIGNIFICANT_CHAR)||(LA116_133>=45 && LA116_133<=79)) ) {
11049                                                            alt116=2;
11050                                                        }
11051                                                        else if ( (LA116_133==44) ) {
11052                                                            int LA116_34 = input.LA(12);
11053    
11054                                                            if ( ((LA116_34>=FORCED_END_OF_LINE && LA116_34<=WIKI)||(LA116_34>=POUND && LA116_34<=EQUAL)||(LA116_34>=ITAL && LA116_34<=NOWIKI_CLOSE)||(LA116_34>=IMAGE_CLOSE && LA116_34<=79)) ) {
11055                                                                alt116=1;
11056                                                            }
11057                                                            else if ( (LA116_34==PIPE||LA116_34==LINK_CLOSE) ) {
11058                                                                alt116=2;
11059                                                            }
11060                                                            else {
11061                                                                if (backtracking>0) {failed=true; return link;}
11062                                                                NoViableAltException nvae =
11063                                                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 34, input);
11064    
11065                                                                throw nvae;
11066                                                            }
11067                                                        }
11068                                                        else {
11069                                                            if (backtracking>0) {failed=true; return link;}
11070                                                            NoViableAltException nvae =
11071                                                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 133, input);
11072    
11073                                                            throw nvae;
11074                                                        }
11075                                                    }
11076                                                    else if ( ((LA116_130>=FORCED_END_OF_LINE && LA116_130<=WIKI)||(LA116_130>=POUND && LA116_130<=51)||(LA116_130>=53 && LA116_130<=79)) ) {
11077                                                        alt116=2;
11078                                                    }
11079                                                    else {
11080                                                        if (backtracking>0) {failed=true; return link;}
11081                                                        NoViableAltException nvae =
11082                                                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 130, input);
11083    
11084                                                        throw nvae;
11085                                                    }
11086                                                }
11087                                                else if ( ((LA116_124>=FORCED_END_OF_LINE && LA116_124<=WIKI)||(LA116_124>=POUND && LA116_124<=48)||(LA116_124>=50 && LA116_124<=79)) ) {
11088                                                    alt116=2;
11089                                                }
11090                                                else {
11091                                                    if (backtracking>0) {failed=true; return link;}
11092                                                    NoViableAltException nvae =
11093                                                        new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 124, input);
11094    
11095                                                    throw nvae;
11096                                                }
11097                                            }
11098                                            else if ( ((LA116_115>=FORCED_END_OF_LINE && LA116_115<=WIKI)||(LA116_115>=POUND && LA116_115<=51)||(LA116_115>=53 && LA116_115<=79)) ) {
11099                                                alt116=2;
11100                                            }
11101                                            else {
11102                                                if (backtracking>0) {failed=true; return link;}
11103                                                NoViableAltException nvae =
11104                                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 115, input);
11105    
11106                                                throw nvae;
11107                                            }
11108                                        }
11109                                        else if ( ((LA116_101>=FORCED_END_OF_LINE && LA116_101<=WIKI)||(LA116_101>=POUND && LA116_101<=50)||(LA116_101>=52 && LA116_101<=79)) ) {
11110                                            alt116=2;
11111                                        }
11112                                        else {
11113                                            if (backtracking>0) {failed=true; return link;}
11114                                            NoViableAltException nvae =
11115                                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 101, input);
11116    
11117                                            throw nvae;
11118                                        }
11119                                    }
11120                                    else if ( ((LA116_83>=FORCED_END_OF_LINE && LA116_83<=WIKI)||(LA116_83>=POUND && LA116_83<=58)||(LA116_83>=60 && LA116_83<=79)) ) {
11121                                        alt116=2;
11122                                    }
11123                                    else {
11124                                        if (backtracking>0) {failed=true; return link;}
11125                                        NoViableAltException nvae =
11126                                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 83, input);
11127    
11128                                        throw nvae;
11129                                    }
11130                                }
11131                                else if ( ((LA116_64>=FORCED_END_OF_LINE && LA116_64<=WIKI)||(LA116_64>=POUND && LA116_64<=53)||(LA116_64>=55 && LA116_64<=79)) ) {
11132                                    alt116=2;
11133                                }
11134                                else {
11135                                    if (backtracking>0) {failed=true; return link;}
11136                                    NoViableAltException nvae =
11137                                        new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 64, input);
11138    
11139                                    throw nvae;
11140                                }
11141                            }
11142                            else if ( ((LA116_44>=FORCED_END_OF_LINE && LA116_44<=WIKI)||(LA116_44>=POUND && LA116_44<=72)||(LA116_44>=74 && LA116_44<=79)) ) {
11143                                alt116=2;
11144                            }
11145                            else {
11146                                if (backtracking>0) {failed=true; return link;}
11147                                NoViableAltException nvae =
11148                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 44, input);
11149    
11150                                throw nvae;
11151                            }
11152                            }
11153                            break;
11154                        case 49:
11155                            {
11156                            int LA116_45 = input.LA(4);
11157    
11158                            if ( (LA116_45==52) ) {
11159                                int LA116_65 = input.LA(5);
11160    
11161                                if ( (LA116_65==51) ) {
11162                                    int LA116_84 = input.LA(6);
11163    
11164                                    if ( (LA116_84==52) ) {
11165                                        int LA116_102 = input.LA(7);
11166    
11167                                        if ( (LA116_102==49) ) {
11168                                            int LA116_116 = input.LA(8);
11169    
11170                                            if ( (LA116_116==52) ) {
11171                                                int LA116_125 = input.LA(9);
11172    
11173                                                if ( ((LA116_125>=FORCED_END_OF_LINE && LA116_125<=WIKI)||(LA116_125>=POUND && LA116_125<=INSIGNIFICANT_CHAR)||(LA116_125>=45 && LA116_125<=79)) ) {
11174                                                    alt116=2;
11175                                                }
11176                                                else if ( (LA116_125==44) ) {
11177                                                    int LA116_34 = input.LA(10);
11178    
11179                                                    if ( ((LA116_34>=FORCED_END_OF_LINE && LA116_34<=WIKI)||(LA116_34>=POUND && LA116_34<=EQUAL)||(LA116_34>=ITAL && LA116_34<=NOWIKI_CLOSE)||(LA116_34>=IMAGE_CLOSE && LA116_34<=79)) ) {
11180                                                        alt116=1;
11181                                                    }
11182                                                    else if ( (LA116_34==PIPE||LA116_34==LINK_CLOSE) ) {
11183                                                        alt116=2;
11184                                                    }
11185                                                    else {
11186                                                        if (backtracking>0) {failed=true; return link;}
11187                                                        NoViableAltException nvae =
11188                                                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 34, input);
11189    
11190                                                        throw nvae;
11191                                                    }
11192                                                }
11193                                                else {
11194                                                    if (backtracking>0) {failed=true; return link;}
11195                                                    NoViableAltException nvae =
11196                                                        new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 125, input);
11197    
11198                                                    throw nvae;
11199                                                }
11200                                            }
11201                                            else if ( ((LA116_116>=FORCED_END_OF_LINE && LA116_116<=WIKI)||(LA116_116>=POUND && LA116_116<=51)||(LA116_116>=53 && LA116_116<=79)) ) {
11202                                                alt116=2;
11203                                            }
11204                                            else {
11205                                                if (backtracking>0) {failed=true; return link;}
11206                                                NoViableAltException nvae =
11207                                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 116, input);
11208    
11209                                                throw nvae;
11210                                            }
11211                                        }
11212                                        else if ( ((LA116_102>=FORCED_END_OF_LINE && LA116_102<=WIKI)||(LA116_102>=POUND && LA116_102<=48)||(LA116_102>=50 && LA116_102<=79)) ) {
11213                                            alt116=2;
11214                                        }
11215                                        else {
11216                                            if (backtracking>0) {failed=true; return link;}
11217                                            NoViableAltException nvae =
11218                                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 102, input);
11219    
11220                                            throw nvae;
11221                                        }
11222                                    }
11223                                    else if ( ((LA116_84>=FORCED_END_OF_LINE && LA116_84<=WIKI)||(LA116_84>=POUND && LA116_84<=51)||(LA116_84>=53 && LA116_84<=79)) ) {
11224                                        alt116=2;
11225                                    }
11226                                    else {
11227                                        if (backtracking>0) {failed=true; return link;}
11228                                        NoViableAltException nvae =
11229                                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 84, input);
11230    
11231                                        throw nvae;
11232                                    }
11233                                }
11234                                else if ( ((LA116_65>=FORCED_END_OF_LINE && LA116_65<=WIKI)||(LA116_65>=POUND && LA116_65<=50)||(LA116_65>=52 && LA116_65<=79)) ) {
11235                                    alt116=2;
11236                                }
11237                                else {
11238                                    if (backtracking>0) {failed=true; return link;}
11239                                    NoViableAltException nvae =
11240                                        new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 65, input);
11241    
11242                                    throw nvae;
11243                                }
11244                            }
11245                            else if ( ((LA116_45>=FORCED_END_OF_LINE && LA116_45<=WIKI)||(LA116_45>=POUND && LA116_45<=51)||(LA116_45>=53 && LA116_45<=79)) ) {
11246                                alt116=2;
11247                            }
11248                            else {
11249                                if (backtracking>0) {failed=true; return link;}
11250                                NoViableAltException nvae =
11251                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 45, input);
11252    
11253                                throw nvae;
11254                            }
11255                            }
11256                            break;
11257                        case FORCED_END_OF_LINE:
11258                        case HEADING_SECTION:
11259                        case HORIZONTAL_SECTION:
11260                        case LIST_ITEM:
11261                        case LIST_ITEM_PART:
11262                        case NOWIKI_SECTION:
11263                        case SCAPE_NODE:
11264                        case TEXT_NODE:
11265                        case UNORDERED_LIST:
11266                        case UNFORMATTED_TEXT:
11267                        case WIKI:
11268                        case POUND:
11269                        case STAR:
11270                        case EQUAL:
11271                        case PIPE:
11272                        case ITAL:
11273                        case LINK_OPEN:
11274                        case IMAGE_OPEN:
11275                        case NOWIKI_OPEN:
11276                        case EXTENSION:
11277                        case FORCED_LINEBREAK:
11278                        case ESCAPE:
11279                        case NOWIKI_BLOCK_CLOSE:
11280                        case NOWIKI_CLOSE:
11281                        case LINK_CLOSE:
11282                        case IMAGE_CLOSE:
11283                        case BLANKS:
11284                        case TABLE_OF_CONTENTS_TEXT:
11285                        case DASH:
11286                        case CR:
11287                        case LF:
11288                        case SPACE:
11289                        case TABULATOR:
11290                        case BRACE_CLOSE:
11291                        case COLON_SLASH:
11292                        case SLASH:
11293                        case TABLE_OF_CONTENTS_OPEN_MARKUP:
11294                        case TABLE_OF_CONTENTS_CLOSE_MARKUP:
11295                        case INSIGNIFICANT_CHAR:
11296                        case 44:
11297                        case 45:
11298                        case 46:
11299                        case 47:
11300                        case 48:
11301                        case 50:
11302                        case 51:
11303                        case 52:
11304                        case 53:
11305                        case 54:
11306                        case 55:
11307                        case 57:
11308                        case 58:
11309                        case 59:
11310                        case 60:
11311                        case 61:
11312                        case 62:
11313                        case 63:
11314                        case 64:
11315                        case 65:
11316                        case 66:
11317                        case 67:
11318                        case 68:
11319                        case 69:
11320                        case 70:
11321                        case 71:
11322                        case 72:
11323                        case 73:
11324                        case 74:
11325                        case 75:
11326                        case 76:
11327                        case 77:
11328                        case 78:
11329                        case 79:
11330                            {
11331                            alt116=2;
11332                            }
11333                            break;
11334                        default:
11335                            if (backtracking>0) {failed=true; return link;}
11336                            NoViableAltException nvae =
11337                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 25, input);
11338    
11339                            throw nvae;
11340                        }
11341    
11342                        }
11343                        break;
11344                    case 70:
11345                        {
11346                        int LA116_26 = input.LA(3);
11347    
11348                        if ( (LA116_26==51) ) {
11349                            int LA116_46 = input.LA(4);
11350    
11351                            if ( (LA116_46==52) ) {
11352                                int LA116_66 = input.LA(5);
11353    
11354                                if ( (LA116_66==49) ) {
11355                                    int LA116_85 = input.LA(6);
11356    
11357                                    if ( (LA116_85==52) ) {
11358                                        int LA116_103 = input.LA(7);
11359    
11360                                        if ( ((LA116_103>=FORCED_END_OF_LINE && LA116_103<=WIKI)||(LA116_103>=POUND && LA116_103<=INSIGNIFICANT_CHAR)||(LA116_103>=45 && LA116_103<=79)) ) {
11361                                            alt116=2;
11362                                        }
11363                                        else if ( (LA116_103==44) ) {
11364                                            int LA116_34 = input.LA(8);
11365    
11366                                            if ( ((LA116_34>=FORCED_END_OF_LINE && LA116_34<=WIKI)||(LA116_34>=POUND && LA116_34<=EQUAL)||(LA116_34>=ITAL && LA116_34<=NOWIKI_CLOSE)||(LA116_34>=IMAGE_CLOSE && LA116_34<=79)) ) {
11367                                                alt116=1;
11368                                            }
11369                                            else if ( (LA116_34==PIPE||LA116_34==LINK_CLOSE) ) {
11370                                                alt116=2;
11371                                            }
11372                                            else {
11373                                                if (backtracking>0) {failed=true; return link;}
11374                                                NoViableAltException nvae =
11375                                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 34, input);
11376    
11377                                                throw nvae;
11378                                            }
11379                                        }
11380                                        else {
11381                                            if (backtracking>0) {failed=true; return link;}
11382                                            NoViableAltException nvae =
11383                                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 103, input);
11384    
11385                                            throw nvae;
11386                                        }
11387                                    }
11388                                    else if ( ((LA116_85>=FORCED_END_OF_LINE && LA116_85<=WIKI)||(LA116_85>=POUND && LA116_85<=51)||(LA116_85>=53 && LA116_85<=79)) ) {
11389                                        alt116=2;
11390                                    }
11391                                    else {
11392                                        if (backtracking>0) {failed=true; return link;}
11393                                        NoViableAltException nvae =
11394                                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 85, input);
11395    
11396                                        throw nvae;
11397                                    }
11398                                }
11399                                else if ( ((LA116_66>=FORCED_END_OF_LINE && LA116_66<=WIKI)||(LA116_66>=POUND && LA116_66<=48)||(LA116_66>=50 && LA116_66<=79)) ) {
11400                                    alt116=2;
11401                                }
11402                                else {
11403                                    if (backtracking>0) {failed=true; return link;}
11404                                    NoViableAltException nvae =
11405                                        new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 66, input);
11406    
11407                                    throw nvae;
11408                                }
11409                            }
11410                            else if ( ((LA116_46>=FORCED_END_OF_LINE && LA116_46<=WIKI)||(LA116_46>=POUND && LA116_46<=51)||(LA116_46>=53 && LA116_46<=79)) ) {
11411                                alt116=2;
11412                            }
11413                            else {
11414                                if (backtracking>0) {failed=true; return link;}
11415                                NoViableAltException nvae =
11416                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 46, input);
11417    
11418                                throw nvae;
11419                            }
11420                        }
11421                        else if ( ((LA116_26>=FORCED_END_OF_LINE && LA116_26<=WIKI)||(LA116_26>=POUND && LA116_26<=50)||(LA116_26>=52 && LA116_26<=79)) ) {
11422                            alt116=2;
11423                        }
11424                        else {
11425                            if (backtracking>0) {failed=true; return link;}
11426                            NoViableAltException nvae =
11427                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 26, input);
11428    
11429                            throw nvae;
11430                        }
11431                        }
11432                        break;
11433                    case FORCED_END_OF_LINE:
11434                    case HEADING_SECTION:
11435                    case HORIZONTAL_SECTION:
11436                    case LIST_ITEM:
11437                    case LIST_ITEM_PART:
11438                    case NOWIKI_SECTION:
11439                    case SCAPE_NODE:
11440                    case TEXT_NODE:
11441                    case UNORDERED_LIST:
11442                    case UNFORMATTED_TEXT:
11443                    case WIKI:
11444                    case POUND:
11445                    case STAR:
11446                    case EQUAL:
11447                    case PIPE:
11448                    case ITAL:
11449                    case LINK_OPEN:
11450                    case IMAGE_OPEN:
11451                    case NOWIKI_OPEN:
11452                    case EXTENSION:
11453                    case FORCED_LINEBREAK:
11454                    case ESCAPE:
11455                    case NOWIKI_BLOCK_CLOSE:
11456                    case NOWIKI_CLOSE:
11457                    case LINK_CLOSE:
11458                    case IMAGE_CLOSE:
11459                    case BLANKS:
11460                    case TABLE_OF_CONTENTS_TEXT:
11461                    case DASH:
11462                    case CR:
11463                    case LF:
11464                    case SPACE:
11465                    case TABULATOR:
11466                    case BRACE_CLOSE:
11467                    case COLON_SLASH:
11468                    case SLASH:
11469                    case TABLE_OF_CONTENTS_OPEN_MARKUP:
11470                    case TABLE_OF_CONTENTS_CLOSE_MARKUP:
11471                    case INSIGNIFICANT_CHAR:
11472                    case 44:
11473                    case 45:
11474                    case 46:
11475                    case 47:
11476                    case 48:
11477                    case 49:
11478                    case 51:
11479                    case 52:
11480                    case 53:
11481                    case 54:
11482                    case 55:
11483                    case 56:
11484                    case 57:
11485                    case 58:
11486                    case 59:
11487                    case 60:
11488                    case 61:
11489                    case 62:
11490                    case 63:
11491                    case 64:
11492                    case 65:
11493                    case 66:
11494                    case 67:
11495                    case 68:
11496                    case 69:
11497                    case 71:
11498                    case 72:
11499                    case 73:
11500                    case 74:
11501                    case 75:
11502                    case 76:
11503                    case 77:
11504                    case 78:
11505                    case 79:
11506                        {
11507                        alt116=2;
11508                        }
11509                        break;
11510                    default:
11511                        if (backtracking>0) {failed=true; return link;}
11512                        NoViableAltException nvae =
11513                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 8, input);
11514    
11515                        throw nvae;
11516                    }
11517    
11518                    }
11519                    break;
11520                case 74:
11521                    {
11522                    int LA116_9 = input.LA(2);
11523    
11524                    if ( (LA116_9==64) ) {
11525                        int LA116_27 = input.LA(3);
11526    
11527                        if ( (LA116_27==67) ) {
11528                            int LA116_47 = input.LA(4);
11529    
11530                            if ( (LA116_47==59) ) {
11531                                int LA116_67 = input.LA(5);
11532    
11533                                if ( (LA116_67==48) ) {
11534                                    int LA116_86 = input.LA(6);
11535    
11536                                    if ( (LA116_86==75) ) {
11537                                        int LA116_104 = input.LA(7);
11538    
11539                                        if ( ((LA116_104>=FORCED_END_OF_LINE && LA116_104<=WIKI)||(LA116_104>=POUND && LA116_104<=INSIGNIFICANT_CHAR)||(LA116_104>=45 && LA116_104<=79)) ) {
11540                                            alt116=2;
11541                                        }
11542                                        else if ( (LA116_104==44) ) {
11543                                            int LA116_34 = input.LA(8);
11544    
11545                                            if ( ((LA116_34>=FORCED_END_OF_LINE && LA116_34<=WIKI)||(LA116_34>=POUND && LA116_34<=EQUAL)||(LA116_34>=ITAL && LA116_34<=NOWIKI_CLOSE)||(LA116_34>=IMAGE_CLOSE && LA116_34<=79)) ) {
11546                                                alt116=1;
11547                                            }
11548                                            else if ( (LA116_34==PIPE||LA116_34==LINK_CLOSE) ) {
11549                                                alt116=2;
11550                                            }
11551                                            else {
11552                                                if (backtracking>0) {failed=true; return link;}
11553                                                NoViableAltException nvae =
11554                                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 34, input);
11555    
11556                                                throw nvae;
11557                                            }
11558                                        }
11559                                        else {
11560                                            if (backtracking>0) {failed=true; return link;}
11561                                            NoViableAltException nvae =
11562                                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 104, input);
11563    
11564                                            throw nvae;
11565                                        }
11566                                    }
11567                                    else if ( ((LA116_86>=FORCED_END_OF_LINE && LA116_86<=WIKI)||(LA116_86>=POUND && LA116_86<=74)||(LA116_86>=76 && LA116_86<=79)) ) {
11568                                        alt116=2;
11569                                    }
11570                                    else {
11571                                        if (backtracking>0) {failed=true; return link;}
11572                                        NoViableAltException nvae =
11573                                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 86, input);
11574    
11575                                        throw nvae;
11576                                    }
11577                                }
11578                                else if ( ((LA116_67>=FORCED_END_OF_LINE && LA116_67<=WIKI)||(LA116_67>=POUND && LA116_67<=47)||(LA116_67>=49 && LA116_67<=79)) ) {
11579                                    alt116=2;
11580                                }
11581                                else {
11582                                    if (backtracking>0) {failed=true; return link;}
11583                                    NoViableAltException nvae =
11584                                        new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 67, input);
11585    
11586                                    throw nvae;
11587                                }
11588                            }
11589                            else if ( ((LA116_47>=FORCED_END_OF_LINE && LA116_47<=WIKI)||(LA116_47>=POUND && LA116_47<=58)||(LA116_47>=60 && LA116_47<=79)) ) {
11590                                alt116=2;
11591                            }
11592                            else {
11593                                if (backtracking>0) {failed=true; return link;}
11594                                NoViableAltException nvae =
11595                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 47, input);
11596    
11597                                throw nvae;
11598                            }
11599                        }
11600                        else if ( ((LA116_27>=FORCED_END_OF_LINE && LA116_27<=WIKI)||(LA116_27>=POUND && LA116_27<=66)||(LA116_27>=68 && LA116_27<=79)) ) {
11601                            alt116=2;
11602                        }
11603                        else {
11604                            if (backtracking>0) {failed=true; return link;}
11605                            NoViableAltException nvae =
11606                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 27, input);
11607    
11608                            throw nvae;
11609                        }
11610                    }
11611                    else if ( ((LA116_9>=FORCED_END_OF_LINE && LA116_9<=WIKI)||(LA116_9>=POUND && LA116_9<=63)||(LA116_9>=65 && LA116_9<=79)) ) {
11612                        alt116=2;
11613                    }
11614                    else {
11615                        if (backtracking>0) {failed=true; return link;}
11616                        NoViableAltException nvae =
11617                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 9, input);
11618    
11619                        throw nvae;
11620                    }
11621                    }
11622                    break;
11623                case 61:
11624                    {
11625                    int LA116_10 = input.LA(2);
11626    
11627                    if ( (LA116_10==68) ) {
11628                        int LA116_28 = input.LA(3);
11629    
11630                        if ( (LA116_28==52) ) {
11631                            int LA116_48 = input.LA(4);
11632    
11633                            if ( (LA116_48==73) ) {
11634                                int LA116_68 = input.LA(5);
11635    
11636                                if ( (LA116_68==61) ) {
11637                                    int LA116_87 = input.LA(6);
11638    
11639                                    if ( (LA116_87==68) ) {
11640                                        int LA116_105 = input.LA(7);
11641    
11642                                        if ( (LA116_105==64) ) {
11643                                            int LA116_117 = input.LA(8);
11644    
11645                                            if ( (LA116_117==73) ) {
11646                                                int LA116_126 = input.LA(9);
11647    
11648                                                if ( ((LA116_126>=FORCED_END_OF_LINE && LA116_126<=WIKI)||(LA116_126>=POUND && LA116_126<=INSIGNIFICANT_CHAR)||(LA116_126>=45 && LA116_126<=79)) ) {
11649                                                    alt116=2;
11650                                                }
11651                                                else if ( (LA116_126==44) ) {
11652                                                    int LA116_34 = input.LA(10);
11653    
11654                                                    if ( ((LA116_34>=FORCED_END_OF_LINE && LA116_34<=WIKI)||(LA116_34>=POUND && LA116_34<=EQUAL)||(LA116_34>=ITAL && LA116_34<=NOWIKI_CLOSE)||(LA116_34>=IMAGE_CLOSE && LA116_34<=79)) ) {
11655                                                        alt116=1;
11656                                                    }
11657                                                    else if ( (LA116_34==PIPE||LA116_34==LINK_CLOSE) ) {
11658                                                        alt116=2;
11659                                                    }
11660                                                    else {
11661                                                        if (backtracking>0) {failed=true; return link;}
11662                                                        NoViableAltException nvae =
11663                                                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 34, input);
11664    
11665                                                        throw nvae;
11666                                                    }
11667                                                }
11668                                                else {
11669                                                    if (backtracking>0) {failed=true; return link;}
11670                                                    NoViableAltException nvae =
11671                                                        new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 126, input);
11672    
11673                                                    throw nvae;
11674                                                }
11675                                            }
11676                                            else if ( ((LA116_117>=FORCED_END_OF_LINE && LA116_117<=WIKI)||(LA116_117>=POUND && LA116_117<=72)||(LA116_117>=74 && LA116_117<=79)) ) {
11677                                                alt116=2;
11678                                            }
11679                                            else {
11680                                                if (backtracking>0) {failed=true; return link;}
11681                                                NoViableAltException nvae =
11682                                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 117, input);
11683    
11684                                                throw nvae;
11685                                            }
11686                                        }
11687                                        else if ( ((LA116_105>=FORCED_END_OF_LINE && LA116_105<=WIKI)||(LA116_105>=POUND && LA116_105<=63)||(LA116_105>=65 && LA116_105<=79)) ) {
11688                                            alt116=2;
11689                                        }
11690                                        else {
11691                                            if (backtracking>0) {failed=true; return link;}
11692                                            NoViableAltException nvae =
11693                                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 105, input);
11694    
11695                                            throw nvae;
11696                                        }
11697                                    }
11698                                    else if ( ((LA116_87>=FORCED_END_OF_LINE && LA116_87<=WIKI)||(LA116_87>=POUND && LA116_87<=67)||(LA116_87>=69 && LA116_87<=79)) ) {
11699                                        alt116=2;
11700                                    }
11701                                    else {
11702                                        if (backtracking>0) {failed=true; return link;}
11703                                        NoViableAltException nvae =
11704                                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 87, input);
11705    
11706                                        throw nvae;
11707                                    }
11708                                }
11709                                else if ( ((LA116_68>=FORCED_END_OF_LINE && LA116_68<=WIKI)||(LA116_68>=POUND && LA116_68<=60)||(LA116_68>=62 && LA116_68<=79)) ) {
11710                                    alt116=2;
11711                                }
11712                                else {
11713                                    if (backtracking>0) {failed=true; return link;}
11714                                    NoViableAltException nvae =
11715                                        new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 68, input);
11716    
11717                                    throw nvae;
11718                                }
11719                            }
11720                            else if ( ((LA116_48>=FORCED_END_OF_LINE && LA116_48<=WIKI)||(LA116_48>=POUND && LA116_48<=72)||(LA116_48>=74 && LA116_48<=79)) ) {
11721                                alt116=2;
11722                            }
11723                            else {
11724                                if (backtracking>0) {failed=true; return link;}
11725                                NoViableAltException nvae =
11726                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 48, input);
11727    
11728                                throw nvae;
11729                            }
11730                        }
11731                        else if ( ((LA116_28>=FORCED_END_OF_LINE && LA116_28<=WIKI)||(LA116_28>=POUND && LA116_28<=51)||(LA116_28>=53 && LA116_28<=79)) ) {
11732                            alt116=2;
11733                        }
11734                        else {
11735                            if (backtracking>0) {failed=true; return link;}
11736                            NoViableAltException nvae =
11737                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 28, input);
11738    
11739                            throw nvae;
11740                        }
11741                    }
11742                    else if ( ((LA116_10>=FORCED_END_OF_LINE && LA116_10<=WIKI)||(LA116_10>=POUND && LA116_10<=67)||(LA116_10>=69 && LA116_10<=79)) ) {
11743                        alt116=2;
11744                    }
11745                    else {
11746                        if (backtracking>0) {failed=true; return link;}
11747                        NoViableAltException nvae =
11748                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 10, input);
11749    
11750                        throw nvae;
11751                    }
11752                    }
11753                    break;
11754                case 76:
11755                    {
11756                    switch ( input.LA(2) ) {
11757                    case 51:
11758                        {
11759                        int LA116_29 = input.LA(3);
11760    
11761                        if ( (LA116_29==52) ) {
11762                            int LA116_49 = input.LA(4);
11763    
11764                            if ( (LA116_49==49) ) {
11765                                int LA116_69 = input.LA(5);
11766    
11767                                if ( (LA116_69==52) ) {
11768                                    int LA116_88 = input.LA(6);
11769    
11770                                    if ( (LA116_88==44) ) {
11771                                        int LA116_34 = input.LA(7);
11772    
11773                                        if ( ((LA116_34>=FORCED_END_OF_LINE && LA116_34<=WIKI)||(LA116_34>=POUND && LA116_34<=EQUAL)||(LA116_34>=ITAL && LA116_34<=NOWIKI_CLOSE)||(LA116_34>=IMAGE_CLOSE && LA116_34<=79)) ) {
11774                                            alt116=1;
11775                                        }
11776                                        else if ( (LA116_34==PIPE||LA116_34==LINK_CLOSE) ) {
11777                                            alt116=2;
11778                                        }
11779                                        else {
11780                                            if (backtracking>0) {failed=true; return link;}
11781                                            NoViableAltException nvae =
11782                                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 34, input);
11783    
11784                                            throw nvae;
11785                                        }
11786                                    }
11787                                    else if ( ((LA116_88>=FORCED_END_OF_LINE && LA116_88<=WIKI)||(LA116_88>=POUND && LA116_88<=INSIGNIFICANT_CHAR)||(LA116_88>=45 && LA116_88<=79)) ) {
11788                                        alt116=2;
11789                                    }
11790                                    else {
11791                                        if (backtracking>0) {failed=true; return link;}
11792                                        NoViableAltException nvae =
11793                                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 88, input);
11794    
11795                                        throw nvae;
11796                                    }
11797                                }
11798                                else if ( ((LA116_69>=FORCED_END_OF_LINE && LA116_69<=WIKI)||(LA116_69>=POUND && LA116_69<=51)||(LA116_69>=53 && LA116_69<=79)) ) {
11799                                    alt116=2;
11800                                }
11801                                else {
11802                                    if (backtracking>0) {failed=true; return link;}
11803                                    NoViableAltException nvae =
11804                                        new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 69, input);
11805    
11806                                    throw nvae;
11807                                }
11808                            }
11809                            else if ( ((LA116_49>=FORCED_END_OF_LINE && LA116_49<=WIKI)||(LA116_49>=POUND && LA116_49<=48)||(LA116_49>=50 && LA116_49<=79)) ) {
11810                                alt116=2;
11811                            }
11812                            else {
11813                                if (backtracking>0) {failed=true; return link;}
11814                                NoViableAltException nvae =
11815                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 49, input);
11816    
11817                                throw nvae;
11818                            }
11819                        }
11820                        else if ( ((LA116_29>=FORCED_END_OF_LINE && LA116_29<=WIKI)||(LA116_29>=POUND && LA116_29<=51)||(LA116_29>=53 && LA116_29<=79)) ) {
11821                            alt116=2;
11822                        }
11823                        else {
11824                            if (backtracking>0) {failed=true; return link;}
11825                            NoViableAltException nvae =
11826                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 29, input);
11827    
11828                            throw nvae;
11829                        }
11830                        }
11831                        break;
11832                    case 52:
11833                        {
11834                        int LA116_30 = input.LA(3);
11835    
11836                        if ( (LA116_30==67) ) {
11837                            int LA116_50 = input.LA(4);
11838    
11839                            if ( (LA116_50==67) ) {
11840                                int LA116_70 = input.LA(5);
11841    
11842                                if ( (LA116_70==54) ) {
11843                                    int LA116_89 = input.LA(6);
11844    
11845                                    if ( (LA116_89==77) ) {
11846                                        int LA116_106 = input.LA(7);
11847    
11848                                        if ( (LA116_106==51) ) {
11849                                            int LA116_118 = input.LA(8);
11850    
11851                                            if ( (LA116_118==52) ) {
11852                                                int LA116_127 = input.LA(9);
11853    
11854                                                if ( (LA116_127==49) ) {
11855                                                    int LA116_131 = input.LA(10);
11856    
11857                                                    if ( (LA116_131==52) ) {
11858                                                        int LA116_134 = input.LA(11);
11859    
11860                                                        if ( ((LA116_134>=FORCED_END_OF_LINE && LA116_134<=WIKI)||(LA116_134>=POUND && LA116_134<=INSIGNIFICANT_CHAR)||(LA116_134>=45 && LA116_134<=79)) ) {
11861                                                            alt116=2;
11862                                                        }
11863                                                        else if ( (LA116_134==44) ) {
11864                                                            int LA116_34 = input.LA(12);
11865    
11866                                                            if ( ((LA116_34>=FORCED_END_OF_LINE && LA116_34<=WIKI)||(LA116_34>=POUND && LA116_34<=EQUAL)||(LA116_34>=ITAL && LA116_34<=NOWIKI_CLOSE)||(LA116_34>=IMAGE_CLOSE && LA116_34<=79)) ) {
11867                                                                alt116=1;
11868                                                            }
11869                                                            else if ( (LA116_34==PIPE||LA116_34==LINK_CLOSE) ) {
11870                                                                alt116=2;
11871                                                            }
11872                                                            else {
11873                                                                if (backtracking>0) {failed=true; return link;}
11874                                                                NoViableAltException nvae =
11875                                                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 34, input);
11876    
11877                                                                throw nvae;
11878                                                            }
11879                                                        }
11880                                                        else {
11881                                                            if (backtracking>0) {failed=true; return link;}
11882                                                            NoViableAltException nvae =
11883                                                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 134, input);
11884    
11885                                                            throw nvae;
11886                                                        }
11887                                                    }
11888                                                    else if ( ((LA116_131>=FORCED_END_OF_LINE && LA116_131<=WIKI)||(LA116_131>=POUND && LA116_131<=51)||(LA116_131>=53 && LA116_131<=79)) ) {
11889                                                        alt116=2;
11890                                                    }
11891                                                    else {
11892                                                        if (backtracking>0) {failed=true; return link;}
11893                                                        NoViableAltException nvae =
11894                                                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 131, input);
11895    
11896                                                        throw nvae;
11897                                                    }
11898                                                }
11899                                                else if ( ((LA116_127>=FORCED_END_OF_LINE && LA116_127<=WIKI)||(LA116_127>=POUND && LA116_127<=48)||(LA116_127>=50 && LA116_127<=79)) ) {
11900                                                    alt116=2;
11901                                                }
11902                                                else {
11903                                                    if (backtracking>0) {failed=true; return link;}
11904                                                    NoViableAltException nvae =
11905                                                        new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 127, input);
11906    
11907                                                    throw nvae;
11908                                                }
11909                                            }
11910                                            else if ( ((LA116_118>=FORCED_END_OF_LINE && LA116_118<=WIKI)||(LA116_118>=POUND && LA116_118<=51)||(LA116_118>=53 && LA116_118<=79)) ) {
11911                                                alt116=2;
11912                                            }
11913                                            else {
11914                                                if (backtracking>0) {failed=true; return link;}
11915                                                NoViableAltException nvae =
11916                                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 118, input);
11917    
11918                                                throw nvae;
11919                                            }
11920                                        }
11921                                        else if ( ((LA116_106>=FORCED_END_OF_LINE && LA116_106<=WIKI)||(LA116_106>=POUND && LA116_106<=50)||(LA116_106>=52 && LA116_106<=79)) ) {
11922                                            alt116=2;
11923                                        }
11924                                        else {
11925                                            if (backtracking>0) {failed=true; return link;}
11926                                            NoViableAltException nvae =
11927                                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 106, input);
11928    
11929                                            throw nvae;
11930                                        }
11931                                    }
11932                                    else if ( ((LA116_89>=FORCED_END_OF_LINE && LA116_89<=WIKI)||(LA116_89>=POUND && LA116_89<=76)||(LA116_89>=78 && LA116_89<=79)) ) {
11933                                        alt116=2;
11934                                    }
11935                                    else {
11936                                        if (backtracking>0) {failed=true; return link;}
11937                                        NoViableAltException nvae =
11938                                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 89, input);
11939    
11940                                        throw nvae;
11941                                    }
11942                                }
11943                                else if ( ((LA116_70>=FORCED_END_OF_LINE && LA116_70<=WIKI)||(LA116_70>=POUND && LA116_70<=53)||(LA116_70>=55 && LA116_70<=79)) ) {
11944                                    alt116=2;
11945                                }
11946                                else {
11947                                    if (backtracking>0) {failed=true; return link;}
11948                                    NoViableAltException nvae =
11949                                        new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 70, input);
11950    
11951                                    throw nvae;
11952                                }
11953                            }
11954                            else if ( ((LA116_50>=FORCED_END_OF_LINE && LA116_50<=WIKI)||(LA116_50>=POUND && LA116_50<=66)||(LA116_50>=68 && LA116_50<=79)) ) {
11955                                alt116=2;
11956                            }
11957                            else {
11958                                if (backtracking>0) {failed=true; return link;}
11959                                NoViableAltException nvae =
11960                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 50, input);
11961    
11962                                throw nvae;
11963                            }
11964                        }
11965                        else if ( ((LA116_30>=FORCED_END_OF_LINE && LA116_30<=WIKI)||(LA116_30>=POUND && LA116_30<=66)||(LA116_30>=68 && LA116_30<=79)) ) {
11966                            alt116=2;
11967                        }
11968                        else {
11969                            if (backtracking>0) {failed=true; return link;}
11970                            NoViableAltException nvae =
11971                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 30, input);
11972    
11973                            throw nvae;
11974                        }
11975                        }
11976                        break;
11977                    case FORCED_END_OF_LINE:
11978                    case HEADING_SECTION:
11979                    case HORIZONTAL_SECTION:
11980                    case LIST_ITEM:
11981                    case LIST_ITEM_PART:
11982                    case NOWIKI_SECTION:
11983                    case SCAPE_NODE:
11984                    case TEXT_NODE:
11985                    case UNORDERED_LIST:
11986                    case UNFORMATTED_TEXT:
11987                    case WIKI:
11988                    case POUND:
11989                    case STAR:
11990                    case EQUAL:
11991                    case PIPE:
11992                    case ITAL:
11993                    case LINK_OPEN:
11994                    case IMAGE_OPEN:
11995                    case NOWIKI_OPEN:
11996                    case EXTENSION:
11997                    case FORCED_LINEBREAK:
11998                    case ESCAPE:
11999                    case NOWIKI_BLOCK_CLOSE:
12000                    case NOWIKI_CLOSE:
12001                    case LINK_CLOSE:
12002                    case IMAGE_CLOSE:
12003                    case BLANKS:
12004                    case TABLE_OF_CONTENTS_TEXT:
12005                    case DASH:
12006                    case CR:
12007                    case LF:
12008                    case SPACE:
12009                    case TABULATOR:
12010                    case BRACE_CLOSE:
12011                    case COLON_SLASH:
12012                    case SLASH:
12013                    case TABLE_OF_CONTENTS_OPEN_MARKUP:
12014                    case TABLE_OF_CONTENTS_CLOSE_MARKUP:
12015                    case INSIGNIFICANT_CHAR:
12016                    case 44:
12017                    case 45:
12018                    case 46:
12019                    case 47:
12020                    case 48:
12021                    case 49:
12022                    case 50:
12023                    case 53:
12024                    case 54:
12025                    case 55:
12026                    case 56:
12027                    case 57:
12028                    case 58:
12029                    case 59:
12030                    case 60:
12031                    case 61:
12032                    case 62:
12033                    case 63:
12034                    case 64:
12035                    case 65:
12036                    case 66:
12037                    case 67:
12038                    case 68:
12039                    case 69:
12040                    case 70:
12041                    case 71:
12042                    case 72:
12043                    case 73:
12044                    case 74:
12045                    case 75:
12046                    case 76:
12047                    case 77:
12048                    case 78:
12049                    case 79:
12050                        {
12051                        alt116=2;
12052                        }
12053                        break;
12054                    default:
12055                        if (backtracking>0) {failed=true; return link;}
12056                        NoViableAltException nvae =
12057                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 11, input);
12058    
12059                        throw nvae;
12060                    }
12061    
12062                    }
12063                    break;
12064                case 78:
12065                    {
12066                    int LA116_12 = input.LA(2);
12067    
12068                    if ( (LA116_12==71) ) {
12069                        int LA116_31 = input.LA(3);
12070    
12071                        if ( (LA116_31==59) ) {
12072                            int LA116_51 = input.LA(4);
12073    
12074                            if ( (LA116_51==70) ) {
12075                                int LA116_71 = input.LA(5);
12076    
12077                                if ( (LA116_71==48) ) {
12078                                    int LA116_90 = input.LA(6);
12079    
12080                                    if ( (LA116_90==67) ) {
12081                                        int LA116_107 = input.LA(7);
12082    
12083                                        if ( ((LA116_107>=FORCED_END_OF_LINE && LA116_107<=WIKI)||(LA116_107>=POUND && LA116_107<=INSIGNIFICANT_CHAR)||(LA116_107>=45 && LA116_107<=79)) ) {
12084                                            alt116=2;
12085                                        }
12086                                        else if ( (LA116_107==44) ) {
12087                                            int LA116_34 = input.LA(8);
12088    
12089                                            if ( ((LA116_34>=FORCED_END_OF_LINE && LA116_34<=WIKI)||(LA116_34>=POUND && LA116_34<=EQUAL)||(LA116_34>=ITAL && LA116_34<=NOWIKI_CLOSE)||(LA116_34>=IMAGE_CLOSE && LA116_34<=79)) ) {
12090                                                alt116=1;
12091                                            }
12092                                            else if ( (LA116_34==PIPE||LA116_34==LINK_CLOSE) ) {
12093                                                alt116=2;
12094                                            }
12095                                            else {
12096                                                if (backtracking>0) {failed=true; return link;}
12097                                                NoViableAltException nvae =
12098                                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 34, input);
12099    
12100                                                throw nvae;
12101                                            }
12102                                        }
12103                                        else {
12104                                            if (backtracking>0) {failed=true; return link;}
12105                                            NoViableAltException nvae =
12106                                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 107, input);
12107    
12108                                            throw nvae;
12109                                        }
12110                                    }
12111                                    else if ( ((LA116_90>=FORCED_END_OF_LINE && LA116_90<=WIKI)||(LA116_90>=POUND && LA116_90<=66)||(LA116_90>=68 && LA116_90<=79)) ) {
12112                                        alt116=2;
12113                                    }
12114                                    else {
12115                                        if (backtracking>0) {failed=true; return link;}
12116                                        NoViableAltException nvae =
12117                                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 90, input);
12118    
12119                                        throw nvae;
12120                                    }
12121                                }
12122                                else if ( ((LA116_71>=FORCED_END_OF_LINE && LA116_71<=WIKI)||(LA116_71>=POUND && LA116_71<=47)||(LA116_71>=49 && LA116_71<=79)) ) {
12123                                    alt116=2;
12124                                }
12125                                else {
12126                                    if (backtracking>0) {failed=true; return link;}
12127                                    NoViableAltException nvae =
12128                                        new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 71, input);
12129    
12130                                    throw nvae;
12131                                }
12132                            }
12133                            else if ( ((LA116_51>=FORCED_END_OF_LINE && LA116_51<=WIKI)||(LA116_51>=POUND && LA116_51<=69)||(LA116_51>=71 && LA116_51<=79)) ) {
12134                                alt116=2;
12135                            }
12136                            else {
12137                                if (backtracking>0) {failed=true; return link;}
12138                                NoViableAltException nvae =
12139                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 51, input);
12140    
12141                                throw nvae;
12142                            }
12143                        }
12144                        else if ( ((LA116_31>=FORCED_END_OF_LINE && LA116_31<=WIKI)||(LA116_31>=POUND && LA116_31<=58)||(LA116_31>=60 && LA116_31<=79)) ) {
12145                            alt116=2;
12146                        }
12147                        else {
12148                            if (backtracking>0) {failed=true; return link;}
12149                            NoViableAltException nvae =
12150                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 31, input);
12151    
12152                            throw nvae;
12153                        }
12154                    }
12155                    else if ( ((LA116_12>=FORCED_END_OF_LINE && LA116_12<=WIKI)||(LA116_12>=POUND && LA116_12<=70)||(LA116_12>=72 && LA116_12<=79)) ) {
12156                        alt116=2;
12157                    }
12158                    else {
12159                        if (backtracking>0) {failed=true; return link;}
12160                        NoViableAltException nvae =
12161                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 12, input);
12162    
12163                        throw nvae;
12164                    }
12165                    }
12166                    break;
12167                case 51:
12168                    {
12169                    int LA116_13 = input.LA(2);
12170    
12171                    if ( (LA116_13==52) ) {
12172                        int LA116_32 = input.LA(3);
12173    
12174                        if ( (LA116_32==49) ) {
12175                            int LA116_52 = input.LA(4);
12176    
12177                            if ( (LA116_52==52) ) {
12178                                int LA116_72 = input.LA(5);
12179    
12180                                if ( (LA116_72==73) ) {
12181                                    int LA116_91 = input.LA(6);
12182    
12183                                    if ( (LA116_91==59) ) {
12184                                        int LA116_108 = input.LA(7);
12185    
12186                                        if ( (LA116_108==67) ) {
12187                                            int LA116_119 = input.LA(8);
12188    
12189                                            if ( (LA116_119==52) ) {
12190                                                int LA116_128 = input.LA(9);
12191    
12192                                                if ( (LA116_128==64) ) {
12193                                                    int LA116_132 = input.LA(10);
12194    
12195                                                    if ( ((LA116_132>=FORCED_END_OF_LINE && LA116_132<=WIKI)||(LA116_132>=POUND && LA116_132<=INSIGNIFICANT_CHAR)||(LA116_132>=45 && LA116_132<=79)) ) {
12196                                                        alt116=2;
12197                                                    }
12198                                                    else if ( (LA116_132==44) ) {
12199                                                        int LA116_34 = input.LA(11);
12200    
12201                                                        if ( ((LA116_34>=FORCED_END_OF_LINE && LA116_34<=WIKI)||(LA116_34>=POUND && LA116_34<=EQUAL)||(LA116_34>=ITAL && LA116_34<=NOWIKI_CLOSE)||(LA116_34>=IMAGE_CLOSE && LA116_34<=79)) ) {
12202                                                            alt116=1;
12203                                                        }
12204                                                        else if ( (LA116_34==PIPE||LA116_34==LINK_CLOSE) ) {
12205                                                            alt116=2;
12206                                                        }
12207                                                        else {
12208                                                            if (backtracking>0) {failed=true; return link;}
12209                                                            NoViableAltException nvae =
12210                                                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 34, input);
12211    
12212                                                            throw nvae;
12213                                                        }
12214                                                    }
12215                                                    else {
12216                                                        if (backtracking>0) {failed=true; return link;}
12217                                                        NoViableAltException nvae =
12218                                                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 132, input);
12219    
12220                                                        throw nvae;
12221                                                    }
12222                                                }
12223                                                else if ( ((LA116_128>=FORCED_END_OF_LINE && LA116_128<=WIKI)||(LA116_128>=POUND && LA116_128<=63)||(LA116_128>=65 && LA116_128<=79)) ) {
12224                                                    alt116=2;
12225                                                }
12226                                                else {
12227                                                    if (backtracking>0) {failed=true; return link;}
12228                                                    NoViableAltException nvae =
12229                                                        new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 128, input);
12230    
12231                                                    throw nvae;
12232                                                }
12233                                            }
12234                                            else if ( ((LA116_119>=FORCED_END_OF_LINE && LA116_119<=WIKI)||(LA116_119>=POUND && LA116_119<=51)||(LA116_119>=53 && LA116_119<=79)) ) {
12235                                                alt116=2;
12236                                            }
12237                                            else {
12238                                                if (backtracking>0) {failed=true; return link;}
12239                                                NoViableAltException nvae =
12240                                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 119, input);
12241    
12242                                                throw nvae;
12243                                            }
12244                                        }
12245                                        else if ( ((LA116_108>=FORCED_END_OF_LINE && LA116_108<=WIKI)||(LA116_108>=POUND && LA116_108<=66)||(LA116_108>=68 && LA116_108<=79)) ) {
12246                                            alt116=2;
12247                                        }
12248                                        else {
12249                                            if (backtracking>0) {failed=true; return link;}
12250                                            NoViableAltException nvae =
12251                                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 108, input);
12252    
12253                                            throw nvae;
12254                                        }
12255                                    }
12256                                    else if ( ((LA116_91>=FORCED_END_OF_LINE && LA116_91<=WIKI)||(LA116_91>=POUND && LA116_91<=58)||(LA116_91>=60 && LA116_91<=79)) ) {
12257                                        alt116=2;
12258                                    }
12259                                    else {
12260                                        if (backtracking>0) {failed=true; return link;}
12261                                        NoViableAltException nvae =
12262                                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 91, input);
12263    
12264                                        throw nvae;
12265                                    }
12266                                }
12267                                else if ( ((LA116_72>=FORCED_END_OF_LINE && LA116_72<=WIKI)||(LA116_72>=POUND && LA116_72<=72)||(LA116_72>=74 && LA116_72<=79)) ) {
12268                                    alt116=2;
12269                                }
12270                                else {
12271                                    if (backtracking>0) {failed=true; return link;}
12272                                    NoViableAltException nvae =
12273                                        new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 72, input);
12274    
12275                                    throw nvae;
12276                                }
12277                            }
12278                            else if ( ((LA116_52>=FORCED_END_OF_LINE && LA116_52<=WIKI)||(LA116_52>=POUND && LA116_52<=51)||(LA116_52>=53 && LA116_52<=79)) ) {
12279                                alt116=2;
12280                            }
12281                            else {
12282                                if (backtracking>0) {failed=true; return link;}
12283                                NoViableAltException nvae =
12284                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 52, input);
12285    
12286                                throw nvae;
12287                            }
12288                        }
12289                        else if ( ((LA116_32>=FORCED_END_OF_LINE && LA116_32<=WIKI)||(LA116_32>=POUND && LA116_32<=48)||(LA116_32>=50 && LA116_32<=79)) ) {
12290                            alt116=2;
12291                        }
12292                        else {
12293                            if (backtracking>0) {failed=true; return link;}
12294                            NoViableAltException nvae =
12295                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 32, input);
12296    
12297                            throw nvae;
12298                        }
12299                    }
12300                    else if ( ((LA116_13>=FORCED_END_OF_LINE && LA116_13<=WIKI)||(LA116_13>=POUND && LA116_13<=51)||(LA116_13>=53 && LA116_13<=79)) ) {
12301                        alt116=2;
12302                    }
12303                    else {
12304                        if (backtracking>0) {failed=true; return link;}
12305                        NoViableAltException nvae =
12306                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 13, input);
12307    
12308                        throw nvae;
12309                    }
12310                    }
12311                    break;
12312                case 79:
12313                    {
12314                    int LA116_14 = input.LA(2);
12315    
12316                    if ( (LA116_14==51) ) {
12317                        int LA116_33 = input.LA(3);
12318    
12319                        if ( (LA116_33==52) ) {
12320                            int LA116_53 = input.LA(4);
12321    
12322                            if ( (LA116_53==49) ) {
12323                                int LA116_73 = input.LA(5);
12324    
12325                                if ( (LA116_73==52) ) {
12326                                    int LA116_92 = input.LA(6);
12327    
12328                                    if ( ((LA116_92>=FORCED_END_OF_LINE && LA116_92<=WIKI)||(LA116_92>=POUND && LA116_92<=INSIGNIFICANT_CHAR)||(LA116_92>=45 && LA116_92<=79)) ) {
12329                                        alt116=2;
12330                                    }
12331                                    else if ( (LA116_92==44) ) {
12332                                        int LA116_34 = input.LA(7);
12333    
12334                                        if ( ((LA116_34>=FORCED_END_OF_LINE && LA116_34<=WIKI)||(LA116_34>=POUND && LA116_34<=EQUAL)||(LA116_34>=ITAL && LA116_34<=NOWIKI_CLOSE)||(LA116_34>=IMAGE_CLOSE && LA116_34<=79)) ) {
12335                                            alt116=1;
12336                                        }
12337                                        else if ( (LA116_34==PIPE||LA116_34==LINK_CLOSE) ) {
12338                                            alt116=2;
12339                                        }
12340                                        else {
12341                                            if (backtracking>0) {failed=true; return link;}
12342                                            NoViableAltException nvae =
12343                                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 34, input);
12344    
12345                                            throw nvae;
12346                                        }
12347                                    }
12348                                    else {
12349                                        if (backtracking>0) {failed=true; return link;}
12350                                        NoViableAltException nvae =
12351                                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 92, input);
12352    
12353                                        throw nvae;
12354                                    }
12355                                }
12356                                else if ( ((LA116_73>=FORCED_END_OF_LINE && LA116_73<=WIKI)||(LA116_73>=POUND && LA116_73<=51)||(LA116_73>=53 && LA116_73<=79)) ) {
12357                                    alt116=2;
12358                                }
12359                                else {
12360                                    if (backtracking>0) {failed=true; return link;}
12361                                    NoViableAltException nvae =
12362                                        new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 73, input);
12363    
12364                                    throw nvae;
12365                                }
12366                            }
12367                            else if ( ((LA116_53>=FORCED_END_OF_LINE && LA116_53<=WIKI)||(LA116_53>=POUND && LA116_53<=48)||(LA116_53>=50 && LA116_53<=79)) ) {
12368                                alt116=2;
12369                            }
12370                            else {
12371                                if (backtracking>0) {failed=true; return link;}
12372                                NoViableAltException nvae =
12373                                    new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 53, input);
12374    
12375                                throw nvae;
12376                            }
12377                        }
12378                        else if ( ((LA116_33>=FORCED_END_OF_LINE && LA116_33<=WIKI)||(LA116_33>=POUND && LA116_33<=51)||(LA116_33>=53 && LA116_33<=79)) ) {
12379                            alt116=2;
12380                        }
12381                        else {
12382                            if (backtracking>0) {failed=true; return link;}
12383                            NoViableAltException nvae =
12384                                new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 33, input);
12385    
12386                            throw nvae;
12387                        }
12388                    }
12389                    else if ( ((LA116_14>=FORCED_END_OF_LINE && LA116_14<=WIKI)||(LA116_14>=POUND && LA116_14<=50)||(LA116_14>=52 && LA116_14<=79)) ) {
12390                        alt116=2;
12391                    }
12392                    else {
12393                        if (backtracking>0) {failed=true; return link;}
12394                        NoViableAltException nvae =
12395                            new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 14, input);
12396    
12397                        throw nvae;
12398                    }
12399                    }
12400                    break;
12401                case FORCED_END_OF_LINE:
12402                case HEADING_SECTION:
12403                case HORIZONTAL_SECTION:
12404                case LIST_ITEM:
12405                case LIST_ITEM_PART:
12406                case NOWIKI_SECTION:
12407                case SCAPE_NODE:
12408                case TEXT_NODE:
12409                case UNORDERED_LIST:
12410                case UNFORMATTED_TEXT:
12411                case WIKI:
12412                case POUND:
12413                case STAR:
12414                case EQUAL:
12415                case ITAL:
12416                case LINK_OPEN:
12417                case IMAGE_OPEN:
12418                case NOWIKI_OPEN:
12419                case EXTENSION:
12420                case FORCED_LINEBREAK:
12421                case ESCAPE:
12422                case NOWIKI_BLOCK_CLOSE:
12423                case NOWIKI_CLOSE:
12424                case IMAGE_CLOSE:
12425                case BLANKS:
12426                case TABLE_OF_CONTENTS_TEXT:
12427                case DASH:
12428                case CR:
12429                case LF:
12430                case SPACE:
12431                case TABULATOR:
12432                case BRACE_CLOSE:
12433                case COLON_SLASH:
12434                case SLASH:
12435                case TABLE_OF_CONTENTS_OPEN_MARKUP:
12436                case TABLE_OF_CONTENTS_CLOSE_MARKUP:
12437                case INSIGNIFICANT_CHAR:
12438                case 44:
12439                case 46:
12440                case 48:
12441                case 49:
12442                case 50:
12443                case 52:
12444                case 54:
12445                case 55:
12446                case 56:
12447                case 58:
12448                case 59:
12449                case 64:
12450                case 65:
12451                case 66:
12452                case 67:
12453                case 68:
12454                case 70:
12455                case 71:
12456                case 72:
12457                case 73:
12458                case 75:
12459                case 77:
12460                    {
12461                    alt116=2;
12462                    }
12463                    break;
12464                default:
12465                    if (backtracking>0) {failed=true; return link;}
12466                    NoViableAltException nvae =
12467                        new NoViableAltException("796:1: link_address returns [LinkNode link =null] : (li= link_interwiki_uri ':' p= link_interwiki_pagename | lu= link_uri );", 116, 0, input);
12468    
12469                    throw nvae;
12470                }
12471    
12472                switch (alt116) {
12473                    case 1 :
12474                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:797:4: li= link_interwiki_uri ':' p= link_interwiki_pagename
12475                        {
12476                        pushFollow(FOLLOW_link_interwiki_uri_in_link_address3259);
12477                        li=link_interwiki_uri();
12478                        _fsp--;
12479                        if (failed) return link;
12480                        match(input,44,FOLLOW_44_in_link_address3262); if (failed) return link;
12481                        pushFollow(FOLLOW_link_interwiki_pagename_in_link_address3269);
12482                        p=link_interwiki_pagename();
12483                        _fsp--;
12484                        if (failed) return link;
12485                        if ( backtracking==0 ) {
12486    
12487                                                                    li.setUri(p.toString());
12488                                                                    link = li;
12489                                                            
12490                        }
12491    
12492                        }
12493                        break;
12494                    case 2 :
12495                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:801:4: lu= link_uri
12496                        {
12497                        pushFollow(FOLLOW_link_uri_in_link_address3280);
12498                        lu=link_uri();
12499                        _fsp--;
12500                        if (failed) return link;
12501                        if ( backtracking==0 ) {
12502                          link = new LinkNode(lu.toString()); 
12503                        }
12504    
12505                        }
12506                        break;
12507    
12508                }
12509            }
12510            catch (RecognitionException re) {
12511                reportError(re);
12512                recover(input,re);
12513            }
12514            finally {
12515            }
12516            return link;
12517        }
12518        // $ANTLR end link_address
12519    
12520    
12521        // $ANTLR start link_interwiki_uri
12522        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:803:1: link_interwiki_uri returns [InterwikiLinkNode interwiki = null] : ( 'C' '2' | 'D' 'o' 'k' 'u' 'W' 'i' 'k' 'i' | 'F' 'l' 'i' 'c' 'k' 'r' | 'G' 'o' 'o' 'g' 'l' 'e' | 'J' 'S' 'P' 'W' 'i' 'k' 'i' | 'M' 'e' 'a' 't' 'b' 'a' 'l' 'l' | 'M' 'e' 'd' 'i' 'a' 'W' 'i' 'k' 'i' | 'M' 'o' 'i' 'n' 'M' 'o' 'i' 'n' | 'O' 'd' 'd' 'm' 'u' 's' 'e' | 'O' 'h' 'a' 'n' 'a' | 'P' 'm' 'W' 'i' 'k' 'i' | 'P' 'u' 'k' 'i' 'W' 'i' 'k' 'i' | 'P' 'u' 'r' 'p' 'l' 'e' 'W' 'i' 'k' 'i' | 'R' 'a' 'd' 'e' 'o' 'x' | 'S' 'n' 'i' 'p' 'S' 'n' 'a' 'p' | 'T' 'i' 'd' 'd' 'l' 'y' 'W' 'i' 'k' 'i' | 'T' 'W' 'i' 'k' 'i' | 'U' 's' 'e' 'm' 'o' 'd' | 'W' 'i' 'k' 'i' 'p' 'e' 'd' 'i' 'a' | 'X' 'W' 'i' 'k' 'i' );
12523        public final InterwikiLinkNode link_interwiki_uri() throws RecognitionException {
12524            InterwikiLinkNode interwiki =  null;
12525    
12526            try {
12527                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:804:2: ( 'C' '2' | 'D' 'o' 'k' 'u' 'W' 'i' 'k' 'i' | 'F' 'l' 'i' 'c' 'k' 'r' | 'G' 'o' 'o' 'g' 'l' 'e' | 'J' 'S' 'P' 'W' 'i' 'k' 'i' | 'M' 'e' 'a' 't' 'b' 'a' 'l' 'l' | 'M' 'e' 'd' 'i' 'a' 'W' 'i' 'k' 'i' | 'M' 'o' 'i' 'n' 'M' 'o' 'i' 'n' | 'O' 'd' 'd' 'm' 'u' 's' 'e' | 'O' 'h' 'a' 'n' 'a' | 'P' 'm' 'W' 'i' 'k' 'i' | 'P' 'u' 'k' 'i' 'W' 'i' 'k' 'i' | 'P' 'u' 'r' 'p' 'l' 'e' 'W' 'i' 'k' 'i' | 'R' 'a' 'd' 'e' 'o' 'x' | 'S' 'n' 'i' 'p' 'S' 'n' 'a' 'p' | 'T' 'i' 'd' 'd' 'l' 'y' 'W' 'i' 'k' 'i' | 'T' 'W' 'i' 'k' 'i' | 'U' 's' 'e' 'm' 'o' 'd' | 'W' 'i' 'k' 'i' 'p' 'e' 'd' 'i' 'a' | 'X' 'W' 'i' 'k' 'i' )
12528                int alt117=20;
12529                switch ( input.LA(1) ) {
12530                case 45:
12531                    {
12532                    alt117=1;
12533                    }
12534                    break;
12535                case 47:
12536                    {
12537                    alt117=2;
12538                    }
12539                    break;
12540                case 53:
12541                    {
12542                    alt117=3;
12543                    }
12544                    break;
12545                case 57:
12546                    {
12547                    alt117=4;
12548                    }
12549                    break;
12550                case 60:
12551                    {
12552                    alt117=5;
12553                    }
12554                    break;
12555                case 63:
12556                    {
12557                    int LA117_6 = input.LA(2);
12558    
12559                    if ( (LA117_6==59) ) {
12560                        int LA117_15 = input.LA(3);
12561    
12562                        if ( (LA117_15==64) ) {
12563                            alt117=6;
12564                        }
12565                        else if ( (LA117_15==67) ) {
12566                            alt117=7;
12567                        }
12568                        else {
12569                            if (backtracking>0) {failed=true; return interwiki;}
12570                            NoViableAltException nvae =
12571                                new NoViableAltException("803:1: link_interwiki_uri returns [InterwikiLinkNode interwiki = null] : ( 'C' '2' | 'D' 'o' 'k' 'u' 'W' 'i' 'k' 'i' | 'F' 'l' 'i' 'c' 'k' 'r' | 'G' 'o' 'o' 'g' 'l' 'e' | 'J' 'S' 'P' 'W' 'i' 'k' 'i' | 'M' 'e' 'a' 't' 'b' 'a' 'l' 'l' | 'M' 'e' 'd' 'i' 'a' 'W' 'i' 'k' 'i' | 'M' 'o' 'i' 'n' 'M' 'o' 'i' 'n' | 'O' 'd' 'd' 'm' 'u' 's' 'e' | 'O' 'h' 'a' 'n' 'a' | 'P' 'm' 'W' 'i' 'k' 'i' | 'P' 'u' 'k' 'i' 'W' 'i' 'k' 'i' | 'P' 'u' 'r' 'p' 'l' 'e' 'W' 'i' 'k' 'i' | 'R' 'a' 'd' 'e' 'o' 'x' | 'S' 'n' 'i' 'p' 'S' 'n' 'a' 'p' | 'T' 'i' 'd' 'd' 'l' 'y' 'W' 'i' 'k' 'i' | 'T' 'W' 'i' 'k' 'i' | 'U' 's' 'e' 'm' 'o' 'd' | 'W' 'i' 'k' 'i' 'p' 'e' 'd' 'i' 'a' | 'X' 'W' 'i' 'k' 'i' );", 117, 15, input);
12572    
12573                            throw nvae;
12574                        }
12575                    }
12576                    else if ( (LA117_6==48) ) {
12577                        alt117=8;
12578                    }
12579                    else {
12580                        if (backtracking>0) {failed=true; return interwiki;}
12581                        NoViableAltException nvae =
12582                            new NoViableAltException("803:1: link_interwiki_uri returns [InterwikiLinkNode interwiki = null] : ( 'C' '2' | 'D' 'o' 'k' 'u' 'W' 'i' 'k' 'i' | 'F' 'l' 'i' 'c' 'k' 'r' | 'G' 'o' 'o' 'g' 'l' 'e' | 'J' 'S' 'P' 'W' 'i' 'k' 'i' | 'M' 'e' 'a' 't' 'b' 'a' 'l' 'l' | 'M' 'e' 'd' 'i' 'a' 'W' 'i' 'k' 'i' | 'M' 'o' 'i' 'n' 'M' 'o' 'i' 'n' | 'O' 'd' 'd' 'm' 'u' 's' 'e' | 'O' 'h' 'a' 'n' 'a' | 'P' 'm' 'W' 'i' 'k' 'i' | 'P' 'u' 'k' 'i' 'W' 'i' 'k' 'i' | 'P' 'u' 'r' 'p' 'l' 'e' 'W' 'i' 'k' 'i' | 'R' 'a' 'd' 'e' 'o' 'x' | 'S' 'n' 'i' 'p' 'S' 'n' 'a' 'p' | 'T' 'i' 'd' 'd' 'l' 'y' 'W' 'i' 'k' 'i' | 'T' 'W' 'i' 'k' 'i' | 'U' 's' 'e' 'm' 'o' 'd' | 'W' 'i' 'k' 'i' 'p' 'e' 'd' 'i' 'a' | 'X' 'W' 'i' 'k' 'i' );", 117, 6, input);
12583    
12584                        throw nvae;
12585                    }
12586                    }
12587                    break;
12588                case 69:
12589                    {
12590                    int LA117_7 = input.LA(2);
12591    
12592                    if ( (LA117_7==72) ) {
12593                        alt117=10;
12594                    }
12595                    else if ( (LA117_7==67) ) {
12596                        alt117=9;
12597                    }
12598                    else {
12599                        if (backtracking>0) {failed=true; return interwiki;}
12600                        NoViableAltException nvae =
12601                            new NoViableAltException("803:1: link_interwiki_uri returns [InterwikiLinkNode interwiki = null] : ( 'C' '2' | 'D' 'o' 'k' 'u' 'W' 'i' 'k' 'i' | 'F' 'l' 'i' 'c' 'k' 'r' | 'G' 'o' 'o' 'g' 'l' 'e' | 'J' 'S' 'P' 'W' 'i' 'k' 'i' | 'M' 'e' 'a' 't' 'b' 'a' 'l' 'l' | 'M' 'e' 'd' 'i' 'a' 'W' 'i' 'k' 'i' | 'M' 'o' 'i' 'n' 'M' 'o' 'i' 'n' | 'O' 'd' 'd' 'm' 'u' 's' 'e' | 'O' 'h' 'a' 'n' 'a' | 'P' 'm' 'W' 'i' 'k' 'i' | 'P' 'u' 'k' 'i' 'W' 'i' 'k' 'i' | 'P' 'u' 'r' 'p' 'l' 'e' 'W' 'i' 'k' 'i' | 'R' 'a' 'd' 'e' 'o' 'x' | 'S' 'n' 'i' 'p' 'S' 'n' 'a' 'p' | 'T' 'i' 'd' 'd' 'l' 'y' 'W' 'i' 'k' 'i' | 'T' 'W' 'i' 'k' 'i' | 'U' 's' 'e' 'm' 'o' 'd' | 'W' 'i' 'k' 'i' 'p' 'e' 'd' 'i' 'a' | 'X' 'W' 'i' 'k' 'i' );", 117, 7, input);
12602    
12603                        throw nvae;
12604                    }
12605                    }
12606                    break;
12607                case 62:
12608                    {
12609                    int LA117_8 = input.LA(2);
12610    
12611                    if ( (LA117_8==70) ) {
12612                        alt117=11;
12613                    }
12614                    else if ( (LA117_8==50) ) {
12615                        int LA117_20 = input.LA(3);
12616    
12617                        if ( (LA117_20==49) ) {
12618                            alt117=12;
12619                        }
12620                        else if ( (LA117_20==56) ) {
12621                            alt117=13;
12622                        }
12623                        else {
12624                            if (backtracking>0) {failed=true; return interwiki;}
12625                            NoViableAltException nvae =
12626                                new NoViableAltException("803:1: link_interwiki_uri returns [InterwikiLinkNode interwiki = null] : ( 'C' '2' | 'D' 'o' 'k' 'u' 'W' 'i' 'k' 'i' | 'F' 'l' 'i' 'c' 'k' 'r' | 'G' 'o' 'o' 'g' 'l' 'e' | 'J' 'S' 'P' 'W' 'i' 'k' 'i' | 'M' 'e' 'a' 't' 'b' 'a' 'l' 'l' | 'M' 'e' 'd' 'i' 'a' 'W' 'i' 'k' 'i' | 'M' 'o' 'i' 'n' 'M' 'o' 'i' 'n' | 'O' 'd' 'd' 'm' 'u' 's' 'e' | 'O' 'h' 'a' 'n' 'a' | 'P' 'm' 'W' 'i' 'k' 'i' | 'P' 'u' 'k' 'i' 'W' 'i' 'k' 'i' | 'P' 'u' 'r' 'p' 'l' 'e' 'W' 'i' 'k' 'i' | 'R' 'a' 'd' 'e' 'o' 'x' | 'S' 'n' 'i' 'p' 'S' 'n' 'a' 'p' | 'T' 'i' 'd' 'd' 'l' 'y' 'W' 'i' 'k' 'i' | 'T' 'W' 'i' 'k' 'i' | 'U' 's' 'e' 'm' 'o' 'd' | 'W' 'i' 'k' 'i' 'p' 'e' 'd' 'i' 'a' | 'X' 'W' 'i' 'k' 'i' );", 117, 20, input);
12627    
12628                            throw nvae;
12629                        }
12630                    }
12631                    else {
12632                        if (backtracking>0) {failed=true; return interwiki;}
12633                        NoViableAltException nvae =
12634                            new NoViableAltException("803:1: link_interwiki_uri returns [InterwikiLinkNode interwiki = null] : ( 'C' '2' | 'D' 'o' 'k' 'u' 'W' 'i' 'k' 'i' | 'F' 'l' 'i' 'c' 'k' 'r' | 'G' 'o' 'o' 'g' 'l' 'e' | 'J' 'S' 'P' 'W' 'i' 'k' 'i' | 'M' 'e' 'a' 't' 'b' 'a' 'l' 'l' | 'M' 'e' 'd' 'i' 'a' 'W' 'i' 'k' 'i' | 'M' 'o' 'i' 'n' 'M' 'o' 'i' 'n' | 'O' 'd' 'd' 'm' 'u' 's' 'e' | 'O' 'h' 'a' 'n' 'a' | 'P' 'm' 'W' 'i' 'k' 'i' | 'P' 'u' 'k' 'i' 'W' 'i' 'k' 'i' | 'P' 'u' 'r' 'p' 'l' 'e' 'W' 'i' 'k' 'i' | 'R' 'a' 'd' 'e' 'o' 'x' | 'S' 'n' 'i' 'p' 'S' 'n' 'a' 'p' | 'T' 'i' 'd' 'd' 'l' 'y' 'W' 'i' 'k' 'i' | 'T' 'W' 'i' 'k' 'i' | 'U' 's' 'e' 'm' 'o' 'd' | 'W' 'i' 'k' 'i' 'p' 'e' 'd' 'i' 'a' | 'X' 'W' 'i' 'k' 'i' );", 117, 8, input);
12635    
12636                        throw nvae;
12637                    }
12638                    }
12639                    break;
12640                case 74:
12641                    {
12642                    alt117=14;
12643                    }
12644                    break;
12645                case 61:
12646                    {
12647                    alt117=15;
12648                    }
12649                    break;
12650                case 76:
12651                    {
12652                    int LA117_11 = input.LA(2);
12653    
12654                    if ( (LA117_11==51) ) {
12655                        alt117=17;
12656                    }
12657                    else if ( (LA117_11==52) ) {
12658                        alt117=16;
12659                    }
12660                    else {
12661                        if (backtracking>0) {failed=true; return interwiki;}
12662                        NoViableAltException nvae =
12663                            new NoViableAltException("803:1: link_interwiki_uri returns [InterwikiLinkNode interwiki = null] : ( 'C' '2' | 'D' 'o' 'k' 'u' 'W' 'i' 'k' 'i' | 'F' 'l' 'i' 'c' 'k' 'r' | 'G' 'o' 'o' 'g' 'l' 'e' | 'J' 'S' 'P' 'W' 'i' 'k' 'i' | 'M' 'e' 'a' 't' 'b' 'a' 'l' 'l' | 'M' 'e' 'd' 'i' 'a' 'W' 'i' 'k' 'i' | 'M' 'o' 'i' 'n' 'M' 'o' 'i' 'n' | 'O' 'd' 'd' 'm' 'u' 's' 'e' | 'O' 'h' 'a' 'n' 'a' | 'P' 'm' 'W' 'i' 'k' 'i' | 'P' 'u' 'k' 'i' 'W' 'i' 'k' 'i' | 'P' 'u' 'r' 'p' 'l' 'e' 'W' 'i' 'k' 'i' | 'R' 'a' 'd' 'e' 'o' 'x' | 'S' 'n' 'i' 'p' 'S' 'n' 'a' 'p' | 'T' 'i' 'd' 'd' 'l' 'y' 'W' 'i' 'k' 'i' | 'T' 'W' 'i' 'k' 'i' | 'U' 's' 'e' 'm' 'o' 'd' | 'W' 'i' 'k' 'i' 'p' 'e' 'd' 'i' 'a' | 'X' 'W' 'i' 'k' 'i' );", 117, 11, input);
12664    
12665                        throw nvae;
12666                    }
12667                    }
12668                    break;
12669                case 78:
12670                    {
12671                    alt117=18;
12672                    }
12673                    break;
12674                case 51:
12675                    {
12676                    alt117=19;
12677                    }
12678                    break;
12679                case 79:
12680                    {
12681                    alt117=20;
12682                    }
12683                    break;
12684                default:
12685                    if (backtracking>0) {failed=true; return interwiki;}
12686                    NoViableAltException nvae =
12687                        new NoViableAltException("803:1: link_interwiki_uri returns [InterwikiLinkNode interwiki = null] : ( 'C' '2' | 'D' 'o' 'k' 'u' 'W' 'i' 'k' 'i' | 'F' 'l' 'i' 'c' 'k' 'r' | 'G' 'o' 'o' 'g' 'l' 'e' | 'J' 'S' 'P' 'W' 'i' 'k' 'i' | 'M' 'e' 'a' 't' 'b' 'a' 'l' 'l' | 'M' 'e' 'd' 'i' 'a' 'W' 'i' 'k' 'i' | 'M' 'o' 'i' 'n' 'M' 'o' 'i' 'n' | 'O' 'd' 'd' 'm' 'u' 's' 'e' | 'O' 'h' 'a' 'n' 'a' | 'P' 'm' 'W' 'i' 'k' 'i' | 'P' 'u' 'k' 'i' 'W' 'i' 'k' 'i' | 'P' 'u' 'r' 'p' 'l' 'e' 'W' 'i' 'k' 'i' | 'R' 'a' 'd' 'e' 'o' 'x' | 'S' 'n' 'i' 'p' 'S' 'n' 'a' 'p' | 'T' 'i' 'd' 'd' 'l' 'y' 'W' 'i' 'k' 'i' | 'T' 'W' 'i' 'k' 'i' | 'U' 's' 'e' 'm' 'o' 'd' | 'W' 'i' 'k' 'i' 'p' 'e' 'd' 'i' 'a' | 'X' 'W' 'i' 'k' 'i' );", 117, 0, input);
12688    
12689                    throw nvae;
12690                }
12691    
12692                switch (alt117) {
12693                    case 1 :
12694                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:804:4: 'C' '2'
12695                        {
12696                        match(input,45,FOLLOW_45_in_link_interwiki_uri3296); if (failed) return interwiki;
12697                        match(input,46,FOLLOW_46_in_link_interwiki_uri3298); if (failed) return interwiki;
12698    
12699                        }
12700                        break;
12701                    case 2 :
12702                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:805:4: 'D' 'o' 'k' 'u' 'W' 'i' 'k' 'i'
12703                        {
12704                        match(input,47,FOLLOW_47_in_link_interwiki_uri3303); if (failed) return interwiki;
12705                        match(input,48,FOLLOW_48_in_link_interwiki_uri3305); if (failed) return interwiki;
12706                        match(input,49,FOLLOW_49_in_link_interwiki_uri3307); if (failed) return interwiki;
12707                        match(input,50,FOLLOW_50_in_link_interwiki_uri3309); if (failed) return interwiki;
12708                        match(input,51,FOLLOW_51_in_link_interwiki_uri3311); if (failed) return interwiki;
12709                        match(input,52,FOLLOW_52_in_link_interwiki_uri3313); if (failed) return interwiki;
12710                        match(input,49,FOLLOW_49_in_link_interwiki_uri3315); if (failed) return interwiki;
12711                        match(input,52,FOLLOW_52_in_link_interwiki_uri3317); if (failed) return interwiki;
12712    
12713                        }
12714                        break;
12715                    case 3 :
12716                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:806:4: 'F' 'l' 'i' 'c' 'k' 'r'
12717                        {
12718                        match(input,53,FOLLOW_53_in_link_interwiki_uri3322); if (failed) return interwiki;
12719                        match(input,54,FOLLOW_54_in_link_interwiki_uri3324); if (failed) return interwiki;
12720                        match(input,52,FOLLOW_52_in_link_interwiki_uri3326); if (failed) return interwiki;
12721                        match(input,55,FOLLOW_55_in_link_interwiki_uri3328); if (failed) return interwiki;
12722                        match(input,49,FOLLOW_49_in_link_interwiki_uri3330); if (failed) return interwiki;
12723                        match(input,56,FOLLOW_56_in_link_interwiki_uri3332); if (failed) return interwiki;
12724    
12725                        }
12726                        break;
12727                    case 4 :
12728                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:807:4: 'G' 'o' 'o' 'g' 'l' 'e'
12729                        {
12730                        match(input,57,FOLLOW_57_in_link_interwiki_uri3337); if (failed) return interwiki;
12731                        match(input,48,FOLLOW_48_in_link_interwiki_uri3339); if (failed) return interwiki;
12732                        match(input,48,FOLLOW_48_in_link_interwiki_uri3341); if (failed) return interwiki;
12733                        match(input,58,FOLLOW_58_in_link_interwiki_uri3343); if (failed) return interwiki;
12734                        match(input,54,FOLLOW_54_in_link_interwiki_uri3345); if (failed) return interwiki;
12735                        match(input,59,FOLLOW_59_in_link_interwiki_uri3347); if (failed) return interwiki;
12736    
12737                        }
12738                        break;
12739                    case 5 :
12740                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:808:4: 'J' 'S' 'P' 'W' 'i' 'k' 'i'
12741                        {
12742                        match(input,60,FOLLOW_60_in_link_interwiki_uri3352); if (failed) return interwiki;
12743                        match(input,61,FOLLOW_61_in_link_interwiki_uri3354); if (failed) return interwiki;
12744                        match(input,62,FOLLOW_62_in_link_interwiki_uri3356); if (failed) return interwiki;
12745                        match(input,51,FOLLOW_51_in_link_interwiki_uri3358); if (failed) return interwiki;
12746                        match(input,52,FOLLOW_52_in_link_interwiki_uri3360); if (failed) return interwiki;
12747                        match(input,49,FOLLOW_49_in_link_interwiki_uri3362); if (failed) return interwiki;
12748                        match(input,52,FOLLOW_52_in_link_interwiki_uri3364); if (failed) return interwiki;
12749    
12750                        }
12751                        break;
12752                    case 6 :
12753                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:809:4: 'M' 'e' 'a' 't' 'b' 'a' 'l' 'l'
12754                        {
12755                        match(input,63,FOLLOW_63_in_link_interwiki_uri3369); if (failed) return interwiki;
12756                        match(input,59,FOLLOW_59_in_link_interwiki_uri3371); if (failed) return interwiki;
12757                        match(input,64,FOLLOW_64_in_link_interwiki_uri3373); if (failed) return interwiki;
12758                        match(input,65,FOLLOW_65_in_link_interwiki_uri3375); if (failed) return interwiki;
12759                        match(input,66,FOLLOW_66_in_link_interwiki_uri3377); if (failed) return interwiki;
12760                        match(input,64,FOLLOW_64_in_link_interwiki_uri3379); if (failed) return interwiki;
12761                        match(input,54,FOLLOW_54_in_link_interwiki_uri3381); if (failed) return interwiki;
12762                        match(input,54,FOLLOW_54_in_link_interwiki_uri3383); if (failed) return interwiki;
12763    
12764                        }
12765                        break;
12766                    case 7 :
12767                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:810:4: 'M' 'e' 'd' 'i' 'a' 'W' 'i' 'k' 'i'
12768                        {
12769                        match(input,63,FOLLOW_63_in_link_interwiki_uri3388); if (failed) return interwiki;
12770                        match(input,59,FOLLOW_59_in_link_interwiki_uri3390); if (failed) return interwiki;
12771                        match(input,67,FOLLOW_67_in_link_interwiki_uri3392); if (failed) return interwiki;
12772                        match(input,52,FOLLOW_52_in_link_interwiki_uri3394); if (failed) return interwiki;
12773                        match(input,64,FOLLOW_64_in_link_interwiki_uri3396); if (failed) return interwiki;
12774                        match(input,51,FOLLOW_51_in_link_interwiki_uri3398); if (failed) return interwiki;
12775                        match(input,52,FOLLOW_52_in_link_interwiki_uri3400); if (failed) return interwiki;
12776                        match(input,49,FOLLOW_49_in_link_interwiki_uri3402); if (failed) return interwiki;
12777                        match(input,52,FOLLOW_52_in_link_interwiki_uri3404); if (failed) return interwiki;
12778    
12779                        }
12780                        break;
12781                    case 8 :
12782                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:811:4: 'M' 'o' 'i' 'n' 'M' 'o' 'i' 'n'
12783                        {
12784                        match(input,63,FOLLOW_63_in_link_interwiki_uri3409); if (failed) return interwiki;
12785                        match(input,48,FOLLOW_48_in_link_interwiki_uri3411); if (failed) return interwiki;
12786                        match(input,52,FOLLOW_52_in_link_interwiki_uri3413); if (failed) return interwiki;
12787                        match(input,68,FOLLOW_68_in_link_interwiki_uri3415); if (failed) return interwiki;
12788                        match(input,63,FOLLOW_63_in_link_interwiki_uri3417); if (failed) return interwiki;
12789                        match(input,48,FOLLOW_48_in_link_interwiki_uri3419); if (failed) return interwiki;
12790                        match(input,52,FOLLOW_52_in_link_interwiki_uri3421); if (failed) return interwiki;
12791                        match(input,68,FOLLOW_68_in_link_interwiki_uri3423); if (failed) return interwiki;
12792    
12793                        }
12794                        break;
12795                    case 9 :
12796                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:812:4: 'O' 'd' 'd' 'm' 'u' 's' 'e'
12797                        {
12798                        match(input,69,FOLLOW_69_in_link_interwiki_uri3428); if (failed) return interwiki;
12799                        match(input,67,FOLLOW_67_in_link_interwiki_uri3430); if (failed) return interwiki;
12800                        match(input,67,FOLLOW_67_in_link_interwiki_uri3432); if (failed) return interwiki;
12801                        match(input,70,FOLLOW_70_in_link_interwiki_uri3434); if (failed) return interwiki;
12802                        match(input,50,FOLLOW_50_in_link_interwiki_uri3436); if (failed) return interwiki;
12803                        match(input,71,FOLLOW_71_in_link_interwiki_uri3438); if (failed) return interwiki;
12804                        match(input,59,FOLLOW_59_in_link_interwiki_uri3440); if (failed) return interwiki;
12805    
12806                        }
12807                        break;
12808                    case 10 :
12809                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:813:4: 'O' 'h' 'a' 'n' 'a'
12810                        {
12811                        match(input,69,FOLLOW_69_in_link_interwiki_uri3445); if (failed) return interwiki;
12812                        match(input,72,FOLLOW_72_in_link_interwiki_uri3447); if (failed) return interwiki;
12813                        match(input,64,FOLLOW_64_in_link_interwiki_uri3449); if (failed) return interwiki;
12814                        match(input,68,FOLLOW_68_in_link_interwiki_uri3451); if (failed) return interwiki;
12815                        match(input,64,FOLLOW_64_in_link_interwiki_uri3453); if (failed) return interwiki;
12816    
12817                        }
12818                        break;
12819                    case 11 :
12820                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:814:4: 'P' 'm' 'W' 'i' 'k' 'i'
12821                        {
12822                        match(input,62,FOLLOW_62_in_link_interwiki_uri3458); if (failed) return interwiki;
12823                        match(input,70,FOLLOW_70_in_link_interwiki_uri3460); if (failed) return interwiki;
12824                        match(input,51,FOLLOW_51_in_link_interwiki_uri3462); if (failed) return interwiki;
12825                        match(input,52,FOLLOW_52_in_link_interwiki_uri3464); if (failed) return interwiki;
12826                        match(input,49,FOLLOW_49_in_link_interwiki_uri3466); if (failed) return interwiki;
12827                        match(input,52,FOLLOW_52_in_link_interwiki_uri3468); if (failed) return interwiki;
12828    
12829                        }
12830                        break;
12831                    case 12 :
12832                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:815:4: 'P' 'u' 'k' 'i' 'W' 'i' 'k' 'i'
12833                        {
12834                        match(input,62,FOLLOW_62_in_link_interwiki_uri3473); if (failed) return interwiki;
12835                        match(input,50,FOLLOW_50_in_link_interwiki_uri3475); if (failed) return interwiki;
12836                        match(input,49,FOLLOW_49_in_link_interwiki_uri3477); if (failed) return interwiki;
12837                        match(input,52,FOLLOW_52_in_link_interwiki_uri3479); if (failed) return interwiki;
12838                        match(input,51,FOLLOW_51_in_link_interwiki_uri3481); if (failed) return interwiki;
12839                        match(input,52,FOLLOW_52_in_link_interwiki_uri3483); if (failed) return interwiki;
12840                        match(input,49,FOLLOW_49_in_link_interwiki_uri3485); if (failed) return interwiki;
12841                        match(input,52,FOLLOW_52_in_link_interwiki_uri3487); if (failed) return interwiki;
12842    
12843                        }
12844                        break;
12845                    case 13 :
12846                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:816:4: 'P' 'u' 'r' 'p' 'l' 'e' 'W' 'i' 'k' 'i'
12847                        {
12848                        match(input,62,FOLLOW_62_in_link_interwiki_uri3492); if (failed) return interwiki;
12849                        match(input,50,FOLLOW_50_in_link_interwiki_uri3494); if (failed) return interwiki;
12850                        match(input,56,FOLLOW_56_in_link_interwiki_uri3496); if (failed) return interwiki;
12851                        match(input,73,FOLLOW_73_in_link_interwiki_uri3498); if (failed) return interwiki;
12852                        match(input,54,FOLLOW_54_in_link_interwiki_uri3500); if (failed) return interwiki;
12853                        match(input,59,FOLLOW_59_in_link_interwiki_uri3502); if (failed) return interwiki;
12854                        match(input,51,FOLLOW_51_in_link_interwiki_uri3504); if (failed) return interwiki;
12855                        match(input,52,FOLLOW_52_in_link_interwiki_uri3506); if (failed) return interwiki;
12856                        match(input,49,FOLLOW_49_in_link_interwiki_uri3508); if (failed) return interwiki;
12857                        match(input,52,FOLLOW_52_in_link_interwiki_uri3510); if (failed) return interwiki;
12858    
12859                        }
12860                        break;
12861                    case 14 :
12862                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:817:4: 'R' 'a' 'd' 'e' 'o' 'x'
12863                        {
12864                        match(input,74,FOLLOW_74_in_link_interwiki_uri3515); if (failed) return interwiki;
12865                        match(input,64,FOLLOW_64_in_link_interwiki_uri3517); if (failed) return interwiki;
12866                        match(input,67,FOLLOW_67_in_link_interwiki_uri3519); if (failed) return interwiki;
12867                        match(input,59,FOLLOW_59_in_link_interwiki_uri3521); if (failed) return interwiki;
12868                        match(input,48,FOLLOW_48_in_link_interwiki_uri3523); if (failed) return interwiki;
12869                        match(input,75,FOLLOW_75_in_link_interwiki_uri3525); if (failed) return interwiki;
12870    
12871                        }
12872                        break;
12873                    case 15 :
12874                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:818:4: 'S' 'n' 'i' 'p' 'S' 'n' 'a' 'p'
12875                        {
12876                        match(input,61,FOLLOW_61_in_link_interwiki_uri3530); if (failed) return interwiki;
12877                        match(input,68,FOLLOW_68_in_link_interwiki_uri3532); if (failed) return interwiki;
12878                        match(input,52,FOLLOW_52_in_link_interwiki_uri3534); if (failed) return interwiki;
12879                        match(input,73,FOLLOW_73_in_link_interwiki_uri3536); if (failed) return interwiki;
12880                        match(input,61,FOLLOW_61_in_link_interwiki_uri3538); if (failed) return interwiki;
12881                        match(input,68,FOLLOW_68_in_link_interwiki_uri3540); if (failed) return interwiki;
12882                        match(input,64,FOLLOW_64_in_link_interwiki_uri3542); if (failed) return interwiki;
12883                        match(input,73,FOLLOW_73_in_link_interwiki_uri3544); if (failed) return interwiki;
12884    
12885                        }
12886                        break;
12887                    case 16 :
12888                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:819:4: 'T' 'i' 'd' 'd' 'l' 'y' 'W' 'i' 'k' 'i'
12889                        {
12890                        match(input,76,FOLLOW_76_in_link_interwiki_uri3549); if (failed) return interwiki;
12891                        match(input,52,FOLLOW_52_in_link_interwiki_uri3551); if (failed) return interwiki;
12892                        match(input,67,FOLLOW_67_in_link_interwiki_uri3553); if (failed) return interwiki;
12893                        match(input,67,FOLLOW_67_in_link_interwiki_uri3555); if (failed) return interwiki;
12894                        match(input,54,FOLLOW_54_in_link_interwiki_uri3557); if (failed) return interwiki;
12895                        match(input,77,FOLLOW_77_in_link_interwiki_uri3559); if (failed) return interwiki;
12896                        match(input,51,FOLLOW_51_in_link_interwiki_uri3561); if (failed) return interwiki;
12897                        match(input,52,FOLLOW_52_in_link_interwiki_uri3563); if (failed) return interwiki;
12898                        match(input,49,FOLLOW_49_in_link_interwiki_uri3565); if (failed) return interwiki;
12899                        match(input,52,FOLLOW_52_in_link_interwiki_uri3567); if (failed) return interwiki;
12900    
12901                        }
12902                        break;
12903                    case 17 :
12904                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:820:4: 'T' 'W' 'i' 'k' 'i'
12905                        {
12906                        match(input,76,FOLLOW_76_in_link_interwiki_uri3572); if (failed) return interwiki;
12907                        match(input,51,FOLLOW_51_in_link_interwiki_uri3574); if (failed) return interwiki;
12908                        match(input,52,FOLLOW_52_in_link_interwiki_uri3576); if (failed) return interwiki;
12909                        match(input,49,FOLLOW_49_in_link_interwiki_uri3578); if (failed) return interwiki;
12910                        match(input,52,FOLLOW_52_in_link_interwiki_uri3580); if (failed) return interwiki;
12911    
12912                        }
12913                        break;
12914                    case 18 :
12915                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:821:4: 'U' 's' 'e' 'm' 'o' 'd'
12916                        {
12917                        match(input,78,FOLLOW_78_in_link_interwiki_uri3585); if (failed) return interwiki;
12918                        match(input,71,FOLLOW_71_in_link_interwiki_uri3587); if (failed) return interwiki;
12919                        match(input,59,FOLLOW_59_in_link_interwiki_uri3589); if (failed) return interwiki;
12920                        match(input,70,FOLLOW_70_in_link_interwiki_uri3591); if (failed) return interwiki;
12921                        match(input,48,FOLLOW_48_in_link_interwiki_uri3593); if (failed) return interwiki;
12922                        match(input,67,FOLLOW_67_in_link_interwiki_uri3595); if (failed) return interwiki;
12923    
12924                        }
12925                        break;
12926                    case 19 :
12927                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:822:4: 'W' 'i' 'k' 'i' 'p' 'e' 'd' 'i' 'a'
12928                        {
12929                        match(input,51,FOLLOW_51_in_link_interwiki_uri3600); if (failed) return interwiki;
12930                        match(input,52,FOLLOW_52_in_link_interwiki_uri3602); if (failed) return interwiki;
12931                        match(input,49,FOLLOW_49_in_link_interwiki_uri3604); if (failed) return interwiki;
12932                        match(input,52,FOLLOW_52_in_link_interwiki_uri3606); if (failed) return interwiki;
12933                        match(input,73,FOLLOW_73_in_link_interwiki_uri3608); if (failed) return interwiki;
12934                        match(input,59,FOLLOW_59_in_link_interwiki_uri3610); if (failed) return interwiki;
12935                        match(input,67,FOLLOW_67_in_link_interwiki_uri3612); if (failed) return interwiki;
12936                        match(input,52,FOLLOW_52_in_link_interwiki_uri3614); if (failed) return interwiki;
12937                        match(input,64,FOLLOW_64_in_link_interwiki_uri3616); if (failed) return interwiki;
12938    
12939                        }
12940                        break;
12941                    case 20 :
12942                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:823:4: 'X' 'W' 'i' 'k' 'i'
12943                        {
12944                        match(input,79,FOLLOW_79_in_link_interwiki_uri3621); if (failed) return interwiki;
12945                        match(input,51,FOLLOW_51_in_link_interwiki_uri3623); if (failed) return interwiki;
12946                        match(input,52,FOLLOW_52_in_link_interwiki_uri3625); if (failed) return interwiki;
12947                        match(input,49,FOLLOW_49_in_link_interwiki_uri3627); if (failed) return interwiki;
12948                        match(input,52,FOLLOW_52_in_link_interwiki_uri3629); if (failed) return interwiki;
12949    
12950                        }
12951                        break;
12952    
12953                }
12954            }
12955            catch (RecognitionException re) {
12956                reportError(re);
12957                recover(input,re);
12958            }
12959            finally {
12960            }
12961            return interwiki;
12962        }
12963        // $ANTLR end link_interwiki_uri
12964    
12965    
12966        // $ANTLR start link_interwiki_pagename
12967        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:825:1: link_interwiki_pagename returns [StringBundler text = new StringBundler()] : (c=~ ( PIPE | LINK_CLOSE | NEWLINE | EOF ) )+ ;
12968        public final StringBundler link_interwiki_pagename() throws RecognitionException {
12969            StringBundler text =  new StringBundler();
12970    
12971            Token c=null;
12972    
12973            try {
12974                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:826:2: ( (c=~ ( PIPE | LINK_CLOSE | NEWLINE | EOF ) )+ )
12975                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:826:4: (c=~ ( PIPE | LINK_CLOSE | NEWLINE | EOF ) )+
12976                {
12977                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:826:4: (c=~ ( PIPE | LINK_CLOSE | NEWLINE | EOF ) )+
12978                int cnt118=0;
12979                loop118:
12980                do {
12981                    int alt118=2;
12982                    int LA118_0 = input.LA(1);
12983    
12984                    if ( ((LA118_0>=FORCED_END_OF_LINE && LA118_0<=WIKI)||(LA118_0>=POUND && LA118_0<=EQUAL)||(LA118_0>=ITAL && LA118_0<=NOWIKI_CLOSE)||(LA118_0>=IMAGE_CLOSE && LA118_0<=79)) ) {
12985                        alt118=1;
12986                    }
12987    
12988    
12989                    switch (alt118) {
12990                    case 1 :
12991                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:826:6: c=~ ( PIPE | LINK_CLOSE | NEWLINE | EOF )
12992                        {
12993                        c=(Token)input.LT(1);
12994                        if ( (input.LA(1)>=FORCED_END_OF_LINE && input.LA(1)<=WIKI)||(input.LA(1)>=POUND && input.LA(1)<=EQUAL)||(input.LA(1)>=ITAL && input.LA(1)<=NOWIKI_CLOSE)||(input.LA(1)>=IMAGE_CLOSE && input.LA(1)<=79) ) {
12995                            input.consume();
12996                            errorRecovery=false;failed=false;
12997                        }
12998                        else {
12999                            if (backtracking>0) {failed=true; return text;}
13000                            MismatchedSetException mse =
13001                                new MismatchedSetException(null,input);
13002                            recoverFromMismatchedSet(input,mse,FOLLOW_set_in_link_interwiki_pagename3649);    throw mse;
13003                        }
13004    
13005                        if ( backtracking==0 ) {
13006                           text.append(c.getText()); 
13007                        }
13008    
13009                        }
13010                        break;
13011    
13012                    default :
13013                        if ( cnt118 >= 1 ) break loop118;
13014                        if (backtracking>0) {failed=true; return text;}
13015                            EarlyExitException eee =
13016                                new EarlyExitException(118, input);
13017                            throw eee;
13018                    }
13019                    cnt118++;
13020                } while (true);
13021    
13022    
13023                }
13024    
13025            }
13026            catch (RecognitionException re) {
13027                reportError(re);
13028                recover(input,re);
13029            }
13030            finally {
13031            }
13032            return text;
13033        }
13034        // $ANTLR end link_interwiki_pagename
13035    
13036    
13037        // $ANTLR start link_description
13038        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:828:1: link_description returns [CollectionNode node = new CollectionNode()] : (l= link_descriptionpart | i= image )+ ;
13039        public final CollectionNode link_description() throws RecognitionException {
13040            CollectionNode node =  new CollectionNode();
13041    
13042            ASTNode l = null;
13043    
13044            ImageNode i = null;
13045    
13046    
13047            try {
13048                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:829:2: ( (l= link_descriptionpart | i= image )+ )
13049                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:829:4: (l= link_descriptionpart | i= image )+
13050                {
13051                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:829:4: (l= link_descriptionpart | i= image )+
13052                int cnt119=0;
13053                loop119:
13054                do {
13055                    int alt119=3;
13056                    int LA119_0 = input.LA(1);
13057    
13058                    if ( ((LA119_0>=FORCED_END_OF_LINE && LA119_0<=WIKI)||(LA119_0>=POUND && LA119_0<=ITAL)||(LA119_0>=FORCED_LINEBREAK && LA119_0<=NOWIKI_CLOSE)||(LA119_0>=IMAGE_CLOSE && LA119_0<=79)) ) {
13059                        alt119=1;
13060                    }
13061                    else if ( (LA119_0==IMAGE_OPEN) ) {
13062                        alt119=2;
13063                    }
13064    
13065    
13066                    switch (alt119) {
13067                    case 1 :
13068                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:829:6: l= link_descriptionpart
13069                        {
13070                        pushFollow(FOLLOW_link_descriptionpart_in_link_description3692);
13071                        l=link_descriptionpart();
13072                        _fsp--;
13073                        if (failed) return node;
13074                        if ( backtracking==0 ) {
13075    
13076                                                            // Recover code: some bad syntax could include null elements in the collection
13077                                                            if (l != null) {
13078                                                                    node.add(l);
13079                                                            }
13080                                                    
13081                        }
13082    
13083                        }
13084                        break;
13085                    case 2 :
13086                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:835:5: i= image
13087                        {
13088                        pushFollow(FOLLOW_image_in_link_description3704);
13089                        i=image();
13090                        _fsp--;
13091                        if (failed) return node;
13092                        if ( backtracking==0 ) {
13093                          node.add(i);
13094                        }
13095    
13096                        }
13097                        break;
13098    
13099                    default :
13100                        if ( cnt119 >= 1 ) break loop119;
13101                        if (backtracking>0) {failed=true; return node;}
13102                            EarlyExitException eee =
13103                                new EarlyExitException(119, input);
13104                            throw eee;
13105                    }
13106                    cnt119++;
13107                } while (true);
13108    
13109    
13110                }
13111    
13112            }
13113            catch (RecognitionException re) {
13114                reportError(re);
13115                recover(input,re);
13116            }
13117            finally {
13118            }
13119            return node;
13120        }
13121        // $ANTLR end link_description
13122    
13123        protected static class link_descriptionpart_scope {
13124            CollectionNode element;
13125        }
13126        protected Stack link_descriptionpart_stack = new Stack();
13127    
13128    
13129        // $ANTLR start link_descriptionpart
13130        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:837:1: link_descriptionpart returns [ASTNode text = null] : ( bold_markup onestar (lb= link_bold_descriptionpart onestar )+ bold_markup | ital_markup onestar (li= link_ital_descriptionpart onestar )+ ital_markup | onestar (t= link_descriptiontext onestar )+ );
13131        public final ASTNode link_descriptionpart() throws RecognitionException {
13132            link_descriptionpart_stack.push(new link_descriptionpart_scope());
13133            ASTNode text =  null;
13134    
13135            ASTNode lb = null;
13136    
13137            ASTNode li = null;
13138    
13139            CollectionNode t = null;
13140    
13141    
13142    
13143                    ((link_descriptionpart_scope)link_descriptionpart_stack.peek()).element = new CollectionNode();
13144    
13145            try {
13146                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:844:2: ( bold_markup onestar (lb= link_bold_descriptionpart onestar )+ bold_markup | ital_markup onestar (li= link_ital_descriptionpart onestar )+ ital_markup | onestar (t= link_descriptiontext onestar )+ )
13147                int alt123=3;
13148                switch ( input.LA(1) ) {
13149                case STAR:
13150                    {
13151                    int LA123_1 = input.LA(2);
13152    
13153                    if ( (LA123_1==STAR) ) {
13154                        alt123=1;
13155                    }
13156                    else if ( ((LA123_1>=FORCED_END_OF_LINE && LA123_1<=WIKI)||LA123_1==POUND||(LA123_1>=EQUAL && LA123_1<=PIPE)||(LA123_1>=FORCED_LINEBREAK && LA123_1<=NOWIKI_CLOSE)||(LA123_1>=IMAGE_CLOSE && LA123_1<=79)) ) {
13157                        alt123=3;
13158                    }
13159                    else {
13160                        if (backtracking>0) {failed=true; return text;}
13161                        NoViableAltException nvae =
13162                            new NoViableAltException("837:1: link_descriptionpart returns [ASTNode text = null] : ( bold_markup onestar (lb= link_bold_descriptionpart onestar )+ bold_markup | ital_markup onestar (li= link_ital_descriptionpart onestar )+ ital_markup | onestar (t= link_descriptiontext onestar )+ );", 123, 1, input);
13163    
13164                        throw nvae;
13165                    }
13166                    }
13167                    break;
13168                case ITAL:
13169                    {
13170                    alt123=2;
13171                    }
13172                    break;
13173                case FORCED_END_OF_LINE:
13174                case HEADING_SECTION:
13175                case HORIZONTAL_SECTION:
13176                case LIST_ITEM:
13177                case LIST_ITEM_PART:
13178                case NOWIKI_SECTION:
13179                case SCAPE_NODE:
13180                case TEXT_NODE:
13181                case UNORDERED_LIST:
13182                case UNFORMATTED_TEXT:
13183                case WIKI:
13184                case POUND:
13185                case EQUAL:
13186                case PIPE:
13187                case FORCED_LINEBREAK:
13188                case ESCAPE:
13189                case NOWIKI_BLOCK_CLOSE:
13190                case NOWIKI_CLOSE:
13191                case IMAGE_CLOSE:
13192                case BLANKS:
13193                case TABLE_OF_CONTENTS_TEXT:
13194                case DASH:
13195                case CR:
13196                case LF:
13197                case SPACE:
13198                case TABULATOR:
13199                case BRACE_CLOSE:
13200                case COLON_SLASH:
13201                case SLASH:
13202                case TABLE_OF_CONTENTS_OPEN_MARKUP:
13203                case TABLE_OF_CONTENTS_CLOSE_MARKUP:
13204                case INSIGNIFICANT_CHAR:
13205                case 44:
13206                case 45:
13207                case 46:
13208                case 47:
13209                case 48:
13210                case 49:
13211                case 50:
13212                case 51:
13213                case 52:
13214                case 53:
13215                case 54:
13216                case 55:
13217                case 56:
13218                case 57:
13219                case 58:
13220                case 59:
13221                case 60:
13222                case 61:
13223                case 62:
13224                case 63:
13225                case 64:
13226                case 65:
13227                case 66:
13228                case 67:
13229                case 68:
13230                case 69:
13231                case 70:
13232                case 71:
13233                case 72:
13234                case 73:
13235                case 74:
13236                case 75:
13237                case 76:
13238                case 77:
13239                case 78:
13240                case 79:
13241                    {
13242                    alt123=3;
13243                    }
13244                    break;
13245                default:
13246                    if (backtracking>0) {failed=true; return text;}
13247                    NoViableAltException nvae =
13248                        new NoViableAltException("837:1: link_descriptionpart returns [ASTNode text = null] : ( bold_markup onestar (lb= link_bold_descriptionpart onestar )+ bold_markup | ital_markup onestar (li= link_ital_descriptionpart onestar )+ ital_markup | onestar (t= link_descriptiontext onestar )+ );", 123, 0, input);
13249    
13250                    throw nvae;
13251                }
13252    
13253                switch (alt123) {
13254                    case 1 :
13255                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:844:4: bold_markup onestar (lb= link_bold_descriptionpart onestar )+ bold_markup
13256                        {
13257                        pushFollow(FOLLOW_bold_markup_in_link_descriptionpart3729);
13258                        bold_markup();
13259                        _fsp--;
13260                        if (failed) return text;
13261                        pushFollow(FOLLOW_onestar_in_link_descriptionpart3732);
13262                        onestar();
13263                        _fsp--;
13264                        if (failed) return text;
13265                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:844:25: (lb= link_bold_descriptionpart onestar )+
13266                        int cnt120=0;
13267                        loop120:
13268                        do {
13269                            int alt120=2;
13270                            int LA120_0 = input.LA(1);
13271    
13272                            if ( ((LA120_0>=FORCED_END_OF_LINE && LA120_0<=WIKI)||LA120_0==POUND||(LA120_0>=EQUAL && LA120_0<=ITAL)||(LA120_0>=FORCED_LINEBREAK && LA120_0<=NOWIKI_CLOSE)||(LA120_0>=IMAGE_CLOSE && LA120_0<=79)) ) {
13273                                alt120=1;
13274                            }
13275    
13276    
13277                            switch (alt120) {
13278                            case 1 :
13279                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:844:27: lb= link_bold_descriptionpart onestar
13280                                {
13281                                pushFollow(FOLLOW_link_bold_descriptionpart_in_link_descriptionpart3740);
13282                                lb=link_bold_descriptionpart();
13283                                _fsp--;
13284                                if (failed) return text;
13285                                if ( backtracking==0 ) {
13286                                  ((link_descriptionpart_scope)link_descriptionpart_stack.peek()).element.add(lb);
13287                                }
13288                                pushFollow(FOLLOW_onestar_in_link_descriptionpart3745);
13289                                onestar();
13290                                _fsp--;
13291                                if (failed) return text;
13292    
13293                                }
13294                                break;
13295    
13296                            default :
13297                                if ( cnt120 >= 1 ) break loop120;
13298                                if (backtracking>0) {failed=true; return text;}
13299                                    EarlyExitException eee =
13300                                        new EarlyExitException(120, input);
13301                                    throw eee;
13302                            }
13303                            cnt120++;
13304                        } while (true);
13305    
13306                        if ( backtracking==0 ) {
13307                          text = new BoldTextNode(((link_descriptionpart_scope)link_descriptionpart_stack.peek()).element);
13308                        }
13309                        pushFollow(FOLLOW_bold_markup_in_link_descriptionpart3755);
13310                        bold_markup();
13311                        _fsp--;
13312                        if (failed) return text;
13313    
13314                        }
13315                        break;
13316                    case 2 :
13317                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:846:4: ital_markup onestar (li= link_ital_descriptionpart onestar )+ ital_markup
13318                        {
13319                        pushFollow(FOLLOW_ital_markup_in_link_descriptionpart3760);
13320                        ital_markup();
13321                        _fsp--;
13322                        if (failed) return text;
13323                        pushFollow(FOLLOW_onestar_in_link_descriptionpart3763);
13324                        onestar();
13325                        _fsp--;
13326                        if (failed) return text;
13327                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:846:26: (li= link_ital_descriptionpart onestar )+
13328                        int cnt121=0;
13329                        loop121:
13330                        do {
13331                            int alt121=2;
13332                            int LA121_0 = input.LA(1);
13333    
13334                            if ( ((LA121_0>=FORCED_END_OF_LINE && LA121_0<=WIKI)||(LA121_0>=POUND && LA121_0<=PIPE)||(LA121_0>=FORCED_LINEBREAK && LA121_0<=NOWIKI_CLOSE)||(LA121_0>=IMAGE_CLOSE && LA121_0<=79)) ) {
13335                                alt121=1;
13336                            }
13337    
13338    
13339                            switch (alt121) {
13340                            case 1 :
13341                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:846:28: li= link_ital_descriptionpart onestar
13342                                {
13343                                pushFollow(FOLLOW_link_ital_descriptionpart_in_link_descriptionpart3772);
13344                                li=link_ital_descriptionpart();
13345                                _fsp--;
13346                                if (failed) return text;
13347                                if ( backtracking==0 ) {
13348                                  ((link_descriptionpart_scope)link_descriptionpart_stack.peek()).element.add(li);
13349                                }
13350                                pushFollow(FOLLOW_onestar_in_link_descriptionpart3777);
13351                                onestar();
13352                                _fsp--;
13353                                if (failed) return text;
13354    
13355                                }
13356                                break;
13357    
13358                            default :
13359                                if ( cnt121 >= 1 ) break loop121;
13360                                if (backtracking>0) {failed=true; return text;}
13361                                    EarlyExitException eee =
13362                                        new EarlyExitException(121, input);
13363                                    throw eee;
13364                            }
13365                            cnt121++;
13366                        } while (true);
13367    
13368                        if ( backtracking==0 ) {
13369                          text = new ItalicTextNode(((link_descriptionpart_scope)link_descriptionpart_stack.peek()).element);
13370                        }
13371                        pushFollow(FOLLOW_ital_markup_in_link_descriptionpart3786);
13372                        ital_markup();
13373                        _fsp--;
13374                        if (failed) return text;
13375    
13376                        }
13377                        break;
13378                    case 3 :
13379                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:848:4: onestar (t= link_descriptiontext onestar )+
13380                        {
13381                        pushFollow(FOLLOW_onestar_in_link_descriptionpart3791);
13382                        onestar();
13383                        _fsp--;
13384                        if (failed) return text;
13385                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:848:13: (t= link_descriptiontext onestar )+
13386                        int cnt122=0;
13387                        loop122:
13388                        do {
13389                            int alt122=2;
13390                            switch ( input.LA(1) ) {
13391                            case FORCED_END_OF_LINE:
13392                            case HEADING_SECTION:
13393                            case HORIZONTAL_SECTION:
13394                            case LIST_ITEM:
13395                            case LIST_ITEM_PART:
13396                            case NOWIKI_SECTION:
13397                            case SCAPE_NODE:
13398                            case TEXT_NODE:
13399                            case UNORDERED_LIST:
13400                            case UNFORMATTED_TEXT:
13401                            case WIKI:
13402                            case POUND:
13403                            case EQUAL:
13404                            case PIPE:
13405                            case NOWIKI_BLOCK_CLOSE:
13406                            case NOWIKI_CLOSE:
13407                            case IMAGE_CLOSE:
13408                            case BLANKS:
13409                            case TABLE_OF_CONTENTS_TEXT:
13410                            case DASH:
13411                            case CR:
13412                            case LF:
13413                            case SPACE:
13414                            case TABULATOR:
13415                            case BRACE_CLOSE:
13416                            case COLON_SLASH:
13417                            case SLASH:
13418                            case TABLE_OF_CONTENTS_OPEN_MARKUP:
13419                            case TABLE_OF_CONTENTS_CLOSE_MARKUP:
13420                            case INSIGNIFICANT_CHAR:
13421                            case 44:
13422                            case 45:
13423                            case 46:
13424                            case 47:
13425                            case 48:
13426                            case 49:
13427                            case 50:
13428                            case 51:
13429                            case 52:
13430                            case 53:
13431                            case 54:
13432                            case 55:
13433                            case 56:
13434                            case 57:
13435                            case 58:
13436                            case 59:
13437                            case 60:
13438                            case 61:
13439                            case 62:
13440                            case 63:
13441                            case 64:
13442                            case 65:
13443                            case 66:
13444                            case 67:
13445                            case 68:
13446                            case 69:
13447                            case 70:
13448                            case 71:
13449                            case 72:
13450                            case 73:
13451                            case 74:
13452                            case 75:
13453                            case 76:
13454                            case 77:
13455                            case 78:
13456                            case 79:
13457                                {
13458                                alt122=1;
13459                                }
13460                                break;
13461                            case FORCED_LINEBREAK:
13462                                {
13463                                alt122=1;
13464                                }
13465                                break;
13466                            case ESCAPE:
13467                                {
13468                                alt122=1;
13469                                }
13470                                break;
13471    
13472                            }
13473    
13474                            switch (alt122) {
13475                            case 1 :
13476                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:848:15: t= link_descriptiontext onestar
13477                                {
13478                                pushFollow(FOLLOW_link_descriptiontext_in_link_descriptionpart3800);
13479                                t=link_descriptiontext();
13480                                _fsp--;
13481                                if (failed) return text;
13482                                pushFollow(FOLLOW_onestar_in_link_descriptionpart3803);
13483                                onestar();
13484                                _fsp--;
13485                                if (failed) return text;
13486                                if ( backtracking==0 ) {
13487                                  ((link_descriptionpart_scope)link_descriptionpart_stack.peek()).element.add(t);
13488                                }
13489    
13490                                }
13491                                break;
13492    
13493                            default :
13494                                if ( cnt122 >= 1 ) break loop122;
13495                                if (backtracking>0) {failed=true; return text;}
13496                                    EarlyExitException eee =
13497                                        new EarlyExitException(122, input);
13498                                    throw eee;
13499                            }
13500                            cnt122++;
13501                        } while (true);
13502    
13503                        if ( backtracking==0 ) {
13504                          text = new UnformattedTextNode(((link_descriptionpart_scope)link_descriptionpart_stack.peek()).element);
13505                        }
13506    
13507                        }
13508                        break;
13509    
13510                }
13511            }
13512            catch (RecognitionException re) {
13513                reportError(re);
13514                recover(input,re);
13515            }
13516            finally {
13517                link_descriptionpart_stack.pop();
13518            }
13519            return text;
13520        }
13521        // $ANTLR end link_descriptionpart
13522    
13523    
13524        // $ANTLR start link_bold_descriptionpart
13525        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:850:1: link_bold_descriptionpart returns [ASTNode text = null] : ( ital_markup t= link_boldital_description ital_markup | ld= link_descriptiontext );
13526        public final ASTNode link_bold_descriptionpart() throws RecognitionException {
13527            ASTNode text =  null;
13528    
13529            CollectionNode t = null;
13530    
13531            CollectionNode ld = null;
13532    
13533    
13534            try {
13535                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:851:2: ( ital_markup t= link_boldital_description ital_markup | ld= link_descriptiontext )
13536                int alt124=2;
13537                int LA124_0 = input.LA(1);
13538    
13539                if ( (LA124_0==ITAL) ) {
13540                    alt124=1;
13541                }
13542                else if ( ((LA124_0>=FORCED_END_OF_LINE && LA124_0<=WIKI)||LA124_0==POUND||(LA124_0>=EQUAL && LA124_0<=PIPE)||(LA124_0>=FORCED_LINEBREAK && LA124_0<=NOWIKI_CLOSE)||(LA124_0>=IMAGE_CLOSE && LA124_0<=79)) ) {
13543                    alt124=2;
13544                }
13545                else {
13546                    if (backtracking>0) {failed=true; return text;}
13547                    NoViableAltException nvae =
13548                        new NoViableAltException("850:1: link_bold_descriptionpart returns [ASTNode text = null] : ( ital_markup t= link_boldital_description ital_markup | ld= link_descriptiontext );", 124, 0, input);
13549    
13550                    throw nvae;
13551                }
13552                switch (alt124) {
13553                    case 1 :
13554                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:851:4: ital_markup t= link_boldital_description ital_markup
13555                        {
13556                        pushFollow(FOLLOW_ital_markup_in_link_bold_descriptionpart3823);
13557                        ital_markup();
13558                        _fsp--;
13559                        if (failed) return text;
13560                        pushFollow(FOLLOW_link_boldital_description_in_link_bold_descriptionpart3830);
13561                        t=link_boldital_description();
13562                        _fsp--;
13563                        if (failed) return text;
13564                        if ( backtracking==0 ) {
13565                          text = new ItalicTextNode(t);
13566                        }
13567                        pushFollow(FOLLOW_ital_markup_in_link_bold_descriptionpart3835);
13568                        ital_markup();
13569                        _fsp--;
13570                        if (failed) return text;
13571    
13572                        }
13573                        break;
13574                    case 2 :
13575                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:852:4: ld= link_descriptiontext
13576                        {
13577                        pushFollow(FOLLOW_link_descriptiontext_in_link_bold_descriptionpart3844);
13578                        ld=link_descriptiontext();
13579                        _fsp--;
13580                        if (failed) return text;
13581                        if ( backtracking==0 ) {
13582                          text =ld;
13583                        }
13584    
13585                        }
13586                        break;
13587    
13588                }
13589            }
13590            catch (RecognitionException re) {
13591                reportError(re);
13592                recover(input,re);
13593            }
13594            finally {
13595            }
13596            return text;
13597        }
13598        // $ANTLR end link_bold_descriptionpart
13599    
13600    
13601        // $ANTLR start link_ital_descriptionpart
13602        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:854:1: link_ital_descriptionpart returns [ASTNode text = null] : ( bold_markup td= link_boldital_description bold_markup | t= link_descriptiontext );
13603        public final ASTNode link_ital_descriptionpart() throws RecognitionException {
13604            ASTNode text =  null;
13605    
13606            CollectionNode td = null;
13607    
13608            CollectionNode t = null;
13609    
13610    
13611            try {
13612                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:855:2: ( bold_markup td= link_boldital_description bold_markup | t= link_descriptiontext )
13613                int alt125=2;
13614                int LA125_0 = input.LA(1);
13615    
13616                if ( (LA125_0==STAR) ) {
13617                    alt125=1;
13618                }
13619                else if ( ((LA125_0>=FORCED_END_OF_LINE && LA125_0<=WIKI)||LA125_0==POUND||(LA125_0>=EQUAL && LA125_0<=PIPE)||(LA125_0>=FORCED_LINEBREAK && LA125_0<=NOWIKI_CLOSE)||(LA125_0>=IMAGE_CLOSE && LA125_0<=79)) ) {
13620                    alt125=2;
13621                }
13622                else {
13623                    if (backtracking>0) {failed=true; return text;}
13624                    NoViableAltException nvae =
13625                        new NoViableAltException("854:1: link_ital_descriptionpart returns [ASTNode text = null] : ( bold_markup td= link_boldital_description bold_markup | t= link_descriptiontext );", 125, 0, input);
13626    
13627                    throw nvae;
13628                }
13629                switch (alt125) {
13630                    case 1 :
13631                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:855:4: bold_markup td= link_boldital_description bold_markup
13632                        {
13633                        pushFollow(FOLLOW_bold_markup_in_link_ital_descriptionpart3860);
13634                        bold_markup();
13635                        _fsp--;
13636                        if (failed) return text;
13637                        pushFollow(FOLLOW_link_boldital_description_in_link_ital_descriptionpart3867);
13638                        td=link_boldital_description();
13639                        _fsp--;
13640                        if (failed) return text;
13641                        pushFollow(FOLLOW_bold_markup_in_link_ital_descriptionpart3870);
13642                        bold_markup();
13643                        _fsp--;
13644                        if (failed) return text;
13645                        if ( backtracking==0 ) {
13646                          text = new BoldTextNode(td);
13647                        }
13648    
13649                        }
13650                        break;
13651                    case 2 :
13652                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:856:4: t= link_descriptiontext
13653                        {
13654                        pushFollow(FOLLOW_link_descriptiontext_in_link_ital_descriptionpart3881);
13655                        t=link_descriptiontext();
13656                        _fsp--;
13657                        if (failed) return text;
13658                        if ( backtracking==0 ) {
13659                          text = t; 
13660                        }
13661    
13662                        }
13663                        break;
13664    
13665                }
13666            }
13667            catch (RecognitionException re) {
13668                reportError(re);
13669                recover(input,re);
13670            }
13671            finally {
13672            }
13673            return text;
13674        }
13675        // $ANTLR end link_ital_descriptionpart
13676    
13677    
13678        // $ANTLR start link_boldital_description
13679        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:858:1: link_boldital_description returns [CollectionNode text = new CollectionNode()] : onestar (t= link_descriptiontext onestar )+ ;
13680        public final CollectionNode link_boldital_description() throws RecognitionException {
13681            CollectionNode text =  new CollectionNode();
13682    
13683            CollectionNode t = null;
13684    
13685    
13686            try {
13687                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:859:2: ( onestar (t= link_descriptiontext onestar )+ )
13688                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:859:4: onestar (t= link_descriptiontext onestar )+
13689                {
13690                pushFollow(FOLLOW_onestar_in_link_boldital_description3897);
13691                onestar();
13692                _fsp--;
13693                if (failed) return text;
13694                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:859:13: (t= link_descriptiontext onestar )+
13695                int cnt126=0;
13696                loop126:
13697                do {
13698                    int alt126=2;
13699                    int LA126_0 = input.LA(1);
13700    
13701                    if ( ((LA126_0>=FORCED_END_OF_LINE && LA126_0<=WIKI)||LA126_0==POUND||(LA126_0>=EQUAL && LA126_0<=PIPE)||(LA126_0>=FORCED_LINEBREAK && LA126_0<=NOWIKI_CLOSE)||(LA126_0>=IMAGE_CLOSE && LA126_0<=79)) ) {
13702                        alt126=1;
13703                    }
13704    
13705    
13706                    switch (alt126) {
13707                    case 1 :
13708                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:859:15: t= link_descriptiontext onestar
13709                        {
13710                        pushFollow(FOLLOW_link_descriptiontext_in_link_boldital_description3906);
13711                        t=link_descriptiontext();
13712                        _fsp--;
13713                        if (failed) return text;
13714                        pushFollow(FOLLOW_onestar_in_link_boldital_description3909);
13715                        onestar();
13716                        _fsp--;
13717                        if (failed) return text;
13718                        if ( backtracking==0 ) {
13719    
13720                                                            for (ASTNode item:t.getASTNodes()) {
13721                                                                    text.add(item);
13722                                                            }
13723                                                    
13724                        }
13725    
13726                        }
13727                        break;
13728    
13729                    default :
13730                        if ( cnt126 >= 1 ) break loop126;
13731                        if (backtracking>0) {failed=true; return text;}
13732                            EarlyExitException eee =
13733                                new EarlyExitException(126, input);
13734                            throw eee;
13735                    }
13736                    cnt126++;
13737                } while (true);
13738    
13739    
13740                }
13741    
13742            }
13743            catch (RecognitionException re) {
13744                reportError(re);
13745                recover(input,re);
13746            }
13747            finally {
13748            }
13749            return text;
13750        }
13751        // $ANTLR end link_boldital_description
13752    
13753    
13754        // $ANTLR start link_descriptiontext
13755        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:865:1: link_descriptiontext returns [CollectionNode text = new CollectionNode()] : (t= link_descriptiontext_simple | ( forced_linebreak | e= escaped )+ );
13756        public final CollectionNode link_descriptiontext() throws RecognitionException {
13757            CollectionNode text =  new CollectionNode();
13758    
13759            StringBundler t = null;
13760    
13761            ScapedNode e = null;
13762    
13763    
13764            try {
13765                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:866:2: (t= link_descriptiontext_simple | ( forced_linebreak | e= escaped )+ )
13766                int alt128=2;
13767                int LA128_0 = input.LA(1);
13768    
13769                if ( ((LA128_0>=FORCED_END_OF_LINE && LA128_0<=WIKI)||LA128_0==POUND||(LA128_0>=EQUAL && LA128_0<=PIPE)||(LA128_0>=NOWIKI_BLOCK_CLOSE && LA128_0<=NOWIKI_CLOSE)||(LA128_0>=IMAGE_CLOSE && LA128_0<=79)) ) {
13770                    alt128=1;
13771                }
13772                else if ( ((LA128_0>=FORCED_LINEBREAK && LA128_0<=ESCAPE)) ) {
13773                    alt128=2;
13774                }
13775                else {
13776                    if (backtracking>0) {failed=true; return text;}
13777                    NoViableAltException nvae =
13778                        new NoViableAltException("865:1: link_descriptiontext returns [CollectionNode text = new CollectionNode()] : (t= link_descriptiontext_simple | ( forced_linebreak | e= escaped )+ );", 128, 0, input);
13779    
13780                    throw nvae;
13781                }
13782                switch (alt128) {
13783                    case 1 :
13784                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:866:5: t= link_descriptiontext_simple
13785                        {
13786                        pushFollow(FOLLOW_link_descriptiontext_simple_in_link_descriptiontext3932);
13787                        t=link_descriptiontext_simple();
13788                        _fsp--;
13789                        if (failed) return text;
13790                        if ( backtracking==0 ) {
13791                           text.add(new UnformattedTextNode(t.toString()));
13792                        }
13793    
13794                        }
13795                        break;
13796                    case 2 :
13797                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:867:5: ( forced_linebreak | e= escaped )+
13798                        {
13799                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:867:5: ( forced_linebreak | e= escaped )+
13800                        int cnt127=0;
13801                        loop127:
13802                        do {
13803                            int alt127=3;
13804                            int LA127_0 = input.LA(1);
13805    
13806                            if ( (LA127_0==FORCED_LINEBREAK) ) {
13807                                alt127=1;
13808                            }
13809                            else if ( (LA127_0==ESCAPE) ) {
13810                                alt127=2;
13811                            }
13812    
13813    
13814                            switch (alt127) {
13815                            case 1 :
13816                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:867:7: forced_linebreak
13817                                {
13818                                pushFollow(FOLLOW_forced_linebreak_in_link_descriptiontext3942);
13819                                forced_linebreak();
13820                                _fsp--;
13821                                if (failed) return text;
13822                                if ( backtracking==0 ) {
13823                                  text.add(new ForcedEndOfLineNode());
13824                                }
13825    
13826                                }
13827                                break;
13828                            case 2 :
13829                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:868:5: e= escaped
13830                                {
13831                                pushFollow(FOLLOW_escaped_in_link_descriptiontext3954);
13832                                e=escaped();
13833                                _fsp--;
13834                                if (failed) return text;
13835                                if ( backtracking==0 ) {
13836                                  text.add(e);
13837                                }
13838    
13839                                }
13840                                break;
13841    
13842                            default :
13843                                if ( cnt127 >= 1 ) break loop127;
13844                                if (backtracking>0) {failed=true; return text;}
13845                                    EarlyExitException eee =
13846                                        new EarlyExitException(127, input);
13847                                    throw eee;
13848                            }
13849                            cnt127++;
13850                        } while (true);
13851    
13852    
13853                        }
13854                        break;
13855    
13856                }
13857            }
13858            catch (RecognitionException re) {
13859                reportError(re);
13860                recover(input,re);
13861            }
13862            finally {
13863            }
13864            return text;
13865        }
13866        // $ANTLR end link_descriptiontext
13867    
13868    
13869        // $ANTLR start link_descriptiontext_simple
13870        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:870:1: link_descriptiontext_simple returns [StringBundler text = new StringBundler()] : (c=~ ( LINK_CLOSE | ITAL | STAR | LINK_OPEN | IMAGE_OPEN | NOWIKI_OPEN | EXTENSION | FORCED_LINEBREAK | ESCAPE | NEWLINE | EOF ) )+ ;
13871        public final StringBundler link_descriptiontext_simple() throws RecognitionException {
13872            StringBundler text =  new StringBundler();
13873    
13874            Token c=null;
13875    
13876            try {
13877                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:871:2: ( (c=~ ( LINK_CLOSE | ITAL | STAR | LINK_OPEN | IMAGE_OPEN | NOWIKI_OPEN | EXTENSION | FORCED_LINEBREAK | ESCAPE | NEWLINE | EOF ) )+ )
13878                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:871:4: (c=~ ( LINK_CLOSE | ITAL | STAR | LINK_OPEN | IMAGE_OPEN | NOWIKI_OPEN | EXTENSION | FORCED_LINEBREAK | ESCAPE | NEWLINE | EOF ) )+
13879                {
13880                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:871:4: (c=~ ( LINK_CLOSE | ITAL | STAR | LINK_OPEN | IMAGE_OPEN | NOWIKI_OPEN | EXTENSION | FORCED_LINEBREAK | ESCAPE | NEWLINE | EOF ) )+
13881                int cnt129=0;
13882                loop129:
13883                do {
13884                    int alt129=2;
13885                    int LA129_0 = input.LA(1);
13886    
13887                    if ( ((LA129_0>=FORCED_END_OF_LINE && LA129_0<=WIKI)||LA129_0==POUND||(LA129_0>=EQUAL && LA129_0<=PIPE)||(LA129_0>=NOWIKI_BLOCK_CLOSE && LA129_0<=NOWIKI_CLOSE)||(LA129_0>=IMAGE_CLOSE && LA129_0<=79)) ) {
13888                        alt129=1;
13889                    }
13890    
13891    
13892                    switch (alt129) {
13893                    case 1 :
13894                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:871:6: c=~ ( LINK_CLOSE | ITAL | STAR | LINK_OPEN | IMAGE_OPEN | NOWIKI_OPEN | EXTENSION | FORCED_LINEBREAK | ESCAPE | NEWLINE | EOF )
13895                        {
13896                        c=(Token)input.LT(1);
13897                        if ( (input.LA(1)>=FORCED_END_OF_LINE && input.LA(1)<=WIKI)||input.LA(1)==POUND||(input.LA(1)>=EQUAL && input.LA(1)<=PIPE)||(input.LA(1)>=NOWIKI_BLOCK_CLOSE && input.LA(1)<=NOWIKI_CLOSE)||(input.LA(1)>=IMAGE_CLOSE && input.LA(1)<=79) ) {
13898                            input.consume();
13899                            errorRecovery=false;failed=false;
13900                        }
13901                        else {
13902                            if (backtracking>0) {failed=true; return text;}
13903                            MismatchedSetException mse =
13904                                new MismatchedSetException(null,input);
13905                            recoverFromMismatchedSet(input,mse,FOLLOW_set_in_link_descriptiontext_simple3979);    throw mse;
13906                        }
13907    
13908                        if ( backtracking==0 ) {
13909                           text.append(c.getText()); 
13910                        }
13911    
13912                        }
13913                        break;
13914    
13915                    default :
13916                        if ( cnt129 >= 1 ) break loop129;
13917                        if (backtracking>0) {failed=true; return text;}
13918                            EarlyExitException eee =
13919                                new EarlyExitException(129, input);
13920                            throw eee;
13921                    }
13922                    cnt129++;
13923                } while (true);
13924    
13925    
13926                }
13927    
13928            }
13929            catch (RecognitionException re) {
13930                reportError(re);
13931                recover(input,re);
13932            }
13933            finally {
13934            }
13935            return text;
13936        }
13937        // $ANTLR end link_descriptiontext_simple
13938    
13939    
13940        // $ANTLR start link_uri
13941        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:883:1: link_uri returns [StringBundler text = new StringBundler()] : (c=~ ( PIPE | LINK_CLOSE | NEWLINE | EOF ) )+ ;
13942        public final StringBundler link_uri() throws RecognitionException {
13943            StringBundler text =  new StringBundler();
13944    
13945            Token c=null;
13946    
13947            try {
13948                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:884:2: ( (c=~ ( PIPE | LINK_CLOSE | NEWLINE | EOF ) )+ )
13949                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:884:4: (c=~ ( PIPE | LINK_CLOSE | NEWLINE | EOF ) )+
13950                {
13951                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:884:4: (c=~ ( PIPE | LINK_CLOSE | NEWLINE | EOF ) )+
13952                int cnt130=0;
13953                loop130:
13954                do {
13955                    int alt130=2;
13956                    int LA130_0 = input.LA(1);
13957    
13958                    if ( ((LA130_0>=FORCED_END_OF_LINE && LA130_0<=WIKI)||(LA130_0>=POUND && LA130_0<=EQUAL)||(LA130_0>=ITAL && LA130_0<=NOWIKI_CLOSE)||(LA130_0>=IMAGE_CLOSE && LA130_0<=79)) ) {
13959                        alt130=1;
13960                    }
13961    
13962    
13963                    switch (alt130) {
13964                    case 1 :
13965                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:884:6: c=~ ( PIPE | LINK_CLOSE | NEWLINE | EOF )
13966                        {
13967                        c=(Token)input.LT(1);
13968                        if ( (input.LA(1)>=FORCED_END_OF_LINE && input.LA(1)<=WIKI)||(input.LA(1)>=POUND && input.LA(1)<=EQUAL)||(input.LA(1)>=ITAL && input.LA(1)<=NOWIKI_CLOSE)||(input.LA(1)>=IMAGE_CLOSE && input.LA(1)<=79) ) {
13969                            input.consume();
13970                            errorRecovery=false;failed=false;
13971                        }
13972                        else {
13973                            if (backtracking>0) {failed=true; return text;}
13974                            MismatchedSetException mse =
13975                                new MismatchedSetException(null,input);
13976                            recoverFromMismatchedSet(input,mse,FOLLOW_set_in_link_uri4078);    throw mse;
13977                        }
13978    
13979                        if ( backtracking==0 ) {
13980                          text.append(c.getText()); 
13981                        }
13982    
13983                        }
13984                        break;
13985    
13986                    default :
13987                        if ( cnt130 >= 1 ) break loop130;
13988                        if (backtracking>0) {failed=true; return text;}
13989                            EarlyExitException eee =
13990                                new EarlyExitException(130, input);
13991                            throw eee;
13992                    }
13993                    cnt130++;
13994                } while (true);
13995    
13996    
13997                }
13998    
13999            }
14000            catch (RecognitionException re) {
14001                reportError(re);
14002                recover(input,re);
14003            }
14004            finally {
14005            }
14006            return text;
14007        }
14008        // $ANTLR end link_uri
14009    
14010    
14011        // $ANTLR start image
14012        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:891:1: image returns [ImageNode image = new ImageNode()] : image_open_markup uri= image_uri (alt= image_alternative )? image_close_markup ;
14013        public final ImageNode image() throws RecognitionException {
14014            ImageNode image =  new ImageNode();
14015    
14016            StringBundler uri = null;
14017    
14018            CollectionNode alt = null;
14019    
14020    
14021            try {
14022                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:892:2: ( image_open_markup uri= image_uri (alt= image_alternative )? image_close_markup )
14023                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:892:4: image_open_markup uri= image_uri (alt= image_alternative )? image_close_markup
14024                {
14025                pushFollow(FOLLOW_image_open_markup_in_image4119);
14026                image_open_markup();
14027                _fsp--;
14028                if (failed) return image;
14029                pushFollow(FOLLOW_image_uri_in_image4125);
14030                uri=image_uri();
14031                _fsp--;
14032                if (failed) return image;
14033                if ( backtracking==0 ) {
14034                  image.setLink(uri.toString());
14035                }
14036                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:892:79: (alt= image_alternative )?
14037                int alt131=2;
14038                int LA131_0 = input.LA(1);
14039    
14040                if ( (LA131_0==PIPE) ) {
14041                    alt131=1;
14042                }
14043                switch (alt131) {
14044                    case 1 :
14045                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:892:81: alt= image_alternative
14046                        {
14047                        pushFollow(FOLLOW_image_alternative_in_image4135);
14048                        alt=image_alternative();
14049                        _fsp--;
14050                        if (failed) return image;
14051                        if ( backtracking==0 ) {
14052                          image.setAltCollectionNode(alt);
14053                        }
14054    
14055                        }
14056                        break;
14057    
14058                }
14059    
14060                pushFollow(FOLLOW_image_close_markup_in_image4144);
14061                image_close_markup();
14062                _fsp--;
14063                if (failed) return image;
14064    
14065                }
14066    
14067            }
14068            catch (RecognitionException re) {
14069                reportError(re);
14070                recover(input,re);
14071            }
14072            finally {
14073            }
14074            return image;
14075        }
14076        // $ANTLR end image
14077    
14078    
14079        // $ANTLR start image_uri
14080        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:895:1: image_uri returns [StringBundler link = new StringBundler()] : (c=~ ( PIPE | IMAGE_CLOSE | NEWLINE | EOF ) )+ ;
14081        public final StringBundler image_uri() throws RecognitionException {
14082            StringBundler link =  new StringBundler();
14083    
14084            Token c=null;
14085    
14086            try {
14087                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:896:2: ( (c=~ ( PIPE | IMAGE_CLOSE | NEWLINE | EOF ) )+ )
14088                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:896:4: (c=~ ( PIPE | IMAGE_CLOSE | NEWLINE | EOF ) )+
14089                {
14090                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:896:4: (c=~ ( PIPE | IMAGE_CLOSE | NEWLINE | EOF ) )+
14091                int cnt132=0;
14092                loop132:
14093                do {
14094                    int alt132=2;
14095                    int LA132_0 = input.LA(1);
14096    
14097                    if ( ((LA132_0>=FORCED_END_OF_LINE && LA132_0<=WIKI)||(LA132_0>=POUND && LA132_0<=EQUAL)||(LA132_0>=ITAL && LA132_0<=LINK_CLOSE)||(LA132_0>=BLANKS && LA132_0<=79)) ) {
14098                        alt132=1;
14099                    }
14100    
14101    
14102                    switch (alt132) {
14103                    case 1 :
14104                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:896:5: c=~ ( PIPE | IMAGE_CLOSE | NEWLINE | EOF )
14105                        {
14106                        c=(Token)input.LT(1);
14107                        if ( (input.LA(1)>=FORCED_END_OF_LINE && input.LA(1)<=WIKI)||(input.LA(1)>=POUND && input.LA(1)<=EQUAL)||(input.LA(1)>=ITAL && input.LA(1)<=LINK_CLOSE)||(input.LA(1)>=BLANKS && input.LA(1)<=79) ) {
14108                            input.consume();
14109                            errorRecovery=false;failed=false;
14110                        }
14111                        else {
14112                            if (backtracking>0) {failed=true; return link;}
14113                            MismatchedSetException mse =
14114                                new MismatchedSetException(null,input);
14115                            recoverFromMismatchedSet(input,mse,FOLLOW_set_in_image_uri4163);    throw mse;
14116                        }
14117    
14118                        if ( backtracking==0 ) {
14119                          link.append(c.getText()); 
14120                        }
14121    
14122                        }
14123                        break;
14124    
14125                    default :
14126                        if ( cnt132 >= 1 ) break loop132;
14127                        if (backtracking>0) {failed=true; return link;}
14128                            EarlyExitException eee =
14129                                new EarlyExitException(132, input);
14130                            throw eee;
14131                    }
14132                    cnt132++;
14133                } while (true);
14134    
14135    
14136                }
14137    
14138            }
14139            catch (RecognitionException re) {
14140                reportError(re);
14141                recover(input,re);
14142            }
14143            finally {
14144            }
14145            return link;
14146        }
14147        // $ANTLR end image_uri
14148    
14149    
14150        // $ANTLR start image_alternative
14151        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:898:1: image_alternative returns [CollectionNode alternative = new CollectionNode()] : image_alternative_markup (p= image_alternativepart )+ ;
14152        public final CollectionNode image_alternative() throws RecognitionException {
14153            CollectionNode alternative =  new CollectionNode();
14154    
14155            ASTNode p = null;
14156    
14157    
14158            try {
14159                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:899:2: ( image_alternative_markup (p= image_alternativepart )+ )
14160                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:899:4: image_alternative_markup (p= image_alternativepart )+
14161                {
14162                pushFollow(FOLLOW_image_alternative_markup_in_image_alternative4198);
14163                image_alternative_markup();
14164                _fsp--;
14165                if (failed) return alternative;
14166                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:899:30: (p= image_alternativepart )+
14167                int cnt133=0;
14168                loop133:
14169                do {
14170                    int alt133=2;
14171                    int LA133_0 = input.LA(1);
14172    
14173                    if ( ((LA133_0>=FORCED_END_OF_LINE && LA133_0<=WIKI)||(LA133_0>=POUND && LA133_0<=ITAL)||(LA133_0>=FORCED_LINEBREAK && LA133_0<=LINK_CLOSE)||(LA133_0>=BLANKS && LA133_0<=79)) ) {
14174                        alt133=1;
14175                    }
14176    
14177    
14178                    switch (alt133) {
14179                    case 1 :
14180                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:899:32: p= image_alternativepart
14181                        {
14182                        pushFollow(FOLLOW_image_alternativepart_in_image_alternative4207);
14183                        p=image_alternativepart();
14184                        _fsp--;
14185                        if (failed) return alternative;
14186                        if ( backtracking==0 ) {
14187                          alternative.add(p); 
14188                        }
14189    
14190                        }
14191                        break;
14192    
14193                    default :
14194                        if ( cnt133 >= 1 ) break loop133;
14195                        if (backtracking>0) {failed=true; return alternative;}
14196                            EarlyExitException eee =
14197                                new EarlyExitException(133, input);
14198                            throw eee;
14199                    }
14200                    cnt133++;
14201                } while (true);
14202    
14203    
14204                }
14205    
14206            }
14207            catch (RecognitionException re) {
14208                reportError(re);
14209                recover(input,re);
14210            }
14211            finally {
14212            }
14213            return alternative;
14214        }
14215        // $ANTLR end image_alternative
14216    
14217        protected static class image_alternativepart_scope {
14218            CollectionNode elements;
14219        }
14220        protected Stack image_alternativepart_stack = new Stack();
14221    
14222    
14223        // $ANTLR start image_alternativepart
14224        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:901:1: image_alternativepart returns [ASTNode item = null] : ( bold_markup onestar (t1= image_bold_alternativepart onestar )+ bold_markup | ital_markup onestar (t2= image_ital_alternativepart onestar )+ ital_markup | onestar (t3= image_alternativetext onestar )+ );
14225        public final ASTNode image_alternativepart() throws RecognitionException {
14226            image_alternativepart_stack.push(new image_alternativepart_scope());
14227            ASTNode item =  null;
14228    
14229            ASTNode t1 = null;
14230    
14231            ASTNode t2 = null;
14232    
14233            CollectionNode t3 = null;
14234    
14235    
14236    
14237               ((image_alternativepart_scope)image_alternativepart_stack.peek()).elements = new CollectionNode();
14238    
14239            try {
14240                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:908:2: ( bold_markup onestar (t1= image_bold_alternativepart onestar )+ bold_markup | ital_markup onestar (t2= image_ital_alternativepart onestar )+ ital_markup | onestar (t3= image_alternativetext onestar )+ )
14241                int alt137=3;
14242                switch ( input.LA(1) ) {
14243                case STAR:
14244                    {
14245                    int LA137_1 = input.LA(2);
14246    
14247                    if ( (LA137_1==STAR) ) {
14248                        alt137=1;
14249                    }
14250                    else if ( ((LA137_1>=FORCED_END_OF_LINE && LA137_1<=WIKI)||LA137_1==POUND||(LA137_1>=EQUAL && LA137_1<=PIPE)||(LA137_1>=FORCED_LINEBREAK && LA137_1<=LINK_CLOSE)||(LA137_1>=BLANKS && LA137_1<=79)) ) {
14251                        alt137=3;
14252                    }
14253                    else {
14254                        if (backtracking>0) {failed=true; return item;}
14255                        NoViableAltException nvae =
14256                            new NoViableAltException("901:1: image_alternativepart returns [ASTNode item = null] : ( bold_markup onestar (t1= image_bold_alternativepart onestar )+ bold_markup | ital_markup onestar (t2= image_ital_alternativepart onestar )+ ital_markup | onestar (t3= image_alternativetext onestar )+ );", 137, 1, input);
14257    
14258                        throw nvae;
14259                    }
14260                    }
14261                    break;
14262                case ITAL:
14263                    {
14264                    alt137=2;
14265                    }
14266                    break;
14267                case FORCED_END_OF_LINE:
14268                case HEADING_SECTION:
14269                case HORIZONTAL_SECTION:
14270                case LIST_ITEM:
14271                case LIST_ITEM_PART:
14272                case NOWIKI_SECTION:
14273                case SCAPE_NODE:
14274                case TEXT_NODE:
14275                case UNORDERED_LIST:
14276                case UNFORMATTED_TEXT:
14277                case WIKI:
14278                case POUND:
14279                case EQUAL:
14280                case PIPE:
14281                case FORCED_LINEBREAK:
14282                case ESCAPE:
14283                case NOWIKI_BLOCK_CLOSE:
14284                case NOWIKI_CLOSE:
14285                case LINK_CLOSE:
14286                case BLANKS:
14287                case TABLE_OF_CONTENTS_TEXT:
14288                case DASH:
14289                case CR:
14290                case LF:
14291                case SPACE:
14292                case TABULATOR:
14293                case BRACE_CLOSE:
14294                case COLON_SLASH:
14295                case SLASH:
14296                case TABLE_OF_CONTENTS_OPEN_MARKUP:
14297                case TABLE_OF_CONTENTS_CLOSE_MARKUP:
14298                case INSIGNIFICANT_CHAR:
14299                case 44:
14300                case 45:
14301                case 46:
14302                case 47:
14303                case 48:
14304                case 49:
14305                case 50:
14306                case 51:
14307                case 52:
14308                case 53:
14309                case 54:
14310                case 55:
14311                case 56:
14312                case 57:
14313                case 58:
14314                case 59:
14315                case 60:
14316                case 61:
14317                case 62:
14318                case 63:
14319                case 64:
14320                case 65:
14321                case 66:
14322                case 67:
14323                case 68:
14324                case 69:
14325                case 70:
14326                case 71:
14327                case 72:
14328                case 73:
14329                case 74:
14330                case 75:
14331                case 76:
14332                case 77:
14333                case 78:
14334                case 79:
14335                    {
14336                    alt137=3;
14337                    }
14338                    break;
14339                default:
14340                    if (backtracking>0) {failed=true; return item;}
14341                    NoViableAltException nvae =
14342                        new NoViableAltException("901:1: image_alternativepart returns [ASTNode item = null] : ( bold_markup onestar (t1= image_bold_alternativepart onestar )+ bold_markup | ital_markup onestar (t2= image_ital_alternativepart onestar )+ ital_markup | onestar (t3= image_alternativetext onestar )+ );", 137, 0, input);
14343    
14344                    throw nvae;
14345                }
14346    
14347                switch (alt137) {
14348                    case 1 :
14349                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:908:4: bold_markup onestar (t1= image_bold_alternativepart onestar )+ bold_markup
14350                        {
14351                        pushFollow(FOLLOW_bold_markup_in_image_alternativepart4233);
14352                        bold_markup();
14353                        _fsp--;
14354                        if (failed) return item;
14355                        pushFollow(FOLLOW_onestar_in_image_alternativepart4236);
14356                        onestar();
14357                        _fsp--;
14358                        if (failed) return item;
14359                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:908:26: (t1= image_bold_alternativepart onestar )+
14360                        int cnt134=0;
14361                        loop134:
14362                        do {
14363                            int alt134=2;
14364                            int LA134_0 = input.LA(1);
14365    
14366                            if ( (LA134_0==STAR) ) {
14367                                int LA134_1 = input.LA(2);
14368    
14369                                if ( ((LA134_1>=FORCED_END_OF_LINE && LA134_1<=WIKI)||LA134_1==POUND||(LA134_1>=EQUAL && LA134_1<=PIPE)||(LA134_1>=FORCED_LINEBREAK && LA134_1<=LINK_CLOSE)||(LA134_1>=BLANKS && LA134_1<=79)) ) {
14370                                    alt134=1;
14371                                }
14372    
14373    
14374                            }
14375                            else if ( ((LA134_0>=FORCED_END_OF_LINE && LA134_0<=WIKI)||LA134_0==POUND||(LA134_0>=EQUAL && LA134_0<=ITAL)||(LA134_0>=FORCED_LINEBREAK && LA134_0<=LINK_CLOSE)||(LA134_0>=BLANKS && LA134_0<=79)) ) {
14376                                alt134=1;
14377                            }
14378    
14379    
14380                            switch (alt134) {
14381                            case 1 :
14382                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:908:28: t1= image_bold_alternativepart onestar
14383                                {
14384                                pushFollow(FOLLOW_image_bold_alternativepart_in_image_alternativepart4245);
14385                                t1=image_bold_alternativepart();
14386                                _fsp--;
14387                                if (failed) return item;
14388                                if ( backtracking==0 ) {
14389                                  ((image_alternativepart_scope)image_alternativepart_stack.peek()).elements.add(t1);
14390                                }
14391                                pushFollow(FOLLOW_onestar_in_image_alternativepart4250);
14392                                onestar();
14393                                _fsp--;
14394                                if (failed) return item;
14395    
14396                                }
14397                                break;
14398    
14399                            default :
14400                                if ( cnt134 >= 1 ) break loop134;
14401                                if (backtracking>0) {failed=true; return item;}
14402                                    EarlyExitException eee =
14403                                        new EarlyExitException(134, input);
14404                                    throw eee;
14405                            }
14406                            cnt134++;
14407                        } while (true);
14408    
14409                        pushFollow(FOLLOW_bold_markup_in_image_alternativepart4257);
14410                        bold_markup();
14411                        _fsp--;
14412                        if (failed) return item;
14413                        if ( backtracking==0 ) {
14414                          item = new BoldTextNode(((image_alternativepart_scope)image_alternativepart_stack.peek()).elements);
14415                        }
14416    
14417                        }
14418                        break;
14419                    case 2 :
14420                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:910:4: ital_markup onestar (t2= image_ital_alternativepart onestar )+ ital_markup
14421                        {
14422                        pushFollow(FOLLOW_ital_markup_in_image_alternativepart4264);
14423                        ital_markup();
14424                        _fsp--;
14425                        if (failed) return item;
14426                        pushFollow(FOLLOW_onestar_in_image_alternativepart4267);
14427                        onestar();
14428                        _fsp--;
14429                        if (failed) return item;
14430                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:910:26: (t2= image_ital_alternativepart onestar )+
14431                        int cnt135=0;
14432                        loop135:
14433                        do {
14434                            int alt135=2;
14435                            int LA135_0 = input.LA(1);
14436    
14437                            if ( ((LA135_0>=FORCED_END_OF_LINE && LA135_0<=WIKI)||(LA135_0>=POUND && LA135_0<=PIPE)||(LA135_0>=FORCED_LINEBREAK && LA135_0<=LINK_CLOSE)||(LA135_0>=BLANKS && LA135_0<=79)) ) {
14438                                alt135=1;
14439                            }
14440    
14441    
14442                            switch (alt135) {
14443                            case 1 :
14444                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:910:29: t2= image_ital_alternativepart onestar
14445                                {
14446                                pushFollow(FOLLOW_image_ital_alternativepart_in_image_alternativepart4277);
14447                                t2=image_ital_alternativepart();
14448                                _fsp--;
14449                                if (failed) return item;
14450                                if ( backtracking==0 ) {
14451                                  ((image_alternativepart_scope)image_alternativepart_stack.peek()).elements.add(t2);
14452                                }
14453                                pushFollow(FOLLOW_onestar_in_image_alternativepart4282);
14454                                onestar();
14455                                _fsp--;
14456                                if (failed) return item;
14457    
14458                                }
14459                                break;
14460    
14461                            default :
14462                                if ( cnt135 >= 1 ) break loop135;
14463                                if (backtracking>0) {failed=true; return item;}
14464                                    EarlyExitException eee =
14465                                        new EarlyExitException(135, input);
14466                                    throw eee;
14467                            }
14468                            cnt135++;
14469                        } while (true);
14470    
14471                        pushFollow(FOLLOW_ital_markup_in_image_alternativepart4289);
14472                        ital_markup();
14473                        _fsp--;
14474                        if (failed) return item;
14475                        if ( backtracking==0 ) {
14476                          item = new ItalicTextNode(((image_alternativepart_scope)image_alternativepart_stack.peek()).elements);
14477                        }
14478    
14479                        }
14480                        break;
14481                    case 3 :
14482                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:912:4: onestar (t3= image_alternativetext onestar )+
14483                        {
14484                        pushFollow(FOLLOW_onestar_in_image_alternativepart4296);
14485                        onestar();
14486                        _fsp--;
14487                        if (failed) return item;
14488                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:912:13: (t3= image_alternativetext onestar )+
14489                        int cnt136=0;
14490                        loop136:
14491                        do {
14492                            int alt136=2;
14493                            int LA136_0 = input.LA(1);
14494    
14495                            if ( ((LA136_0>=FORCED_END_OF_LINE && LA136_0<=WIKI)||LA136_0==POUND||(LA136_0>=EQUAL && LA136_0<=PIPE)||(LA136_0>=ESCAPE && LA136_0<=LINK_CLOSE)||(LA136_0>=BLANKS && LA136_0<=79)) ) {
14496                                alt136=1;
14497                            }
14498                            else if ( (LA136_0==FORCED_LINEBREAK) ) {
14499                                alt136=1;
14500                            }
14501    
14502    
14503                            switch (alt136) {
14504                            case 1 :
14505                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:912:15: t3= image_alternativetext onestar
14506                                {
14507                                pushFollow(FOLLOW_image_alternativetext_in_image_alternativepart4303);
14508                                t3=image_alternativetext();
14509                                _fsp--;
14510                                if (failed) return item;
14511                                if ( backtracking==0 ) {
14512    
14513                                                                    for (ASTNode n: t3.getASTNodes()) {
14514                                                                       ((image_alternativepart_scope)image_alternativepart_stack.peek()).elements.add(n);
14515                                                                     }
14516                                                                          
14517                                }
14518                                pushFollow(FOLLOW_onestar_in_image_alternativepart4308);
14519                                onestar();
14520                                _fsp--;
14521                                if (failed) return item;
14522    
14523                                }
14524                                break;
14525    
14526                            default :
14527                                if ( cnt136 >= 1 ) break loop136;
14528                                if (backtracking>0) {failed=true; return item;}
14529                                    EarlyExitException eee =
14530                                        new EarlyExitException(136, input);
14531                                    throw eee;
14532                            }
14533                            cnt136++;
14534                        } while (true);
14535    
14536                        if ( backtracking==0 ) {
14537                          item =new UnformattedTextNode(((image_alternativepart_scope)image_alternativepart_stack.peek()).elements);
14538                        }
14539    
14540                        }
14541                        break;
14542    
14543                }
14544            }
14545            catch (RecognitionException re) {
14546                reportError(re);
14547                recover(input,re);
14548            }
14549            finally {
14550                image_alternativepart_stack.pop();
14551            }
14552            return item;
14553        }
14554        // $ANTLR end image_alternativepart
14555    
14556        protected static class image_bold_alternativepart_scope {
14557            CollectionNode elements;
14558        }
14559        protected Stack image_bold_alternativepart_stack = new Stack();
14560    
14561    
14562        // $ANTLR start image_bold_alternativepart
14563        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:918:1: image_bold_alternativepart returns [ASTNode text = null] : ( ital_markup t= link_boldital_description ital_markup | onestar (i= image_alternativetext onestar )+ );
14564        public final ASTNode image_bold_alternativepart() throws RecognitionException {
14565            image_bold_alternativepart_stack.push(new image_bold_alternativepart_scope());
14566            ASTNode text =  null;
14567    
14568            CollectionNode t = null;
14569    
14570            CollectionNode i = null;
14571    
14572    
14573    
14574               ((image_bold_alternativepart_scope)image_bold_alternativepart_stack.peek()).elements = new CollectionNode();
14575    
14576            try {
14577                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:925:2: ( ital_markup t= link_boldital_description ital_markup | onestar (i= image_alternativetext onestar )+ )
14578                int alt139=2;
14579                int LA139_0 = input.LA(1);
14580    
14581                if ( (LA139_0==ITAL) ) {
14582                    alt139=1;
14583                }
14584                else if ( ((LA139_0>=FORCED_END_OF_LINE && LA139_0<=WIKI)||(LA139_0>=POUND && LA139_0<=PIPE)||(LA139_0>=FORCED_LINEBREAK && LA139_0<=LINK_CLOSE)||(LA139_0>=BLANKS && LA139_0<=79)) ) {
14585                    alt139=2;
14586                }
14587                else {
14588                    if (backtracking>0) {failed=true; return text;}
14589                    NoViableAltException nvae =
14590                        new NoViableAltException("918:1: image_bold_alternativepart returns [ASTNode text = null] : ( ital_markup t= link_boldital_description ital_markup | onestar (i= image_alternativetext onestar )+ );", 139, 0, input);
14591    
14592                    throw nvae;
14593                }
14594                switch (alt139) {
14595                    case 1 :
14596                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:925:4: ital_markup t= link_boldital_description ital_markup
14597                        {
14598                        pushFollow(FOLLOW_ital_markup_in_image_bold_alternativepart4334);
14599                        ital_markup();
14600                        _fsp--;
14601                        if (failed) return text;
14602                        pushFollow(FOLLOW_link_boldital_description_in_image_bold_alternativepart4341);
14603                        t=link_boldital_description();
14604                        _fsp--;
14605                        if (failed) return text;
14606                        if ( backtracking==0 ) {
14607                          text = new ItalicTextNode(t); 
14608                        }
14609                        pushFollow(FOLLOW_ital_markup_in_image_bold_alternativepart4346);
14610                        ital_markup();
14611                        _fsp--;
14612                        if (failed) return text;
14613    
14614                        }
14615                        break;
14616                    case 2 :
14617                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:926:4: onestar (i= image_alternativetext onestar )+
14618                        {
14619                        pushFollow(FOLLOW_onestar_in_image_bold_alternativepart4351);
14620                        onestar();
14621                        _fsp--;
14622                        if (failed) return text;
14623                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:926:13: (i= image_alternativetext onestar )+
14624                        int cnt138=0;
14625                        loop138:
14626                        do {
14627                            int alt138=2;
14628                            int LA138_0 = input.LA(1);
14629    
14630                            if ( ((LA138_0>=FORCED_END_OF_LINE && LA138_0<=WIKI)||LA138_0==POUND||(LA138_0>=EQUAL && LA138_0<=PIPE)||(LA138_0>=ESCAPE && LA138_0<=LINK_CLOSE)||(LA138_0>=BLANKS && LA138_0<=79)) ) {
14631                                alt138=1;
14632                            }
14633                            else if ( (LA138_0==FORCED_LINEBREAK) ) {
14634                                alt138=1;
14635                            }
14636    
14637    
14638                            switch (alt138) {
14639                            case 1 :
14640                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:926:15: i= image_alternativetext onestar
14641                                {
14642                                pushFollow(FOLLOW_image_alternativetext_in_image_bold_alternativepart4360);
14643                                i=image_alternativetext();
14644                                _fsp--;
14645                                if (failed) return text;
14646                                pushFollow(FOLLOW_onestar_in_image_bold_alternativepart4363);
14647                                onestar();
14648                                _fsp--;
14649                                if (failed) return text;
14650                                if ( backtracking==0 ) {
14651    
14652                                                                    for (ASTNode item:i.getASTNodes()) {
14653                                                                        ((image_ital_alternativepart_scope)image_ital_alternativepart_stack.peek()).elements.add(item);
14654                                                                    }
14655                                                                    
14656                                }
14657    
14658                                }
14659                                break;
14660    
14661                            default :
14662                                if ( cnt138 >= 1 ) break loop138;
14663                                if (backtracking>0) {failed=true; return text;}
14664                                    EarlyExitException eee =
14665                                        new EarlyExitException(138, input);
14666                                    throw eee;
14667                            }
14668                            cnt138++;
14669                        } while (true);
14670    
14671                        if ( backtracking==0 ) {
14672                          text = new UnformattedTextNode(((image_bold_alternativepart_scope)image_bold_alternativepart_stack.peek()).elements);
14673                        }
14674    
14675                        }
14676                        break;
14677    
14678                }
14679            }
14680            catch (RecognitionException re) {
14681                reportError(re);
14682                recover(input,re);
14683            }
14684            finally {
14685                image_bold_alternativepart_stack.pop();
14686            }
14687            return text;
14688        }
14689        // $ANTLR end image_bold_alternativepart
14690    
14691        protected static class image_ital_alternativepart_scope {
14692            CollectionNode elements;
14693        }
14694        protected Stack image_ital_alternativepart_stack = new Stack();
14695    
14696    
14697        // $ANTLR start image_ital_alternativepart
14698        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:933:1: image_ital_alternativepart returns [ASTNode text = null] : ( bold_markup t= link_boldital_description bold_markup | onestar (i= image_alternativetext onestar )+ );
14699        public final ASTNode image_ital_alternativepart() throws RecognitionException {
14700            image_ital_alternativepart_stack.push(new image_ital_alternativepart_scope());
14701            ASTNode text =  null;
14702    
14703            CollectionNode t = null;
14704    
14705            CollectionNode i = null;
14706    
14707    
14708    
14709               ((image_ital_alternativepart_scope)image_ital_alternativepart_stack.peek()).elements = new CollectionNode();
14710    
14711            try {
14712                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:940:2: ( bold_markup t= link_boldital_description bold_markup | onestar (i= image_alternativetext onestar )+ )
14713                int alt141=2;
14714                int LA141_0 = input.LA(1);
14715    
14716                if ( (LA141_0==STAR) ) {
14717                    int LA141_1 = input.LA(2);
14718    
14719                    if ( (LA141_1==STAR) ) {
14720                        alt141=1;
14721                    }
14722                    else if ( ((LA141_1>=FORCED_END_OF_LINE && LA141_1<=WIKI)||LA141_1==POUND||(LA141_1>=EQUAL && LA141_1<=PIPE)||(LA141_1>=FORCED_LINEBREAK && LA141_1<=LINK_CLOSE)||(LA141_1>=BLANKS && LA141_1<=79)) ) {
14723                        alt141=2;
14724                    }
14725                    else {
14726                        if (backtracking>0) {failed=true; return text;}
14727                        NoViableAltException nvae =
14728                            new NoViableAltException("933:1: image_ital_alternativepart returns [ASTNode text = null] : ( bold_markup t= link_boldital_description bold_markup | onestar (i= image_alternativetext onestar )+ );", 141, 1, input);
14729    
14730                        throw nvae;
14731                    }
14732                }
14733                else if ( ((LA141_0>=FORCED_END_OF_LINE && LA141_0<=WIKI)||LA141_0==POUND||(LA141_0>=EQUAL && LA141_0<=PIPE)||(LA141_0>=FORCED_LINEBREAK && LA141_0<=LINK_CLOSE)||(LA141_0>=BLANKS && LA141_0<=79)) ) {
14734                    alt141=2;
14735                }
14736                else {
14737                    if (backtracking>0) {failed=true; return text;}
14738                    NoViableAltException nvae =
14739                        new NoViableAltException("933:1: image_ital_alternativepart returns [ASTNode text = null] : ( bold_markup t= link_boldital_description bold_markup | onestar (i= image_alternativetext onestar )+ );", 141, 0, input);
14740    
14741                    throw nvae;
14742                }
14743                switch (alt141) {
14744                    case 1 :
14745                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:940:4: bold_markup t= link_boldital_description bold_markup
14746                        {
14747                        pushFollow(FOLLOW_bold_markup_in_image_ital_alternativepart4391);
14748                        bold_markup();
14749                        _fsp--;
14750                        if (failed) return text;
14751                        pushFollow(FOLLOW_link_boldital_description_in_image_ital_alternativepart4398);
14752                        t=link_boldital_description();
14753                        _fsp--;
14754                        if (failed) return text;
14755                        if ( backtracking==0 ) {
14756                          text = new BoldTextNode(t); 
14757                        }
14758                        pushFollow(FOLLOW_bold_markup_in_image_ital_alternativepart4403);
14759                        bold_markup();
14760                        _fsp--;
14761                        if (failed) return text;
14762    
14763                        }
14764                        break;
14765                    case 2 :
14766                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:941:4: onestar (i= image_alternativetext onestar )+
14767                        {
14768                        pushFollow(FOLLOW_onestar_in_image_ital_alternativepart4408);
14769                        onestar();
14770                        _fsp--;
14771                        if (failed) return text;
14772                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:941:13: (i= image_alternativetext onestar )+
14773                        int cnt140=0;
14774                        loop140:
14775                        do {
14776                            int alt140=2;
14777                            int LA140_0 = input.LA(1);
14778    
14779                            if ( ((LA140_0>=FORCED_END_OF_LINE && LA140_0<=WIKI)||LA140_0==POUND||(LA140_0>=EQUAL && LA140_0<=PIPE)||(LA140_0>=ESCAPE && LA140_0<=LINK_CLOSE)||(LA140_0>=BLANKS && LA140_0<=79)) ) {
14780                                alt140=1;
14781                            }
14782                            else if ( (LA140_0==FORCED_LINEBREAK) ) {
14783                                alt140=1;
14784                            }
14785    
14786    
14787                            switch (alt140) {
14788                            case 1 :
14789                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:941:14: i= image_alternativetext onestar
14790                                {
14791                                pushFollow(FOLLOW_image_alternativetext_in_image_ital_alternativepart4417);
14792                                i=image_alternativetext();
14793                                _fsp--;
14794                                if (failed) return text;
14795                                pushFollow(FOLLOW_onestar_in_image_ital_alternativepart4420);
14796                                onestar();
14797                                _fsp--;
14798                                if (failed) return text;
14799                                if ( backtracking==0 ) {
14800    
14801                                                                    for (ASTNode item:i.getASTNodes()) {
14802                                                                        ((image_ital_alternativepart_scope)image_ital_alternativepart_stack.peek()).elements.add(item);
14803                                                                    }
14804                                                                    
14805                                }
14806    
14807                                }
14808                                break;
14809    
14810                            default :
14811                                if ( cnt140 >= 1 ) break loop140;
14812                                if (backtracking>0) {failed=true; return text;}
14813                                    EarlyExitException eee =
14814                                        new EarlyExitException(140, input);
14815                                    throw eee;
14816                            }
14817                            cnt140++;
14818                        } while (true);
14819    
14820                        if ( backtracking==0 ) {
14821                          text = new UnformattedTextNode(((image_ital_alternativepart_scope)image_ital_alternativepart_stack.peek()).elements);
14822                        }
14823    
14824                        }
14825                        break;
14826    
14827                }
14828            }
14829            catch (RecognitionException re) {
14830                reportError(re);
14831                recover(input,re);
14832            }
14833            finally {
14834                image_ital_alternativepart_stack.pop();
14835            }
14836            return text;
14837        }
14838        // $ANTLR end image_ital_alternativepart
14839    
14840    
14841        // $ANTLR start image_boldital_alternative
14842        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:947:1: image_boldital_alternative returns [CollectionNode text = new CollectionNode()] : onestar (i= image_alternativetext onestar )+ ;
14843        public final CollectionNode image_boldital_alternative() throws RecognitionException {
14844            CollectionNode text =  new CollectionNode();
14845    
14846            CollectionNode i = null;
14847    
14848    
14849            try {
14850                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:948:2: ( onestar (i= image_alternativetext onestar )+ )
14851                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:948:4: onestar (i= image_alternativetext onestar )+
14852                {
14853                pushFollow(FOLLOW_onestar_in_image_boldital_alternative4441);
14854                onestar();
14855                _fsp--;
14856                if (failed) return text;
14857                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:948:13: (i= image_alternativetext onestar )+
14858                int cnt142=0;
14859                loop142:
14860                do {
14861                    int alt142=2;
14862                    int LA142_0 = input.LA(1);
14863    
14864                    if ( ((LA142_0>=FORCED_END_OF_LINE && LA142_0<=WIKI)||LA142_0==POUND||(LA142_0>=EQUAL && LA142_0<=PIPE)||(LA142_0>=FORCED_LINEBREAK && LA142_0<=LINK_CLOSE)||(LA142_0>=BLANKS && LA142_0<=79)) ) {
14865                        alt142=1;
14866                    }
14867    
14868    
14869                    switch (alt142) {
14870                    case 1 :
14871                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:948:15: i= image_alternativetext onestar
14872                        {
14873                        pushFollow(FOLLOW_image_alternativetext_in_image_boldital_alternative4450);
14874                        i=image_alternativetext();
14875                        _fsp--;
14876                        if (failed) return text;
14877                        pushFollow(FOLLOW_onestar_in_image_boldital_alternative4453);
14878                        onestar();
14879                        _fsp--;
14880                        if (failed) return text;
14881                        if ( backtracking==0 ) {
14882    
14883                                                            for (ASTNode item:i.getASTNodes()) {
14884                                                                text.add(item);
14885                                                            }
14886                                                            
14887                        }
14888    
14889                        }
14890                        break;
14891    
14892                    default :
14893                        if ( cnt142 >= 1 ) break loop142;
14894                        if (backtracking>0) {failed=true; return text;}
14895                            EarlyExitException eee =
14896                                new EarlyExitException(142, input);
14897                            throw eee;
14898                    }
14899                    cnt142++;
14900                } while (true);
14901    
14902    
14903                }
14904    
14905            }
14906            catch (RecognitionException re) {
14907                reportError(re);
14908                recover(input,re);
14909            }
14910            finally {
14911            }
14912            return text;
14913        }
14914        // $ANTLR end image_boldital_alternative
14915    
14916    
14917        // $ANTLR start image_alternativetext
14918        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:954:1: image_alternativetext returns [CollectionNode items = new CollectionNode()] : (contents= image_alternative_simple_text | ( forced_linebreak )+ );
14919        public final CollectionNode image_alternativetext() throws RecognitionException {
14920            CollectionNode items =  new CollectionNode();
14921    
14922            StringBundler contents = null;
14923    
14924    
14925            try {
14926                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:955:2: (contents= image_alternative_simple_text | ( forced_linebreak )+ )
14927                int alt144=2;
14928                int LA144_0 = input.LA(1);
14929    
14930                if ( ((LA144_0>=FORCED_END_OF_LINE && LA144_0<=WIKI)||LA144_0==POUND||(LA144_0>=EQUAL && LA144_0<=PIPE)||(LA144_0>=ESCAPE && LA144_0<=LINK_CLOSE)||(LA144_0>=BLANKS && LA144_0<=79)) ) {
14931                    alt144=1;
14932                }
14933                else if ( (LA144_0==FORCED_LINEBREAK) ) {
14934                    alt144=2;
14935                }
14936                else {
14937                    if (backtracking>0) {failed=true; return items;}
14938                    NoViableAltException nvae =
14939                        new NoViableAltException("954:1: image_alternativetext returns [CollectionNode items = new CollectionNode()] : (contents= image_alternative_simple_text | ( forced_linebreak )+ );", 144, 0, input);
14940    
14941                    throw nvae;
14942                }
14943                switch (alt144) {
14944                    case 1 :
14945                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:955:4: contents= image_alternative_simple_text
14946                        {
14947                        pushFollow(FOLLOW_image_alternative_simple_text_in_image_alternativetext4475);
14948                        contents=image_alternative_simple_text();
14949                        _fsp--;
14950                        if (failed) return items;
14951                        if ( backtracking==0 ) {
14952                          items.add(new UnformattedTextNode(contents.toString())); 
14953                        }
14954    
14955                        }
14956                        break;
14957                    case 2 :
14958                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:956:4: ( forced_linebreak )+
14959                        {
14960                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:956:4: ( forced_linebreak )+
14961                        int cnt143=0;
14962                        loop143:
14963                        do {
14964                            int alt143=2;
14965                            int LA143_0 = input.LA(1);
14966    
14967                            if ( (LA143_0==FORCED_LINEBREAK) ) {
14968                                alt143=1;
14969                            }
14970    
14971    
14972                            switch (alt143) {
14973                            case 1 :
14974                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:956:5: forced_linebreak
14975                                {
14976                                pushFollow(FOLLOW_forced_linebreak_in_image_alternativetext4483);
14977                                forced_linebreak();
14978                                _fsp--;
14979                                if (failed) return items;
14980                                if ( backtracking==0 ) {
14981                                  items.add(new ForcedEndOfLineNode());
14982                                }
14983    
14984                                }
14985                                break;
14986    
14987                            default :
14988                                if ( cnt143 >= 1 ) break loop143;
14989                                if (backtracking>0) {failed=true; return items;}
14990                                    EarlyExitException eee =
14991                                        new EarlyExitException(143, input);
14992                                    throw eee;
14993                            }
14994                            cnt143++;
14995                        } while (true);
14996    
14997    
14998                        }
14999                        break;
15000    
15001                }
15002            }
15003            catch (RecognitionException re) {
15004                reportError(re);
15005                recover(input,re);
15006            }
15007            finally {
15008            }
15009            return items;
15010        }
15011        // $ANTLR end image_alternativetext
15012    
15013    
15014        // $ANTLR start image_alternative_simple_text
15015        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:959:1: image_alternative_simple_text returns [StringBundler text = new StringBundler()] : (c=~ ( IMAGE_CLOSE | ITAL | STAR | LINK_OPEN | IMAGE_OPEN | NOWIKI_OPEN | EXTENSION | FORCED_LINEBREAK | NEWLINE | EOF ) )+ ;
15016        public final StringBundler image_alternative_simple_text() throws RecognitionException {
15017            StringBundler text =  new StringBundler();
15018    
15019            Token c=null;
15020    
15021            try {
15022                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:960:2: ( (c=~ ( IMAGE_CLOSE | ITAL | STAR | LINK_OPEN | IMAGE_OPEN | NOWIKI_OPEN | EXTENSION | FORCED_LINEBREAK | NEWLINE | EOF ) )+ )
15023                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:961:2: (c=~ ( IMAGE_CLOSE | ITAL | STAR | LINK_OPEN | IMAGE_OPEN | NOWIKI_OPEN | EXTENSION | FORCED_LINEBREAK | NEWLINE | EOF ) )+
15024                {
15025                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:961:2: (c=~ ( IMAGE_CLOSE | ITAL | STAR | LINK_OPEN | IMAGE_OPEN | NOWIKI_OPEN | EXTENSION | FORCED_LINEBREAK | NEWLINE | EOF ) )+
15026                int cnt145=0;
15027                loop145:
15028                do {
15029                    int alt145=2;
15030                    int LA145_0 = input.LA(1);
15031    
15032                    if ( ((LA145_0>=FORCED_END_OF_LINE && LA145_0<=WIKI)||LA145_0==POUND||(LA145_0>=EQUAL && LA145_0<=PIPE)||(LA145_0>=ESCAPE && LA145_0<=LINK_CLOSE)||(LA145_0>=BLANKS && LA145_0<=79)) ) {
15033                        alt145=1;
15034                    }
15035    
15036    
15037                    switch (alt145) {
15038                    case 1 :
15039                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:961:4: c=~ ( IMAGE_CLOSE | ITAL | STAR | LINK_OPEN | IMAGE_OPEN | NOWIKI_OPEN | EXTENSION | FORCED_LINEBREAK | NEWLINE | EOF )
15040                        {
15041                        c=(Token)input.LT(1);
15042                        if ( (input.LA(1)>=FORCED_END_OF_LINE && input.LA(1)<=WIKI)||input.LA(1)==POUND||(input.LA(1)>=EQUAL && input.LA(1)<=PIPE)||(input.LA(1)>=ESCAPE && input.LA(1)<=LINK_CLOSE)||(input.LA(1)>=BLANKS && input.LA(1)<=79) ) {
15043                            input.consume();
15044                            errorRecovery=false;failed=false;
15045                        }
15046                        else {
15047                            if (backtracking>0) {failed=true; return text;}
15048                            MismatchedSetException mse =
15049                                new MismatchedSetException(null,input);
15050                            recoverFromMismatchedSet(input,mse,FOLLOW_set_in_image_alternative_simple_text4509);    throw mse;
15051                        }
15052    
15053                        if ( backtracking==0 ) {
15054                          text.append(c.getText()); 
15055                        }
15056    
15057                        }
15058                        break;
15059    
15060                    default :
15061                        if ( cnt145 >= 1 ) break loop145;
15062                        if (backtracking>0) {failed=true; return text;}
15063                            EarlyExitException eee =
15064                                new EarlyExitException(145, input);
15065                            throw eee;
15066                    }
15067                    cnt145++;
15068                } while (true);
15069    
15070    
15071                }
15072    
15073            }
15074            catch (RecognitionException re) {
15075                reportError(re);
15076                recover(input,re);
15077            }
15078            finally {
15079            }
15080            return text;
15081        }
15082        // $ANTLR end image_alternative_simple_text
15083    
15084    
15085        // $ANTLR start extension
15086        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:975:1: extension returns [ASTNode node = null] : extension_markup extension_handler blanks extension_statement extension_markup ;
15087        public final ASTNode extension() throws RecognitionException {
15088            ASTNode node =  null;
15089    
15090            try {
15091                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:976:2: ( extension_markup extension_handler blanks extension_statement extension_markup )
15092                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:976:4: extension_markup extension_handler blanks extension_statement extension_markup
15093                {
15094                pushFollow(FOLLOW_extension_markup_in_extension4601);
15095                extension_markup();
15096                _fsp--;
15097                if (failed) return node;
15098                pushFollow(FOLLOW_extension_handler_in_extension4604);
15099                extension_handler();
15100                _fsp--;
15101                if (failed) return node;
15102                pushFollow(FOLLOW_blanks_in_extension4607);
15103                blanks();
15104                _fsp--;
15105                if (failed) return node;
15106                pushFollow(FOLLOW_extension_statement_in_extension4610);
15107                extension_statement();
15108                _fsp--;
15109                if (failed) return node;
15110                pushFollow(FOLLOW_extension_markup_in_extension4614);
15111                extension_markup();
15112                _fsp--;
15113                if (failed) return node;
15114    
15115                }
15116    
15117            }
15118            catch (RecognitionException re) {
15119                reportError(re);
15120                recover(input,re);
15121            }
15122            finally {
15123            }
15124            return node;
15125        }
15126        // $ANTLR end extension
15127    
15128    
15129        // $ANTLR start extension_handler
15130        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:979:1: extension_handler : (~ ( EXTENSION | BLANKS | ESCAPE | NEWLINE | EOF ) | escaped )+ ;
15131        public final void extension_handler() throws RecognitionException {
15132            try {
15133                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:980:2: ( (~ ( EXTENSION | BLANKS | ESCAPE | NEWLINE | EOF ) | escaped )+ )
15134                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:980:4: (~ ( EXTENSION | BLANKS | ESCAPE | NEWLINE | EOF ) | escaped )+
15135                {
15136                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:980:4: (~ ( EXTENSION | BLANKS | ESCAPE | NEWLINE | EOF ) | escaped )+
15137                int cnt146=0;
15138                loop146:
15139                do {
15140                    int alt146=3;
15141                    int LA146_0 = input.LA(1);
15142    
15143                    if ( ((LA146_0>=FORCED_END_OF_LINE && LA146_0<=WIKI)||(LA146_0>=POUND && LA146_0<=NOWIKI_OPEN)||LA146_0==FORCED_LINEBREAK||(LA146_0>=NOWIKI_BLOCK_CLOSE && LA146_0<=IMAGE_CLOSE)||(LA146_0>=TABLE_OF_CONTENTS_TEXT && LA146_0<=79)) ) {
15144                        alt146=1;
15145                    }
15146                    else if ( (LA146_0==ESCAPE) ) {
15147                        alt146=2;
15148                    }
15149    
15150    
15151                    switch (alt146) {
15152                    case 1 :
15153                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:980:5: ~ ( EXTENSION | BLANKS | ESCAPE | NEWLINE | EOF )
15154                        {
15155                        if ( (input.LA(1)>=FORCED_END_OF_LINE && input.LA(1)<=WIKI)||(input.LA(1)>=POUND && input.LA(1)<=NOWIKI_OPEN)||input.LA(1)==FORCED_LINEBREAK||(input.LA(1)>=NOWIKI_BLOCK_CLOSE && input.LA(1)<=IMAGE_CLOSE)||(input.LA(1)>=TABLE_OF_CONTENTS_TEXT && input.LA(1)<=79) ) {
15156                            input.consume();
15157                            errorRecovery=false;failed=false;
15158                        }
15159                        else {
15160                            if (backtracking>0) {failed=true; return ;}
15161                            MismatchedSetException mse =
15162                                new MismatchedSetException(null,input);
15163                            recoverFromMismatchedSet(input,mse,FOLLOW_set_in_extension_handler4625);    throw mse;
15164                        }
15165    
15166    
15167                        }
15168                        break;
15169                    case 2 :
15170                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:980:64: escaped
15171                        {
15172                        pushFollow(FOLLOW_escaped_in_extension_handler4658);
15173                        escaped();
15174                        _fsp--;
15175                        if (failed) return ;
15176    
15177                        }
15178                        break;
15179    
15180                    default :
15181                        if ( cnt146 >= 1 ) break loop146;
15182                        if (backtracking>0) {failed=true; return ;}
15183                            EarlyExitException eee =
15184                                new EarlyExitException(146, input);
15185                            throw eee;
15186                    }
15187                    cnt146++;
15188                } while (true);
15189    
15190    
15191                }
15192    
15193            }
15194            catch (RecognitionException re) {
15195                reportError(re);
15196                recover(input,re);
15197            }
15198            finally {
15199            }
15200            return ;
15201        }
15202        // $ANTLR end extension_handler
15203    
15204    
15205        // $ANTLR start extension_statement
15206        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:982:1: extension_statement : (~ ( EXTENSION | ESCAPE | EOF ) | escaped )* ;
15207        public final void extension_statement() throws RecognitionException {
15208            try {
15209                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:983:2: ( (~ ( EXTENSION | ESCAPE | EOF ) | escaped )* )
15210                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:983:4: (~ ( EXTENSION | ESCAPE | EOF ) | escaped )*
15211                {
15212                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:983:4: (~ ( EXTENSION | ESCAPE | EOF ) | escaped )*
15213                loop147:
15214                do {
15215                    int alt147=3;
15216                    int LA147_0 = input.LA(1);
15217    
15218                    if ( ((LA147_0>=FORCED_END_OF_LINE && LA147_0<=NOWIKI_OPEN)||LA147_0==FORCED_LINEBREAK||(LA147_0>=NOWIKI_BLOCK_CLOSE && LA147_0<=79)) ) {
15219                        alt147=1;
15220                    }
15221                    else if ( (LA147_0==ESCAPE) ) {
15222                        alt147=2;
15223                    }
15224    
15225    
15226                    switch (alt147) {
15227                    case 1 :
15228                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:983:5: ~ ( EXTENSION | ESCAPE | EOF )
15229                        {
15230                        if ( (input.LA(1)>=FORCED_END_OF_LINE && input.LA(1)<=NOWIKI_OPEN)||input.LA(1)==FORCED_LINEBREAK||(input.LA(1)>=NOWIKI_BLOCK_CLOSE && input.LA(1)<=79) ) {
15231                            input.consume();
15232                            errorRecovery=false;failed=false;
15233                        }
15234                        else {
15235                            if (backtracking>0) {failed=true; return ;}
15236                            MismatchedSetException mse =
15237                                new MismatchedSetException(null,input);
15238                            recoverFromMismatchedSet(input,mse,FOLLOW_set_in_extension_statement4672);    throw mse;
15239                        }
15240    
15241    
15242                        }
15243                        break;
15244                    case 2 :
15245                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:983:41: escaped
15246                        {
15247                        pushFollow(FOLLOW_escaped_in_extension_statement4693);
15248                        escaped();
15249                        _fsp--;
15250                        if (failed) return ;
15251    
15252                        }
15253                        break;
15254    
15255                    default :
15256                        break loop147;
15257                    }
15258                } while (true);
15259    
15260    
15261                }
15262    
15263            }
15264            catch (RecognitionException re) {
15265                reportError(re);
15266                recover(input,re);
15267            }
15268            finally {
15269            }
15270            return ;
15271        }
15272        // $ANTLR end extension_statement
15273    
15274    
15275        // $ANTLR start table_of_contents
15276        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:989:1: table_of_contents returns [ASTNode tableOfContents = new TableOfContentsNode()] : TABLE_OF_CONTENTS_TEXT ;
15277        public final ASTNode table_of_contents() throws RecognitionException {
15278            ASTNode tableOfContents =  new TableOfContentsNode();
15279    
15280            try {
15281                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:990:2: ( TABLE_OF_CONTENTS_TEXT )
15282                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:990:38: TABLE_OF_CONTENTS_TEXT
15283                {
15284                match(input,TABLE_OF_CONTENTS_TEXT,FOLLOW_TABLE_OF_CONTENTS_TEXT_in_table_of_contents4716); if (failed) return tableOfContents;
15285    
15286                }
15287    
15288            }
15289            catch (RecognitionException re) {
15290                reportError(re);
15291                recover(input,re);
15292            }
15293            finally {
15294            }
15295            return tableOfContents;
15296        }
15297        // $ANTLR end table_of_contents
15298    
15299    
15300        // $ANTLR start onestar
15301        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:994:1: onestar : ( ({...}? ( STAR )? ) | );
15302        public final void onestar() throws RecognitionException {
15303            try {
15304                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:995:2: ( ({...}? ( STAR )? ) | )
15305                int alt149=2;
15306                switch ( input.LA(1) ) {
15307                case STAR:
15308                    {
15309                    int LA149_1 = input.LA(2);
15310    
15311                    if ( ( input.LA(2) != STAR ) ) {
15312                        alt149=1;
15313                    }
15314                    else if ( (true) ) {
15315                        alt149=2;
15316                    }
15317                    else {
15318                        if (backtracking>0) {failed=true; return ;}
15319                        NoViableAltException nvae =
15320                            new NoViableAltException("994:1: onestar : ( ({...}? ( STAR )? ) | );", 149, 1, input);
15321    
15322                        throw nvae;
15323                    }
15324                    }
15325                    break;
15326                case BLANKS:
15327                    {
15328                    int LA149_2 = input.LA(2);
15329    
15330                    if ( ( input.LA(2) != STAR ) ) {
15331                        alt149=1;
15332                    }
15333                    else if ( (true) ) {
15334                        alt149=2;
15335                    }
15336                    else {
15337                        if (backtracking>0) {failed=true; return ;}
15338                        NoViableAltException nvae =
15339                            new NoViableAltException("994:1: onestar : ( ({...}? ( STAR )? ) | );", 149, 2, input);
15340    
15341                        throw nvae;
15342                    }
15343                    }
15344                    break;
15345                case FORCED_LINEBREAK:
15346                    {
15347                    int LA149_3 = input.LA(2);
15348    
15349                    if ( ( input.LA(2) != STAR ) ) {
15350                        alt149=1;
15351                    }
15352                    else if ( (true) ) {
15353                        alt149=2;
15354                    }
15355                    else {
15356                        if (backtracking>0) {failed=true; return ;}
15357                        NoViableAltException nvae =
15358                            new NoViableAltException("994:1: onestar : ( ({...}? ( STAR )? ) | );", 149, 3, input);
15359    
15360                        throw nvae;
15361                    }
15362                    }
15363                    break;
15364                case ESCAPE:
15365                    {
15366                    int LA149_4 = input.LA(2);
15367    
15368                    if ( ( input.LA(2) != STAR ) ) {
15369                        alt149=1;
15370                    }
15371                    else if ( (true) ) {
15372                        alt149=2;
15373                    }
15374                    else {
15375                        if (backtracking>0) {failed=true; return ;}
15376                        NoViableAltException nvae =
15377                            new NoViableAltException("994:1: onestar : ( ({...}? ( STAR )? ) | );", 149, 4, input);
15378    
15379                        throw nvae;
15380                    }
15381                    }
15382                    break;
15383                case LINK_OPEN:
15384                    {
15385                    int LA149_5 = input.LA(2);
15386    
15387                    if ( ( input.LA(2) != STAR ) ) {
15388                        alt149=1;
15389                    }
15390                    else if ( (true) ) {
15391                        alt149=2;
15392                    }
15393                    else {
15394                        if (backtracking>0) {failed=true; return ;}
15395                        NoViableAltException nvae =
15396                            new NoViableAltException("994:1: onestar : ( ({...}? ( STAR )? ) | );", 149, 5, input);
15397    
15398                        throw nvae;
15399                    }
15400                    }
15401                    break;
15402                case IMAGE_OPEN:
15403                    {
15404                    int LA149_6 = input.LA(2);
15405    
15406                    if ( ( input.LA(2) != STAR ) ) {
15407                        alt149=1;
15408                    }
15409                    else if ( (true) ) {
15410                        alt149=2;
15411                    }
15412                    else {
15413                        if (backtracking>0) {failed=true; return ;}
15414                        NoViableAltException nvae =
15415                            new NoViableAltException("994:1: onestar : ( ({...}? ( STAR )? ) | );", 149, 6, input);
15416    
15417                        throw nvae;
15418                    }
15419                    }
15420                    break;
15421                case EXTENSION:
15422                    {
15423                    int LA149_7 = input.LA(2);
15424    
15425                    if ( ( input.LA(2) != STAR ) ) {
15426                        alt149=1;
15427                    }
15428                    else if ( (true) ) {
15429                        alt149=2;
15430                    }
15431                    else {
15432                        if (backtracking>0) {failed=true; return ;}
15433                        NoViableAltException nvae =
15434                            new NoViableAltException("994:1: onestar : ( ({...}? ( STAR )? ) | );", 149, 7, input);
15435    
15436                        throw nvae;
15437                    }
15438                    }
15439                    break;
15440                case NOWIKI_OPEN:
15441                    {
15442                    int LA149_8 = input.LA(2);
15443    
15444                    if ( ( input.LA(2) != STAR ) ) {
15445                        alt149=1;
15446                    }
15447                    else if ( (true) ) {
15448                        alt149=2;
15449                    }
15450                    else {
15451                        if (backtracking>0) {failed=true; return ;}
15452                        NoViableAltException nvae =
15453                            new NoViableAltException("994:1: onestar : ( ({...}? ( STAR )? ) | );", 149, 8, input);
15454    
15455                        throw nvae;
15456                    }
15457                    }
15458                    break;
15459                case NEWLINE:
15460                    {
15461                    int LA149_9 = input.LA(2);
15462    
15463                    if ( ((( input.LA(2) != STAR && input.LA(2) != DASH && input.LA(2) != POUND &&
15464                                    input.LA(2) != EQUAL && input.LA(2) != NEWLINE )|| input.LA(2) != STAR )) ) {
15465                        alt149=1;
15466                    }
15467                    else if ( (true) ) {
15468                        alt149=2;
15469                    }
15470                    else {
15471                        if (backtracking>0) {failed=true; return ;}
15472                        NoViableAltException nvae =
15473                            new NoViableAltException("994:1: onestar : ( ({...}? ( STAR )? ) | );", 149, 9, input);
15474    
15475                        throw nvae;
15476                    }
15477                    }
15478                    break;
15479                case EOF:
15480                    {
15481                    int LA149_10 = input.LA(2);
15482    
15483                    if ( ((( input.LA(2) != STAR && input.LA(2) != DASH && input.LA(2) != POUND &&
15484                                    input.LA(2) != EQUAL && input.LA(2) != NEWLINE )|| input.LA(2) != STAR )) ) {
15485                        alt149=1;
15486                    }
15487                    else if ( (true) ) {
15488                        alt149=2;
15489                    }
15490                    else {
15491                        if (backtracking>0) {failed=true; return ;}
15492                        NoViableAltException nvae =
15493                            new NoViableAltException("994:1: onestar : ( ({...}? ( STAR )? ) | );", 149, 10, input);
15494    
15495                        throw nvae;
15496                    }
15497                    }
15498                    break;
15499                case ITAL:
15500                    {
15501                    int LA149_11 = input.LA(2);
15502    
15503                    if ( ( input.LA(2) != STAR ) ) {
15504                        alt149=1;
15505                    }
15506                    else if ( (true) ) {
15507                        alt149=2;
15508                    }
15509                    else {
15510                        if (backtracking>0) {failed=true; return ;}
15511                        NoViableAltException nvae =
15512                            new NoViableAltException("994:1: onestar : ( ({...}? ( STAR )? ) | );", 149, 11, input);
15513    
15514                        throw nvae;
15515                    }
15516                    }
15517                    break;
15518                case EQUAL:
15519                    {
15520                    int LA149_12 = input.LA(2);
15521    
15522                    if ( ( input.LA(2) != STAR ) ) {
15523                        alt149=1;
15524                    }
15525                    else if ( (true) ) {
15526                        alt149=2;
15527                    }
15528                    else {
15529                        if (backtracking>0) {failed=true; return ;}
15530                        NoViableAltException nvae =
15531                            new NoViableAltException("994:1: onestar : ( ({...}? ( STAR )? ) | );", 149, 12, input);
15532    
15533                        throw nvae;
15534                    }
15535                    }
15536                    break;
15537                case FORCED_END_OF_LINE:
15538                case HEADING_SECTION:
15539                case HORIZONTAL_SECTION:
15540                case LIST_ITEM:
15541                case LIST_ITEM_PART:
15542                case NOWIKI_SECTION:
15543                case SCAPE_NODE:
15544                case TEXT_NODE:
15545                case UNORDERED_LIST:
15546                case UNFORMATTED_TEXT:
15547                case WIKI:
15548                case POUND:
15549                case NOWIKI_BLOCK_CLOSE:
15550                case NOWIKI_CLOSE:
15551                case TABLE_OF_CONTENTS_TEXT:
15552                case DASH:
15553                case CR:
15554                case LF:
15555                case SPACE:
15556                case TABULATOR:
15557                case BRACE_CLOSE:
15558                case COLON_SLASH:
15559                case SLASH:
15560                case TABLE_OF_CONTENTS_OPEN_MARKUP:
15561                case TABLE_OF_CONTENTS_CLOSE_MARKUP:
15562                case INSIGNIFICANT_CHAR:
15563                case 44:
15564                case 45:
15565                case 46:
15566                case 47:
15567                case 48:
15568                case 49:
15569                case 50:
15570                case 51:
15571                case 52:
15572                case 53:
15573                case 54:
15574                case 55:
15575                case 56:
15576                case 57:
15577                case 58:
15578                case 59:
15579                case 60:
15580                case 61:
15581                case 62:
15582                case 63:
15583                case 64:
15584                case 65:
15585                case 66:
15586                case 67:
15587                case 68:
15588                case 69:
15589                case 70:
15590                case 71:
15591                case 72:
15592                case 73:
15593                case 74:
15594                case 75:
15595                case 76:
15596                case 77:
15597                case 78:
15598                case 79:
15599                    {
15600                    int LA149_13 = input.LA(2);
15601    
15602                    if ( ( input.LA(2) != STAR ) ) {
15603                        alt149=1;
15604                    }
15605                    else if ( (true) ) {
15606                        alt149=2;
15607                    }
15608                    else {
15609                        if (backtracking>0) {failed=true; return ;}
15610                        NoViableAltException nvae =
15611                            new NoViableAltException("994:1: onestar : ( ({...}? ( STAR )? ) | );", 149, 13, input);
15612    
15613                        throw nvae;
15614                    }
15615                    }
15616                    break;
15617                case PIPE:
15618                    {
15619                    int LA149_14 = input.LA(2);
15620    
15621                    if ( (( input.LA(2) != STAR ||( input.LA(2) != STAR && input.LA(2) == EQUAL ))) ) {
15622                        alt149=1;
15623                    }
15624                    else if ( (true) ) {
15625                        alt149=2;
15626                    }
15627                    else {
15628                        if (backtracking>0) {failed=true; return ;}
15629                        NoViableAltException nvae =
15630                            new NoViableAltException("994:1: onestar : ( ({...}? ( STAR )? ) | );", 149, 14, input);
15631    
15632                        throw nvae;
15633                    }
15634                    }
15635                    break;
15636                case LINK_CLOSE:
15637                    {
15638                    int LA149_15 = input.LA(2);
15639    
15640                    if ( ( input.LA(2) != STAR ) ) {
15641                        alt149=1;
15642                    }
15643                    else if ( (true) ) {
15644                        alt149=2;
15645                    }
15646                    else {
15647                        if (backtracking>0) {failed=true; return ;}
15648                        NoViableAltException nvae =
15649                            new NoViableAltException("994:1: onestar : ( ({...}? ( STAR )? ) | );", 149, 15, input);
15650    
15651                        throw nvae;
15652                    }
15653                    }
15654                    break;
15655                case IMAGE_CLOSE:
15656                    {
15657                    int LA149_16 = input.LA(2);
15658    
15659                    if ( ( input.LA(2) != STAR ) ) {
15660                        alt149=1;
15661                    }
15662                    else if ( (true) ) {
15663                        alt149=2;
15664                    }
15665                    else {
15666                        if (backtracking>0) {failed=true; return ;}
15667                        NoViableAltException nvae =
15668                            new NoViableAltException("994:1: onestar : ( ({...}? ( STAR )? ) | );", 149, 16, input);
15669    
15670                        throw nvae;
15671                    }
15672                    }
15673                    break;
15674                default:
15675                    if (backtracking>0) {failed=true; return ;}
15676                    NoViableAltException nvae =
15677                        new NoViableAltException("994:1: onestar : ( ({...}? ( STAR )? ) | );", 149, 0, input);
15678    
15679                    throw nvae;
15680                }
15681    
15682                switch (alt149) {
15683                    case 1 :
15684                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:995:4: ({...}? ( STAR )? )
15685                        {
15686                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:995:4: ({...}? ( STAR )? )
15687                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:995:6: {...}? ( STAR )?
15688                        {
15689                        if ( !( input.LA(2) != STAR ) ) {
15690                            if (backtracking>0) {failed=true; return ;}
15691                            throw new FailedPredicateException(input, "onestar", " input.LA(2) != STAR ");
15692                        }
15693                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:995:32: ( STAR )?
15694                        int alt148=2;
15695                        int LA148_0 = input.LA(1);
15696    
15697                        if ( (LA148_0==STAR) ) {
15698                            alt148=1;
15699                        }
15700                        switch (alt148) {
15701                            case 1 :
15702                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:995:34: STAR
15703                                {
15704                                match(input,STAR,FOLLOW_STAR_in_onestar4738); if (failed) return ;
15705    
15706                                }
15707                                break;
15708    
15709                        }
15710    
15711    
15712                        }
15713    
15714    
15715                        }
15716                        break;
15717                    case 2 :
15718                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:997:2: 
15719                        {
15720                        }
15721                        break;
15722    
15723                }
15724            }
15725            catch (RecognitionException re) {
15726                reportError(re);
15727                recover(input,re);
15728            }
15729            finally {
15730            }
15731            return ;
15732        }
15733        // $ANTLR end onestar
15734    
15735    
15736        // $ANTLR start escaped
15737        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:998:1: escaped returns [ScapedNode scaped = new ScapedNode()] : ESCAPE c= . ;
15738        public final ScapedNode escaped() throws RecognitionException {
15739            ScapedNode scaped =  new ScapedNode();
15740    
15741            Token c=null;
15742    
15743            try {
15744                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:999:2: ( ESCAPE c= . )
15745                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:999:4: ESCAPE c= .
15746                {
15747                match(input,ESCAPE,FOLLOW_ESCAPE_in_escaped4759); if (failed) return scaped;
15748                c=(Token)input.LT(1);
15749                matchAny(input); if (failed) return scaped;
15750                if ( backtracking==0 ) {
15751                   scaped.setContent(c.getText()) ; 
15752                }
15753    
15754                }
15755    
15756            }
15757            catch (RecognitionException re) {
15758                reportError(re);
15759                recover(input,re);
15760            }
15761            finally {
15762            }
15763            return scaped;
15764        }
15765        // $ANTLR end escaped
15766    
15767    
15768        // $ANTLR start paragraph_separator
15769        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1002:1: paragraph_separator : ( ( newline )+ | EOF );
15770        public final void paragraph_separator() throws RecognitionException {
15771            try {
15772                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1003:2: ( ( newline )+ | EOF )
15773                int alt151=2;
15774                int LA151_0 = input.LA(1);
15775    
15776                if ( (LA151_0==NEWLINE) ) {
15777                    alt151=1;
15778                }
15779                else if ( (LA151_0==EOF) ) {
15780                    alt151=2;
15781                }
15782                else {
15783                    if (backtracking>0) {failed=true; return ;}
15784                    NoViableAltException nvae =
15785                        new NoViableAltException("1002:1: paragraph_separator : ( ( newline )+ | EOF );", 151, 0, input);
15786    
15787                    throw nvae;
15788                }
15789                switch (alt151) {
15790                    case 1 :
15791                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1003:4: ( newline )+
15792                        {
15793                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1003:4: ( newline )+
15794                        int cnt150=0;
15795                        loop150:
15796                        do {
15797                            int alt150=2;
15798                            int LA150_0 = input.LA(1);
15799    
15800                            if ( (LA150_0==NEWLINE) ) {
15801                                alt150=1;
15802                            }
15803    
15804    
15805                            switch (alt150) {
15806                            case 1 :
15807                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1003:6: newline
15808                                {
15809                                pushFollow(FOLLOW_newline_in_paragraph_separator4783);
15810                                newline();
15811                                _fsp--;
15812                                if (failed) return ;
15813    
15814                                }
15815                                break;
15816    
15817                            default :
15818                                if ( cnt150 >= 1 ) break loop150;
15819                                if (backtracking>0) {failed=true; return ;}
15820                                    EarlyExitException eee =
15821                                        new EarlyExitException(150, input);
15822                                    throw eee;
15823                            }
15824                            cnt150++;
15825                        } while (true);
15826    
15827    
15828                        }
15829                        break;
15830                    case 2 :
15831                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1004:4: EOF
15832                        {
15833                        match(input,EOF,FOLLOW_EOF_in_paragraph_separator4791); if (failed) return ;
15834    
15835                        }
15836                        break;
15837    
15838                }
15839            }
15840            catch (RecognitionException re) {
15841                reportError(re);
15842                recover(input,re);
15843            }
15844            finally {
15845            }
15846            return ;
15847        }
15848        // $ANTLR end paragraph_separator
15849    
15850    
15851        // $ANTLR start whitespaces
15852        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1006:1: whitespaces : ( blanks | newline )+ ;
15853        public final void whitespaces() throws RecognitionException {
15854            try {
15855                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1007:2: ( ( blanks | newline )+ )
15856                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1007:4: ( blanks | newline )+
15857                {
15858                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1007:4: ( blanks | newline )+
15859                int cnt152=0;
15860                loop152:
15861                do {
15862                    int alt152=3;
15863                    int LA152_0 = input.LA(1);
15864    
15865                    if ( (LA152_0==BLANKS) ) {
15866                        alt152=1;
15867                    }
15868                    else if ( (LA152_0==NEWLINE) ) {
15869                        alt152=2;
15870                    }
15871    
15872    
15873                    switch (alt152) {
15874                    case 1 :
15875                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1007:6: blanks
15876                        {
15877                        pushFollow(FOLLOW_blanks_in_whitespaces4803);
15878                        blanks();
15879                        _fsp--;
15880                        if (failed) return ;
15881    
15882                        }
15883                        break;
15884                    case 2 :
15885                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1007:15: newline
15886                        {
15887                        pushFollow(FOLLOW_newline_in_whitespaces4807);
15888                        newline();
15889                        _fsp--;
15890                        if (failed) return ;
15891    
15892                        }
15893                        break;
15894    
15895                    default :
15896                        if ( cnt152 >= 1 ) break loop152;
15897                        if (backtracking>0) {failed=true; return ;}
15898                            EarlyExitException eee =
15899                                new EarlyExitException(152, input);
15900                            throw eee;
15901                    }
15902                    cnt152++;
15903                } while (true);
15904    
15905    
15906                }
15907    
15908            }
15909            catch (RecognitionException re) {
15910                reportError(re);
15911                recover(input,re);
15912            }
15913            finally {
15914            }
15915            return ;
15916        }
15917        // $ANTLR end whitespaces
15918    
15919    
15920        // $ANTLR start blanks
15921        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1009:1: blanks : BLANKS ;
15922        public final void blanks() throws RecognitionException {
15923            try {
15924                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1010:2: ( BLANKS )
15925                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1010:4: BLANKS
15926                {
15927                match(input,BLANKS,FOLLOW_BLANKS_in_blanks4820); if (failed) return ;
15928    
15929                }
15930    
15931            }
15932            catch (RecognitionException re) {
15933                reportError(re);
15934                recover(input,re);
15935            }
15936            finally {
15937            }
15938            return ;
15939        }
15940        // $ANTLR end blanks
15941    
15942    
15943        // $ANTLR start text_lineseparator
15944        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1012:1: text_lineseparator : ( newline ( blanks )? | EOF );
15945        public final void text_lineseparator() throws RecognitionException {
15946            try {
15947                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1013:2: ( newline ( blanks )? | EOF )
15948                int alt154=2;
15949                int LA154_0 = input.LA(1);
15950    
15951                if ( (LA154_0==NEWLINE) ) {
15952                    alt154=1;
15953                }
15954                else if ( (LA154_0==EOF) ) {
15955                    alt154=2;
15956                }
15957                else {
15958                    if (backtracking>0) {failed=true; return ;}
15959                    NoViableAltException nvae =
15960                        new NoViableAltException("1012:1: text_lineseparator : ( newline ( blanks )? | EOF );", 154, 0, input);
15961    
15962                    throw nvae;
15963                }
15964                switch (alt154) {
15965                    case 1 :
15966                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1013:4: newline ( blanks )?
15967                        {
15968                        pushFollow(FOLLOW_newline_in_text_lineseparator4830);
15969                        newline();
15970                        _fsp--;
15971                        if (failed) return ;
15972                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1013:13: ( blanks )?
15973                        int alt153=2;
15974                        int LA153_0 = input.LA(1);
15975    
15976                        if ( (LA153_0==BLANKS) ) {
15977                            alt153=1;
15978                        }
15979                        switch (alt153) {
15980                            case 1 :
15981                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1013:15: blanks
15982                                {
15983                                pushFollow(FOLLOW_blanks_in_text_lineseparator4835);
15984                                blanks();
15985                                _fsp--;
15986                                if (failed) return ;
15987    
15988                                }
15989                                break;
15990    
15991                        }
15992    
15993    
15994                        }
15995                        break;
15996                    case 2 :
15997                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1014:4: EOF
15998                        {
15999                        match(input,EOF,FOLLOW_EOF_in_text_lineseparator4843); if (failed) return ;
16000    
16001                        }
16002                        break;
16003    
16004                }
16005            }
16006            catch (RecognitionException re) {
16007                reportError(re);
16008                recover(input,re);
16009            }
16010            finally {
16011            }
16012            return ;
16013        }
16014        // $ANTLR end text_lineseparator
16015    
16016    
16017        // $ANTLR start newline
16018        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1016:1: newline : NEWLINE ;
16019        public final void newline() throws RecognitionException {
16020            try {
16021                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1017:2: ( NEWLINE )
16022                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1017:4: NEWLINE
16023                {
16024                match(input,NEWLINE,FOLLOW_NEWLINE_in_newline4853); if (failed) return ;
16025    
16026                }
16027    
16028            }
16029            catch (RecognitionException re) {
16030                reportError(re);
16031                recover(input,re);
16032            }
16033            finally {
16034            }
16035            return ;
16036        }
16037        // $ANTLR end newline
16038    
16039    
16040        // $ANTLR start bold_markup
16041        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1019:1: bold_markup : STAR STAR ;
16042        public final void bold_markup() throws RecognitionException {
16043            try {
16044                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1020:2: ( STAR STAR )
16045                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1020:4: STAR STAR
16046                {
16047                match(input,STAR,FOLLOW_STAR_in_bold_markup4863); if (failed) return ;
16048                match(input,STAR,FOLLOW_STAR_in_bold_markup4866); if (failed) return ;
16049    
16050                }
16051    
16052            }
16053            catch (RecognitionException re) {
16054                reportError(re);
16055                recover(input,re);
16056            }
16057            finally {
16058            }
16059            return ;
16060        }
16061        // $ANTLR end bold_markup
16062    
16063    
16064        // $ANTLR start ital_markup
16065        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1022:1: ital_markup : ITAL ;
16066        public final void ital_markup() throws RecognitionException {
16067            try {
16068                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1023:2: ( ITAL )
16069                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1023:4: ITAL
16070                {
16071                match(input,ITAL,FOLLOW_ITAL_in_ital_markup4876); if (failed) return ;
16072    
16073                }
16074    
16075            }
16076            catch (RecognitionException re) {
16077                reportError(re);
16078                recover(input,re);
16079            }
16080            finally {
16081            }
16082            return ;
16083        }
16084        // $ANTLR end ital_markup
16085    
16086    
16087        // $ANTLR start heading_markup
16088        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1025:1: heading_markup : EQUAL ;
16089        public final void heading_markup() throws RecognitionException {
16090            try {
16091                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1026:2: ( EQUAL )
16092                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1026:4: EQUAL
16093                {
16094                match(input,EQUAL,FOLLOW_EQUAL_in_heading_markup4886); if (failed) return ;
16095    
16096                }
16097    
16098            }
16099            catch (RecognitionException re) {
16100                reportError(re);
16101                recover(input,re);
16102            }
16103            finally {
16104            }
16105            return ;
16106        }
16107        // $ANTLR end heading_markup
16108    
16109        public static class list_ordelem_markup_return extends ParserRuleReturnScope {
16110        };
16111    
16112        // $ANTLR start list_ordelem_markup
16113        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1028:1: list_ordelem_markup : POUND ;
16114        public final list_ordelem_markup_return list_ordelem_markup() throws RecognitionException {
16115            list_ordelem_markup_return retval = new list_ordelem_markup_return();
16116            retval.start = input.LT(1);
16117    
16118            try {
16119                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1029:2: ( POUND )
16120                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1029:4: POUND
16121                {
16122                match(input,POUND,FOLLOW_POUND_in_list_ordelem_markup4896); if (failed) return retval;
16123    
16124                }
16125    
16126                retval.stop = input.LT(-1);
16127    
16128            }
16129            catch (RecognitionException re) {
16130                reportError(re);
16131                recover(input,re);
16132            }
16133            finally {
16134            }
16135            return retval;
16136        }
16137        // $ANTLR end list_ordelem_markup
16138    
16139        public static class list_unordelem_markup_return extends ParserRuleReturnScope {
16140        };
16141    
16142        // $ANTLR start list_unordelem_markup
16143        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1031:1: list_unordelem_markup : STAR ;
16144        public final list_unordelem_markup_return list_unordelem_markup() throws RecognitionException {
16145            list_unordelem_markup_return retval = new list_unordelem_markup_return();
16146            retval.start = input.LT(1);
16147    
16148            try {
16149                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1032:2: ( STAR )
16150                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1032:4: STAR
16151                {
16152                match(input,STAR,FOLLOW_STAR_in_list_unordelem_markup4906); if (failed) return retval;
16153    
16154                }
16155    
16156                retval.stop = input.LT(-1);
16157    
16158            }
16159            catch (RecognitionException re) {
16160                reportError(re);
16161                recover(input,re);
16162            }
16163            finally {
16164            }
16165            return retval;
16166        }
16167        // $ANTLR end list_unordelem_markup
16168    
16169    
16170        // $ANTLR start list_elemseparator
16171        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1034:1: list_elemseparator : ( newline ( blanks )? | EOF );
16172        public final void list_elemseparator() throws RecognitionException {
16173            try {
16174                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1035:2: ( newline ( blanks )? | EOF )
16175                int alt156=2;
16176                int LA156_0 = input.LA(1);
16177    
16178                if ( (LA156_0==NEWLINE) ) {
16179                    alt156=1;
16180                }
16181                else if ( (LA156_0==EOF) ) {
16182                    alt156=2;
16183                }
16184                else {
16185                    if (backtracking>0) {failed=true; return ;}
16186                    NoViableAltException nvae =
16187                        new NoViableAltException("1034:1: list_elemseparator : ( newline ( blanks )? | EOF );", 156, 0, input);
16188    
16189                    throw nvae;
16190                }
16191                switch (alt156) {
16192                    case 1 :
16193                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1035:4: newline ( blanks )?
16194                        {
16195                        pushFollow(FOLLOW_newline_in_list_elemseparator4916);
16196                        newline();
16197                        _fsp--;
16198                        if (failed) return ;
16199                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1035:13: ( blanks )?
16200                        int alt155=2;
16201                        int LA155_0 = input.LA(1);
16202    
16203                        if ( (LA155_0==BLANKS) ) {
16204                            alt155=1;
16205                        }
16206                        switch (alt155) {
16207                            case 1 :
16208                                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1035:15: blanks
16209                                {
16210                                pushFollow(FOLLOW_blanks_in_list_elemseparator4921);
16211                                blanks();
16212                                _fsp--;
16213                                if (failed) return ;
16214    
16215                                }
16216                                break;
16217    
16218                        }
16219    
16220    
16221                        }
16222                        break;
16223                    case 2 :
16224                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1036:4: EOF
16225                        {
16226                        match(input,EOF,FOLLOW_EOF_in_list_elemseparator4929); if (failed) return ;
16227    
16228                        }
16229                        break;
16230    
16231                }
16232            }
16233            catch (RecognitionException re) {
16234                reportError(re);
16235                recover(input,re);
16236            }
16237            finally {
16238            }
16239            return ;
16240        }
16241        // $ANTLR end list_elemseparator
16242    
16243    
16244        // $ANTLR start end_of_list
16245        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1038:1: end_of_list : ( newline | EOF );
16246        public final void end_of_list() throws RecognitionException {
16247            try {
16248                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1039:2: ( newline | EOF )
16249                int alt157=2;
16250                int LA157_0 = input.LA(1);
16251    
16252                if ( (LA157_0==NEWLINE) ) {
16253                    alt157=1;
16254                }
16255                else if ( (LA157_0==EOF) ) {
16256                    alt157=2;
16257                }
16258                else {
16259                    if (backtracking>0) {failed=true; return ;}
16260                    NoViableAltException nvae =
16261                        new NoViableAltException("1038:1: end_of_list : ( newline | EOF );", 157, 0, input);
16262    
16263                    throw nvae;
16264                }
16265                switch (alt157) {
16266                    case 1 :
16267                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1039:4: newline
16268                        {
16269                        pushFollow(FOLLOW_newline_in_end_of_list4939);
16270                        newline();
16271                        _fsp--;
16272                        if (failed) return ;
16273    
16274                        }
16275                        break;
16276                    case 2 :
16277                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1040:4: EOF
16278                        {
16279                        match(input,EOF,FOLLOW_EOF_in_end_of_list4944); if (failed) return ;
16280    
16281                        }
16282                        break;
16283    
16284                }
16285            }
16286            catch (RecognitionException re) {
16287                reportError(re);
16288                recover(input,re);
16289            }
16290            finally {
16291            }
16292            return ;
16293        }
16294        // $ANTLR end end_of_list
16295    
16296    
16297        // $ANTLR start table_cell_markup
16298        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1042:1: table_cell_markup : PIPE ;
16299        public final void table_cell_markup() throws RecognitionException {
16300            try {
16301                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1043:2: ( PIPE )
16302                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1043:4: PIPE
16303                {
16304                match(input,PIPE,FOLLOW_PIPE_in_table_cell_markup4954); if (failed) return ;
16305    
16306                }
16307    
16308            }
16309            catch (RecognitionException re) {
16310                reportError(re);
16311                recover(input,re);
16312            }
16313            finally {
16314            }
16315            return ;
16316        }
16317        // $ANTLR end table_cell_markup
16318    
16319    
16320        // $ANTLR start table_headercell_markup
16321        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1045:1: table_headercell_markup : PIPE EQUAL ;
16322        public final void table_headercell_markup() throws RecognitionException {
16323            try {
16324                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1046:2: ( PIPE EQUAL )
16325                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1046:4: PIPE EQUAL
16326                {
16327                match(input,PIPE,FOLLOW_PIPE_in_table_headercell_markup4964); if (failed) return ;
16328                match(input,EQUAL,FOLLOW_EQUAL_in_table_headercell_markup4967); if (failed) return ;
16329    
16330                }
16331    
16332            }
16333            catch (RecognitionException re) {
16334                reportError(re);
16335                recover(input,re);
16336            }
16337            finally {
16338            }
16339            return ;
16340        }
16341        // $ANTLR end table_headercell_markup
16342    
16343    
16344        // $ANTLR start table_rowseparator
16345        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1048:1: table_rowseparator : ( newline | EOF );
16346        public final void table_rowseparator() throws RecognitionException {
16347            try {
16348                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1049:2: ( newline | EOF )
16349                int alt158=2;
16350                int LA158_0 = input.LA(1);
16351    
16352                if ( (LA158_0==NEWLINE) ) {
16353                    alt158=1;
16354                }
16355                else if ( (LA158_0==EOF) ) {
16356                    alt158=2;
16357                }
16358                else {
16359                    if (backtracking>0) {failed=true; return ;}
16360                    NoViableAltException nvae =
16361                        new NoViableAltException("1048:1: table_rowseparator : ( newline | EOF );", 158, 0, input);
16362    
16363                    throw nvae;
16364                }
16365                switch (alt158) {
16366                    case 1 :
16367                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1049:4: newline
16368                        {
16369                        pushFollow(FOLLOW_newline_in_table_rowseparator4977);
16370                        newline();
16371                        _fsp--;
16372                        if (failed) return ;
16373    
16374                        }
16375                        break;
16376                    case 2 :
16377                        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1050:4: EOF
16378                        {
16379                        match(input,EOF,FOLLOW_EOF_in_table_rowseparator4982); if (failed) return ;
16380    
16381                        }
16382                        break;
16383    
16384                }
16385            }
16386            catch (RecognitionException re) {
16387                reportError(re);
16388                recover(input,re);
16389            }
16390            finally {
16391            }
16392            return ;
16393        }
16394        // $ANTLR end table_rowseparator
16395    
16396    
16397        // $ANTLR start nowiki_open_markup
16398        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1052:1: nowiki_open_markup : NOWIKI_OPEN ;
16399        public final void nowiki_open_markup() throws RecognitionException {
16400            try {
16401                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1053:2: ( NOWIKI_OPEN )
16402                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1053:4: NOWIKI_OPEN
16403                {
16404                match(input,NOWIKI_OPEN,FOLLOW_NOWIKI_OPEN_in_nowiki_open_markup4992); if (failed) return ;
16405    
16406                }
16407    
16408            }
16409            catch (RecognitionException re) {
16410                reportError(re);
16411                recover(input,re);
16412            }
16413            finally {
16414            }
16415            return ;
16416        }
16417        // $ANTLR end nowiki_open_markup
16418    
16419    
16420        // $ANTLR start nowiki_close_markup
16421        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1055:1: nowiki_close_markup : NOWIKI_CLOSE ;
16422        public final void nowiki_close_markup() throws RecognitionException {
16423            try {
16424                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1056:2: ( NOWIKI_CLOSE )
16425                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1056:4: NOWIKI_CLOSE
16426                {
16427                match(input,NOWIKI_CLOSE,FOLLOW_NOWIKI_CLOSE_in_nowiki_close_markup5002); if (failed) return ;
16428    
16429                }
16430    
16431            }
16432            catch (RecognitionException re) {
16433                reportError(re);
16434                recover(input,re);
16435            }
16436            finally {
16437            }
16438            return ;
16439        }
16440        // $ANTLR end nowiki_close_markup
16441    
16442    
16443        // $ANTLR start horizontalrule_markup
16444        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1058:1: horizontalrule_markup : DASH DASH DASH DASH ;
16445        public final void horizontalrule_markup() throws RecognitionException {
16446            try {
16447                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1059:2: ( DASH DASH DASH DASH )
16448                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1059:4: DASH DASH DASH DASH
16449                {
16450                match(input,DASH,FOLLOW_DASH_in_horizontalrule_markup5012); if (failed) return ;
16451                match(input,DASH,FOLLOW_DASH_in_horizontalrule_markup5015); if (failed) return ;
16452                match(input,DASH,FOLLOW_DASH_in_horizontalrule_markup5018); if (failed) return ;
16453                match(input,DASH,FOLLOW_DASH_in_horizontalrule_markup5021); if (failed) return ;
16454    
16455                }
16456    
16457            }
16458            catch (RecognitionException re) {
16459                reportError(re);
16460                recover(input,re);
16461            }
16462            finally {
16463            }
16464            return ;
16465        }
16466        // $ANTLR end horizontalrule_markup
16467    
16468    
16469        // $ANTLR start link_open_markup
16470        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1061:1: link_open_markup : LINK_OPEN ;
16471        public final void link_open_markup() throws RecognitionException {
16472            try {
16473                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1062:2: ( LINK_OPEN )
16474                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1062:4: LINK_OPEN
16475                {
16476                match(input,LINK_OPEN,FOLLOW_LINK_OPEN_in_link_open_markup5031); if (failed) return ;
16477    
16478                }
16479    
16480            }
16481            catch (RecognitionException re) {
16482                reportError(re);
16483                recover(input,re);
16484            }
16485            finally {
16486            }
16487            return ;
16488        }
16489        // $ANTLR end link_open_markup
16490    
16491    
16492        // $ANTLR start link_close_markup
16493        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1064:1: link_close_markup : LINK_CLOSE ;
16494        public final void link_close_markup() throws RecognitionException {
16495            try {
16496                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1065:2: ( LINK_CLOSE )
16497                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1065:4: LINK_CLOSE
16498                {
16499                match(input,LINK_CLOSE,FOLLOW_LINK_CLOSE_in_link_close_markup5041); if (failed) return ;
16500    
16501                }
16502    
16503            }
16504            catch (RecognitionException re) {
16505                reportError(re);
16506                recover(input,re);
16507            }
16508            finally {
16509            }
16510            return ;
16511        }
16512        // $ANTLR end link_close_markup
16513    
16514    
16515        // $ANTLR start link_description_markup
16516        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1067:1: link_description_markup : PIPE ;
16517        public final void link_description_markup() throws RecognitionException {
16518            try {
16519                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1068:2: ( PIPE )
16520                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1068:4: PIPE
16521                {
16522                match(input,PIPE,FOLLOW_PIPE_in_link_description_markup5051); if (failed) return ;
16523    
16524                }
16525    
16526            }
16527            catch (RecognitionException re) {
16528                reportError(re);
16529                recover(input,re);
16530            }
16531            finally {
16532            }
16533            return ;
16534        }
16535        // $ANTLR end link_description_markup
16536    
16537    
16538        // $ANTLR start image_open_markup
16539        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1070:1: image_open_markup : IMAGE_OPEN ;
16540        public final void image_open_markup() throws RecognitionException {
16541            try {
16542                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1071:2: ( IMAGE_OPEN )
16543                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1071:4: IMAGE_OPEN
16544                {
16545                match(input,IMAGE_OPEN,FOLLOW_IMAGE_OPEN_in_image_open_markup5061); if (failed) return ;
16546    
16547                }
16548    
16549            }
16550            catch (RecognitionException re) {
16551                reportError(re);
16552                recover(input,re);
16553            }
16554            finally {
16555            }
16556            return ;
16557        }
16558        // $ANTLR end image_open_markup
16559    
16560    
16561        // $ANTLR start image_close_markup
16562        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1073:1: image_close_markup : IMAGE_CLOSE ;
16563        public final void image_close_markup() throws RecognitionException {
16564            try {
16565                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1074:2: ( IMAGE_CLOSE )
16566                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1074:4: IMAGE_CLOSE
16567                {
16568                match(input,IMAGE_CLOSE,FOLLOW_IMAGE_CLOSE_in_image_close_markup5071); if (failed) return ;
16569    
16570                }
16571    
16572            }
16573            catch (RecognitionException re) {
16574                reportError(re);
16575                recover(input,re);
16576            }
16577            finally {
16578            }
16579            return ;
16580        }
16581        // $ANTLR end image_close_markup
16582    
16583    
16584        // $ANTLR start image_alternative_markup
16585        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1076:1: image_alternative_markup : PIPE ;
16586        public final void image_alternative_markup() throws RecognitionException {
16587            try {
16588                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1077:2: ( PIPE )
16589                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1077:4: PIPE
16590                {
16591                match(input,PIPE,FOLLOW_PIPE_in_image_alternative_markup5081); if (failed) return ;
16592    
16593                }
16594    
16595            }
16596            catch (RecognitionException re) {
16597                reportError(re);
16598                recover(input,re);
16599            }
16600            finally {
16601            }
16602            return ;
16603        }
16604        // $ANTLR end image_alternative_markup
16605    
16606    
16607        // $ANTLR start extension_markup
16608        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1079:1: extension_markup : EXTENSION ;
16609        public final void extension_markup() throws RecognitionException {
16610            try {
16611                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1080:2: ( EXTENSION )
16612                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1080:4: EXTENSION
16613                {
16614                match(input,EXTENSION,FOLLOW_EXTENSION_in_extension_markup5091); if (failed) return ;
16615    
16616                }
16617    
16618            }
16619            catch (RecognitionException re) {
16620                reportError(re);
16621                recover(input,re);
16622            }
16623            finally {
16624            }
16625            return ;
16626        }
16627        // $ANTLR end extension_markup
16628    
16629    
16630        // $ANTLR start forced_linebreak
16631        // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1082:1: forced_linebreak : FORCED_LINEBREAK ;
16632        public final void forced_linebreak() throws RecognitionException {
16633            try {
16634                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1083:2: ( FORCED_LINEBREAK )
16635                // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:1083:4: FORCED_LINEBREAK
16636                {
16637                match(input,FORCED_LINEBREAK,FOLLOW_FORCED_LINEBREAK_in_forced_linebreak5101); if (failed) return ;
16638    
16639                }
16640    
16641            }
16642            catch (RecognitionException re) {
16643                reportError(re);
16644                recover(input,re);
16645            }
16646            finally {
16647            }
16648            return ;
16649        }
16650        // $ANTLR end forced_linebreak
16651    
16652        // $ANTLR start synpred1
16653        public final void synpred1_fragment() throws RecognitionException {   
16654            // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:166:5: ( NOWIKI_OPEN ~ ( NEWLINE ) )
16655            // /home/migue/development/sourcecode/liferay/liferay-portal/portal/portal-impl/src/com/liferay/portal/parsers/creole/grammar/Creole10.g:166:7: NOWIKI_OPEN ~ ( NEWLINE )
16656            {
16657            match(input,NOWIKI_OPEN,FOLLOW_NOWIKI_OPEN_in_synpred1317); if (failed) return ;
16658            if ( (input.LA(1)>=FORCED_END_OF_LINE && input.LA(1)<=WIKI)||(input.LA(1)>=POUND && input.LA(1)<=79) ) {
16659                input.consume();
16660                errorRecovery=false;failed=false;
16661            }
16662            else {
16663                if (backtracking>0) {failed=true; return ;}
16664                MismatchedSetException mse =
16665                    new MismatchedSetException(null,input);
16666                recoverFromMismatchedSet(input,mse,FOLLOW_set_in_synpred1320);    throw mse;
16667            }
16668    
16669    
16670            }
16671        }
16672        // $ANTLR end synpred1
16673    
16674        public final boolean synpred1() {
16675            backtracking++;
16676            int start = input.mark();
16677            try {
16678                synpred1_fragment(); // can never throw exception
16679            } catch (RecognitionException re) {
16680                System.err.println("impossible: "+re);
16681            }
16682            boolean success = !failed;
16683            input.rewind(start);
16684            backtracking--;
16685            failed=false;
16686            return success;
16687        }
16688    
16689    
16690     
16691    
16692        public static final BitSet FOLLOW_whitespaces_in_wikipage111 = new BitSet(new long[]{0xFFFFFFFFFFFF7FF0L,0x000000000000FFFFL});
16693        public static final BitSet FOLLOW_paragraphs_in_wikipage119 = new BitSet(new long[]{0x0000000000000000L});
16694        public static final BitSet FOLLOW_EOF_in_wikipage124 = new BitSet(new long[]{0x0000000000000002L});
16695        public static final BitSet FOLLOW_paragraph_in_paragraphs142 = new BitSet(new long[]{0xFFFFFFFFFFFF7FF2L,0x000000000000FFFFL});
16696        public static final BitSet FOLLOW_nowiki_block_in_paragraph163 = new BitSet(new long[]{0x0000000000000002L});
16697        public static final BitSet FOLLOW_blanks_in_paragraph170 = new BitSet(new long[]{0x0000000000008000L});
16698        public static final BitSet FOLLOW_paragraph_separator_in_paragraph173 = new BitSet(new long[]{0x0000000000000002L});
16699        public static final BitSet FOLLOW_blanks_in_paragraph180 = new BitSet(new long[]{0xFFFFFFFFFFFF7FF0L,0x000000000000FFFFL});
16700        public static final BitSet FOLLOW_table_of_contents_in_paragraph194 = new BitSet(new long[]{0x0000000000008002L});
16701        public static final BitSet FOLLOW_heading_in_paragraph208 = new BitSet(new long[]{0x0000000000008002L});
16702        public static final BitSet FOLLOW_horizontalrule_in_paragraph227 = new BitSet(new long[]{0x0000000000008002L});
16703        public static final BitSet FOLLOW_list_in_paragraph240 = new BitSet(new long[]{0x0000000000008002L});
16704        public static final BitSet FOLLOW_table_in_paragraph253 = new BitSet(new long[]{0x0000000000008002L});
16705        public static final BitSet FOLLOW_text_paragraph_in_paragraph266 = new BitSet(new long[]{0x0000000000008002L});
16706        public static final BitSet FOLLOW_paragraph_separator_in_paragraph279 = new BitSet(new long[]{0x0000000000000002L});
16707        public static final BitSet FOLLOW_text_line_in_text_paragraph307 = new BitSet(new long[]{0xFFFFFFFFFFF27FF2L,0x000000000000FFFFL});
16708        public static final BitSet FOLLOW_nowiki_inline_in_text_paragraph339 = new BitSet(new long[]{0xFFFFFFFFFFFFFFF0L,0x000000000000FFFFL});
16709        public static final BitSet FOLLOW_text_element_in_text_paragraph350 = new BitSet(new long[]{0xFFFFFFFFFFFFFFF0L,0x000000000000FFFFL});
16710        public static final BitSet FOLLOW_text_lineseparator_in_text_paragraph359 = new BitSet(new long[]{0xFFFFFFFFFFF27FF2L,0x000000000000FFFFL});
16711        public static final BitSet FOLLOW_text_firstelement_in_text_line382 = new BitSet(new long[]{0xFFFFFFFFFFFFFFF0L,0x000000000000FFFFL});
16712        public static final BitSet FOLLOW_text_element_in_text_line401 = new BitSet(new long[]{0xFFFFFFFFFFFFFFF0L,0x000000000000FFFFL});
16713        public static final BitSet FOLLOW_text_lineseparator_in_text_line415 = new BitSet(new long[]{0x0000000000000002L});
16714        public static final BitSet FOLLOW_text_formattedelement_in_text_firstelement437 = new BitSet(new long[]{0x0000000000000002L});
16715        public static final BitSet FOLLOW_text_first_unformattedelement_in_text_firstelement448 = new BitSet(new long[]{0x0000000000000002L});
16716        public static final BitSet FOLLOW_ital_markup_in_text_formattedelement464 = new BitSet(new long[]{0xFFFFFFFFFFFFFFF2L,0x000000000000FFFFL});
16717        public static final BitSet FOLLOW_text_italcontent_in_text_formattedelement470 = new BitSet(new long[]{0x0000000000108002L});
16718        public static final BitSet FOLLOW_NEWLINE_in_text_formattedelement479 = new BitSet(new long[]{0x0000000000100000L});
16719        public static final BitSet FOLLOW_ital_markup_in_text_formattedelement485 = new BitSet(new long[]{0x0000000000000002L});
16720        public static final BitSet FOLLOW_bold_markup_in_text_formattedelement493 = new BitSet(new long[]{0xFFFFFFFFFFFFFFF2L,0x000000000000FFFFL});
16721        public static final BitSet FOLLOW_text_boldcontent_in_text_formattedelement500 = new BitSet(new long[]{0x0000000000028002L});
16722        public static final BitSet FOLLOW_NEWLINE_in_text_formattedelement509 = new BitSet(new long[]{0x0000000000020000L});
16723        public static final BitSet FOLLOW_bold_markup_in_text_formattedelement515 = new BitSet(new long[]{0x0000000000000002L});
16724        public static final BitSet FOLLOW_NEWLINE_in_text_boldcontent534 = new BitSet(new long[]{0xFFFFFFFFFFFF7FF2L,0x000000000000FFFFL});
16725        public static final BitSet FOLLOW_text_boldcontentpart_in_text_boldcontent546 = new BitSet(new long[]{0xFFFFFFFFFFFF7FF2L,0x000000000000FFFFL});
16726        public static final BitSet FOLLOW_EOF_in_text_boldcontent557 = new BitSet(new long[]{0x0000000000000002L});
16727        public static final BitSet FOLLOW_NEWLINE_in_text_italcontent573 = new BitSet(new long[]{0xFFFFFFFFFFEF7FF2L,0x000000000000FFFFL});
16728        public static final BitSet FOLLOW_text_italcontentpart_in_text_italcontent585 = new BitSet(new long[]{0xFFFFFFFFFFEF7FF2L,0x000000000000FFFFL});
16729        public static final BitSet FOLLOW_EOF_in_text_italcontent596 = new BitSet(new long[]{0x0000000000000002L});
16730        public static final BitSet FOLLOW_onestar_in_text_element610 = new BitSet(new long[]{0xFFFFFFFFFFED7FF0L,0x000000000000FFFFL});
16731        public static final BitSet FOLLOW_text_unformattedelement_in_text_element617 = new BitSet(new long[]{0x0000000000000002L});
16732        public static final BitSet FOLLOW_text_unformattedelement_in_text_element628 = new BitSet(new long[]{0x0000000000020002L});
16733        public static final BitSet FOLLOW_onestar_in_text_element631 = new BitSet(new long[]{0x0000000000000002L});
16734        public static final BitSet FOLLOW_text_formattedelement_in_text_element642 = new BitSet(new long[]{0x0000000000000002L});
16735        public static final BitSet FOLLOW_ital_markup_in_text_boldcontentpart659 = new BitSet(new long[]{0xFFFFFFFFFFFFFFF2L,0x000000000000FFFFL});
16736        public static final BitSet FOLLOW_text_bolditalcontent_in_text_boldcontentpart666 = new BitSet(new long[]{0x0000000000100002L});
16737        public static final BitSet FOLLOW_ital_markup_in_text_boldcontentpart673 = new BitSet(new long[]{0x0000000000000002L});
16738        public static final BitSet FOLLOW_text_formattedcontent_in_text_boldcontentpart685 = new BitSet(new long[]{0x0000000000000002L});
16739        public static final BitSet FOLLOW_bold_markup_in_text_italcontentpart701 = new BitSet(new long[]{0xFFFFFFFFFFEFFFF2L,0x000000000000FFFFL});
16740        public static final BitSet FOLLOW_text_bolditalcontent_in_text_italcontentpart708 = new BitSet(new long[]{0x0000000000020002L});
16741        public static final BitSet FOLLOW_bold_markup_in_text_italcontentpart714 = new BitSet(new long[]{0x0000000000000002L});
16742        public static final BitSet FOLLOW_text_formattedcontent_in_text_italcontentpart725 = new BitSet(new long[]{0x0000000000000002L});
16743        public static final BitSet FOLLOW_NEWLINE_in_text_bolditalcontent743 = new BitSet(new long[]{0xFFFFFFFFFFEF7FF2L,0x000000000000FFFFL});
16744        public static final BitSet FOLLOW_text_formattedcontent_in_text_bolditalcontent754 = new BitSet(new long[]{0x0000000000000002L});
16745        public static final BitSet FOLLOW_EOF_in_text_bolditalcontent764 = new BitSet(new long[]{0x0000000000000002L});
16746        public static final BitSet FOLLOW_onestar_in_text_formattedcontent778 = new BitSet(new long[]{0xFFFFFFFFFFED7FF0L,0x000000000000FFFFL});
16747        public static final BitSet FOLLOW_text_unformattedelement_in_text_formattedcontent787 = new BitSet(new long[]{0xFFFFFFFFFFEFFFF2L,0x000000000000FFFFL});
16748        public static final BitSet FOLLOW_onestar_in_text_formattedcontent792 = new BitSet(new long[]{0xFFFFFFFFFFEDFFF2L,0x000000000000FFFFL});
16749        public static final BitSet FOLLOW_text_linebreak_in_text_formattedcontent797 = new BitSet(new long[]{0xFFFFFFFFFFED7FF2L,0x000000000000FFFFL});
16750        public static final BitSet FOLLOW_text_lineseparator_in_text_linebreak817 = new BitSet(new long[]{0x0000000000000002L});
16751        public static final BitSet FOLLOW_text_first_inlineelement_in_text_inlineelement835 = new BitSet(new long[]{0x0000000000000002L});
16752        public static final BitSet FOLLOW_nowiki_inline_in_text_inlineelement846 = new BitSet(new long[]{0x0000000000000002L});
16753        public static final BitSet FOLLOW_link_in_text_first_inlineelement867 = new BitSet(new long[]{0x0000000000000002L});
16754        public static final BitSet FOLLOW_image_in_text_first_inlineelement878 = new BitSet(new long[]{0x0000000000000002L});
16755        public static final BitSet FOLLOW_extension_in_text_first_inlineelement888 = new BitSet(new long[]{0x0000000000000002L});
16756        public static final BitSet FOLLOW_text_first_unformatted_in_text_first_unformattedelement908 = new BitSet(new long[]{0x0000000000000002L});
16757        public static final BitSet FOLLOW_text_first_inlineelement_in_text_first_unformattedelement919 = new BitSet(new long[]{0x0000000000000002L});
16758        public static final BitSet FOLLOW_text_first_unformmatted_text_in_text_first_unformatted941 = new BitSet(new long[]{0x0000000000000002L});
16759        public static final BitSet FOLLOW_forced_linebreak_in_text_first_unformatted950 = new BitSet(new long[]{0x0000000006000002L});
16760        public static final BitSet FOLLOW_escaped_in_text_first_unformatted962 = new BitSet(new long[]{0x0000000006000002L});
16761        public static final BitSet FOLLOW_set_in_text_first_unformmatted_text990 = new BitSet(new long[]{0xFFFFFFFFF8007FF2L,0x000000000000FFFFL});
16762        public static final BitSet FOLLOW_text_unformatted_in_text_unformattedelement1104 = new BitSet(new long[]{0x0000000000000002L});
16763        public static final BitSet FOLLOW_text_inlineelement_in_text_unformattedelement1115 = new BitSet(new long[]{0x0000000000000002L});
16764        public static final BitSet FOLLOW_text_unformated_text_in_text_unformatted1137 = new BitSet(new long[]{0x0000000000000002L});
16765        public static final BitSet FOLLOW_forced_linebreak_in_text_unformatted1146 = new BitSet(new long[]{0x0000000006000002L});
16766        public static final BitSet FOLLOW_escaped_in_text_unformatted1158 = new BitSet(new long[]{0x0000000006000002L});
16767        public static final BitSet FOLLOW_set_in_text_unformated_text1183 = new BitSet(new long[]{0xFFFFFFFFF80D7FF2L,0x000000000000FFFFL});
16768        public static final BitSet FOLLOW_heading_markup_in_heading1285 = new BitSet(new long[]{0xFFFFFFFFFBFFFFF0L,0x000000000000FFFFL});
16769        public static final BitSet FOLLOW_heading_content_in_heading1290 = new BitSet(new long[]{0x0000000080048000L});
16770        public static final BitSet FOLLOW_heading_markup_in_heading1297 = new BitSet(new long[]{0x0000000080008000L});
16771        public static final BitSet FOLLOW_blanks_in_heading1305 = new BitSet(new long[]{0x0000000000008000L});
16772        public static final BitSet FOLLOW_paragraph_separator_in_heading1312 = new BitSet(new long[]{0x0000000000000002L});
16773        public static final BitSet FOLLOW_heading_markup_in_heading_content1322 = new BitSet(new long[]{0xFFFFFFFFFBFF7FF0L,0x000000000000FFFFL});
16774        public static final BitSet FOLLOW_heading_content_in_heading_content1327 = new BitSet(new long[]{0x0000000000040002L});
16775        public static final BitSet FOLLOW_heading_markup_in_heading_content1332 = new BitSet(new long[]{0x0000000000000002L});
16776        public static final BitSet FOLLOW_heading_text_in_heading_content1344 = new BitSet(new long[]{0x0000000000000002L});
16777        public static final BitSet FOLLOW_heading_cellcontent_in_heading_text1365 = new BitSet(new long[]{0x0000000000000002L});
16778        public static final BitSet FOLLOW_onestar_in_heading_cellcontent1382 = new BitSet(new long[]{0xFFFFFFFFFBFB7FF2L,0x000000000000FFFFL});
16779        public static final BitSet FOLLOW_heading_cellcontentpart_in_heading_cellcontent1391 = new BitSet(new long[]{0xFFFFFFFFFBFB7FF2L,0x000000000000FFFFL});
16780        public static final BitSet FOLLOW_onestar_in_heading_cellcontent1402 = new BitSet(new long[]{0xFFFFFFFFFBFB7FF2L,0x000000000000FFFFL});
16781        public static final BitSet FOLLOW_heading_formattedelement_in_heading_cellcontentpart1423 = new BitSet(new long[]{0x0000000000000002L});
16782        public static final BitSet FOLLOW_heading_unformattedelement_in_heading_cellcontentpart1434 = new BitSet(new long[]{0x0000000000000002L});
16783        public static final BitSet FOLLOW_ital_markup_in_heading_formattedelement1450 = new BitSet(new long[]{0xFFFFFFFFFBFB7FF2L,0x000000000000FFFFL});
16784        public static final BitSet FOLLOW_heading_italcontent_in_heading_formattedelement1460 = new BitSet(new long[]{0x0000000000100002L});
16785        public static final BitSet FOLLOW_ital_markup_in_heading_formattedelement1469 = new BitSet(new long[]{0x0000000000000002L});
16786        public static final BitSet FOLLOW_bold_markup_in_heading_formattedelement1477 = new BitSet(new long[]{0xFFFFFFFFFBFB7FF2L,0x000000000000FFFFL});
16787        public static final BitSet FOLLOW_heading_boldcontent_in_heading_formattedelement1484 = new BitSet(new long[]{0x0000000000020002L});
16788        public static final BitSet FOLLOW_bold_markup_in_heading_formattedelement1494 = new BitSet(new long[]{0x0000000000000002L});
16789        public static final BitSet FOLLOW_onestar_in_heading_boldcontent1511 = new BitSet(new long[]{0xFFFFFFFFFBFB7FF0L,0x000000000000FFFFL});
16790        public static final BitSet FOLLOW_heading_boldcontentpart_in_heading_boldcontent1520 = new BitSet(new long[]{0xFFFFFFFFFBFB7FF2L,0x000000000000FFFFL});
16791        public static final BitSet FOLLOW_onestar_in_heading_boldcontent1525 = new BitSet(new long[]{0xFFFFFFFFFBFB7FF2L,0x000000000000FFFFL});
16792        public static final BitSet FOLLOW_EOF_in_heading_boldcontent1533 = new BitSet(new long[]{0x0000000000000002L});
16793        public static final BitSet FOLLOW_onestar_in_heading_italcontent1547 = new BitSet(new long[]{0xFFFFFFFFFBFB7FF0L,0x000000000000FFFFL});
16794        public static final BitSet FOLLOW_heading_italcontentpart_in_heading_italcontent1556 = new BitSet(new long[]{0xFFFFFFFFFBFB7FF2L,0x000000000000FFFFL});
16795        public static final BitSet FOLLOW_onestar_in_heading_italcontent1561 = new BitSet(new long[]{0xFFFFFFFFFBFB7FF2L,0x000000000000FFFFL});
16796        public static final BitSet FOLLOW_EOF_in_heading_italcontent1569 = new BitSet(new long[]{0x0000000000000002L});
16797        public static final BitSet FOLLOW_heading_formattedcontent_in_heading_boldcontentpart1587 = new BitSet(new long[]{0x0000000000000002L});
16798        public static final BitSet FOLLOW_ital_markup_in_heading_boldcontentpart1594 = new BitSet(new long[]{0xFFFFFFFFFBFB7FF2L,0x000000000000FFFFL});
16799        public static final BitSet FOLLOW_heading_bolditalcontent_in_heading_boldcontentpart1601 = new BitSet(new long[]{0x0000000000100002L});
16800        public static final BitSet FOLLOW_ital_markup_in_heading_boldcontentpart1608 = new BitSet(new long[]{0x0000000000000002L});
16801        public static final BitSet FOLLOW_bold_markup_in_heading_italcontentpart1625 = new BitSet(new long[]{0xFFFFFFFFFBFB7FF2L,0x000000000000FFFFL});
16802        public static final BitSet FOLLOW_heading_bolditalcontent_in_heading_italcontentpart1632 = new BitSet(new long[]{0x0000000000020002L});
16803        public static final BitSet FOLLOW_bold_markup_in_heading_italcontentpart1639 = new BitSet(new long[]{0x0000000000000002L});
16804        public static final BitSet FOLLOW_heading_formattedcontent_in_heading_italcontentpart1651 = new BitSet(new long[]{0x0000000000000002L});
16805        public static final BitSet FOLLOW_onestar_in_heading_bolditalcontent1667 = new BitSet(new long[]{0xFFFFFFFFFBFB7FF2L,0x000000000000FFFFL});
16806        public static final BitSet FOLLOW_heading_formattedcontent_in_heading_bolditalcontent1676 = new BitSet(new long[]{0x0000000000020002L});
16807        public static final BitSet FOLLOW_onestar_in_heading_bolditalcontent1681 = new BitSet(new long[]{0x0000000000000002L});
16808        public static final BitSet FOLLOW_EOF_in_heading_bolditalcontent1689 = new BitSet(new long[]{0x0000000000000002L});
16809        public static final BitSet FOLLOW_heading_unformattedelement_in_heading_formattedcontent1709 = new BitSet(new long[]{0xFFFFFFFFFBFB7FF2L,0x000000000000FFFFL});
16810        public static final BitSet FOLLOW_heading_unformatted_text_in_heading_unformattedelement1732 = new BitSet(new long[]{0x0000000000000002L});
16811        public static final BitSet FOLLOW_heading_inlineelement_in_heading_unformattedelement1744 = new BitSet(new long[]{0x0000000000000002L});
16812        public static final BitSet FOLLOW_link_in_heading_inlineelement1764 = new BitSet(new long[]{0x0000000000000002L});
16813        public static final BitSet FOLLOW_image_in_heading_inlineelement1774 = new BitSet(new long[]{0x0000000000000002L});
16814        public static final BitSet FOLLOW_nowiki_inline_in_heading_inlineelement1785 = new BitSet(new long[]{0x0000000000000002L});
16815        public static final BitSet FOLLOW_set_in_heading_unformatted_text1808 = new BitSet(new long[]{0xFFFFFFFFFB1B7FF2L,0x000000000000FFFFL});
16816        public static final BitSet FOLLOW_list_elems_in_list1882 = new BitSet(new long[]{0x0000000000038002L});
16817        public static final BitSet FOLLOW_end_of_list_in_list1890 = new BitSet(new long[]{0x0000000000000002L});
16818        public static final BitSet FOLLOW_list_ordelem_markup_in_list_elems1920 = new BitSet(new long[]{0xFFFFFFFFFFFFFFF0L,0x000000000000FFFFL});
16819        public static final BitSet FOLLOW_list_elem_in_list_elems1932 = new BitSet(new long[]{0x0000000000000002L});
16820        public static final BitSet FOLLOW_list_unordelem_markup_in_list_elems1943 = new BitSet(new long[]{0xFFFFFFFFFFFFFFF0L,0x000000000000FFFFL});
16821        public static final BitSet FOLLOW_list_elem_in_list_elems1955 = new BitSet(new long[]{0x0000000000000002L});
16822        public static final BitSet FOLLOW_list_elem_markup_in_list_elem1978 = new BitSet(new long[]{0xFFFFFFFFFFFFFFF0L,0x000000000000FFFFL});
16823        public static final BitSet FOLLOW_list_elemcontent_in_list_elem1989 = new BitSet(new long[]{0x0000000000008000L});
16824        public static final BitSet FOLLOW_list_elemseparator_in_list_elem1994 = new BitSet(new long[]{0x0000000000000002L});
16825        public static final BitSet FOLLOW_list_ordelem_markup_in_list_elem_markup2004 = new BitSet(new long[]{0x0000000000000002L});
16826        public static final BitSet FOLLOW_list_unordelem_markup_in_list_elem_markup2009 = new BitSet(new long[]{0x0000000000000002L});
16827        public static final BitSet FOLLOW_onestar_in_list_elemcontent2023 = new BitSet(new long[]{0xFFFFFFFFFFFF7FF2L,0x000000000000FFFFL});
16828        public static final BitSet FOLLOW_list_elemcontentpart_in_list_elemcontent2032 = new BitSet(new long[]{0xFFFFFFFFFFFF7FF2L,0x000000000000FFFFL});
16829        public static final BitSet FOLLOW_onestar_in_list_elemcontent2037 = new BitSet(new long[]{0xFFFFFFFFFFFF7FF2L,0x000000000000FFFFL});
16830        public static final BitSet FOLLOW_text_unformattedelement_in_list_elemcontentpart2058 = new BitSet(new long[]{0x0000000000000002L});
16831        public static final BitSet FOLLOW_list_formatted_elem_in_list_elemcontentpart2069 = new BitSet(new long[]{0x0000000000000002L});
16832        public static final BitSet FOLLOW_bold_markup_in_list_formatted_elem2085 = new BitSet(new long[]{0xFFFFFFFFFFFF7FF2L,0x000000000000FFFFL});
16833        public static final BitSet FOLLOW_onestar_in_list_formatted_elem2088 = new BitSet(new long[]{0xFFFFFFFFFFFF7FF2L,0x000000000000FFFFL});
16834        public static final BitSet FOLLOW_list_boldcontentpart_in_list_formatted_elem2097 = new BitSet(new long[]{0xFFFFFFFFFFFF7FF2L,0x000000000000FFFFL});
16835        public static final BitSet FOLLOW_onestar_in_list_formatted_elem2106 = new BitSet(new long[]{0xFFFFFFFFFFFF7FF2L,0x000000000000FFFFL});
16836        public static final BitSet FOLLOW_bold_markup_in_list_formatted_elem2115 = new BitSet(new long[]{0x0000000000000002L});
16837        public static final BitSet FOLLOW_ital_markup_in_list_formatted_elem2123 = new BitSet(new long[]{0xFFFFFFFFFFFF7FF2L,0x000000000000FFFFL});
16838        public static final BitSet FOLLOW_onestar_in_list_formatted_elem2128 = new BitSet(new long[]{0xFFFFFFFFFFFF7FF2L,0x000000000000FFFFL});
16839        public static final BitSet FOLLOW_list_italcontentpart_in_list_formatted_elem2137 = new BitSet(new long[]{0xFFFFFFFFFFFF7FF2L,0x000000000000FFFFL});
16840        public static final BitSet FOLLOW_onestar_in_list_formatted_elem2146 = new BitSet(new long[]{0xFFFFFFFFFFFF7FF2L,0x000000000000FFFFL});
16841        public static final BitSet FOLLOW_ital_markup_in_list_formatted_elem2155 = new BitSet(new long[]{0x0000000000000002L});
16842        public static final BitSet FOLLOW_ital_markup_in_list_boldcontentpart2181 = new BitSet(new long[]{0xFFFFFFFFFFED7FF0L,0x000000000000FFFFL});
16843        public static final BitSet FOLLOW_list_bolditalcontent_in_list_boldcontentpart2188 = new BitSet(new long[]{0x0000000000100002L});
16844        public static final BitSet FOLLOW_ital_markup_in_list_boldcontentpart2195 = new BitSet(new long[]{0x0000000000000002L});
16845        public static final BitSet FOLLOW_text_unformattedelement_in_list_boldcontentpart2209 = new BitSet(new long[]{0xFFFFFFFFFFED7FF2L,0x000000000000FFFFL});
16846        public static final BitSet FOLLOW_text_unformattedelement_in_list_bolditalcontent2240 = new BitSet(new long[]{0xFFFFFFFFFFED7FF2L,0x000000000000FFFFL});
16847        public static final BitSet FOLLOW_bold_markup_in_list_italcontentpart2268 = new BitSet(new long[]{0xFFFFFFFFFFED7FF0L,0x000000000000FFFFL});
16848        public static final BitSet FOLLOW_list_bolditalcontent_in_list_italcontentpart2275 = new BitSet(new long[]{0x0000000000020002L});
16849        public static final BitSet FOLLOW_bold_markup_in_list_italcontentpart2282 = new BitSet(new long[]{0x0000000000000002L});
16850        public static final BitSet FOLLOW_text_unformattedelement_in_list_italcontentpart2296 = new BitSet(new long[]{0xFFFFFFFFFFED7FF2L,0x000000000000FFFFL});
16851        public static final BitSet FOLLOW_table_row_in_table2324 = new BitSet(new long[]{0x0000000000080002L});
16852        public static final BitSet FOLLOW_table_cell_in_table_row2350 = new BitSet(new long[]{0x0000000000088000L});
16853        public static final BitSet FOLLOW_table_rowseparator_in_table_row2358 = new BitSet(new long[]{0x0000000000000002L});
16854        public static final BitSet FOLLOW_table_headercell_in_table_cell2379 = new BitSet(new long[]{0x0000000000000002L});
16855        public static final BitSet FOLLOW_table_normalcell_in_table_cell2390 = new BitSet(new long[]{0x0000000000000002L});
16856        public static final BitSet FOLLOW_table_headercell_markup_in_table_headercell2406 = new BitSet(new long[]{0xFFFFFFFFFFF77FF2L,0x000000000000FFFFL});
16857        public static final BitSet FOLLOW_table_cellcontent_in_table_headercell2413 = new BitSet(new long[]{0x0000000000000002L});
16858        public static final BitSet FOLLOW_table_cell_markup_in_table_normalcell2429 = new BitSet(new long[]{0xFFFFFFFFFFF77FF2L,0x000000000000FFFFL});
16859        public static final BitSet FOLLOW_table_cellcontent_in_table_normalcell2436 = new BitSet(new long[]{0x0000000000000002L});
16860        public static final BitSet FOLLOW_onestar_in_table_cellcontent2452 = new BitSet(new long[]{0xFFFFFFFFFFF77FF2L,0x000000000000FFFFL});
16861        public static final BitSet FOLLOW_table_cellcontentpart_in_table_cellcontent2461 = new BitSet(new long[]{0xFFFFFFFFFFF77FF2L,0x000000000000FFFFL});
16862        public static final BitSet FOLLOW_onestar_in_table_cellcontent2468 = new BitSet(new long[]{0xFFFFFFFFFFF77FF2L,0x000000000000FFFFL});
16863        public static final BitSet FOLLOW_table_formattedelement_in_table_cellcontentpart2489 = new BitSet(new long[]{0x0000000000000002L});
16864        public static final BitSet FOLLOW_table_unformattedelement_in_table_cellcontentpart2500 = new BitSet(new long[]{0x0000000000000002L});
16865        public static final BitSet FOLLOW_ital_markup_in_table_formattedelement2516 = new BitSet(new long[]{0xFFFFFFFFFFF77FF2L,0x000000000000FFFFL});
16866        public static final BitSet FOLLOW_table_italcontent_in_table_formattedelement2526 = new BitSet(new long[]{0x0000000000100002L});
16867        public static final BitSet FOLLOW_ital_markup_in_table_formattedelement2535 = new BitSet(new long[]{0x0000000000000002L});
16868        public static final BitSet FOLLOW_bold_markup_in_table_formattedelement2543 = new BitSet(new long[]{0xFFFFFFFFFFF77FF2L,0x000000000000FFFFL});
16869        public static final BitSet FOLLOW_table_boldcontent_in_table_formattedelement2550 = new BitSet(new long[]{0x0000000000020002L});
16870        public static final BitSet FOLLOW_bold_markup_in_table_formattedelement2560 = new BitSet(new long[]{0x0000000000000002L});
16871        public static final BitSet FOLLOW_onestar_in_table_boldcontent2577 = new BitSet(new long[]{0xFFFFFFFFFFF57FF0L,0x000000000000FFFFL});
16872        public static final BitSet FOLLOW_table_boldcontentpart_in_table_boldcontent2586 = new BitSet(new long[]{0xFFFFFFFFFFF77FF2L,0x000000000000FFFFL});
16873        public static final BitSet FOLLOW_onestar_in_table_boldcontent2591 = new BitSet(new long[]{0xFFFFFFFFFFF57FF2L,0x000000000000FFFFL});
16874        public static final BitSet FOLLOW_EOF_in_table_boldcontent2599 = new BitSet(new long[]{0x0000000000000002L});
16875        public static final BitSet FOLLOW_onestar_in_table_italcontent2613 = new BitSet(new long[]{0xFFFFFFFFFFE77FF0L,0x000000000000FFFFL});
16876        public static final BitSet FOLLOW_table_italcontentpart_in_table_italcontent2622 = new BitSet(new long[]{0xFFFFFFFFFFE77FF2L,0x000000000000FFFFL});
16877        public static final BitSet FOLLOW_onestar_in_table_italcontent2627 = new BitSet(new long[]{0xFFFFFFFFFFE77FF2L,0x000000000000FFFFL});
16878        public static final BitSet FOLLOW_EOF_in_table_italcontent2635 = new BitSet(new long[]{0x0000000000000002L});
16879        public static final BitSet FOLLOW_table_formattedcontent_in_table_boldcontentpart2653 = new BitSet(new long[]{0x0000000000000002L});
16880        public static final BitSet FOLLOW_ital_markup_in_table_boldcontentpart2660 = new BitSet(new long[]{0xFFFFFFFFFFF77FF2L,0x000000000000FFFFL});
16881        public static final BitSet FOLLOW_table_bolditalcontent_in_table_boldcontentpart2667 = new BitSet(new long[]{0x0000000000100002L});
16882        public static final BitSet FOLLOW_ital_markup_in_table_boldcontentpart2674 = new BitSet(new long[]{0x0000000000000002L});
16883        public static final BitSet FOLLOW_bold_markup_in_table_italcontentpart2691 = new BitSet(new long[]{0xFFFFFFFFFFE77FF2L,0x000000000000FFFFL});
16884        public static final BitSet FOLLOW_table_bolditalcontent_in_table_italcontentpart2698 = new BitSet(new long[]{0x0000000000020002L});
16885        public static final BitSet FOLLOW_bold_markup_in_table_italcontentpart2705 = new BitSet(new long[]{0x0000000000000002L});
16886        public static final BitSet FOLLOW_table_formattedcontent_in_table_italcontentpart2717 = new BitSet(new long[]{0x0000000000000002L});
16887        public static final BitSet FOLLOW_onestar_in_table_bolditalcontent2733 = new BitSet(new long[]{0xFFFFFFFFFFE57FF2L,0x000000000000FFFFL});
16888        public static final BitSet FOLLOW_table_formattedcontent_in_table_bolditalcontent2742 = new BitSet(new long[]{0x0000000000020002L});
16889        public static final BitSet FOLLOW_onestar_in_table_bolditalcontent2747 = new BitSet(new long[]{0x0000000000000002L});
16890        public static final BitSet FOLLOW_EOF_in_table_bolditalcontent2755 = new BitSet(new long[]{0x0000000000000002L});
16891        public static final BitSet FOLLOW_table_unformattedelement_in_table_formattedcontent2775 = new BitSet(new long[]{0xFFFFFFFFFFE57FF2L,0x000000000000FFFFL});
16892        public static final BitSet FOLLOW_table_unformatted_in_table_unformattedelement2798 = new BitSet(new long[]{0x0000000000000002L});
16893        public static final BitSet FOLLOW_table_inlineelement_in_table_unformattedelement2810 = new BitSet(new long[]{0x0000000000000002L});
16894        public static final BitSet FOLLOW_link_in_table_inlineelement2830 = new BitSet(new long[]{0x0000000000000002L});
16895        public static final BitSet FOLLOW_image_in_table_inlineelement2840 = new BitSet(new long[]{0x0000000000000002L});
16896        public static final BitSet FOLLOW_extension_in_table_inlineelement2851 = new BitSet(new long[]{0x0000000000000002L});
16897        public static final BitSet FOLLOW_nowiki_inline_in_table_inlineelement2861 = new BitSet(new long[]{0x0000000000000002L});
16898        public static final BitSet FOLLOW_table_unformatted_text_in_table_unformatted2882 = new BitSet(new long[]{0x0000000000000002L});
16899        public static final BitSet FOLLOW_forced_linebreak_in_table_unformatted2891 = new BitSet(new long[]{0x0000000006000002L});
16900        public static final BitSet FOLLOW_escaped_in_table_unformatted2903 = new BitSet(new long[]{0x0000000006000002L});
16901        public static final BitSet FOLLOW_set_in_table_unformatted_text2929 = new BitSet(new long[]{0xFFFFFFFFF8057FF2L,0x000000000000FFFFL});
16902        public static final BitSet FOLLOW_nowikiblock_open_markup_in_nowiki_block3026 = new BitSet(new long[]{0xFFFFFFFFFFFFFFF0L,0x000000000000FFFFL});
16903        public static final BitSet FOLLOW_nowiki_block_contents_in_nowiki_block3033 = new BitSet(new long[]{0x0000000008000000L});
16904        public static final BitSet FOLLOW_nowikiblock_close_markup_in_nowiki_block3039 = new BitSet(new long[]{0x0000000000008000L});
16905        public static final BitSet FOLLOW_paragraph_separator_in_nowiki_block3042 = new BitSet(new long[]{0x0000000000000002L});
16906        public static final BitSet FOLLOW_nowiki_open_markup_in_nowikiblock_open_markup3053 = new BitSet(new long[]{0x0000000000008000L});
16907        public static final BitSet FOLLOW_newline_in_nowikiblock_open_markup3056 = new BitSet(new long[]{0x0000000000000002L});
16908        public static final BitSet FOLLOW_NOWIKI_BLOCK_CLOSE_in_nowikiblock_close_markup3067 = new BitSet(new long[]{0x0000000000000002L});
16909        public static final BitSet FOLLOW_nowiki_open_markup_in_nowiki_inline3082 = new BitSet(new long[]{0xFFFFFFFFFFFF7FF0L,0x000000000000FFFFL});
16910        public static final BitSet FOLLOW_nowiki_inline_contents_in_nowiki_inline3089 = new BitSet(new long[]{0x0000000010000000L});
16911        public static final BitSet FOLLOW_nowiki_close_markup_in_nowiki_inline3093 = new BitSet(new long[]{0x0000000000000002L});
16912        public static final BitSet FOLLOW_set_in_nowiki_block_contents3111 = new BitSet(new long[]{0xFFFFFFFFF7FFFFF2L,0x000000000000FFFFL});
16913        public static final BitSet FOLLOW_set_in_nowiki_inline_contents3144 = new BitSet(new long[]{0xFFFFFFFFEFFF7FF2L,0x000000000000FFFFL});
16914        public static final BitSet FOLLOW_horizontalrule_markup_in_horizontalrule3180 = new BitSet(new long[]{0x0000000080008000L});
16915        public static final BitSet FOLLOW_blanks_in_horizontalrule3185 = new BitSet(new long[]{0x0000000000008000L});
16916        public static final BitSet FOLLOW_paragraph_separator_in_horizontalrule3191 = new BitSet(new long[]{0x0000000000000002L});
16917        public static final BitSet FOLLOW_link_open_markup_in_link3212 = new BitSet(new long[]{0xFFFFFFFFDFF77FF0L,0x000000000000FFFFL});
16918        public static final BitSet FOLLOW_link_address_in_link3218 = new BitSet(new long[]{0x0000000020080000L});
16919        public static final BitSet FOLLOW_link_description_markup_in_link3224 = new BitSet(new long[]{0xFFFFFFFFDE5F7FF0L,0x000000000000FFFFL});
16920        public static final BitSet FOLLOW_link_description_in_link3232 = new BitSet(new long[]{0x0000000020000000L});
16921        public static final BitSet FOLLOW_link_close_markup_in_link3240 = new BitSet(new long[]{0x0000000000000002L});
16922        public static final BitSet FOLLOW_link_interwiki_uri_in_link_address3259 = new BitSet(new long[]{0x0000100000000000L});
16923        public static final BitSet FOLLOW_44_in_link_address3262 = new BitSet(new long[]{0xFFFFFFFFDFF77FF0L,0x000000000000FFFFL});
16924        public static final BitSet FOLLOW_link_interwiki_pagename_in_link_address3269 = new BitSet(new long[]{0x0000000000000002L});
16925        public static final BitSet FOLLOW_link_uri_in_link_address3280 = new BitSet(new long[]{0x0000000000000002L});
16926        public static final BitSet FOLLOW_45_in_link_interwiki_uri3296 = new BitSet(new long[]{0x0000400000000000L});
16927        public static final BitSet FOLLOW_46_in_link_interwiki_uri3298 = new BitSet(new long[]{0x0000000000000002L});
16928        public static final BitSet FOLLOW_47_in_link_interwiki_uri3303 = new BitSet(new long[]{0x0001000000000000L});
16929        public static final BitSet FOLLOW_48_in_link_interwiki_uri3305 = new BitSet(new long[]{0x0002000000000000L});
16930        public static final BitSet FOLLOW_49_in_link_interwiki_uri3307 = new BitSet(new long[]{0x0004000000000000L});
16931        public static final BitSet FOLLOW_50_in_link_interwiki_uri3309 = new BitSet(new long[]{0x0008000000000000L});
16932        public static final BitSet FOLLOW_51_in_link_interwiki_uri3311 = new BitSet(new long[]{0x0010000000000000L});
16933        public static final BitSet FOLLOW_52_in_link_interwiki_uri3313 = new BitSet(new long[]{0x0002000000000000L});
16934        public static final BitSet FOLLOW_49_in_link_interwiki_uri3315 = new BitSet(new long[]{0x0010000000000000L});
16935        public static final BitSet FOLLOW_52_in_link_interwiki_uri3317 = new BitSet(new long[]{0x0000000000000002L});
16936        public static final BitSet FOLLOW_53_in_link_interwiki_uri3322 = new BitSet(new long[]{0x0040000000000000L});
16937        public static final BitSet FOLLOW_54_in_link_interwiki_uri3324 = new BitSet(new long[]{0x0010000000000000L});
16938        public static final BitSet FOLLOW_52_in_link_interwiki_uri3326 = new BitSet(new long[]{0x0080000000000000L});
16939        public static final BitSet FOLLOW_55_in_link_interwiki_uri3328 = new BitSet(new long[]{0x0002000000000000L});
16940        public static final BitSet FOLLOW_49_in_link_interwiki_uri3330 = new BitSet(new long[]{0x0100000000000000L});
16941        public static final BitSet FOLLOW_56_in_link_interwiki_uri3332 = new BitSet(new long[]{0x0000000000000002L});
16942        public static final BitSet FOLLOW_57_in_link_interwiki_uri3337 = new BitSet(new long[]{0x0001000000000000L});
16943        public static final BitSet FOLLOW_48_in_link_interwiki_uri3339 = new BitSet(new long[]{0x0001000000000000L});
16944        public static final BitSet FOLLOW_48_in_link_interwiki_uri3341 = new BitSet(new long[]{0x0400000000000000L});
16945        public static final BitSet FOLLOW_58_in_link_interwiki_uri3343 = new BitSet(new long[]{0x0040000000000000L});
16946        public static final BitSet FOLLOW_54_in_link_interwiki_uri3345 = new BitSet(new long[]{0x0800000000000000L});
16947        public static final BitSet FOLLOW_59_in_link_interwiki_uri3347 = new BitSet(new long[]{0x0000000000000002L});
16948        public static final BitSet FOLLOW_60_in_link_interwiki_uri3352 = new BitSet(new long[]{0x2000000000000000L});
16949        public static final BitSet FOLLOW_61_in_link_interwiki_uri3354 = new BitSet(new long[]{0x4000000000000000L});
16950        public static final BitSet FOLLOW_62_in_link_interwiki_uri3356 = new BitSet(new long[]{0x0008000000000000L});
16951        public static final BitSet FOLLOW_51_in_link_interwiki_uri3358 = new BitSet(new long[]{0x0010000000000000L});
16952        public static final BitSet FOLLOW_52_in_link_interwiki_uri3360 = new BitSet(new long[]{0x0002000000000000L});
16953        public static final BitSet FOLLOW_49_in_link_interwiki_uri3362 = new BitSet(new long[]{0x0010000000000000L});
16954        public static final BitSet FOLLOW_52_in_link_interwiki_uri3364 = new BitSet(new long[]{0x0000000000000002L});
16955        public static final BitSet FOLLOW_63_in_link_interwiki_uri3369 = new BitSet(new long[]{0x0800000000000000L});
16956        public static final BitSet FOLLOW_59_in_link_interwiki_uri3371 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000001L});
16957        public static final BitSet FOLLOW_64_in_link_interwiki_uri3373 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000002L});
16958        public static final BitSet FOLLOW_65_in_link_interwiki_uri3375 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000004L});
16959        public static final BitSet FOLLOW_66_in_link_interwiki_uri3377 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000001L});
16960        public static final BitSet FOLLOW_64_in_link_interwiki_uri3379 = new BitSet(new long[]{0x0040000000000000L});
16961        public static final BitSet FOLLOW_54_in_link_interwiki_uri3381 = new BitSet(new long[]{0x0040000000000000L});
16962        public static final BitSet FOLLOW_54_in_link_interwiki_uri3383 = new BitSet(new long[]{0x0000000000000002L});
16963        public static final BitSet FOLLOW_63_in_link_interwiki_uri3388 = new BitSet(new long[]{0x0800000000000000L});
16964        public static final BitSet FOLLOW_59_in_link_interwiki_uri3390 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000008L});
16965        public static final BitSet FOLLOW_67_in_link_interwiki_uri3392 = new BitSet(new long[]{0x0010000000000000L});
16966        public static final BitSet FOLLOW_52_in_link_interwiki_uri3394 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000001L});
16967        public static final BitSet FOLLOW_64_in_link_interwiki_uri3396 = new BitSet(new long[]{0x0008000000000000L});
16968        public static final BitSet FOLLOW_51_in_link_interwiki_uri3398 = new BitSet(new long[]{0x0010000000000000L});
16969        public static final BitSet FOLLOW_52_in_link_interwiki_uri3400 = new BitSet(new long[]{0x0002000000000000L});
16970        public static final BitSet FOLLOW_49_in_link_interwiki_uri3402 = new BitSet(new long[]{0x0010000000000000L});
16971        public static final BitSet FOLLOW_52_in_link_interwiki_uri3404 = new BitSet(new long[]{0x0000000000000002L});
16972        public static final BitSet FOLLOW_63_in_link_interwiki_uri3409 = new BitSet(new long[]{0x0001000000000000L});
16973        public static final BitSet FOLLOW_48_in_link_interwiki_uri3411 = new BitSet(new long[]{0x0010000000000000L});
16974        public static final BitSet FOLLOW_52_in_link_interwiki_uri3413 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000010L});
16975        public static final BitSet FOLLOW_68_in_link_interwiki_uri3415 = new BitSet(new long[]{0x8000000000000000L});
16976        public static final BitSet FOLLOW_63_in_link_interwiki_uri3417 = new BitSet(new long[]{0x0001000000000000L});
16977        public static final BitSet FOLLOW_48_in_link_interwiki_uri3419 = new BitSet(new long[]{0x0010000000000000L});
16978        public static final BitSet FOLLOW_52_in_link_interwiki_uri3421 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000010L});
16979        public static final BitSet FOLLOW_68_in_link_interwiki_uri3423 = new BitSet(new long[]{0x0000000000000002L});
16980        public static final BitSet FOLLOW_69_in_link_interwiki_uri3428 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000008L});
16981        public static final BitSet FOLLOW_67_in_link_interwiki_uri3430 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000008L});
16982        public static final BitSet FOLLOW_67_in_link_interwiki_uri3432 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000040L});
16983        public static final BitSet FOLLOW_70_in_link_interwiki_uri3434 = new BitSet(new long[]{0x0004000000000000L});
16984        public static final BitSet FOLLOW_50_in_link_interwiki_uri3436 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000080L});
16985        public static final BitSet FOLLOW_71_in_link_interwiki_uri3438 = new BitSet(new long[]{0x0800000000000000L});
16986        public static final BitSet FOLLOW_59_in_link_interwiki_uri3440 = new BitSet(new long[]{0x0000000000000002L});
16987        public static final BitSet FOLLOW_69_in_link_interwiki_uri3445 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000100L});
16988        public static final BitSet FOLLOW_72_in_link_interwiki_uri3447 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000001L});
16989        public static final BitSet FOLLOW_64_in_link_interwiki_uri3449 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000010L});
16990        public static final BitSet FOLLOW_68_in_link_interwiki_uri3451 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000001L});
16991        public static final BitSet FOLLOW_64_in_link_interwiki_uri3453 = new BitSet(new long[]{0x0000000000000002L});
16992        public static final BitSet FOLLOW_62_in_link_interwiki_uri3458 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000040L});
16993        public static final BitSet FOLLOW_70_in_link_interwiki_uri3460 = new BitSet(new long[]{0x0008000000000000L});
16994        public static final BitSet FOLLOW_51_in_link_interwiki_uri3462 = new BitSet(new long[]{0x0010000000000000L});
16995        public static final BitSet FOLLOW_52_in_link_interwiki_uri3464 = new BitSet(new long[]{0x0002000000000000L});
16996        public static final BitSet FOLLOW_49_in_link_interwiki_uri3466 = new BitSet(new long[]{0x0010000000000000L});
16997        public static final BitSet FOLLOW_52_in_link_interwiki_uri3468 = new BitSet(new long[]{0x0000000000000002L});
16998        public static final BitSet FOLLOW_62_in_link_interwiki_uri3473 = new BitSet(new long[]{0x0004000000000000L});
16999        public static final BitSet FOLLOW_50_in_link_interwiki_uri3475 = new BitSet(new long[]{0x0002000000000000L});
17000        public static final BitSet FOLLOW_49_in_link_interwiki_uri3477 = new BitSet(new long[]{0x0010000000000000L});
17001        public static final BitSet FOLLOW_52_in_link_interwiki_uri3479 = new BitSet(new long[]{0x0008000000000000L});
17002        public static final BitSet FOLLOW_51_in_link_interwiki_uri3481 = new BitSet(new long[]{0x0010000000000000L});
17003        public static final BitSet FOLLOW_52_in_link_interwiki_uri3483 = new BitSet(new long[]{0x0002000000000000L});
17004        public static final BitSet FOLLOW_49_in_link_interwiki_uri3485 = new BitSet(new long[]{0x0010000000000000L});
17005        public static final BitSet FOLLOW_52_in_link_interwiki_uri3487 = new BitSet(new long[]{0x0000000000000002L});
17006        public static final BitSet FOLLOW_62_in_link_interwiki_uri3492 = new BitSet(new long[]{0x0004000000000000L});
17007        public static final BitSet FOLLOW_50_in_link_interwiki_uri3494 = new BitSet(new long[]{0x0100000000000000L});
17008        public static final BitSet FOLLOW_56_in_link_interwiki_uri3496 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000200L});
17009        public static final BitSet FOLLOW_73_in_link_interwiki_uri3498 = new BitSet(new long[]{0x0040000000000000L});
17010        public static final BitSet FOLLOW_54_in_link_interwiki_uri3500 = new BitSet(new long[]{0x0800000000000000L});
17011        public static final BitSet FOLLOW_59_in_link_interwiki_uri3502 = new BitSet(new long[]{0x0008000000000000L});
17012        public static final BitSet FOLLOW_51_in_link_interwiki_uri3504 = new BitSet(new long[]{0x0010000000000000L});
17013        public static final BitSet FOLLOW_52_in_link_interwiki_uri3506 = new BitSet(new long[]{0x0002000000000000L});
17014        public static final BitSet FOLLOW_49_in_link_interwiki_uri3508 = new BitSet(new long[]{0x0010000000000000L});
17015        public static final BitSet FOLLOW_52_in_link_interwiki_uri3510 = new BitSet(new long[]{0x0000000000000002L});
17016        public static final BitSet FOLLOW_74_in_link_interwiki_uri3515 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000001L});
17017        public static final BitSet FOLLOW_64_in_link_interwiki_uri3517 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000008L});
17018        public static final BitSet FOLLOW_67_in_link_interwiki_uri3519 = new BitSet(new long[]{0x0800000000000000L});
17019        public static final BitSet FOLLOW_59_in_link_interwiki_uri3521 = new BitSet(new long[]{0x0001000000000000L});
17020        public static final BitSet FOLLOW_48_in_link_interwiki_uri3523 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000800L});
17021        public static final BitSet FOLLOW_75_in_link_interwiki_uri3525 = new BitSet(new long[]{0x0000000000000002L});
17022        public static final BitSet FOLLOW_61_in_link_interwiki_uri3530 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000010L});
17023        public static final BitSet FOLLOW_68_in_link_interwiki_uri3532 = new BitSet(new long[]{0x0010000000000000L});
17024        public static final BitSet FOLLOW_52_in_link_interwiki_uri3534 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000200L});
17025        public static final BitSet FOLLOW_73_in_link_interwiki_uri3536 = new BitSet(new long[]{0x2000000000000000L});
17026        public static final BitSet FOLLOW_61_in_link_interwiki_uri3538 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000010L});
17027        public static final BitSet FOLLOW_68_in_link_interwiki_uri3540 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000001L});
17028        public static final BitSet FOLLOW_64_in_link_interwiki_uri3542 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000200L});
17029        public static final BitSet FOLLOW_73_in_link_interwiki_uri3544 = new BitSet(new long[]{0x0000000000000002L});
17030        public static final BitSet FOLLOW_76_in_link_interwiki_uri3549 = new BitSet(new long[]{0x0010000000000000L});
17031        public static final BitSet FOLLOW_52_in_link_interwiki_uri3551 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000008L});
17032        public static final BitSet FOLLOW_67_in_link_interwiki_uri3553 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000008L});
17033        public static final BitSet FOLLOW_67_in_link_interwiki_uri3555 = new BitSet(new long[]{0x0040000000000000L});
17034        public static final BitSet FOLLOW_54_in_link_interwiki_uri3557 = new BitSet(new long[]{0x0000000000000000L,0x0000000000002000L});
17035        public static final BitSet FOLLOW_77_in_link_interwiki_uri3559 = new BitSet(new long[]{0x0008000000000000L});
17036        public static final BitSet FOLLOW_51_in_link_interwiki_uri3561 = new BitSet(new long[]{0x0010000000000000L});
17037        public static final BitSet FOLLOW_52_in_link_interwiki_uri3563 = new BitSet(new long[]{0x0002000000000000L});
17038        public static final BitSet FOLLOW_49_in_link_interwiki_uri3565 = new BitSet(new long[]{0x0010000000000000L});
17039        public static final BitSet FOLLOW_52_in_link_interwiki_uri3567 = new BitSet(new long[]{0x0000000000000002L});
17040        public static final BitSet FOLLOW_76_in_link_interwiki_uri3572 = new BitSet(new long[]{0x0008000000000000L});
17041        public static final BitSet FOLLOW_51_in_link_interwiki_uri3574 = new BitSet(new long[]{0x0010000000000000L});
17042        public static final BitSet FOLLOW_52_in_link_interwiki_uri3576 = new BitSet(new long[]{0x0002000000000000L});
17043        public static final BitSet FOLLOW_49_in_link_interwiki_uri3578 = new BitSet(new long[]{0x0010000000000000L});
17044        public static final BitSet FOLLOW_52_in_link_interwiki_uri3580 = new BitSet(new long[]{0x0000000000000002L});
17045        public static final BitSet FOLLOW_78_in_link_interwiki_uri3585 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000080L});
17046        public static final BitSet FOLLOW_71_in_link_interwiki_uri3587 = new BitSet(new long[]{0x0800000000000000L});
17047        public static final BitSet FOLLOW_59_in_link_interwiki_uri3589 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000040L});
17048        public static final BitSet FOLLOW_70_in_link_interwiki_uri3591 = new BitSet(new long[]{0x0001000000000000L});
17049        public static final BitSet FOLLOW_48_in_link_interwiki_uri3593 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000008L});
17050        public static final BitSet FOLLOW_67_in_link_interwiki_uri3595 = new BitSet(new long[]{0x0000000000000002L});
17051        public static final BitSet FOLLOW_51_in_link_interwiki_uri3600 = new BitSet(new long[]{0x0010000000000000L});
17052        public static final BitSet FOLLOW_52_in_link_interwiki_uri3602 = new BitSet(new long[]{0x0002000000000000L});
17053        public static final BitSet FOLLOW_49_in_link_interwiki_uri3604 = new BitSet(new long[]{0x0010000000000000L});
17054        public static final BitSet FOLLOW_52_in_link_interwiki_uri3606 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000200L});
17055        public static final BitSet FOLLOW_73_in_link_interwiki_uri3608 = new BitSet(new long[]{0x0800000000000000L});
17056        public static final BitSet FOLLOW_59_in_link_interwiki_uri3610 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000008L});
17057        public static final BitSet FOLLOW_67_in_link_interwiki_uri3612 = new BitSet(new long[]{0x0010000000000000L});
17058        public static final BitSet FOLLOW_52_in_link_interwiki_uri3614 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000001L});
17059        public static final BitSet FOLLOW_64_in_link_interwiki_uri3616 = new BitSet(new long[]{0x0000000000000002L});
17060        public static final BitSet FOLLOW_79_in_link_interwiki_uri3621 = new BitSet(new long[]{0x0008000000000000L});
17061        public static final BitSet FOLLOW_51_in_link_interwiki_uri3623 = new BitSet(new long[]{0x0010000000000000L});
17062        public static final BitSet FOLLOW_52_in_link_interwiki_uri3625 = new BitSet(new long[]{0x0002000000000000L});
17063        public static final BitSet FOLLOW_49_in_link_interwiki_uri3627 = new BitSet(new long[]{0x0010000000000000L});
17064        public static final BitSet FOLLOW_52_in_link_interwiki_uri3629 = new BitSet(new long[]{0x0000000000000002L});
17065        public static final BitSet FOLLOW_set_in_link_interwiki_pagename3649 = new BitSet(new long[]{0xFFFFFFFFDFF77FF2L,0x000000000000FFFFL});
17066        public static final BitSet FOLLOW_link_descriptionpart_in_link_description3692 = new BitSet(new long[]{0xFFFFFFFFDE5F7FF2L,0x000000000000FFFFL});
17067        public static final BitSet FOLLOW_image_in_link_description3704 = new BitSet(new long[]{0xFFFFFFFFDE5F7FF2L,0x000000000000FFFFL});
17068        public static final BitSet FOLLOW_bold_markup_in_link_descriptionpart3729 = new BitSet(new long[]{0xFFFFFFFFDE1F7FF0L,0x000000000000FFFFL});
17069        public static final BitSet FOLLOW_onestar_in_link_descriptionpart3732 = new BitSet(new long[]{0xFFFFFFFFDE1D7FF0L,0x000000000000FFFFL});
17070        public static final BitSet FOLLOW_link_bold_descriptionpart_in_link_descriptionpart3740 = new BitSet(new long[]{0xFFFFFFFFDE1F7FF0L,0x000000000000FFFFL});
17071        public static final BitSet FOLLOW_onestar_in_link_descriptionpart3745 = new BitSet(new long[]{0xFFFFFFFFDE1F7FF0L,0x000000000000FFFFL});
17072        public static final BitSet FOLLOW_bold_markup_in_link_descriptionpart3755 = new BitSet(new long[]{0x0000000000000002L});
17073        public static final BitSet FOLLOW_ital_markup_in_link_descriptionpart3760 = new BitSet(new long[]{0xFFFFFFFFDE0F7FF0L,0x000000000000FFFFL});
17074        public static final BitSet FOLLOW_onestar_in_link_descriptionpart3763 = new BitSet(new long[]{0xFFFFFFFFDE0F7FF0L,0x000000000000FFFFL});
17075        public static final BitSet FOLLOW_link_ital_descriptionpart_in_link_descriptionpart3772 = new BitSet(new long[]{0xFFFFFFFFDE1F7FF0L,0x000000000000FFFFL});
17076        public static final BitSet FOLLOW_onestar_in_link_descriptionpart3777 = new BitSet(new long[]{0xFFFFFFFFDE1F7FF0L,0x000000000000FFFFL});
17077        public static final BitSet FOLLOW_ital_markup_in_link_descriptionpart3786 = new BitSet(new long[]{0x0000000000000002L});
17078        public static final BitSet FOLLOW_onestar_in_link_descriptionpart3791 = new BitSet(new long[]{0xFFFFFFFFDE0D7FF0L,0x000000000000FFFFL});
17079        public static final BitSet FOLLOW_link_descriptiontext_in_link_descriptionpart3800 = new BitSet(new long[]{0xFFFFFFFFDE0F7FF2L,0x000000000000FFFFL});
17080        public static final BitSet FOLLOW_onestar_in_link_descriptionpart3803 = new BitSet(new long[]{0xFFFFFFFFDE0D7FF2L,0x000000000000FFFFL});
17081        public static final BitSet FOLLOW_ital_markup_in_link_bold_descriptionpart3823 = new BitSet(new long[]{0xFFFFFFFFDE0F7FF0L,0x000000000000FFFFL});
17082        public static final BitSet FOLLOW_link_boldital_description_in_link_bold_descriptionpart3830 = new BitSet(new long[]{0x0000000000100000L});
17083        public static final BitSet FOLLOW_ital_markup_in_link_bold_descriptionpart3835 = new BitSet(new long[]{0x0000000000000002L});
17084        public static final BitSet FOLLOW_link_descriptiontext_in_link_bold_descriptionpart3844 = new BitSet(new long[]{0x0000000000000002L});
17085        public static final BitSet FOLLOW_bold_markup_in_link_ital_descriptionpart3860 = new BitSet(new long[]{0xFFFFFFFFDE0F7FF0L,0x000000000000FFFFL});
17086        public static final BitSet FOLLOW_link_boldital_description_in_link_ital_descriptionpart3867 = new BitSet(new long[]{0x0000000000020000L});
17087        public static final BitSet FOLLOW_bold_markup_in_link_ital_descriptionpart3870 = new BitSet(new long[]{0x0000000000000002L});
17088        public static final BitSet FOLLOW_link_descriptiontext_in_link_ital_descriptionpart3881 = new BitSet(new long[]{0x0000000000000002L});
17089        public static final BitSet FOLLOW_onestar_in_link_boldital_description3897 = new BitSet(new long[]{0xFFFFFFFFDE0D7FF0L,0x000000000000FFFFL});
17090        public static final BitSet FOLLOW_link_descriptiontext_in_link_boldital_description3906 = new BitSet(new long[]{0xFFFFFFFFDE0F7FF2L,0x000000000000FFFFL});
17091        public static final BitSet FOLLOW_onestar_in_link_boldital_description3909 = new BitSet(new long[]{0xFFFFFFFFDE0D7FF2L,0x000000000000FFFFL});
17092        public static final BitSet FOLLOW_link_descriptiontext_simple_in_link_descriptiontext3932 = new BitSet(new long[]{0x0000000000000002L});
17093        public static final BitSet FOLLOW_forced_linebreak_in_link_descriptiontext3942 = new BitSet(new long[]{0x0000000006000002L});
17094        public static final BitSet FOLLOW_escaped_in_link_descriptiontext3954 = new BitSet(new long[]{0x0000000006000002L});
17095        public static final BitSet FOLLOW_set_in_link_descriptiontext_simple3979 = new BitSet(new long[]{0xFFFFFFFFD80D7FF2L,0x000000000000FFFFL});
17096        public static final BitSet FOLLOW_set_in_link_uri4078 = new BitSet(new long[]{0xFFFFFFFFDFF77FF2L,0x000000000000FFFFL});
17097        public static final BitSet FOLLOW_image_open_markup_in_image4119 = new BitSet(new long[]{0xFFFFFFFFBFF77FF0L,0x000000000000FFFFL});
17098        public static final BitSet FOLLOW_image_uri_in_image4125 = new BitSet(new long[]{0x0000000040080000L});
17099        public static final BitSet FOLLOW_image_alternative_in_image4135 = new BitSet(new long[]{0x0000000040000000L});
17100        public static final BitSet FOLLOW_image_close_markup_in_image4144 = new BitSet(new long[]{0x0000000000000002L});
17101        public static final BitSet FOLLOW_set_in_image_uri4163 = new BitSet(new long[]{0xFFFFFFFFBFF77FF2L,0x000000000000FFFFL});
17102        public static final BitSet FOLLOW_image_alternative_markup_in_image_alternative4198 = new BitSet(new long[]{0xFFFFFFFFBE1F7FF0L,0x000000000000FFFFL});
17103        public static final BitSet FOLLOW_image_alternativepart_in_image_alternative4207 = new BitSet(new long[]{0xFFFFFFFFBE1F7FF2L,0x000000000000FFFFL});
17104        public static final BitSet FOLLOW_bold_markup_in_image_alternativepart4233 = new BitSet(new long[]{0x0000000000120000L});
17105        public static final BitSet FOLLOW_onestar_in_image_alternativepart4236 = new BitSet(new long[]{0xFFFFFFFFBE1F7FF0L,0x000000000000FFFFL});
17106        public static final BitSet FOLLOW_image_bold_alternativepart_in_image_alternativepart4245 = new BitSet(new long[]{0x0000000000120000L});
17107        public static final BitSet FOLLOW_onestar_in_image_alternativepart4250 = new BitSet(new long[]{0xFFFFFFFFBE1F7FF0L,0x000000000000FFFFL});
17108        public static final BitSet FOLLOW_bold_markup_in_image_alternativepart4257 = new BitSet(new long[]{0x0000000000000002L});
17109        public static final BitSet FOLLOW_ital_markup_in_image_alternativepart4264 = new BitSet(new long[]{0x0000000000020000L});
17110        public static final BitSet FOLLOW_onestar_in_image_alternativepart4267 = new BitSet(new long[]{0xFFFFFFFFBE0F7FF0L,0x000000000000FFFFL});
17111        public static final BitSet FOLLOW_image_ital_alternativepart_in_image_alternativepart4277 = new BitSet(new long[]{0x0000000000120000L});
17112        public static final BitSet FOLLOW_onestar_in_image_alternativepart4282 = new BitSet(new long[]{0xFFFFFFFFBE1F7FF0L,0x000000000000FFFFL});
17113        public static final BitSet FOLLOW_ital_markup_in_image_alternativepart4289 = new BitSet(new long[]{0x0000000000000002L});
17114        public static final BitSet FOLLOW_onestar_in_image_alternativepart4296 = new BitSet(new long[]{0xFFFFFFFFBE0D7FF0L,0x000000000000FFFFL});
17115        public static final BitSet FOLLOW_image_alternativetext_in_image_alternativepart4303 = new BitSet(new long[]{0xFFFFFFFFBE0F7FF2L,0x000000000000FFFFL});
17116        public static final BitSet FOLLOW_onestar_in_image_alternativepart4308 = new BitSet(new long[]{0xFFFFFFFFBE0D7FF2L,0x000000000000FFFFL});
17117        public static final BitSet FOLLOW_ital_markup_in_image_bold_alternativepart4334 = new BitSet(new long[]{0xFFFFFFFFDE0F7FF0L,0x000000000000FFFFL});
17118        public static final BitSet FOLLOW_link_boldital_description_in_image_bold_alternativepart4341 = new BitSet(new long[]{0x0000000000100000L});
17119        public static final BitSet FOLLOW_ital_markup_in_image_bold_alternativepart4346 = new BitSet(new long[]{0x0000000000000002L});
17120        public static final BitSet FOLLOW_onestar_in_image_bold_alternativepart4351 = new BitSet(new long[]{0xFFFFFFFFBE0D7FF0L,0x000000000000FFFFL});
17121        public static final BitSet FOLLOW_image_alternativetext_in_image_bold_alternativepart4360 = new BitSet(new long[]{0xFFFFFFFFBE0F7FF2L,0x000000000000FFFFL});
17122        public static final BitSet FOLLOW_onestar_in_image_bold_alternativepart4363 = new BitSet(new long[]{0xFFFFFFFFBE0D7FF2L,0x000000000000FFFFL});
17123        public static final BitSet FOLLOW_bold_markup_in_image_ital_alternativepart4391 = new BitSet(new long[]{0xFFFFFFFFDE0F7FF0L,0x000000000000FFFFL});
17124        public static final BitSet FOLLOW_link_boldital_description_in_image_ital_alternativepart4398 = new BitSet(new long[]{0x0000000000020000L});
17125        public static final BitSet FOLLOW_bold_markup_in_image_ital_alternativepart4403 = new BitSet(new long[]{0x0000000000000002L});
17126        public static final BitSet FOLLOW_onestar_in_image_ital_alternativepart4408 = new BitSet(new long[]{0xFFFFFFFFBE0D7FF0L,0x000000000000FFFFL});
17127        public static final BitSet FOLLOW_image_alternativetext_in_image_ital_alternativepart4417 = new BitSet(new long[]{0xFFFFFFFFBE0F7FF2L,0x000000000000FFFFL});
17128        public static final BitSet FOLLOW_onestar_in_image_ital_alternativepart4420 = new BitSet(new long[]{0xFFFFFFFFBE0D7FF2L,0x000000000000FFFFL});
17129        public static final BitSet FOLLOW_onestar_in_image_boldital_alternative4441 = new BitSet(new long[]{0xFFFFFFFFBE0D7FF0L,0x000000000000FFFFL});
17130        public static final BitSet FOLLOW_image_alternativetext_in_image_boldital_alternative4450 = new BitSet(new long[]{0xFFFFFFFFBE0F7FF2L,0x000000000000FFFFL});
17131        public static final BitSet FOLLOW_onestar_in_image_boldital_alternative4453 = new BitSet(new long[]{0xFFFFFFFFBE0D7FF2L,0x000000000000FFFFL});
17132        public static final BitSet FOLLOW_image_alternative_simple_text_in_image_alternativetext4475 = new BitSet(new long[]{0x0000000000000002L});
17133        public static final BitSet FOLLOW_forced_linebreak_in_image_alternativetext4483 = new BitSet(new long[]{0x0000000002000002L});
17134        public static final BitSet FOLLOW_set_in_image_alternative_simple_text4509 = new BitSet(new long[]{0xFFFFFFFFBC0D7FF2L,0x000000000000FFFFL});
17135        public static final BitSet FOLLOW_extension_markup_in_extension4601 = new BitSet(new long[]{0xFFFFFFFF7EFF7FF0L,0x000000000000FFFFL});
17136        public static final BitSet FOLLOW_extension_handler_in_extension4604 = new BitSet(new long[]{0x0000000080000000L});
17137        public static final BitSet FOLLOW_blanks_in_extension4607 = new BitSet(new long[]{0xFFFFFFFFFFFFFFF0L,0x000000000000FFFFL});
17138        public static final BitSet FOLLOW_extension_statement_in_extension4610 = new BitSet(new long[]{0x0000000001000000L});
17139        public static final BitSet FOLLOW_extension_markup_in_extension4614 = new BitSet(new long[]{0x0000000000000002L});
17140        public static final BitSet FOLLOW_set_in_extension_handler4625 = new BitSet(new long[]{0xFFFFFFFF7EFF7FF2L,0x000000000000FFFFL});
17141        public static final BitSet FOLLOW_escaped_in_extension_handler4658 = new BitSet(new long[]{0xFFFFFFFF7EFF7FF2L,0x000000000000FFFFL});
17142        public static final BitSet FOLLOW_set_in_extension_statement4672 = new BitSet(new long[]{0xFFFFFFFFFEFFFFF2L,0x000000000000FFFFL});
17143        public static final BitSet FOLLOW_escaped_in_extension_statement4693 = new BitSet(new long[]{0xFFFFFFFFFEFFFFF2L,0x000000000000FFFFL});
17144        public static final BitSet FOLLOW_TABLE_OF_CONTENTS_TEXT_in_table_of_contents4716 = new BitSet(new long[]{0x0000000000000002L});
17145        public static final BitSet FOLLOW_STAR_in_onestar4738 = new BitSet(new long[]{0x0000000000000002L});
17146        public static final BitSet FOLLOW_ESCAPE_in_escaped4759 = new BitSet(new long[]{0xFFFFFFFFFFFFFFF0L,0x000000000000FFFFL});
17147        public static final BitSet FOLLOW_newline_in_paragraph_separator4783 = new BitSet(new long[]{0x0000000000008002L});
17148        public static final BitSet FOLLOW_EOF_in_paragraph_separator4791 = new BitSet(new long[]{0x0000000000000002L});
17149        public static final BitSet FOLLOW_blanks_in_whitespaces4803 = new BitSet(new long[]{0x0000000080008002L});
17150        public static final BitSet FOLLOW_newline_in_whitespaces4807 = new BitSet(new long[]{0x0000000080008002L});
17151        public static final BitSet FOLLOW_BLANKS_in_blanks4820 = new BitSet(new long[]{0x0000000000000002L});
17152        public static final BitSet FOLLOW_newline_in_text_lineseparator4830 = new BitSet(new long[]{0x0000000080000002L});
17153        public static final BitSet FOLLOW_blanks_in_text_lineseparator4835 = new BitSet(new long[]{0x0000000000000002L});
17154        public static final BitSet FOLLOW_EOF_in_text_lineseparator4843 = new BitSet(new long[]{0x0000000000000002L});
17155        public static final BitSet FOLLOW_NEWLINE_in_newline4853 = new BitSet(new long[]{0x0000000000000002L});
17156        public static final BitSet FOLLOW_STAR_in_bold_markup4863 = new BitSet(new long[]{0x0000000000020000L});
17157        public static final BitSet FOLLOW_STAR_in_bold_markup4866 = new BitSet(new long[]{0x0000000000000002L});
17158        public static final BitSet FOLLOW_ITAL_in_ital_markup4876 = new BitSet(new long[]{0x0000000000000002L});
17159        public static final BitSet FOLLOW_EQUAL_in_heading_markup4886 = new BitSet(new long[]{0x0000000000000002L});
17160        public static final BitSet FOLLOW_POUND_in_list_ordelem_markup4896 = new BitSet(new long[]{0x0000000000000002L});
17161        public static final BitSet FOLLOW_STAR_in_list_unordelem_markup4906 = new BitSet(new long[]{0x0000000000000002L});
17162        public static final BitSet FOLLOW_newline_in_list_elemseparator4916 = new BitSet(new long[]{0x0000000080000002L});
17163        public static final BitSet FOLLOW_blanks_in_list_elemseparator4921 = new BitSet(new long[]{0x0000000000000002L});
17164        public static final BitSet FOLLOW_EOF_in_list_elemseparator4929 = new BitSet(new long[]{0x0000000000000002L});
17165        public static final BitSet FOLLOW_newline_in_end_of_list4939 = new BitSet(new long[]{0x0000000000000002L});
17166        public static final BitSet FOLLOW_EOF_in_end_of_list4944 = new BitSet(new long[]{0x0000000000000002L});
17167        public static final BitSet FOLLOW_PIPE_in_table_cell_markup4954 = new BitSet(new long[]{0x0000000000000002L});
17168        public static final BitSet FOLLOW_PIPE_in_table_headercell_markup4964 = new BitSet(new long[]{0x0000000000040000L});
17169        public static final BitSet FOLLOW_EQUAL_in_table_headercell_markup4967 = new BitSet(new long[]{0x0000000000000002L});
17170        public static final BitSet FOLLOW_newline_in_table_rowseparator4977 = new BitSet(new long[]{0x0000000000000002L});
17171        public static final BitSet FOLLOW_EOF_in_table_rowseparator4982 = new BitSet(new long[]{0x0000000000000002L});
17172        public static final BitSet FOLLOW_NOWIKI_OPEN_in_nowiki_open_markup4992 = new BitSet(new long[]{0x0000000000000002L});
17173        public static final BitSet FOLLOW_NOWIKI_CLOSE_in_nowiki_close_markup5002 = new BitSet(new long[]{0x0000000000000002L});
17174        public static final BitSet FOLLOW_DASH_in_horizontalrule_markup5012 = new BitSet(new long[]{0x0000000200000000L});
17175        public static final BitSet FOLLOW_DASH_in_horizontalrule_markup5015 = new BitSet(new long[]{0x0000000200000000L});
17176        public static final BitSet FOLLOW_DASH_in_horizontalrule_markup5018 = new BitSet(new long[]{0x0000000200000000L});
17177        public static final BitSet FOLLOW_DASH_in_horizontalrule_markup5021 = new BitSet(new long[]{0x0000000000000002L});
17178        public static final BitSet FOLLOW_LINK_OPEN_in_link_open_markup5031 = new BitSet(new long[]{0x0000000000000002L});
17179        public static final BitSet FOLLOW_LINK_CLOSE_in_link_close_markup5041 = new BitSet(new long[]{0x0000000000000002L});
17180        public static final BitSet FOLLOW_PIPE_in_link_description_markup5051 = new BitSet(new long[]{0x0000000000000002L});
17181        public static final BitSet FOLLOW_IMAGE_OPEN_in_image_open_markup5061 = new BitSet(new long[]{0x0000000000000002L});
17182        public static final BitSet FOLLOW_IMAGE_CLOSE_in_image_close_markup5071 = new BitSet(new long[]{0x0000000000000002L});
17183        public static final BitSet FOLLOW_PIPE_in_image_alternative_markup5081 = new BitSet(new long[]{0x0000000000000002L});
17184        public static final BitSet FOLLOW_EXTENSION_in_extension_markup5091 = new BitSet(new long[]{0x0000000000000002L});
17185        public static final BitSet FOLLOW_FORCED_LINEBREAK_in_forced_linebreak5101 = new BitSet(new long[]{0x0000000000000002L});
17186        public static final BitSet FOLLOW_NOWIKI_OPEN_in_synpred1317 = new BitSet(new long[]{0xFFFFFFFFFFFF7FF0L,0x000000000000FFFFL});
17187        public static final BitSet FOLLOW_set_in_synpred1320 = new BitSet(new long[]{0x0000000000000002L});
17188    
17189    }