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