]> git.wincent.com - wikitext.git/blob - ext/wikitext_ragel.c
Merge branch 'maint'
[wikitext.git] / ext / wikitext_ragel.c
1 #line 1 "wikitext_ragel.rl"
2 // Copyright 2008 Wincent Colaiuta
3 // This program is free software: you can redistribute it and/or modify
4 // it under the terms of the GNU General Public License as published by
5 // the Free Software Foundation, either version 3 of the License, or
6 // (at your option) any later version.
7 //
8 // This program is distributed in the hope that it will be useful,
9 // but WITHOUT ANY WARRANTY; without even the implied warranty of
10 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11 // GNU General Public License for more details.
12 //
13 // You should have received a copy of the GNU General Public License
14 // along with this program.  If not, see <http://www.gnu.org/licenses/>.
15
16 //----------------------------------------------------------------------//
17 // NOTE: wikitext_ragel.c is generated from wikitext_ragel.rl, so       //
18 //       if you make changes to the former they will be overwritten.    //
19 //       You should perform all your edits in wikitext_ragel.rl.        //
20 //----------------------------------------------------------------------//
21
22 #include "wikitext_ragel.h"
23 #include "wikitext.h"
24 #include <stdio.h>
25
26 #define EMIT(t)     do { out->type = t; out->stop = p + 1; out->column_stop += (out->stop - out->start); } while (0)
27 #define MARK()      do { mark = p; } while (0)
28 #define REWIND()    do { p = mark; } while (0)
29 #define AT_END()    (p + 1 == pe)
30 #define DISTANCE()  (p + 1 - ts)
31 #define NEXT_CHAR() (*(p + 1))
32
33
34 #line 35 "wikitext_ragel.c"
35 static const int wikitext_start = 94;
36 static const int wikitext_first_final = 94;
37 static const int wikitext_error = 0;
38
39 static const int wikitext_en_main = 94;
40
41 #line 455 "wikitext_ragel.rl"
42
43
44 // for now we use the scanner as a tokenizer that returns one token at a time, just like ANTLR
45 // ultimately we could look at embedding all of the transformation inside the scanner itself (combined scanner/parser)
46 // pass in the last token because that's useful for the scanner to know
47 // p data pointer (required by Ragel machine); overriden with contents of last_token if supplied
48 // pe data end pointer (required by Ragel machine)
49 void next_token(token_t *out, token_t *last_token, char *p, char *pe)
50 {
51     int last_token_type = NO_TOKEN;
52     if (last_token)
53     {
54         last_token_type     = last_token->type;
55         p = last_token->stop;
56         out->line_start     = out->line_stop    = last_token->line_stop;
57         out->column_start   = out->column_stop  = last_token->column_stop;
58     }
59     else
60     {
61         out->line_start     = 1;
62         out->column_start   = 1;
63         out->line_stop      = 1;
64         out->column_stop    = 1;
65     }
66     out->type       = NO_TOKEN;
67     out->code_point = 0;
68     out->start      = p;
69     if (p == pe)
70     {
71         // all done, have reached end of input
72         out->stop  = p;
73         out->type  = END_OF_FILE;
74         return;
75     }
76
77     char    *mark;      // for manual backtracking
78     char    *eof = pe;  // required for backtracking (longest match determination)
79     int     cs;         // current state (standard Ragel)
80     char    *ts;        // token start (scanner)
81     char    *te;        // token end (scanner)
82     int     act;        // identity of last patterned matched (scanner)
83     
84 #line 85 "wikitext_ragel.c"
85         {
86         cs = wikitext_start;
87         ts = 0;
88         te = 0;
89         act = 0;
90         }
91 #line 497 "wikitext_ragel.rl"
92     
93 #line 94 "wikitext_ragel.c"
94         {
95         if ( p == pe )
96                 goto _test_eof;
97         switch ( cs )
98         {
99 tr0:
100 #line 46 "wikitext_ragel.rl"
101         {
102         out->code_point = ((uint32_t)(*(p - 1)) & 0x1f) << 6 |
103             (*p & 0x3f);
104     }
105 #line 446 "wikitext_ragel.rl"
106         {te = p+1;{
107             EMIT(DEFAULT);
108             out->column_stop = out->column_start + 1;
109             {p++; cs = 94; goto _out;}
110         }}
111         goto st94;
112 tr3:
113 #line 52 "wikitext_ragel.rl"
114         {
115         out->code_point = ((uint32_t)(*(p - 2)) & 0x0f) << 12 |
116             ((uint32_t)(*(p - 1)) & 0x3f) << 6 |
117             (*p & 0x3f);
118     }
119 #line 446 "wikitext_ragel.rl"
120         {te = p+1;{
121             EMIT(DEFAULT);
122             out->column_stop = out->column_start + 1;
123             {p++; cs = 94; goto _out;}
124         }}
125         goto st94;
126 tr6:
127 #line 59 "wikitext_ragel.rl"
128         {
129         out->code_point = ((uint32_t)(*(p - 3)) & 0x07) << 18 |
130             ((uint32_t)(*(p - 2)) & 0x3f) << 12 |
131             ((uint32_t)(*(p - 1)) & 0x3f) << 6 |
132             (*p & 0x3f);
133     }
134 #line 446 "wikitext_ragel.rl"
135         {te = p+1;{
136             EMIT(DEFAULT);
137             out->column_stop = out->column_start + 1;
138             {p++; cs = 94; goto _out;}
139         }}
140         goto st94;
141 tr7:
142 #line 359 "wikitext_ragel.rl"
143         {{p = ((te))-1;}{
144             EMIT(AMP);
145             {p++; cs = 94; goto _out;}
146         }}
147         goto st94;
148 tr10:
149 #line 347 "wikitext_ragel.rl"
150         {te = p+1;{
151             EMIT(DECIMAL_ENTITY);
152             {p++; cs = 94; goto _out;}
153         }}
154         goto st94;
155 tr12:
156 #line 341 "wikitext_ragel.rl"
157         {te = p+1;{
158             EMIT(HEX_ENTITY);
159             {p++; cs = 94; goto _out;}
160         }}
161         goto st94;
162 tr14:
163 #line 335 "wikitext_ragel.rl"
164         {te = p+1;{
165             EMIT(NAMED_ENTITY);
166             {p++; cs = 94; goto _out;}
167         }}
168         goto st94;
169 tr18:
170 #line 329 "wikitext_ragel.rl"
171         {te = p+1;{
172             EMIT(AMP_ENTITY);
173             {p++; cs = 94; goto _out;}
174         }}
175         goto st94;
176 tr22:
177 #line 323 "wikitext_ragel.rl"
178         {te = p+1;{
179             EMIT(QUOT_ENTITY);
180             {p++; cs = 94; goto _out;}
181         }}
182         goto st94;
183 tr23:
184 #line 1 "wikitext_ragel.rl"
185         {       switch( act ) {
186         case 20:
187         {{p = ((te))-1;}
188             EMIT(URI);
189             {p++; cs = 94; goto _out;}
190         }
191         break;
192         case 21:
193         {{p = ((te))-1;}
194             EMIT(MAIL);
195             {p++; cs = 94; goto _out;}
196         }
197         break;
198         case 41:
199         {{p = ((te))-1;}
200             EMIT(SPECIAL_URI_CHARS);
201             {p++; cs = 94; goto _out;}
202         }
203         break;
204         case 42:
205         {{p = ((te))-1;}
206             EMIT(PRINTABLE);
207             {p++; cs = 94; goto _out;}
208         }
209         break;
210         default: break;
211         }
212         }
213         goto st94;
214 tr30:
215 #line 365 "wikitext_ragel.rl"
216         {{p = ((te))-1;}{
217             EMIT(LESS);
218             {p++; cs = 94; goto _out;}
219         }}
220         goto st94;
221 tr46:
222 #line 110 "wikitext_ragel.rl"
223         {te = p+1;{
224             EMIT(BLOCKQUOTE_END);
225             {p++; cs = 94; goto _out;}
226         }}
227         goto st94;
228 tr48:
229 #line 152 "wikitext_ragel.rl"
230         {te = p+1;{
231             EMIT(EM_END);
232             {p++; cs = 94; goto _out;}
233         }}
234         goto st94;
235 tr54:
236 #line 86 "wikitext_ragel.rl"
237         {te = p+1;{
238             EMIT(NO_WIKI_END);
239             {p++; cs = 94; goto _out;}
240         }}
241         goto st94;
242 tr57:
243 #line 98 "wikitext_ragel.rl"
244         {te = p+1;{
245             EMIT(PRE_END);
246             {p++; cs = 94; goto _out;}
247         }}
248         goto st94;
249 tr63:
250 #line 140 "wikitext_ragel.rl"
251         {te = p+1;{
252             EMIT(STRONG_END);
253             {p++; cs = 94; goto _out;}
254         }}
255         goto st94;
256 tr65:
257 #line 170 "wikitext_ragel.rl"
258         {te = p+1;{
259             EMIT(TT_END);
260             {p++; cs = 94; goto _out;}
261         }}
262         goto st94;
263 tr75:
264 #line 104 "wikitext_ragel.rl"
265         {te = p+1;{
266             EMIT(BLOCKQUOTE_START);
267             {p++; cs = 94; goto _out;}
268         }}
269         goto st94;
270 tr77:
271 #line 146 "wikitext_ragel.rl"
272         {te = p+1;{
273             EMIT(EM_START);
274             {p++; cs = 94; goto _out;}
275         }}
276         goto st94;
277 tr83:
278 #line 80 "wikitext_ragel.rl"
279         {te = p+1;{
280             EMIT(NO_WIKI_START);
281             {p++; cs = 94; goto _out;}
282         }}
283         goto st94;
284 tr86:
285 #line 92 "wikitext_ragel.rl"
286         {te = p+1;{
287             EMIT(PRE_START);
288             {p++; cs = 94; goto _out;}
289         }}
290         goto st94;
291 tr92:
292 #line 134 "wikitext_ragel.rl"
293         {te = p+1;{
294             EMIT(STRONG_START);
295             {p++; cs = 94; goto _out;}
296         }}
297         goto st94;
298 tr94:
299 #line 164 "wikitext_ragel.rl"
300         {te = p+1;{
301             EMIT(TT_START);
302             {p++; cs = 94; goto _out;}
303         }}
304         goto st94;
305 tr95:
306 #line 426 "wikitext_ragel.rl"
307         {{p = ((te))-1;}{
308             EMIT(PRINTABLE);
309             {p++; cs = 94; goto _out;}
310         }}
311         goto st94;
312 tr99:
313 #line 281 "wikitext_ragel.rl"
314         {{p = ((te))-1;}{
315             EMIT(URI);
316             {p++; cs = 94; goto _out;}
317         }}
318         goto st94;
319 tr110:
320 #line 41 "wikitext_ragel.rl"
321         {
322         out->code_point = *p & 0x7f;
323     }
324 #line 446 "wikitext_ragel.rl"
325         {te = p+1;{
326             EMIT(DEFAULT);
327             out->column_stop = out->column_start + 1;
328             {p++; cs = 94; goto _out;}
329         }}
330         goto st94;
331 tr111:
332 #line 401 "wikitext_ragel.rl"
333         {te = p+1;{
334             EMIT(CRLF);
335             out->column_stop = 1;
336             out->line_stop++;
337             {p++; cs = 94; goto _out;}
338         }}
339 #line 41 "wikitext_ragel.rl"
340         {
341         out->code_point = *p & 0x7f;
342     }
343         goto st94;
344 tr115:
345 #line 353 "wikitext_ragel.rl"
346         {te = p+1;{
347             EMIT(QUOT);
348             {p++; cs = 94; goto _out;}
349         }}
350         goto st94;
351 tr116:
352 #line 202 "wikitext_ragel.rl"
353         {te = p+1;{
354             if (out->column_start == 1              ||
355                 last_token_type == OL               ||
356                 last_token_type == UL               ||
357                 last_token_type == BLOCKQUOTE       ||
358                 last_token_type == BLOCKQUOTE_START)
359                 EMIT(OL);
360             else
361                 EMIT(PRINTABLE);
362             {p++; cs = 94; goto _out;}
363         }}
364         goto st94;
365 tr120:
366 #line 215 "wikitext_ragel.rl"
367         {te = p+1;{
368             if (out->column_start == 1              ||
369                 last_token_type == OL               ||
370                 last_token_type == UL               ||
371                 last_token_type == BLOCKQUOTE       ||
372                 last_token_type == BLOCKQUOTE_START)
373                 EMIT(UL);
374             else
375                 EMIT(PRINTABLE);
376             {p++; cs = 94; goto _out;}
377         }}
378         goto st94;
379 tr132:
380 #line 158 "wikitext_ragel.rl"
381         {te = p+1;{
382             EMIT(TT);
383             {p++; cs = 94; goto _out;}
384         }}
385         goto st94;
386 tr134:
387 #line 305 "wikitext_ragel.rl"
388         {te = p+1;{
389             EMIT(SEPARATOR);
390             {p++; cs = 94; goto _out;}
391         }}
392         goto st94;
393 tr136:
394 #line 401 "wikitext_ragel.rl"
395         {te = p;p--;{
396             EMIT(CRLF);
397             out->column_stop = 1;
398             out->line_stop++;
399             {p++; cs = 94; goto _out;}
400         }}
401         goto st94;
402 tr137:
403 #line 401 "wikitext_ragel.rl"
404         {te = p+1;{
405             EMIT(CRLF);
406             out->column_stop = 1;
407             out->line_stop++;
408             {p++; cs = 94; goto _out;}
409         }}
410         goto st94;
411 tr138:
412 #line 190 "wikitext_ragel.rl"
413         {te = p;p--;{
414             if (out->column_start == 1 || last_token_type == BLOCKQUOTE)
415             {
416                 REWIND();
417                 EMIT(PRE);
418             }
419             else
420                 EMIT(SPACE);
421             {p++; cs = 94; goto _out;}
422         }}
423         goto st94;
424 tr140:
425 #line 414 "wikitext_ragel.rl"
426         {te = p;p--;{
427             EMIT(SPECIAL_URI_CHARS);
428             {p++; cs = 94; goto _out;}
429         }}
430         goto st94;
431 tr141:
432 #line 426 "wikitext_ragel.rl"
433         {te = p;p--;{
434             EMIT(PRINTABLE);
435             {p++; cs = 94; goto _out;}
436         }}
437         goto st94;
438 tr142:
439 #line 359 "wikitext_ragel.rl"
440         {te = p;p--;{
441             EMIT(AMP);
442             {p++; cs = 94; goto _out;}
443         }}
444         goto st94;
445 tr146:
446 #line 116 "wikitext_ragel.rl"
447         {te = p;p--;{
448             if (DISTANCE() == 5)
449                 EMIT(STRONG_EM);
450             else if (DISTANCE() == 4)
451             {
452                 p--;
453                 EMIT(STRONG_EM);
454             }
455             else if (DISTANCE() == 3)
456                 EMIT(STRONG);
457             else if (DISTANCE() == 2)
458                 EMIT(EM);
459             else
460                 EMIT(PRINTABLE);
461             {p++; cs = 94; goto _out;}
462         }}
463         goto st94;
464 tr150:
465 #line 116 "wikitext_ragel.rl"
466         {te = p+1;{
467             if (DISTANCE() == 5)
468                 EMIT(STRONG_EM);
469             else if (DISTANCE() == 4)
470             {
471                 p--;
472                 EMIT(STRONG_EM);
473             }
474             else if (DISTANCE() == 3)
475                 EMIT(STRONG);
476             else if (DISTANCE() == 2)
477                 EMIT(EM);
478             else
479                 EMIT(PRINTABLE);
480             {p++; cs = 94; goto _out;}
481         }}
482         goto st94;
483 tr152:
484 #line 287 "wikitext_ragel.rl"
485         {te = p;p--;{
486             EMIT(MAIL);
487             {p++; cs = 94; goto _out;}
488         }}
489         goto st94;
490 tr157:
491 #line 365 "wikitext_ragel.rl"
492         {te = p;p--;{
493             EMIT(LESS);
494             {p++; cs = 94; goto _out;}
495         }}
496         goto st94;
497 tr165:
498 #line 228 "wikitext_ragel.rl"
499         {te = p;p--;{
500             if (out->column_start == 1 || last_token_type == BLOCKQUOTE || last_token_type == BLOCKQUOTE_START)
501             {
502                 REWIND();
503                 if (DISTANCE() == 1)
504                     EMIT(H1_START);
505                 else if (DISTANCE() == 2)
506                     EMIT(H2_START);
507                 else if (DISTANCE() == 3)
508                     EMIT(H3_START);
509                 else if (DISTANCE() == 4)
510                     EMIT(H4_START);
511                 else if (DISTANCE() == 5)
512                     EMIT(H5_START);
513                 else if (DISTANCE() == 6)
514                     EMIT(H6_START);
515                 else if (DISTANCE() > 6)
516                 {
517                     p = ts + 6;
518                     EMIT(H6_START);
519                 }
520             }
521             else if (AT_END() || NEXT_CHAR() == '\n' || NEXT_CHAR() == '\r')
522             {
523                 REWIND();
524                 if (DISTANCE() == 1)
525                     EMIT(H1_END);
526                 else if (DISTANCE() == 2)
527                     EMIT(H2_END);
528                 else if (DISTANCE() == 3)
529                     EMIT(H3_END);
530                 else if (DISTANCE() == 4)
531                     EMIT(H4_END);
532                 else if (DISTANCE() == 5)
533                     EMIT(H5_END);
534                 else if (DISTANCE() == 6)
535                     EMIT(H6_END);
536                 else if (DISTANCE() > 6)
537                 {
538                     p -= 6; // will scan the H6 on the next scan
539                     EMIT(PRINTABLE);
540                 }
541             }
542             else
543             {
544                 // note that a H*_END token will never match before a BLOCKQUOTE_END
545                 REWIND();
546                 EMIT(PRINTABLE);
547             }
548             {p++; cs = 94; goto _out;}
549         }}
550         goto st94;
551 tr167:
552 #line 177 "wikitext_ragel.rl"
553         {te = p;p--;{
554             if (out->column_start == 1 || last_token_type == BLOCKQUOTE)
555                 EMIT(BLOCKQUOTE);
556             else
557             {
558                 REWIND();
559                 EMIT(GREATER);
560             }
561             {p++; cs = 94; goto _out;}
562         }}
563         goto st94;
564 tr168:
565 #line 177 "wikitext_ragel.rl"
566         {te = p+1;{
567             if (out->column_start == 1 || last_token_type == BLOCKQUOTE)
568                 EMIT(BLOCKQUOTE);
569             else
570             {
571                 REWIND();
572                 EMIT(GREATER);
573             }
574             {p++; cs = 94; goto _out;}
575         }}
576         goto st94;
577 tr172:
578 #line 281 "wikitext_ragel.rl"
579         {te = p;p--;{
580             EMIT(URI);
581             {p++; cs = 94; goto _out;}
582         }}
583         goto st94;
584 tr186:
585 #line 311 "wikitext_ragel.rl"
586         {te = p;p--;{
587             EMIT(EXT_LINK_START);
588             {p++; cs = 94; goto _out;}
589         }}
590         goto st94;
591 tr187:
592 #line 293 "wikitext_ragel.rl"
593         {te = p+1;{
594             EMIT(LINK_START);
595             {p++; cs = 94; goto _out;}
596         }}
597         goto st94;
598 tr188:
599 #line 317 "wikitext_ragel.rl"
600         {te = p;p--;{
601             EMIT(EXT_LINK_END);
602             {p++; cs = 94; goto _out;}
603         }}
604         goto st94;
605 tr189:
606 #line 299 "wikitext_ragel.rl"
607         {te = p+1;{
608             EMIT(LINK_END);
609             {p++; cs = 94; goto _out;}
610         }}
611         goto st94;
612 tr190:
613 #line 389 "wikitext_ragel.rl"
614         {te = p;p--;{
615             EMIT(LEFT_CURLY);
616             {p++; cs = 94; goto _out;}
617         }}
618         goto st94;
619 tr191:
620 #line 377 "wikitext_ragel.rl"
621         {te = p+1;{
622             EMIT(IMG_START);
623             {p++; cs = 94; goto _out;}
624         }}
625         goto st94;
626 tr192:
627 #line 395 "wikitext_ragel.rl"
628         {te = p;p--;{
629             EMIT(RIGHT_CURLY);
630             {p++; cs = 94; goto _out;}
631         }}
632         goto st94;
633 tr193:
634 #line 383 "wikitext_ragel.rl"
635         {te = p+1;{
636             EMIT(IMG_END);
637             {p++; cs = 94; goto _out;}
638         }}
639         goto st94;
640 st94:
641 #line 1 "wikitext_ragel.rl"
642         {ts = 0;}
643         if ( ++p == pe )
644                 goto _test_eof94;
645 case 94:
646 #line 1 "wikitext_ragel.rl"
647         {ts = p;}
648 #line 649 "wikitext_ragel.c"
649         switch( (*p) ) {
650                 case 10: goto tr111;
651                 case 13: goto tr112;
652                 case 32: goto tr113;
653                 case 33: goto st97;
654                 case 34: goto tr115;
655                 case 35: goto tr116;
656                 case 38: goto tr118;
657                 case 39: goto st100;
658                 case 42: goto tr120;
659                 case 43: goto st98;
660                 case 46: goto tr122;
661                 case 47: goto st98;
662                 case 60: goto tr123;
663                 case 61: goto tr124;
664                 case 62: goto tr125;
665                 case 64: goto st98;
666                 case 70: goto tr126;
667                 case 72: goto tr127;
668                 case 77: goto tr128;
669                 case 83: goto tr129;
670                 case 91: goto st136;
671                 case 92: goto st98;
672                 case 93: goto st137;
673                 case 94: goto st98;
674                 case 96: goto tr132;
675                 case 102: goto tr126;
676                 case 104: goto tr127;
677                 case 109: goto tr128;
678                 case 115: goto tr129;
679                 case 123: goto st138;
680                 case 124: goto tr134;
681                 case 125: goto st139;
682                 case 126: goto st98;
683                 case 127: goto tr110;
684         }
685         if ( (*p) < 36 ) {
686                 if ( (*p) < -32 ) {
687                         if ( -62 <= (*p) && (*p) <= -33 )
688                                 goto st1;
689                 } else if ( (*p) > -17 ) {
690                         if ( (*p) > -12 ) {
691                                 if ( 1 <= (*p) && (*p) <= 31 )
692                                         goto tr110;
693                         } else if ( (*p) >= -16 )
694                                 goto st4;
695                 } else
696                         goto st2;
697         } else if ( (*p) > 37 ) {
698                 if ( (*p) < 45 ) {
699                         if ( 40 <= (*p) && (*p) <= 44 )
700                                 goto st97;
701                 } else if ( (*p) > 57 ) {
702                         if ( (*p) > 63 ) {
703                                 if ( 65 <= (*p) && (*p) <= 122 )
704                                         goto tr121;
705                         } else if ( (*p) >= 58 )
706                                 goto st97;
707                 } else
708                         goto tr121;
709         } else
710                 goto st98;
711         goto st0;
712 st0:
713 cs = 0;
714         goto _out;
715 st1:
716         if ( ++p == pe )
717                 goto _test_eof1;
718 case 1:
719         if ( (*p) <= -65 )
720                 goto tr0;
721         goto st0;
722 st2:
723         if ( ++p == pe )
724                 goto _test_eof2;
725 case 2:
726         if ( (*p) <= -65 )
727                 goto st3;
728         goto st0;
729 st3:
730         if ( ++p == pe )
731                 goto _test_eof3;
732 case 3:
733         if ( (*p) <= -65 )
734                 goto tr3;
735         goto st0;
736 st4:
737         if ( ++p == pe )
738                 goto _test_eof4;
739 case 4:
740         if ( (*p) <= -65 )
741                 goto st5;
742         goto st0;
743 st5:
744         if ( ++p == pe )
745                 goto _test_eof5;
746 case 5:
747         if ( (*p) <= -65 )
748                 goto st6;
749         goto st0;
750 st6:
751         if ( ++p == pe )
752                 goto _test_eof6;
753 case 6:
754         if ( (*p) <= -65 )
755                 goto tr6;
756         goto st0;
757 tr112:
758 #line 41 "wikitext_ragel.rl"
759         {
760         out->code_point = *p & 0x7f;
761     }
762         goto st95;
763 st95:
764         if ( ++p == pe )
765                 goto _test_eof95;
766 case 95:
767 #line 768 "wikitext_ragel.c"
768         if ( (*p) == 10 )
769                 goto tr137;
770         goto tr136;
771 tr113:
772 #line 36 "wikitext_ragel.rl"
773         {
774         MARK();
775     }
776         goto st96;
777 st96:
778         if ( ++p == pe )
779                 goto _test_eof96;
780 case 96:
781 #line 782 "wikitext_ragel.c"
782         if ( (*p) == 32 )
783                 goto st96;
784         goto tr138;
785 st97:
786         if ( ++p == pe )
787                 goto _test_eof97;
788 case 97:
789         switch( (*p) ) {
790                 case 33: goto st97;
791                 case 44: goto st97;
792                 case 46: goto st97;
793                 case 63: goto st97;
794         }
795         if ( (*p) > 41 ) {
796                 if ( 58 <= (*p) && (*p) <= 59 )
797                         goto st97;
798         } else if ( (*p) >= 40 )
799                 goto st97;
800         goto tr140;
801 st98:
802         if ( ++p == pe )
803                 goto _test_eof98;
804 case 98:
805         switch( (*p) ) {
806                 case 43: goto st98;
807                 case 45: goto st98;
808                 case 92: goto st98;
809                 case 126: goto st98;
810         }
811         if ( (*p) < 64 ) {
812                 if ( (*p) > 37 ) {
813                         if ( 47 <= (*p) && (*p) <= 57 )
814                                 goto st98;
815                 } else if ( (*p) >= 36 )
816                         goto st98;
817         } else if ( (*p) > 90 ) {
818                 if ( (*p) > 95 ) {
819                         if ( 97 <= (*p) && (*p) <= 122 )
820                                 goto st98;
821                 } else if ( (*p) >= 94 )
822                         goto st98;
823         } else
824                 goto st98;
825         goto tr141;
826 tr118:
827 #line 1 "wikitext_ragel.rl"
828         {te = p+1;}
829         goto st99;
830 st99:
831         if ( ++p == pe )
832                 goto _test_eof99;
833 case 99:
834 #line 835 "wikitext_ragel.c"
835         switch( (*p) ) {
836                 case 35: goto st7;
837                 case 97: goto st13;
838                 case 113: goto st16;
839         }
840         if ( (*p) > 90 ) {
841                 if ( 98 <= (*p) && (*p) <= 122 )
842                         goto st11;
843         } else if ( (*p) >= 65 )
844                 goto st11;
845         goto tr142;
846 st7:
847         if ( ++p == pe )
848                 goto _test_eof7;
849 case 7:
850         switch( (*p) ) {
851                 case 88: goto st9;
852                 case 120: goto st9;
853         }
854         if ( 48 <= (*p) && (*p) <= 57 )
855                 goto st8;
856         goto tr7;
857 st8:
858         if ( ++p == pe )
859                 goto _test_eof8;
860 case 8:
861         if ( (*p) == 59 )
862                 goto tr10;
863         if ( 48 <= (*p) && (*p) <= 57 )
864                 goto st8;
865         goto tr7;
866 st9:
867         if ( ++p == pe )
868                 goto _test_eof9;
869 case 9:
870         if ( (*p) < 65 ) {
871                 if ( 48 <= (*p) && (*p) <= 57 )
872                         goto st10;
873         } else if ( (*p) > 70 ) {
874                 if ( 97 <= (*p) && (*p) <= 102 )
875                         goto st10;
876         } else
877                 goto st10;
878         goto tr7;
879 st10:
880         if ( ++p == pe )
881                 goto _test_eof10;
882 case 10:
883         if ( (*p) == 59 )
884                 goto tr12;
885         if ( (*p) < 65 ) {
886                 if ( 48 <= (*p) && (*p) <= 57 )
887                         goto st10;
888         } else if ( (*p) > 70 ) {
889                 if ( 97 <= (*p) && (*p) <= 102 )
890                         goto st10;
891         } else
892                 goto st10;
893         goto tr7;
894 st11:
895         if ( ++p == pe )
896                 goto _test_eof11;
897 case 11:
898         if ( (*p) == 59 )
899                 goto tr14;
900         if ( (*p) < 65 ) {
901                 if ( 48 <= (*p) && (*p) <= 57 )
902                         goto st12;
903         } else if ( (*p) > 90 ) {
904                 if ( 97 <= (*p) && (*p) <= 122 )
905                         goto st11;
906         } else
907                 goto st11;
908         goto tr7;
909 st12:
910         if ( ++p == pe )
911                 goto _test_eof12;
912 case 12:
913         if ( (*p) == 59 )
914                 goto tr14;
915         if ( 48 <= (*p) && (*p) <= 57 )
916                 goto st12;
917         goto tr7;
918 st13:
919         if ( ++p == pe )
920                 goto _test_eof13;
921 case 13:
922         switch( (*p) ) {
923                 case 59: goto tr14;
924                 case 109: goto st14;
925         }
926         if ( (*p) < 65 ) {
927                 if ( 48 <= (*p) && (*p) <= 57 )
928                         goto st12;
929         } else if ( (*p) > 90 ) {
930                 if ( 97 <= (*p) && (*p) <= 122 )
931                         goto st11;
932         } else
933                 goto st11;
934         goto tr7;
935 st14:
936         if ( ++p == pe )
937                 goto _test_eof14;
938 case 14:
939         switch( (*p) ) {
940                 case 59: goto tr14;
941                 case 112: goto st15;
942         }
943         if ( (*p) < 65 ) {
944                 if ( 48 <= (*p) && (*p) <= 57 )
945                         goto st12;
946         } else if ( (*p) > 90 ) {
947                 if ( 97 <= (*p) && (*p) <= 122 )
948                         goto st11;
949         } else
950                 goto st11;
951         goto tr7;
952 st15:
953         if ( ++p == pe )
954                 goto _test_eof15;
955 case 15:
956         if ( (*p) == 59 )
957                 goto tr18;
958         if ( (*p) < 65 ) {
959                 if ( 48 <= (*p) && (*p) <= 57 )
960                         goto st12;
961         } else if ( (*p) > 90 ) {
962                 if ( 97 <= (*p) && (*p) <= 122 )
963                         goto st11;
964         } else
965                 goto st11;
966         goto tr7;
967 st16:
968         if ( ++p == pe )
969                 goto _test_eof16;
970 case 16:
971         switch( (*p) ) {
972                 case 59: goto tr14;
973                 case 117: goto st17;
974         }
975         if ( (*p) < 65 ) {
976                 if ( 48 <= (*p) && (*p) <= 57 )
977                         goto st12;
978         } else if ( (*p) > 90 ) {
979                 if ( 97 <= (*p) && (*p) <= 122 )
980                         goto st11;
981         } else
982                 goto st11;
983         goto tr7;
984 st17:
985         if ( ++p == pe )
986                 goto _test_eof17;
987 case 17:
988         switch( (*p) ) {
989                 case 59: goto tr14;
990                 case 111: goto st18;
991         }
992         if ( (*p) < 65 ) {
993                 if ( 48 <= (*p) && (*p) <= 57 )
994                         goto st12;
995         } else if ( (*p) > 90 ) {
996                 if ( 97 <= (*p) && (*p) <= 122 )
997                         goto st11;
998         } else
999                 goto st11;
1000         goto tr7;
1001 st18:
1002         if ( ++p == pe )
1003                 goto _test_eof18;
1004 case 18:
1005         switch( (*p) ) {
1006                 case 59: goto tr14;
1007                 case 116: goto st19;
1008         }
1009         if ( (*p) < 65 ) {
1010                 if ( 48 <= (*p) && (*p) <= 57 )
1011                         goto st12;
1012         } else if ( (*p) > 90 ) {
1013                 if ( 97 <= (*p) && (*p) <= 122 )
1014                         goto st11;
1015         } else
1016                 goto st11;
1017         goto tr7;
1018 st19:
1019         if ( ++p == pe )
1020                 goto _test_eof19;
1021 case 19:
1022         if ( (*p) == 59 )
1023                 goto tr22;
1024         if ( (*p) < 65 ) {
1025                 if ( 48 <= (*p) && (*p) <= 57 )
1026                         goto st12;
1027         } else if ( (*p) > 90 ) {
1028                 if ( 97 <= (*p) && (*p) <= 122 )
1029                         goto st11;
1030         } else
1031                 goto st11;
1032         goto tr7;
1033 st100:
1034         if ( ++p == pe )
1035                 goto _test_eof100;
1036 case 100:
1037         if ( (*p) == 39 )
1038                 goto st101;
1039         goto tr146;
1040 st101:
1041         if ( ++p == pe )
1042                 goto _test_eof101;
1043 case 101:
1044         if ( (*p) == 39 )
1045                 goto st102;
1046         goto tr146;
1047 st102:
1048         if ( ++p == pe )
1049                 goto _test_eof102;
1050 case 102:
1051         if ( (*p) == 39 )
1052                 goto st103;
1053         goto tr146;
1054 st103:
1055         if ( ++p == pe )
1056                 goto _test_eof103;
1057 case 103:
1058         if ( (*p) == 39 )
1059                 goto tr150;
1060         goto tr146;
1061 tr121:
1062 #line 1 "wikitext_ragel.rl"
1063         {te = p+1;}
1064 #line 426 "wikitext_ragel.rl"
1065         {act = 42;}
1066         goto st104;
1067 st104:
1068         if ( ++p == pe )
1069                 goto _test_eof104;
1070 case 104:
1071 #line 1072 "wikitext_ragel.c"
1072         switch( (*p) ) {
1073                 case 43: goto st98;
1074                 case 46: goto st20;
1075                 case 47: goto st98;
1076                 case 64: goto st109;
1077                 case 92: goto st98;
1078                 case 94: goto st98;
1079                 case 95: goto tr121;
1080                 case 126: goto st98;
1081         }
1082         if ( (*p) < 45 ) {
1083                 if ( 36 <= (*p) && (*p) <= 37 )
1084                         goto st98;
1085         } else if ( (*p) > 57 ) {
1086                 if ( (*p) > 90 ) {
1087                         if ( 97 <= (*p) && (*p) <= 122 )
1088                                 goto tr121;
1089                 } else if ( (*p) >= 65 )
1090                         goto tr121;
1091         } else
1092                 goto tr121;
1093         goto tr141;
1094 st20:
1095         if ( ++p == pe )
1096                 goto _test_eof20;
1097 case 20:
1098         switch( (*p) ) {
1099                 case 64: goto st21;
1100                 case 95: goto st20;
1101         }
1102         if ( (*p) < 48 ) {
1103                 if ( 45 <= (*p) && (*p) <= 46 )
1104                         goto st20;
1105         } else if ( (*p) > 57 ) {
1106                 if ( (*p) > 90 ) {
1107                         if ( 97 <= (*p) && (*p) <= 122 )
1108                                 goto st20;
1109                 } else if ( (*p) >= 65 )
1110                         goto st20;
1111         } else
1112                 goto st20;
1113         goto tr23;
1114 st21:
1115         if ( ++p == pe )
1116                 goto _test_eof21;
1117 case 21:
1118         if ( (*p) < 65 ) {
1119                 if ( 48 <= (*p) && (*p) <= 57 )
1120                         goto st22;
1121         } else if ( (*p) > 90 ) {
1122                 if ( 97 <= (*p) && (*p) <= 122 )
1123                         goto st22;
1124         } else
1125                 goto st22;
1126         goto tr23;
1127 st22:
1128         if ( ++p == pe )
1129                 goto _test_eof22;
1130 case 22:
1131         if ( (*p) == 46 )
1132                 goto st23;
1133         if ( (*p) < 65 ) {
1134                 if ( 48 <= (*p) && (*p) <= 57 )
1135                         goto st22;
1136         } else if ( (*p) > 90 ) {
1137                 if ( 97 <= (*p) && (*p) <= 122 )
1138                         goto st22;
1139         } else
1140                 goto st22;
1141         goto tr23;
1142 st23:
1143         if ( ++p == pe )
1144                 goto _test_eof23;
1145 case 23:
1146         if ( (*p) < 65 ) {
1147                 if ( 48 <= (*p) && (*p) <= 57 )
1148                         goto st22;
1149         } else if ( (*p) > 90 ) {
1150                 if ( 97 <= (*p) && (*p) <= 122 )
1151                         goto st24;
1152         } else
1153                 goto st24;
1154         goto tr23;
1155 st24:
1156         if ( ++p == pe )
1157                 goto _test_eof24;
1158 case 24:
1159         if ( (*p) == 46 )
1160                 goto st23;
1161         if ( (*p) < 65 ) {
1162                 if ( 48 <= (*p) && (*p) <= 57 )
1163                         goto st22;
1164         } else if ( (*p) > 90 ) {
1165                 if ( 97 <= (*p) && (*p) <= 122 )
1166                         goto tr29;
1167         } else
1168                 goto tr29;
1169         goto tr23;
1170 tr29:
1171 #line 1 "wikitext_ragel.rl"
1172         {te = p+1;}
1173 #line 287 "wikitext_ragel.rl"
1174         {act = 21;}
1175         goto st105;
1176 st105:
1177         if ( ++p == pe )
1178                 goto _test_eof105;
1179 case 105:
1180 #line 1181 "wikitext_ragel.c"
1181         if ( (*p) == 46 )
1182                 goto st23;
1183         if ( (*p) < 65 ) {
1184                 if ( 48 <= (*p) && (*p) <= 57 )
1185                         goto st22;
1186         } else if ( (*p) > 90 ) {
1187                 if ( 97 <= (*p) && (*p) <= 122 )
1188                         goto tr153;
1189         } else
1190                 goto tr153;
1191         goto tr152;
1192 tr153:
1193 #line 1 "wikitext_ragel.rl"
1194         {te = p+1;}
1195 #line 287 "wikitext_ragel.rl"
1196         {act = 21;}
1197         goto st106;
1198 st106:
1199         if ( ++p == pe )
1200                 goto _test_eof106;
1201 case 106:
1202 #line 1203 "wikitext_ragel.c"
1203         if ( (*p) == 46 )
1204                 goto st23;
1205         if ( (*p) < 65 ) {
1206                 if ( 48 <= (*p) && (*p) <= 57 )
1207                         goto st22;
1208         } else if ( (*p) > 90 ) {
1209                 if ( 97 <= (*p) && (*p) <= 122 )
1210                         goto tr154;
1211         } else
1212                 goto tr154;
1213         goto tr152;
1214 tr154:
1215 #line 1 "wikitext_ragel.rl"
1216         {te = p+1;}
1217 #line 287 "wikitext_ragel.rl"
1218         {act = 21;}
1219         goto st107;
1220 st107:
1221         if ( ++p == pe )
1222                 goto _test_eof107;
1223 case 107:
1224 #line 1225 "wikitext_ragel.c"
1225         if ( (*p) == 46 )
1226                 goto st23;
1227         if ( (*p) < 65 ) {
1228                 if ( 48 <= (*p) && (*p) <= 57 )
1229                         goto st22;
1230         } else if ( (*p) > 90 ) {
1231                 if ( 97 <= (*p) && (*p) <= 122 )
1232                         goto tr155;
1233         } else
1234                 goto tr155;
1235         goto tr152;
1236 tr155:
1237 #line 1 "wikitext_ragel.rl"
1238         {te = p+1;}
1239 #line 287 "wikitext_ragel.rl"
1240         {act = 21;}
1241         goto st108;
1242 st108:
1243         if ( ++p == pe )
1244                 goto _test_eof108;
1245 case 108:
1246 #line 1247 "wikitext_ragel.c"
1247         if ( (*p) == 46 )
1248                 goto st23;
1249         if ( (*p) < 65 ) {
1250                 if ( 48 <= (*p) && (*p) <= 57 )
1251                         goto st22;
1252         } else if ( (*p) > 90 ) {
1253                 if ( 97 <= (*p) && (*p) <= 122 )
1254                         goto st22;
1255         } else
1256                 goto st22;
1257         goto tr152;
1258 st109:
1259         if ( ++p == pe )
1260                 goto _test_eof109;
1261 case 109:
1262         switch( (*p) ) {
1263                 case 43: goto st98;
1264                 case 45: goto st98;
1265                 case 47: goto st98;
1266                 case 64: goto st98;
1267                 case 92: goto st98;
1268                 case 126: goto st98;
1269         }
1270         if ( (*p) < 65 ) {
1271                 if ( (*p) > 37 ) {
1272                         if ( 48 <= (*p) && (*p) <= 57 )
1273                                 goto tr156;
1274                 } else if ( (*p) >= 36 )
1275                         goto st98;
1276         } else if ( (*p) > 90 ) {
1277                 if ( (*p) > 95 ) {
1278                         if ( 97 <= (*p) && (*p) <= 122 )
1279                                 goto tr156;
1280                 } else if ( (*p) >= 94 )
1281                         goto st98;
1282         } else
1283                 goto tr156;
1284         goto tr141;
1285 tr156:
1286 #line 1 "wikitext_ragel.rl"
1287         {te = p+1;}
1288 #line 426 "wikitext_ragel.rl"
1289         {act = 42;}
1290         goto st110;
1291 st110:
1292         if ( ++p == pe )
1293                 goto _test_eof110;
1294 case 110:
1295 #line 1296 "wikitext_ragel.c"
1296         switch( (*p) ) {
1297                 case 43: goto st98;
1298                 case 46: goto st23;
1299                 case 64: goto st98;
1300                 case 92: goto st98;
1301                 case 126: goto st98;
1302         }
1303         if ( (*p) < 48 ) {
1304                 if ( (*p) > 37 ) {
1305                         if ( 45 <= (*p) && (*p) <= 47 )
1306                                 goto st98;
1307                 } else if ( (*p) >= 36 )
1308                         goto st98;
1309         } else if ( (*p) > 57 ) {
1310                 if ( (*p) < 94 ) {
1311                         if ( 65 <= (*p) && (*p) <= 90 )
1312                                 goto tr156;
1313                 } else if ( (*p) > 95 ) {
1314                         if ( 97 <= (*p) && (*p) <= 122 )
1315                                 goto tr156;
1316                 } else
1317                         goto st98;
1318         } else
1319                 goto tr156;
1320         goto tr141;
1321 tr122:
1322 #line 1 "wikitext_ragel.rl"
1323         {te = p+1;}
1324 #line 414 "wikitext_ragel.rl"
1325         {act = 41;}
1326         goto st111;
1327 st111:
1328         if ( ++p == pe )
1329                 goto _test_eof111;
1330 case 111:
1331 #line 1332 "wikitext_ragel.c"
1332         switch( (*p) ) {
1333                 case 33: goto st97;
1334                 case 44: goto st97;
1335                 case 45: goto st20;
1336                 case 46: goto tr122;
1337                 case 63: goto st97;
1338                 case 64: goto st21;
1339                 case 95: goto st20;
1340         }
1341         if ( (*p) < 58 ) {
1342                 if ( (*p) > 41 ) {
1343                         if ( 48 <= (*p) && (*p) <= 57 )
1344                                 goto st20;
1345                 } else if ( (*p) >= 40 )
1346                         goto st97;
1347         } else if ( (*p) > 59 ) {
1348                 if ( (*p) > 90 ) {
1349                         if ( 97 <= (*p) && (*p) <= 122 )
1350                                 goto st20;
1351                 } else if ( (*p) >= 65 )
1352                         goto st20;
1353         } else
1354                 goto st97;
1355         goto tr140;
1356 tr123:
1357 #line 1 "wikitext_ragel.rl"
1358         {te = p+1;}
1359         goto st112;
1360 st112:
1361         if ( ++p == pe )
1362                 goto _test_eof112;
1363 case 112:
1364 #line 1365 "wikitext_ragel.c"
1365         switch( (*p) ) {
1366                 case 47: goto st25;
1367                 case 66: goto st55;
1368                 case 69: goto st65;
1369                 case 78: goto st67;
1370                 case 80: goto st73;
1371                 case 83: goto st76;
1372                 case 84: goto st82;
1373                 case 98: goto st55;
1374                 case 101: goto st65;
1375                 case 110: goto st67;
1376                 case 112: goto st73;
1377                 case 115: goto st76;
1378                 case 116: goto st82;
1379         }
1380         goto tr157;
1381 st25:
1382         if ( ++p == pe )
1383                 goto _test_eof25;
1384 case 25:
1385         switch( (*p) ) {
1386                 case 66: goto st26;
1387                 case 69: goto st36;
1388                 case 78: goto st38;
1389                 case 80: goto st44;
1390                 case 83: goto st47;
1391                 case 84: goto st53;
1392                 case 98: goto st26;
1393                 case 101: goto st36;
1394                 case 110: goto st38;
1395                 case 112: goto st44;
1396                 case 115: goto st47;
1397                 case 116: goto st53;
1398         }
1399         goto tr30;
1400 st26:
1401         if ( ++p == pe )
1402                 goto _test_eof26;
1403 case 26:
1404         switch( (*p) ) {
1405                 case 76: goto st27;
1406                 case 108: goto st27;
1407         }
1408         goto tr30;
1409 st27:
1410         if ( ++p == pe )
1411                 goto _test_eof27;
1412 case 27:
1413         switch( (*p) ) {
1414                 case 79: goto st28;
1415                 case 111: goto st28;
1416         }
1417         goto tr30;
1418 st28:
1419         if ( ++p == pe )
1420                 goto _test_eof28;
1421 case 28:
1422         switch( (*p) ) {
1423                 case 67: goto st29;
1424                 case 99: goto st29;
1425         }
1426         goto tr30;
1427 st29:
1428         if ( ++p == pe )
1429                 goto _test_eof29;
1430 case 29:
1431         switch( (*p) ) {
1432                 case 75: goto st30;
1433                 case 107: goto st30;
1434         }
1435         goto tr30;
1436 st30:
1437         if ( ++p == pe )
1438                 goto _test_eof30;
1439 case 30:
1440         switch( (*p) ) {
1441                 case 81: goto st31;
1442                 case 113: goto st31;
1443         }
1444         goto tr30;
1445 st31:
1446         if ( ++p == pe )
1447                 goto _test_eof31;
1448 case 31:
1449         switch( (*p) ) {
1450                 case 85: goto st32;
1451                 case 117: goto st32;
1452         }
1453         goto tr30;
1454 st32:
1455         if ( ++p == pe )
1456                 goto _test_eof32;
1457 case 32:
1458         switch( (*p) ) {
1459                 case 79: goto st33;
1460                 case 111: goto st33;
1461         }
1462         goto tr30;
1463 st33:
1464         if ( ++p == pe )
1465                 goto _test_eof33;
1466 case 33:
1467         switch( (*p) ) {
1468                 case 84: goto st34;
1469                 case 116: goto st34;
1470         }
1471         goto tr30;
1472 st34:
1473         if ( ++p == pe )
1474                 goto _test_eof34;
1475 case 34:
1476         switch( (*p) ) {
1477                 case 69: goto st35;
1478                 case 101: goto st35;
1479         }
1480         goto tr30;
1481 st35:
1482         if ( ++p == pe )
1483                 goto _test_eof35;
1484 case 35:
1485         if ( (*p) == 62 )
1486                 goto tr46;
1487         goto tr30;
1488 st36:
1489         if ( ++p == pe )
1490                 goto _test_eof36;
1491 case 36:
1492         switch( (*p) ) {
1493                 case 77: goto st37;
1494                 case 109: goto st37;
1495         }
1496         goto tr30;
1497 st37:
1498         if ( ++p == pe )
1499                 goto _test_eof37;
1500 case 37:
1501         if ( (*p) == 62 )
1502                 goto tr48;
1503         goto tr30;
1504 st38:
1505         if ( ++p == pe )
1506                 goto _test_eof38;
1507 case 38:
1508         switch( (*p) ) {
1509                 case 79: goto st39;
1510                 case 111: goto st39;
1511         }
1512         goto tr30;
1513 st39:
1514         if ( ++p == pe )
1515                 goto _test_eof39;
1516 case 39:
1517         switch( (*p) ) {
1518                 case 87: goto st40;
1519                 case 119: goto st40;
1520         }
1521         goto tr30;
1522 st40:
1523         if ( ++p == pe )
1524                 goto _test_eof40;
1525 case 40:
1526         switch( (*p) ) {
1527                 case 73: goto st41;
1528                 case 105: goto st41;
1529         }
1530         goto tr30;
1531 st41:
1532         if ( ++p == pe )
1533                 goto _test_eof41;
1534 case 41:
1535         switch( (*p) ) {
1536                 case 75: goto st42;
1537                 case 107: goto st42;
1538         }
1539         goto tr30;
1540 st42:
1541         if ( ++p == pe )
1542                 goto _test_eof42;
1543 case 42:
1544         switch( (*p) ) {
1545                 case 73: goto st43;
1546                 case 105: goto st43;
1547         }
1548         goto tr30;
1549 st43:
1550         if ( ++p == pe )
1551                 goto _test_eof43;
1552 case 43:
1553         if ( (*p) == 62 )
1554                 goto tr54;
1555         goto tr30;
1556 st44:
1557         if ( ++p == pe )
1558                 goto _test_eof44;
1559 case 44:
1560         switch( (*p) ) {
1561                 case 82: goto st45;
1562                 case 114: goto st45;
1563         }
1564         goto tr30;
1565 st45:
1566         if ( ++p == pe )
1567                 goto _test_eof45;
1568 case 45:
1569         switch( (*p) ) {
1570                 case 69: goto st46;
1571                 case 101: goto st46;
1572         }
1573         goto tr30;
1574 st46:
1575         if ( ++p == pe )
1576                 goto _test_eof46;
1577 case 46:
1578         if ( (*p) == 62 )
1579                 goto tr57;
1580         goto tr30;
1581 st47:
1582         if ( ++p == pe )
1583                 goto _test_eof47;
1584 case 47:
1585         switch( (*p) ) {
1586                 case 84: goto st48;
1587                 case 116: goto st48;
1588         }
1589         goto tr30;
1590 st48:
1591         if ( ++p == pe )
1592                 goto _test_eof48;
1593 case 48:
1594         switch( (*p) ) {
1595                 case 82: goto st49;
1596                 case 114: goto st49;
1597         }
1598         goto tr30;
1599 st49:
1600         if ( ++p == pe )
1601                 goto _test_eof49;
1602 case 49:
1603         switch( (*p) ) {
1604                 case 79: goto st50;
1605                 case 111: goto st50;
1606         }
1607         goto tr30;
1608 st50:
1609         if ( ++p == pe )
1610                 goto _test_eof50;
1611 case 50:
1612         switch( (*p) ) {
1613                 case 78: goto st51;
1614                 case 110: goto st51;
1615         }
1616         goto tr30;
1617 st51:
1618         if ( ++p == pe )
1619                 goto _test_eof51;
1620 case 51:
1621         switch( (*p) ) {
1622                 case 71: goto st52;
1623                 case 103: goto st52;
1624         }
1625         goto tr30;
1626 st52:
1627         if ( ++p == pe )
1628                 goto _test_eof52;
1629 case 52:
1630         if ( (*p) == 62 )
1631                 goto tr63;
1632         goto tr30;
1633 st53:
1634         if ( ++p == pe )
1635                 goto _test_eof53;
1636 case 53:
1637         switch( (*p) ) {
1638                 case 84: goto st54;
1639                 case 116: goto st54;
1640         }
1641         goto tr30;
1642 st54:
1643         if ( ++p == pe )
1644                 goto _test_eof54;
1645 case 54:
1646         if ( (*p) == 62 )
1647                 goto tr65;
1648         goto tr30;
1649 st55:
1650         if ( ++p == pe )
1651                 goto _test_eof55;
1652 case 55:
1653         switch( (*p) ) {
1654                 case 76: goto st56;
1655                 case 108: goto st56;
1656         }
1657         goto tr30;
1658 st56:
1659         if ( ++p == pe )
1660                 goto _test_eof56;
1661 case 56:
1662         switch( (*p) ) {
1663                 case 79: goto st57;
1664                 case 111: goto st57;
1665         }
1666         goto tr30;
1667 st57:
1668         if ( ++p == pe )
1669                 goto _test_eof57;
1670 case 57:
1671         switch( (*p) ) {
1672                 case 67: goto st58;
1673                 case 99: goto st58;
1674         }
1675         goto tr30;
1676 st58:
1677         if ( ++p == pe )
1678                 goto _test_eof58;
1679 case 58:
1680         switch( (*p) ) {
1681                 case 75: goto st59;
1682                 case 107: goto st59;
1683         }
1684         goto tr30;
1685 st59:
1686         if ( ++p == pe )
1687                 goto _test_eof59;
1688 case 59:
1689         switch( (*p) ) {
1690                 case 81: goto st60;
1691                 case 113: goto st60;
1692         }
1693         goto tr30;
1694 st60:
1695         if ( ++p == pe )
1696                 goto _test_eof60;
1697 case 60:
1698         switch( (*p) ) {
1699                 case 85: goto st61;
1700                 case 117: goto st61;
1701         }
1702         goto tr30;
1703 st61:
1704         if ( ++p == pe )
1705                 goto _test_eof61;
1706 case 61:
1707         switch( (*p) ) {
1708                 case 79: goto st62;
1709                 case 111: goto st62;
1710         }
1711         goto tr30;
1712 st62:
1713         if ( ++p == pe )
1714                 goto _test_eof62;
1715 case 62:
1716         switch( (*p) ) {
1717                 case 84: goto st63;
1718                 case 116: goto st63;
1719         }
1720         goto tr30;
1721 st63:
1722         if ( ++p == pe )
1723                 goto _test_eof63;
1724 case 63:
1725         switch( (*p) ) {
1726                 case 69: goto st64;
1727                 case 101: goto st64;
1728         }
1729         goto tr30;
1730 st64:
1731         if ( ++p == pe )
1732                 goto _test_eof64;
1733 case 64:
1734         if ( (*p) == 62 )
1735                 goto tr75;
1736         goto tr30;
1737 st65:
1738         if ( ++p == pe )
1739                 goto _test_eof65;
1740 case 65:
1741         switch( (*p) ) {
1742                 case 77: goto st66;
1743                 case 109: goto st66;
1744         }
1745         goto tr30;
1746 st66:
1747         if ( ++p == pe )
1748                 goto _test_eof66;
1749 case 66:
1750         if ( (*p) == 62 )
1751                 goto tr77;
1752         goto tr30;
1753 st67:
1754         if ( ++p == pe )
1755                 goto _test_eof67;
1756 case 67:
1757         switch( (*p) ) {
1758                 case 79: goto st68;
1759                 case 111: goto st68;
1760         }
1761         goto tr30;
1762 st68:
1763         if ( ++p == pe )
1764                 goto _test_eof68;
1765 case 68:
1766         switch( (*p) ) {
1767                 case 87: goto st69;
1768                 case 119: goto st69;
1769         }
1770         goto tr30;
1771 st69:
1772         if ( ++p == pe )
1773                 goto _test_eof69;
1774 case 69:
1775         switch( (*p) ) {
1776                 case 73: goto st70;
1777                 case 105: goto st70;
1778         }
1779         goto tr30;
1780 st70:
1781         if ( ++p == pe )
1782                 goto _test_eof70;
1783 case 70:
1784         switch( (*p) ) {
1785                 case 75: goto st71;
1786                 case 107: goto st71;
1787         }
1788         goto tr30;
1789 st71:
1790         if ( ++p == pe )
1791                 goto _test_eof71;
1792 case 71:
1793         switch( (*p) ) {
1794                 case 73: goto st72;
1795                 case 105: goto st72;
1796         }
1797         goto tr30;
1798 st72:
1799         if ( ++p == pe )
1800                 goto _test_eof72;
1801 case 72:
1802         if ( (*p) == 62 )
1803                 goto tr83;
1804         goto tr30;
1805 st73:
1806         if ( ++p == pe )
1807                 goto _test_eof73;
1808 case 73:
1809         switch( (*p) ) {
1810                 case 82: goto st74;
1811                 case 114: goto st74;
1812         }
1813         goto tr30;
1814 st74:
1815         if ( ++p == pe )
1816                 goto _test_eof74;
1817 case 74:
1818         switch( (*p) ) {
1819                 case 69: goto st75;
1820                 case 101: goto st75;
1821         }
1822         goto tr30;
1823 st75:
1824         if ( ++p == pe )
1825                 goto _test_eof75;
1826 case 75:
1827         if ( (*p) == 62 )
1828                 goto tr86;
1829         goto tr30;
1830 st76:
1831         if ( ++p == pe )
1832                 goto _test_eof76;
1833 case 76:
1834         switch( (*p) ) {
1835                 case 84: goto st77;
1836                 case 116: goto st77;
1837         }
1838         goto tr30;
1839 st77:
1840         if ( ++p == pe )
1841                 goto _test_eof77;
1842 case 77:
1843         switch( (*p) ) {
1844                 case 82: goto st78;
1845                 case 114: goto st78;
1846         }
1847         goto tr30;
1848 st78:
1849         if ( ++p == pe )
1850                 goto _test_eof78;
1851 case 78:
1852         switch( (*p) ) {
1853                 case 79: goto st79;
1854                 case 111: goto st79;
1855         }
1856         goto tr30;
1857 st79:
1858         if ( ++p == pe )
1859                 goto _test_eof79;
1860 case 79:
1861         switch( (*p) ) {
1862                 case 78: goto st80;
1863                 case 110: goto st80;
1864         }
1865         goto tr30;
1866 st80:
1867         if ( ++p == pe )
1868                 goto _test_eof80;
1869 case 80:
1870         switch( (*p) ) {
1871                 case 71: goto st81;
1872                 case 103: goto st81;
1873         }
1874         goto tr30;
1875 st81:
1876         if ( ++p == pe )
1877                 goto _test_eof81;
1878 case 81:
1879         if ( (*p) == 62 )
1880                 goto tr92;
1881         goto tr30;
1882 st82:
1883         if ( ++p == pe )
1884                 goto _test_eof82;
1885 case 82:
1886         switch( (*p) ) {
1887                 case 84: goto st83;
1888                 case 116: goto st83;
1889         }
1890         goto tr30;
1891 st83:
1892         if ( ++p == pe )
1893                 goto _test_eof83;
1894 case 83:
1895         if ( (*p) == 62 )
1896                 goto tr94;
1897         goto tr30;
1898 tr124:
1899 #line 36 "wikitext_ragel.rl"
1900         {
1901         MARK();
1902     }
1903         goto st113;
1904 st113:
1905         if ( ++p == pe )
1906                 goto _test_eof113;
1907 case 113:
1908 #line 1909 "wikitext_ragel.c"
1909         switch( (*p) ) {
1910                 case 32: goto st114;
1911                 case 61: goto tr124;
1912         }
1913         goto tr165;
1914 st114:
1915         if ( ++p == pe )
1916                 goto _test_eof114;
1917 case 114:
1918         if ( (*p) == 32 )
1919                 goto st114;
1920         goto tr165;
1921 tr125:
1922 #line 36 "wikitext_ragel.rl"
1923         {
1924         MARK();
1925     }
1926         goto st115;
1927 st115:
1928         if ( ++p == pe )
1929                 goto _test_eof115;
1930 case 115:
1931 #line 1932 "wikitext_ragel.c"
1932         if ( (*p) == 32 )
1933                 goto tr168;
1934         goto tr167;
1935 tr126:
1936 #line 1 "wikitext_ragel.rl"
1937         {te = p+1;}
1938 #line 426 "wikitext_ragel.rl"
1939         {act = 42;}
1940         goto st116;
1941 st116:
1942         if ( ++p == pe )
1943                 goto _test_eof116;
1944 case 116:
1945 #line 1946 "wikitext_ragel.c"
1946         switch( (*p) ) {
1947                 case 43: goto st98;
1948                 case 46: goto st20;
1949                 case 47: goto st98;
1950                 case 64: goto st109;
1951                 case 84: goto tr169;
1952                 case 92: goto st98;
1953                 case 94: goto st98;
1954                 case 95: goto tr121;
1955                 case 116: goto tr169;
1956                 case 126: goto st98;
1957         }
1958         if ( (*p) < 45 ) {
1959                 if ( 36 <= (*p) && (*p) <= 37 )
1960                         goto st98;
1961         } else if ( (*p) > 57 ) {
1962                 if ( (*p) > 90 ) {
1963                         if ( 97 <= (*p) && (*p) <= 122 )
1964                                 goto tr121;
1965                 } else if ( (*p) >= 65 )
1966                         goto tr121;
1967         } else
1968                 goto tr121;
1969         goto tr141;
1970 tr169:
1971 #line 1 "wikitext_ragel.rl"
1972         {te = p+1;}
1973 #line 426 "wikitext_ragel.rl"
1974         {act = 42;}
1975         goto st117;
1976 st117:
1977         if ( ++p == pe )
1978                 goto _test_eof117;
1979 case 117:
1980 #line 1981 "wikitext_ragel.c"
1981         switch( (*p) ) {
1982                 case 43: goto st98;
1983                 case 46: goto st20;
1984                 case 47: goto st98;
1985                 case 64: goto st109;
1986                 case 80: goto tr170;
1987                 case 92: goto st98;
1988                 case 94: goto st98;
1989                 case 95: goto tr121;
1990                 case 112: goto tr170;
1991                 case 126: goto st98;
1992         }
1993         if ( (*p) < 45 ) {
1994                 if ( 36 <= (*p) && (*p) <= 37 )
1995                         goto st98;
1996         } else if ( (*p) > 57 ) {
1997                 if ( (*p) > 90 ) {
1998                         if ( 97 <= (*p) && (*p) <= 122 )
1999                                 goto tr121;
2000                 } else if ( (*p) >= 65 )
2001                         goto tr121;
2002         } else
2003                 goto tr121;
2004         goto tr141;
2005 tr170:
2006 #line 1 "wikitext_ragel.rl"
2007         {te = p+1;}
2008 #line 426 "wikitext_ragel.rl"
2009         {act = 42;}
2010         goto st118;
2011 st118:
2012         if ( ++p == pe )
2013                 goto _test_eof118;
2014 case 118:
2015 #line 2016 "wikitext_ragel.c"
2016         switch( (*p) ) {
2017                 case 43: goto st98;
2018                 case 46: goto st20;
2019                 case 47: goto st98;
2020                 case 58: goto st84;
2021                 case 64: goto st109;
2022                 case 92: goto st98;
2023                 case 94: goto st98;
2024                 case 95: goto tr121;
2025                 case 126: goto st98;
2026         }
2027         if ( (*p) < 45 ) {
2028                 if ( 36 <= (*p) && (*p) <= 37 )
2029                         goto st98;
2030         } else if ( (*p) > 57 ) {
2031                 if ( (*p) > 90 ) {
2032                         if ( 97 <= (*p) && (*p) <= 122 )
2033                                 goto tr121;
2034                 } else if ( (*p) >= 65 )
2035                         goto tr121;
2036         } else
2037                 goto tr121;
2038         goto tr141;
2039 st84:
2040         if ( ++p == pe )
2041                 goto _test_eof84;
2042 case 84:
2043         if ( (*p) == 47 )
2044                 goto st85;
2045         goto tr95;
2046 st85:
2047         if ( ++p == pe )
2048                 goto _test_eof85;
2049 case 85:
2050         if ( (*p) == 47 )
2051                 goto st86;
2052         goto tr95;
2053 st86:
2054         if ( ++p == pe )
2055                 goto _test_eof86;
2056 case 86:
2057         switch( (*p) ) {
2058                 case 45: goto tr98;
2059                 case 61: goto tr98;
2060                 case 95: goto tr98;
2061                 case 126: goto tr98;
2062         }
2063         if ( (*p) < 47 ) {
2064                 if ( (*p) > 40 ) {
2065                         if ( 42 <= (*p) && (*p) <= 43 )
2066                                 goto tr98;
2067                 } else if ( (*p) >= 35 )
2068                         goto tr98;
2069         } else if ( (*p) > 57 ) {
2070                 if ( (*p) > 90 ) {
2071                         if ( 97 <= (*p) && (*p) <= 122 )
2072                                 goto tr98;
2073                 } else if ( (*p) >= 64 )
2074                         goto tr98;
2075         } else
2076                 goto tr98;
2077         goto tr95;
2078 tr98:
2079 #line 1 "wikitext_ragel.rl"
2080         {te = p+1;}
2081         goto st119;
2082 st119:
2083         if ( ++p == pe )
2084                 goto _test_eof119;
2085 case 119:
2086 #line 2087 "wikitext_ragel.c"
2087         switch( (*p) ) {
2088                 case 33: goto st87;
2089                 case 41: goto st87;
2090                 case 44: goto st87;
2091                 case 46: goto st87;
2092                 case 61: goto tr98;
2093                 case 63: goto st87;
2094                 case 95: goto tr98;
2095                 case 126: goto tr98;
2096         }
2097         if ( (*p) < 58 ) {
2098                 if ( 35 <= (*p) && (*p) <= 57 )
2099                         goto tr98;
2100         } else if ( (*p) > 59 ) {
2101                 if ( (*p) > 90 ) {
2102                         if ( 97 <= (*p) && (*p) <= 122 )
2103                                 goto tr98;
2104                 } else if ( (*p) >= 64 )
2105                         goto tr98;
2106         } else
2107                 goto st87;
2108         goto tr172;
2109 st87:
2110         if ( ++p == pe )
2111                 goto _test_eof87;
2112 case 87:
2113         switch( (*p) ) {
2114                 case 33: goto st87;
2115                 case 41: goto st87;
2116                 case 44: goto st87;
2117                 case 46: goto st87;
2118                 case 61: goto tr98;
2119                 case 63: goto st87;
2120                 case 95: goto tr98;
2121                 case 126: goto tr98;
2122         }
2123         if ( (*p) < 58 ) {
2124                 if ( 35 <= (*p) && (*p) <= 57 )
2125                         goto tr98;
2126         } else if ( (*p) > 59 ) {
2127                 if ( (*p) > 90 ) {
2128                         if ( 97 <= (*p) && (*p) <= 122 )
2129                                 goto tr98;
2130                 } else if ( (*p) >= 64 )
2131                         goto tr98;
2132         } else
2133                 goto st87;
2134         goto tr99;
2135 tr127:
2136 #line 1 "wikitext_ragel.rl"
2137         {te = p+1;}
2138 #line 426 "wikitext_ragel.rl"
2139         {act = 42;}
2140         goto st120;
2141 st120:
2142         if ( ++p == pe )
2143                 goto _test_eof120;
2144 case 120:
2145 #line 2146 "wikitext_ragel.c"
2146         switch( (*p) ) {
2147                 case 43: goto st98;
2148                 case 46: goto st20;
2149                 case 47: goto st98;
2150                 case 64: goto st109;
2151                 case 84: goto tr173;
2152                 case 92: goto st98;
2153                 case 94: goto st98;
2154                 case 95: goto tr121;
2155                 case 116: goto tr173;
2156                 case 126: goto st98;
2157         }
2158         if ( (*p) < 45 ) {
2159                 if ( 36 <= (*p) && (*p) <= 37 )
2160                         goto st98;
2161         } else if ( (*p) > 57 ) {
2162                 if ( (*p) > 90 ) {
2163                         if ( 97 <= (*p) && (*p) <= 122 )
2164                                 goto tr121;
2165                 } else if ( (*p) >= 65 )
2166                         goto tr121;
2167         } else
2168                 goto tr121;
2169         goto tr141;
2170 tr173:
2171 #line 1 "wikitext_ragel.rl"
2172         {te = p+1;}
2173 #line 426 "wikitext_ragel.rl"
2174         {act = 42;}
2175         goto st121;
2176 st121:
2177         if ( ++p == pe )
2178                 goto _test_eof121;
2179 case 121:
2180 #line 2181 "wikitext_ragel.c"
2181         switch( (*p) ) {
2182                 case 43: goto st98;
2183                 case 46: goto st20;
2184                 case 47: goto st98;
2185                 case 64: goto st109;
2186                 case 84: goto tr174;
2187                 case 92: goto st98;
2188                 case 94: goto st98;
2189                 case 95: goto tr121;
2190                 case 116: goto tr174;
2191                 case 126: goto st98;
2192         }
2193         if ( (*p) < 45 ) {
2194                 if ( 36 <= (*p) && (*p) <= 37 )
2195                         goto st98;
2196         } else if ( (*p) > 57 ) {
2197                 if ( (*p) > 90 ) {
2198                         if ( 97 <= (*p) && (*p) <= 122 )
2199                                 goto tr121;
2200                 } else if ( (*p) >= 65 )
2201                         goto tr121;
2202         } else
2203                 goto tr121;
2204         goto tr141;
2205 tr174:
2206 #line 1 "wikitext_ragel.rl"
2207         {te = p+1;}
2208 #line 426 "wikitext_ragel.rl"
2209         {act = 42;}
2210         goto st122;
2211 st122:
2212         if ( ++p == pe )
2213                 goto _test_eof122;
2214 case 122:
2215 #line 2216 "wikitext_ragel.c"
2216         switch( (*p) ) {
2217                 case 43: goto st98;
2218                 case 46: goto st20;
2219                 case 47: goto st98;
2220                 case 64: goto st109;
2221                 case 80: goto tr175;
2222                 case 92: goto st98;
2223                 case 94: goto st98;
2224                 case 95: goto tr121;
2225                 case 112: goto tr175;
2226                 case 126: goto st98;
2227         }
2228         if ( (*p) < 45 ) {
2229                 if ( 36 <= (*p) && (*p) <= 37 )
2230                         goto st98;
2231         } else if ( (*p) > 57 ) {
2232                 if ( (*p) > 90 ) {
2233                         if ( 97 <= (*p) && (*p) <= 122 )
2234                                 goto tr121;
2235                 } else if ( (*p) >= 65 )
2236                         goto tr121;
2237         } else
2238                 goto tr121;
2239         goto tr141;
2240 tr175:
2241 #line 1 "wikitext_ragel.rl"
2242         {te = p+1;}
2243 #line 426 "wikitext_ragel.rl"
2244         {act = 42;}
2245         goto st123;
2246 st123:
2247         if ( ++p == pe )
2248                 goto _test_eof123;
2249 case 123:
2250 #line 2251 "wikitext_ragel.c"
2251         switch( (*p) ) {
2252                 case 43: goto st98;
2253                 case 46: goto st20;
2254                 case 47: goto st98;
2255                 case 58: goto st84;
2256                 case 64: goto st109;
2257                 case 83: goto tr170;
2258                 case 92: goto st98;
2259                 case 94: goto st98;
2260                 case 95: goto tr121;
2261                 case 115: goto tr170;
2262                 case 126: goto st98;
2263         }
2264         if ( (*p) < 45 ) {
2265                 if ( 36 <= (*p) && (*p) <= 37 )
2266                         goto st98;
2267         } else if ( (*p) > 57 ) {
2268                 if ( (*p) > 90 ) {
2269                         if ( 97 <= (*p) && (*p) <= 122 )
2270                                 goto tr121;
2271                 } else if ( (*p) >= 65 )
2272                         goto tr121;
2273         } else
2274                 goto tr121;
2275         goto tr141;
2276 tr128:
2277 #line 1 "wikitext_ragel.rl"
2278         {te = p+1;}
2279 #line 426 "wikitext_ragel.rl"
2280         {act = 42;}
2281         goto st124;
2282 st124:
2283         if ( ++p == pe )
2284                 goto _test_eof124;
2285 case 124:
2286 #line 2287 "wikitext_ragel.c"
2287         switch( (*p) ) {
2288                 case 43: goto st98;
2289                 case 46: goto st20;
2290                 case 47: goto st98;
2291                 case 64: goto st109;
2292                 case 65: goto tr176;
2293                 case 92: goto st98;
2294                 case 94: goto st98;
2295                 case 95: goto tr121;
2296                 case 97: goto tr176;
2297                 case 126: goto st98;
2298         }
2299         if ( (*p) < 45 ) {
2300                 if ( 36 <= (*p) && (*p) <= 37 )
2301                         goto st98;
2302         } else if ( (*p) > 57 ) {
2303                 if ( (*p) > 90 ) {
2304                         if ( 98 <= (*p) && (*p) <= 122 )
2305                                 goto tr121;
2306                 } else if ( (*p) >= 66 )
2307                         goto tr121;
2308         } else
2309                 goto tr121;
2310         goto tr141;
2311 tr176:
2312 #line 1 "wikitext_ragel.rl"
2313         {te = p+1;}
2314 #line 426 "wikitext_ragel.rl"
2315         {act = 42;}
2316         goto st125;
2317 st125:
2318         if ( ++p == pe )
2319                 goto _test_eof125;
2320 case 125:
2321 #line 2322 "wikitext_ragel.c"
2322         switch( (*p) ) {
2323                 case 43: goto st98;
2324                 case 46: goto st20;
2325                 case 47: goto st98;
2326                 case 64: goto st109;
2327                 case 73: goto tr177;
2328                 case 92: goto st98;
2329                 case 94: goto st98;
2330                 case 95: goto tr121;
2331                 case 105: goto tr177;
2332                 case 126: goto st98;
2333         }
2334         if ( (*p) < 45 ) {
2335                 if ( 36 <= (*p) && (*p) <= 37 )
2336                         goto st98;
2337         } else if ( (*p) > 57 ) {
2338                 if ( (*p) > 90 ) {
2339                         if ( 97 <= (*p) && (*p) <= 122 )
2340                                 goto tr121;
2341                 } else if ( (*p) >= 65 )
2342                         goto tr121;
2343         } else
2344                 goto tr121;
2345         goto tr141;
2346 tr177:
2347 #line 1 "wikitext_ragel.rl"
2348         {te = p+1;}
2349 #line 426 "wikitext_ragel.rl"
2350         {act = 42;}
2351         goto st126;
2352 st126:
2353         if ( ++p == pe )
2354                 goto _test_eof126;
2355 case 126:
2356 #line 2357 "wikitext_ragel.c"
2357         switch( (*p) ) {
2358                 case 43: goto st98;
2359                 case 46: goto st20;
2360                 case 47: goto st98;
2361                 case 64: goto st109;
2362                 case 76: goto tr178;
2363                 case 92: goto st98;
2364                 case 94: goto st98;
2365                 case 95: goto tr121;
2366                 case 108: goto tr178;
2367                 case 126: goto st98;
2368         }
2369         if ( (*p) < 45 ) {
2370                 if ( 36 <= (*p) && (*p) <= 37 )
2371                         goto st98;
2372         } else if ( (*p) > 57 ) {
2373                 if ( (*p) > 90 ) {
2374                         if ( 97 <= (*p) && (*p) <= 122 )
2375                                 goto tr121;
2376                 } else if ( (*p) >= 65 )
2377                         goto tr121;
2378         } else
2379                 goto tr121;
2380         goto tr141;
2381 tr178:
2382 #line 1 "wikitext_ragel.rl"
2383         {te = p+1;}
2384 #line 426 "wikitext_ragel.rl"
2385         {act = 42;}
2386         goto st127;
2387 st127:
2388         if ( ++p == pe )
2389                 goto _test_eof127;
2390 case 127:
2391 #line 2392 "wikitext_ragel.c"
2392         switch( (*p) ) {
2393                 case 43: goto st98;
2394                 case 46: goto st20;
2395                 case 47: goto st98;
2396                 case 64: goto st109;
2397                 case 84: goto tr179;
2398                 case 92: goto st98;
2399                 case 94: goto st98;
2400                 case 95: goto tr121;
2401                 case 116: goto tr179;
2402                 case 126: goto st98;
2403         }
2404         if ( (*p) < 45 ) {
2405                 if ( 36 <= (*p) && (*p) <= 37 )
2406                         goto st98;
2407         } else if ( (*p) > 57 ) {
2408                 if ( (*p) > 90 ) {
2409                         if ( 97 <= (*p) && (*p) <= 122 )
2410                                 goto tr121;
2411                 } else if ( (*p) >= 65 )
2412                         goto tr121;
2413         } else
2414                 goto tr121;
2415         goto tr141;
2416 tr179:
2417 #line 1 "wikitext_ragel.rl"
2418         {te = p+1;}
2419 #line 426 "wikitext_ragel.rl"
2420         {act = 42;}
2421         goto st128;
2422 st128:
2423         if ( ++p == pe )
2424                 goto _test_eof128;
2425 case 128:
2426 #line 2427 "wikitext_ragel.c"
2427         switch( (*p) ) {
2428                 case 43: goto st98;
2429                 case 46: goto st20;
2430                 case 47: goto st98;
2431                 case 64: goto st109;
2432                 case 79: goto tr180;
2433                 case 92: goto st98;
2434                 case 94: goto st98;
2435                 case 95: goto tr121;
2436                 case 111: goto tr180;
2437                 case 126: goto st98;
2438         }
2439         if ( (*p) < 45 ) {
2440                 if ( 36 <= (*p) && (*p) <= 37 )
2441                         goto st98;
2442         } else if ( (*p) > 57 ) {
2443                 if ( (*p) > 90 ) {
2444                         if ( 97 <= (*p) && (*p) <= 122 )
2445                                 goto tr121;
2446                 } else if ( (*p) >= 65 )
2447                         goto tr121;
2448         } else
2449                 goto tr121;
2450         goto tr141;
2451 tr180:
2452 #line 1 "wikitext_ragel.rl"
2453         {te = p+1;}
2454 #line 426 "wikitext_ragel.rl"
2455         {act = 42;}
2456         goto st129;
2457 st129:
2458         if ( ++p == pe )
2459                 goto _test_eof129;
2460 case 129:
2461 #line 2462 "wikitext_ragel.c"
2462         switch( (*p) ) {
2463                 case 43: goto st98;
2464                 case 46: goto st20;
2465                 case 47: goto st98;
2466                 case 58: goto st88;
2467                 case 64: goto st109;
2468                 case 92: goto st98;
2469                 case 94: goto st98;
2470                 case 95: goto tr121;
2471                 case 126: goto st98;
2472         }
2473         if ( (*p) < 45 ) {
2474                 if ( 36 <= (*p) && (*p) <= 37 )
2475                         goto st98;
2476         } else if ( (*p) > 57 ) {
2477                 if ( (*p) > 90 ) {
2478                         if ( 97 <= (*p) && (*p) <= 122 )
2479                                 goto tr121;
2480                 } else if ( (*p) >= 65 )
2481                         goto tr121;
2482         } else
2483                 goto tr121;
2484         goto tr141;
2485 st88:
2486         if ( ++p == pe )
2487                 goto _test_eof88;
2488 case 88:
2489         if ( (*p) == 95 )
2490                 goto st89;
2491         if ( (*p) < 48 ) {
2492                 if ( 45 <= (*p) && (*p) <= 46 )
2493                         goto st89;
2494         } else if ( (*p) > 57 ) {
2495                 if ( (*p) > 90 ) {
2496                         if ( 97 <= (*p) && (*p) <= 122 )
2497                                 goto st89;
2498                 } else if ( (*p) >= 65 )
2499                         goto st89;
2500         } else
2501                 goto st89;
2502         goto tr95;
2503 st89:
2504         if ( ++p == pe )
2505                 goto _test_eof89;
2506 case 89:
2507         switch( (*p) ) {
2508                 case 64: goto st90;
2509                 case 95: goto st89;
2510         }
2511         if ( (*p) < 48 ) {
2512                 if ( 45 <= (*p) && (*p) <= 46 )
2513                         goto st89;
2514         } else if ( (*p) > 57 ) {
2515                 if ( (*p) > 90 ) {
2516                         if ( 97 <= (*p) && (*p) <= 122 )
2517                                 goto st89;
2518                 } else if ( (*p) >= 65 )
2519                         goto st89;
2520         } else
2521                 goto st89;
2522         goto tr95;
2523 st90:
2524         if ( ++p == pe )
2525                 goto _test_eof90;
2526 case 90:
2527         if ( (*p) < 65 ) {
2528                 if ( 48 <= (*p) && (*p) <= 57 )
2529                         goto st91;
2530         } else if ( (*p) > 90 ) {
2531                 if ( 97 <= (*p) && (*p) <= 122 )
2532                         goto st91;
2533         } else
2534                 goto st91;
2535         goto tr95;
2536 st91:
2537         if ( ++p == pe )
2538                 goto _test_eof91;
2539 case 91:
2540         if ( (*p) == 46 )
2541                 goto st92;
2542         if ( (*p) < 65 ) {
2543                 if ( 48 <= (*p) && (*p) <= 57 )
2544                         goto st91;
2545         } else if ( (*p) > 90 ) {
2546                 if ( 97 <= (*p) && (*p) <= 122 )
2547                         goto st91;
2548         } else
2549                 goto st91;
2550         goto tr23;
2551 st92:
2552         if ( ++p == pe )
2553                 goto _test_eof92;
2554 case 92:
2555         if ( (*p) < 65 ) {
2556                 if ( 48 <= (*p) && (*p) <= 57 )
2557                         goto st91;
2558         } else if ( (*p) > 90 ) {
2559                 if ( 97 <= (*p) && (*p) <= 122 )
2560                         goto st93;
2561         } else
2562                 goto st93;
2563         goto tr23;
2564 st93:
2565         if ( ++p == pe )
2566                 goto _test_eof93;
2567 case 93:
2568         if ( (*p) == 46 )
2569                 goto st92;
2570         if ( (*p) < 65 ) {
2571                 if ( 48 <= (*p) && (*p) <= 57 )
2572                         goto st91;
2573         } else if ( (*p) > 90 ) {
2574                 if ( 97 <= (*p) && (*p) <= 122 )
2575                         goto tr106;
2576         } else
2577                 goto tr106;
2578         goto tr23;
2579 tr106:
2580 #line 1 "wikitext_ragel.rl"
2581         {te = p+1;}
2582 #line 281 "wikitext_ragel.rl"
2583         {act = 20;}
2584         goto st130;
2585 st130:
2586         if ( ++p == pe )
2587                 goto _test_eof130;
2588 case 130:
2589 #line 2590 "wikitext_ragel.c"
2590         if ( (*p) == 46 )
2591                 goto st92;
2592         if ( (*p) < 65 ) {
2593                 if ( 48 <= (*p) && (*p) <= 57 )
2594                         goto st91;
2595         } else if ( (*p) > 90 ) {
2596                 if ( 97 <= (*p) && (*p) <= 122 )
2597                         goto tr182;
2598         } else
2599                 goto tr182;
2600         goto tr172;
2601 tr182:
2602 #line 1 "wikitext_ragel.rl"
2603         {te = p+1;}
2604 #line 281 "wikitext_ragel.rl"
2605         {act = 20;}
2606         goto st131;
2607 st131:
2608         if ( ++p == pe )
2609                 goto _test_eof131;
2610 case 131:
2611 #line 2612 "wikitext_ragel.c"
2612         if ( (*p) == 46 )
2613                 goto st92;
2614         if ( (*p) < 65 ) {
2615                 if ( 48 <= (*p) && (*p) <= 57 )
2616                         goto st91;
2617         } else if ( (*p) > 90 ) {
2618                 if ( 97 <= (*p) && (*p) <= 122 )
2619                         goto tr183;
2620         } else
2621                 goto tr183;
2622         goto tr172;
2623 tr183:
2624 #line 1 "wikitext_ragel.rl"
2625         {te = p+1;}
2626 #line 281 "wikitext_ragel.rl"
2627         {act = 20;}
2628         goto st132;
2629 st132:
2630         if ( ++p == pe )
2631                 goto _test_eof132;
2632 case 132:
2633 #line 2634 "wikitext_ragel.c"
2634         if ( (*p) == 46 )
2635                 goto st92;
2636         if ( (*p) < 65 ) {
2637                 if ( 48 <= (*p) && (*p) <= 57 )
2638                         goto st91;
2639         } else if ( (*p) > 90 ) {
2640                 if ( 97 <= (*p) && (*p) <= 122 )
2641                         goto tr184;
2642         } else
2643                 goto tr184;
2644         goto tr172;
2645 tr184:
2646 #line 1 "wikitext_ragel.rl"
2647         {te = p+1;}
2648 #line 281 "wikitext_ragel.rl"
2649         {act = 20;}
2650         goto st133;
2651 st133:
2652         if ( ++p == pe )
2653                 goto _test_eof133;
2654 case 133:
2655 #line 2656 "wikitext_ragel.c"
2656         if ( (*p) == 46 )
2657                 goto st92;
2658         if ( (*p) < 65 ) {
2659                 if ( 48 <= (*p) && (*p) <= 57 )
2660                         goto st91;
2661         } else if ( (*p) > 90 ) {
2662                 if ( 97 <= (*p) && (*p) <= 122 )
2663                         goto st91;
2664         } else
2665                 goto st91;
2666         goto tr172;
2667 tr129:
2668 #line 1 "wikitext_ragel.rl"
2669         {te = p+1;}
2670 #line 426 "wikitext_ragel.rl"
2671         {act = 42;}
2672         goto st134;
2673 st134:
2674         if ( ++p == pe )
2675                 goto _test_eof134;
2676 case 134:
2677 #line 2678 "wikitext_ragel.c"
2678         switch( (*p) ) {
2679                 case 43: goto st98;
2680                 case 46: goto st20;
2681                 case 47: goto st98;
2682                 case 64: goto st109;
2683                 case 86: goto tr185;
2684                 case 92: goto st98;
2685                 case 94: goto st98;
2686                 case 95: goto tr121;
2687                 case 118: goto tr185;
2688                 case 126: goto st98;
2689         }
2690         if ( (*p) < 45 ) {
2691                 if ( 36 <= (*p) && (*p) <= 37 )
2692                         goto st98;
2693         } else if ( (*p) > 57 ) {
2694                 if ( (*p) > 90 ) {
2695                         if ( 97 <= (*p) && (*p) <= 122 )
2696                                 goto tr121;
2697                 } else if ( (*p) >= 65 )
2698                         goto tr121;
2699         } else
2700                 goto tr121;
2701         goto tr141;
2702 tr185:
2703 #line 1 "wikitext_ragel.rl"
2704         {te = p+1;}
2705 #line 426 "wikitext_ragel.rl"
2706         {act = 42;}
2707         goto st135;
2708 st135:
2709         if ( ++p == pe )
2710                 goto _test_eof135;
2711 case 135:
2712 #line 2713 "wikitext_ragel.c"
2713         switch( (*p) ) {
2714                 case 43: goto st98;
2715                 case 46: goto st20;
2716                 case 47: goto st98;
2717                 case 64: goto st109;
2718                 case 78: goto tr170;
2719                 case 92: goto st98;
2720                 case 94: goto st98;
2721                 case 95: goto tr121;
2722                 case 110: goto tr170;
2723                 case 126: goto st98;
2724         }
2725         if ( (*p) < 45 ) {
2726                 if ( 36 <= (*p) && (*p) <= 37 )
2727                         goto st98;
2728         } else if ( (*p) > 57 ) {
2729                 if ( (*p) > 90 ) {
2730                         if ( 97 <= (*p) && (*p) <= 122 )
2731                                 goto tr121;
2732                 } else if ( (*p) >= 65 )
2733                         goto tr121;
2734         } else
2735                 goto tr121;
2736         goto tr141;
2737 st136:
2738         if ( ++p == pe )
2739                 goto _test_eof136;
2740 case 136:
2741         if ( (*p) == 91 )
2742                 goto tr187;
2743         goto tr186;
2744 st137:
2745         if ( ++p == pe )
2746                 goto _test_eof137;
2747 case 137:
2748         if ( (*p) == 93 )
2749                 goto tr189;
2750         goto tr188;
2751 st138:
2752         if ( ++p == pe )
2753                 goto _test_eof138;
2754 case 138:
2755         if ( (*p) == 123 )
2756                 goto tr191;
2757         goto tr190;
2758 st139:
2759         if ( ++p == pe )
2760                 goto _test_eof139;
2761 case 139:
2762         if ( (*p) == 125 )
2763                 goto tr193;
2764         goto tr192;
2765         }
2766         _test_eof94: cs = 94; goto _test_eof; 
2767         _test_eof1: cs = 1; goto _test_eof; 
2768         _test_eof2: cs = 2; goto _test_eof; 
2769         _test_eof3: cs = 3; goto _test_eof; 
2770         _test_eof4: cs = 4; goto _test_eof; 
2771         _test_eof5: cs = 5; goto _test_eof; 
2772         _test_eof6: cs = 6; goto _test_eof; 
2773         _test_eof95: cs = 95; goto _test_eof; 
2774         _test_eof96: cs = 96; goto _test_eof; 
2775         _test_eof97: cs = 97; goto _test_eof; 
2776         _test_eof98: cs = 98; goto _test_eof; 
2777         _test_eof99: cs = 99; goto _test_eof; 
2778         _test_eof7: cs = 7; goto _test_eof; 
2779         _test_eof8: cs = 8; goto _test_eof; 
2780         _test_eof9: cs = 9; goto _test_eof; 
2781         _test_eof10: cs = 10; goto _test_eof; 
2782         _test_eof11: cs = 11; goto _test_eof; 
2783         _test_eof12: cs = 12; goto _test_eof; 
2784         _test_eof13: cs = 13; goto _test_eof; 
2785         _test_eof14: cs = 14; goto _test_eof; 
2786         _test_eof15: cs = 15; goto _test_eof; 
2787         _test_eof16: cs = 16; goto _test_eof; 
2788         _test_eof17: cs = 17; goto _test_eof; 
2789         _test_eof18: cs = 18; goto _test_eof; 
2790         _test_eof19: cs = 19; goto _test_eof; 
2791         _test_eof100: cs = 100; goto _test_eof; 
2792         _test_eof101: cs = 101; goto _test_eof; 
2793         _test_eof102: cs = 102; goto _test_eof; 
2794         _test_eof103: cs = 103; goto _test_eof; 
2795         _test_eof104: cs = 104; goto _test_eof; 
2796         _test_eof20: cs = 20; goto _test_eof; 
2797         _test_eof21: cs = 21; goto _test_eof; 
2798         _test_eof22: cs = 22; goto _test_eof; 
2799         _test_eof23: cs = 23; goto _test_eof; 
2800         _test_eof24: cs = 24; goto _test_eof; 
2801         _test_eof105: cs = 105; goto _test_eof; 
2802         _test_eof106: cs = 106; goto _test_eof; 
2803         _test_eof107: cs = 107; goto _test_eof; 
2804         _test_eof108: cs = 108; goto _test_eof; 
2805         _test_eof109: cs = 109; goto _test_eof; 
2806         _test_eof110: cs = 110; goto _test_eof; 
2807         _test_eof111: cs = 111; goto _test_eof; 
2808         _test_eof112: cs = 112; goto _test_eof; 
2809         _test_eof25: cs = 25; goto _test_eof; 
2810         _test_eof26: cs = 26; goto _test_eof; 
2811         _test_eof27: cs = 27; goto _test_eof; 
2812         _test_eof28: cs = 28; goto _test_eof; 
2813         _test_eof29: cs = 29; goto _test_eof; 
2814         _test_eof30: cs = 30; goto _test_eof; 
2815         _test_eof31: cs = 31; goto _test_eof; 
2816         _test_eof32: cs = 32; goto _test_eof; 
2817         _test_eof33: cs = 33; goto _test_eof; 
2818         _test_eof34: cs = 34; goto _test_eof; 
2819         _test_eof35: cs = 35; goto _test_eof; 
2820         _test_eof36: cs = 36; goto _test_eof; 
2821         _test_eof37: cs = 37; goto _test_eof; 
2822         _test_eof38: cs = 38; goto _test_eof; 
2823         _test_eof39: cs = 39; goto _test_eof; 
2824         _test_eof40: cs = 40; goto _test_eof; 
2825         _test_eof41: cs = 41; goto _test_eof; 
2826         _test_eof42: cs = 42; goto _test_eof; 
2827         _test_eof43: cs = 43; goto _test_eof; 
2828         _test_eof44: cs = 44; goto _test_eof; 
2829         _test_eof45: cs = 45; goto _test_eof; 
2830         _test_eof46: cs = 46; goto _test_eof; 
2831         _test_eof47: cs = 47; goto _test_eof; 
2832         _test_eof48: cs = 48; goto _test_eof; 
2833         _test_eof49: cs = 49; goto _test_eof; 
2834         _test_eof50: cs = 50; goto _test_eof; 
2835         _test_eof51: cs = 51; goto _test_eof; 
2836         _test_eof52: cs = 52; goto _test_eof; 
2837         _test_eof53: cs = 53; goto _test_eof; 
2838         _test_eof54: cs = 54; goto _test_eof; 
2839         _test_eof55: cs = 55; goto _test_eof; 
2840         _test_eof56: cs = 56; goto _test_eof; 
2841         _test_eof57: cs = 57; goto _test_eof; 
2842         _test_eof58: cs = 58; goto _test_eof; 
2843         _test_eof59: cs = 59; goto _test_eof; 
2844         _test_eof60: cs = 60; goto _test_eof; 
2845         _test_eof61: cs = 61; goto _test_eof; 
2846         _test_eof62: cs = 62; goto _test_eof; 
2847         _test_eof63: cs = 63; goto _test_eof; 
2848         _test_eof64: cs = 64; goto _test_eof; 
2849         _test_eof65: cs = 65; goto _test_eof; 
2850         _test_eof66: cs = 66; goto _test_eof; 
2851         _test_eof67: cs = 67; goto _test_eof; 
2852         _test_eof68: cs = 68; goto _test_eof; 
2853         _test_eof69: cs = 69; goto _test_eof; 
2854         _test_eof70: cs = 70; goto _test_eof; 
2855         _test_eof71: cs = 71; goto _test_eof; 
2856         _test_eof72: cs = 72; goto _test_eof; 
2857         _test_eof73: cs = 73; goto _test_eof; 
2858         _test_eof74: cs = 74; goto _test_eof; 
2859         _test_eof75: cs = 75; goto _test_eof; 
2860         _test_eof76: cs = 76; goto _test_eof; 
2861         _test_eof77: cs = 77; goto _test_eof; 
2862         _test_eof78: cs = 78; goto _test_eof; 
2863         _test_eof79: cs = 79; goto _test_eof; 
2864         _test_eof80: cs = 80; goto _test_eof; 
2865         _test_eof81: cs = 81; goto _test_eof; 
2866         _test_eof82: cs = 82; goto _test_eof; 
2867         _test_eof83: cs = 83; goto _test_eof; 
2868         _test_eof113: cs = 113; goto _test_eof; 
2869         _test_eof114: cs = 114; goto _test_eof; 
2870         _test_eof115: cs = 115; goto _test_eof; 
2871         _test_eof116: cs = 116; goto _test_eof; 
2872         _test_eof117: cs = 117; goto _test_eof; 
2873         _test_eof118: cs = 118; goto _test_eof; 
2874         _test_eof84: cs = 84; goto _test_eof; 
2875         _test_eof85: cs = 85; goto _test_eof; 
2876         _test_eof86: cs = 86; goto _test_eof; 
2877         _test_eof119: cs = 119; goto _test_eof; 
2878         _test_eof87: cs = 87; goto _test_eof; 
2879         _test_eof120: cs = 120; goto _test_eof; 
2880         _test_eof121: cs = 121; goto _test_eof; 
2881         _test_eof122: cs = 122; goto _test_eof; 
2882         _test_eof123: cs = 123; goto _test_eof; 
2883         _test_eof124: cs = 124; goto _test_eof; 
2884         _test_eof125: cs = 125; goto _test_eof; 
2885         _test_eof126: cs = 126; goto _test_eof; 
2886         _test_eof127: cs = 127; goto _test_eof; 
2887         _test_eof128: cs = 128; goto _test_eof; 
2888         _test_eof129: cs = 129; goto _test_eof; 
2889         _test_eof88: cs = 88; goto _test_eof; 
2890         _test_eof89: cs = 89; goto _test_eof; 
2891         _test_eof90: cs = 90; goto _test_eof; 
2892         _test_eof91: cs = 91; goto _test_eof; 
2893         _test_eof92: cs = 92; goto _test_eof; 
2894         _test_eof93: cs = 93; goto _test_eof; 
2895         _test_eof130: cs = 130; goto _test_eof; 
2896         _test_eof131: cs = 131; goto _test_eof; 
2897         _test_eof132: cs = 132; goto _test_eof; 
2898         _test_eof133: cs = 133; goto _test_eof; 
2899         _test_eof134: cs = 134; goto _test_eof; 
2900         _test_eof135: cs = 135; goto _test_eof; 
2901         _test_eof136: cs = 136; goto _test_eof; 
2902         _test_eof137: cs = 137; goto _test_eof; 
2903         _test_eof138: cs = 138; goto _test_eof; 
2904         _test_eof139: cs = 139; goto _test_eof; 
2905
2906         _test_eof: {}
2907         if ( p == eof )
2908         {
2909         switch ( cs ) {
2910         case 95: goto tr136;
2911         case 96: goto tr138;
2912         case 97: goto tr140;
2913         case 98: goto tr141;
2914         case 99: goto tr142;
2915         case 7: goto tr7;
2916         case 8: goto tr7;
2917         case 9: goto tr7;
2918         case 10: goto tr7;
2919         case 11: goto tr7;
2920         case 12: goto tr7;
2921         case 13: goto tr7;
2922         case 14: goto tr7;
2923         case 15: goto tr7;
2924         case 16: goto tr7;
2925         case 17: goto tr7;
2926         case 18: goto tr7;
2927         case 19: goto tr7;
2928         case 100: goto tr146;
2929         case 101: goto tr146;
2930         case 102: goto tr146;
2931         case 103: goto tr146;
2932         case 104: goto tr141;
2933         case 20: goto tr23;
2934         case 21: goto tr23;
2935         case 22: goto tr23;
2936         case 23: goto tr23;
2937         case 24: goto tr23;
2938         case 105: goto tr152;
2939         case 106: goto tr152;
2940         case 107: goto tr152;
2941         case 108: goto tr152;
2942         case 109: goto tr141;
2943         case 110: goto tr141;
2944         case 111: goto tr140;
2945         case 112: goto tr157;
2946         case 25: goto tr30;
2947         case 26: goto tr30;
2948         case 27: goto tr30;
2949         case 28: goto tr30;
2950         case 29: goto tr30;
2951         case 30: goto tr30;
2952         case 31: goto tr30;
2953         case 32: goto tr30;
2954         case 33: goto tr30;
2955         case 34: goto tr30;
2956         case 35: goto tr30;
2957         case 36: goto tr30;
2958         case 37: goto tr30;
2959         case 38: goto tr30;
2960         case 39: goto tr30;
2961         case 40: goto tr30;
2962         case 41: goto tr30;
2963         case 42: goto tr30;
2964         case 43: goto tr30;
2965         case 44: goto tr30;
2966         case 45: goto tr30;
2967         case 46: goto tr30;
2968         case 47: goto tr30;
2969         case 48: goto tr30;
2970         case 49: goto tr30;
2971         case 50: goto tr30;
2972         case 51: goto tr30;
2973         case 52: goto tr30;
2974         case 53: goto tr30;
2975         case 54: goto tr30;
2976         case 55: goto tr30;
2977         case 56: goto tr30;
2978         case 57: goto tr30;
2979         case 58: goto tr30;
2980         case 59: goto tr30;
2981         case 60: goto tr30;
2982         case 61: goto tr30;
2983         case 62: goto tr30;
2984         case 63: goto tr30;
2985         case 64: goto tr30;
2986         case 65: goto tr30;
2987         case 66: goto tr30;
2988         case 67: goto tr30;
2989         case 68: goto tr30;
2990         case 69: goto tr30;
2991         case 70: goto tr30;
2992         case 71: goto tr30;
2993         case 72: goto tr30;
2994         case 73: goto tr30;
2995         case 74: goto tr30;
2996         case 75: goto tr30;
2997         case 76: goto tr30;
2998         case 77: goto tr30;
2999         case 78: goto tr30;
3000         case 79: goto tr30;
3001         case 80: goto tr30;
3002         case 81: goto tr30;
3003         case 82: goto tr30;
3004         case 83: goto tr30;
3005         case 113: goto tr165;
3006         case 114: goto tr165;
3007         case 115: goto tr167;
3008         case 116: goto tr141;
3009         case 117: goto tr141;
3010         case 118: goto tr141;
3011         case 84: goto tr95;
3012         case 85: goto tr95;
3013         case 86: goto tr95;
3014         case 119: goto tr172;
3015         case 87: goto tr99;
3016         case 120: goto tr141;
3017         case 121: goto tr141;
3018         case 122: goto tr141;
3019         case 123: goto tr141;
3020         case 124: goto tr141;
3021         case 125: goto tr141;
3022         case 126: goto tr141;
3023         case 127: goto tr141;
3024         case 128: goto tr141;
3025         case 129: goto tr141;
3026         case 88: goto tr95;
3027         case 89: goto tr95;
3028         case 90: goto tr95;
3029         case 91: goto tr23;
3030         case 92: goto tr23;
3031         case 93: goto tr23;
3032         case 130: goto tr172;
3033         case 131: goto tr172;
3034         case 132: goto tr172;
3035         case 133: goto tr172;
3036         case 134: goto tr141;
3037         case 135: goto tr141;
3038         case 136: goto tr186;
3039         case 137: goto tr188;
3040         case 138: goto tr190;
3041         case 139: goto tr192;
3042         }
3043         }
3044
3045         _out: {}
3046         }
3047 #line 498 "wikitext_ragel.rl"
3048     if (cs == wikitext_error)
3049         rb_raise(eWikitextParserError, "failed before finding a token");
3050     else if (out->type == NO_TOKEN)
3051         rb_raise(eWikitextParserError, "failed to produce a token");
3052 }