File Coverage

tstr_cparse_datetime.c
Criterion Covered Total %
statement 906 3479 26.0
branch 284 1290 22.0
condition n/a
subroutine n/a
pod n/a
total 1190 4769 24.9


line stmt bran cond sub pod time code
1              
2             #line 1 "ragel/tstr_cparse_datetime.rl"
3             #include
4             #include
5             #include
6              
7             #include "tstr_parsed.h"
8             #include "tstr_token_parse.h"
9             #include "tstr_cparse.h"
10              
11              
12             #line 108 "ragel/tstr_cparse_datetime.rl"
13              
14              
15              
16             #line 17 "tstr_cparse_datetime.c"
17             static const int datetime_start = 1;
18             static const int datetime_first_final = 378;
19             static const int datetime_error = 0;
20              
21             static const int datetime_en_main = 1;
22              
23              
24             #line 111 "ragel/tstr_cparse_datetime.rl"
25              
26             tstr_parse_result_t tstr_cparse_datetime(const char* p,
27             size_t len,
28             tstr_parsed_t* parsed) {
29             int cs, v;
30             const char* pe = p + len;
31             const char* eof = pe;
32             const char* mark = NULL;
33             const char* mark_day = NULL;
34             tstr_parse_result_t result = TSTR_PARSE_OK;
35             char sep_char = 0;
36              
37             (void)tstr_parsed_init(parsed);
38              
39            
40             #line 41 "tstr_cparse_datetime.c"
41             {
42 197           cs = datetime_start;
43             }
44              
45             #line 126 "ragel/tstr_cparse_datetime.rl"
46            
47             #line 48 "tstr_cparse_datetime.c"
48             {
49             short _widec;
50 197 50         if ( p == pe )
51 0           goto _test_eof;
52 197           switch ( cs )
53             {
54 197           case 1:
55 197           switch( (*p) ) {
56 0           case 10: goto tr0;
57 0           case 65: goto tr3;
58 26           case 68: goto tr4;
59 0           case 70: goto tr5;
60 2           case 74: goto tr6;
61 16           case 77: goto tr7;
62 0           case 78: goto tr8;
63 0           case 79: goto tr9;
64 0           case 83: goto tr10;
65 2           case 84: goto tr11;
66 0           case 87: goto tr12;
67 0           case 97: goto tr3;
68 0           case 100: goto tr4;
69 0           case 102: goto tr5;
70 0           case 106: goto tr6;
71 1           case 109: goto tr7;
72 0           case 110: goto tr8;
73 0           case 111: goto tr9;
74 0           case 115: goto tr10;
75 0           case 116: goto tr11;
76 0           case 119: goto tr12;
77             }
78 150 50         if ( 48 <= (*p) && (*p) <= 57 )
    50          
79 150           goto tr2;
80 0           goto st0;
81 0           st0:
82 0           cs = 0;
83 0           goto _out;
84 0           tr0:
85             #line 4 "ragel/tstr_common.rl"
86             { mark = p; }
87             goto st2;
88             st2:
89             if ( ++p == pe )
90             goto _test_eof2;
91             case 2:
92             #line 93 "tstr_cparse_datetime.c"
93 0 0         if ( (*p) == 32 )
94 0           goto st3;
95 0           goto st0;
96 0           st3:
97 0 0         if ( ++p == pe )
98 0           goto _test_eof3;
99             case 3:
100 0 0         if ( (*p) == 32 )
101 0           goto st4;
102 0           goto st0;
103 0           st4:
104 0 0         if ( ++p == pe )
105 0           goto _test_eof4;
106             case 4:
107 0 0         if ( (*p) == 32 )
108 0           goto st5;
109 0           goto st0;
110 0           st5:
111 0 0         if ( ++p == pe )
112 0           goto _test_eof5;
113             case 5:
114 0 0         if ( (*p) == 32 )
115 0           goto st6;
116 0           goto st0;
117 0           st6:
118 0 0         if ( ++p == pe )
119 0           goto _test_eof6;
120             case 6:
121 0 0         if ( (*p) == 32 )
122 0           goto st7;
123 0           goto st0;
124 0           st7:
125 0 0         if ( ++p == pe )
126 0           goto _test_eof7;
127             case 7:
128 0 0         if ( (*p) == 32 )
129 0           goto st8;
130 0           goto st0;
131 0           st8:
132 0 0         if ( ++p == pe )
133 0           goto _test_eof8;
134             case 8:
135 0 0         if ( (*p) == 32 )
136 0           goto st9;
137 0           goto st0;
138 0           st9:
139 0 0         if ( ++p == pe )
140 0           goto _test_eof9;
141             case 9:
142 0 0         if ( (*p) == 32 )
143 0           goto st10;
144 0           goto st0;
145 0           st10:
146 0 0         if ( ++p == pe )
147 0           goto _test_eof10;
148             case 10:
149 0 0         if ( (*p) == 32 )
150 0           goto st11;
151 0           goto st0;
152 0           st11:
153 0 0         if ( ++p == pe )
154 0           goto _test_eof11;
155             case 11:
156 0 0         if ( (*p) == 32 )
157 0           goto st12;
158 0           goto st0;
159 0           st12:
160 0 0         if ( ++p == pe )
161 0           goto _test_eof12;
162             case 12:
163 0 0         if ( (*p) == 32 )
164 0           goto st13;
165 0           goto st0;
166 0           st13:
167 0 0         if ( ++p == pe )
168 0           goto _test_eof13;
169             case 13:
170 0 0         if ( (*p) == 32 )
171 0           goto st14;
172 0           goto st0;
173 0           st14:
174 0 0         if ( ++p == pe )
175 0           goto _test_eof14;
176             case 14:
177 0 0         if ( (*p) == 32 )
178 0           goto st15;
179 0           goto st0;
180 0           st15:
181 0 0         if ( ++p == pe )
182 0           goto _test_eof15;
183             case 15:
184 0 0         if ( (*p) == 32 )
185 0           goto st16;
186 0           goto st0;
187 0           st16:
188 0 0         if ( ++p == pe )
189 0           goto _test_eof16;
190             case 16:
191 0 0         if ( (*p) == 32 )
192 0           goto st17;
193 0           goto st0;
194 0           st17:
195 0 0         if ( ++p == pe )
196 0           goto _test_eof17;
197             case 17:
198 0 0         if ( (*p) == 32 )
199 0           goto st18;
200 0           goto st0;
201 0           st18:
202 0 0         if ( ++p == pe )
203 0           goto _test_eof18;
204             case 18:
205 0 0         if ( (*p) == 32 )
206 0           goto st19;
207 0           goto st0;
208 0           st19:
209 0 0         if ( ++p == pe )
210 0           goto _test_eof19;
211             case 19:
212 0 0         if ( (*p) == 32 )
213 0           goto st20;
214 0           goto st0;
215 0           st20:
216 0 0         if ( ++p == pe )
217 0           goto _test_eof20;
218             case 20:
219 0 0         if ( (*p) == 32 )
220 0           goto st21;
221 0           goto st0;
222 0           st21:
223 0 0         if ( ++p == pe )
224 0           goto _test_eof21;
225             case 21:
226 0 0         if ( (*p) == 32 )
227 0           goto st22;
228 0           goto st0;
229 0           st22:
230 0 0         if ( ++p == pe )
231 0           goto _test_eof22;
232             case 22:
233 0 0         if ( (*p) == 32 )
234 0           goto st23;
235 0           goto st0;
236 0           st23:
237 0 0         if ( ++p == pe )
238 0           goto _test_eof23;
239             case 23:
240 0 0         if ( (*p) == 32 )
241 0           goto st24;
242 0           goto st0;
243 0           st24:
244 0 0         if ( ++p == pe )
245 0           goto _test_eof24;
246             case 24:
247 0 0         if ( (*p) == 32 )
248 0           goto st25;
249 0           goto st0;
250 0           st25:
251 0 0         if ( ++p == pe )
252 0           goto _test_eof25;
253             case 25:
254 0           switch( (*p) ) {
255 0           case 70: goto st26;
256 0           case 102: goto st26;
257             }
258 0           goto st0;
259 0           st26:
260 0 0         if ( ++p == pe )
261 0           goto _test_eof26;
262             case 26:
263 0           switch( (*p) ) {
264 0           case 82: goto st27;
265 0           case 114: goto st27;
266             }
267 0           goto st0;
268 0           st27:
269 0 0         if ( ++p == pe )
270 0           goto _test_eof27;
271             case 27:
272 0           switch( (*p) ) {
273 0           case 73: goto st28;
274 0           case 105: goto st28;
275             }
276 0           goto st0;
277 6           st28:
278 6 50         if ( ++p == pe )
279 0           goto _test_eof28;
280             case 28:
281 6           switch( (*p) ) {
282 1           case 32: goto tr39;
283 5           case 44: goto tr40;
284 0           case 46: goto tr41;
285             }
286 0           goto st0;
287 4           tr39:
288             #line 38 "ragel/tstr_common.rl"
289             {
290             if (!tstr_token_parse_day_name(mark, p - mark, &v)) {
291             result = TSTR_PARSE_ERR_DAY_NAME;
292             {p++; cs = 29; goto _out;}
293             }
294             tstr_parsed_set_day_name(parsed, v);
295             }
296             goto st29;
297             st29:
298             if ( ++p == pe )
299             goto _test_eof29;
300             case 29:
301             #line 302 "tstr_cparse_datetime.c"
302 19           switch( (*p) ) {
303 0           case 65: goto tr3;
304 3           case 68: goto tr4;
305 0           case 70: goto tr42;
306 0           case 74: goto tr6;
307 0           case 77: goto tr43;
308 0           case 78: goto tr8;
309 0           case 79: goto tr9;
310 0           case 83: goto tr44;
311 0           case 97: goto tr3;
312 0           case 100: goto tr4;
313 0           case 102: goto tr42;
314 0           case 106: goto tr6;
315 0           case 109: goto tr43;
316 0           case 110: goto tr8;
317 0           case 111: goto tr9;
318 0           case 115: goto tr44;
319             }
320 16 50         if ( 48 <= (*p) && (*p) <= 57 )
    50          
321 16           goto tr2;
322 0           goto st0;
323 166           tr2:
324             #line 4 "ragel/tstr_common.rl"
325             { mark = p; }
326             #line 21 "ragel/tstr_cparse_datetime.rl"
327             {
328             mark_day = p;
329             }
330             goto st30;
331             st30:
332             if ( ++p == pe )
333             goto _test_eof30;
334             case 30:
335             #line 336 "tstr_cparse_datetime.c"
336 166           switch( (*p) ) {
337 1           case 32: goto tr45;
338 0           case 46: goto tr47;
339 0           case 65: goto tr49;
340 0           case 68: goto tr50;
341 0           case 70: goto tr51;
342 1           case 73: goto tr52;
343 1           case 74: goto tr53;
344 0           case 77: goto tr54;
345 0           case 78: goto tr55;
346 0           case 79: goto tr56;
347 0           case 82: goto st293;
348 0           case 83: goto tr58;
349 0           case 84: goto st297;
350 0           case 86: goto tr60;
351 0           case 88: goto tr61;
352 0           case 97: goto tr49;
353 0           case 100: goto tr50;
354 0           case 102: goto tr51;
355 0           case 105: goto tr52;
356 0           case 106: goto tr53;
357 0           case 109: goto tr54;
358 1           case 110: goto tr55;
359 0           case 111: goto tr56;
360 1           case 114: goto st293;
361 1           case 115: goto tr58;
362 0           case 116: goto st297;
363 0           case 118: goto tr60;
364 0           case 120: goto tr61;
365             }
366 160 100         if ( (*p) > 47 ) {
367 159 50         if ( 48 <= (*p) && (*p) <= 57 )
    50          
368 159           goto st163;
369 1 50         } else if ( (*p) >= 45 )
370 1           goto tr46;
371 0           goto st0;
372 75           tr45:
373             #line 25 "ragel/tstr_cparse_datetime.rl"
374             {
375             mark = mark_day;
376             }
377             #line 30 "ragel/tstr_common.rl"
378             {
379             if (!tstr_token_parse_day(mark, p - mark, &v)) {
380             result = TSTR_PARSE_ERR_DAY;
381             {p++; cs = 31; goto _out;}
382             }
383             tstr_parsed_set_day(parsed, v);
384             }
385             goto st31;
386             st31:
387             if ( ++p == pe )
388             goto _test_eof31;
389             case 31:
390             #line 391 "tstr_cparse_datetime.c"
391 78           switch( (*p) ) {
392 4           case 65: goto tr62;
393 33           case 68: goto tr63;
394 3           case 70: goto tr64;
395 6           case 73: goto tr65;
396 8           case 74: goto tr66;
397 5           case 77: goto tr67;
398 2           case 78: goto tr68;
399 2           case 79: goto tr69;
400 3           case 83: goto tr70;
401 5           case 86: goto tr71;
402 6           case 88: goto tr72;
403 0           case 97: goto tr62;
404 1           case 100: goto tr63;
405 0           case 102: goto tr64;
406 0           case 105: goto tr65;
407 0           case 106: goto tr66;
408 0           case 109: goto tr67;
409 0           case 110: goto tr68;
410 0           case 111: goto tr69;
411 0           case 115: goto tr70;
412 0           case 118: goto tr71;
413 0           case 120: goto tr72;
414             }
415 0           goto st0;
416 4           tr62:
417             #line 4 "ragel/tstr_common.rl"
418             { mark = p; }
419             goto st32;
420             st32:
421             if ( ++p == pe )
422             goto _test_eof32;
423             case 32:
424             #line 425 "tstr_cparse_datetime.c"
425 4           switch( (*p) ) {
426 0           case 80: goto st33;
427 0           case 85: goto st76;
428 2           case 112: goto st33;
429 2           case 117: goto st76;
430             }
431 0           goto st0;
432 2           st33:
433 2 50         if ( ++p == pe )
434 0           goto _test_eof33;
435             case 33:
436 2           switch( (*p) ) {
437 0           case 82: goto st34;
438 2           case 114: goto st34;
439             }
440 0           goto st0;
441 2           st34:
442 2 50         if ( ++p == pe )
443 0           goto _test_eof34;
444             case 34:
445 2           switch( (*p) ) {
446 1           case 32: goto tr76;
447 0           case 44: goto tr77;
448 0           case 46: goto tr77;
449 0           case 73: goto st74;
450 1           case 105: goto st74;
451             }
452 0           goto st0;
453 8           tr338:
454             #line 25 "ragel/tstr_cparse_datetime.rl"
455             {
456             mark = mark_day;
457             }
458             #line 30 "ragel/tstr_common.rl"
459             {
460             if (!tstr_token_parse_day(mark, p - mark, &v)) {
461             result = TSTR_PARSE_ERR_DAY;
462             {p++; cs = 35; goto _out;}
463             }
464             tstr_parsed_set_day(parsed, v);
465             }
466             goto st35;
467             tr76:
468             #line 22 "ragel/tstr_common.rl"
469             {
470             if (!tstr_token_parse_month(mark, p - mark, &v)) {
471             result = TSTR_PARSE_ERR_MONTH;
472             {p++; cs = 35; goto _out;}
473             }
474             tstr_parsed_set_month(parsed, v);
475             }
476             goto st35;
477             tr348:
478             #line 30 "ragel/tstr_common.rl"
479             {
480             if (!tstr_token_parse_day(mark, p - mark, &v)) {
481             result = TSTR_PARSE_ERR_DAY;
482             {p++; cs = 35; goto _out;}
483             }
484             tstr_parsed_set_day(parsed, v);
485             }
486             goto st35;
487             st35:
488             if ( ++p == pe )
489             goto _test_eof35;
490             case 35:
491             #line 492 "tstr_cparse_datetime.c"
492 118 50         if ( 48 <= (*p) && (*p) <= 57 )
    50          
493 118           goto tr79;
494 0           goto st0;
495 118           tr79:
496             #line 4 "ragel/tstr_common.rl"
497             { mark = p; }
498             goto st36;
499             tr294:
500             #line 22 "ragel/tstr_common.rl"
501             {
502             if (!tstr_token_parse_month(mark, p - mark, &v)) {
503             result = TSTR_PARSE_ERR_MONTH;
504             {p++; cs = 36; goto _out;}
505             }
506             tstr_parsed_set_month(parsed, v);
507             }
508             #line 4 "ragel/tstr_common.rl"
509             { mark = p; }
510             goto st36;
511             st36:
512             if ( ++p == pe )
513             goto _test_eof36;
514             case 36:
515             #line 516 "tstr_cparse_datetime.c"
516 125 50         if ( 48 <= (*p) && (*p) <= 57 )
    50          
517 125           goto st37;
518 0           goto st0;
519 125           st37:
520 125 50         if ( ++p == pe )
521 0           goto _test_eof37;
522             case 37:
523 125 50         if ( 48 <= (*p) && (*p) <= 57 )
    50          
524 125           goto st38;
525 0           goto st0;
526 125           st38:
527 125 50         if ( ++p == pe )
528 0           goto _test_eof38;
529             case 38:
530 125 50         if ( 48 <= (*p) && (*p) <= 57 )
    50          
531 125           goto st378;
532 0           goto st0;
533 125           st378:
534 125 100         if ( ++p == pe )
535 84           goto _test_eof378;
536             case 378:
537 41           switch( (*p) ) {
538 38           case 32: goto tr398;
539 3           case 44: goto tr399;
540 0           case 84: goto tr400;
541 0           case 116: goto tr400;
542             }
543 0           goto st0;
544 5           tr468:
545             #line 30 "ragel/tstr_common.rl"
546             {
547             if (!tstr_token_parse_day(mark, p - mark, &v)) {
548             result = TSTR_PARSE_ERR_DAY;
549             {p++; cs = 39; goto _out;}
550             }
551             tstr_parsed_set_day(parsed, v);
552             }
553             goto st39;
554             tr398:
555             #line 6 "ragel/tstr_common.rl"
556             {
557             if (!tstr_token_parse_year(mark, p - mark, &v)) {
558             result = TSTR_PARSE_ERR_YEAR;
559             {p++; cs = 39; goto _out;}
560             }
561             tstr_parsed_set_year4(parsed, v);
562             }
563             goto st39;
564             st39:
565             if ( ++p == pe )
566             goto _test_eof39;
567             case 39:
568             #line 569 "tstr_cparse_datetime.c"
569 43           switch( (*p) ) {
570 1           case 65: goto st70;
571 3           case 97: goto st70;
572             }
573 39 50         if ( 48 <= (*p) && (*p) <= 57 )
    50          
574 39           goto tr83;
575 0           goto st0;
576 94           tr83:
577             #line 4 "ragel/tstr_common.rl"
578             { mark = p; }
579             goto st40;
580             st40:
581             if ( ++p == pe )
582             goto _test_eof40;
583             case 40:
584             #line 585 "tstr_cparse_datetime.c"
585 94           switch( (*p) ) {
586 1           case 32: goto tr85;
587 4           case 58: goto tr87;
588 0           case 65: goto tr88;
589 0           case 80: goto tr88;
590 0           case 97: goto tr88;
591 0           case 112: goto tr88;
592             }
593 89 50         if ( 48 <= (*p) && (*p) <= 57 )
    50          
594 89           goto st62;
595 0           goto st0;
596 3           tr85:
597             #line 46 "ragel/tstr_common.rl"
598             {
599             if (!tstr_token_parse_hour(mark, p - mark, &v)) {
600             result = TSTR_PARSE_ERR_HOUR;
601             {p++; cs = 41; goto _out;}
602             }
603             tstr_parsed_set_hour(parsed, v);
604             }
605             goto st41;
606             st41:
607             if ( ++p == pe )
608             goto _test_eof41;
609             case 41:
610             #line 611 "tstr_cparse_datetime.c"
611 3           switch( (*p) ) {
612 1           case 65: goto tr89;
613 2           case 80: goto tr89;
614 0           case 97: goto tr89;
615 0           case 112: goto tr89;
616             }
617 0           goto st0;
618 7           tr89:
619             #line 4 "ragel/tstr_common.rl"
620             { mark = p; }
621             goto st42;
622             tr88:
623             #line 46 "ragel/tstr_common.rl"
624             {
625             if (!tstr_token_parse_hour(mark, p - mark, &v)) {
626             result = TSTR_PARSE_ERR_HOUR;
627             {p++; cs = 42; goto _out;}
628             }
629             tstr_parsed_set_hour(parsed, v);
630             }
631             #line 4 "ragel/tstr_common.rl"
632             { mark = p; }
633             goto st42;
634             tr429:
635             #line 54 "ragel/tstr_common.rl"
636             {
637             if (!tstr_token_parse_minute(mark, p - mark, &v)) {
638             result = TSTR_PARSE_ERR_MINUTE;
639             {p++; cs = 42; goto _out;}
640             }
641             tstr_parsed_set_minute(parsed, v);
642             }
643             #line 4 "ragel/tstr_common.rl"
644             { mark = p; }
645             goto st42;
646             tr449:
647             #line 62 "ragel/tstr_common.rl"
648             {
649             if (!tstr_token_parse_second(mark, p - mark, &v)) {
650             result = TSTR_PARSE_ERR_SECOND;
651             {p++; cs = 42; goto _out;}
652             }
653             tstr_parsed_set_second(parsed, v);
654             }
655             #line 4 "ragel/tstr_common.rl"
656             { mark = p; }
657             goto st42;
658             tr459:
659             #line 70 "ragel/tstr_common.rl"
660             {
661             if (!tstr_token_parse_fraction(mark, p - mark, &v)) {
662             result = TSTR_PARSE_ERR_FRACTION;
663             {p++; cs = 42; goto _out;}
664             }
665             tstr_parsed_set_fraction(parsed, v);
666             }
667             #line 4 "ragel/tstr_common.rl"
668             { mark = p; }
669             goto st42;
670             st42:
671             if ( ++p == pe )
672             goto _test_eof42;
673             case 42:
674             #line 675 "tstr_cparse_datetime.c"
675 9           switch( (*p) ) {
676 2           case 46: goto st43;
677 5           case 77: goto st379;
678 2           case 109: goto st379;
679             }
680 0           goto st0;
681 4           st43:
682 4 50         if ( ++p == pe )
683 0           goto _test_eof43;
684             case 43:
685 4           switch( (*p) ) {
686 2           case 77: goto st44;
687 2           case 109: goto st44;
688             }
689 0           goto st0;
690 4           st44:
691 4 50         if ( ++p == pe )
692 0           goto _test_eof44;
693             case 44:
694 4 50         if ( (*p) == 46 )
695 4           goto st379;
696 0           goto st0;
697 11           st379:
698 11 100         if ( ++p == pe )
699 9           goto _test_eof379;
700             case 379:
701 2           switch( (*p) ) {
702 2           case 32: goto tr401;
703 0           case 43: goto tr402;
704 0           case 45: goto tr402;
705 0           case 71: goto tr404;
706 0           case 85: goto tr405;
707 0           case 90: goto tr406;
708 0           case 122: goto tr407;
709             }
710 0 0         if ( 65 <= (*p) && (*p) <= 89 )
    0          
711 0           goto tr403;
712 0           goto st0;
713 2           tr401:
714             #line 98 "ragel/tstr_common.rl"
715             {
716             if (!tstr_token_parse_meridiem(mark, p - mark, &v)) {
717             result = TSTR_PARSE_ERR_MERIDIEM;
718             {p++; cs = 45; goto _out;}
719             }
720             tstr_parsed_set_meridiem(parsed, v);
721             }
722             goto st45;
723             st45:
724             if ( ++p == pe )
725             goto _test_eof45;
726             case 45:
727             #line 728 "tstr_cparse_datetime.c"
728 2           switch( (*p) ) {
729 0           case 43: goto tr93;
730 0           case 45: goto tr93;
731 0           case 71: goto tr95;
732 2           case 85: goto tr96;
733 0           case 90: goto tr97;
734 0           case 122: goto tr98;
735             }
736 0 0         if ( 65 <= (*p) && (*p) <= 89 )
    0          
737 0           goto tr94;
738 0           goto st0;
739 8           tr93:
740             #line 4 "ragel/tstr_common.rl"
741             { mark = p; }
742             goto st46;
743             tr402:
744             #line 98 "ragel/tstr_common.rl"
745             {
746             if (!tstr_token_parse_meridiem(mark, p - mark, &v)) {
747             result = TSTR_PARSE_ERR_MERIDIEM;
748             {p++; cs = 46; goto _out;}
749             }
750             tstr_parsed_set_meridiem(parsed, v);
751             }
752             #line 4 "ragel/tstr_common.rl"
753             { mark = p; }
754             goto st46;
755             tr422:
756             #line 54 "ragel/tstr_common.rl"
757             {
758             if (!tstr_token_parse_minute(mark, p - mark, &v)) {
759             result = TSTR_PARSE_ERR_MINUTE;
760             {p++; cs = 46; goto _out;}
761             }
762             tstr_parsed_set_minute(parsed, v);
763             }
764             #line 4 "ragel/tstr_common.rl"
765             { mark = p; }
766             goto st46;
767             tr442:
768             #line 62 "ragel/tstr_common.rl"
769             {
770             if (!tstr_token_parse_second(mark, p - mark, &v)) {
771             result = TSTR_PARSE_ERR_SECOND;
772             {p++; cs = 46; goto _out;}
773             }
774             tstr_parsed_set_second(parsed, v);
775             }
776             #line 4 "ragel/tstr_common.rl"
777             { mark = p; }
778             goto st46;
779             tr452:
780             #line 70 "ragel/tstr_common.rl"
781             {
782             if (!tstr_token_parse_fraction(mark, p - mark, &v)) {
783             result = TSTR_PARSE_ERR_FRACTION;
784             {p++; cs = 46; goto _out;}
785             }
786             tstr_parsed_set_fraction(parsed, v);
787             }
788             #line 4 "ragel/tstr_common.rl"
789             { mark = p; }
790             goto st46;
791             st46:
792             if ( ++p == pe )
793             goto _test_eof46;
794             case 46:
795             #line 796 "tstr_cparse_datetime.c"
796 30 50         if ( 48 <= (*p) && (*p) <= 57 )
    50          
797 30           goto st47;
798 0           goto st0;
799 30           st47:
800 30 50         if ( ++p == pe )
801 0           goto _test_eof47;
802             case 47:
803 30 50         if ( 48 <= (*p) && (*p) <= 57 )
    50          
804 30           goto st380;
805 0           goto st0;
806 34           st380:
807 34 100         if ( ++p == pe )
808 6           goto _test_eof380;
809             case 380:
810 28           switch( (*p) ) {
811 0           case 32: goto tr408;
812 13           case 58: goto st54;
813 0           case 91: goto tr410;
814             }
815 15 50         if ( 48 <= (*p) && (*p) <= 57 )
    50          
816 15           goto st51;
817 0           goto st0;
818 5           tr408:
819             #line 78 "ragel/tstr_common.rl"
820             {
821             if (!tstr_token_parse_tz_offset(mark, p - mark, &v)) {
822             result = TSTR_PARSE_ERR_OFFSET;
823             {p++; cs = 48; goto _out;}
824             }
825             tstr_parsed_set_offset(parsed, v);
826             }
827             goto st48;
828             tr411:
829             #line 94 "ragel/tstr_common.rl"
830             {
831             tstr_parsed_set_tz_annotation(parsed, mark, p - mark);
832             }
833             goto st48;
834             tr413:
835             #line 90 "ragel/tstr_common.rl"
836             {
837             tstr_parsed_set_tz_abbrev(parsed, mark, p - mark);
838             }
839             goto st48;
840             tr418:
841             #line 86 "ragel/tstr_common.rl"
842             {
843             tstr_parsed_set_tz_utc(parsed, mark, p - mark);
844             }
845             goto st48;
846             tr438:
847             #line 86 "ragel/tstr_common.rl"
848             {
849             tstr_parsed_set_tz_utc(parsed, mark, p - mark);
850             }
851             #line 90 "ragel/tstr_common.rl"
852             {
853             tstr_parsed_set_tz_abbrev(parsed, mark, p - mark);
854             }
855             goto st48;
856             st48:
857             if ( ++p == pe )
858             goto _test_eof48;
859             case 48:
860             #line 861 "tstr_cparse_datetime.c"
861 5 50         if ( (*p) == 40 )
862 5           goto st49;
863 0           goto st0;
864 5           st49:
865 5 50         if ( ++p == pe )
866 0           goto _test_eof49;
867             case 49:
868 5 50         if ( 40 <= (*p) && (*p) <= 41 )
    50          
869 0           goto st0;
870 5           goto st50;
871 51           st50:
872 51 50         if ( ++p == pe )
873 0           goto _test_eof50;
874             case 50:
875 51           switch( (*p) ) {
876 0           case 40: goto st0;
877 5           case 41: goto st381;
878             }
879 46           goto st50;
880 5           st381:
881 5 50         if ( ++p == pe )
882 5           goto _test_eof381;
883             case 381:
884 0           goto st0;
885 28           st51:
886 28 50         if ( ++p == pe )
887 0           goto _test_eof51;
888             case 51:
889 28 50         if ( 48 <= (*p) && (*p) <= 57 )
    50          
890 28           goto st382;
891 0           goto st0;
892 28           st382:
893 28 100         if ( ++p == pe )
894 22           goto _test_eof382;
895             case 382:
896 6           switch( (*p) ) {
897 3           case 32: goto tr408;
898 3           case 91: goto tr410;
899             }
900 0           goto st0;
901 3           tr410:
902             #line 78 "ragel/tstr_common.rl"
903             {
904             if (!tstr_token_parse_tz_offset(mark, p - mark, &v)) {
905             result = TSTR_PARSE_ERR_OFFSET;
906             {p++; cs = 52; goto _out;}
907             }
908             tstr_parsed_set_offset(parsed, v);
909             }
910             #line 4 "ragel/tstr_common.rl"
911             { mark = p; }
912             goto st52;
913             tr415:
914             #line 90 "ragel/tstr_common.rl"
915             {
916             tstr_parsed_set_tz_abbrev(parsed, mark, p - mark);
917             }
918             #line 4 "ragel/tstr_common.rl"
919             { mark = p; }
920             goto st52;
921             tr420:
922             #line 86 "ragel/tstr_common.rl"
923             {
924             tstr_parsed_set_tz_utc(parsed, mark, p - mark);
925             }
926             #line 4 "ragel/tstr_common.rl"
927             { mark = p; }
928             goto st52;
929             tr439:
930             #line 86 "ragel/tstr_common.rl"
931             {
932             tstr_parsed_set_tz_utc(parsed, mark, p - mark);
933             }
934             #line 90 "ragel/tstr_common.rl"
935             {
936             tstr_parsed_set_tz_abbrev(parsed, mark, p - mark);
937             }
938             #line 4 "ragel/tstr_common.rl"
939             { mark = p; }
940             goto st52;
941             st52:
942             if ( ++p == pe )
943             goto _test_eof52;
944             case 52:
945             #line 946 "tstr_cparse_datetime.c"
946 4           switch( (*p) ) {
947 0           case 91: goto st0;
948 0           case 93: goto st0;
949             }
950 4           goto st53;
951 60           st53:
952 60 50         if ( ++p == pe )
953 0           goto _test_eof53;
954             case 53:
955 60           switch( (*p) ) {
956 0           case 91: goto st0;
957 4           case 93: goto st383;
958             }
959 56           goto st53;
960 4           st383:
961 4 100         if ( ++p == pe )
962 3           goto _test_eof383;
963             case 383:
964 1           switch( (*p) ) {
965 0           case 32: goto tr411;
966 1           case 91: goto st52;
967             }
968 0           goto st0;
969 13           st54:
970 13 50         if ( ++p == pe )
971 0           goto _test_eof54;
972             case 54:
973 13 50         if ( 48 <= (*p) && (*p) <= 57 )
    50          
974 13           goto st51;
975 0           goto st0;
976 2           tr94:
977             #line 4 "ragel/tstr_common.rl"
978             { mark = p; }
979             goto st55;
980             tr403:
981             #line 98 "ragel/tstr_common.rl"
982             {
983             if (!tstr_token_parse_meridiem(mark, p - mark, &v)) {
984             result = TSTR_PARSE_ERR_MERIDIEM;
985             {p++; cs = 55; goto _out;}
986             }
987             tstr_parsed_set_meridiem(parsed, v);
988             }
989             #line 4 "ragel/tstr_common.rl"
990             { mark = p; }
991             goto st55;
992             tr425:
993             #line 54 "ragel/tstr_common.rl"
994             {
995             if (!tstr_token_parse_minute(mark, p - mark, &v)) {
996             result = TSTR_PARSE_ERR_MINUTE;
997             {p++; cs = 55; goto _out;}
998             }
999             tstr_parsed_set_minute(parsed, v);
1000             }
1001             #line 4 "ragel/tstr_common.rl"
1002             { mark = p; }
1003             goto st55;
1004             tr445:
1005             #line 62 "ragel/tstr_common.rl"
1006             {
1007             if (!tstr_token_parse_second(mark, p - mark, &v)) {
1008             result = TSTR_PARSE_ERR_SECOND;
1009             {p++; cs = 55; goto _out;}
1010             }
1011             tstr_parsed_set_second(parsed, v);
1012             }
1013             #line 4 "ragel/tstr_common.rl"
1014             { mark = p; }
1015             goto st55;
1016             tr455:
1017             #line 70 "ragel/tstr_common.rl"
1018             {
1019             if (!tstr_token_parse_fraction(mark, p - mark, &v)) {
1020             result = TSTR_PARSE_ERR_FRACTION;
1021             {p++; cs = 55; goto _out;}
1022             }
1023             tstr_parsed_set_fraction(parsed, v);
1024             }
1025             #line 4 "ragel/tstr_common.rl"
1026             { mark = p; }
1027             goto st55;
1028             st55:
1029             if ( ++p == pe )
1030             goto _test_eof55;
1031             case 55:
1032             #line 1033 "tstr_cparse_datetime.c"
1033 2 50         if ( (*p) > 90 ) {
1034 0 0         if ( 97 <= (*p) && (*p) <= 122 )
    0          
1035 0           goto st56;
1036 2 50         } else if ( (*p) >= 65 )
1037 2           goto st56;
1038 0           goto st0;
1039 2           st56:
1040 2 50         if ( ++p == pe )
1041 0           goto _test_eof56;
1042             case 56:
1043 2 50         if ( 65 <= (*p) && (*p) <= 90 )
    50          
1044 2           goto st384;
1045 0           goto st0;
1046 2           st384:
1047 2 100         if ( ++p == pe )
1048 1           goto _test_eof384;
1049             case 384:
1050 1           switch( (*p) ) {
1051 0           case 32: goto tr413;
1052 0           case 91: goto tr415;
1053             }
1054 1 50         if ( 65 <= (*p) && (*p) <= 90 )
    50          
1055 1           goto st385;
1056 0           goto st0;
1057 1           st385:
1058 1 50         if ( ++p == pe )
1059 1           goto _test_eof385;
1060             case 385:
1061 0           switch( (*p) ) {
1062 0           case 32: goto tr413;
1063 0           case 91: goto tr415;
1064             }
1065 0 0         if ( 65 <= (*p) && (*p) <= 90 )
    0          
1066 0           goto st386;
1067 0           goto st0;
1068 0           st386:
1069 0 0         if ( ++p == pe )
1070 0           goto _test_eof386;
1071             case 386:
1072 0           switch( (*p) ) {
1073 0           case 32: goto tr413;
1074 0           case 91: goto tr415;
1075             }
1076 0 0         if ( 65 <= (*p) && (*p) <= 90 )
    0          
1077 0           goto st387;
1078 0           goto st0;
1079 0           st387:
1080 0 0         if ( ++p == pe )
1081 0           goto _test_eof387;
1082             case 387:
1083 0           switch( (*p) ) {
1084 0           case 32: goto tr413;
1085 0           case 91: goto tr415;
1086             }
1087 0           goto st0;
1088 8           tr95:
1089             #line 4 "ragel/tstr_common.rl"
1090             { mark = p; }
1091             goto st57;
1092             tr404:
1093             #line 98 "ragel/tstr_common.rl"
1094             {
1095             if (!tstr_token_parse_meridiem(mark, p - mark, &v)) {
1096             result = TSTR_PARSE_ERR_MERIDIEM;
1097             {p++; cs = 57; goto _out;}
1098             }
1099             tstr_parsed_set_meridiem(parsed, v);
1100             }
1101             #line 4 "ragel/tstr_common.rl"
1102             { mark = p; }
1103             goto st57;
1104             tr426:
1105             #line 54 "ragel/tstr_common.rl"
1106             {
1107             if (!tstr_token_parse_minute(mark, p - mark, &v)) {
1108             result = TSTR_PARSE_ERR_MINUTE;
1109             {p++; cs = 57; goto _out;}
1110             }
1111             tstr_parsed_set_minute(parsed, v);
1112             }
1113             #line 4 "ragel/tstr_common.rl"
1114             { mark = p; }
1115             goto st57;
1116             tr446:
1117             #line 62 "ragel/tstr_common.rl"
1118             {
1119             if (!tstr_token_parse_second(mark, p - mark, &v)) {
1120             result = TSTR_PARSE_ERR_SECOND;
1121             {p++; cs = 57; goto _out;}
1122             }
1123             tstr_parsed_set_second(parsed, v);
1124             }
1125             #line 4 "ragel/tstr_common.rl"
1126             { mark = p; }
1127             goto st57;
1128             tr456:
1129             #line 70 "ragel/tstr_common.rl"
1130             {
1131             if (!tstr_token_parse_fraction(mark, p - mark, &v)) {
1132             result = TSTR_PARSE_ERR_FRACTION;
1133             {p++; cs = 57; goto _out;}
1134             }
1135             tstr_parsed_set_fraction(parsed, v);
1136             }
1137             #line 4 "ragel/tstr_common.rl"
1138             { mark = p; }
1139             goto st57;
1140             st57:
1141             if ( ++p == pe )
1142             goto _test_eof57;
1143             case 57:
1144             #line 1145 "tstr_cparse_datetime.c"
1145 9 50         if ( (*p) == 77 )
1146 9           goto st58;
1147 0 0         if ( (*p) > 90 ) {
1148 0 0         if ( 97 <= (*p) && (*p) <= 122 )
    0          
1149 0           goto st56;
1150 0 0         } else if ( (*p) >= 65 )
1151 0           goto st56;
1152 0           goto st0;
1153 9           st58:
1154 9 50         if ( ++p == pe )
1155 0           goto _test_eof58;
1156             case 58:
1157 9 50         if ( (*p) == 84 )
1158 9           goto st388;
1159 0 0         if ( 65 <= (*p) && (*p) <= 90 )
    0          
1160 0           goto st384;
1161 0           goto st0;
1162 16           st388:
1163 16 100         if ( ++p == pe )
1164 6           goto _test_eof388;
1165             case 388:
1166 10           switch( (*p) ) {
1167 0           case 32: goto tr418;
1168 9           case 43: goto tr419;
1169 1           case 45: goto tr419;
1170 0           case 91: goto tr420;
1171             }
1172 0 0         if ( 65 <= (*p) && (*p) <= 90 )
    0          
1173 0           goto st385;
1174 0           goto st0;
1175 10           tr419:
1176             #line 86 "ragel/tstr_common.rl"
1177             {
1178             tstr_parsed_set_tz_utc(parsed, mark, p - mark);
1179             }
1180             #line 4 "ragel/tstr_common.rl"
1181             { mark = p; }
1182             goto st59;
1183             st59:
1184             if ( ++p == pe )
1185             goto _test_eof59;
1186             case 59:
1187             #line 1188 "tstr_cparse_datetime.c"
1188 10 50         if ( 48 <= (*p) && (*p) <= 57 )
    50          
1189 10           goto st389;
1190 0           goto st0;
1191 10           st389:
1192 10 100         if ( ++p == pe )
1193 4           goto _test_eof389;
1194             case 389:
1195 6           switch( (*p) ) {
1196 2           case 32: goto tr408;
1197 0           case 58: goto st54;
1198 0           case 91: goto tr410;
1199             }
1200 4 50         if ( 48 <= (*p) && (*p) <= 57 )
    50          
1201 4           goto st380;
1202 0           goto st0;
1203 6           tr96:
1204             #line 4 "ragel/tstr_common.rl"
1205             { mark = p; }
1206             goto st60;
1207             tr405:
1208             #line 98 "ragel/tstr_common.rl"
1209             {
1210             if (!tstr_token_parse_meridiem(mark, p - mark, &v)) {
1211             result = TSTR_PARSE_ERR_MERIDIEM;
1212             {p++; cs = 60; goto _out;}
1213             }
1214             tstr_parsed_set_meridiem(parsed, v);
1215             }
1216             #line 4 "ragel/tstr_common.rl"
1217             { mark = p; }
1218             goto st60;
1219             tr427:
1220             #line 54 "ragel/tstr_common.rl"
1221             {
1222             if (!tstr_token_parse_minute(mark, p - mark, &v)) {
1223             result = TSTR_PARSE_ERR_MINUTE;
1224             {p++; cs = 60; goto _out;}
1225             }
1226             tstr_parsed_set_minute(parsed, v);
1227             }
1228             #line 4 "ragel/tstr_common.rl"
1229             { mark = p; }
1230             goto st60;
1231             tr447:
1232             #line 62 "ragel/tstr_common.rl"
1233             {
1234             if (!tstr_token_parse_second(mark, p - mark, &v)) {
1235             result = TSTR_PARSE_ERR_SECOND;
1236             {p++; cs = 60; goto _out;}
1237             }
1238             tstr_parsed_set_second(parsed, v);
1239             }
1240             #line 4 "ragel/tstr_common.rl"
1241             { mark = p; }
1242             goto st60;
1243             tr457:
1244             #line 70 "ragel/tstr_common.rl"
1245             {
1246             if (!tstr_token_parse_fraction(mark, p - mark, &v)) {
1247             result = TSTR_PARSE_ERR_FRACTION;
1248             {p++; cs = 60; goto _out;}
1249             }
1250             tstr_parsed_set_fraction(parsed, v);
1251             }
1252             #line 4 "ragel/tstr_common.rl"
1253             { mark = p; }
1254             goto st60;
1255             st60:
1256             if ( ++p == pe )
1257             goto _test_eof60;
1258             case 60:
1259             #line 1260 "tstr_cparse_datetime.c"
1260 7 50         if ( (*p) == 84 )
1261 7           goto st61;
1262 0 0         if ( (*p) > 90 ) {
1263 0 0         if ( 97 <= (*p) && (*p) <= 122 )
    0          
1264 0           goto st56;
1265 0 0         } else if ( (*p) >= 65 )
1266 0           goto st56;
1267 0           goto st0;
1268 7           st61:
1269 7 50         if ( ++p == pe )
1270 0           goto _test_eof61;
1271             case 61:
1272 7 50         if ( (*p) == 67 )
1273 7           goto st388;
1274 0 0         if ( 65 <= (*p) && (*p) <= 90 )
    0          
1275 0           goto st384;
1276 0           goto st0;
1277 0           tr97:
1278             #line 4 "ragel/tstr_common.rl"
1279             { mark = p; }
1280             goto st390;
1281             tr406:
1282             #line 98 "ragel/tstr_common.rl"
1283             {
1284             if (!tstr_token_parse_meridiem(mark, p - mark, &v)) {
1285             result = TSTR_PARSE_ERR_MERIDIEM;
1286             {p++; cs = 390; goto _out;}
1287             }
1288             tstr_parsed_set_meridiem(parsed, v);
1289             }
1290             #line 4 "ragel/tstr_common.rl"
1291             { mark = p; }
1292             goto st390;
1293             tr428:
1294             #line 54 "ragel/tstr_common.rl"
1295             {
1296             if (!tstr_token_parse_minute(mark, p - mark, &v)) {
1297             result = TSTR_PARSE_ERR_MINUTE;
1298             {p++; cs = 390; goto _out;}
1299             }
1300             tstr_parsed_set_minute(parsed, v);
1301             }
1302             #line 4 "ragel/tstr_common.rl"
1303             { mark = p; }
1304             goto st390;
1305             tr448:
1306             #line 62 "ragel/tstr_common.rl"
1307             {
1308             if (!tstr_token_parse_second(mark, p - mark, &v)) {
1309             result = TSTR_PARSE_ERR_SECOND;
1310             {p++; cs = 390; goto _out;}
1311             }
1312             tstr_parsed_set_second(parsed, v);
1313             }
1314             #line 4 "ragel/tstr_common.rl"
1315             { mark = p; }
1316             goto st390;
1317             tr458:
1318             #line 70 "ragel/tstr_common.rl"
1319             {
1320             if (!tstr_token_parse_fraction(mark, p - mark, &v)) {
1321             result = TSTR_PARSE_ERR_FRACTION;
1322             {p++; cs = 390; goto _out;}
1323             }
1324             tstr_parsed_set_fraction(parsed, v);
1325             }
1326             #line 4 "ragel/tstr_common.rl"
1327             { mark = p; }
1328             goto st390;
1329             st390:
1330             if ( ++p == pe )
1331             goto _test_eof390;
1332             case 390:
1333             #line 1334 "tstr_cparse_datetime.c"
1334 0           switch( (*p) ) {
1335 0           case 32: goto tr418;
1336 0           case 91: goto tr420;
1337             }
1338 0 0         if ( (*p) > 90 ) {
1339 0 0         if ( 97 <= (*p) && (*p) <= 122 )
    0          
1340 0           goto st56;
1341 0 0         } else if ( (*p) >= 65 )
1342 0           goto st56;
1343 0           goto st0;
1344 0           tr98:
1345             #line 4 "ragel/tstr_common.rl"
1346             { mark = p; }
1347             goto st391;
1348             tr407:
1349             #line 98 "ragel/tstr_common.rl"
1350             {
1351             if (!tstr_token_parse_meridiem(mark, p - mark, &v)) {
1352             result = TSTR_PARSE_ERR_MERIDIEM;
1353             {p++; cs = 391; goto _out;}
1354             }
1355             tstr_parsed_set_meridiem(parsed, v);
1356             }
1357             #line 4 "ragel/tstr_common.rl"
1358             { mark = p; }
1359             goto st391;
1360             tr430:
1361             #line 54 "ragel/tstr_common.rl"
1362             {
1363             if (!tstr_token_parse_minute(mark, p - mark, &v)) {
1364             result = TSTR_PARSE_ERR_MINUTE;
1365             {p++; cs = 391; goto _out;}
1366             }
1367             tstr_parsed_set_minute(parsed, v);
1368             }
1369             #line 4 "ragel/tstr_common.rl"
1370             { mark = p; }
1371             goto st391;
1372             tr450:
1373             #line 62 "ragel/tstr_common.rl"
1374             {
1375             if (!tstr_token_parse_second(mark, p - mark, &v)) {
1376             result = TSTR_PARSE_ERR_SECOND;
1377             {p++; cs = 391; goto _out;}
1378             }
1379             tstr_parsed_set_second(parsed, v);
1380             }
1381             #line 4 "ragel/tstr_common.rl"
1382             { mark = p; }
1383             goto st391;
1384             tr460:
1385             #line 70 "ragel/tstr_common.rl"
1386             {
1387             if (!tstr_token_parse_fraction(mark, p - mark, &v)) {
1388             result = TSTR_PARSE_ERR_FRACTION;
1389             {p++; cs = 391; goto _out;}
1390             }
1391             tstr_parsed_set_fraction(parsed, v);
1392             }
1393             #line 4 "ragel/tstr_common.rl"
1394             { mark = p; }
1395             goto st391;
1396             st391:
1397             if ( ++p == pe )
1398             goto _test_eof391;
1399             case 391:
1400             #line 1401 "tstr_cparse_datetime.c"
1401 0           switch( (*p) ) {
1402 0           case 32: goto tr418;
1403 0           case 91: goto tr420;
1404             }
1405 0           goto st0;
1406 89           st62:
1407 89 50         if ( ++p == pe )
1408 0           goto _test_eof62;
1409             case 62:
1410 89           switch( (*p) ) {
1411 2           case 32: goto tr85;
1412 85           case 58: goto tr87;
1413 0           case 65: goto tr88;
1414 2           case 80: goto tr88;
1415 0           case 97: goto tr88;
1416 0           case 112: goto tr88;
1417             }
1418 0           goto st0;
1419 89           tr87:
1420             #line 46 "ragel/tstr_common.rl"
1421             {
1422             if (!tstr_token_parse_hour(mark, p - mark, &v)) {
1423             result = TSTR_PARSE_ERR_HOUR;
1424             {p++; cs = 63; goto _out;}
1425             }
1426             tstr_parsed_set_hour(parsed, v);
1427             }
1428             goto st63;
1429             st63:
1430             if ( ++p == pe )
1431             goto _test_eof63;
1432             case 63:
1433             #line 1434 "tstr_cparse_datetime.c"
1434 89 50         if ( 48 <= (*p) && (*p) <= 57 )
    50          
1435 89           goto tr114;
1436 0           goto st0;
1437 89           tr114:
1438             #line 4 "ragel/tstr_common.rl"
1439             { mark = p; }
1440             goto st64;
1441             st64:
1442             if ( ++p == pe )
1443             goto _test_eof64;
1444             case 64:
1445             #line 1446 "tstr_cparse_datetime.c"
1446 89 50         if ( 48 <= (*p) && (*p) <= 57 )
    50          
1447 89           goto st392;
1448 0           goto st0;
1449 89           st392:
1450 89 100         if ( ++p == pe )
1451 8           goto _test_eof392;
1452             case 392:
1453 81           switch( (*p) ) {
1454 6           case 32: goto tr421;
1455 1           case 43: goto tr422;
1456 0           case 45: goto tr422;
1457 74           case 58: goto tr423;
1458 0           case 65: goto tr424;
1459 0           case 71: goto tr426;
1460 0           case 80: goto tr424;
1461 0           case 85: goto tr427;
1462 0           case 90: goto tr428;
1463 0           case 97: goto tr429;
1464 0           case 112: goto tr429;
1465 0           case 122: goto tr430;
1466             }
1467 0 0         if ( 66 <= (*p) && (*p) <= 89 )
    0          
1468 0           goto tr425;
1469 0           goto st0;
1470 6           tr421:
1471             #line 54 "ragel/tstr_common.rl"
1472             {
1473             if (!tstr_token_parse_minute(mark, p - mark, &v)) {
1474             result = TSTR_PARSE_ERR_MINUTE;
1475             {p++; cs = 65; goto _out;}
1476             }
1477             tstr_parsed_set_minute(parsed, v);
1478             }
1479             goto st65;
1480             tr441:
1481             #line 62 "ragel/tstr_common.rl"
1482             {
1483             if (!tstr_token_parse_second(mark, p - mark, &v)) {
1484             result = TSTR_PARSE_ERR_SECOND;
1485             {p++; cs = 65; goto _out;}
1486             }
1487             tstr_parsed_set_second(parsed, v);
1488             }
1489             goto st65;
1490             tr451:
1491             #line 70 "ragel/tstr_common.rl"
1492             {
1493             if (!tstr_token_parse_fraction(mark, p - mark, &v)) {
1494             result = TSTR_PARSE_ERR_FRACTION;
1495             {p++; cs = 65; goto _out;}
1496             }
1497             tstr_parsed_set_fraction(parsed, v);
1498             }
1499             goto st65;
1500             st65:
1501             if ( ++p == pe )
1502             goto _test_eof65;
1503             case 65:
1504             #line 1505 "tstr_cparse_datetime.c"
1505 38           switch( (*p) ) {
1506 8           case 43: goto tr93;
1507 0           case 45: goto tr93;
1508 4           case 65: goto tr116;
1509 8           case 71: goto tr95;
1510 8           case 80: goto tr116;
1511 4           case 85: goto tr96;
1512 0           case 90: goto tr97;
1513 2           case 97: goto tr89;
1514 2           case 112: goto tr89;
1515 0           case 122: goto tr98;
1516             }
1517 2 50         if ( 66 <= (*p) && (*p) <= 89 )
    50          
1518 2           goto tr94;
1519 0           goto st0;
1520 12           tr116:
1521             #line 4 "ragel/tstr_common.rl"
1522             { mark = p; }
1523             goto st66;
1524             tr424:
1525             #line 54 "ragel/tstr_common.rl"
1526             {
1527             if (!tstr_token_parse_minute(mark, p - mark, &v)) {
1528             result = TSTR_PARSE_ERR_MINUTE;
1529             {p++; cs = 66; goto _out;}
1530             }
1531             tstr_parsed_set_minute(parsed, v);
1532             }
1533             #line 4 "ragel/tstr_common.rl"
1534             { mark = p; }
1535             goto st66;
1536             tr444:
1537             #line 62 "ragel/tstr_common.rl"
1538             {
1539             if (!tstr_token_parse_second(mark, p - mark, &v)) {
1540             result = TSTR_PARSE_ERR_SECOND;
1541             {p++; cs = 66; goto _out;}
1542             }
1543             tstr_parsed_set_second(parsed, v);
1544             }
1545             #line 4 "ragel/tstr_common.rl"
1546             { mark = p; }
1547             goto st66;
1548             tr454:
1549             #line 70 "ragel/tstr_common.rl"
1550             {
1551             if (!tstr_token_parse_fraction(mark, p - mark, &v)) {
1552             result = TSTR_PARSE_ERR_FRACTION;
1553             {p++; cs = 66; goto _out;}
1554             }
1555             tstr_parsed_set_fraction(parsed, v);
1556             }
1557             #line 4 "ragel/tstr_common.rl"
1558             { mark = p; }
1559             goto st66;
1560             st66:
1561             if ( ++p == pe )
1562             goto _test_eof66;
1563             case 66:
1564             #line 1565 "tstr_cparse_datetime.c"
1565 13           switch( (*p) ) {
1566 2           case 46: goto st43;
1567 10           case 77: goto st393;
1568 1           case 109: goto st393;
1569             }
1570 0 0         if ( (*p) > 90 ) {
1571 0 0         if ( 97 <= (*p) && (*p) <= 122 )
    0          
1572 0           goto st56;
1573 0 0         } else if ( (*p) >= 65 )
1574 0           goto st56;
1575 0           goto st0;
1576 11           st393:
1577 11 50         if ( ++p == pe )
1578 11           goto _test_eof393;
1579             case 393:
1580 0           switch( (*p) ) {
1581 0           case 32: goto tr401;
1582 0           case 43: goto tr402;
1583 0           case 45: goto tr402;
1584 0           case 71: goto tr432;
1585 0           case 85: goto tr433;
1586 0           case 90: goto tr434;
1587 0           case 122: goto tr407;
1588             }
1589 0 0         if ( 65 <= (*p) && (*p) <= 89 )
    0          
1590 0           goto tr431;
1591 0           goto st0;
1592 0           tr431:
1593             #line 98 "ragel/tstr_common.rl"
1594             {
1595             if (!tstr_token_parse_meridiem(mark, p - mark, &v)) {
1596             result = TSTR_PARSE_ERR_MERIDIEM;
1597             {p++; cs = 394; goto _out;}
1598             }
1599             tstr_parsed_set_meridiem(parsed, v);
1600             }
1601             #line 4 "ragel/tstr_common.rl"
1602             { mark = p; }
1603             goto st394;
1604             st394:
1605             if ( ++p == pe )
1606             goto _test_eof394;
1607             case 394:
1608             #line 1609 "tstr_cparse_datetime.c"
1609 0           switch( (*p) ) {
1610 0           case 32: goto tr413;
1611 0           case 91: goto tr415;
1612             }
1613 0 0         if ( (*p) > 90 ) {
1614 0 0         if ( 97 <= (*p) && (*p) <= 122 )
    0          
1615 0           goto st56;
1616 0 0         } else if ( (*p) >= 65 )
1617 0           goto st395;
1618 0           goto st0;
1619 0           st395:
1620 0 0         if ( ++p == pe )
1621 0           goto _test_eof395;
1622             case 395:
1623 0           switch( (*p) ) {
1624 0           case 32: goto tr413;
1625 0           case 91: goto tr415;
1626             }
1627 0 0         if ( 65 <= (*p) && (*p) <= 90 )
    0          
1628 0           goto st384;
1629 0           goto st0;
1630 0           tr432:
1631             #line 98 "ragel/tstr_common.rl"
1632             {
1633             if (!tstr_token_parse_meridiem(mark, p - mark, &v)) {
1634             result = TSTR_PARSE_ERR_MERIDIEM;
1635             {p++; cs = 396; goto _out;}
1636             }
1637             tstr_parsed_set_meridiem(parsed, v);
1638             }
1639             #line 4 "ragel/tstr_common.rl"
1640             { mark = p; }
1641             goto st396;
1642             st396:
1643             if ( ++p == pe )
1644             goto _test_eof396;
1645             case 396:
1646             #line 1647 "tstr_cparse_datetime.c"
1647 0           switch( (*p) ) {
1648 0           case 32: goto tr413;
1649 0           case 77: goto st397;
1650 0           case 91: goto tr415;
1651             }
1652 0 0         if ( (*p) > 90 ) {
1653 0 0         if ( 97 <= (*p) && (*p) <= 122 )
    0          
1654 0           goto st56;
1655 0 0         } else if ( (*p) >= 65 )
1656 0           goto st395;
1657 0           goto st0;
1658 0           st397:
1659 0 0         if ( ++p == pe )
1660 0           goto _test_eof397;
1661             case 397:
1662 0           switch( (*p) ) {
1663 0           case 32: goto tr413;
1664 0           case 84: goto st398;
1665 0           case 91: goto tr415;
1666             }
1667 0 0         if ( 65 <= (*p) && (*p) <= 90 )
    0          
1668 0           goto st384;
1669 0           goto st0;
1670 0           st398:
1671 0 0         if ( ++p == pe )
1672 0           goto _test_eof398;
1673             case 398:
1674 0           switch( (*p) ) {
1675 0           case 32: goto tr438;
1676 0           case 43: goto tr419;
1677 0           case 45: goto tr419;
1678 0           case 91: goto tr439;
1679             }
1680 0 0         if ( 65 <= (*p) && (*p) <= 90 )
    0          
1681 0           goto st385;
1682 0           goto st0;
1683 0           tr433:
1684             #line 98 "ragel/tstr_common.rl"
1685             {
1686             if (!tstr_token_parse_meridiem(mark, p - mark, &v)) {
1687             result = TSTR_PARSE_ERR_MERIDIEM;
1688             {p++; cs = 399; goto _out;}
1689             }
1690             tstr_parsed_set_meridiem(parsed, v);
1691             }
1692             #line 4 "ragel/tstr_common.rl"
1693             { mark = p; }
1694             goto st399;
1695             st399:
1696             if ( ++p == pe )
1697             goto _test_eof399;
1698             case 399:
1699             #line 1700 "tstr_cparse_datetime.c"
1700 0           switch( (*p) ) {
1701 0           case 32: goto tr413;
1702 0           case 84: goto st400;
1703 0           case 91: goto tr415;
1704             }
1705 0 0         if ( (*p) > 90 ) {
1706 0 0         if ( 97 <= (*p) && (*p) <= 122 )
    0          
1707 0           goto st56;
1708 0 0         } else if ( (*p) >= 65 )
1709 0           goto st395;
1710 0           goto st0;
1711 0           st400:
1712 0 0         if ( ++p == pe )
1713 0           goto _test_eof400;
1714             case 400:
1715 0           switch( (*p) ) {
1716 0           case 32: goto tr413;
1717 0           case 67: goto st398;
1718 0           case 91: goto tr415;
1719             }
1720 0 0         if ( 65 <= (*p) && (*p) <= 90 )
    0          
1721 0           goto st384;
1722 0           goto st0;
1723 0           tr434:
1724             #line 98 "ragel/tstr_common.rl"
1725             {
1726             if (!tstr_token_parse_meridiem(mark, p - mark, &v)) {
1727             result = TSTR_PARSE_ERR_MERIDIEM;
1728             {p++; cs = 401; goto _out;}
1729             }
1730             tstr_parsed_set_meridiem(parsed, v);
1731             }
1732             #line 4 "ragel/tstr_common.rl"
1733             { mark = p; }
1734             goto st401;
1735             st401:
1736             if ( ++p == pe )
1737             goto _test_eof401;
1738             case 401:
1739             #line 1740 "tstr_cparse_datetime.c"
1740 0           switch( (*p) ) {
1741 0           case 32: goto tr438;
1742 0           case 91: goto tr439;
1743             }
1744 0 0         if ( (*p) > 90 ) {
1745 0 0         if ( 97 <= (*p) && (*p) <= 122 )
    0          
1746 0           goto st56;
1747 0 0         } else if ( (*p) >= 65 )
1748 0           goto st395;
1749 0           goto st0;
1750 74           tr423:
1751             #line 54 "ragel/tstr_common.rl"
1752             {
1753             if (!tstr_token_parse_minute(mark, p - mark, &v)) {
1754             result = TSTR_PARSE_ERR_MINUTE;
1755             {p++; cs = 67; goto _out;}
1756             }
1757             tstr_parsed_set_minute(parsed, v);
1758             }
1759             goto st67;
1760             st67:
1761             if ( ++p == pe )
1762             goto _test_eof67;
1763             case 67:
1764             #line 1765 "tstr_cparse_datetime.c"
1765 74 50         if ( 48 <= (*p) && (*p) <= 57 )
    50          
1766 74           goto tr118;
1767 0           goto st0;
1768 74           tr118:
1769             #line 4 "ragel/tstr_common.rl"
1770             { mark = p; }
1771             goto st68;
1772             st68:
1773             if ( ++p == pe )
1774             goto _test_eof68;
1775             case 68:
1776             #line 1777 "tstr_cparse_datetime.c"
1777 74 50         if ( 48 <= (*p) && (*p) <= 57 )
    50          
1778 74           goto st402;
1779 0           goto st0;
1780 74           st402:
1781 74 100         if ( ++p == pe )
1782 5           goto _test_eof402;
1783             case 402:
1784 69           switch( (*p) ) {
1785 30           case 32: goto tr441;
1786 2           case 44: goto tr443;
1787 9           case 46: goto tr443;
1788 0           case 65: goto tr444;
1789 1           case 71: goto tr446;
1790 1           case 80: goto tr444;
1791 1           case 85: goto tr447;
1792 7           case 90: goto tr448;
1793 0           case 97: goto tr449;
1794 0           case 112: goto tr449;
1795 1           case 122: goto tr450;
1796             }
1797 17 50         if ( (*p) > 45 ) {
1798 0 0         if ( 66 <= (*p) && (*p) <= 89 )
    0          
1799 0           goto tr445;
1800 17 50         } else if ( (*p) >= 43 )
1801 17           goto tr442;
1802 0           goto st0;
1803 11           tr443:
1804             #line 62 "ragel/tstr_common.rl"
1805             {
1806             if (!tstr_token_parse_second(mark, p - mark, &v)) {
1807             result = TSTR_PARSE_ERR_SECOND;
1808             {p++; cs = 69; goto _out;}
1809             }
1810             tstr_parsed_set_second(parsed, v);
1811             }
1812             goto st69;
1813             st69:
1814             if ( ++p == pe )
1815             goto _test_eof69;
1816             case 69:
1817             #line 1818 "tstr_cparse_datetime.c"
1818 11 50         if ( 48 <= (*p) && (*p) <= 57 )
    50          
1819 11           goto tr120;
1820 0           goto st0;
1821 11           tr120:
1822             #line 4 "ragel/tstr_common.rl"
1823             { mark = p; }
1824             goto st403;
1825             st403:
1826             if ( ++p == pe )
1827             goto _test_eof403;
1828             case 403:
1829             #line 1830 "tstr_cparse_datetime.c"
1830 11           switch( (*p) ) {
1831 0           case 32: goto tr451;
1832 0           case 43: goto tr452;
1833 0           case 45: goto tr452;
1834 0           case 65: goto tr454;
1835 0           case 71: goto tr456;
1836 0           case 80: goto tr454;
1837 0           case 85: goto tr457;
1838 1           case 90: goto tr458;
1839 0           case 97: goto tr459;
1840 0           case 112: goto tr459;
1841 0           case 122: goto tr460;
1842             }
1843 10 50         if ( (*p) > 57 ) {
1844 0 0         if ( 66 <= (*p) && (*p) <= 89 )
    0          
1845 0           goto tr455;
1846 10 50         } else if ( (*p) >= 48 )
1847 10           goto st404;
1848 0           goto st0;
1849 10           st404:
1850 10 50         if ( ++p == pe )
1851 0           goto _test_eof404;
1852             case 404:
1853 10           switch( (*p) ) {
1854 0           case 32: goto tr451;
1855 0           case 43: goto tr452;
1856 0           case 45: goto tr452;
1857 0           case 65: goto tr454;
1858 0           case 71: goto tr456;
1859 0           case 80: goto tr454;
1860 0           case 85: goto tr457;
1861 0           case 90: goto tr458;
1862 0           case 97: goto tr459;
1863 0           case 112: goto tr459;
1864 0           case 122: goto tr460;
1865             }
1866 10 50         if ( (*p) > 57 ) {
1867 0 0         if ( 66 <= (*p) && (*p) <= 89 )
    0          
1868 0           goto tr455;
1869 10 50         } else if ( (*p) >= 48 )
1870 10           goto st405;
1871 0           goto st0;
1872 10           st405:
1873 10 100         if ( ++p == pe )
1874 1           goto _test_eof405;
1875             case 405:
1876 9           switch( (*p) ) {
1877 2           case 32: goto tr451;
1878 4           case 43: goto tr452;
1879 0           case 45: goto tr452;
1880 0           case 65: goto tr454;
1881 0           case 71: goto tr456;
1882 0           case 80: goto tr454;
1883 0           case 85: goto tr457;
1884 2           case 90: goto tr458;
1885 0           case 97: goto tr459;
1886 0           case 112: goto tr459;
1887 0           case 122: goto tr460;
1888             }
1889 1 50         if ( (*p) > 57 ) {
1890 0 0         if ( 66 <= (*p) && (*p) <= 89 )
    0          
1891 0           goto tr455;
1892 1 50         } else if ( (*p) >= 48 )
1893 1           goto st406;
1894 0           goto st0;
1895 1           st406:
1896 1 50         if ( ++p == pe )
1897 0           goto _test_eof406;
1898             case 406:
1899 1           switch( (*p) ) {
1900 0           case 32: goto tr451;
1901 0           case 43: goto tr452;
1902 0           case 45: goto tr452;
1903 0           case 65: goto tr454;
1904 0           case 71: goto tr456;
1905 0           case 80: goto tr454;
1906 0           case 85: goto tr457;
1907 0           case 90: goto tr458;
1908 0           case 97: goto tr459;
1909 0           case 112: goto tr459;
1910 0           case 122: goto tr460;
1911             }
1912 1 50         if ( (*p) > 57 ) {
1913 0 0         if ( 66 <= (*p) && (*p) <= 89 )
    0          
1914 0           goto tr455;
1915 1 50         } else if ( (*p) >= 48 )
1916 1           goto st407;
1917 0           goto st0;
1918 1           st407:
1919 1 50         if ( ++p == pe )
1920 0           goto _test_eof407;
1921             case 407:
1922 1           switch( (*p) ) {
1923 0           case 32: goto tr451;
1924 0           case 43: goto tr452;
1925 0           case 45: goto tr452;
1926 0           case 65: goto tr454;
1927 0           case 71: goto tr456;
1928 0           case 80: goto tr454;
1929 0           case 85: goto tr457;
1930 0           case 90: goto tr458;
1931 0           case 97: goto tr459;
1932 0           case 112: goto tr459;
1933 0           case 122: goto tr460;
1934             }
1935 1 50         if ( (*p) > 57 ) {
1936 0 0         if ( 66 <= (*p) && (*p) <= 89 )
    0          
1937 0           goto tr455;
1938 1 50         } else if ( (*p) >= 48 )
1939 1           goto st408;
1940 0           goto st0;
1941 1           st408:
1942 1 50         if ( ++p == pe )
1943 0           goto _test_eof408;
1944             case 408:
1945 1           switch( (*p) ) {
1946 0           case 32: goto tr451;
1947 0           case 43: goto tr452;
1948 0           case 45: goto tr452;
1949 0           case 65: goto tr454;
1950 0           case 71: goto tr456;
1951 0           case 80: goto tr454;
1952 0           case 85: goto tr457;
1953 0           case 90: goto tr458;
1954 0           case 97: goto tr459;
1955 0           case 112: goto tr459;
1956 0           case 122: goto tr460;
1957             }
1958 1 50         if ( (*p) > 57 ) {
1959 0 0         if ( 66 <= (*p) && (*p) <= 89 )
    0          
1960 0           goto tr455;
1961 1 50         } else if ( (*p) >= 48 )
1962 1           goto st409;
1963 0           goto st0;
1964 1           st409:
1965 1 50         if ( ++p == pe )
1966 0           goto _test_eof409;
1967             case 409:
1968 1           switch( (*p) ) {
1969 0           case 32: goto tr451;
1970 0           case 43: goto tr452;
1971 0           case 45: goto tr452;
1972 0           case 65: goto tr454;
1973 0           case 71: goto tr456;
1974 0           case 80: goto tr454;
1975 0           case 85: goto tr457;
1976 0           case 90: goto tr458;
1977 0           case 97: goto tr459;
1978 0           case 112: goto tr459;
1979 0           case 122: goto tr460;
1980             }
1981 1 50         if ( (*p) > 57 ) {
1982 0 0         if ( 66 <= (*p) && (*p) <= 89 )
    0          
1983 0           goto tr455;
1984 1 50         } else if ( (*p) >= 48 )
1985 1           goto st410;
1986 0           goto st0;
1987 1           st410:
1988 1 50         if ( ++p == pe )
1989 0           goto _test_eof410;
1990             case 410:
1991 1           switch( (*p) ) {
1992 0           case 32: goto tr451;
1993 0           case 43: goto tr452;
1994 0           case 45: goto tr452;
1995 0           case 65: goto tr454;
1996 0           case 71: goto tr456;
1997 0           case 80: goto tr454;
1998 0           case 85: goto tr457;
1999 0           case 90: goto tr458;
2000 0           case 97: goto tr459;
2001 0           case 112: goto tr459;
2002 0           case 122: goto tr460;
2003             }
2004 1 50         if ( (*p) > 57 ) {
2005 0 0         if ( 66 <= (*p) && (*p) <= 89 )
    0          
2006 0           goto tr455;
2007 1 50         } else if ( (*p) >= 48 )
2008 1           goto st411;
2009 0           goto st0;
2010 1           st411:
2011 1 50         if ( ++p == pe )
2012 0           goto _test_eof411;
2013             case 411:
2014 1           switch( (*p) ) {
2015 0           case 32: goto tr451;
2016 0           case 43: goto tr452;
2017 0           case 45: goto tr452;
2018 0           case 65: goto tr454;
2019 0           case 71: goto tr456;
2020 0           case 80: goto tr454;
2021 0           case 85: goto tr457;
2022 1           case 90: goto tr458;
2023 0           case 97: goto tr459;
2024 0           case 112: goto tr459;
2025 0           case 122: goto tr460;
2026             }
2027 0 0         if ( 66 <= (*p) && (*p) <= 89 )
    0          
2028 0           goto tr455;
2029 0           goto st0;
2030 4           st70:
2031 4 50         if ( ++p == pe )
2032 0           goto _test_eof70;
2033             case 70:
2034 4           switch( (*p) ) {
2035 0           case 84: goto st71;
2036 4           case 116: goto st71;
2037             }
2038 0           goto st0;
2039 0           tr469:
2040             #line 30 "ragel/tstr_common.rl"
2041             {
2042             if (!tstr_token_parse_day(mark, p - mark, &v)) {
2043             result = TSTR_PARSE_ERR_DAY;
2044             {p++; cs = 71; goto _out;}
2045             }
2046             tstr_parsed_set_day(parsed, v);
2047             }
2048             goto st71;
2049             tr399:
2050             #line 6 "ragel/tstr_common.rl"
2051             {
2052             if (!tstr_token_parse_year(mark, p - mark, &v)) {
2053             result = TSTR_PARSE_ERR_YEAR;
2054             {p++; cs = 71; goto _out;}
2055             }
2056             tstr_parsed_set_year4(parsed, v);
2057             }
2058             goto st71;
2059             st71:
2060             if ( ++p == pe )
2061             goto _test_eof71;
2062             case 71:
2063             #line 2064 "tstr_cparse_datetime.c"
2064 7 50         if ( (*p) == 32 )
2065 7           goto st72;
2066 0           goto st0;
2067 48           tr471:
2068             #line 30 "ragel/tstr_common.rl"
2069             {
2070             if (!tstr_token_parse_day(mark, p - mark, &v)) {
2071             result = TSTR_PARSE_ERR_DAY;
2072             {p++; cs = 72; goto _out;}
2073             }
2074             tstr_parsed_set_day(parsed, v);
2075             }
2076             goto st72;
2077             tr400:
2078             #line 6 "ragel/tstr_common.rl"
2079             {
2080             if (!tstr_token_parse_year(mark, p - mark, &v)) {
2081             result = TSTR_PARSE_ERR_YEAR;
2082             {p++; cs = 72; goto _out;}
2083             }
2084             tstr_parsed_set_year4(parsed, v);
2085             }
2086             goto st72;
2087             st72:
2088             if ( ++p == pe )
2089             goto _test_eof72;
2090             case 72:
2091             #line 2092 "tstr_cparse_datetime.c"
2092 55 50         if ( 48 <= (*p) && (*p) <= 57 )
    50          
2093 55           goto tr83;
2094 0           goto st0;
2095 5           tr339:
2096             #line 25 "ragel/tstr_cparse_datetime.rl"
2097             {
2098             mark = mark_day;
2099             }
2100             #line 30 "ragel/tstr_common.rl"
2101             {
2102             if (!tstr_token_parse_day(mark, p - mark, &v)) {
2103             result = TSTR_PARSE_ERR_DAY;
2104             {p++; cs = 73; goto _out;}
2105             }
2106             tstr_parsed_set_day(parsed, v);
2107             }
2108             goto st73;
2109             tr77:
2110             #line 22 "ragel/tstr_common.rl"
2111             {
2112             if (!tstr_token_parse_month(mark, p - mark, &v)) {
2113             result = TSTR_PARSE_ERR_MONTH;
2114             {p++; cs = 73; goto _out;}
2115             }
2116             tstr_parsed_set_month(parsed, v);
2117             }
2118             goto st73;
2119             st73:
2120             if ( ++p == pe )
2121             goto _test_eof73;
2122             case 73:
2123             #line 2124 "tstr_cparse_datetime.c"
2124 9 50         if ( (*p) == 32 )
2125 9           goto st35;
2126 0           goto st0;
2127 1           st74:
2128 1 50         if ( ++p == pe )
2129 0           goto _test_eof74;
2130             case 74:
2131 1           switch( (*p) ) {
2132 0           case 76: goto st75;
2133 1           case 108: goto st75;
2134             }
2135 0           goto st0;
2136 34           st75:
2137 34 50         if ( ++p == pe )
2138 0           goto _test_eof75;
2139             case 75:
2140 34           switch( (*p) ) {
2141 31           case 32: goto tr76;
2142 1           case 44: goto tr77;
2143 2           case 46: goto tr77;
2144             }
2145 0           goto st0;
2146 2           st76:
2147 2 50         if ( ++p == pe )
2148 0           goto _test_eof76;
2149             case 76:
2150 2           switch( (*p) ) {
2151 0           case 71: goto st77;
2152 2           case 103: goto st77;
2153             }
2154 0           goto st0;
2155 2           st77:
2156 2 50         if ( ++p == pe )
2157 0           goto _test_eof77;
2158             case 77:
2159 2           switch( (*p) ) {
2160 1           case 32: goto tr76;
2161 0           case 44: goto tr77;
2162 0           case 46: goto tr77;
2163 0           case 85: goto st78;
2164 1           case 117: goto st78;
2165             }
2166 0           goto st0;
2167 1           st78:
2168 1 50         if ( ++p == pe )
2169 0           goto _test_eof78;
2170             case 78:
2171 1           switch( (*p) ) {
2172 0           case 83: goto st79;
2173 1           case 115: goto st79;
2174             }
2175 0           goto st0;
2176 1           st79:
2177 1 50         if ( ++p == pe )
2178 0           goto _test_eof79;
2179             case 79:
2180 1           switch( (*p) ) {
2181 0           case 84: goto st75;
2182 1           case 116: goto st75;
2183             }
2184 0           goto st0;
2185 34           tr63:
2186             #line 4 "ragel/tstr_common.rl"
2187             { mark = p; }
2188             goto st80;
2189             st80:
2190             if ( ++p == pe )
2191             goto _test_eof80;
2192             case 80:
2193             #line 2194 "tstr_cparse_datetime.c"
2194 34           switch( (*p) ) {
2195 1           case 69: goto st81;
2196 33           case 101: goto st81;
2197             }
2198 0           goto st0;
2199 34           st81:
2200 34 50         if ( ++p == pe )
2201 0           goto _test_eof81;
2202             case 81:
2203 34           switch( (*p) ) {
2204 1           case 67: goto st82;
2205 33           case 99: goto st82;
2206             }
2207 0           goto st0;
2208 38           st82:
2209 38 50         if ( ++p == pe )
2210 0           goto _test_eof82;
2211             case 82:
2212 38           switch( (*p) ) {
2213 25           case 32: goto tr76;
2214 0           case 44: goto tr77;
2215 1           case 46: goto tr77;
2216 1           case 69: goto st83;
2217 11           case 101: goto st83;
2218             }
2219 0           goto st0;
2220 12           st83:
2221 12 50         if ( ++p == pe )
2222 0           goto _test_eof83;
2223             case 83:
2224 12           switch( (*p) ) {
2225 1           case 77: goto st84;
2226 11           case 109: goto st84;
2227             }
2228 0           goto st0;
2229 13           st84:
2230 13 50         if ( ++p == pe )
2231 0           goto _test_eof84;
2232             case 84:
2233 13           switch( (*p) ) {
2234 1           case 66: goto st85;
2235 12           case 98: goto st85;
2236             }
2237 0           goto st0;
2238 13           st85:
2239 13 50         if ( ++p == pe )
2240 0           goto _test_eof85;
2241             case 85:
2242 13           switch( (*p) ) {
2243 1           case 69: goto st86;
2244 12           case 101: goto st86;
2245             }
2246 0           goto st0;
2247 13           st86:
2248 13 50         if ( ++p == pe )
2249 0           goto _test_eof86;
2250             case 86:
2251 13           switch( (*p) ) {
2252 1           case 82: goto st75;
2253 12           case 114: goto st75;
2254             }
2255 0           goto st0;
2256 3           tr64:
2257             #line 4 "ragel/tstr_common.rl"
2258             { mark = p; }
2259             goto st87;
2260             st87:
2261             if ( ++p == pe )
2262             goto _test_eof87;
2263             case 87:
2264             #line 2265 "tstr_cparse_datetime.c"
2265 3           switch( (*p) ) {
2266 0           case 69: goto st88;
2267 3           case 101: goto st88;
2268             }
2269 0           goto st0;
2270 3           st88:
2271 3 50         if ( ++p == pe )
2272 0           goto _test_eof88;
2273             case 88:
2274 3           switch( (*p) ) {
2275 0           case 66: goto st89;
2276 3           case 98: goto st89;
2277             }
2278 0           goto st0;
2279 3           st89:
2280 3 50         if ( ++p == pe )
2281 0           goto _test_eof89;
2282             case 89:
2283 3           switch( (*p) ) {
2284 1           case 32: goto tr76;
2285 0           case 44: goto tr77;
2286 0           case 46: goto tr77;
2287 0           case 82: goto st90;
2288 2           case 114: goto st90;
2289             }
2290 0           goto st0;
2291 2           st90:
2292 2 50         if ( ++p == pe )
2293 0           goto _test_eof90;
2294             case 90:
2295 2           switch( (*p) ) {
2296 0           case 85: goto st91;
2297 2           case 117: goto st91;
2298             }
2299 0           goto st0;
2300 4           st91:
2301 4 50         if ( ++p == pe )
2302 0           goto _test_eof91;
2303             case 91:
2304 4           switch( (*p) ) {
2305 0           case 65: goto st92;
2306 4           case 97: goto st92;
2307             }
2308 0           goto st0;
2309 4           st92:
2310 4 50         if ( ++p == pe )
2311 0           goto _test_eof92;
2312             case 92:
2313 4           switch( (*p) ) {
2314 0           case 82: goto st93;
2315 4           case 114: goto st93;
2316             }
2317 0           goto st0;
2318 4           st93:
2319 4 50         if ( ++p == pe )
2320 0           goto _test_eof93;
2321             case 93:
2322 4           switch( (*p) ) {
2323 0           case 89: goto st75;
2324 4           case 121: goto st75;
2325             }
2326 0           goto st0;
2327 6           tr65:
2328             #line 4 "ragel/tstr_common.rl"
2329             { mark = p; }
2330             goto st94;
2331             st94:
2332             if ( ++p == pe )
2333             goto _test_eof94;
2334             case 94:
2335             #line 2336 "tstr_cparse_datetime.c"
2336 6           switch( (*p) ) {
2337 2           case 32: goto tr76;
2338 0           case 44: goto tr77;
2339 0           case 46: goto tr77;
2340 2           case 73: goto st95;
2341 1           case 86: goto st75;
2342 1           case 88: goto st75;
2343 0           case 105: goto st95;
2344 0           case 118: goto st75;
2345 0           case 120: goto st75;
2346             }
2347 0           goto st0;
2348 10           st95:
2349 10 50         if ( ++p == pe )
2350 0           goto _test_eof95;
2351             case 95:
2352 10           switch( (*p) ) {
2353 3           case 32: goto tr76;
2354 0           case 44: goto tr77;
2355 0           case 46: goto tr77;
2356 7           case 73: goto st75;
2357 0           case 105: goto st75;
2358             }
2359 0           goto st0;
2360 8           tr66:
2361             #line 4 "ragel/tstr_common.rl"
2362             { mark = p; }
2363             goto st96;
2364             st96:
2365             if ( ++p == pe )
2366             goto _test_eof96;
2367             case 96:
2368             #line 2369 "tstr_cparse_datetime.c"
2369 8           switch( (*p) ) {
2370 0           case 65: goto st97;
2371 0           case 85: goto st99;
2372 4           case 97: goto st97;
2373 4           case 117: goto st99;
2374             }
2375 0           goto st0;
2376 4           st97:
2377 4 50         if ( ++p == pe )
2378 0           goto _test_eof97;
2379             case 97:
2380 4           switch( (*p) ) {
2381 0           case 78: goto st98;
2382 4           case 110: goto st98;
2383             }
2384 0           goto st0;
2385 4           st98:
2386 4 50         if ( ++p == pe )
2387 0           goto _test_eof98;
2388             case 98:
2389 4           switch( (*p) ) {
2390 2           case 32: goto tr76;
2391 0           case 44: goto tr77;
2392 0           case 46: goto tr77;
2393 0           case 85: goto st91;
2394 2           case 117: goto st91;
2395             }
2396 0           goto st0;
2397 4           st99:
2398 4 50         if ( ++p == pe )
2399 0           goto _test_eof99;
2400             case 99:
2401 4           switch( (*p) ) {
2402 0           case 76: goto st100;
2403 0           case 78: goto st101;
2404 2           case 108: goto st100;
2405 2           case 110: goto st101;
2406             }
2407 0           goto st0;
2408 2           st100:
2409 2 50         if ( ++p == pe )
2410 0           goto _test_eof100;
2411             case 100:
2412 2           switch( (*p) ) {
2413 1           case 32: goto tr76;
2414 0           case 44: goto tr77;
2415 0           case 46: goto tr77;
2416 0           case 89: goto st75;
2417 1           case 121: goto st75;
2418             }
2419 0           goto st0;
2420 2           st101:
2421 2 50         if ( ++p == pe )
2422 0           goto _test_eof101;
2423             case 101:
2424 2           switch( (*p) ) {
2425 1           case 32: goto tr76;
2426 0           case 44: goto tr77;
2427 0           case 46: goto tr77;
2428 0           case 69: goto st75;
2429 1           case 101: goto st75;
2430             }
2431 0           goto st0;
2432 5           tr67:
2433             #line 4 "ragel/tstr_common.rl"
2434             { mark = p; }
2435             goto st102;
2436             st102:
2437             if ( ++p == pe )
2438             goto _test_eof102;
2439             case 102:
2440             #line 2441 "tstr_cparse_datetime.c"
2441 5           switch( (*p) ) {
2442 0           case 65: goto st103;
2443 5           case 97: goto st103;
2444             }
2445 0           goto st0;
2446 5           st103:
2447 5 50         if ( ++p == pe )
2448 0           goto _test_eof103;
2449             case 103:
2450 5           switch( (*p) ) {
2451 0           case 82: goto st104;
2452 0           case 89: goto st75;
2453 3           case 114: goto st104;
2454 2           case 121: goto st75;
2455             }
2456 0           goto st0;
2457 3           st104:
2458 3 50         if ( ++p == pe )
2459 0           goto _test_eof104;
2460             case 104:
2461 3           switch( (*p) ) {
2462 1           case 32: goto tr76;
2463 0           case 44: goto tr77;
2464 0           case 46: goto tr77;
2465 0           case 67: goto st105;
2466 2           case 99: goto st105;
2467             }
2468 0           goto st0;
2469 2           st105:
2470 2 50         if ( ++p == pe )
2471 0           goto _test_eof105;
2472             case 105:
2473 2           switch( (*p) ) {
2474 0           case 72: goto st75;
2475 2           case 104: goto st75;
2476             }
2477 0           goto st0;
2478 2           tr68:
2479             #line 4 "ragel/tstr_common.rl"
2480             { mark = p; }
2481             goto st106;
2482             st106:
2483             if ( ++p == pe )
2484             goto _test_eof106;
2485             case 106:
2486             #line 2487 "tstr_cparse_datetime.c"
2487 2           switch( (*p) ) {
2488 0           case 79: goto st107;
2489 2           case 111: goto st107;
2490             }
2491 0           goto st0;
2492 2           st107:
2493 2 50         if ( ++p == pe )
2494 0           goto _test_eof107;
2495             case 107:
2496 2           switch( (*p) ) {
2497 0           case 86: goto st82;
2498 2           case 118: goto st82;
2499             }
2500 0           goto st0;
2501 2           tr69:
2502             #line 4 "ragel/tstr_common.rl"
2503             { mark = p; }
2504             goto st108;
2505             st108:
2506             if ( ++p == pe )
2507             goto _test_eof108;
2508             case 108:
2509             #line 2510 "tstr_cparse_datetime.c"
2510 2           switch( (*p) ) {
2511 0           case 67: goto st109;
2512 2           case 99: goto st109;
2513             }
2514 0           goto st0;
2515 2           st109:
2516 2 50         if ( ++p == pe )
2517 0           goto _test_eof109;
2518             case 109:
2519 2           switch( (*p) ) {
2520 0           case 84: goto st110;
2521 2           case 116: goto st110;
2522             }
2523 0           goto st0;
2524 2           st110:
2525 2 50         if ( ++p == pe )
2526 0           goto _test_eof110;
2527             case 110:
2528 2           switch( (*p) ) {
2529 1           case 32: goto tr76;
2530 0           case 44: goto tr77;
2531 0           case 46: goto tr77;
2532 0           case 79: goto st84;
2533 1           case 111: goto st84;
2534             }
2535 0           goto st0;
2536 3           tr70:
2537             #line 4 "ragel/tstr_common.rl"
2538             { mark = p; }
2539             goto st111;
2540             st111:
2541             if ( ++p == pe )
2542             goto _test_eof111;
2543             case 111:
2544             #line 2545 "tstr_cparse_datetime.c"
2545 3           switch( (*p) ) {
2546 0           case 69: goto st112;
2547 3           case 101: goto st112;
2548             }
2549 0           goto st0;
2550 3           st112:
2551 3 50         if ( ++p == pe )
2552 0           goto _test_eof112;
2553             case 112:
2554 3           switch( (*p) ) {
2555 0           case 80: goto st113;
2556 3           case 112: goto st113;
2557             }
2558 0           goto st0;
2559 3           st113:
2560 3 50         if ( ++p == pe )
2561 0           goto _test_eof113;
2562             case 113:
2563 3           switch( (*p) ) {
2564 1           case 32: goto tr76;
2565 0           case 44: goto tr77;
2566 0           case 46: goto tr77;
2567 0           case 84: goto st82;
2568 2           case 116: goto st82;
2569             }
2570 0           goto st0;
2571 5           tr71:
2572             #line 4 "ragel/tstr_common.rl"
2573             { mark = p; }
2574             goto st114;
2575             st114:
2576             if ( ++p == pe )
2577             goto _test_eof114;
2578             case 114:
2579             #line 2580 "tstr_cparse_datetime.c"
2580 5           switch( (*p) ) {
2581 1           case 32: goto tr76;
2582 0           case 44: goto tr77;
2583 0           case 46: goto tr77;
2584 4           case 73: goto st115;
2585 0           case 105: goto st115;
2586             }
2587 0           goto st0;
2588 6           tr72:
2589             #line 4 "ragel/tstr_common.rl"
2590             { mark = p; }
2591             goto st115;
2592             st115:
2593             if ( ++p == pe )
2594             goto _test_eof115;
2595             case 115:
2596             #line 2597 "tstr_cparse_datetime.c"
2597 10           switch( (*p) ) {
2598 2           case 32: goto tr76;
2599 0           case 44: goto tr77;
2600 0           case 46: goto tr77;
2601 8           case 73: goto st95;
2602 0           case 105: goto st95;
2603             }
2604 0           goto st0;
2605 6           tr46:
2606             #line 30 "ragel/tstr_common.rl"
2607             {
2608             if (!tstr_token_parse_day(mark, p - mark, &v)) {
2609             result = TSTR_PARSE_ERR_DAY;
2610             {p++; cs = 116; goto _out;}
2611             }
2612             tstr_parsed_set_day(parsed, v);
2613             }
2614             #line 13 "ragel/tstr_cparse_datetime.rl"
2615             {
2616             sep_char = (*p);
2617             }
2618             goto st116;
2619             st116:
2620             if ( ++p == pe )
2621             goto _test_eof116;
2622             case 116:
2623             #line 2624 "tstr_cparse_datetime.c"
2624 6           switch( (*p) ) {
2625 0           case 65: goto tr155;
2626 4           case 68: goto tr156;
2627 0           case 70: goto tr157;
2628 1           case 73: goto tr158;
2629 0           case 74: goto tr159;
2630 0           case 77: goto tr160;
2631 0           case 78: goto tr161;
2632 0           case 79: goto tr162;
2633 0           case 83: goto tr163;
2634 0           case 86: goto tr164;
2635 1           case 88: goto tr165;
2636 0           case 97: goto tr155;
2637 0           case 100: goto tr156;
2638 0           case 102: goto tr157;
2639 0           case 105: goto tr158;
2640 0           case 106: goto tr159;
2641 0           case 109: goto tr160;
2642 0           case 110: goto tr161;
2643 0           case 111: goto tr162;
2644 0           case 115: goto tr163;
2645 0           case 118: goto tr164;
2646 0           case 120: goto tr165;
2647             }
2648 0           goto st0;
2649 0           tr155:
2650             #line 4 "ragel/tstr_common.rl"
2651             { mark = p; }
2652             goto st117;
2653             st117:
2654             if ( ++p == pe )
2655             goto _test_eof117;
2656             case 117:
2657             #line 2658 "tstr_cparse_datetime.c"
2658 0           switch( (*p) ) {
2659 0           case 80: goto st118;
2660 0           case 85: goto st122;
2661 0           case 112: goto st118;
2662 0           case 117: goto st122;
2663             }
2664 0           goto st0;
2665 0           st118:
2666 0 0         if ( ++p == pe )
2667 0           goto _test_eof118;
2668             case 118:
2669 0           switch( (*p) ) {
2670 0           case 82: goto st119;
2671 0           case 114: goto st119;
2672             }
2673 0           goto st0;
2674 0           st119:
2675 0 0         if ( ++p == pe )
2676 0           goto _test_eof119;
2677             case 119:
2678 0           _widec = (*p);
2679 0 0         if ( (*p) < 46 ) {
2680 0 0         if ( 45 <= (*p) && (*p) <= 45 ) {
    0          
2681 0 0         _widec = (short)(128 + ((*p) - -128));
2682 0 0         if (
2683             #line 17 "ragel/tstr_cparse_datetime.rl"
2684              
2685             (*p) == sep_char
2686             ) _widec += 256;
2687             }
2688             } else if ( (*p) > 46 ) {
2689             if ( 47 <= (*p) && (*p) <= 47 ) {
2690             _widec = (short)(128 + ((*p) - -128));
2691             if (
2692             #line 17 "ragel/tstr_cparse_datetime.rl"
2693              
2694             (*p) == sep_char
2695             ) _widec += 256;
2696             }
2697             } else {
2698             _widec = (short)(128 + ((*p) - -128));
2699             if (
2700             #line 17 "ragel/tstr_cparse_datetime.rl"
2701              
2702             (*p) == sep_char
2703             ) _widec += 256;
2704             }
2705             switch( _widec ) {
2706             case 73: goto st120;
2707             case 105: goto st120;
2708             }
2709             if ( 557 <= _widec && _widec <= 559 )
2710             goto tr76;
2711             goto st0;
2712             st120:
2713             if ( ++p == pe )
2714             goto _test_eof120;
2715             case 120:
2716             switch( (*p) ) {
2717             case 76: goto st121;
2718             case 108: goto st121;
2719             }
2720             goto st0;
2721             st121:
2722             if ( ++p == pe )
2723             goto _test_eof121;
2724             case 121:
2725             _widec = (*p);
2726             if ( (*p) < 46 ) {
2727             if ( 45 <= (*p) && (*p) <= 45 ) {
2728             _widec = (short)(128 + ((*p) - -128));
2729             if (
2730             #line 17 "ragel/tstr_cparse_datetime.rl"
2731              
2732             (*p) == sep_char
2733             ) _widec += 256;
2734             }
2735             } else if ( (*p) > 46 ) {
2736             if ( 47 <= (*p) && (*p) <= 47 ) {
2737             _widec = (short)(128 + ((*p) - -128));
2738             if (
2739             #line 17 "ragel/tstr_cparse_datetime.rl"
2740              
2741             (*p) == sep_char
2742             ) _widec += 256;
2743             }
2744             } else {
2745             _widec = (short)(128 + ((*p) - -128));
2746             if (
2747             #line 17 "ragel/tstr_cparse_datetime.rl"
2748              
2749             (*p) == sep_char
2750             ) _widec += 256;
2751             }
2752             if ( 557 <= _widec && _widec <= 559 )
2753             goto tr76;
2754             goto st0;
2755             st122:
2756             if ( ++p == pe )
2757             goto _test_eof122;
2758             case 122:
2759             switch( (*p) ) {
2760             case 71: goto st123;
2761             case 103: goto st123;
2762             }
2763             goto st0;
2764             st123:
2765             if ( ++p == pe )
2766             goto _test_eof123;
2767             case 123:
2768             _widec = (*p);
2769             if ( (*p) < 46 ) {
2770             if ( 45 <= (*p) && (*p) <= 45 ) {
2771             _widec = (short)(128 + ((*p) - -128));
2772             if (
2773             #line 17 "ragel/tstr_cparse_datetime.rl"
2774              
2775             (*p) == sep_char
2776             ) _widec += 256;
2777             }
2778             } else if ( (*p) > 46 ) {
2779             if ( 47 <= (*p) && (*p) <= 47 ) {
2780             _widec = (short)(128 + ((*p) - -128));
2781             if (
2782             #line 17 "ragel/tstr_cparse_datetime.rl"
2783              
2784             (*p) == sep_char
2785             ) _widec += 256;
2786             }
2787             } else {
2788             _widec = (short)(128 + ((*p) - -128));
2789             if (
2790             #line 17 "ragel/tstr_cparse_datetime.rl"
2791              
2792             (*p) == sep_char
2793             ) _widec += 256;
2794             }
2795             switch( _widec ) {
2796             case 85: goto st124;
2797             case 117: goto st124;
2798             }
2799             if ( 557 <= _widec && _widec <= 559 )
2800             goto tr76;
2801             goto st0;
2802             st124:
2803             if ( ++p == pe )
2804             goto _test_eof124;
2805             case 124:
2806             switch( (*p) ) {
2807             case 83: goto st125;
2808             case 115: goto st125;
2809             }
2810             goto st0;
2811             st125:
2812             if ( ++p == pe )
2813             goto _test_eof125;
2814             case 125:
2815             switch( (*p) ) {
2816             case 84: goto st121;
2817             case 116: goto st121;
2818             }
2819             goto st0;
2820             tr156:
2821             #line 4 "ragel/tstr_common.rl"
2822             { mark = p; }
2823             goto st126;
2824             st126:
2825             if ( ++p == pe )
2826             goto _test_eof126;
2827             case 126:
2828             #line 2829 "tstr_cparse_datetime.c"
2829 6           switch( (*p) ) {
2830 0           case 69: goto st127;
2831 6           case 101: goto st127;
2832             }
2833 0           goto st0;
2834 6           st127:
2835 6 50         if ( ++p == pe )
2836 0           goto _test_eof127;
2837             case 127:
2838 6           switch( (*p) ) {
2839 0           case 67: goto st128;
2840 6           case 99: goto st128;
2841             }
2842 0           goto st0;
2843 6           st128:
2844 6 50         if ( ++p == pe )
2845 0           goto _test_eof128;
2846             case 128:
2847 6           _widec = (*p);
2848 6 100         if ( (*p) < 46 ) {
2849 2 50         if ( 45 <= (*p) && (*p) <= 45 ) {
    50          
2850 2 50         _widec = (short)(128 + ((*p) - -128));
2851 2 50         if (
2852             #line 17 "ragel/tstr_cparse_datetime.rl"
2853              
2854             (*p) == sep_char
2855             ) _widec += 256;
2856             }
2857             } else if ( (*p) > 46 ) {
2858             if ( 47 <= (*p) && (*p) <= 47 ) {
2859             _widec = (short)(128 + ((*p) - -128));
2860             if (
2861             #line 17 "ragel/tstr_cparse_datetime.rl"
2862              
2863             (*p) == sep_char
2864             ) _widec += 256;
2865             }
2866             } else {
2867             _widec = (short)(128 + ((*p) - -128));
2868             if (
2869             #line 17 "ragel/tstr_cparse_datetime.rl"
2870              
2871             (*p) == sep_char
2872             ) _widec += 256;
2873             }
2874             switch( _widec ) {
2875             case 69: goto st129;
2876             case 101: goto st129;
2877             }
2878             if ( 557 <= _widec && _widec <= 559 )
2879             goto tr76;
2880             goto st0;
2881             st129:
2882             if ( ++p == pe )
2883             goto _test_eof129;
2884             case 129:
2885             switch( (*p) ) {
2886             case 77: goto st130;
2887             case 109: goto st130;
2888             }
2889             goto st0;
2890             st130:
2891             if ( ++p == pe )
2892             goto _test_eof130;
2893             case 130:
2894             switch( (*p) ) {
2895             case 66: goto st131;
2896             case 98: goto st131;
2897             }
2898             goto st0;
2899             st131:
2900             if ( ++p == pe )
2901             goto _test_eof131;
2902             case 131:
2903             switch( (*p) ) {
2904             case 69: goto st132;
2905             case 101: goto st132;
2906             }
2907             goto st0;
2908             st132:
2909             if ( ++p == pe )
2910             goto _test_eof132;
2911             case 132:
2912             switch( (*p) ) {
2913             case 82: goto st121;
2914             case 114: goto st121;
2915             }
2916             goto st0;
2917             tr157:
2918             #line 4 "ragel/tstr_common.rl"
2919             { mark = p; }
2920             goto st133;
2921             st133:
2922             if ( ++p == pe )
2923             goto _test_eof133;
2924             case 133:
2925             #line 2926 "tstr_cparse_datetime.c"
2926 0           switch( (*p) ) {
2927 0           case 69: goto st134;
2928 0           case 101: goto st134;
2929             }
2930 0           goto st0;
2931 0           st134:
2932 0 0         if ( ++p == pe )
2933 0           goto _test_eof134;
2934             case 134:
2935 0           switch( (*p) ) {
2936 0           case 66: goto st135;
2937 0           case 98: goto st135;
2938             }
2939 0           goto st0;
2940 0           st135:
2941 0 0         if ( ++p == pe )
2942 0           goto _test_eof135;
2943             case 135:
2944 0           _widec = (*p);
2945 0 0         if ( (*p) < 46 ) {
2946 0 0         if ( 45 <= (*p) && (*p) <= 45 ) {
    0          
2947 0 0         _widec = (short)(128 + ((*p) - -128));
2948 0 0         if (
2949             #line 17 "ragel/tstr_cparse_datetime.rl"
2950              
2951             (*p) == sep_char
2952             ) _widec += 256;
2953             }
2954             } else if ( (*p) > 46 ) {
2955             if ( 47 <= (*p) && (*p) <= 47 ) {
2956             _widec = (short)(128 + ((*p) - -128));
2957             if (
2958             #line 17 "ragel/tstr_cparse_datetime.rl"
2959              
2960             (*p) == sep_char
2961             ) _widec += 256;
2962             }
2963             } else {
2964             _widec = (short)(128 + ((*p) - -128));
2965             if (
2966             #line 17 "ragel/tstr_cparse_datetime.rl"
2967              
2968             (*p) == sep_char
2969             ) _widec += 256;
2970             }
2971             switch( _widec ) {
2972             case 82: goto st136;
2973             case 114: goto st136;
2974             }
2975             if ( 557 <= _widec && _widec <= 559 )
2976             goto tr76;
2977             goto st0;
2978             st136:
2979             if ( ++p == pe )
2980             goto _test_eof136;
2981             case 136:
2982             switch( (*p) ) {
2983             case 85: goto st137;
2984             case 117: goto st137;
2985             }
2986             goto st0;
2987             st137:
2988             if ( ++p == pe )
2989             goto _test_eof137;
2990             case 137:
2991             switch( (*p) ) {
2992             case 65: goto st138;
2993             case 97: goto st138;
2994             }
2995             goto st0;
2996             st138:
2997             if ( ++p == pe )
2998             goto _test_eof138;
2999             case 138:
3000             switch( (*p) ) {
3001             case 82: goto st139;
3002             case 114: goto st139;
3003             }
3004             goto st0;
3005             st139:
3006             if ( ++p == pe )
3007             goto _test_eof139;
3008             case 139:
3009             switch( (*p) ) {
3010             case 89: goto st121;
3011             case 121: goto st121;
3012             }
3013             goto st0;
3014             tr158:
3015             #line 4 "ragel/tstr_common.rl"
3016             { mark = p; }
3017             goto st140;
3018             st140:
3019             if ( ++p == pe )
3020             goto _test_eof140;
3021             case 140:
3022             #line 3023 "tstr_cparse_datetime.c"
3023 2           _widec = (*p);
3024 2 50         if ( (*p) < 46 ) {
3025 0 0         if ( 45 <= (*p) && (*p) <= 45 ) {
    0          
3026 0 0         _widec = (short)(128 + ((*p) - -128));
3027 0 0         if (
3028             #line 17 "ragel/tstr_cparse_datetime.rl"
3029              
3030             (*p) == sep_char
3031             ) _widec += 256;
3032             }
3033             } else if ( (*p) > 46 ) {
3034             if ( 47 <= (*p) && (*p) <= 47 ) {
3035             _widec = (short)(128 + ((*p) - -128));
3036             if (
3037             #line 17 "ragel/tstr_cparse_datetime.rl"
3038              
3039             (*p) == sep_char
3040             ) _widec += 256;
3041             }
3042             } else {
3043             _widec = (short)(128 + ((*p) - -128));
3044             if (
3045             #line 17 "ragel/tstr_cparse_datetime.rl"
3046              
3047             (*p) == sep_char
3048             ) _widec += 256;
3049             }
3050             switch( _widec ) {
3051             case 73: goto st141;
3052             case 86: goto st121;
3053             case 88: goto st121;
3054             case 105: goto st141;
3055             case 118: goto st121;
3056             case 120: goto st121;
3057             }
3058             if ( 557 <= _widec && _widec <= 559 )
3059             goto tr76;
3060             goto st0;
3061             st141:
3062             if ( ++p == pe )
3063             goto _test_eof141;
3064             case 141:
3065             _widec = (*p);
3066             if ( (*p) < 46 ) {
3067             if ( 45 <= (*p) && (*p) <= 45 ) {
3068             _widec = (short)(128 + ((*p) - -128));
3069             if (
3070             #line 17 "ragel/tstr_cparse_datetime.rl"
3071              
3072             (*p) == sep_char
3073             ) _widec += 256;
3074             }
3075             } else if ( (*p) > 46 ) {
3076             if ( 47 <= (*p) && (*p) <= 47 ) {
3077             _widec = (short)(128 + ((*p) - -128));
3078             if (
3079             #line 17 "ragel/tstr_cparse_datetime.rl"
3080              
3081             (*p) == sep_char
3082             ) _widec += 256;
3083             }
3084             } else {
3085             _widec = (short)(128 + ((*p) - -128));
3086             if (
3087             #line 17 "ragel/tstr_cparse_datetime.rl"
3088              
3089             (*p) == sep_char
3090             ) _widec += 256;
3091             }
3092             switch( _widec ) {
3093             case 73: goto st121;
3094             case 105: goto st121;
3095             }
3096             if ( 557 <= _widec && _widec <= 559 )
3097             goto tr76;
3098             goto st0;
3099             tr159:
3100             #line 4 "ragel/tstr_common.rl"
3101             { mark = p; }
3102             goto st142;
3103             st142:
3104             if ( ++p == pe )
3105             goto _test_eof142;
3106             case 142:
3107             #line 3108 "tstr_cparse_datetime.c"
3108 0           switch( (*p) ) {
3109 0           case 65: goto st143;
3110 0           case 85: goto st145;
3111 0           case 97: goto st143;
3112 0           case 117: goto st145;
3113             }
3114 0           goto st0;
3115 0           st143:
3116 0 0         if ( ++p == pe )
3117 0           goto _test_eof143;
3118             case 143:
3119 0           switch( (*p) ) {
3120 0           case 78: goto st144;
3121 0           case 110: goto st144;
3122             }
3123 0           goto st0;
3124 0           st144:
3125 0 0         if ( ++p == pe )
3126 0           goto _test_eof144;
3127             case 144:
3128 0           _widec = (*p);
3129 0 0         if ( (*p) < 46 ) {
3130 0 0         if ( 45 <= (*p) && (*p) <= 45 ) {
    0          
3131 0 0         _widec = (short)(128 + ((*p) - -128));
3132 0 0         if (
3133             #line 17 "ragel/tstr_cparse_datetime.rl"
3134              
3135             (*p) == sep_char
3136             ) _widec += 256;
3137             }
3138             } else if ( (*p) > 46 ) {
3139             if ( 47 <= (*p) && (*p) <= 47 ) {
3140             _widec = (short)(128 + ((*p) - -128));
3141             if (
3142             #line 17 "ragel/tstr_cparse_datetime.rl"
3143              
3144             (*p) == sep_char
3145             ) _widec += 256;
3146             }
3147             } else {
3148             _widec = (short)(128 + ((*p) - -128));
3149             if (
3150             #line 17 "ragel/tstr_cparse_datetime.rl"
3151              
3152             (*p) == sep_char
3153             ) _widec += 256;
3154             }
3155             switch( _widec ) {
3156             case 85: goto st137;
3157             case 117: goto st137;
3158             }
3159             if ( 557 <= _widec && _widec <= 559 )
3160             goto tr76;
3161             goto st0;
3162             st145:
3163             if ( ++p == pe )
3164             goto _test_eof145;
3165             case 145:
3166             switch( (*p) ) {
3167             case 76: goto st146;
3168             case 78: goto st147;
3169             case 108: goto st146;
3170             case 110: goto st147;
3171             }
3172             goto st0;
3173             st146:
3174             if ( ++p == pe )
3175             goto _test_eof146;
3176             case 146:
3177             _widec = (*p);
3178             if ( (*p) < 46 ) {
3179             if ( 45 <= (*p) && (*p) <= 45 ) {
3180             _widec = (short)(128 + ((*p) - -128));
3181             if (
3182             #line 17 "ragel/tstr_cparse_datetime.rl"
3183              
3184             (*p) == sep_char
3185             ) _widec += 256;
3186             }
3187             } else if ( (*p) > 46 ) {
3188             if ( 47 <= (*p) && (*p) <= 47 ) {
3189             _widec = (short)(128 + ((*p) - -128));
3190             if (
3191             #line 17 "ragel/tstr_cparse_datetime.rl"
3192              
3193             (*p) == sep_char
3194             ) _widec += 256;
3195             }
3196             } else {
3197             _widec = (short)(128 + ((*p) - -128));
3198             if (
3199             #line 17 "ragel/tstr_cparse_datetime.rl"
3200              
3201             (*p) == sep_char
3202             ) _widec += 256;
3203             }
3204             switch( _widec ) {
3205             case 89: goto st121;
3206             case 121: goto st121;
3207             }
3208             if ( 557 <= _widec && _widec <= 559 )
3209             goto tr76;
3210             goto st0;
3211             st147:
3212             if ( ++p == pe )
3213             goto _test_eof147;
3214             case 147:
3215             _widec = (*p);
3216             if ( (*p) < 46 ) {
3217             if ( 45 <= (*p) && (*p) <= 45 ) {
3218             _widec = (short)(128 + ((*p) - -128));
3219             if (
3220             #line 17 "ragel/tstr_cparse_datetime.rl"
3221              
3222             (*p) == sep_char
3223             ) _widec += 256;
3224             }
3225             } else if ( (*p) > 46 ) {
3226             if ( 47 <= (*p) && (*p) <= 47 ) {
3227             _widec = (short)(128 + ((*p) - -128));
3228             if (
3229             #line 17 "ragel/tstr_cparse_datetime.rl"
3230              
3231             (*p) == sep_char
3232             ) _widec += 256;
3233             }
3234             } else {
3235             _widec = (short)(128 + ((*p) - -128));
3236             if (
3237             #line 17 "ragel/tstr_cparse_datetime.rl"
3238              
3239             (*p) == sep_char
3240             ) _widec += 256;
3241             }
3242             switch( _widec ) {
3243             case 69: goto st121;
3244             case 101: goto st121;
3245             }
3246             if ( 557 <= _widec && _widec <= 559 )
3247             goto tr76;
3248             goto st0;
3249             tr160:
3250             #line 4 "ragel/tstr_common.rl"
3251             { mark = p; }
3252             goto st148;
3253             st148:
3254             if ( ++p == pe )
3255             goto _test_eof148;
3256             case 148:
3257             #line 3258 "tstr_cparse_datetime.c"
3258 0           switch( (*p) ) {
3259 0           case 65: goto st149;
3260 0           case 97: goto st149;
3261             }
3262 0           goto st0;
3263 0           st149:
3264 0 0         if ( ++p == pe )
3265 0           goto _test_eof149;
3266             case 149:
3267 0           switch( (*p) ) {
3268 0           case 82: goto st150;
3269 0           case 89: goto st121;
3270 0           case 114: goto st150;
3271 0           case 121: goto st121;
3272             }
3273 0           goto st0;
3274 0           st150:
3275 0 0         if ( ++p == pe )
3276 0           goto _test_eof150;
3277             case 150:
3278 0           _widec = (*p);
3279 0 0         if ( (*p) < 46 ) {
3280 0 0         if ( 45 <= (*p) && (*p) <= 45 ) {
    0          
3281 0 0         _widec = (short)(128 + ((*p) - -128));
3282 0 0         if (
3283             #line 17 "ragel/tstr_cparse_datetime.rl"
3284              
3285             (*p) == sep_char
3286             ) _widec += 256;
3287             }
3288             } else if ( (*p) > 46 ) {
3289             if ( 47 <= (*p) && (*p) <= 47 ) {
3290             _widec = (short)(128 + ((*p) - -128));
3291             if (
3292             #line 17 "ragel/tstr_cparse_datetime.rl"
3293              
3294             (*p) == sep_char
3295             ) _widec += 256;
3296             }
3297             } else {
3298             _widec = (short)(128 + ((*p) - -128));
3299             if (
3300             #line 17 "ragel/tstr_cparse_datetime.rl"
3301              
3302             (*p) == sep_char
3303             ) _widec += 256;
3304             }
3305             switch( _widec ) {
3306             case 67: goto st151;
3307             case 99: goto st151;
3308             }
3309             if ( 557 <= _widec && _widec <= 559 )
3310             goto tr76;
3311             goto st0;
3312             st151:
3313             if ( ++p == pe )
3314             goto _test_eof151;
3315             case 151:
3316             switch( (*p) ) {
3317             case 72: goto st121;
3318             case 104: goto st121;
3319             }
3320             goto st0;
3321             tr161:
3322             #line 4 "ragel/tstr_common.rl"
3323             { mark = p; }
3324             goto st152;
3325             st152:
3326             if ( ++p == pe )
3327             goto _test_eof152;
3328             case 152:
3329             #line 3330 "tstr_cparse_datetime.c"
3330 0           switch( (*p) ) {
3331 0           case 79: goto st153;
3332 0           case 111: goto st153;
3333             }
3334 0           goto st0;
3335 0           st153:
3336 0 0         if ( ++p == pe )
3337 0           goto _test_eof153;
3338             case 153:
3339 0           switch( (*p) ) {
3340 0           case 86: goto st128;
3341 0           case 118: goto st128;
3342             }
3343 0           goto st0;
3344 0           tr162:
3345             #line 4 "ragel/tstr_common.rl"
3346             { mark = p; }
3347             goto st154;
3348             st154:
3349             if ( ++p == pe )
3350             goto _test_eof154;
3351             case 154:
3352             #line 3353 "tstr_cparse_datetime.c"
3353 0           switch( (*p) ) {
3354 0           case 67: goto st155;
3355 0           case 99: goto st155;
3356             }
3357 0           goto st0;
3358 0           st155:
3359 0 0         if ( ++p == pe )
3360 0           goto _test_eof155;
3361             case 155:
3362 0           switch( (*p) ) {
3363 0           case 84: goto st156;
3364 0           case 116: goto st156;
3365             }
3366 0           goto st0;
3367 0           st156:
3368 0 0         if ( ++p == pe )
3369 0           goto _test_eof156;
3370             case 156:
3371 0           _widec = (*p);
3372 0 0         if ( (*p) < 46 ) {
3373 0 0         if ( 45 <= (*p) && (*p) <= 45 ) {
    0          
3374 0 0         _widec = (short)(128 + ((*p) - -128));
3375 0 0         if (
3376             #line 17 "ragel/tstr_cparse_datetime.rl"
3377              
3378             (*p) == sep_char
3379             ) _widec += 256;
3380             }
3381             } else if ( (*p) > 46 ) {
3382             if ( 47 <= (*p) && (*p) <= 47 ) {
3383             _widec = (short)(128 + ((*p) - -128));
3384             if (
3385             #line 17 "ragel/tstr_cparse_datetime.rl"
3386              
3387             (*p) == sep_char
3388             ) _widec += 256;
3389             }
3390             } else {
3391             _widec = (short)(128 + ((*p) - -128));
3392             if (
3393             #line 17 "ragel/tstr_cparse_datetime.rl"
3394              
3395             (*p) == sep_char
3396             ) _widec += 256;
3397             }
3398             switch( _widec ) {
3399             case 79: goto st130;
3400             case 111: goto st130;
3401             }
3402             if ( 557 <= _widec && _widec <= 559 )
3403             goto tr76;
3404             goto st0;
3405             tr163:
3406             #line 4 "ragel/tstr_common.rl"
3407             { mark = p; }
3408             goto st157;
3409             st157:
3410             if ( ++p == pe )
3411             goto _test_eof157;
3412             case 157:
3413             #line 3414 "tstr_cparse_datetime.c"
3414 0           switch( (*p) ) {
3415 0           case 69: goto st158;
3416 0           case 101: goto st158;
3417             }
3418 0           goto st0;
3419 0           st158:
3420 0 0         if ( ++p == pe )
3421 0           goto _test_eof158;
3422             case 158:
3423 0           switch( (*p) ) {
3424 0           case 80: goto st159;
3425 0           case 112: goto st159;
3426             }
3427 0           goto st0;
3428 0           st159:
3429 0 0         if ( ++p == pe )
3430 0           goto _test_eof159;
3431             case 159:
3432 0           _widec = (*p);
3433 0 0         if ( (*p) < 46 ) {
3434 0 0         if ( 45 <= (*p) && (*p) <= 45 ) {
    0          
3435 0 0         _widec = (short)(128 + ((*p) - -128));
3436 0 0         if (
3437             #line 17 "ragel/tstr_cparse_datetime.rl"
3438              
3439             (*p) == sep_char
3440             ) _widec += 256;
3441             }
3442             } else if ( (*p) > 46 ) {
3443             if ( 47 <= (*p) && (*p) <= 47 ) {
3444             _widec = (short)(128 + ((*p) - -128));
3445             if (
3446             #line 17 "ragel/tstr_cparse_datetime.rl"
3447              
3448             (*p) == sep_char
3449             ) _widec += 256;
3450             }
3451             } else {
3452             _widec = (short)(128 + ((*p) - -128));
3453             if (
3454             #line 17 "ragel/tstr_cparse_datetime.rl"
3455              
3456             (*p) == sep_char
3457             ) _widec += 256;
3458             }
3459             switch( _widec ) {
3460             case 84: goto st128;
3461             case 116: goto st128;
3462             }
3463             if ( 557 <= _widec && _widec <= 559 )
3464             goto tr76;
3465             goto st0;
3466             tr164:
3467             #line 4 "ragel/tstr_common.rl"
3468             { mark = p; }
3469             goto st160;
3470             st160:
3471             if ( ++p == pe )
3472             goto _test_eof160;
3473             case 160:
3474             #line 3475 "tstr_cparse_datetime.c"
3475 0           _widec = (*p);
3476 0 0         if ( (*p) < 46 ) {
3477 0 0         if ( 45 <= (*p) && (*p) <= 45 ) {
    0          
3478 0 0         _widec = (short)(128 + ((*p) - -128));
3479 0 0         if (
3480             #line 17 "ragel/tstr_cparse_datetime.rl"
3481              
3482             (*p) == sep_char
3483             ) _widec += 256;
3484             }
3485             } else if ( (*p) > 46 ) {
3486             if ( 47 <= (*p) && (*p) <= 47 ) {
3487             _widec = (short)(128 + ((*p) - -128));
3488             if (
3489             #line 17 "ragel/tstr_cparse_datetime.rl"
3490              
3491             (*p) == sep_char
3492             ) _widec += 256;
3493             }
3494             } else {
3495             _widec = (short)(128 + ((*p) - -128));
3496             if (
3497             #line 17 "ragel/tstr_cparse_datetime.rl"
3498              
3499             (*p) == sep_char
3500             ) _widec += 256;
3501             }
3502             switch( _widec ) {
3503             case 73: goto st161;
3504             case 105: goto st161;
3505             }
3506             if ( 557 <= _widec && _widec <= 559 )
3507             goto tr76;
3508             goto st0;
3509             tr165:
3510             #line 4 "ragel/tstr_common.rl"
3511             { mark = p; }
3512             goto st161;
3513             st161:
3514             if ( ++p == pe )
3515             goto _test_eof161;
3516             case 161:
3517             #line 3518 "tstr_cparse_datetime.c"
3518 1           _widec = (*p);
3519 1 50         if ( (*p) < 46 ) {
3520 0 0         if ( 45 <= (*p) && (*p) <= 45 ) {
    0          
3521 0 0         _widec = (short)(128 + ((*p) - -128));
3522 0 0         if (
3523             #line 17 "ragel/tstr_cparse_datetime.rl"
3524              
3525             (*p) == sep_char
3526             ) _widec += 256;
3527             }
3528             } else if ( (*p) > 46 ) {
3529             if ( 47 <= (*p) && (*p) <= 47 ) {
3530             _widec = (short)(128 + ((*p) - -128));
3531             if (
3532             #line 17 "ragel/tstr_cparse_datetime.rl"
3533              
3534             (*p) == sep_char
3535             ) _widec += 256;
3536             }
3537             } else {
3538             _widec = (short)(128 + ((*p) - -128));
3539             if (
3540             #line 17 "ragel/tstr_cparse_datetime.rl"
3541              
3542             (*p) == sep_char
3543             ) _widec += 256;
3544             }
3545             switch( _widec ) {
3546             case 73: goto st141;
3547             case 105: goto st141;
3548             }
3549             if ( 557 <= _widec && _widec <= 559 )
3550             goto tr76;
3551             goto st0;
3552             tr47:
3553             #line 30 "ragel/tstr_common.rl"
3554             {
3555             if (!tstr_token_parse_day(mark, p - mark, &v)) {
3556             result = TSTR_PARSE_ERR_DAY;
3557             {p++; cs = 162; goto _out;}
3558             }
3559             tstr_parsed_set_day(parsed, v);
3560             }
3561             #line 13 "ragel/tstr_cparse_datetime.rl"
3562             {
3563             sep_char = (*p);
3564             }
3565             #line 25 "ragel/tstr_cparse_datetime.rl"
3566             {
3567             mark = mark_day;
3568             }
3569             goto st162;
3570             st162:
3571             if ( ++p == pe )
3572             goto _test_eof162;
3573             case 162:
3574             #line 3575 "tstr_cparse_datetime.c"
3575 6           switch( (*p) ) {
3576 3           case 32: goto st31;
3577 0           case 65: goto tr155;
3578 2           case 68: goto tr156;
3579 0           case 70: goto tr157;
3580 1           case 73: goto tr158;
3581 0           case 74: goto tr159;
3582 0           case 77: goto tr160;
3583 0           case 78: goto tr161;
3584 0           case 79: goto tr162;
3585 0           case 83: goto tr163;
3586 0           case 86: goto tr164;
3587 0           case 88: goto tr165;
3588 0           case 97: goto tr155;
3589 0           case 100: goto tr156;
3590 0           case 102: goto tr157;
3591 0           case 105: goto tr158;
3592 0           case 106: goto tr159;
3593 0           case 109: goto tr160;
3594 0           case 110: goto tr161;
3595 0           case 111: goto tr162;
3596 0           case 115: goto tr163;
3597 0           case 118: goto tr164;
3598 0           case 120: goto tr165;
3599             }
3600 0           goto st0;
3601 159           st163:
3602 159 50         if ( ++p == pe )
3603 0           goto _test_eof163;
3604             case 163:
3605 159           switch( (*p) ) {
3606 69           case 32: goto tr45;
3607 6           case 46: goto tr47;
3608 0           case 65: goto tr49;
3609 4           case 68: goto tr50;
3610 0           case 70: goto tr51;
3611 0           case 73: goto tr52;
3612 0           case 74: goto tr53;
3613 0           case 77: goto tr54;
3614 0           case 78: goto tr55;
3615 0           case 79: goto tr56;
3616 0           case 82: goto st293;
3617 0           case 83: goto tr58;
3618 0           case 84: goto st297;
3619 0           case 86: goto tr60;
3620 1           case 88: goto tr61;
3621 0           case 97: goto tr49;
3622 0           case 100: goto tr50;
3623 0           case 102: goto tr51;
3624 0           case 105: goto tr52;
3625 0           case 106: goto tr53;
3626 0           case 109: goto tr54;
3627 0           case 110: goto tr55;
3628 0           case 111: goto tr56;
3629 0           case 114: goto st293;
3630 0           case 115: goto tr58;
3631 2           case 116: goto st297;
3632 0           case 118: goto tr60;
3633 0           case 120: goto tr61;
3634             }
3635 77 100         if ( (*p) > 47 ) {
3636 72 50         if ( 48 <= (*p) && (*p) <= 57 )
    50          
3637 72           goto st164;
3638 5 50         } else if ( (*p) >= 45 )
3639 5           goto tr46;
3640 0           goto st0;
3641 72           st164:
3642 72 50         if ( ++p == pe )
3643 0           goto _test_eof164;
3644             case 164:
3645 72 50         if ( 48 <= (*p) && (*p) <= 57 )
    50          
3646 72           goto st165;
3647 0           goto st0;
3648 72           st165:
3649 72 50         if ( ++p == pe )
3650 0           goto _test_eof165;
3651             case 165:
3652 72           switch( (*p) ) {
3653 0           case 65: goto tr205;
3654 1           case 68: goto tr206;
3655 0           case 70: goto tr207;
3656 1           case 74: goto tr208;
3657 0           case 77: goto tr209;
3658 0           case 78: goto tr210;
3659 0           case 79: goto tr211;
3660 0           case 83: goto tr212;
3661 0           case 97: goto tr205;
3662 0           case 100: goto tr206;
3663 0           case 102: goto tr207;
3664 0           case 106: goto tr208;
3665 0           case 109: goto tr209;
3666 0           case 110: goto tr210;
3667 0           case 111: goto tr211;
3668 0           case 115: goto tr212;
3669             }
3670 70 50         if ( 45 <= (*p) && (*p) <= 47 )
    50          
3671 70           goto tr204;
3672 0           goto st0;
3673 70           tr204:
3674             #line 6 "ragel/tstr_common.rl"
3675             {
3676             if (!tstr_token_parse_year(mark, p - mark, &v)) {
3677             result = TSTR_PARSE_ERR_YEAR;
3678             {p++; cs = 166; goto _out;}
3679             }
3680             tstr_parsed_set_year4(parsed, v);
3681             }
3682             #line 13 "ragel/tstr_cparse_datetime.rl"
3683             {
3684             sep_char = (*p);
3685             }
3686             goto st166;
3687             st166:
3688             if ( ++p == pe )
3689             goto _test_eof166;
3690             case 166:
3691             #line 3692 "tstr_cparse_datetime.c"
3692 70           switch( (*p) ) {
3693 0           case 65: goto tr214;
3694 4           case 68: goto tr215;
3695 0           case 70: goto tr216;
3696 0           case 74: goto tr217;
3697 0           case 77: goto tr218;
3698 0           case 78: goto tr219;
3699 0           case 79: goto tr220;
3700 0           case 83: goto tr221;
3701 0           case 97: goto tr214;
3702 0           case 100: goto tr215;
3703 0           case 102: goto tr216;
3704 0           case 106: goto tr217;
3705 0           case 109: goto tr218;
3706 0           case 110: goto tr219;
3707 0           case 111: goto tr220;
3708 0           case 115: goto tr221;
3709             }
3710 66 50         if ( 48 <= (*p) && (*p) <= 57 )
    50          
3711 66           goto tr213;
3712 0           goto st0;
3713 66           tr213:
3714             #line 4 "ragel/tstr_common.rl"
3715             { mark = p; }
3716             goto st167;
3717             st167:
3718             if ( ++p == pe )
3719             goto _test_eof167;
3720             case 167:
3721             #line 3722 "tstr_cparse_datetime.c"
3722 66           _widec = (*p);
3723 66 100         if ( (*p) < 46 ) {
3724 1 50         if ( 45 <= (*p) && (*p) <= 45 ) {
    50          
3725 1 50         _widec = (short)(128 + ((*p) - -128));
3726 1 50         if (
3727             #line 17 "ragel/tstr_cparse_datetime.rl"
3728              
3729             (*p) == sep_char
3730             ) _widec += 256;
3731             }
3732             } else if ( (*p) > 46 ) {
3733             if ( 47 <= (*p) && (*p) <= 47 ) {
3734             _widec = (short)(128 + ((*p) - -128));
3735             if (
3736             #line 17 "ragel/tstr_cparse_datetime.rl"
3737              
3738             (*p) == sep_char
3739             ) _widec += 256;
3740             }
3741             } else {
3742             _widec = (short)(128 + ((*p) - -128));
3743             if (
3744             #line 17 "ragel/tstr_cparse_datetime.rl"
3745              
3746             (*p) == sep_char
3747             ) _widec += 256;
3748             }
3749             if ( _widec > 57 ) {
3750             if ( 557 <= _widec && _widec <= 559 )
3751             goto tr223;
3752             } else if ( _widec >= 48 )
3753             goto st168;
3754             goto st0;
3755             st168:
3756             if ( ++p == pe )
3757             goto _test_eof168;
3758             case 168:
3759             _widec = (*p);
3760             if ( (*p) < 46 ) {
3761             if ( 45 <= (*p) && (*p) <= 45 ) {
3762             _widec = (short)(128 + ((*p) - -128));
3763             if (
3764             #line 17 "ragel/tstr_cparse_datetime.rl"
3765              
3766             (*p) == sep_char
3767             ) _widec += 256;
3768             }
3769             } else if ( (*p) > 46 ) {
3770             if ( 47 <= (*p) && (*p) <= 47 ) {
3771             _widec = (short)(128 + ((*p) - -128));
3772             if (
3773             #line 17 "ragel/tstr_cparse_datetime.rl"
3774              
3775             (*p) == sep_char
3776             ) _widec += 256;
3777             }
3778             } else {
3779             _widec = (short)(128 + ((*p) - -128));
3780             if (
3781             #line 17 "ragel/tstr_cparse_datetime.rl"
3782              
3783             (*p) == sep_char
3784             ) _widec += 256;
3785             }
3786             if ( 557 <= _widec && _widec <= 559 )
3787             goto tr223;
3788             goto st0;
3789             tr223:
3790             #line 22 "ragel/tstr_common.rl"
3791             {
3792             if (!tstr_token_parse_month(mark, p - mark, &v)) {
3793             result = TSTR_PARSE_ERR_MONTH;
3794             {p++; cs = 169; goto _out;}
3795             }
3796             tstr_parsed_set_month(parsed, v);
3797             }
3798             goto st169;
3799             st169:
3800             if ( ++p == pe )
3801             goto _test_eof169;
3802             case 169:
3803             #line 3804 "tstr_cparse_datetime.c"
3804 68 50         if ( 48 <= (*p) && (*p) <= 57 )
    50          
3805 68           goto tr224;
3806 0           goto st0;
3807 68           tr224:
3808             #line 4 "ragel/tstr_common.rl"
3809             { mark = p; }
3810             goto st412;
3811             tr260:
3812             #line 22 "ragel/tstr_common.rl"
3813             {
3814             if (!tstr_token_parse_month(mark, p - mark, &v)) {
3815             result = TSTR_PARSE_ERR_MONTH;
3816             {p++; cs = 412; goto _out;}
3817             }
3818             tstr_parsed_set_month(parsed, v);
3819             }
3820             #line 4 "ragel/tstr_common.rl"
3821             { mark = p; }
3822             goto st412;
3823             st412:
3824             if ( ++p == pe )
3825             goto _test_eof412;
3826             case 412:
3827             #line 3828 "tstr_cparse_datetime.c"
3828 66           switch( (*p) ) {
3829 0           case 32: goto tr468;
3830 0           case 44: goto tr469;
3831 0           case 84: goto tr471;
3832 0           case 116: goto tr471;
3833             }
3834 66 50         if ( 48 <= (*p) && (*p) <= 57 )
    50          
3835 66           goto st413;
3836 0           goto st0;
3837 66           st413:
3838 66 100         if ( ++p == pe )
3839 13           goto _test_eof413;
3840             case 413:
3841 53           switch( (*p) ) {
3842 5           case 32: goto tr468;
3843 0           case 44: goto tr469;
3844 47           case 84: goto tr471;
3845 1           case 116: goto tr471;
3846             }
3847 0           goto st0;
3848 0           tr214:
3849             #line 4 "ragel/tstr_common.rl"
3850             { mark = p; }
3851             goto st170;
3852             st170:
3853             if ( ++p == pe )
3854             goto _test_eof170;
3855             case 170:
3856             #line 3857 "tstr_cparse_datetime.c"
3857 0           switch( (*p) ) {
3858 0           case 80: goto st171;
3859 0           case 85: goto st174;
3860 0           case 112: goto st171;
3861 0           case 117: goto st174;
3862             }
3863 0           goto st0;
3864 0           st171:
3865 0 0         if ( ++p == pe )
3866 0           goto _test_eof171;
3867             case 171:
3868 0           switch( (*p) ) {
3869 0           case 82: goto st172;
3870 0           case 114: goto st172;
3871             }
3872 0           goto st0;
3873 0           st172:
3874 0 0         if ( ++p == pe )
3875 0           goto _test_eof172;
3876             case 172:
3877 0           _widec = (*p);
3878 0 0         if ( (*p) < 46 ) {
3879 0 0         if ( 45 <= (*p) && (*p) <= 45 ) {
    0          
3880 0 0         _widec = (short)(128 + ((*p) - -128));
3881 0 0         if (
3882             #line 17 "ragel/tstr_cparse_datetime.rl"
3883              
3884             (*p) == sep_char
3885             ) _widec += 256;
3886             }
3887             } else if ( (*p) > 46 ) {
3888             if ( 47 <= (*p) && (*p) <= 47 ) {
3889             _widec = (short)(128 + ((*p) - -128));
3890             if (
3891             #line 17 "ragel/tstr_cparse_datetime.rl"
3892              
3893             (*p) == sep_char
3894             ) _widec += 256;
3895             }
3896             } else {
3897             _widec = (short)(128 + ((*p) - -128));
3898             if (
3899             #line 17 "ragel/tstr_cparse_datetime.rl"
3900              
3901             (*p) == sep_char
3902             ) _widec += 256;
3903             }
3904             switch( _widec ) {
3905             case 73: goto st173;
3906             case 105: goto st173;
3907             }
3908             if ( 557 <= _widec && _widec <= 559 )
3909             goto tr223;
3910             goto st0;
3911             st173:
3912             if ( ++p == pe )
3913             goto _test_eof173;
3914             case 173:
3915             switch( (*p) ) {
3916             case 76: goto st168;
3917             case 108: goto st168;
3918             }
3919             goto st0;
3920             st174:
3921             if ( ++p == pe )
3922             goto _test_eof174;
3923             case 174:
3924             switch( (*p) ) {
3925             case 71: goto st175;
3926             case 103: goto st175;
3927             }
3928             goto st0;
3929             st175:
3930             if ( ++p == pe )
3931             goto _test_eof175;
3932             case 175:
3933             _widec = (*p);
3934             if ( (*p) < 46 ) {
3935             if ( 45 <= (*p) && (*p) <= 45 ) {
3936             _widec = (short)(128 + ((*p) - -128));
3937             if (
3938             #line 17 "ragel/tstr_cparse_datetime.rl"
3939              
3940             (*p) == sep_char
3941             ) _widec += 256;
3942             }
3943             } else if ( (*p) > 46 ) {
3944             if ( 47 <= (*p) && (*p) <= 47 ) {
3945             _widec = (short)(128 + ((*p) - -128));
3946             if (
3947             #line 17 "ragel/tstr_cparse_datetime.rl"
3948              
3949             (*p) == sep_char
3950             ) _widec += 256;
3951             }
3952             } else {
3953             _widec = (short)(128 + ((*p) - -128));
3954             if (
3955             #line 17 "ragel/tstr_cparse_datetime.rl"
3956              
3957             (*p) == sep_char
3958             ) _widec += 256;
3959             }
3960             switch( _widec ) {
3961             case 85: goto st176;
3962             case 117: goto st176;
3963             }
3964             if ( 557 <= _widec && _widec <= 559 )
3965             goto tr223;
3966             goto st0;
3967             st176:
3968             if ( ++p == pe )
3969             goto _test_eof176;
3970             case 176:
3971             switch( (*p) ) {
3972             case 83: goto st177;
3973             case 115: goto st177;
3974             }
3975             goto st0;
3976             st177:
3977             if ( ++p == pe )
3978             goto _test_eof177;
3979             case 177:
3980             switch( (*p) ) {
3981             case 84: goto st168;
3982             case 116: goto st168;
3983             }
3984             goto st0;
3985             tr215:
3986             #line 4 "ragel/tstr_common.rl"
3987             { mark = p; }
3988             goto st178;
3989             st178:
3990             if ( ++p == pe )
3991             goto _test_eof178;
3992             case 178:
3993             #line 3994 "tstr_cparse_datetime.c"
3994 4           switch( (*p) ) {
3995 0           case 69: goto st179;
3996 4           case 101: goto st179;
3997             }
3998 0           goto st0;
3999 4           st179:
4000 4 50         if ( ++p == pe )
4001 0           goto _test_eof179;
4002             case 179:
4003 4           switch( (*p) ) {
4004 0           case 67: goto st180;
4005 4           case 99: goto st180;
4006             }
4007 0           goto st0;
4008 4           st180:
4009 4 50         if ( ++p == pe )
4010 0           goto _test_eof180;
4011             case 180:
4012 4           _widec = (*p);
4013 4 100         if ( (*p) < 46 ) {
4014 1 50         if ( 45 <= (*p) && (*p) <= 45 ) {
    50          
4015 1 50         _widec = (short)(128 + ((*p) - -128));
4016 1 50         if (
4017             #line 17 "ragel/tstr_cparse_datetime.rl"
4018              
4019             (*p) == sep_char
4020             ) _widec += 256;
4021             }
4022             } else if ( (*p) > 46 ) {
4023             if ( 47 <= (*p) && (*p) <= 47 ) {
4024             _widec = (short)(128 + ((*p) - -128));
4025             if (
4026             #line 17 "ragel/tstr_cparse_datetime.rl"
4027              
4028             (*p) == sep_char
4029             ) _widec += 256;
4030             }
4031             } else {
4032             _widec = (short)(128 + ((*p) - -128));
4033             if (
4034             #line 17 "ragel/tstr_cparse_datetime.rl"
4035              
4036             (*p) == sep_char
4037             ) _widec += 256;
4038             }
4039             switch( _widec ) {
4040             case 69: goto st181;
4041             case 101: goto st181;
4042             }
4043             if ( 557 <= _widec && _widec <= 559 )
4044             goto tr223;
4045             goto st0;
4046             st181:
4047             if ( ++p == pe )
4048             goto _test_eof181;
4049             case 181:
4050             switch( (*p) ) {
4051             case 77: goto st182;
4052             case 109: goto st182;
4053             }
4054             goto st0;
4055             st182:
4056             if ( ++p == pe )
4057             goto _test_eof182;
4058             case 182:
4059             switch( (*p) ) {
4060             case 66: goto st183;
4061             case 98: goto st183;
4062             }
4063             goto st0;
4064             st183:
4065             if ( ++p == pe )
4066             goto _test_eof183;
4067             case 183:
4068             switch( (*p) ) {
4069             case 69: goto st184;
4070             case 101: goto st184;
4071             }
4072             goto st0;
4073             st184:
4074             if ( ++p == pe )
4075             goto _test_eof184;
4076             case 184:
4077             switch( (*p) ) {
4078             case 82: goto st168;
4079             case 114: goto st168;
4080             }
4081             goto st0;
4082             tr216:
4083             #line 4 "ragel/tstr_common.rl"
4084             { mark = p; }
4085             goto st185;
4086             st185:
4087             if ( ++p == pe )
4088             goto _test_eof185;
4089             case 185:
4090             #line 4091 "tstr_cparse_datetime.c"
4091 0           switch( (*p) ) {
4092 0           case 69: goto st186;
4093 0           case 101: goto st186;
4094             }
4095 0           goto st0;
4096 0           st186:
4097 0 0         if ( ++p == pe )
4098 0           goto _test_eof186;
4099             case 186:
4100 0           switch( (*p) ) {
4101 0           case 66: goto st187;
4102 0           case 98: goto st187;
4103             }
4104 0           goto st0;
4105 0           st187:
4106 0 0         if ( ++p == pe )
4107 0           goto _test_eof187;
4108             case 187:
4109 0           _widec = (*p);
4110 0 0         if ( (*p) < 46 ) {
4111 0 0         if ( 45 <= (*p) && (*p) <= 45 ) {
    0          
4112 0 0         _widec = (short)(128 + ((*p) - -128));
4113 0 0         if (
4114             #line 17 "ragel/tstr_cparse_datetime.rl"
4115              
4116             (*p) == sep_char
4117             ) _widec += 256;
4118             }
4119             } else if ( (*p) > 46 ) {
4120             if ( 47 <= (*p) && (*p) <= 47 ) {
4121             _widec = (short)(128 + ((*p) - -128));
4122             if (
4123             #line 17 "ragel/tstr_cparse_datetime.rl"
4124              
4125             (*p) == sep_char
4126             ) _widec += 256;
4127             }
4128             } else {
4129             _widec = (short)(128 + ((*p) - -128));
4130             if (
4131             #line 17 "ragel/tstr_cparse_datetime.rl"
4132              
4133             (*p) == sep_char
4134             ) _widec += 256;
4135             }
4136             switch( _widec ) {
4137             case 82: goto st188;
4138             case 114: goto st188;
4139             }
4140             if ( 557 <= _widec && _widec <= 559 )
4141             goto tr223;
4142             goto st0;
4143             st188:
4144             if ( ++p == pe )
4145             goto _test_eof188;
4146             case 188:
4147             switch( (*p) ) {
4148             case 85: goto st189;
4149             case 117: goto st189;
4150             }
4151             goto st0;
4152             st189:
4153             if ( ++p == pe )
4154             goto _test_eof189;
4155             case 189:
4156             switch( (*p) ) {
4157             case 65: goto st190;
4158             case 97: goto st190;
4159             }
4160             goto st0;
4161             st190:
4162             if ( ++p == pe )
4163             goto _test_eof190;
4164             case 190:
4165             switch( (*p) ) {
4166             case 82: goto st191;
4167             case 114: goto st191;
4168             }
4169             goto st0;
4170             st191:
4171             if ( ++p == pe )
4172             goto _test_eof191;
4173             case 191:
4174             switch( (*p) ) {
4175             case 89: goto st168;
4176             case 121: goto st168;
4177             }
4178             goto st0;
4179             tr217:
4180             #line 4 "ragel/tstr_common.rl"
4181             { mark = p; }
4182             goto st192;
4183             st192:
4184             if ( ++p == pe )
4185             goto _test_eof192;
4186             case 192:
4187             #line 4188 "tstr_cparse_datetime.c"
4188 0           switch( (*p) ) {
4189 0           case 65: goto st193;
4190 0           case 85: goto st195;
4191 0           case 97: goto st193;
4192 0           case 117: goto st195;
4193             }
4194 0           goto st0;
4195 0           st193:
4196 0 0         if ( ++p == pe )
4197 0           goto _test_eof193;
4198             case 193:
4199 0           switch( (*p) ) {
4200 0           case 78: goto st194;
4201 0           case 110: goto st194;
4202             }
4203 0           goto st0;
4204 0           st194:
4205 0 0         if ( ++p == pe )
4206 0           goto _test_eof194;
4207             case 194:
4208 0           _widec = (*p);
4209 0 0         if ( (*p) < 46 ) {
4210 0 0         if ( 45 <= (*p) && (*p) <= 45 ) {
    0          
4211 0 0         _widec = (short)(128 + ((*p) - -128));
4212 0 0         if (
4213             #line 17 "ragel/tstr_cparse_datetime.rl"
4214              
4215             (*p) == sep_char
4216             ) _widec += 256;
4217             }
4218             } else if ( (*p) > 46 ) {
4219             if ( 47 <= (*p) && (*p) <= 47 ) {
4220             _widec = (short)(128 + ((*p) - -128));
4221             if (
4222             #line 17 "ragel/tstr_cparse_datetime.rl"
4223              
4224             (*p) == sep_char
4225             ) _widec += 256;
4226             }
4227             } else {
4228             _widec = (short)(128 + ((*p) - -128));
4229             if (
4230             #line 17 "ragel/tstr_cparse_datetime.rl"
4231              
4232             (*p) == sep_char
4233             ) _widec += 256;
4234             }
4235             switch( _widec ) {
4236             case 85: goto st189;
4237             case 117: goto st189;
4238             }
4239             if ( 557 <= _widec && _widec <= 559 )
4240             goto tr223;
4241             goto st0;
4242             st195:
4243             if ( ++p == pe )
4244             goto _test_eof195;
4245             case 195:
4246             switch( (*p) ) {
4247             case 76: goto st196;
4248             case 78: goto st197;
4249             case 108: goto st196;
4250             case 110: goto st197;
4251             }
4252             goto st0;
4253             st196:
4254             if ( ++p == pe )
4255             goto _test_eof196;
4256             case 196:
4257             _widec = (*p);
4258             if ( (*p) < 46 ) {
4259             if ( 45 <= (*p) && (*p) <= 45 ) {
4260             _widec = (short)(128 + ((*p) - -128));
4261             if (
4262             #line 17 "ragel/tstr_cparse_datetime.rl"
4263              
4264             (*p) == sep_char
4265             ) _widec += 256;
4266             }
4267             } else if ( (*p) > 46 ) {
4268             if ( 47 <= (*p) && (*p) <= 47 ) {
4269             _widec = (short)(128 + ((*p) - -128));
4270             if (
4271             #line 17 "ragel/tstr_cparse_datetime.rl"
4272              
4273             (*p) == sep_char
4274             ) _widec += 256;
4275             }
4276             } else {
4277             _widec = (short)(128 + ((*p) - -128));
4278             if (
4279             #line 17 "ragel/tstr_cparse_datetime.rl"
4280              
4281             (*p) == sep_char
4282             ) _widec += 256;
4283             }
4284             switch( _widec ) {
4285             case 89: goto st168;
4286             case 121: goto st168;
4287             }
4288             if ( 557 <= _widec && _widec <= 559 )
4289             goto tr223;
4290             goto st0;
4291             st197:
4292             if ( ++p == pe )
4293             goto _test_eof197;
4294             case 197:
4295             _widec = (*p);
4296             if ( (*p) < 46 ) {
4297             if ( 45 <= (*p) && (*p) <= 45 ) {
4298             _widec = (short)(128 + ((*p) - -128));
4299             if (
4300             #line 17 "ragel/tstr_cparse_datetime.rl"
4301              
4302             (*p) == sep_char
4303             ) _widec += 256;
4304             }
4305             } else if ( (*p) > 46 ) {
4306             if ( 47 <= (*p) && (*p) <= 47 ) {
4307             _widec = (short)(128 + ((*p) - -128));
4308             if (
4309             #line 17 "ragel/tstr_cparse_datetime.rl"
4310              
4311             (*p) == sep_char
4312             ) _widec += 256;
4313             }
4314             } else {
4315             _widec = (short)(128 + ((*p) - -128));
4316             if (
4317             #line 17 "ragel/tstr_cparse_datetime.rl"
4318              
4319             (*p) == sep_char
4320             ) _widec += 256;
4321             }
4322             switch( _widec ) {
4323             case 69: goto st168;
4324             case 101: goto st168;
4325             }
4326             if ( 557 <= _widec && _widec <= 559 )
4327             goto tr223;
4328             goto st0;
4329             tr218:
4330             #line 4 "ragel/tstr_common.rl"
4331             { mark = p; }
4332             goto st198;
4333             st198:
4334             if ( ++p == pe )
4335             goto _test_eof198;
4336             case 198:
4337             #line 4338 "tstr_cparse_datetime.c"
4338 0           switch( (*p) ) {
4339 0           case 65: goto st199;
4340 0           case 97: goto st199;
4341             }
4342 0           goto st0;
4343 0           st199:
4344 0 0         if ( ++p == pe )
4345 0           goto _test_eof199;
4346             case 199:
4347 0           switch( (*p) ) {
4348 0           case 82: goto st200;
4349 0           case 89: goto st168;
4350 0           case 114: goto st200;
4351 0           case 121: goto st168;
4352             }
4353 0           goto st0;
4354 0           st200:
4355 0 0         if ( ++p == pe )
4356 0           goto _test_eof200;
4357             case 200:
4358 0           _widec = (*p);
4359 0 0         if ( (*p) < 46 ) {
4360 0 0         if ( 45 <= (*p) && (*p) <= 45 ) {
    0          
4361 0 0         _widec = (short)(128 + ((*p) - -128));
4362 0 0         if (
4363             #line 17 "ragel/tstr_cparse_datetime.rl"
4364              
4365             (*p) == sep_char
4366             ) _widec += 256;
4367             }
4368             } else if ( (*p) > 46 ) {
4369             if ( 47 <= (*p) && (*p) <= 47 ) {
4370             _widec = (short)(128 + ((*p) - -128));
4371             if (
4372             #line 17 "ragel/tstr_cparse_datetime.rl"
4373              
4374             (*p) == sep_char
4375             ) _widec += 256;
4376             }
4377             } else {
4378             _widec = (short)(128 + ((*p) - -128));
4379             if (
4380             #line 17 "ragel/tstr_cparse_datetime.rl"
4381              
4382             (*p) == sep_char
4383             ) _widec += 256;
4384             }
4385             switch( _widec ) {
4386             case 67: goto st201;
4387             case 99: goto st201;
4388             }
4389             if ( 557 <= _widec && _widec <= 559 )
4390             goto tr223;
4391             goto st0;
4392             st201:
4393             if ( ++p == pe )
4394             goto _test_eof201;
4395             case 201:
4396             switch( (*p) ) {
4397             case 72: goto st168;
4398             case 104: goto st168;
4399             }
4400             goto st0;
4401             tr219:
4402             #line 4 "ragel/tstr_common.rl"
4403             { mark = p; }
4404             goto st202;
4405             st202:
4406             if ( ++p == pe )
4407             goto _test_eof202;
4408             case 202:
4409             #line 4410 "tstr_cparse_datetime.c"
4410 0           switch( (*p) ) {
4411 0           case 79: goto st203;
4412 0           case 111: goto st203;
4413             }
4414 0           goto st0;
4415 0           st203:
4416 0 0         if ( ++p == pe )
4417 0           goto _test_eof203;
4418             case 203:
4419 0           switch( (*p) ) {
4420 0           case 86: goto st180;
4421 0           case 118: goto st180;
4422             }
4423 0           goto st0;
4424 0           tr220:
4425             #line 4 "ragel/tstr_common.rl"
4426             { mark = p; }
4427             goto st204;
4428             st204:
4429             if ( ++p == pe )
4430             goto _test_eof204;
4431             case 204:
4432             #line 4433 "tstr_cparse_datetime.c"
4433 0           switch( (*p) ) {
4434 0           case 67: goto st205;
4435 0           case 99: goto st205;
4436             }
4437 0           goto st0;
4438 0           st205:
4439 0 0         if ( ++p == pe )
4440 0           goto _test_eof205;
4441             case 205:
4442 0           switch( (*p) ) {
4443 0           case 84: goto st206;
4444 0           case 116: goto st206;
4445             }
4446 0           goto st0;
4447 0           st206:
4448 0 0         if ( ++p == pe )
4449 0           goto _test_eof206;
4450             case 206:
4451 0           _widec = (*p);
4452 0 0         if ( (*p) < 46 ) {
4453 0 0         if ( 45 <= (*p) && (*p) <= 45 ) {
    0          
4454 0 0         _widec = (short)(128 + ((*p) - -128));
4455 0 0         if (
4456             #line 17 "ragel/tstr_cparse_datetime.rl"
4457              
4458             (*p) == sep_char
4459             ) _widec += 256;
4460             }
4461             } else if ( (*p) > 46 ) {
4462             if ( 47 <= (*p) && (*p) <= 47 ) {
4463             _widec = (short)(128 + ((*p) - -128));
4464             if (
4465             #line 17 "ragel/tstr_cparse_datetime.rl"
4466              
4467             (*p) == sep_char
4468             ) _widec += 256;
4469             }
4470             } else {
4471             _widec = (short)(128 + ((*p) - -128));
4472             if (
4473             #line 17 "ragel/tstr_cparse_datetime.rl"
4474              
4475             (*p) == sep_char
4476             ) _widec += 256;
4477             }
4478             switch( _widec ) {
4479             case 79: goto st182;
4480             case 111: goto st182;
4481             }
4482             if ( 557 <= _widec && _widec <= 559 )
4483             goto tr223;
4484             goto st0;
4485             tr221:
4486             #line 4 "ragel/tstr_common.rl"
4487             { mark = p; }
4488             goto st207;
4489             st207:
4490             if ( ++p == pe )
4491             goto _test_eof207;
4492             case 207:
4493             #line 4494 "tstr_cparse_datetime.c"
4494 0           switch( (*p) ) {
4495 0           case 69: goto st208;
4496 0           case 101: goto st208;
4497             }
4498 0           goto st0;
4499 0           st208:
4500 0 0         if ( ++p == pe )
4501 0           goto _test_eof208;
4502             case 208:
4503 0           switch( (*p) ) {
4504 0           case 80: goto st209;
4505 0           case 112: goto st209;
4506             }
4507 0           goto st0;
4508 0           st209:
4509 0 0         if ( ++p == pe )
4510 0           goto _test_eof209;
4511             case 209:
4512 0           _widec = (*p);
4513 0 0         if ( (*p) < 46 ) {
4514 0 0         if ( 45 <= (*p) && (*p) <= 45 ) {
    0          
4515 0 0         _widec = (short)(128 + ((*p) - -128));
4516 0 0         if (
4517             #line 17 "ragel/tstr_cparse_datetime.rl"
4518              
4519             (*p) == sep_char
4520             ) _widec += 256;
4521             }
4522             } else if ( (*p) > 46 ) {
4523             if ( 47 <= (*p) && (*p) <= 47 ) {
4524             _widec = (short)(128 + ((*p) - -128));
4525             if (
4526             #line 17 "ragel/tstr_cparse_datetime.rl"
4527              
4528             (*p) == sep_char
4529             ) _widec += 256;
4530             }
4531             } else {
4532             _widec = (short)(128 + ((*p) - -128));
4533             if (
4534             #line 17 "ragel/tstr_cparse_datetime.rl"
4535              
4536             (*p) == sep_char
4537             ) _widec += 256;
4538             }
4539             switch( _widec ) {
4540             case 84: goto st180;
4541             case 116: goto st180;
4542             }
4543             if ( 557 <= _widec && _widec <= 559 )
4544             goto tr223;
4545             goto st0;
4546             tr205:
4547             #line 6 "ragel/tstr_common.rl"
4548             {
4549             if (!tstr_token_parse_year(mark, p - mark, &v)) {
4550             result = TSTR_PARSE_ERR_YEAR;
4551             {p++; cs = 210; goto _out;}
4552             }
4553             tstr_parsed_set_year4(parsed, v);
4554             }
4555             #line 4 "ragel/tstr_common.rl"
4556             { mark = p; }
4557             goto st210;
4558             st210:
4559             if ( ++p == pe )
4560             goto _test_eof210;
4561             case 210:
4562             #line 4563 "tstr_cparse_datetime.c"
4563 0           switch( (*p) ) {
4564 0           case 80: goto st211;
4565 0           case 85: goto st215;
4566 0           case 112: goto st211;
4567 0           case 117: goto st215;
4568             }
4569 0           goto st0;
4570 0           st211:
4571 0 0         if ( ++p == pe )
4572 0           goto _test_eof211;
4573             case 211:
4574 0           switch( (*p) ) {
4575 0           case 82: goto st212;
4576 0           case 114: goto st212;
4577             }
4578 0           goto st0;
4579 0           st212:
4580 0 0         if ( ++p == pe )
4581 0           goto _test_eof212;
4582             case 212:
4583 0           switch( (*p) ) {
4584 0           case 73: goto st213;
4585 0           case 105: goto st213;
4586             }
4587 0 0         if ( 48 <= (*p) && (*p) <= 57 )
    0          
4588 0           goto tr260;
4589 0           goto st0;
4590 0           st213:
4591 0 0         if ( ++p == pe )
4592 0           goto _test_eof213;
4593             case 213:
4594 0           switch( (*p) ) {
4595 0           case 76: goto st214;
4596 0           case 108: goto st214;
4597             }
4598 0           goto st0;
4599 1           st214:
4600 1 50         if ( ++p == pe )
4601 0           goto _test_eof214;
4602             case 214:
4603 1 50         if ( 48 <= (*p) && (*p) <= 57 )
    50          
4604 1           goto tr260;
4605 0           goto st0;
4606 0           st215:
4607 0 0         if ( ++p == pe )
4608 0           goto _test_eof215;
4609             case 215:
4610 0           switch( (*p) ) {
4611 0           case 71: goto st216;
4612 0           case 103: goto st216;
4613             }
4614 0           goto st0;
4615 0           st216:
4616 0 0         if ( ++p == pe )
4617 0           goto _test_eof216;
4618             case 216:
4619 0           switch( (*p) ) {
4620 0           case 85: goto st217;
4621 0           case 117: goto st217;
4622             }
4623 0 0         if ( 48 <= (*p) && (*p) <= 57 )
    0          
4624 0           goto tr260;
4625 0           goto st0;
4626 0           st217:
4627 0 0         if ( ++p == pe )
4628 0           goto _test_eof217;
4629             case 217:
4630 0           switch( (*p) ) {
4631 0           case 83: goto st218;
4632 0           case 115: goto st218;
4633             }
4634 0           goto st0;
4635 0           st218:
4636 0 0         if ( ++p == pe )
4637 0           goto _test_eof218;
4638             case 218:
4639 0           switch( (*p) ) {
4640 0           case 84: goto st214;
4641 0           case 116: goto st214;
4642             }
4643 0           goto st0;
4644 1           tr206:
4645             #line 6 "ragel/tstr_common.rl"
4646             {
4647             if (!tstr_token_parse_year(mark, p - mark, &v)) {
4648             result = TSTR_PARSE_ERR_YEAR;
4649             {p++; cs = 219; goto _out;}
4650             }
4651             tstr_parsed_set_year4(parsed, v);
4652             }
4653             #line 4 "ragel/tstr_common.rl"
4654             { mark = p; }
4655             goto st219;
4656             st219:
4657             if ( ++p == pe )
4658             goto _test_eof219;
4659             case 219:
4660             #line 4661 "tstr_cparse_datetime.c"
4661 1           switch( (*p) ) {
4662 0           case 69: goto st220;
4663 1           case 101: goto st220;
4664             }
4665 0           goto st0;
4666 1           st220:
4667 1 50         if ( ++p == pe )
4668 0           goto _test_eof220;
4669             case 220:
4670 1           switch( (*p) ) {
4671 0           case 67: goto st221;
4672 1           case 99: goto st221;
4673             }
4674 0           goto st0;
4675 1           st221:
4676 1 50         if ( ++p == pe )
4677 0           goto _test_eof221;
4678             case 221:
4679 1           switch( (*p) ) {
4680 0           case 69: goto st222;
4681 0           case 101: goto st222;
4682             }
4683 1 50         if ( 48 <= (*p) && (*p) <= 57 )
    50          
4684 1           goto tr260;
4685 0           goto st0;
4686 0           st222:
4687 0 0         if ( ++p == pe )
4688 0           goto _test_eof222;
4689             case 222:
4690 0           switch( (*p) ) {
4691 0           case 77: goto st223;
4692 0           case 109: goto st223;
4693             }
4694 0           goto st0;
4695 0           st223:
4696 0 0         if ( ++p == pe )
4697 0           goto _test_eof223;
4698             case 223:
4699 0           switch( (*p) ) {
4700 0           case 66: goto st224;
4701 0           case 98: goto st224;
4702             }
4703 0           goto st0;
4704 0           st224:
4705 0 0         if ( ++p == pe )
4706 0           goto _test_eof224;
4707             case 224:
4708 0           switch( (*p) ) {
4709 0           case 69: goto st225;
4710 0           case 101: goto st225;
4711             }
4712 0           goto st0;
4713 0           st225:
4714 0 0         if ( ++p == pe )
4715 0           goto _test_eof225;
4716             case 225:
4717 0           switch( (*p) ) {
4718 0           case 82: goto st214;
4719 0           case 114: goto st214;
4720             }
4721 0           goto st0;
4722 0           tr207:
4723             #line 6 "ragel/tstr_common.rl"
4724             {
4725             if (!tstr_token_parse_year(mark, p - mark, &v)) {
4726             result = TSTR_PARSE_ERR_YEAR;
4727             {p++; cs = 226; goto _out;}
4728             }
4729             tstr_parsed_set_year4(parsed, v);
4730             }
4731             #line 4 "ragel/tstr_common.rl"
4732             { mark = p; }
4733             goto st226;
4734             st226:
4735             if ( ++p == pe )
4736             goto _test_eof226;
4737             case 226:
4738             #line 4739 "tstr_cparse_datetime.c"
4739 0           switch( (*p) ) {
4740 0           case 69: goto st227;
4741 0           case 101: goto st227;
4742             }
4743 0           goto st0;
4744 0           st227:
4745 0 0         if ( ++p == pe )
4746 0           goto _test_eof227;
4747             case 227:
4748 0           switch( (*p) ) {
4749 0           case 66: goto st228;
4750 0           case 98: goto st228;
4751             }
4752 0           goto st0;
4753 0           st228:
4754 0 0         if ( ++p == pe )
4755 0           goto _test_eof228;
4756             case 228:
4757 0           switch( (*p) ) {
4758 0           case 82: goto st229;
4759 0           case 114: goto st229;
4760             }
4761 0 0         if ( 48 <= (*p) && (*p) <= 57 )
    0          
4762 0           goto tr260;
4763 0           goto st0;
4764 0           st229:
4765 0 0         if ( ++p == pe )
4766 0           goto _test_eof229;
4767             case 229:
4768 0           switch( (*p) ) {
4769 0           case 85: goto st230;
4770 0           case 117: goto st230;
4771             }
4772 0           goto st0;
4773 1           st230:
4774 1 50         if ( ++p == pe )
4775 0           goto _test_eof230;
4776             case 230:
4777 1           switch( (*p) ) {
4778 0           case 65: goto st231;
4779 1           case 97: goto st231;
4780             }
4781 0           goto st0;
4782 1           st231:
4783 1 50         if ( ++p == pe )
4784 0           goto _test_eof231;
4785             case 231:
4786 1           switch( (*p) ) {
4787 0           case 82: goto st232;
4788 1           case 114: goto st232;
4789             }
4790 0           goto st0;
4791 1           st232:
4792 1 50         if ( ++p == pe )
4793 0           goto _test_eof232;
4794             case 232:
4795 1           switch( (*p) ) {
4796 0           case 89: goto st214;
4797 1           case 121: goto st214;
4798             }
4799 0           goto st0;
4800 1           tr208:
4801             #line 6 "ragel/tstr_common.rl"
4802             {
4803             if (!tstr_token_parse_year(mark, p - mark, &v)) {
4804             result = TSTR_PARSE_ERR_YEAR;
4805             {p++; cs = 233; goto _out;}
4806             }
4807             tstr_parsed_set_year4(parsed, v);
4808             }
4809             #line 4 "ragel/tstr_common.rl"
4810             { mark = p; }
4811             goto st233;
4812             st233:
4813             if ( ++p == pe )
4814             goto _test_eof233;
4815             case 233:
4816             #line 4817 "tstr_cparse_datetime.c"
4817 1           switch( (*p) ) {
4818 0           case 65: goto st234;
4819 0           case 85: goto st236;
4820 1           case 97: goto st234;
4821 0           case 117: goto st236;
4822             }
4823 0           goto st0;
4824 1           st234:
4825 1 50         if ( ++p == pe )
4826 0           goto _test_eof234;
4827             case 234:
4828 1           switch( (*p) ) {
4829 0           case 78: goto st235;
4830 1           case 110: goto st235;
4831             }
4832 0           goto st0;
4833 1           st235:
4834 1 50         if ( ++p == pe )
4835 0           goto _test_eof235;
4836             case 235:
4837 1           switch( (*p) ) {
4838 0           case 85: goto st230;
4839 1           case 117: goto st230;
4840             }
4841 0 0         if ( 48 <= (*p) && (*p) <= 57 )
    0          
4842 0           goto tr260;
4843 0           goto st0;
4844 0           st236:
4845 0 0         if ( ++p == pe )
4846 0           goto _test_eof236;
4847             case 236:
4848 0           switch( (*p) ) {
4849 0           case 76: goto st237;
4850 0           case 78: goto st238;
4851 0           case 108: goto st237;
4852 0           case 110: goto st238;
4853             }
4854 0           goto st0;
4855 0           st237:
4856 0 0         if ( ++p == pe )
4857 0           goto _test_eof237;
4858             case 237:
4859 0           switch( (*p) ) {
4860 0           case 89: goto st214;
4861 0           case 121: goto st214;
4862             }
4863 0 0         if ( 48 <= (*p) && (*p) <= 57 )
    0          
4864 0           goto tr260;
4865 0           goto st0;
4866 0           st238:
4867 0 0         if ( ++p == pe )
4868 0           goto _test_eof238;
4869             case 238:
4870 0           switch( (*p) ) {
4871 0           case 69: goto st214;
4872 0           case 101: goto st214;
4873             }
4874 0 0         if ( 48 <= (*p) && (*p) <= 57 )
    0          
4875 0           goto tr260;
4876 0           goto st0;
4877 0           tr209:
4878             #line 6 "ragel/tstr_common.rl"
4879             {
4880             if (!tstr_token_parse_year(mark, p - mark, &v)) {
4881             result = TSTR_PARSE_ERR_YEAR;
4882             {p++; cs = 239; goto _out;}
4883             }
4884             tstr_parsed_set_year4(parsed, v);
4885             }
4886             #line 4 "ragel/tstr_common.rl"
4887             { mark = p; }
4888             goto st239;
4889             st239:
4890             if ( ++p == pe )
4891             goto _test_eof239;
4892             case 239:
4893             #line 4894 "tstr_cparse_datetime.c"
4894 0           switch( (*p) ) {
4895 0           case 65: goto st240;
4896 0           case 97: goto st240;
4897             }
4898 0           goto st0;
4899 0           st240:
4900 0 0         if ( ++p == pe )
4901 0           goto _test_eof240;
4902             case 240:
4903 0           switch( (*p) ) {
4904 0           case 82: goto st241;
4905 0           case 89: goto st214;
4906 0           case 114: goto st241;
4907 0           case 121: goto st214;
4908             }
4909 0           goto st0;
4910 0           st241:
4911 0 0         if ( ++p == pe )
4912 0           goto _test_eof241;
4913             case 241:
4914 0           switch( (*p) ) {
4915 0           case 67: goto st242;
4916 0           case 99: goto st242;
4917             }
4918 0 0         if ( 48 <= (*p) && (*p) <= 57 )
    0          
4919 0           goto tr260;
4920 0           goto st0;
4921 0           st242:
4922 0 0         if ( ++p == pe )
4923 0           goto _test_eof242;
4924             case 242:
4925 0           switch( (*p) ) {
4926 0           case 72: goto st214;
4927 0           case 104: goto st214;
4928             }
4929 0           goto st0;
4930 0           tr210:
4931             #line 6 "ragel/tstr_common.rl"
4932             {
4933             if (!tstr_token_parse_year(mark, p - mark, &v)) {
4934             result = TSTR_PARSE_ERR_YEAR;
4935             {p++; cs = 243; goto _out;}
4936             }
4937             tstr_parsed_set_year4(parsed, v);
4938             }
4939             #line 4 "ragel/tstr_common.rl"
4940             { mark = p; }
4941             goto st243;
4942             st243:
4943             if ( ++p == pe )
4944             goto _test_eof243;
4945             case 243:
4946             #line 4947 "tstr_cparse_datetime.c"
4947 0           switch( (*p) ) {
4948 0           case 79: goto st244;
4949 0           case 111: goto st244;
4950             }
4951 0           goto st0;
4952 0           st244:
4953 0 0         if ( ++p == pe )
4954 0           goto _test_eof244;
4955             case 244:
4956 0           switch( (*p) ) {
4957 0           case 86: goto st221;
4958 0           case 118: goto st221;
4959             }
4960 0           goto st0;
4961 0           tr211:
4962             #line 6 "ragel/tstr_common.rl"
4963             {
4964             if (!tstr_token_parse_year(mark, p - mark, &v)) {
4965             result = TSTR_PARSE_ERR_YEAR;
4966             {p++; cs = 245; goto _out;}
4967             }
4968             tstr_parsed_set_year4(parsed, v);
4969             }
4970             #line 4 "ragel/tstr_common.rl"
4971             { mark = p; }
4972             goto st245;
4973             st245:
4974             if ( ++p == pe )
4975             goto _test_eof245;
4976             case 245:
4977             #line 4978 "tstr_cparse_datetime.c"
4978 0           switch( (*p) ) {
4979 0           case 67: goto st246;
4980 0           case 99: goto st246;
4981             }
4982 0           goto st0;
4983 0           st246:
4984 0 0         if ( ++p == pe )
4985 0           goto _test_eof246;
4986             case 246:
4987 0           switch( (*p) ) {
4988 0           case 84: goto st247;
4989 0           case 116: goto st247;
4990             }
4991 0           goto st0;
4992 0           st247:
4993 0 0         if ( ++p == pe )
4994 0           goto _test_eof247;
4995             case 247:
4996 0           switch( (*p) ) {
4997 0           case 79: goto st223;
4998 0           case 111: goto st223;
4999             }
5000 0 0         if ( 48 <= (*p) && (*p) <= 57 )
    0          
5001 0           goto tr260;
5002 0           goto st0;
5003 0           tr212:
5004             #line 6 "ragel/tstr_common.rl"
5005             {
5006             if (!tstr_token_parse_year(mark, p - mark, &v)) {
5007             result = TSTR_PARSE_ERR_YEAR;
5008             {p++; cs = 248; goto _out;}
5009             }
5010             tstr_parsed_set_year4(parsed, v);
5011             }
5012             #line 4 "ragel/tstr_common.rl"
5013             { mark = p; }
5014             goto st248;
5015             st248:
5016             if ( ++p == pe )
5017             goto _test_eof248;
5018             case 248:
5019             #line 5020 "tstr_cparse_datetime.c"
5020 0           switch( (*p) ) {
5021 0           case 69: goto st249;
5022 0           case 101: goto st249;
5023             }
5024 0           goto st0;
5025 0           st249:
5026 0 0         if ( ++p == pe )
5027 0           goto _test_eof249;
5028             case 249:
5029 0           switch( (*p) ) {
5030 0           case 80: goto st250;
5031 0           case 112: goto st250;
5032             }
5033 0           goto st0;
5034 0           st250:
5035 0 0         if ( ++p == pe )
5036 0           goto _test_eof250;
5037             case 250:
5038 0           switch( (*p) ) {
5039 0           case 84: goto st221;
5040 0           case 116: goto st221;
5041             }
5042 0 0         if ( 48 <= (*p) && (*p) <= 57 )
    0          
5043 0           goto tr260;
5044 0           goto st0;
5045 0           tr49:
5046             #line 30 "ragel/tstr_common.rl"
5047             {
5048             if (!tstr_token_parse_day(mark, p - mark, &v)) {
5049             result = TSTR_PARSE_ERR_DAY;
5050             {p++; cs = 251; goto _out;}
5051             }
5052             tstr_parsed_set_day(parsed, v);
5053             }
5054             #line 4 "ragel/tstr_common.rl"
5055             { mark = p; }
5056             goto st251;
5057             st251:
5058             if ( ++p == pe )
5059             goto _test_eof251;
5060             case 251:
5061             #line 5062 "tstr_cparse_datetime.c"
5062 0           switch( (*p) ) {
5063 0           case 80: goto st252;
5064 0           case 85: goto st256;
5065 0           case 112: goto st252;
5066 0           case 117: goto st256;
5067             }
5068 0           goto st0;
5069 0           st252:
5070 0 0         if ( ++p == pe )
5071 0           goto _test_eof252;
5072             case 252:
5073 0           switch( (*p) ) {
5074 0           case 82: goto st253;
5075 0           case 114: goto st253;
5076             }
5077 0           goto st0;
5078 0           st253:
5079 0 0         if ( ++p == pe )
5080 0           goto _test_eof253;
5081             case 253:
5082 0           switch( (*p) ) {
5083 0           case 73: goto st254;
5084 0           case 105: goto st254;
5085             }
5086 0 0         if ( 48 <= (*p) && (*p) <= 57 )
    0          
5087 0           goto tr294;
5088 0           goto st0;
5089 0           st254:
5090 0 0         if ( ++p == pe )
5091 0           goto _test_eof254;
5092             case 254:
5093 0           switch( (*p) ) {
5094 0           case 76: goto st255;
5095 0           case 108: goto st255;
5096             }
5097 0           goto st0;
5098 1           st255:
5099 1 50         if ( ++p == pe )
5100 0           goto _test_eof255;
5101             case 255:
5102 1 50         if ( 48 <= (*p) && (*p) <= 57 )
    50          
5103 1           goto tr294;
5104 0           goto st0;
5105 0           st256:
5106 0 0         if ( ++p == pe )
5107 0           goto _test_eof256;
5108             case 256:
5109 0           switch( (*p) ) {
5110 0           case 71: goto st257;
5111 0           case 103: goto st257;
5112             }
5113 0           goto st0;
5114 0           st257:
5115 0 0         if ( ++p == pe )
5116 0           goto _test_eof257;
5117             case 257:
5118 0           switch( (*p) ) {
5119 0           case 85: goto st258;
5120 0           case 117: goto st258;
5121             }
5122 0 0         if ( 48 <= (*p) && (*p) <= 57 )
    0          
5123 0           goto tr294;
5124 0           goto st0;
5125 0           st258:
5126 0 0         if ( ++p == pe )
5127 0           goto _test_eof258;
5128             case 258:
5129 0           switch( (*p) ) {
5130 0           case 83: goto st259;
5131 0           case 115: goto st259;
5132             }
5133 0           goto st0;
5134 0           st259:
5135 0 0         if ( ++p == pe )
5136 0           goto _test_eof259;
5137             case 259:
5138 0           switch( (*p) ) {
5139 0           case 84: goto st255;
5140 0           case 116: goto st255;
5141             }
5142 0           goto st0;
5143 4           tr50:
5144             #line 30 "ragel/tstr_common.rl"
5145             {
5146             if (!tstr_token_parse_day(mark, p - mark, &v)) {
5147             result = TSTR_PARSE_ERR_DAY;
5148             {p++; cs = 260; goto _out;}
5149             }
5150             tstr_parsed_set_day(parsed, v);
5151             }
5152             #line 4 "ragel/tstr_common.rl"
5153             { mark = p; }
5154             goto st260;
5155             st260:
5156             if ( ++p == pe )
5157             goto _test_eof260;
5158             case 260:
5159             #line 5160 "tstr_cparse_datetime.c"
5160 4           switch( (*p) ) {
5161 3           case 69: goto st261;
5162 1           case 101: goto st261;
5163             }
5164 0           goto st0;
5165 4           st261:
5166 4 50         if ( ++p == pe )
5167 0           goto _test_eof261;
5168             case 261:
5169 4           switch( (*p) ) {
5170 3           case 67: goto st262;
5171 1           case 99: goto st262;
5172             }
5173 0           goto st0;
5174 4           st262:
5175 4 50         if ( ++p == pe )
5176 0           goto _test_eof262;
5177             case 262:
5178 4           switch( (*p) ) {
5179 0           case 69: goto st263;
5180 0           case 101: goto st263;
5181             }
5182 4 50         if ( 48 <= (*p) && (*p) <= 57 )
    50          
5183 4           goto tr294;
5184 0           goto st0;
5185 0           st263:
5186 0 0         if ( ++p == pe )
5187 0           goto _test_eof263;
5188             case 263:
5189 0           switch( (*p) ) {
5190 0           case 77: goto st264;
5191 0           case 109: goto st264;
5192             }
5193 0           goto st0;
5194 0           st264:
5195 0 0         if ( ++p == pe )
5196 0           goto _test_eof264;
5197             case 264:
5198 0           switch( (*p) ) {
5199 0           case 66: goto st265;
5200 0           case 98: goto st265;
5201             }
5202 0           goto st0;
5203 0           st265:
5204 0 0         if ( ++p == pe )
5205 0           goto _test_eof265;
5206             case 265:
5207 0           switch( (*p) ) {
5208 0           case 69: goto st266;
5209 0           case 101: goto st266;
5210             }
5211 0           goto st0;
5212 0           st266:
5213 0 0         if ( ++p == pe )
5214 0           goto _test_eof266;
5215             case 266:
5216 0           switch( (*p) ) {
5217 0           case 82: goto st255;
5218 0           case 114: goto st255;
5219             }
5220 0           goto st0;
5221 0           tr51:
5222             #line 30 "ragel/tstr_common.rl"
5223             {
5224             if (!tstr_token_parse_day(mark, p - mark, &v)) {
5225             result = TSTR_PARSE_ERR_DAY;
5226             {p++; cs = 267; goto _out;}
5227             }
5228             tstr_parsed_set_day(parsed, v);
5229             }
5230             #line 4 "ragel/tstr_common.rl"
5231             { mark = p; }
5232             goto st267;
5233             st267:
5234             if ( ++p == pe )
5235             goto _test_eof267;
5236             case 267:
5237             #line 5238 "tstr_cparse_datetime.c"
5238 0           switch( (*p) ) {
5239 0           case 69: goto st268;
5240 0           case 101: goto st268;
5241             }
5242 0           goto st0;
5243 0           st268:
5244 0 0         if ( ++p == pe )
5245 0           goto _test_eof268;
5246             case 268:
5247 0           switch( (*p) ) {
5248 0           case 66: goto st269;
5249 0           case 98: goto st269;
5250             }
5251 0           goto st0;
5252 0           st269:
5253 0 0         if ( ++p == pe )
5254 0           goto _test_eof269;
5255             case 269:
5256 0           switch( (*p) ) {
5257 0           case 82: goto st270;
5258 0           case 114: goto st270;
5259             }
5260 0 0         if ( 48 <= (*p) && (*p) <= 57 )
    0          
5261 0           goto tr294;
5262 0           goto st0;
5263 0           st270:
5264 0 0         if ( ++p == pe )
5265 0           goto _test_eof270;
5266             case 270:
5267 0           switch( (*p) ) {
5268 0           case 85: goto st271;
5269 0           case 117: goto st271;
5270             }
5271 0           goto st0;
5272 0           st271:
5273 0 0         if ( ++p == pe )
5274 0           goto _test_eof271;
5275             case 271:
5276 0           switch( (*p) ) {
5277 0           case 65: goto st272;
5278 0           case 97: goto st272;
5279             }
5280 0           goto st0;
5281 0           st272:
5282 0 0         if ( ++p == pe )
5283 0           goto _test_eof272;
5284             case 272:
5285 0           switch( (*p) ) {
5286 0           case 82: goto st273;
5287 0           case 114: goto st273;
5288             }
5289 0           goto st0;
5290 0           st273:
5291 0 0         if ( ++p == pe )
5292 0           goto _test_eof273;
5293             case 273:
5294 0           switch( (*p) ) {
5295 0           case 89: goto st255;
5296 0           case 121: goto st255;
5297             }
5298 0           goto st0;
5299 1           tr52:
5300             #line 30 "ragel/tstr_common.rl"
5301             {
5302             if (!tstr_token_parse_day(mark, p - mark, &v)) {
5303             result = TSTR_PARSE_ERR_DAY;
5304             {p++; cs = 274; goto _out;}
5305             }
5306             tstr_parsed_set_day(parsed, v);
5307             }
5308             #line 4 "ragel/tstr_common.rl"
5309             { mark = p; }
5310             goto st274;
5311             st274:
5312             if ( ++p == pe )
5313             goto _test_eof274;
5314             case 274:
5315             #line 5316 "tstr_cparse_datetime.c"
5316 1           switch( (*p) ) {
5317 0           case 73: goto st275;
5318 0           case 86: goto st255;
5319 0           case 88: goto st255;
5320 0           case 105: goto st275;
5321 0           case 118: goto st255;
5322 0           case 120: goto st255;
5323             }
5324 1 50         if ( 48 <= (*p) && (*p) <= 57 )
    50          
5325 1           goto tr294;
5326 0           goto st0;
5327 1           st275:
5328 1 50         if ( ++p == pe )
5329 0           goto _test_eof275;
5330             case 275:
5331 1           switch( (*p) ) {
5332 1           case 73: goto st255;
5333 0           case 105: goto st255;
5334             }
5335 0 0         if ( 48 <= (*p) && (*p) <= 57 )
    0          
5336 0           goto tr294;
5337 0           goto st0;
5338 1           tr53:
5339             #line 30 "ragel/tstr_common.rl"
5340             {
5341             if (!tstr_token_parse_day(mark, p - mark, &v)) {
5342             result = TSTR_PARSE_ERR_DAY;
5343             {p++; cs = 276; goto _out;}
5344             }
5345             tstr_parsed_set_day(parsed, v);
5346             }
5347             #line 4 "ragel/tstr_common.rl"
5348             { mark = p; }
5349             goto st276;
5350             st276:
5351             if ( ++p == pe )
5352             goto _test_eof276;
5353             case 276:
5354             #line 5355 "tstr_cparse_datetime.c"
5355 1           switch( (*p) ) {
5356 0           case 65: goto st277;
5357 0           case 85: goto st279;
5358 1           case 97: goto st277;
5359 0           case 117: goto st279;
5360             }
5361 0           goto st0;
5362 1           st277:
5363 1 50         if ( ++p == pe )
5364 0           goto _test_eof277;
5365             case 277:
5366 1           switch( (*p) ) {
5367 0           case 78: goto st278;
5368 1           case 110: goto st278;
5369             }
5370 0           goto st0;
5371 1           st278:
5372 1 50         if ( ++p == pe )
5373 0           goto _test_eof278;
5374             case 278:
5375 1           switch( (*p) ) {
5376 0           case 85: goto st271;
5377 0           case 117: goto st271;
5378             }
5379 1 50         if ( 48 <= (*p) && (*p) <= 57 )
    50          
5380 1           goto tr294;
5381 0           goto st0;
5382 0           st279:
5383 0 0         if ( ++p == pe )
5384 0           goto _test_eof279;
5385             case 279:
5386 0           switch( (*p) ) {
5387 0           case 76: goto st280;
5388 0           case 78: goto st281;
5389 0           case 108: goto st280;
5390 0           case 110: goto st281;
5391             }
5392 0           goto st0;
5393 0           st280:
5394 0 0         if ( ++p == pe )
5395 0           goto _test_eof280;
5396             case 280:
5397 0           switch( (*p) ) {
5398 0           case 89: goto st255;
5399 0           case 121: goto st255;
5400             }
5401 0 0         if ( 48 <= (*p) && (*p) <= 57 )
    0          
5402 0           goto tr294;
5403 0           goto st0;
5404 0           st281:
5405 0 0         if ( ++p == pe )
5406 0           goto _test_eof281;
5407             case 281:
5408 0           switch( (*p) ) {
5409 0           case 69: goto st255;
5410 0           case 101: goto st255;
5411             }
5412 0 0         if ( 48 <= (*p) && (*p) <= 57 )
    0          
5413 0           goto tr294;
5414 0           goto st0;
5415 0           tr54:
5416             #line 30 "ragel/tstr_common.rl"
5417             {
5418             if (!tstr_token_parse_day(mark, p - mark, &v)) {
5419             result = TSTR_PARSE_ERR_DAY;
5420             {p++; cs = 282; goto _out;}
5421             }
5422             tstr_parsed_set_day(parsed, v);
5423             }
5424             #line 4 "ragel/tstr_common.rl"
5425             { mark = p; }
5426             goto st282;
5427             st282:
5428             if ( ++p == pe )
5429             goto _test_eof282;
5430             case 282:
5431             #line 5432 "tstr_cparse_datetime.c"
5432 0           switch( (*p) ) {
5433 0           case 65: goto st283;
5434 0           case 97: goto st283;
5435             }
5436 0           goto st0;
5437 0           st283:
5438 0 0         if ( ++p == pe )
5439 0           goto _test_eof283;
5440             case 283:
5441 0           switch( (*p) ) {
5442 0           case 82: goto st284;
5443 0           case 89: goto st255;
5444 0           case 114: goto st284;
5445 0           case 121: goto st255;
5446             }
5447 0           goto st0;
5448 0           st284:
5449 0 0         if ( ++p == pe )
5450 0           goto _test_eof284;
5451             case 284:
5452 0           switch( (*p) ) {
5453 0           case 67: goto st285;
5454 0           case 99: goto st285;
5455             }
5456 0 0         if ( 48 <= (*p) && (*p) <= 57 )
    0          
5457 0           goto tr294;
5458 0           goto st0;
5459 0           st285:
5460 0 0         if ( ++p == pe )
5461 0           goto _test_eof285;
5462             case 285:
5463 0           switch( (*p) ) {
5464 0           case 72: goto st255;
5465 0           case 104: goto st255;
5466             }
5467 0           goto st0;
5468 1           tr55:
5469             #line 30 "ragel/tstr_common.rl"
5470             {
5471             if (!tstr_token_parse_day(mark, p - mark, &v)) {
5472             result = TSTR_PARSE_ERR_DAY;
5473             {p++; cs = 286; goto _out;}
5474             }
5475             tstr_parsed_set_day(parsed, v);
5476             }
5477             #line 4 "ragel/tstr_common.rl"
5478             { mark = p; }
5479             goto st286;
5480             st286:
5481             if ( ++p == pe )
5482             goto _test_eof286;
5483             case 286:
5484             #line 5485 "tstr_cparse_datetime.c"
5485 1           switch( (*p) ) {
5486 0           case 68: goto st287;
5487 0           case 79: goto st289;
5488 1           case 100: goto st287;
5489 0           case 111: goto st289;
5490             }
5491 0           goto st0;
5492 5           st287:
5493 5 50         if ( ++p == pe )
5494 0           goto _test_eof287;
5495             case 287:
5496 5           switch( (*p) ) {
5497 5           case 32: goto tr45;
5498 0           case 46: goto tr323;
5499             }
5500 0           goto st0;
5501 0           tr323:
5502             #line 25 "ragel/tstr_cparse_datetime.rl"
5503             {
5504             mark = mark_day;
5505             }
5506             #line 30 "ragel/tstr_common.rl"
5507             {
5508             if (!tstr_token_parse_day(mark, p - mark, &v)) {
5509             result = TSTR_PARSE_ERR_DAY;
5510             {p++; cs = 288; goto _out;}
5511             }
5512             tstr_parsed_set_day(parsed, v);
5513             }
5514             goto st288;
5515             st288:
5516             if ( ++p == pe )
5517             goto _test_eof288;
5518             case 288:
5519             #line 5520 "tstr_cparse_datetime.c"
5520 0 0         if ( (*p) == 32 )
5521 0           goto st31;
5522 0           goto st0;
5523 0           st289:
5524 0 0         if ( ++p == pe )
5525 0           goto _test_eof289;
5526             case 289:
5527 0           switch( (*p) ) {
5528 0           case 86: goto st262;
5529 0           case 118: goto st262;
5530             }
5531 0           goto st0;
5532 0           tr56:
5533             #line 30 "ragel/tstr_common.rl"
5534             {
5535             if (!tstr_token_parse_day(mark, p - mark, &v)) {
5536             result = TSTR_PARSE_ERR_DAY;
5537             {p++; cs = 290; goto _out;}
5538             }
5539             tstr_parsed_set_day(parsed, v);
5540             }
5541             #line 4 "ragel/tstr_common.rl"
5542             { mark = p; }
5543             goto st290;
5544             st290:
5545             if ( ++p == pe )
5546             goto _test_eof290;
5547             case 290:
5548             #line 5549 "tstr_cparse_datetime.c"
5549 0           switch( (*p) ) {
5550 0           case 67: goto st291;
5551 0           case 99: goto st291;
5552             }
5553 0           goto st0;
5554 0           st291:
5555 0 0         if ( ++p == pe )
5556 0           goto _test_eof291;
5557             case 291:
5558 0           switch( (*p) ) {
5559 0           case 84: goto st292;
5560 0           case 116: goto st292;
5561             }
5562 0           goto st0;
5563 0           st292:
5564 0 0         if ( ++p == pe )
5565 0           goto _test_eof292;
5566             case 292:
5567 0           switch( (*p) ) {
5568 0           case 79: goto st264;
5569 0           case 111: goto st264;
5570             }
5571 0 0         if ( 48 <= (*p) && (*p) <= 57 )
    0          
5572 0           goto tr294;
5573 0           goto st0;
5574 1           st293:
5575 1 50         if ( ++p == pe )
5576 0           goto _test_eof293;
5577             case 293:
5578 1           switch( (*p) ) {
5579 0           case 68: goto st287;
5580 1           case 100: goto st287;
5581             }
5582 0           goto st0;
5583 1           tr58:
5584             #line 30 "ragel/tstr_common.rl"
5585             {
5586             if (!tstr_token_parse_day(mark, p - mark, &v)) {
5587             result = TSTR_PARSE_ERR_DAY;
5588             {p++; cs = 294; goto _out;}
5589             }
5590             tstr_parsed_set_day(parsed, v);
5591             }
5592             #line 4 "ragel/tstr_common.rl"
5593             { mark = p; }
5594             goto st294;
5595             st294:
5596             if ( ++p == pe )
5597             goto _test_eof294;
5598             case 294:
5599             #line 5600 "tstr_cparse_datetime.c"
5600 1           switch( (*p) ) {
5601 0           case 69: goto st295;
5602 0           case 84: goto st287;
5603 0           case 101: goto st295;
5604 1           case 116: goto st287;
5605             }
5606 0           goto st0;
5607 0           st295:
5608 0 0         if ( ++p == pe )
5609 0           goto _test_eof295;
5610             case 295:
5611 0           switch( (*p) ) {
5612 0           case 80: goto st296;
5613 0           case 112: goto st296;
5614             }
5615 0           goto st0;
5616 0           st296:
5617 0 0         if ( ++p == pe )
5618 0           goto _test_eof296;
5619             case 296:
5620 0           switch( (*p) ) {
5621 0           case 84: goto st262;
5622 0           case 116: goto st262;
5623             }
5624 0 0         if ( 48 <= (*p) && (*p) <= 57 )
    0          
5625 0           goto tr294;
5626 0           goto st0;
5627 2           st297:
5628 2 50         if ( ++p == pe )
5629 0           goto _test_eof297;
5630             case 297:
5631 2           switch( (*p) ) {
5632 0           case 72: goto st287;
5633 2           case 104: goto st287;
5634             }
5635 0           goto st0;
5636 0           tr60:
5637             #line 30 "ragel/tstr_common.rl"
5638             {
5639             if (!tstr_token_parse_day(mark, p - mark, &v)) {
5640             result = TSTR_PARSE_ERR_DAY;
5641             {p++; cs = 298; goto _out;}
5642             }
5643             tstr_parsed_set_day(parsed, v);
5644             }
5645             #line 4 "ragel/tstr_common.rl"
5646             { mark = p; }
5647             goto st298;
5648             st298:
5649             if ( ++p == pe )
5650             goto _test_eof298;
5651             case 298:
5652             #line 5653 "tstr_cparse_datetime.c"
5653 0           switch( (*p) ) {
5654 0           case 73: goto st299;
5655 0           case 105: goto st299;
5656             }
5657 0 0         if ( 48 <= (*p) && (*p) <= 57 )
    0          
5658 0           goto tr294;
5659 0           goto st0;
5660 1           tr61:
5661             #line 30 "ragel/tstr_common.rl"
5662             {
5663             if (!tstr_token_parse_day(mark, p - mark, &v)) {
5664             result = TSTR_PARSE_ERR_DAY;
5665             {p++; cs = 299; goto _out;}
5666             }
5667             tstr_parsed_set_day(parsed, v);
5668             }
5669             #line 4 "ragel/tstr_common.rl"
5670             { mark = p; }
5671             goto st299;
5672             st299:
5673             if ( ++p == pe )
5674             goto _test_eof299;
5675             case 299:
5676             #line 5677 "tstr_cparse_datetime.c"
5677 1           switch( (*p) ) {
5678 1           case 73: goto st275;
5679 0           case 105: goto st275;
5680             }
5681 0 0         if ( 48 <= (*p) && (*p) <= 57 )
    0          
5682 0           goto tr294;
5683 0           goto st0;
5684 0           tr3:
5685             #line 4 "ragel/tstr_common.rl"
5686             { mark = p; }
5687             goto st300;
5688             st300:
5689             if ( ++p == pe )
5690             goto _test_eof300;
5691             case 300:
5692             #line 5693 "tstr_cparse_datetime.c"
5693 0           switch( (*p) ) {
5694 0           case 80: goto st301;
5695 0           case 85: goto st317;
5696 0           case 112: goto st301;
5697 0           case 117: goto st317;
5698             }
5699 0           goto st0;
5700 0           st301:
5701 0 0         if ( ++p == pe )
5702 0           goto _test_eof301;
5703             case 301:
5704 0           switch( (*p) ) {
5705 0           case 82: goto st302;
5706 0           case 114: goto st302;
5707             }
5708 0           goto st0;
5709 0           st302:
5710 0 0         if ( ++p == pe )
5711 0           goto _test_eof302;
5712             case 302:
5713 0           switch( (*p) ) {
5714 0           case 32: goto tr332;
5715 0           case 44: goto tr333;
5716 0           case 46: goto tr335;
5717 0           case 73: goto st315;
5718 0           case 105: goto st315;
5719             }
5720 0 0         if ( 45 <= (*p) && (*p) <= 47 )
    0          
5721 0           goto tr334;
5722 0           goto st0;
5723 11           tr332:
5724             #line 22 "ragel/tstr_common.rl"
5725             {
5726             if (!tstr_token_parse_month(mark, p - mark, &v)) {
5727             result = TSTR_PARSE_ERR_MONTH;
5728             {p++; cs = 303; goto _out;}
5729             }
5730             tstr_parsed_set_month(parsed, v);
5731             }
5732             goto st303;
5733             st303:
5734             if ( ++p == pe )
5735             goto _test_eof303;
5736             case 303:
5737             #line 5738 "tstr_cparse_datetime.c"
5738 13 50         if ( 48 <= (*p) && (*p) <= 57 )
    50          
5739 13           goto tr337;
5740 0           goto st0;
5741 13           tr337:
5742             #line 21 "ragel/tstr_cparse_datetime.rl"
5743             {
5744             mark_day = p;
5745             }
5746             goto st304;
5747             st304:
5748             if ( ++p == pe )
5749             goto _test_eof304;
5750             case 304:
5751             #line 5752 "tstr_cparse_datetime.c"
5752 13           switch( (*p) ) {
5753 0           case 32: goto tr338;
5754 0           case 44: goto tr339;
5755 0           case 78: goto st306;
5756 0           case 82: goto st306;
5757 0           case 83: goto st308;
5758 0           case 84: goto st309;
5759 0           case 110: goto st306;
5760 0           case 114: goto st306;
5761 1           case 115: goto st308;
5762 0           case 116: goto st309;
5763             }
5764 12 50         if ( 48 <= (*p) && (*p) <= 57 )
    50          
5765 12           goto st305;
5766 0           goto st0;
5767 12           st305:
5768 12 50         if ( ++p == pe )
5769 0           goto _test_eof305;
5770             case 305:
5771 12           switch( (*p) ) {
5772 6           case 32: goto tr338;
5773 3           case 44: goto tr339;
5774 0           case 78: goto st306;
5775 0           case 82: goto st306;
5776 0           case 83: goto st308;
5777 0           case 84: goto st309;
5778 0           case 110: goto st306;
5779 0           case 114: goto st306;
5780 0           case 115: goto st308;
5781 3           case 116: goto st309;
5782             }
5783 0           goto st0;
5784 0           st306:
5785 0 0         if ( ++p == pe )
5786 0           goto _test_eof306;
5787             case 306:
5788 0           switch( (*p) ) {
5789 0           case 68: goto st307;
5790 0           case 100: goto st307;
5791             }
5792 0           goto st0;
5793 4           st307:
5794 4 50         if ( ++p == pe )
5795 0           goto _test_eof307;
5796             case 307:
5797 4           switch( (*p) ) {
5798 2           case 32: goto tr338;
5799 2           case 44: goto tr339;
5800             }
5801 0           goto st0;
5802 1           st308:
5803 1 50         if ( ++p == pe )
5804 0           goto _test_eof308;
5805             case 308:
5806 1           switch( (*p) ) {
5807 0           case 84: goto st307;
5808 1           case 116: goto st307;
5809             }
5810 0           goto st0;
5811 3           st309:
5812 3 50         if ( ++p == pe )
5813 0           goto _test_eof309;
5814             case 309:
5815 3           switch( (*p) ) {
5816 0           case 72: goto st307;
5817 3           case 104: goto st307;
5818             }
5819 0           goto st0;
5820 1           tr333:
5821             #line 22 "ragel/tstr_common.rl"
5822             {
5823             if (!tstr_token_parse_month(mark, p - mark, &v)) {
5824             result = TSTR_PARSE_ERR_MONTH;
5825             {p++; cs = 310; goto _out;}
5826             }
5827             tstr_parsed_set_month(parsed, v);
5828             }
5829             goto st310;
5830             st310:
5831             if ( ++p == pe )
5832             goto _test_eof310;
5833             case 310:
5834             #line 5835 "tstr_cparse_datetime.c"
5835 1 50         if ( (*p) == 32 )
5836 1           goto st303;
5837 0           goto st0;
5838 17           tr334:
5839             #line 22 "ragel/tstr_common.rl"
5840             {
5841             if (!tstr_token_parse_month(mark, p - mark, &v)) {
5842             result = TSTR_PARSE_ERR_MONTH;
5843             {p++; cs = 311; goto _out;}
5844             }
5845             tstr_parsed_set_month(parsed, v);
5846             }
5847             #line 13 "ragel/tstr_cparse_datetime.rl"
5848             {
5849             sep_char = (*p);
5850             }
5851             goto st311;
5852             st311:
5853             if ( ++p == pe )
5854             goto _test_eof311;
5855             case 311:
5856             #line 5857 "tstr_cparse_datetime.c"
5857 17 50         if ( 48 <= (*p) && (*p) <= 57 )
    50          
5858 17           goto tr346;
5859 0           goto st0;
5860 18           tr346:
5861             #line 4 "ragel/tstr_common.rl"
5862             { mark = p; }
5863             goto st312;
5864             st312:
5865             if ( ++p == pe )
5866             goto _test_eof312;
5867             case 312:
5868             #line 5869 "tstr_cparse_datetime.c"
5869 18           _widec = (*p);
5870 18 50         if ( (*p) < 46 ) {
5871 0 0         if ( 45 <= (*p) && (*p) <= 45 ) {
    0          
5872 0 0         _widec = (short)(128 + ((*p) - -128));
5873 0 0         if (
5874             #line 17 "ragel/tstr_cparse_datetime.rl"
5875              
5876             (*p) == sep_char
5877             ) _widec += 256;
5878             }
5879             } else if ( (*p) > 46 ) {
5880             if ( 47 <= (*p) && (*p) <= 47 ) {
5881             _widec = (short)(128 + ((*p) - -128));
5882             if (
5883             #line 17 "ragel/tstr_cparse_datetime.rl"
5884              
5885             (*p) == sep_char
5886             ) _widec += 256;
5887             }
5888             } else {
5889             _widec = (short)(128 + ((*p) - -128));
5890             if (
5891             #line 17 "ragel/tstr_cparse_datetime.rl"
5892              
5893             (*p) == sep_char
5894             ) _widec += 256;
5895             }
5896             if ( _widec > 57 ) {
5897             if ( 557 <= _widec && _widec <= 559 )
5898             goto tr348;
5899             } else if ( _widec >= 48 )
5900             goto st313;
5901             goto st0;
5902             st313:
5903             if ( ++p == pe )
5904             goto _test_eof313;
5905             case 313:
5906             _widec = (*p);
5907             if ( (*p) < 46 ) {
5908             if ( 45 <= (*p) && (*p) <= 45 ) {
5909             _widec = (short)(128 + ((*p) - -128));
5910             if (
5911             #line 17 "ragel/tstr_cparse_datetime.rl"
5912              
5913             (*p) == sep_char
5914             ) _widec += 256;
5915             }
5916             } else if ( (*p) > 46 ) {
5917             if ( 47 <= (*p) && (*p) <= 47 ) {
5918             _widec = (short)(128 + ((*p) - -128));
5919             if (
5920             #line 17 "ragel/tstr_cparse_datetime.rl"
5921              
5922             (*p) == sep_char
5923             ) _widec += 256;
5924             }
5925             } else {
5926             _widec = (short)(128 + ((*p) - -128));
5927             if (
5928             #line 17 "ragel/tstr_cparse_datetime.rl"
5929              
5930             (*p) == sep_char
5931             ) _widec += 256;
5932             }
5933             if ( 557 <= _widec && _widec <= 559 )
5934             goto tr348;
5935             goto st0;
5936             tr335:
5937             #line 22 "ragel/tstr_common.rl"
5938             {
5939             if (!tstr_token_parse_month(mark, p - mark, &v)) {
5940             result = TSTR_PARSE_ERR_MONTH;
5941             {p++; cs = 314; goto _out;}
5942             }
5943             tstr_parsed_set_month(parsed, v);
5944             }
5945             #line 13 "ragel/tstr_cparse_datetime.rl"
5946             {
5947             sep_char = (*p);
5948             }
5949             goto st314;
5950             st314:
5951             if ( ++p == pe )
5952             goto _test_eof314;
5953             case 314:
5954             #line 5955 "tstr_cparse_datetime.c"
5955 2 100         if ( (*p) == 32 )
5956 1           goto st303;
5957 1 50         if ( 48 <= (*p) && (*p) <= 57 )
    50          
5958 1           goto tr346;
5959 0           goto st0;
5960 0           st315:
5961 0 0         if ( ++p == pe )
5962 0           goto _test_eof315;
5963             case 315:
5964 0           switch( (*p) ) {
5965 0           case 76: goto st316;
5966 0           case 108: goto st316;
5967             }
5968 0           goto st0;
5969 9           st316:
5970 9 50         if ( ++p == pe )
5971 0           goto _test_eof316;
5972             case 316:
5973 9           switch( (*p) ) {
5974 7           case 32: goto tr332;
5975 1           case 44: goto tr333;
5976 0           case 46: goto tr335;
5977             }
5978 1 50         if ( 45 <= (*p) && (*p) <= 47 )
    50          
5979 1           goto tr334;
5980 0           goto st0;
5981 0           st317:
5982 0 0         if ( ++p == pe )
5983 0           goto _test_eof317;
5984             case 317:
5985 0           switch( (*p) ) {
5986 0           case 71: goto st318;
5987 0           case 103: goto st318;
5988             }
5989 0           goto st0;
5990 0           st318:
5991 0 0         if ( ++p == pe )
5992 0           goto _test_eof318;
5993             case 318:
5994 0           switch( (*p) ) {
5995 0           case 32: goto tr332;
5996 0           case 44: goto tr333;
5997 0           case 46: goto tr335;
5998 0           case 85: goto st319;
5999 0           case 117: goto st319;
6000             }
6001 0 0         if ( 45 <= (*p) && (*p) <= 47 )
    0          
6002 0           goto tr334;
6003 0           goto st0;
6004 0           st319:
6005 0 0         if ( ++p == pe )
6006 0           goto _test_eof319;
6007             case 319:
6008 0           switch( (*p) ) {
6009 0           case 83: goto st320;
6010 0           case 115: goto st320;
6011             }
6012 0           goto st0;
6013 0           st320:
6014 0 0         if ( ++p == pe )
6015 0           goto _test_eof320;
6016             case 320:
6017 0           switch( (*p) ) {
6018 0           case 84: goto st316;
6019 0           case 116: goto st316;
6020             }
6021 0           goto st0;
6022 29           tr4:
6023             #line 4 "ragel/tstr_common.rl"
6024             { mark = p; }
6025             goto st321;
6026             st321:
6027             if ( ++p == pe )
6028             goto _test_eof321;
6029             case 321:
6030             #line 6031 "tstr_cparse_datetime.c"
6031 29           switch( (*p) ) {
6032 0           case 69: goto st322;
6033 29           case 101: goto st322;
6034             }
6035 0           goto st0;
6036 29           st322:
6037 29 50         if ( ++p == pe )
6038 0           goto _test_eof322;
6039             case 322:
6040 29           switch( (*p) ) {
6041 0           case 67: goto st323;
6042 29           case 99: goto st323;
6043             }
6044 0           goto st0;
6045 29           st323:
6046 29 50         if ( ++p == pe )
6047 0           goto _test_eof323;
6048             case 323:
6049 29           switch( (*p) ) {
6050 4           case 32: goto tr332;
6051 0           case 44: goto tr333;
6052 1           case 46: goto tr335;
6053 0           case 69: goto st324;
6054 8           case 101: goto st324;
6055             }
6056 16 50         if ( 45 <= (*p) && (*p) <= 47 )
    50          
6057 16           goto tr334;
6058 0           goto st0;
6059 8           st324:
6060 8 50         if ( ++p == pe )
6061 0           goto _test_eof324;
6062             case 324:
6063 8           switch( (*p) ) {
6064 0           case 77: goto st325;
6065 8           case 109: goto st325;
6066             }
6067 0           goto st0;
6068 8           st325:
6069 8 50         if ( ++p == pe )
6070 0           goto _test_eof325;
6071             case 325:
6072 8           switch( (*p) ) {
6073 0           case 66: goto st326;
6074 8           case 98: goto st326;
6075             }
6076 0           goto st0;
6077 8           st326:
6078 8 50         if ( ++p == pe )
6079 0           goto _test_eof326;
6080             case 326:
6081 8           switch( (*p) ) {
6082 0           case 69: goto st327;
6083 8           case 101: goto st327;
6084             }
6085 0           goto st0;
6086 8           st327:
6087 8 50         if ( ++p == pe )
6088 0           goto _test_eof327;
6089             case 327:
6090 8           switch( (*p) ) {
6091 0           case 82: goto st316;
6092 8           case 114: goto st316;
6093             }
6094 0           goto st0;
6095 0           tr42:
6096             #line 4 "ragel/tstr_common.rl"
6097             { mark = p; }
6098             goto st328;
6099             st328:
6100             if ( ++p == pe )
6101             goto _test_eof328;
6102             case 328:
6103             #line 6104 "tstr_cparse_datetime.c"
6104 0           switch( (*p) ) {
6105 0           case 69: goto st329;
6106 0           case 101: goto st329;
6107             }
6108 0           goto st0;
6109 0           st329:
6110 0 0         if ( ++p == pe )
6111 0           goto _test_eof329;
6112             case 329:
6113 0           switch( (*p) ) {
6114 0           case 66: goto st330;
6115 0           case 98: goto st330;
6116             }
6117 0           goto st0;
6118 0           st330:
6119 0 0         if ( ++p == pe )
6120 0           goto _test_eof330;
6121             case 330:
6122 0           switch( (*p) ) {
6123 0           case 32: goto tr332;
6124 0           case 44: goto tr333;
6125 0           case 46: goto tr335;
6126 0           case 82: goto st331;
6127 0           case 114: goto st331;
6128             }
6129 0 0         if ( 45 <= (*p) && (*p) <= 47 )
    0          
6130 0           goto tr334;
6131 0           goto st0;
6132 0           st331:
6133 0 0         if ( ++p == pe )
6134 0           goto _test_eof331;
6135             case 331:
6136 0           switch( (*p) ) {
6137 0           case 85: goto st332;
6138 0           case 117: goto st332;
6139             }
6140 0           goto st0;
6141 1           st332:
6142 1 50         if ( ++p == pe )
6143 0           goto _test_eof332;
6144             case 332:
6145 1           switch( (*p) ) {
6146 0           case 65: goto st333;
6147 1           case 97: goto st333;
6148             }
6149 0           goto st0;
6150 1           st333:
6151 1 50         if ( ++p == pe )
6152 0           goto _test_eof333;
6153             case 333:
6154 1           switch( (*p) ) {
6155 0           case 82: goto st334;
6156 1           case 114: goto st334;
6157             }
6158 0           goto st0;
6159 1           st334:
6160 1 50         if ( ++p == pe )
6161 0           goto _test_eof334;
6162             case 334:
6163 1           switch( (*p) ) {
6164 0           case 89: goto st316;
6165 1           case 121: goto st316;
6166             }
6167 0           goto st0;
6168 2           tr6:
6169             #line 4 "ragel/tstr_common.rl"
6170             { mark = p; }
6171             goto st335;
6172             st335:
6173             if ( ++p == pe )
6174             goto _test_eof335;
6175             case 335:
6176             #line 6177 "tstr_cparse_datetime.c"
6177 2           switch( (*p) ) {
6178 0           case 65: goto st336;
6179 0           case 85: goto st338;
6180 2           case 97: goto st336;
6181 0           case 117: goto st338;
6182             }
6183 0           goto st0;
6184 2           st336:
6185 2 50         if ( ++p == pe )
6186 0           goto _test_eof336;
6187             case 336:
6188 2           switch( (*p) ) {
6189 0           case 78: goto st337;
6190 2           case 110: goto st337;
6191             }
6192 0           goto st0;
6193 2           st337:
6194 2 50         if ( ++p == pe )
6195 0           goto _test_eof337;
6196             case 337:
6197 2           switch( (*p) ) {
6198 0           case 32: goto tr332;
6199 0           case 44: goto tr333;
6200 1           case 46: goto tr335;
6201 0           case 85: goto st332;
6202 1           case 117: goto st332;
6203             }
6204 0 0         if ( 45 <= (*p) && (*p) <= 47 )
    0          
6205 0           goto tr334;
6206 0           goto st0;
6207 0           st338:
6208 0 0         if ( ++p == pe )
6209 0           goto _test_eof338;
6210             case 338:
6211 0           switch( (*p) ) {
6212 0           case 76: goto st339;
6213 0           case 78: goto st340;
6214 0           case 108: goto st339;
6215 0           case 110: goto st340;
6216             }
6217 0           goto st0;
6218 0           st339:
6219 0 0         if ( ++p == pe )
6220 0           goto _test_eof339;
6221             case 339:
6222 0           switch( (*p) ) {
6223 0           case 32: goto tr332;
6224 0           case 44: goto tr333;
6225 0           case 46: goto tr335;
6226 0           case 89: goto st316;
6227 0           case 121: goto st316;
6228             }
6229 0 0         if ( 45 <= (*p) && (*p) <= 47 )
    0          
6230 0           goto tr334;
6231 0           goto st0;
6232 0           st340:
6233 0 0         if ( ++p == pe )
6234 0           goto _test_eof340;
6235             case 340:
6236 0           switch( (*p) ) {
6237 0           case 32: goto tr332;
6238 0           case 44: goto tr333;
6239 0           case 46: goto tr335;
6240 0           case 69: goto st316;
6241 0           case 101: goto st316;
6242             }
6243 0 0         if ( 45 <= (*p) && (*p) <= 47 )
    0          
6244 0           goto tr334;
6245 0           goto st0;
6246 0           tr43:
6247             #line 4 "ragel/tstr_common.rl"
6248             { mark = p; }
6249             goto st341;
6250             st341:
6251             if ( ++p == pe )
6252             goto _test_eof341;
6253             case 341:
6254             #line 6255 "tstr_cparse_datetime.c"
6255 0           switch( (*p) ) {
6256 0           case 65: goto st342;
6257 0           case 97: goto st342;
6258             }
6259 0           goto st0;
6260 0           st342:
6261 0 0         if ( ++p == pe )
6262 0           goto _test_eof342;
6263             case 342:
6264 0           switch( (*p) ) {
6265 0           case 82: goto st343;
6266 0           case 89: goto st316;
6267 0           case 114: goto st343;
6268 0           case 121: goto st316;
6269             }
6270 0           goto st0;
6271 0           st343:
6272 0 0         if ( ++p == pe )
6273 0           goto _test_eof343;
6274             case 343:
6275 0           switch( (*p) ) {
6276 0           case 32: goto tr332;
6277 0           case 44: goto tr333;
6278 0           case 46: goto tr335;
6279 0           case 67: goto st344;
6280 0           case 99: goto st344;
6281             }
6282 0 0         if ( 45 <= (*p) && (*p) <= 47 )
    0          
6283 0           goto tr334;
6284 0           goto st0;
6285 0           st344:
6286 0 0         if ( ++p == pe )
6287 0           goto _test_eof344;
6288             case 344:
6289 0           switch( (*p) ) {
6290 0           case 72: goto st316;
6291 0           case 104: goto st316;
6292             }
6293 0           goto st0;
6294 0           tr8:
6295             #line 4 "ragel/tstr_common.rl"
6296             { mark = p; }
6297             goto st345;
6298             st345:
6299             if ( ++p == pe )
6300             goto _test_eof345;
6301             case 345:
6302             #line 6303 "tstr_cparse_datetime.c"
6303 0           switch( (*p) ) {
6304 0           case 79: goto st346;
6305 0           case 111: goto st346;
6306             }
6307 0           goto st0;
6308 0           st346:
6309 0 0         if ( ++p == pe )
6310 0           goto _test_eof346;
6311             case 346:
6312 0           switch( (*p) ) {
6313 0           case 86: goto st323;
6314 0           case 118: goto st323;
6315             }
6316 0           goto st0;
6317 0           tr9:
6318             #line 4 "ragel/tstr_common.rl"
6319             { mark = p; }
6320             goto st347;
6321             st347:
6322             if ( ++p == pe )
6323             goto _test_eof347;
6324             case 347:
6325             #line 6326 "tstr_cparse_datetime.c"
6326 0           switch( (*p) ) {
6327 0           case 67: goto st348;
6328 0           case 99: goto st348;
6329             }
6330 0           goto st0;
6331 0           st348:
6332 0 0         if ( ++p == pe )
6333 0           goto _test_eof348;
6334             case 348:
6335 0           switch( (*p) ) {
6336 0           case 84: goto st349;
6337 0           case 116: goto st349;
6338             }
6339 0           goto st0;
6340 0           st349:
6341 0 0         if ( ++p == pe )
6342 0           goto _test_eof349;
6343             case 349:
6344 0           switch( (*p) ) {
6345 0           case 32: goto tr332;
6346 0           case 44: goto tr333;
6347 0           case 46: goto tr335;
6348 0           case 79: goto st325;
6349 0           case 111: goto st325;
6350             }
6351 0 0         if ( 45 <= (*p) && (*p) <= 47 )
    0          
6352 0           goto tr334;
6353 0           goto st0;
6354 0           tr44:
6355             #line 4 "ragel/tstr_common.rl"
6356             { mark = p; }
6357             goto st350;
6358             st350:
6359             if ( ++p == pe )
6360             goto _test_eof350;
6361             case 350:
6362             #line 6363 "tstr_cparse_datetime.c"
6363 0           switch( (*p) ) {
6364 0           case 69: goto st351;
6365 0           case 101: goto st351;
6366             }
6367 0           goto st0;
6368 0           st351:
6369 0 0         if ( ++p == pe )
6370 0           goto _test_eof351;
6371             case 351:
6372 0           switch( (*p) ) {
6373 0           case 80: goto st352;
6374 0           case 112: goto st352;
6375             }
6376 0           goto st0;
6377 0           st352:
6378 0 0         if ( ++p == pe )
6379 0           goto _test_eof352;
6380             case 352:
6381 0           switch( (*p) ) {
6382 0           case 32: goto tr332;
6383 0           case 44: goto tr333;
6384 0           case 46: goto tr335;
6385 0           case 84: goto st323;
6386 0           case 116: goto st323;
6387             }
6388 0 0         if ( 45 <= (*p) && (*p) <= 47 )
    0          
6389 0           goto tr334;
6390 0           goto st0;
6391 14           tr40:
6392             #line 38 "ragel/tstr_common.rl"
6393             {
6394             if (!tstr_token_parse_day_name(mark, p - mark, &v)) {
6395             result = TSTR_PARSE_ERR_DAY_NAME;
6396             {p++; cs = 353; goto _out;}
6397             }
6398             tstr_parsed_set_day_name(parsed, v);
6399             }
6400             goto st353;
6401             st353:
6402             if ( ++p == pe )
6403             goto _test_eof353;
6404             case 353:
6405             #line 6406 "tstr_cparse_datetime.c"
6406 14 50         if ( (*p) == 32 )
6407 14           goto st29;
6408 0           goto st0;
6409 1           tr41:
6410             #line 38 "ragel/tstr_common.rl"
6411             {
6412             if (!tstr_token_parse_day_name(mark, p - mark, &v)) {
6413             result = TSTR_PARSE_ERR_DAY_NAME;
6414             {p++; cs = 354; goto _out;}
6415             }
6416             tstr_parsed_set_day_name(parsed, v);
6417             }
6418             goto st354;
6419             st354:
6420             if ( ++p == pe )
6421             goto _test_eof354;
6422             case 354:
6423             #line 6424 "tstr_cparse_datetime.c"
6424 1           switch( (*p) ) {
6425 1           case 32: goto st29;
6426 0           case 44: goto st353;
6427             }
6428 0           goto st0;
6429 0           tr5:
6430             #line 4 "ragel/tstr_common.rl"
6431             { mark = p; }
6432             goto st355;
6433             st355:
6434             if ( ++p == pe )
6435             goto _test_eof355;
6436             case 355:
6437             #line 6438 "tstr_cparse_datetime.c"
6438 0           switch( (*p) ) {
6439 0           case 69: goto st329;
6440 0           case 82: goto st356;
6441 0           case 101: goto st329;
6442 0           case 114: goto st356;
6443             }
6444 0           goto st0;
6445 0           st356:
6446 0 0         if ( ++p == pe )
6447 0           goto _test_eof356;
6448             case 356:
6449 0           switch( (*p) ) {
6450 0           case 73: goto st357;
6451 0           case 105: goto st357;
6452             }
6453 0           goto st0;
6454 0           st357:
6455 0 0         if ( ++p == pe )
6456 0           goto _test_eof357;
6457             case 357:
6458 0           switch( (*p) ) {
6459 0           case 68: goto st358;
6460 0           case 100: goto st358;
6461             }
6462 0           goto st0;
6463 6           st358:
6464 6 50         if ( ++p == pe )
6465 0           goto _test_eof358;
6466             case 358:
6467 6           switch( (*p) ) {
6468 1           case 65: goto st359;
6469 5           case 97: goto st359;
6470             }
6471 0           goto st0;
6472 6           st359:
6473 6 50         if ( ++p == pe )
6474 0           goto _test_eof359;
6475             case 359:
6476 6           switch( (*p) ) {
6477 1           case 89: goto st28;
6478 5           case 121: goto st28;
6479             }
6480 0           goto st0;
6481 17           tr7:
6482             #line 4 "ragel/tstr_common.rl"
6483             { mark = p; }
6484             goto st360;
6485             st360:
6486             if ( ++p == pe )
6487             goto _test_eof360;
6488             case 360:
6489             #line 6490 "tstr_cparse_datetime.c"
6490 17           switch( (*p) ) {
6491 0           case 65: goto st342;
6492 1           case 79: goto st361;
6493 0           case 97: goto st342;
6494 16           case 111: goto st361;
6495             }
6496 0           goto st0;
6497 17           st361:
6498 17 50         if ( ++p == pe )
6499 0           goto _test_eof361;
6500             case 361:
6501 17           switch( (*p) ) {
6502 1           case 78: goto st362;
6503 16           case 110: goto st362;
6504             }
6505 0           goto st0;
6506 19           st362:
6507 19 50         if ( ++p == pe )
6508 0           goto _test_eof362;
6509             case 362:
6510 19           switch( (*p) ) {
6511 3           case 32: goto tr39;
6512 9           case 44: goto tr40;
6513 1           case 46: goto tr41;
6514 1           case 68: goto st358;
6515 5           case 100: goto st358;
6516             }
6517 0           goto st0;
6518 0           tr10:
6519             #line 4 "ragel/tstr_common.rl"
6520             { mark = p; }
6521             goto st363;
6522             st363:
6523             if ( ++p == pe )
6524             goto _test_eof363;
6525             case 363:
6526             #line 6527 "tstr_cparse_datetime.c"
6527 0           switch( (*p) ) {
6528 0           case 65: goto st364;
6529 0           case 69: goto st351;
6530 0           case 85: goto st361;
6531 0           case 97: goto st364;
6532 0           case 101: goto st351;
6533 0           case 117: goto st361;
6534             }
6535 0           goto st0;
6536 0           st364:
6537 0 0         if ( ++p == pe )
6538 0           goto _test_eof364;
6539             case 364:
6540 0           switch( (*p) ) {
6541 0           case 84: goto st365;
6542 0           case 116: goto st365;
6543             }
6544 0           goto st0;
6545 0           st365:
6546 0 0         if ( ++p == pe )
6547 0           goto _test_eof365;
6548             case 365:
6549 0           switch( (*p) ) {
6550 0           case 32: goto tr39;
6551 0           case 44: goto tr40;
6552 0           case 46: goto tr41;
6553 0           case 85: goto st366;
6554 0           case 117: goto st366;
6555             }
6556 0           goto st0;
6557 0           st366:
6558 0 0         if ( ++p == pe )
6559 0           goto _test_eof366;
6560             case 366:
6561 0           switch( (*p) ) {
6562 0           case 82: goto st357;
6563 0           case 114: goto st357;
6564             }
6565 0           goto st0;
6566 2           tr11:
6567             #line 4 "ragel/tstr_common.rl"
6568             { mark = p; }
6569             goto st367;
6570             st367:
6571             if ( ++p == pe )
6572             goto _test_eof367;
6573             case 367:
6574             #line 6575 "tstr_cparse_datetime.c"
6575 2           switch( (*p) ) {
6576 0           case 72: goto st368;
6577 0           case 85: goto st371;
6578 1           case 104: goto st368;
6579 1           case 117: goto st371;
6580             }
6581 0           goto st0;
6582 1           st368:
6583 1 50         if ( ++p == pe )
6584 0           goto _test_eof368;
6585             case 368:
6586 1           switch( (*p) ) {
6587 0           case 85: goto st369;
6588 1           case 117: goto st369;
6589             }
6590 0           goto st0;
6591 1           st369:
6592 1 50         if ( ++p == pe )
6593 0           goto _test_eof369;
6594             case 369:
6595 1           switch( (*p) ) {
6596 0           case 32: goto tr39;
6597 0           case 44: goto tr40;
6598 0           case 46: goto tr41;
6599 0           case 82: goto st370;
6600 1           case 114: goto st370;
6601             }
6602 0           goto st0;
6603 1           st370:
6604 1 50         if ( ++p == pe )
6605 0           goto _test_eof370;
6606             case 370:
6607 1           switch( (*p) ) {
6608 0           case 83: goto st362;
6609 1           case 115: goto st362;
6610             }
6611 0           goto st0;
6612 1           st371:
6613 1 50         if ( ++p == pe )
6614 0           goto _test_eof371;
6615             case 371:
6616 1           switch( (*p) ) {
6617 0           case 69: goto st372;
6618 1           case 101: goto st372;
6619             }
6620 0           goto st0;
6621 1           st372:
6622 1 50         if ( ++p == pe )
6623 0           goto _test_eof372;
6624             case 372:
6625 1           switch( (*p) ) {
6626 0           case 32: goto tr39;
6627 0           case 44: goto tr40;
6628 0           case 46: goto tr41;
6629 0           case 83: goto st362;
6630 1           case 115: goto st362;
6631             }
6632 0           goto st0;
6633 0           tr12:
6634             #line 4 "ragel/tstr_common.rl"
6635             { mark = p; }
6636             goto st373;
6637             st373:
6638             if ( ++p == pe )
6639             goto _test_eof373;
6640             case 373:
6641             #line 6642 "tstr_cparse_datetime.c"
6642 0           switch( (*p) ) {
6643 0           case 69: goto st374;
6644 0           case 101: goto st374;
6645             }
6646 0           goto st0;
6647 0           st374:
6648 0 0         if ( ++p == pe )
6649 0           goto _test_eof374;
6650             case 374:
6651 0           switch( (*p) ) {
6652 0           case 68: goto st375;
6653 0           case 100: goto st375;
6654             }
6655 0           goto st0;
6656 0           st375:
6657 0 0         if ( ++p == pe )
6658 0           goto _test_eof375;
6659             case 375:
6660 0           switch( (*p) ) {
6661 0           case 32: goto tr39;
6662 0           case 44: goto tr40;
6663 0           case 46: goto tr41;
6664 0           case 78: goto st376;
6665 0           case 110: goto st376;
6666             }
6667 0           goto st0;
6668 0           st376:
6669 0 0         if ( ++p == pe )
6670 0           goto _test_eof376;
6671             case 376:
6672 0           switch( (*p) ) {
6673 0           case 69: goto st377;
6674 0           case 101: goto st377;
6675             }
6676 0           goto st0;
6677 0           st377:
6678 0 0         if ( ++p == pe )
6679 0           goto _test_eof377;
6680             case 377:
6681 0           switch( (*p) ) {
6682 0           case 83: goto st357;
6683 0           case 115: goto st357;
6684             }
6685 0           goto st0;
6686             }
6687 0           _test_eof2: cs = 2; goto _test_eof;
6688 0           _test_eof3: cs = 3; goto _test_eof;
6689 0           _test_eof4: cs = 4; goto _test_eof;
6690 0           _test_eof5: cs = 5; goto _test_eof;
6691 0           _test_eof6: cs = 6; goto _test_eof;
6692 0           _test_eof7: cs = 7; goto _test_eof;
6693 0           _test_eof8: cs = 8; goto _test_eof;
6694 0           _test_eof9: cs = 9; goto _test_eof;
6695 0           _test_eof10: cs = 10; goto _test_eof;
6696 0           _test_eof11: cs = 11; goto _test_eof;
6697 0           _test_eof12: cs = 12; goto _test_eof;
6698 0           _test_eof13: cs = 13; goto _test_eof;
6699 0           _test_eof14: cs = 14; goto _test_eof;
6700 0           _test_eof15: cs = 15; goto _test_eof;
6701 0           _test_eof16: cs = 16; goto _test_eof;
6702 0           _test_eof17: cs = 17; goto _test_eof;
6703 0           _test_eof18: cs = 18; goto _test_eof;
6704 0           _test_eof19: cs = 19; goto _test_eof;
6705 0           _test_eof20: cs = 20; goto _test_eof;
6706 0           _test_eof21: cs = 21; goto _test_eof;
6707 0           _test_eof22: cs = 22; goto _test_eof;
6708 0           _test_eof23: cs = 23; goto _test_eof;
6709 0           _test_eof24: cs = 24; goto _test_eof;
6710 0           _test_eof25: cs = 25; goto _test_eof;
6711 0           _test_eof26: cs = 26; goto _test_eof;
6712 0           _test_eof27: cs = 27; goto _test_eof;
6713 0           _test_eof28: cs = 28; goto _test_eof;
6714 0           _test_eof29: cs = 29; goto _test_eof;
6715 0           _test_eof30: cs = 30; goto _test_eof;
6716 0           _test_eof31: cs = 31; goto _test_eof;
6717 0           _test_eof32: cs = 32; goto _test_eof;
6718 0           _test_eof33: cs = 33; goto _test_eof;
6719 0           _test_eof34: cs = 34; goto _test_eof;
6720 0           _test_eof35: cs = 35; goto _test_eof;
6721 0           _test_eof36: cs = 36; goto _test_eof;
6722 0           _test_eof37: cs = 37; goto _test_eof;
6723 0           _test_eof38: cs = 38; goto _test_eof;
6724 84           _test_eof378: cs = 378; goto _test_eof;
6725 0           _test_eof39: cs = 39; goto _test_eof;
6726 0           _test_eof40: cs = 40; goto _test_eof;
6727 0           _test_eof41: cs = 41; goto _test_eof;
6728 0           _test_eof42: cs = 42; goto _test_eof;
6729 0           _test_eof43: cs = 43; goto _test_eof;
6730 0           _test_eof44: cs = 44; goto _test_eof;
6731 9           _test_eof379: cs = 379; goto _test_eof;
6732 0           _test_eof45: cs = 45; goto _test_eof;
6733 0           _test_eof46: cs = 46; goto _test_eof;
6734 0           _test_eof47: cs = 47; goto _test_eof;
6735 6           _test_eof380: cs = 380; goto _test_eof;
6736 0           _test_eof48: cs = 48; goto _test_eof;
6737 0           _test_eof49: cs = 49; goto _test_eof;
6738 0           _test_eof50: cs = 50; goto _test_eof;
6739 5           _test_eof381: cs = 381; goto _test_eof;
6740 0           _test_eof51: cs = 51; goto _test_eof;
6741 22           _test_eof382: cs = 382; goto _test_eof;
6742 0           _test_eof52: cs = 52; goto _test_eof;
6743 0           _test_eof53: cs = 53; goto _test_eof;
6744 3           _test_eof383: cs = 383; goto _test_eof;
6745 0           _test_eof54: cs = 54; goto _test_eof;
6746 0           _test_eof55: cs = 55; goto _test_eof;
6747 0           _test_eof56: cs = 56; goto _test_eof;
6748 1           _test_eof384: cs = 384; goto _test_eof;
6749 1           _test_eof385: cs = 385; goto _test_eof;
6750 0           _test_eof386: cs = 386; goto _test_eof;
6751 0           _test_eof387: cs = 387; goto _test_eof;
6752 0           _test_eof57: cs = 57; goto _test_eof;
6753 0           _test_eof58: cs = 58; goto _test_eof;
6754 6           _test_eof388: cs = 388; goto _test_eof;
6755 0           _test_eof59: cs = 59; goto _test_eof;
6756 4           _test_eof389: cs = 389; goto _test_eof;
6757 0           _test_eof60: cs = 60; goto _test_eof;
6758 0           _test_eof61: cs = 61; goto _test_eof;
6759 11           _test_eof390: cs = 390; goto _test_eof;
6760 1           _test_eof391: cs = 391; goto _test_eof;
6761 0           _test_eof62: cs = 62; goto _test_eof;
6762 0           _test_eof63: cs = 63; goto _test_eof;
6763 0           _test_eof64: cs = 64; goto _test_eof;
6764 8           _test_eof392: cs = 392; goto _test_eof;
6765 0           _test_eof65: cs = 65; goto _test_eof;
6766 0           _test_eof66: cs = 66; goto _test_eof;
6767 11           _test_eof393: cs = 393; goto _test_eof;
6768 0           _test_eof394: cs = 394; goto _test_eof;
6769 0           _test_eof395: cs = 395; goto _test_eof;
6770 0           _test_eof396: cs = 396; goto _test_eof;
6771 0           _test_eof397: cs = 397; goto _test_eof;
6772 0           _test_eof398: cs = 398; goto _test_eof;
6773 0           _test_eof399: cs = 399; goto _test_eof;
6774 0           _test_eof400: cs = 400; goto _test_eof;
6775 0           _test_eof401: cs = 401; goto _test_eof;
6776 0           _test_eof67: cs = 67; goto _test_eof;
6777 0           _test_eof68: cs = 68; goto _test_eof;
6778 5           _test_eof402: cs = 402; goto _test_eof;
6779 0           _test_eof69: cs = 69; goto _test_eof;
6780 0           _test_eof403: cs = 403; goto _test_eof;
6781 0           _test_eof404: cs = 404; goto _test_eof;
6782 1           _test_eof405: cs = 405; goto _test_eof;
6783 0           _test_eof406: cs = 406; goto _test_eof;
6784 0           _test_eof407: cs = 407; goto _test_eof;
6785 0           _test_eof408: cs = 408; goto _test_eof;
6786 0           _test_eof409: cs = 409; goto _test_eof;
6787 0           _test_eof410: cs = 410; goto _test_eof;
6788 0           _test_eof411: cs = 411; goto _test_eof;
6789 0           _test_eof70: cs = 70; goto _test_eof;
6790 0           _test_eof71: cs = 71; goto _test_eof;
6791 0           _test_eof72: cs = 72; goto _test_eof;
6792 0           _test_eof73: cs = 73; goto _test_eof;
6793 0           _test_eof74: cs = 74; goto _test_eof;
6794 0           _test_eof75: cs = 75; goto _test_eof;
6795 0           _test_eof76: cs = 76; goto _test_eof;
6796 0           _test_eof77: cs = 77; goto _test_eof;
6797 0           _test_eof78: cs = 78; goto _test_eof;
6798 0           _test_eof79: cs = 79; goto _test_eof;
6799 0           _test_eof80: cs = 80; goto _test_eof;
6800 0           _test_eof81: cs = 81; goto _test_eof;
6801 0           _test_eof82: cs = 82; goto _test_eof;
6802 0           _test_eof83: cs = 83; goto _test_eof;
6803 0           _test_eof84: cs = 84; goto _test_eof;
6804 0           _test_eof85: cs = 85; goto _test_eof;
6805 0           _test_eof86: cs = 86; goto _test_eof;
6806 0           _test_eof87: cs = 87; goto _test_eof;
6807 0           _test_eof88: cs = 88; goto _test_eof;
6808 0           _test_eof89: cs = 89; goto _test_eof;
6809 0           _test_eof90: cs = 90; goto _test_eof;
6810 0           _test_eof91: cs = 91; goto _test_eof;
6811 0           _test_eof92: cs = 92; goto _test_eof;
6812 0           _test_eof93: cs = 93; goto _test_eof;
6813 0           _test_eof94: cs = 94; goto _test_eof;
6814 0           _test_eof95: cs = 95; goto _test_eof;
6815 0           _test_eof96: cs = 96; goto _test_eof;
6816 0           _test_eof97: cs = 97; goto _test_eof;
6817 0           _test_eof98: cs = 98; goto _test_eof;
6818 0           _test_eof99: cs = 99; goto _test_eof;
6819 0           _test_eof100: cs = 100; goto _test_eof;
6820 0           _test_eof101: cs = 101; goto _test_eof;
6821 0           _test_eof102: cs = 102; goto _test_eof;
6822 0           _test_eof103: cs = 103; goto _test_eof;
6823 0           _test_eof104: cs = 104; goto _test_eof;
6824 0           _test_eof105: cs = 105; goto _test_eof;
6825 0           _test_eof106: cs = 106; goto _test_eof;
6826 0           _test_eof107: cs = 107; goto _test_eof;
6827 0           _test_eof108: cs = 108; goto _test_eof;
6828 0           _test_eof109: cs = 109; goto _test_eof;
6829 0           _test_eof110: cs = 110; goto _test_eof;
6830 0           _test_eof111: cs = 111; goto _test_eof;
6831 0           _test_eof112: cs = 112; goto _test_eof;
6832 0           _test_eof113: cs = 113; goto _test_eof;
6833 0           _test_eof114: cs = 114; goto _test_eof;
6834 0           _test_eof115: cs = 115; goto _test_eof;
6835 0           _test_eof116: cs = 116; goto _test_eof;
6836 0           _test_eof117: cs = 117; goto _test_eof;
6837 0           _test_eof118: cs = 118; goto _test_eof;
6838 0           _test_eof119: cs = 119; goto _test_eof;
6839 0           _test_eof120: cs = 120; goto _test_eof;
6840 0           _test_eof121: cs = 121; goto _test_eof;
6841 0           _test_eof122: cs = 122; goto _test_eof;
6842 0           _test_eof123: cs = 123; goto _test_eof;
6843 0           _test_eof124: cs = 124; goto _test_eof;
6844 0           _test_eof125: cs = 125; goto _test_eof;
6845 0           _test_eof126: cs = 126; goto _test_eof;
6846 0           _test_eof127: cs = 127; goto _test_eof;
6847 0           _test_eof128: cs = 128; goto _test_eof;
6848 0           _test_eof129: cs = 129; goto _test_eof;
6849 0           _test_eof130: cs = 130; goto _test_eof;
6850 0           _test_eof131: cs = 131; goto _test_eof;
6851 0           _test_eof132: cs = 132; goto _test_eof;
6852 0           _test_eof133: cs = 133; goto _test_eof;
6853 0           _test_eof134: cs = 134; goto _test_eof;
6854 0           _test_eof135: cs = 135; goto _test_eof;
6855 0           _test_eof136: cs = 136; goto _test_eof;
6856 0           _test_eof137: cs = 137; goto _test_eof;
6857 0           _test_eof138: cs = 138; goto _test_eof;
6858 0           _test_eof139: cs = 139; goto _test_eof;
6859 0           _test_eof140: cs = 140; goto _test_eof;
6860 0           _test_eof141: cs = 141; goto _test_eof;
6861 0           _test_eof142: cs = 142; goto _test_eof;
6862 0           _test_eof143: cs = 143; goto _test_eof;
6863 0           _test_eof144: cs = 144; goto _test_eof;
6864 0           _test_eof145: cs = 145; goto _test_eof;
6865 0           _test_eof146: cs = 146; goto _test_eof;
6866 0           _test_eof147: cs = 147; goto _test_eof;
6867 0           _test_eof148: cs = 148; goto _test_eof;
6868 0           _test_eof149: cs = 149; goto _test_eof;
6869 0           _test_eof150: cs = 150; goto _test_eof;
6870 0           _test_eof151: cs = 151; goto _test_eof;
6871 0           _test_eof152: cs = 152; goto _test_eof;
6872 0           _test_eof153: cs = 153; goto _test_eof;
6873 0           _test_eof154: cs = 154; goto _test_eof;
6874 0           _test_eof155: cs = 155; goto _test_eof;
6875 0           _test_eof156: cs = 156; goto _test_eof;
6876 0           _test_eof157: cs = 157; goto _test_eof;
6877 0           _test_eof158: cs = 158; goto _test_eof;
6878 0           _test_eof159: cs = 159; goto _test_eof;
6879 0           _test_eof160: cs = 160; goto _test_eof;
6880 0           _test_eof161: cs = 161; goto _test_eof;
6881 0           _test_eof162: cs = 162; goto _test_eof;
6882 0           _test_eof163: cs = 163; goto _test_eof;
6883 0           _test_eof164: cs = 164; goto _test_eof;
6884 0           _test_eof165: cs = 165; goto _test_eof;
6885 0           _test_eof166: cs = 166; goto _test_eof;
6886 0           _test_eof167: cs = 167; goto _test_eof;
6887 0           _test_eof168: cs = 168; goto _test_eof;
6888 0           _test_eof169: cs = 169; goto _test_eof;
6889 4           _test_eof412: cs = 412; goto _test_eof;
6890 13           _test_eof413: cs = 413; goto _test_eof;
6891 0           _test_eof170: cs = 170; goto _test_eof;
6892 0           _test_eof171: cs = 171; goto _test_eof;
6893 0           _test_eof172: cs = 172; goto _test_eof;
6894 0           _test_eof173: cs = 173; goto _test_eof;
6895 0           _test_eof174: cs = 174; goto _test_eof;
6896 0           _test_eof175: cs = 175; goto _test_eof;
6897 0           _test_eof176: cs = 176; goto _test_eof;
6898 0           _test_eof177: cs = 177; goto _test_eof;
6899 0           _test_eof178: cs = 178; goto _test_eof;
6900 0           _test_eof179: cs = 179; goto _test_eof;
6901 0           _test_eof180: cs = 180; goto _test_eof;
6902 0           _test_eof181: cs = 181; goto _test_eof;
6903 0           _test_eof182: cs = 182; goto _test_eof;
6904 0           _test_eof183: cs = 183; goto _test_eof;
6905 0           _test_eof184: cs = 184; goto _test_eof;
6906 0           _test_eof185: cs = 185; goto _test_eof;
6907 0           _test_eof186: cs = 186; goto _test_eof;
6908 0           _test_eof187: cs = 187; goto _test_eof;
6909 0           _test_eof188: cs = 188; goto _test_eof;
6910 0           _test_eof189: cs = 189; goto _test_eof;
6911 0           _test_eof190: cs = 190; goto _test_eof;
6912 0           _test_eof191: cs = 191; goto _test_eof;
6913 0           _test_eof192: cs = 192; goto _test_eof;
6914 0           _test_eof193: cs = 193; goto _test_eof;
6915 0           _test_eof194: cs = 194; goto _test_eof;
6916 0           _test_eof195: cs = 195; goto _test_eof;
6917 0           _test_eof196: cs = 196; goto _test_eof;
6918 0           _test_eof197: cs = 197; goto _test_eof;
6919 0           _test_eof198: cs = 198; goto _test_eof;
6920 0           _test_eof199: cs = 199; goto _test_eof;
6921 0           _test_eof200: cs = 200; goto _test_eof;
6922 0           _test_eof201: cs = 201; goto _test_eof;
6923 0           _test_eof202: cs = 202; goto _test_eof;
6924 0           _test_eof203: cs = 203; goto _test_eof;
6925 0           _test_eof204: cs = 204; goto _test_eof;
6926 0           _test_eof205: cs = 205; goto _test_eof;
6927 0           _test_eof206: cs = 206; goto _test_eof;
6928 0           _test_eof207: cs = 207; goto _test_eof;
6929 0           _test_eof208: cs = 208; goto _test_eof;
6930 0           _test_eof209: cs = 209; goto _test_eof;
6931 0           _test_eof210: cs = 210; goto _test_eof;
6932 0           _test_eof211: cs = 211; goto _test_eof;
6933 0           _test_eof212: cs = 212; goto _test_eof;
6934 0           _test_eof213: cs = 213; goto _test_eof;
6935 0           _test_eof214: cs = 214; goto _test_eof;
6936 0           _test_eof215: cs = 215; goto _test_eof;
6937 0           _test_eof216: cs = 216; goto _test_eof;
6938 0           _test_eof217: cs = 217; goto _test_eof;
6939 0           _test_eof218: cs = 218; goto _test_eof;
6940 0           _test_eof219: cs = 219; goto _test_eof;
6941 0           _test_eof220: cs = 220; goto _test_eof;
6942 0           _test_eof221: cs = 221; goto _test_eof;
6943 0           _test_eof222: cs = 222; goto _test_eof;
6944 0           _test_eof223: cs = 223; goto _test_eof;
6945 0           _test_eof224: cs = 224; goto _test_eof;
6946 0           _test_eof225: cs = 225; goto _test_eof;
6947 0           _test_eof226: cs = 226; goto _test_eof;
6948 0           _test_eof227: cs = 227; goto _test_eof;
6949 0           _test_eof228: cs = 228; goto _test_eof;
6950 0           _test_eof229: cs = 229; goto _test_eof;
6951 0           _test_eof230: cs = 230; goto _test_eof;
6952 0           _test_eof231: cs = 231; goto _test_eof;
6953 0           _test_eof232: cs = 232; goto _test_eof;
6954 0           _test_eof233: cs = 233; goto _test_eof;
6955 0           _test_eof234: cs = 234; goto _test_eof;
6956 0           _test_eof235: cs = 235; goto _test_eof;
6957 0           _test_eof236: cs = 236; goto _test_eof;
6958 0           _test_eof237: cs = 237; goto _test_eof;
6959 0           _test_eof238: cs = 238; goto _test_eof;
6960 0           _test_eof239: cs = 239; goto _test_eof;
6961 0           _test_eof240: cs = 240; goto _test_eof;
6962 0           _test_eof241: cs = 241; goto _test_eof;
6963 0           _test_eof242: cs = 242; goto _test_eof;
6964 0           _test_eof243: cs = 243; goto _test_eof;
6965 0           _test_eof244: cs = 244; goto _test_eof;
6966 0           _test_eof245: cs = 245; goto _test_eof;
6967 0           _test_eof246: cs = 246; goto _test_eof;
6968 0           _test_eof247: cs = 247; goto _test_eof;
6969 0           _test_eof248: cs = 248; goto _test_eof;
6970 0           _test_eof249: cs = 249; goto _test_eof;
6971 0           _test_eof250: cs = 250; goto _test_eof;
6972 0           _test_eof251: cs = 251; goto _test_eof;
6973 0           _test_eof252: cs = 252; goto _test_eof;
6974 0           _test_eof253: cs = 253; goto _test_eof;
6975 0           _test_eof254: cs = 254; goto _test_eof;
6976 0           _test_eof255: cs = 255; goto _test_eof;
6977 0           _test_eof256: cs = 256; goto _test_eof;
6978 0           _test_eof257: cs = 257; goto _test_eof;
6979 0           _test_eof258: cs = 258; goto _test_eof;
6980 0           _test_eof259: cs = 259; goto _test_eof;
6981 0           _test_eof260: cs = 260; goto _test_eof;
6982 0           _test_eof261: cs = 261; goto _test_eof;
6983 0           _test_eof262: cs = 262; goto _test_eof;
6984 0           _test_eof263: cs = 263; goto _test_eof;
6985 0           _test_eof264: cs = 264; goto _test_eof;
6986 0           _test_eof265: cs = 265; goto _test_eof;
6987 0           _test_eof266: cs = 266; goto _test_eof;
6988 0           _test_eof267: cs = 267; goto _test_eof;
6989 0           _test_eof268: cs = 268; goto _test_eof;
6990 0           _test_eof269: cs = 269; goto _test_eof;
6991 0           _test_eof270: cs = 270; goto _test_eof;
6992 0           _test_eof271: cs = 271; goto _test_eof;
6993 0           _test_eof272: cs = 272; goto _test_eof;
6994 0           _test_eof273: cs = 273; goto _test_eof;
6995 0           _test_eof274: cs = 274; goto _test_eof;
6996 0           _test_eof275: cs = 275; goto _test_eof;
6997 0           _test_eof276: cs = 276; goto _test_eof;
6998 0           _test_eof277: cs = 277; goto _test_eof;
6999 0           _test_eof278: cs = 278; goto _test_eof;
7000 0           _test_eof279: cs = 279; goto _test_eof;
7001 0           _test_eof280: cs = 280; goto _test_eof;
7002 0           _test_eof281: cs = 281; goto _test_eof;
7003 0           _test_eof282: cs = 282; goto _test_eof;
7004 0           _test_eof283: cs = 283; goto _test_eof;
7005 0           _test_eof284: cs = 284; goto _test_eof;
7006 0           _test_eof285: cs = 285; goto _test_eof;
7007 0           _test_eof286: cs = 286; goto _test_eof;
7008 0           _test_eof287: cs = 287; goto _test_eof;
7009 0           _test_eof288: cs = 288; goto _test_eof;
7010 0           _test_eof289: cs = 289; goto _test_eof;
7011 0           _test_eof290: cs = 290; goto _test_eof;
7012 0           _test_eof291: cs = 291; goto _test_eof;
7013 0           _test_eof292: cs = 292; goto _test_eof;
7014 0           _test_eof293: cs = 293; goto _test_eof;
7015 0           _test_eof294: cs = 294; goto _test_eof;
7016 0           _test_eof295: cs = 295; goto _test_eof;
7017 0           _test_eof296: cs = 296; goto _test_eof;
7018 0           _test_eof297: cs = 297; goto _test_eof;
7019 0           _test_eof298: cs = 298; goto _test_eof;
7020 0           _test_eof299: cs = 299; goto _test_eof;
7021 0           _test_eof300: cs = 300; goto _test_eof;
7022 0           _test_eof301: cs = 301; goto _test_eof;
7023 0           _test_eof302: cs = 302; goto _test_eof;
7024 0           _test_eof303: cs = 303; goto _test_eof;
7025 0           _test_eof304: cs = 304; goto _test_eof;
7026 0           _test_eof305: cs = 305; goto _test_eof;
7027 0           _test_eof306: cs = 306; goto _test_eof;
7028 0           _test_eof307: cs = 307; goto _test_eof;
7029 0           _test_eof308: cs = 308; goto _test_eof;
7030 0           _test_eof309: cs = 309; goto _test_eof;
7031 0           _test_eof310: cs = 310; goto _test_eof;
7032 0           _test_eof311: cs = 311; goto _test_eof;
7033 0           _test_eof312: cs = 312; goto _test_eof;
7034 0           _test_eof313: cs = 313; goto _test_eof;
7035 0           _test_eof314: cs = 314; goto _test_eof;
7036 0           _test_eof315: cs = 315; goto _test_eof;
7037 0           _test_eof316: cs = 316; goto _test_eof;
7038 0           _test_eof317: cs = 317; goto _test_eof;
7039 0           _test_eof318: cs = 318; goto _test_eof;
7040 0           _test_eof319: cs = 319; goto _test_eof;
7041 0           _test_eof320: cs = 320; goto _test_eof;
7042 0           _test_eof321: cs = 321; goto _test_eof;
7043 0           _test_eof322: cs = 322; goto _test_eof;
7044 0           _test_eof323: cs = 323; goto _test_eof;
7045 0           _test_eof324: cs = 324; goto _test_eof;
7046 0           _test_eof325: cs = 325; goto _test_eof;
7047 0           _test_eof326: cs = 326; goto _test_eof;
7048 0           _test_eof327: cs = 327; goto _test_eof;
7049 0           _test_eof328: cs = 328; goto _test_eof;
7050 0           _test_eof329: cs = 329; goto _test_eof;
7051 0           _test_eof330: cs = 330; goto _test_eof;
7052 0           _test_eof331: cs = 331; goto _test_eof;
7053 0           _test_eof332: cs = 332; goto _test_eof;
7054 0           _test_eof333: cs = 333; goto _test_eof;
7055 0           _test_eof334: cs = 334; goto _test_eof;
7056 0           _test_eof335: cs = 335; goto _test_eof;
7057 0           _test_eof336: cs = 336; goto _test_eof;
7058 0           _test_eof337: cs = 337; goto _test_eof;
7059 0           _test_eof338: cs = 338; goto _test_eof;
7060 0           _test_eof339: cs = 339; goto _test_eof;
7061 0           _test_eof340: cs = 340; goto _test_eof;
7062 0           _test_eof341: cs = 341; goto _test_eof;
7063 0           _test_eof342: cs = 342; goto _test_eof;
7064 0           _test_eof343: cs = 343; goto _test_eof;
7065 0           _test_eof344: cs = 344; goto _test_eof;
7066 0           _test_eof345: cs = 345; goto _test_eof;
7067 0           _test_eof346: cs = 346; goto _test_eof;
7068 0           _test_eof347: cs = 347; goto _test_eof;
7069 0           _test_eof348: cs = 348; goto _test_eof;
7070 0           _test_eof349: cs = 349; goto _test_eof;
7071 0           _test_eof350: cs = 350; goto _test_eof;
7072 0           _test_eof351: cs = 351; goto _test_eof;
7073 0           _test_eof352: cs = 352; goto _test_eof;
7074 0           _test_eof353: cs = 353; goto _test_eof;
7075 0           _test_eof354: cs = 354; goto _test_eof;
7076 0           _test_eof355: cs = 355; goto _test_eof;
7077 0           _test_eof356: cs = 356; goto _test_eof;
7078 0           _test_eof357: cs = 357; goto _test_eof;
7079 0           _test_eof358: cs = 358; goto _test_eof;
7080 0           _test_eof359: cs = 359; goto _test_eof;
7081 0           _test_eof360: cs = 360; goto _test_eof;
7082 0           _test_eof361: cs = 361; goto _test_eof;
7083 0           _test_eof362: cs = 362; goto _test_eof;
7084 0           _test_eof363: cs = 363; goto _test_eof;
7085 0           _test_eof364: cs = 364; goto _test_eof;
7086 0           _test_eof365: cs = 365; goto _test_eof;
7087 0           _test_eof366: cs = 366; goto _test_eof;
7088 0           _test_eof367: cs = 367; goto _test_eof;
7089 0           _test_eof368: cs = 368; goto _test_eof;
7090 0           _test_eof369: cs = 369; goto _test_eof;
7091 0           _test_eof370: cs = 370; goto _test_eof;
7092 0           _test_eof371: cs = 371; goto _test_eof;
7093 0           _test_eof372: cs = 372; goto _test_eof;
7094 0           _test_eof373: cs = 373; goto _test_eof;
7095 0           _test_eof374: cs = 374; goto _test_eof;
7096 0           _test_eof375: cs = 375; goto _test_eof;
7097 0           _test_eof376: cs = 376; goto _test_eof;
7098 0           _test_eof377: cs = 377; goto _test_eof;
7099              
7100 195           _test_eof: {}
7101 195 50         if ( p == eof )
7102             {
7103 195           switch ( cs ) {
7104 84           case 378:
7105             #line 6 "ragel/tstr_common.rl"
7106             {
7107             if (!tstr_token_parse_year(mark, p - mark, &v)) {
7108             result = TSTR_PARSE_ERR_YEAR;
7109             {p++; cs = 0; goto _out;}
7110             }
7111             tstr_parsed_set_year4(parsed, v);
7112             }
7113             break;
7114             case 412:
7115             case 413:
7116             #line 30 "ragel/tstr_common.rl"
7117             {
7118             if (!tstr_token_parse_day(mark, p - mark, &v)) {
7119             result = TSTR_PARSE_ERR_DAY;
7120             {p++; cs = 0; goto _out;}
7121             }
7122             tstr_parsed_set_day(parsed, v);
7123             }
7124             break;
7125             case 392:
7126             #line 54 "ragel/tstr_common.rl"
7127             {
7128             if (!tstr_token_parse_minute(mark, p - mark, &v)) {
7129             result = TSTR_PARSE_ERR_MINUTE;
7130             {p++; cs = 0; goto _out;}
7131             }
7132             tstr_parsed_set_minute(parsed, v);
7133             }
7134             break;
7135             case 402:
7136             #line 62 "ragel/tstr_common.rl"
7137             {
7138             if (!tstr_token_parse_second(mark, p - mark, &v)) {
7139             result = TSTR_PARSE_ERR_SECOND;
7140             {p++; cs = 0; goto _out;}
7141             }
7142             tstr_parsed_set_second(parsed, v);
7143             }
7144             break;
7145             case 403:
7146             case 404:
7147             case 405:
7148             case 406:
7149             case 407:
7150             case 408:
7151             case 409:
7152             case 410:
7153             case 411:
7154             #line 70 "ragel/tstr_common.rl"
7155             {
7156             if (!tstr_token_parse_fraction(mark, p - mark, &v)) {
7157             result = TSTR_PARSE_ERR_FRACTION;
7158             {p++; cs = 0; goto _out;}
7159             }
7160             tstr_parsed_set_fraction(parsed, v);
7161             }
7162             break;
7163             case 380:
7164             case 382:
7165             case 389:
7166             #line 78 "ragel/tstr_common.rl"
7167             {
7168             if (!tstr_token_parse_tz_offset(mark, p - mark, &v)) {
7169             result = TSTR_PARSE_ERR_OFFSET;
7170             {p++; cs = 0; goto _out;}
7171             }
7172             tstr_parsed_set_offset(parsed, v);
7173             }
7174             break;
7175             case 388:
7176             case 390:
7177             case 391:
7178             #line 86 "ragel/tstr_common.rl"
7179             {
7180             tstr_parsed_set_tz_utc(parsed, mark, p - mark);
7181             }
7182             break;
7183             case 384:
7184             case 385:
7185             case 386:
7186             case 387:
7187             case 394:
7188             case 395:
7189             case 396:
7190             case 397:
7191             case 399:
7192             case 400:
7193             #line 90 "ragel/tstr_common.rl"
7194             {
7195             tstr_parsed_set_tz_abbrev(parsed, mark, p - mark);
7196             }
7197             break;
7198             case 383:
7199             #line 94 "ragel/tstr_common.rl"
7200             {
7201             tstr_parsed_set_tz_annotation(parsed, mark, p - mark);
7202             }
7203             break;
7204             case 379:
7205             case 393:
7206             #line 98 "ragel/tstr_common.rl"
7207             {
7208             if (!tstr_token_parse_meridiem(mark, p - mark, &v)) {
7209             result = TSTR_PARSE_ERR_MERIDIEM;
7210             {p++; cs = 0; goto _out;}
7211             }
7212             tstr_parsed_set_meridiem(parsed, v);
7213             }
7214             break;
7215             case 398:
7216             case 401:
7217             #line 86 "ragel/tstr_common.rl"
7218             {
7219             tstr_parsed_set_tz_utc(parsed, mark, p - mark);
7220             }
7221             #line 90 "ragel/tstr_common.rl"
7222             {
7223             tstr_parsed_set_tz_abbrev(parsed, mark, p - mark);
7224             }
7225             break;
7226             #line 7227 "tstr_cparse_datetime.c"
7227             }
7228             }
7229              
7230 197 100         _out: {}
7231             }
7232              
7233             #line 127 "ragel/tstr_cparse_datetime.rl"
7234              
7235             if (result != TSTR_PARSE_OK)
7236             return result;
7237              
7238             return (cs >= datetime_first_final) ? TSTR_PARSE_OK : TSTR_PARSE_NOMATCH;
7239             }