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