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