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