xref: /PHP-7.4/ext/date/lib/parse_date.c (revision fac3fbcb)
1 /* Generated by re2c 0.15.3 on Mon Dec 21 10:25:55 2020 */
2 #line 1 "parse_date.re"
3 /*
4  * The MIT License (MIT)
5  *
6  * Copyright (c) 2015-2019 Derick Rethans
7  * Copyright (c) 2018 MongoDB, Inc.
8  *
9  * Permission is hereby granted, free of charge, to any person obtaining a copy
10  * of this software and associated documentation files (the "Software"), to deal
11  * in the Software without restriction, including without limitation the rights
12  * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
13  * copies of the Software, and to permit persons to whom the Software is
14  * furnished to do so, subject to the following conditions:
15  *
16  * The above copyright notice and this permission notice shall be included in
17  * all copies or substantial portions of the Software.
18  *
19  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
20  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
21  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
22  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
23  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
24  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
25  * THE SOFTWARE.
26  */
27 
28 #include "timelib.h"
29 #include "timelib_private.h"
30 
31 #include <ctype.h>
32 #include <math.h>
33 #include <assert.h>
34 
35 #if defined(_MSC_VER)
36 # define strtoll(s, f, b) _atoi64(s)
37 #elif !defined(HAVE_STRTOLL)
38 # if defined(HAVE_ATOLL)
39 #  define strtoll(s, f, b) atoll(s)
40 # else
41 #  define strtoll(s, f, b) strtol(s, f, b)
42 # endif
43 #endif
44 
45 #define EOI      257
46 #define TIME     258
47 #define DATE     259
48 
49 #define TIMELIB_XMLRPC_SOAP    260
50 #define TIMELIB_TIME12         261
51 #define TIMELIB_TIME24         262
52 #define TIMELIB_GNU_NOCOLON    263
53 #define TIMELIB_GNU_NOCOLON_TZ 264
54 #define TIMELIB_ISO_NOCOLON    265
55 
56 #define TIMELIB_AMERICAN       266
57 #define TIMELIB_ISO_DATE       267
58 #define TIMELIB_DATE_FULL      268
59 #define TIMELIB_DATE_TEXT      269
60 #define TIMELIB_DATE_NOCOLON   270
61 #define TIMELIB_PG_YEARDAY     271
62 #define TIMELIB_PG_TEXT        272
63 #define TIMELIB_PG_REVERSE     273
64 #define TIMELIB_CLF            274
65 #define TIMELIB_DATE_NO_DAY    275
66 #define TIMELIB_SHORTDATE_WITH_TIME 276
67 #define TIMELIB_DATE_FULL_POINTED 277
68 #define TIMELIB_TIME24_WITH_ZONE 278
69 #define TIMELIB_ISO_WEEK       279
70 #define TIMELIB_LF_DAY_OF_MONTH 280
71 #define TIMELIB_WEEK_DAY_OF_MONTH 281
72 
73 #define TIMELIB_TIMEZONE       300
74 #define TIMELIB_AGO            301
75 
76 #define TIMELIB_RELATIVE       310
77 
78 #define TIMELIB_ERROR          999
79 
80 /* Some compilers like AIX, defines uchar in sys/types.h */
81 #undef uchar
82 typedef unsigned char uchar;
83 
84 #define   BSIZE	   8192
85 
86 #define   YYCTYPE      uchar
87 #define   YYCURSOR     cursor
88 #define   YYLIMIT      s->lim
89 #define   YYMARKER     s->ptr
90 #define   YYFILL(n)    return EOI;
91 
92 #define   RET(i)       {s->cur = cursor; return i;}
93 
94 #define timelib_string_free timelib_free
95 
96 #define TIMELIB_HAVE_TIME() { if (s->time->have_time) { add_error(s, TIMELIB_ERR_DOUBLE_TIME, "Double time specification"); timelib_string_free(str); return TIMELIB_ERROR; } else { s->time->have_time = 1; s->time->h = 0; s->time->i = 0; s->time->s = 0; s->time->us = 0; } }
97 #define TIMELIB_UNHAVE_TIME() { s->time->have_time = 0; s->time->h = 0; s->time->i = 0; s->time->s = 0; s->time->us = 0; }
98 #define TIMELIB_HAVE_DATE() { if (s->time->have_date) { add_error(s, TIMELIB_ERR_DOUBLE_DATE, "Double date specification"); timelib_string_free(str); return TIMELIB_ERROR; } else { s->time->have_date = 1; } }
99 #define TIMELIB_UNHAVE_DATE() { s->time->have_date = 0; s->time->d = 0; s->time->m = 0; s->time->y = 0; }
100 #define TIMELIB_HAVE_RELATIVE() { s->time->have_relative = 1; }
101 #define TIMELIB_HAVE_WEEKDAY_RELATIVE() { s->time->have_relative = 1; s->time->relative.have_weekday_relative = 1; }
102 #define TIMELIB_HAVE_SPECIAL_RELATIVE() { s->time->have_relative = 1; s->time->relative.have_special_relative = 1; }
103 #define TIMELIB_HAVE_TZ() { s->cur = cursor; if (s->time->have_zone) { s->time->have_zone > 1 ? add_error(s, TIMELIB_ERR_DOUBLE_TZ, "Double timezone specification") : add_warning(s, TIMELIB_WARN_DOUBLE_TZ, "Double timezone specification"); timelib_string_free(str); s->time->have_zone++; return TIMELIB_ERROR; } else { s->time->have_zone++; } }
104 
105 #define TIMELIB_INIT  s->cur = cursor; str = timelib_string(s); ptr = str
106 #define TIMELIB_DEINIT timelib_string_free(str)
107 #define TIMELIB_ADJUST_RELATIVE_WEEKDAY() if (in->time.have_weekday_relative && (in.rel.d > 0)) { in.rel.d -= 7; }
108 
109 #define TIMELIB_PROCESS_YEAR(x, l) { \
110 	if (((x) == TIMELIB_UNSET) || ((l) >= 4)) { \
111 	/*	(x) = 0; */          \
112 	} else if ((x) < 100) {  \
113 		if ((x) < 70) {      \
114 			(x) += 2000;     \
115 		} else {             \
116 			(x) += 1900;     \
117 		}                    \
118 	}                        \
119 }
120 
121 #ifdef DEBUG_PARSER
122 #define DEBUG_OUTPUT(s) printf("%s\n", s);
123 #define YYDEBUG(s,c) { if (s != -1) { printf("state: %d ", s); printf("[%c]\n", c); } }
124 #else
125 #define DEBUG_OUTPUT(s)
126 #define YYDEBUG(s,c)
127 #endif
128 
129 typedef struct _timelib_elems {
130 	unsigned int   c; /* Number of elements */
131 	char         **v; /* Values */
132 } timelib_elems;
133 
134 typedef struct _Scanner {
135 	int           fd;
136 	uchar        *lim, *str, *ptr, *cur, *tok, *pos;
137 	unsigned int  line, len;
138 	timelib_error_container *errors;
139 
140 	timelib_time        *time;
141 	const timelib_tzdb  *tzdb;
142 } Scanner;
143 
144 typedef struct _timelib_lookup_table {
145 	const char *name;
146 	int         type;
147 	int         value;
148 } timelib_lookup_table;
149 
150 typedef struct _timelib_relunit {
151 	const char *name;
152 	int         unit;
153 	int         multiplier;
154 } timelib_relunit;
155 
156 /* The timezone table. */
157 static const timelib_tz_lookup_table timelib_timezone_lookup[] = {
158 #include "timezonemap.h"
159 	{ NULL, 0, 0, NULL },
160 };
161 
162 static const timelib_tz_lookup_table timelib_timezone_fallbackmap[] = {
163 #include "fallbackmap.h"
164 	{ NULL, 0, 0, NULL },
165 };
166 
167 static const timelib_tz_lookup_table timelib_timezone_utc[] = {
168 	{ "utc", 0, 0, "UTC" },
169 };
170 
171 static timelib_relunit const timelib_relunit_lookup[] = {
172 	{ "ms",           TIMELIB_MICROSEC, 1000 },
173 	{ "msec",         TIMELIB_MICROSEC, 1000 },
174 	{ "msecs",        TIMELIB_MICROSEC, 1000 },
175 	{ "millisecond",  TIMELIB_MICROSEC, 1000 },
176 	{ "milliseconds", TIMELIB_MICROSEC, 1000 },
177 	{ "µs",           TIMELIB_MICROSEC,    1 },
178 	{ "usec",         TIMELIB_MICROSEC,    1 },
179 	{ "usecs",        TIMELIB_MICROSEC,    1 },
180 	{ "µsec",         TIMELIB_MICROSEC,    1 },
181 	{ "µsecs",        TIMELIB_MICROSEC,    1 },
182 	{ "microsecond",  TIMELIB_MICROSEC,    1 },
183 	{ "microseconds", TIMELIB_MICROSEC,    1 },
184 	{ "sec",         TIMELIB_SECOND,  1 },
185 	{ "secs",        TIMELIB_SECOND,  1 },
186 	{ "second",      TIMELIB_SECOND,  1 },
187 	{ "seconds",     TIMELIB_SECOND,  1 },
188 	{ "min",         TIMELIB_MINUTE,  1 },
189 	{ "mins",        TIMELIB_MINUTE,  1 },
190 	{ "minute",      TIMELIB_MINUTE,  1 },
191 	{ "minutes",     TIMELIB_MINUTE,  1 },
192 	{ "hour",        TIMELIB_HOUR,    1 },
193 	{ "hours",       TIMELIB_HOUR,    1 },
194 	{ "day",         TIMELIB_DAY,     1 },
195 	{ "days",        TIMELIB_DAY,     1 },
196 	{ "week",        TIMELIB_DAY,     7 },
197 	{ "weeks",       TIMELIB_DAY,     7 },
198 	{ "fortnight",   TIMELIB_DAY,    14 },
199 	{ "fortnights",  TIMELIB_DAY,    14 },
200 	{ "forthnight",  TIMELIB_DAY,    14 },
201 	{ "forthnights", TIMELIB_DAY,    14 },
202 	{ "month",       TIMELIB_MONTH,   1 },
203 	{ "months",      TIMELIB_MONTH,   1 },
204 	{ "year",        TIMELIB_YEAR,    1 },
205 	{ "years",       TIMELIB_YEAR,    1 },
206 
207 	{ "monday",      TIMELIB_WEEKDAY, 1 },
208 	{ "mon",         TIMELIB_WEEKDAY, 1 },
209 	{ "tuesday",     TIMELIB_WEEKDAY, 2 },
210 	{ "tue",         TIMELIB_WEEKDAY, 2 },
211 	{ "wednesday",   TIMELIB_WEEKDAY, 3 },
212 	{ "wed",         TIMELIB_WEEKDAY, 3 },
213 	{ "thursday",    TIMELIB_WEEKDAY, 4 },
214 	{ "thu",         TIMELIB_WEEKDAY, 4 },
215 	{ "friday",      TIMELIB_WEEKDAY, 5 },
216 	{ "fri",         TIMELIB_WEEKDAY, 5 },
217 	{ "saturday",    TIMELIB_WEEKDAY, 6 },
218 	{ "sat",         TIMELIB_WEEKDAY, 6 },
219 	{ "sunday",      TIMELIB_WEEKDAY, 0 },
220 	{ "sun",         TIMELIB_WEEKDAY, 0 },
221 
222 	{ "weekday",     TIMELIB_SPECIAL, TIMELIB_SPECIAL_WEEKDAY },
223 	{ "weekdays",    TIMELIB_SPECIAL, TIMELIB_SPECIAL_WEEKDAY },
224 	{ NULL,          0,          0 }
225 };
226 
227 /* The relative text table. */
228 static timelib_lookup_table const timelib_reltext_lookup[] = {
229 	{ "first",    0,  1 },
230 	{ "next",     0,  1 },
231 	{ "second",   0,  2 },
232 	{ "third",    0,  3 },
233 	{ "fourth",   0,  4 },
234 	{ "fifth",    0,  5 },
235 	{ "sixth",    0,  6 },
236 	{ "seventh",  0,  7 },
237 	{ "eight",    0,  8 },
238 	{ "eighth",   0,  8 },
239 	{ "ninth",    0,  9 },
240 	{ "tenth",    0, 10 },
241 	{ "eleventh", 0, 11 },
242 	{ "twelfth",  0, 12 },
243 	{ "last",     0, -1 },
244 	{ "previous", 0, -1 },
245 	{ "this",     1,  0 },
246 	{ NULL,       1,  0 }
247 };
248 
249 /* The month table. */
250 static timelib_lookup_table const timelib_month_lookup[] = {
251 	{ "jan",  0,  1 },
252 	{ "feb",  0,  2 },
253 	{ "mar",  0,  3 },
254 	{ "apr",  0,  4 },
255 	{ "may",  0,  5 },
256 	{ "jun",  0,  6 },
257 	{ "jul",  0,  7 },
258 	{ "aug",  0,  8 },
259 	{ "sep",  0,  9 },
260 	{ "sept", 0,  9 },
261 	{ "oct",  0, 10 },
262 	{ "nov",  0, 11 },
263 	{ "dec",  0, 12 },
264 	{ "i",    0,  1 },
265 	{ "ii",   0,  2 },
266 	{ "iii",  0,  3 },
267 	{ "iv",   0,  4 },
268 	{ "v",    0,  5 },
269 	{ "vi",   0,  6 },
270 	{ "vii",  0,  7 },
271 	{ "viii", 0,  8 },
272 	{ "ix",   0,  9 },
273 	{ "x",    0, 10 },
274 	{ "xi",   0, 11 },
275 	{ "xii",  0, 12 },
276 
277 	{ "january",   0,  1 },
278 	{ "february",  0,  2 },
279 	{ "march",     0,  3 },
280 	{ "april",     0,  4 },
281 	{ "may",       0,  5 },
282 	{ "june",      0,  6 },
283 	{ "july",      0,  7 },
284 	{ "august",    0,  8 },
285 	{ "september", 0,  9 },
286 	{ "october",   0, 10 },
287 	{ "november",  0, 11 },
288 	{ "december",  0, 12 },
289 	{  NULL,       0,  0 }
290 };
291 
292 #if 0
293 static char* timelib_ltrim(char *s)
294 {
295 	char *ptr = s;
296 	while (ptr[0] == ' ' || ptr[0] == '\t') {
297 		ptr++;
298 	}
299 	return ptr;
300 }
301 #endif
302 
303 #if 0
304 uchar *fill(Scanner *s, uchar *cursor){
305 	if(!s->eof){
306 		unsigned int cnt = s->tok - s->bot;
307 		if(cnt){
308 			memcpy(s->bot, s->tok, s->lim - s->tok);
309 			s->tok = s->bot;
310 			s->ptr -= cnt;
311 			cursor -= cnt;
312 			s->pos -= cnt;
313 			s->lim -= cnt;
314 		}
315 		if((s->top - s->lim) < BSIZE){
316 			uchar *buf = (uchar*) timelib_malloc(((s->lim - s->bot) + BSIZE)*sizeof(uchar));
317 			memcpy(buf, s->tok, s->lim - s->tok);
318 			s->tok = buf;
319 			s->ptr = &buf[s->ptr - s->bot];
320 			cursor = &buf[cursor - s->bot];
321 			s->pos = &buf[s->pos - s->bot];
322 			s->lim = &buf[s->lim - s->bot];
323 			s->top = &s->lim[BSIZE];
324 			timelib_free(s->bot);
325 			s->bot = buf;
326 		}
327 		if((cnt = read(s->fd, (char*) s->lim, BSIZE)) != BSIZE){
328 			s->eof = &s->lim[cnt]; *(s->eof)++ = '\n';
329 		}
330 		s->lim += cnt;
331 	}
332 	return cursor;
333 }
334 #endif
335 
add_warning(Scanner * s,int error_code,char * error)336 static void add_warning(Scanner *s, int error_code, char *error)
337 {
338 	s->errors->warning_count++;
339 	s->errors->warning_messages = timelib_realloc(s->errors->warning_messages, s->errors->warning_count * sizeof(timelib_error_message));
340 	s->errors->warning_messages[s->errors->warning_count - 1].error_code = error_code;
341 	s->errors->warning_messages[s->errors->warning_count - 1].position = s->tok ? s->tok - s->str : 0;
342 	s->errors->warning_messages[s->errors->warning_count - 1].character = s->tok ? *s->tok : 0;
343 	s->errors->warning_messages[s->errors->warning_count - 1].message = timelib_strdup(error);
344 }
345 
add_error(Scanner * s,int error_code,char * error)346 static void add_error(Scanner *s, int error_code, char *error)
347 {
348 	s->errors->error_count++;
349 	s->errors->error_messages = timelib_realloc(s->errors->error_messages, s->errors->error_count * sizeof(timelib_error_message));
350 	s->errors->error_messages[s->errors->error_count - 1].error_code = error_code;
351 	s->errors->error_messages[s->errors->error_count - 1].position = s->tok ? s->tok - s->str : 0;
352 	s->errors->error_messages[s->errors->error_count - 1].character = s->tok ? *s->tok : 0;
353 	s->errors->error_messages[s->errors->error_count - 1].message = timelib_strdup(error);
354 }
355 
add_pbf_warning(Scanner * s,int error_code,char * error,char * sptr,char * cptr)356 static void add_pbf_warning(Scanner *s, int error_code, char *error, char *sptr, char *cptr)
357 {
358 	s->errors->warning_count++;
359 	s->errors->warning_messages = timelib_realloc(s->errors->warning_messages, s->errors->warning_count * sizeof(timelib_error_message));
360 	s->errors->warning_messages[s->errors->warning_count - 1].error_code = error_code;
361 	s->errors->warning_messages[s->errors->warning_count - 1].position = cptr - sptr;
362 	s->errors->warning_messages[s->errors->warning_count - 1].character = *cptr;
363 	s->errors->warning_messages[s->errors->warning_count - 1].message = timelib_strdup(error);
364 }
365 
add_pbf_error(Scanner * s,int error_code,char * error,char * sptr,char * cptr)366 static void add_pbf_error(Scanner *s, int error_code, char *error, char *sptr, char *cptr)
367 {
368 	s->errors->error_count++;
369 	s->errors->error_messages = timelib_realloc(s->errors->error_messages, s->errors->error_count * sizeof(timelib_error_message));
370 	s->errors->error_messages[s->errors->error_count - 1].error_code = error_code;
371 	s->errors->error_messages[s->errors->error_count - 1].position = cptr - sptr;
372 	s->errors->error_messages[s->errors->error_count - 1].character = *cptr;
373 	s->errors->error_messages[s->errors->error_count - 1].message = timelib_strdup(error);
374 }
375 
timelib_meridian(char ** ptr,timelib_sll h)376 static timelib_sll timelib_meridian(char **ptr, timelib_sll h)
377 {
378 	timelib_sll retval = 0;
379 
380 	while (!strchr("AaPp", **ptr)) {
381 		++*ptr;
382 	}
383 	if (**ptr == 'a' || **ptr == 'A') {
384 		if (h == 12) {
385 			retval = -12;
386 		}
387 	} else if (h != 12) {
388 		retval = 12;
389 	}
390 	++*ptr;
391 	if (**ptr == '.') {
392 		++*ptr;
393 	}
394 	if (**ptr == 'M' || **ptr == 'm') {
395 		++*ptr;
396 	}
397 	if (**ptr == '.') {
398 		++*ptr;
399 	}
400 	return retval;
401 }
402 
timelib_meridian_with_check(char ** ptr,timelib_sll h)403 static timelib_sll timelib_meridian_with_check(char **ptr, timelib_sll h)
404 {
405 	timelib_sll retval = 0;
406 
407 	while (**ptr && !strchr("AaPp", **ptr)) {
408 		++*ptr;
409 	}
410 	if(!**ptr) {
411 		return TIMELIB_UNSET;
412 	}
413 	if (**ptr == 'a' || **ptr == 'A') {
414 		if (h == 12) {
415 			retval = -12;
416 		}
417 	} else if (h != 12) {
418 		retval = 12;
419 	}
420 	++*ptr;
421 	if (**ptr == '.') {
422 		++*ptr;
423 		if (**ptr != 'm' && **ptr != 'M') {
424 			return TIMELIB_UNSET;
425 		}
426 		++*ptr;
427 		if (**ptr != '.' ) {
428 			return TIMELIB_UNSET;
429 		}
430 		++*ptr;
431 	} else if (**ptr == 'm' || **ptr == 'M') {
432 		++*ptr;
433 	} else {
434 		return TIMELIB_UNSET;
435 	}
436 	return retval;
437 }
438 
timelib_string(Scanner * s)439 static char *timelib_string(Scanner *s)
440 {
441 	char *tmp = timelib_calloc(1, s->cur - s->tok + 1);
442 	memcpy(tmp, s->tok, s->cur - s->tok);
443 
444 	return tmp;
445 }
446 
timelib_get_nr_ex(char ** ptr,int max_length,int * scanned_length)447 static timelib_sll timelib_get_nr_ex(char **ptr, int max_length, int *scanned_length)
448 {
449 	char *begin, *end, *str;
450 	timelib_sll tmp_nr = TIMELIB_UNSET;
451 	int len = 0;
452 
453 	while ((**ptr < '0') || (**ptr > '9')) {
454 		if (**ptr == '\0') {
455 			return TIMELIB_UNSET;
456 		}
457 		++*ptr;
458 	}
459 	begin = *ptr;
460 	while ((**ptr >= '0') && (**ptr <= '9') && len < max_length) {
461 		++*ptr;
462 		++len;
463 	}
464 	end = *ptr;
465 	if (scanned_length) {
466 		*scanned_length = end - begin;
467 	}
468 	str = timelib_calloc(1, end - begin + 1);
469 	memcpy(str, begin, end - begin);
470 	tmp_nr = strtoll(str, NULL, 10);
471 	timelib_free(str);
472 	return tmp_nr;
473 }
474 
timelib_get_nr(char ** ptr,int max_length)475 static timelib_sll timelib_get_nr(char **ptr, int max_length)
476 {
477 	return timelib_get_nr_ex(ptr, max_length, NULL);
478 }
479 
timelib_skip_day_suffix(char ** ptr)480 static void timelib_skip_day_suffix(char **ptr)
481 {
482 	if (isspace(**ptr)) {
483 		return;
484 	}
485 	if (!timelib_strncasecmp(*ptr, "nd", 2) || !timelib_strncasecmp(*ptr, "rd", 2) ||!timelib_strncasecmp(*ptr, "st", 2) || !timelib_strncasecmp(*ptr, "th", 2)) {
486 		*ptr += 2;
487 	}
488 }
489 
timelib_get_frac_nr(char ** ptr,int max_length)490 static timelib_sll timelib_get_frac_nr(char **ptr, int max_length)
491 {
492 	char *begin, *end, *str;
493 	double tmp_nr = TIMELIB_UNSET;
494 	int len = 0;
495 
496 	while ((**ptr != '.') && (**ptr != ':') && ((**ptr < '0') || (**ptr > '9'))) {
497 		if (**ptr == '\0') {
498 			return TIMELIB_UNSET;
499 		}
500 		++*ptr;
501 	}
502 	begin = *ptr;
503 	while (((**ptr == '.') || (**ptr == ':') || ((**ptr >= '0') && (**ptr <= '9'))) && len < max_length) {
504 		++*ptr;
505 		++len;
506 	}
507 	end = *ptr;
508 	str = timelib_calloc(1, end - begin);
509 	memcpy(str, begin + 1, end - begin - 1);
510 	tmp_nr = strtod(str, NULL) * pow(10, 7 - (end - begin));
511 	timelib_free(str);
512 	return tmp_nr;
513 }
514 
timelib_get_unsigned_nr(char ** ptr,int max_length)515 static timelib_ull timelib_get_unsigned_nr(char **ptr, int max_length)
516 {
517 	timelib_ull dir = 1;
518 
519 	while (((**ptr < '0') || (**ptr > '9')) && (**ptr != '+') && (**ptr != '-')) {
520 		if (**ptr == '\0') {
521 			return TIMELIB_UNSET;
522 		}
523 		++*ptr;
524 	}
525 
526 	while (**ptr == '+' || **ptr == '-')
527 	{
528 		if (**ptr == '-') {
529 			dir *= -1;
530 		}
531 		++*ptr;
532 	}
533 	return dir * timelib_get_nr(ptr, max_length);
534 }
535 
timelib_lookup_relative_text(char ** ptr,int * behavior)536 static timelib_sll timelib_lookup_relative_text(char **ptr, int *behavior)
537 {
538 	char *word;
539 	char *begin = *ptr, *end;
540 	timelib_sll  value = 0;
541 	const timelib_lookup_table *tp;
542 
543 	while ((**ptr >= 'A' && **ptr <= 'Z') || (**ptr >= 'a' && **ptr <= 'z')) {
544 		++*ptr;
545 	}
546 	end = *ptr;
547 	word = timelib_calloc(1, end - begin + 1);
548 	memcpy(word, begin, end - begin);
549 
550 	for (tp = timelib_reltext_lookup; tp->name; tp++) {
551 		if (timelib_strcasecmp(word, tp->name) == 0) {
552 			value = tp->value;
553 			*behavior = tp->type;
554 		}
555 	}
556 
557 	timelib_free(word);
558 	return value;
559 }
560 
timelib_get_relative_text(char ** ptr,int * behavior)561 static timelib_sll timelib_get_relative_text(char **ptr, int *behavior)
562 {
563 	while (**ptr == ' ' || **ptr == '\t' || **ptr == '-' || **ptr == '/') {
564 		++*ptr;
565 	}
566 	return timelib_lookup_relative_text(ptr, behavior);
567 }
568 
timelib_lookup_month(char ** ptr)569 static timelib_long timelib_lookup_month(char **ptr)
570 {
571 	char *word;
572 	char *begin = *ptr, *end;
573 	timelib_long  value = 0;
574 	const timelib_lookup_table *tp;
575 
576 	while ((**ptr >= 'A' && **ptr <= 'Z') || (**ptr >= 'a' && **ptr <= 'z')) {
577 		++*ptr;
578 	}
579 	end = *ptr;
580 	word = timelib_calloc(1, end - begin + 1);
581 	memcpy(word, begin, end - begin);
582 
583 	for (tp = timelib_month_lookup; tp->name; tp++) {
584 		if (timelib_strcasecmp(word, tp->name) == 0) {
585 			value = tp->value;
586 		}
587 	}
588 
589 	timelib_free(word);
590 	return value;
591 }
592 
timelib_get_month(char ** ptr)593 static timelib_long timelib_get_month(char **ptr)
594 {
595 	while (**ptr == ' ' || **ptr == '\t' || **ptr == '-' || **ptr == '.' || **ptr == '/') {
596 		++*ptr;
597 	}
598 	return timelib_lookup_month(ptr);
599 }
600 
timelib_eat_spaces(char ** ptr)601 static void timelib_eat_spaces(char **ptr)
602 {
603 	while (**ptr == ' ' || **ptr == '\t') {
604 		++*ptr;
605 	}
606 }
607 
timelib_eat_until_separator(char ** ptr)608 static void timelib_eat_until_separator(char **ptr)
609 {
610 	++*ptr;
611 	while (strchr(" \t.,:;/-0123456789", **ptr) == NULL) {
612 		++*ptr;
613 	}
614 }
615 
timelib_lookup_relunit(char ** ptr)616 static const timelib_relunit* timelib_lookup_relunit(char **ptr)
617 {
618 	char *word;
619 	char *begin = *ptr, *end;
620 	const timelib_relunit *tp, *value = NULL;
621 
622 	while (**ptr != '\0' && **ptr != ' ' && **ptr != ',' && **ptr != '\t' && **ptr != ';' && **ptr != ':' &&
623 		**ptr != '/' && **ptr != '.' && **ptr != '-' && **ptr != '(' && **ptr != ')' ) {
624 		++*ptr;
625 	}
626 	end = *ptr;
627 	word = timelib_calloc(1, end - begin + 1);
628 	memcpy(word, begin, end - begin);
629 
630 	for (tp = timelib_relunit_lookup; tp->name; tp++) {
631 		if (timelib_strcasecmp(word, tp->name) == 0) {
632 			value = tp;
633 			break;
634 		}
635 	}
636 
637 	timelib_free(word);
638 	return value;
639 }
640 
timelib_set_relative(char ** ptr,timelib_sll amount,int behavior,Scanner * s)641 static void timelib_set_relative(char **ptr, timelib_sll amount, int behavior, Scanner *s)
642 {
643 	const timelib_relunit* relunit;
644 
645 	if (!(relunit = timelib_lookup_relunit(ptr))) {
646 		return;
647 	}
648 
649 	switch (relunit->unit) {
650 		case TIMELIB_MICROSEC: s->time->relative.us += amount * relunit->multiplier; break;
651 		case TIMELIB_SECOND:   s->time->relative.s += amount * relunit->multiplier; break;
652 		case TIMELIB_MINUTE:   s->time->relative.i += amount * relunit->multiplier; break;
653 		case TIMELIB_HOUR:     s->time->relative.h += amount * relunit->multiplier; break;
654 		case TIMELIB_DAY:      s->time->relative.d += amount * relunit->multiplier; break;
655 		case TIMELIB_MONTH:    s->time->relative.m += amount * relunit->multiplier; break;
656 		case TIMELIB_YEAR:     s->time->relative.y += amount * relunit->multiplier; break;
657 
658 		case TIMELIB_WEEKDAY:
659 			TIMELIB_HAVE_WEEKDAY_RELATIVE();
660 			TIMELIB_UNHAVE_TIME();
661 			s->time->relative.d += (amount > 0 ? amount - 1 : amount) * 7;
662 			s->time->relative.weekday = relunit->multiplier;
663 			s->time->relative.weekday_behavior = behavior;
664 			break;
665 
666 		case TIMELIB_SPECIAL:
667 			TIMELIB_HAVE_SPECIAL_RELATIVE();
668 			TIMELIB_UNHAVE_TIME();
669 			s->time->relative.special.type = relunit->multiplier;
670 			s->time->relative.special.amount = amount;
671 	}
672 }
673 
abbr_search(const char * word,timelib_long gmtoffset,int isdst)674 static const timelib_tz_lookup_table* abbr_search(const char *word, timelib_long gmtoffset, int isdst)
675 {
676 	int first_found = 0;
677 	const timelib_tz_lookup_table  *tp, *first_found_elem = NULL;
678 	const timelib_tz_lookup_table  *fmp;
679 
680 	if (timelib_strcasecmp("utc", word) == 0 || timelib_strcasecmp("gmt", word) == 0) {
681 		return timelib_timezone_utc;
682 	}
683 
684 	for (tp = timelib_timezone_lookup; tp->name; tp++) {
685 		if (timelib_strcasecmp(word, tp->name) == 0) {
686 			if (!first_found) {
687 				first_found = 1;
688 				first_found_elem = tp;
689 				if (gmtoffset == -1) {
690 					return tp;
691 				}
692 			}
693 			if (tp->gmtoffset == gmtoffset) {
694 				return tp;
695 			}
696 		}
697 	}
698 	if (first_found) {
699 		return first_found_elem;
700 	}
701 
702 	/* Still didn't find anything, let's find the zone solely based on
703 	 * offset/isdst then */
704 	for (fmp = timelib_timezone_fallbackmap; fmp->name; fmp++) {
705 		if (fmp->gmtoffset == gmtoffset && fmp->type == isdst) {
706 			return fmp;
707 		}
708 	}
709 	return NULL;
710 }
711 
timelib_lookup_abbr(char ** ptr,int * dst,char ** tz_abbr,int * found)712 static timelib_long timelib_lookup_abbr(char **ptr, int *dst, char **tz_abbr, int *found)
713 {
714 	char *word;
715 	char *begin = *ptr, *end;
716 	timelib_long  value = 0;
717 	const timelib_tz_lookup_table *tp;
718 
719 	while (**ptr != '\0' && **ptr != ')' && **ptr != ' ') {
720 		++*ptr;
721 	}
722 	end = *ptr;
723 	word = timelib_calloc(1, end - begin + 1);
724 	memcpy(word, begin, end - begin);
725 
726 	if ((tp = abbr_search(word, -1, 0))) {
727 		value = tp->gmtoffset;
728 		*dst = tp->type;
729 		value -= tp->type * 3600;
730 		*found = 1;
731 	} else {
732 		*found = 0;
733 	}
734 
735 	*tz_abbr = word;
736 	return value;
737 }
738 
739 #define sHOUR(a) (int)(a * 3600)
740 #define sMIN(a) (int)(a * 60)
741 
timelib_parse_tz_cor(char ** ptr)742 static timelib_long timelib_parse_tz_cor(char **ptr)
743 {
744 	char *begin = *ptr, *end;
745 	timelib_long  tmp;
746 
747 	while (isdigit(**ptr) || **ptr == ':') {
748 		++*ptr;
749 	}
750 	end = *ptr;
751 	switch (end - begin) {
752 		case 1: /* H */
753 		case 2: /* HH */
754 			return sHOUR(strtol(begin, NULL, 10));
755 			break;
756 		case 3: /* H:M */
757 		case 4: /* H:MM, HH:M, HHMM */
758 			if (begin[1] == ':') {
759 				tmp = sHOUR(strtol(begin, NULL, 10)) + sMIN(strtol(begin + 2, NULL, 10));
760 				return tmp;
761 			} else if (begin[2] == ':') {
762 				tmp = sHOUR(strtol(begin, NULL, 10)) + sMIN(strtol(begin + 3, NULL, 10));
763 				return tmp;
764 			} else {
765 				tmp = strtol(begin, NULL, 10);
766 				return sHOUR(tmp / 100) + sMIN(tmp % 100);
767 			}
768 		case 5: /* HH:MM */
769 			if (begin[2] != ':') {
770 				return 0;
771 			}
772 			tmp = sHOUR(strtol(begin, NULL, 10)) + sMIN(strtol(begin + 3, NULL, 10));
773 			return tmp;
774 	}
775 	return 0;
776 }
777 
timelib_parse_tz_minutes(char ** ptr,timelib_time * t)778 static timelib_long timelib_parse_tz_minutes(char **ptr, timelib_time *t)
779 {
780 	timelib_long retval = TIMELIB_UNSET;
781 	char *begin = *ptr;
782 
783 	/* First character must be +/- */
784 	if (**ptr != '+' && **ptr != '-') {
785 		return retval;
786 	}
787 
788 	++*ptr;
789 	while (isdigit(**ptr)) {
790 		++*ptr;
791 	}
792 
793 	if (*begin == '+') {
794 		t->is_localtime = 1;
795 		t->zone_type = TIMELIB_ZONETYPE_OFFSET;
796 		t->dst = 0;
797 
798 		retval = sMIN(strtol(begin + 1, NULL, 10));
799 	} else if (*begin == '-') {
800 		t->is_localtime = 1;
801 		t->zone_type = TIMELIB_ZONETYPE_OFFSET;
802 		t->dst = 0;
803 
804 		retval = -1 * sMIN(strtol(begin + 1, NULL, 10));
805 	}
806 	return retval;
807 }
808 
timelib_parse_zone(char ** ptr,int * dst,timelib_time * t,int * tz_not_found,const timelib_tzdb * tzdb,timelib_tz_get_wrapper tz_wrapper)809 timelib_long timelib_parse_zone(char **ptr, int *dst, timelib_time *t, int *tz_not_found, const timelib_tzdb *tzdb, timelib_tz_get_wrapper tz_wrapper)
810 {
811 	timelib_tzinfo *res;
812 	timelib_long            retval = 0;
813 
814 	*tz_not_found = 0;
815 
816 	while (**ptr == ' ' || **ptr == '\t' || **ptr == '(') {
817 		++*ptr;
818 	}
819 	if ((*ptr)[0] == 'G' && (*ptr)[1] == 'M' && (*ptr)[2] == 'T' && ((*ptr)[3] == '+' || (*ptr)[3] == '-')) {
820 		*ptr += 3;
821 	}
822 	if (**ptr == '+') {
823 		++*ptr;
824 		t->is_localtime = 1;
825 		t->zone_type = TIMELIB_ZONETYPE_OFFSET;
826 		*tz_not_found = 0;
827 		t->dst = 0;
828 
829 		retval = timelib_parse_tz_cor(ptr);
830 	} else if (**ptr == '-') {
831 		++*ptr;
832 		t->is_localtime = 1;
833 		t->zone_type = TIMELIB_ZONETYPE_OFFSET;
834 		*tz_not_found = 0;
835 		t->dst = 0;
836 
837 		retval = -1 * timelib_parse_tz_cor(ptr);
838 	} else {
839 		int found = 0;
840 		timelib_long offset = 0;
841 		char *tz_abbr;
842 
843 		t->is_localtime = 1;
844 
845 		/* First, we lookup by abbreviation only */
846 		offset = timelib_lookup_abbr(ptr, dst, &tz_abbr, &found);
847 		if (found) {
848 			t->zone_type = TIMELIB_ZONETYPE_ABBR;
849 			timelib_time_tz_abbr_update(t, tz_abbr);
850 		}
851 
852 		/* Otherwise, we look if we have a TimeZone identifier */
853 		if (!found || strcmp("UTC", tz_abbr) == 0) {
854 			int dummy_error_code;
855 
856 			if ((res = tz_wrapper(tz_abbr, tzdb, &dummy_error_code)) != NULL) {
857 				t->tz_info = res;
858 				t->zone_type = TIMELIB_ZONETYPE_ID;
859 				found++;
860 			}
861 		}
862 		timelib_free(tz_abbr);
863 		*tz_not_found = (found == 0);
864 		retval = offset;
865 	}
866 	while (**ptr == ')') {
867 		++*ptr;
868 	}
869 	return retval;
870 }
871 
872 #define timelib_split_free(arg) {       \
873 	int i;                         \
874 	for (i = 0; i < arg.c; i++) {  \
875 		timelib_free(arg.v[i]);    \
876 	}                              \
877 	if (arg.v) {                   \
878 		timelib_free(arg.v);       \
879 	}                              \
880 }
881 
scan(Scanner * s,timelib_tz_get_wrapper tz_get_wrapper)882 static int scan(Scanner *s, timelib_tz_get_wrapper tz_get_wrapper)
883 {
884 	uchar *cursor = s->cur;
885 	char *str, *ptr = NULL;
886 
887 std:
888 	s->tok = cursor;
889 	s->len = 0;
890 #line 1011 "parse_date.re"
891 
892 
893 
894 #line 892 "<stdout>"
895 {
896 	YYCTYPE yych;
897 	unsigned int yyaccept = 0;
898 	static const unsigned char yybm[] = {
899 		  0,   0,   0,   0,   0,   0,   0,   0,
900 		  0,  50,   0,   0,   0,   0,   0,   0,
901 		  0,   0,   0,   0,   0,   0,   0,   0,
902 		  0,   0,   0,   0,   0,   0,   0,   0,
903 		 50,   0,   0,   0,   0,   0,   0,   0,
904 		  0,   0,   0,  64,  32,  80,  48,   0,
905 		128, 128, 128, 128, 128, 128, 128, 128,
906 		128, 128,   0,   0,   0,   0,   0,   0,
907 		  0,   4,   4,   4,   4,   4,   4,   4,
908 		  4,   4,   4,   4,   4,   4,   4,   4,
909 		  4,   4,   4,   4,   4,   4,   4,   4,
910 		  4,   4,   4,   0,   0,   0,   0,   0,
911 		  0,  12,  12,  12,  44,  12,  12,  12,
912 		 44,  12,  12,  12,  12,  12,  44,  12,
913 		 12,  12,  44,  44,  44,  12,  12,  12,
914 		 12,  12,  12,   0,   0,   0,   0,   0,
915 		  0,   0,   0,   0,   0,   0,   0,   0,
916 		  0,   0,   0,   0,   0,   0,   0,   0,
917 		  0,   0,   0,   0,   0,   0,   0,   0,
918 		  0,   0,   0,   0,   0,   0,   0,   0,
919 		  0,   0,   0,   0,   0,   0,   0,   0,
920 		  0,   0,   0,   0,   0,   0,   0,   0,
921 		  0,   0,   0,   0,   0,   0,   0,   0,
922 		  0,   0,   0,   0,   0,   0,   0,   0,
923 		  0,   0,   0,   0,   0,   0,   0,   0,
924 		  0,   0,   0,   0,   0,   0,   0,   0,
925 		  0,   0,   0,   0,   0,   0,   0,   0,
926 		  0,   0,   0,   0,   0,   0,   0,   0,
927 		  0,   0,   0,   0,   0,   0,   0,   0,
928 		  0,   0,   0,   0,   0,   0,   0,   0,
929 		  0,   0,   0,   0,   0,   0,   0,   0,
930 		  0,   0,   0,   0,   0,   0,   0,   0,
931 	};
932 	YYDEBUG(0, *YYCURSOR);
933 	if ((YYLIMIT - YYCURSOR) < 33) YYFILL(33);
934 	yych = *YYCURSOR;
935 	switch (yych) {
936 	case 0x00:
937 	case '\n':	goto yy51;
938 	case '\t':
939 	case ' ':	goto yy48;
940 	case '(':	goto yy45;
941 	case '+':
942 	case '-':	goto yy30;
943 	case ',':
944 	case '.':	goto yy50;
945 	case '0':	goto yy25;
946 	case '1':	goto yy26;
947 	case '2':	goto yy27;
948 	case '3':	goto yy28;
949 	case '4':
950 	case '5':
951 	case '6':
952 	case '7':
953 	case '8':
954 	case '9':	goto yy29;
955 	case '@':	goto yy11;
956 	case 'A':	goto yy36;
957 	case 'B':	goto yy17;
958 	case 'C':
959 	case 'H':
960 	case 'K':
961 	case 'Q':
962 	case 'R':
963 	case 'U':
964 	case 'Z':	goto yy46;
965 	case 'D':	goto yy40;
966 	case 'E':	goto yy21;
967 	case 'F':	goto yy13;
968 	case 'G':	goto yy44;
969 	case 'I':	goto yy31;
970 	case 'J':	goto yy34;
971 	case 'L':	goto yy15;
972 	case 'M':	goto yy7;
973 	case 'N':	goto yy5;
974 	case 'O':	goto yy38;
975 	case 'P':	goto yy23;
976 	case 'S':	goto yy19;
977 	case 'T':	goto yy9;
978 	case 'V':	goto yy32;
979 	case 'W':	goto yy42;
980 	case 'X':	goto yy33;
981 	case 'Y':	goto yy2;
982 	case 'a':	goto yy37;
983 	case 'b':	goto yy18;
984 	case 'c':
985 	case 'g':
986 	case 'h':
987 	case 'i':
988 	case 'k':
989 	case 'q':
990 	case 'r':
991 	case 'u':
992 	case 'v':
993 	case 'x':
994 	case 'z':	goto yy47;
995 	case 'd':	goto yy41;
996 	case 'e':	goto yy22;
997 	case 'f':	goto yy14;
998 	case 'j':	goto yy35;
999 	case 'l':	goto yy16;
1000 	case 'm':	goto yy8;
1001 	case 'n':	goto yy6;
1002 	case 'o':	goto yy39;
1003 	case 'p':	goto yy24;
1004 	case 's':	goto yy20;
1005 	case 't':	goto yy10;
1006 	case 'w':	goto yy43;
1007 	case 'y':	goto yy4;
1008 	default:	goto yy53;
1009 	}
1010 yy2:
1011 	YYDEBUG(2, *YYCURSOR);
1012 	++YYCURSOR;
1013 	if ((yych = *YYCURSOR) <= 'E') {
1014 		if (yych <= ')') {
1015 			if (yych >= ')') goto yy174;
1016 		} else {
1017 			if (yych <= '@') goto yy3;
1018 			if (yych <= 'D') goto yy175;
1019 			goto yy1533;
1020 		}
1021 	} else {
1022 		if (yych <= 'd') {
1023 			if (yych <= 'Z') goto yy175;
1024 			if (yych >= 'a') goto yy180;
1025 		} else {
1026 			if (yych <= 'e') goto yy1542;
1027 			if (yych <= 'z') goto yy180;
1028 		}
1029 	}
1030 yy3:
1031 	YYDEBUG(3, *YYCURSOR);
1032 #line 1719 "parse_date.re"
1033 	{
1034 		int tz_not_found;
1035 		DEBUG_OUTPUT("tzcorrection | tz");
1036 		TIMELIB_INIT;
1037 		TIMELIB_HAVE_TZ();
1038 		s->time->z = timelib_parse_zone((char **) &ptr, &s->time->dst, s->time, &tz_not_found, s->tzdb, tz_get_wrapper);
1039 		if (tz_not_found) {
1040 			add_error(s, TIMELIB_ERR_TZID_NOT_FOUND, "The timezone could not be found in the database");
1041 		}
1042 		TIMELIB_DEINIT;
1043 		return TIMELIB_TIMEZONE;
1044 	}
1045 #line 1043 "<stdout>"
1046 yy4:
1047 	YYDEBUG(4, *YYCURSOR);
1048 	yych = *++YYCURSOR;
1049 	if (yych <= 'E') {
1050 		if (yych <= ')') {
1051 			if (yych <= '(') goto yy3;
1052 			goto yy174;
1053 		} else {
1054 			if (yych <= '@') goto yy3;
1055 			if (yych <= 'D') goto yy175;
1056 			goto yy1533;
1057 		}
1058 	} else {
1059 		if (yych <= 'd') {
1060 			if (yych <= 'Z') goto yy175;
1061 			if (yych <= '`') goto yy3;
1062 			goto yy175;
1063 		} else {
1064 			if (yych <= 'e') goto yy1533;
1065 			if (yych <= 'z') goto yy175;
1066 			goto yy3;
1067 		}
1068 	}
1069 yy5:
1070 	YYDEBUG(5, *YYCURSOR);
1071 	yych = *++YYCURSOR;
1072 	if (yych <= 'O') {
1073 		if (yych <= 'D') {
1074 			if (yych == ')') goto yy174;
1075 			if (yych <= '@') goto yy3;
1076 			goto yy175;
1077 		} else {
1078 			if (yych <= 'H') {
1079 				if (yych <= 'E') goto yy1504;
1080 				goto yy175;
1081 			} else {
1082 				if (yych <= 'I') goto yy1505;
1083 				if (yych <= 'N') goto yy175;
1084 				goto yy1503;
1085 			}
1086 		}
1087 	} else {
1088 		if (yych <= 'h') {
1089 			if (yych <= '`') {
1090 				if (yych <= 'Z') goto yy175;
1091 				goto yy3;
1092 			} else {
1093 				if (yych == 'e') goto yy1520;
1094 				goto yy180;
1095 			}
1096 		} else {
1097 			if (yych <= 'n') {
1098 				if (yych <= 'i') goto yy1521;
1099 				goto yy180;
1100 			} else {
1101 				if (yych <= 'o') goto yy1519;
1102 				if (yych <= 'z') goto yy180;
1103 				goto yy3;
1104 			}
1105 		}
1106 	}
1107 yy6:
1108 	YYDEBUG(6, *YYCURSOR);
1109 	yych = *++YYCURSOR;
1110 	if (yych <= 'O') {
1111 		if (yych <= 'D') {
1112 			if (yych == ')') goto yy174;
1113 			if (yych <= '@') goto yy3;
1114 			goto yy175;
1115 		} else {
1116 			if (yych <= 'H') {
1117 				if (yych <= 'E') goto yy1504;
1118 				goto yy175;
1119 			} else {
1120 				if (yych <= 'I') goto yy1505;
1121 				if (yych <= 'N') goto yy175;
1122 				goto yy1503;
1123 			}
1124 		}
1125 	} else {
1126 		if (yych <= 'h') {
1127 			if (yych <= '`') {
1128 				if (yych <= 'Z') goto yy175;
1129 				goto yy3;
1130 			} else {
1131 				if (yych == 'e') goto yy1504;
1132 				goto yy175;
1133 			}
1134 		} else {
1135 			if (yych <= 'n') {
1136 				if (yych <= 'i') goto yy1505;
1137 				goto yy175;
1138 			} else {
1139 				if (yych <= 'o') goto yy1503;
1140 				if (yych <= 'z') goto yy175;
1141 				goto yy3;
1142 			}
1143 		}
1144 	}
1145 yy7:
1146 	YYDEBUG(7, *YYCURSOR);
1147 	yych = *++YYCURSOR;
1148 	if (yych <= 'O') {
1149 		if (yych <= 'A') {
1150 			if (yych == ')') goto yy174;
1151 			if (yych <= '@') goto yy3;
1152 			goto yy1473;
1153 		} else {
1154 			if (yych == 'I') goto yy1474;
1155 			if (yych <= 'N') goto yy175;
1156 			goto yy1475;
1157 		}
1158 	} else {
1159 		if (yych <= 'h') {
1160 			if (yych <= 'Z') goto yy175;
1161 			if (yych <= '`') goto yy3;
1162 			if (yych <= 'a') goto yy1488;
1163 			goto yy180;
1164 		} else {
1165 			if (yych <= 'n') {
1166 				if (yych <= 'i') goto yy1489;
1167 				goto yy180;
1168 			} else {
1169 				if (yych <= 'o') goto yy1490;
1170 				if (yych <= 'z') goto yy180;
1171 				goto yy3;
1172 			}
1173 		}
1174 	}
1175 yy8:
1176 	YYDEBUG(8, *YYCURSOR);
1177 	yych = *++YYCURSOR;
1178 	if (yych <= 'O') {
1179 		if (yych <= 'A') {
1180 			if (yych == ')') goto yy174;
1181 			if (yych <= '@') goto yy3;
1182 			goto yy1473;
1183 		} else {
1184 			if (yych == 'I') goto yy1474;
1185 			if (yych <= 'N') goto yy175;
1186 			goto yy1475;
1187 		}
1188 	} else {
1189 		if (yych <= 'h') {
1190 			if (yych <= 'Z') goto yy175;
1191 			if (yych <= '`') goto yy3;
1192 			if (yych <= 'a') goto yy1473;
1193 			goto yy175;
1194 		} else {
1195 			if (yych <= 'n') {
1196 				if (yych <= 'i') goto yy1474;
1197 				goto yy175;
1198 			} else {
1199 				if (yych <= 'o') goto yy1475;
1200 				if (yych <= 'z') goto yy175;
1201 				goto yy3;
1202 			}
1203 		}
1204 	}
1205 yy9:
1206 	YYDEBUG(9, *YYCURSOR);
1207 	yyaccept = 0;
1208 	yych = *(YYMARKER = ++YYCURSOR);
1209 	switch (yych) {
1210 	case ')':	goto yy174;
1211 	case '0':
1212 	case '1':	goto yy1403;
1213 	case '2':	goto yy1404;
1214 	case '3':
1215 	case '4':
1216 	case '5':
1217 	case '6':
1218 	case '7':
1219 	case '8':
1220 	case '9':	goto yy1405;
1221 	case 'A':
1222 	case 'B':
1223 	case 'C':
1224 	case 'D':
1225 	case 'F':
1226 	case 'G':
1227 	case 'I':
1228 	case 'J':
1229 	case 'K':
1230 	case 'L':
1231 	case 'M':
1232 	case 'N':
1233 	case 'P':
1234 	case 'Q':
1235 	case 'R':
1236 	case 'S':
1237 	case 'T':
1238 	case 'V':
1239 	case 'X':
1240 	case 'Y':
1241 	case 'Z':	goto yy175;
1242 	case 'E':	goto yy1398;
1243 	case 'H':	goto yy1399;
1244 	case 'O':	goto yy1400;
1245 	case 'U':	goto yy1401;
1246 	case 'W':	goto yy1402;
1247 	case 'a':
1248 	case 'b':
1249 	case 'c':
1250 	case 'd':
1251 	case 'f':
1252 	case 'g':
1253 	case 'i':
1254 	case 'j':
1255 	case 'k':
1256 	case 'l':
1257 	case 'm':
1258 	case 'n':
1259 	case 'p':
1260 	case 'q':
1261 	case 'r':
1262 	case 's':
1263 	case 't':
1264 	case 'v':
1265 	case 'x':
1266 	case 'y':
1267 	case 'z':	goto yy180;
1268 	case 'e':	goto yy1441;
1269 	case 'h':	goto yy1442;
1270 	case 'o':	goto yy1443;
1271 	case 'u':	goto yy1444;
1272 	case 'w':	goto yy1445;
1273 	default:	goto yy3;
1274 	}
1275 yy10:
1276 	YYDEBUG(10, *YYCURSOR);
1277 	yyaccept = 0;
1278 	yych = *(YYMARKER = ++YYCURSOR);
1279 	switch (yych) {
1280 	case ')':	goto yy174;
1281 	case '0':
1282 	case '1':	goto yy1403;
1283 	case '2':	goto yy1404;
1284 	case '3':
1285 	case '4':
1286 	case '5':
1287 	case '6':
1288 	case '7':
1289 	case '8':
1290 	case '9':	goto yy1405;
1291 	case 'A':
1292 	case 'B':
1293 	case 'C':
1294 	case 'D':
1295 	case 'F':
1296 	case 'G':
1297 	case 'I':
1298 	case 'J':
1299 	case 'K':
1300 	case 'L':
1301 	case 'M':
1302 	case 'N':
1303 	case 'P':
1304 	case 'Q':
1305 	case 'R':
1306 	case 'S':
1307 	case 'T':
1308 	case 'V':
1309 	case 'X':
1310 	case 'Y':
1311 	case 'Z':
1312 	case 'a':
1313 	case 'b':
1314 	case 'c':
1315 	case 'd':
1316 	case 'f':
1317 	case 'g':
1318 	case 'i':
1319 	case 'j':
1320 	case 'k':
1321 	case 'l':
1322 	case 'm':
1323 	case 'n':
1324 	case 'p':
1325 	case 'q':
1326 	case 'r':
1327 	case 's':
1328 	case 't':
1329 	case 'v':
1330 	case 'x':
1331 	case 'y':
1332 	case 'z':	goto yy175;
1333 	case 'E':
1334 	case 'e':	goto yy1398;
1335 	case 'H':
1336 	case 'h':	goto yy1399;
1337 	case 'O':
1338 	case 'o':	goto yy1400;
1339 	case 'U':
1340 	case 'u':	goto yy1401;
1341 	case 'W':
1342 	case 'w':	goto yy1402;
1343 	default:	goto yy3;
1344 	}
1345 yy11:
1346 	YYDEBUG(11, *YYCURSOR);
1347 	yyaccept = 1;
1348 	yych = *(YYMARKER = ++YYCURSOR);
1349 	if (yych == '-') goto yy1386;
1350 	if (yych <= '/') goto yy12;
1351 	if (yych <= '9') goto yy1387;
1352 yy12:
1353 	YYDEBUG(12, *YYCURSOR);
1354 #line 1814 "parse_date.re"
1355 	{
1356 		add_error(s, TIMELIB_ERR_UNEXPECTED_CHARACTER, "Unexpected character");
1357 		goto std;
1358 	}
1359 #line 1357 "<stdout>"
1360 yy13:
1361 	YYDEBUG(13, *YYCURSOR);
1362 	yych = *++YYCURSOR;
1363 	if (yych <= 'R') {
1364 		if (yych <= 'E') {
1365 			if (yych <= ')') {
1366 				if (yych <= '(') goto yy3;
1367 				goto yy174;
1368 			} else {
1369 				if (yych <= '@') goto yy3;
1370 				if (yych <= 'D') goto yy175;
1371 				goto yy1321;
1372 			}
1373 		} else {
1374 			if (yych <= 'N') {
1375 				if (yych == 'I') goto yy1322;
1376 				goto yy175;
1377 			} else {
1378 				if (yych <= 'O') goto yy1323;
1379 				if (yych <= 'Q') goto yy175;
1380 				goto yy1324;
1381 			}
1382 		}
1383 	} else {
1384 		if (yych <= 'i') {
1385 			if (yych <= 'd') {
1386 				if (yych <= 'Z') goto yy175;
1387 				if (yych <= '`') goto yy3;
1388 				goto yy180;
1389 			} else {
1390 				if (yych <= 'e') goto yy1363;
1391 				if (yych <= 'h') goto yy180;
1392 				goto yy1364;
1393 			}
1394 		} else {
1395 			if (yych <= 'q') {
1396 				if (yych == 'o') goto yy1365;
1397 				goto yy180;
1398 			} else {
1399 				if (yych <= 'r') goto yy1366;
1400 				if (yych <= 'z') goto yy180;
1401 				goto yy3;
1402 			}
1403 		}
1404 	}
1405 yy14:
1406 	YYDEBUG(14, *YYCURSOR);
1407 	yych = *++YYCURSOR;
1408 	if (yych <= 'R') {
1409 		if (yych <= 'E') {
1410 			if (yych <= ')') {
1411 				if (yych <= '(') goto yy3;
1412 				goto yy174;
1413 			} else {
1414 				if (yych <= '@') goto yy3;
1415 				if (yych <= 'D') goto yy175;
1416 				goto yy1321;
1417 			}
1418 		} else {
1419 			if (yych <= 'N') {
1420 				if (yych == 'I') goto yy1322;
1421 				goto yy175;
1422 			} else {
1423 				if (yych <= 'O') goto yy1323;
1424 				if (yych <= 'Q') goto yy175;
1425 				goto yy1324;
1426 			}
1427 		}
1428 	} else {
1429 		if (yych <= 'i') {
1430 			if (yych <= 'd') {
1431 				if (yych <= 'Z') goto yy175;
1432 				if (yych <= '`') goto yy3;
1433 				goto yy175;
1434 			} else {
1435 				if (yych <= 'e') goto yy1321;
1436 				if (yych <= 'h') goto yy175;
1437 				goto yy1322;
1438 			}
1439 		} else {
1440 			if (yych <= 'q') {
1441 				if (yych == 'o') goto yy1323;
1442 				goto yy175;
1443 			} else {
1444 				if (yych <= 'r') goto yy1324;
1445 				if (yych <= 'z') goto yy175;
1446 				goto yy3;
1447 			}
1448 		}
1449 	}
1450 yy15:
1451 	YYDEBUG(15, *YYCURSOR);
1452 	yych = *++YYCURSOR;
1453 	if (yych <= 'A') {
1454 		if (yych == ')') goto yy174;
1455 		if (yych <= '@') goto yy3;
1456 		goto yy1307;
1457 	} else {
1458 		if (yych <= '`') {
1459 			if (yych <= 'Z') goto yy175;
1460 			goto yy3;
1461 		} else {
1462 			if (yych <= 'a') goto yy1318;
1463 			if (yych <= 'z') goto yy180;
1464 			goto yy3;
1465 		}
1466 	}
1467 yy16:
1468 	YYDEBUG(16, *YYCURSOR);
1469 	yych = *++YYCURSOR;
1470 	if (yych <= 'A') {
1471 		if (yych == ')') goto yy174;
1472 		if (yych <= '@') goto yy3;
1473 		goto yy1307;
1474 	} else {
1475 		if (yych <= '`') {
1476 			if (yych <= 'Z') goto yy175;
1477 			goto yy3;
1478 		} else {
1479 			if (yych <= 'a') goto yy1307;
1480 			if (yych <= 'z') goto yy175;
1481 			goto yy3;
1482 		}
1483 	}
1484 yy17:
1485 	YYDEBUG(17, *YYCURSOR);
1486 	yych = *++YYCURSOR;
1487 	if (yych <= 'A') {
1488 		if (yych == ')') goto yy174;
1489 		if (yych <= '@') goto yy3;
1490 		goto yy1286;
1491 	} else {
1492 		if (yych <= '`') {
1493 			if (yych <= 'Z') goto yy175;
1494 			goto yy3;
1495 		} else {
1496 			if (yych <= 'a') goto yy1304;
1497 			if (yych <= 'z') goto yy180;
1498 			goto yy3;
1499 		}
1500 	}
1501 yy18:
1502 	YYDEBUG(18, *YYCURSOR);
1503 	yych = *++YYCURSOR;
1504 	if (yych <= 'A') {
1505 		if (yych == ')') goto yy174;
1506 		if (yych <= '@') goto yy3;
1507 		goto yy1286;
1508 	} else {
1509 		if (yych <= '`') {
1510 			if (yych <= 'Z') goto yy175;
1511 			goto yy3;
1512 		} else {
1513 			if (yych <= 'a') goto yy1286;
1514 			if (yych <= 'z') goto yy175;
1515 			goto yy3;
1516 		}
1517 	}
1518 yy19:
1519 	YYDEBUG(19, *YYCURSOR);
1520 	yych = *++YYCURSOR;
1521 	if (yych <= 'U') {
1522 		if (yych <= 'D') {
1523 			if (yych <= ')') {
1524 				if (yych <= '(') goto yy3;
1525 				goto yy174;
1526 			} else {
1527 				if (yych <= '@') goto yy3;
1528 				if (yych <= 'A') goto yy1229;
1529 				goto yy175;
1530 			}
1531 		} else {
1532 			if (yych <= 'H') {
1533 				if (yych <= 'E') goto yy1228;
1534 				goto yy175;
1535 			} else {
1536 				if (yych <= 'I') goto yy1230;
1537 				if (yych <= 'T') goto yy175;
1538 				goto yy1231;
1539 			}
1540 		}
1541 	} else {
1542 		if (yych <= 'e') {
1543 			if (yych <= '`') {
1544 				if (yych <= 'Z') goto yy175;
1545 				goto yy3;
1546 			} else {
1547 				if (yych <= 'a') goto yy1258;
1548 				if (yych <= 'd') goto yy180;
1549 				goto yy1257;
1550 			}
1551 		} else {
1552 			if (yych <= 't') {
1553 				if (yych == 'i') goto yy1259;
1554 				goto yy180;
1555 			} else {
1556 				if (yych <= 'u') goto yy1260;
1557 				if (yych <= 'z') goto yy180;
1558 				goto yy3;
1559 			}
1560 		}
1561 	}
1562 yy20:
1563 	YYDEBUG(20, *YYCURSOR);
1564 	yych = *++YYCURSOR;
1565 	if (yych <= 'U') {
1566 		if (yych <= 'D') {
1567 			if (yych <= ')') {
1568 				if (yych <= '(') goto yy3;
1569 				goto yy174;
1570 			} else {
1571 				if (yych <= '@') goto yy3;
1572 				if (yych <= 'A') goto yy1229;
1573 				goto yy175;
1574 			}
1575 		} else {
1576 			if (yych <= 'H') {
1577 				if (yych <= 'E') goto yy1228;
1578 				goto yy175;
1579 			} else {
1580 				if (yych <= 'I') goto yy1230;
1581 				if (yych <= 'T') goto yy175;
1582 				goto yy1231;
1583 			}
1584 		}
1585 	} else {
1586 		if (yych <= 'e') {
1587 			if (yych <= '`') {
1588 				if (yych <= 'Z') goto yy175;
1589 				goto yy3;
1590 			} else {
1591 				if (yych <= 'a') goto yy1229;
1592 				if (yych <= 'd') goto yy175;
1593 				goto yy1228;
1594 			}
1595 		} else {
1596 			if (yych <= 't') {
1597 				if (yych == 'i') goto yy1230;
1598 				goto yy175;
1599 			} else {
1600 				if (yych <= 'u') goto yy1231;
1601 				if (yych <= 'z') goto yy175;
1602 				goto yy3;
1603 			}
1604 		}
1605 	}
1606 yy21:
1607 	YYDEBUG(21, *YYCURSOR);
1608 	yych = *++YYCURSOR;
1609 	if (yych <= 'L') {
1610 		if (yych <= '@') {
1611 			if (yych == ')') goto yy174;
1612 			goto yy3;
1613 		} else {
1614 			if (yych == 'I') goto yy1198;
1615 			if (yych <= 'K') goto yy175;
1616 			goto yy1199;
1617 		}
1618 	} else {
1619 		if (yych <= 'i') {
1620 			if (yych <= 'Z') goto yy175;
1621 			if (yych <= '`') goto yy3;
1622 			if (yych <= 'h') goto yy180;
1623 			goto yy1216;
1624 		} else {
1625 			if (yych == 'l') goto yy1217;
1626 			if (yych <= 'z') goto yy180;
1627 			goto yy3;
1628 		}
1629 	}
1630 yy22:
1631 	YYDEBUG(22, *YYCURSOR);
1632 	yych = *++YYCURSOR;
1633 	if (yych <= 'L') {
1634 		if (yych <= '@') {
1635 			if (yych == ')') goto yy174;
1636 			goto yy3;
1637 		} else {
1638 			if (yych == 'I') goto yy1198;
1639 			if (yych <= 'K') goto yy175;
1640 			goto yy1199;
1641 		}
1642 	} else {
1643 		if (yych <= 'i') {
1644 			if (yych <= 'Z') goto yy175;
1645 			if (yych <= '`') goto yy3;
1646 			if (yych <= 'h') goto yy175;
1647 			goto yy1198;
1648 		} else {
1649 			if (yych == 'l') goto yy1199;
1650 			if (yych <= 'z') goto yy175;
1651 			goto yy3;
1652 		}
1653 	}
1654 yy23:
1655 	YYDEBUG(23, *YYCURSOR);
1656 	yych = *++YYCURSOR;
1657 	if (yych <= 'R') {
1658 		if (yych <= ')') {
1659 			if (yych <= '(') goto yy3;
1660 			goto yy174;
1661 		} else {
1662 			if (yych <= '@') goto yy3;
1663 			if (yych <= 'Q') goto yy175;
1664 			goto yy1072;
1665 		}
1666 	} else {
1667 		if (yych <= 'q') {
1668 			if (yych <= 'Z') goto yy175;
1669 			if (yych <= '`') goto yy3;
1670 			goto yy180;
1671 		} else {
1672 			if (yych <= 'r') goto yy1191;
1673 			if (yych <= 'z') goto yy180;
1674 			goto yy3;
1675 		}
1676 	}
1677 yy24:
1678 	YYDEBUG(24, *YYCURSOR);
1679 	yych = *++YYCURSOR;
1680 	if (yych <= 'R') {
1681 		if (yych <= ')') {
1682 			if (yych <= '(') goto yy3;
1683 			goto yy174;
1684 		} else {
1685 			if (yych <= '@') goto yy3;
1686 			if (yych <= 'Q') goto yy175;
1687 			goto yy1072;
1688 		}
1689 	} else {
1690 		if (yych <= 'q') {
1691 			if (yych <= 'Z') goto yy175;
1692 			if (yych <= '`') goto yy3;
1693 			goto yy175;
1694 		} else {
1695 			if (yych <= 'r') goto yy1072;
1696 			if (yych <= 'z') goto yy175;
1697 			goto yy3;
1698 		}
1699 	}
1700 yy25:
1701 	YYDEBUG(25, *YYCURSOR);
1702 	yyaccept = 1;
1703 	yych = *(YYMARKER = ++YYCURSOR);
1704 	if (yych <= '`') {
1705 		if (yych <= '@') {
1706 			if (yych <= '-') {
1707 				if (yych <= 0x1F) {
1708 					if (yych == '\t') goto yy1026;
1709 					goto yy12;
1710 				} else {
1711 					if (yych <= ' ') goto yy1028;
1712 					if (yych <= ',') goto yy12;
1713 					goto yy447;
1714 				}
1715 			} else {
1716 				if (yych <= '0') {
1717 					if (yych <= '.') goto yy1038;
1718 					if (yych <= '/') goto yy446;
1719 					goto yy1071;
1720 				} else {
1721 					if (yych <= '9') goto yy1070;
1722 					if (yych <= ':') goto yy1039;
1723 					goto yy12;
1724 				}
1725 			}
1726 		} else {
1727 			if (yych <= 'G') {
1728 				if (yych <= 'D') {
1729 					if (yych <= 'A') goto yy1028;
1730 					if (yych <= 'C') goto yy12;
1731 					goto yy1028;
1732 				} else {
1733 					if (yych == 'F') goto yy1028;
1734 					goto yy12;
1735 				}
1736 			} else {
1737 				if (yych <= 'O') {
1738 					if (yych <= 'J') goto yy1028;
1739 					if (yych <= 'L') goto yy12;
1740 					goto yy1028;
1741 				} else {
1742 					if (yych <= 'R') goto yy12;
1743 					if (yych <= 'Y') goto yy1028;
1744 					goto yy12;
1745 				}
1746 			}
1747 		}
1748 	} else {
1749 		if (yych <= 'n') {
1750 			if (yych <= 'g') {
1751 				if (yych <= 'd') {
1752 					if (yych <= 'a') goto yy1028;
1753 					if (yych <= 'c') goto yy12;
1754 					goto yy1028;
1755 				} else {
1756 					if (yych == 'f') goto yy1028;
1757 					goto yy12;
1758 				}
1759 			} else {
1760 				if (yych <= 'j') {
1761 					if (yych == 'i') goto yy12;
1762 					goto yy1028;
1763 				} else {
1764 					if (yych <= 'l') goto yy12;
1765 					if (yych <= 'm') goto yy1028;
1766 					goto yy444;
1767 				}
1768 			}
1769 		} else {
1770 			if (yych <= 'u') {
1771 				if (yych <= 'r') {
1772 					if (yych <= 'o') goto yy1028;
1773 					if (yych <= 'q') goto yy12;
1774 					goto yy445;
1775 				} else {
1776 					if (yych <= 's') goto yy439;
1777 					if (yych <= 't') goto yy442;
1778 					goto yy1028;
1779 				}
1780 			} else {
1781 				if (yych <= 'x') {
1782 					if (yych == 'w') goto yy1028;
1783 					goto yy12;
1784 				} else {
1785 					if (yych <= 'y') goto yy1028;
1786 					if (yych == 0xC2) goto yy1028;
1787 					goto yy12;
1788 				}
1789 			}
1790 		}
1791 	}
1792 yy26:
1793 	YYDEBUG(26, *YYCURSOR);
1794 	yyaccept = 1;
1795 	yych = *(YYMARKER = ++YYCURSOR);
1796 	if (yych <= '`') {
1797 		if (yych <= '@') {
1798 			if (yych <= '-') {
1799 				if (yych <= 0x1F) {
1800 					if (yych == '\t') goto yy434;
1801 					goto yy12;
1802 				} else {
1803 					if (yych <= ' ') goto yy436;
1804 					if (yych <= ',') goto yy12;
1805 					goto yy447;
1806 				}
1807 			} else {
1808 				if (yych <= '2') {
1809 					if (yych <= '.') goto yy448;
1810 					if (yych <= '/') goto yy446;
1811 					goto yy1070;
1812 				} else {
1813 					if (yych <= '9') goto yy1037;
1814 					if (yych <= ':') goto yy457;
1815 					goto yy12;
1816 				}
1817 			}
1818 		} else {
1819 			if (yych <= 'G') {
1820 				if (yych <= 'D') {
1821 					if (yych <= 'A') goto yy436;
1822 					if (yych <= 'C') goto yy12;
1823 					goto yy436;
1824 				} else {
1825 					if (yych == 'F') goto yy436;
1826 					goto yy12;
1827 				}
1828 			} else {
1829 				if (yych <= 'P') {
1830 					if (yych <= 'J') goto yy436;
1831 					if (yych <= 'L') goto yy12;
1832 					goto yy436;
1833 				} else {
1834 					if (yych <= 'R') goto yy12;
1835 					if (yych <= 'Y') goto yy436;
1836 					goto yy12;
1837 				}
1838 			}
1839 		}
1840 	} else {
1841 		if (yych <= 'n') {
1842 			if (yych <= 'g') {
1843 				if (yych <= 'd') {
1844 					if (yych <= 'a') goto yy436;
1845 					if (yych <= 'c') goto yy12;
1846 					goto yy436;
1847 				} else {
1848 					if (yych == 'f') goto yy436;
1849 					goto yy12;
1850 				}
1851 			} else {
1852 				if (yych <= 'j') {
1853 					if (yych == 'i') goto yy12;
1854 					goto yy436;
1855 				} else {
1856 					if (yych <= 'l') goto yy12;
1857 					if (yych <= 'm') goto yy436;
1858 					goto yy444;
1859 				}
1860 			}
1861 		} else {
1862 			if (yych <= 'u') {
1863 				if (yych <= 'r') {
1864 					if (yych <= 'p') goto yy436;
1865 					if (yych <= 'q') goto yy12;
1866 					goto yy445;
1867 				} else {
1868 					if (yych <= 's') goto yy439;
1869 					if (yych <= 't') goto yy442;
1870 					goto yy436;
1871 				}
1872 			} else {
1873 				if (yych <= 'x') {
1874 					if (yych == 'w') goto yy436;
1875 					goto yy12;
1876 				} else {
1877 					if (yych <= 'y') goto yy436;
1878 					if (yych == 0xC2) goto yy436;
1879 					goto yy12;
1880 				}
1881 			}
1882 		}
1883 	}
1884 yy27:
1885 	YYDEBUG(27, *YYCURSOR);
1886 	yyaccept = 1;
1887 	yych = *(YYMARKER = ++YYCURSOR);
1888 	if (yych <= '`') {
1889 		if (yych <= '@') {
1890 			if (yych <= '-') {
1891 				if (yych <= 0x1F) {
1892 					if (yych == '\t') goto yy434;
1893 					goto yy12;
1894 				} else {
1895 					if (yych <= ' ') goto yy436;
1896 					if (yych <= ',') goto yy12;
1897 					goto yy447;
1898 				}
1899 			} else {
1900 				if (yych <= '4') {
1901 					if (yych <= '.') goto yy448;
1902 					if (yych <= '/') goto yy446;
1903 					goto yy1037;
1904 				} else {
1905 					if (yych <= '9') goto yy1024;
1906 					if (yych <= ':') goto yy457;
1907 					goto yy12;
1908 				}
1909 			}
1910 		} else {
1911 			if (yych <= 'G') {
1912 				if (yych <= 'D') {
1913 					if (yych <= 'A') goto yy436;
1914 					if (yych <= 'C') goto yy12;
1915 					goto yy436;
1916 				} else {
1917 					if (yych == 'F') goto yy436;
1918 					goto yy12;
1919 				}
1920 			} else {
1921 				if (yych <= 'P') {
1922 					if (yych <= 'J') goto yy436;
1923 					if (yych <= 'L') goto yy12;
1924 					goto yy436;
1925 				} else {
1926 					if (yych <= 'R') goto yy12;
1927 					if (yych <= 'Y') goto yy436;
1928 					goto yy12;
1929 				}
1930 			}
1931 		}
1932 	} else {
1933 		if (yych <= 'n') {
1934 			if (yych <= 'g') {
1935 				if (yych <= 'd') {
1936 					if (yych <= 'a') goto yy436;
1937 					if (yych <= 'c') goto yy12;
1938 					goto yy436;
1939 				} else {
1940 					if (yych == 'f') goto yy436;
1941 					goto yy12;
1942 				}
1943 			} else {
1944 				if (yych <= 'j') {
1945 					if (yych == 'i') goto yy12;
1946 					goto yy436;
1947 				} else {
1948 					if (yych <= 'l') goto yy12;
1949 					if (yych <= 'm') goto yy436;
1950 					goto yy444;
1951 				}
1952 			}
1953 		} else {
1954 			if (yych <= 'u') {
1955 				if (yych <= 'r') {
1956 					if (yych <= 'p') goto yy436;
1957 					if (yych <= 'q') goto yy12;
1958 					goto yy445;
1959 				} else {
1960 					if (yych <= 's') goto yy439;
1961 					if (yych <= 't') goto yy442;
1962 					goto yy436;
1963 				}
1964 			} else {
1965 				if (yych <= 'x') {
1966 					if (yych == 'w') goto yy436;
1967 					goto yy12;
1968 				} else {
1969 					if (yych <= 'y') goto yy436;
1970 					if (yych == 0xC2) goto yy436;
1971 					goto yy12;
1972 				}
1973 			}
1974 		}
1975 	}
1976 yy28:
1977 	YYDEBUG(28, *YYCURSOR);
1978 	yyaccept = 1;
1979 	yych = *(YYMARKER = ++YYCURSOR);
1980 	if (yych <= '`') {
1981 		if (yych <= '@') {
1982 			if (yych <= '-') {
1983 				if (yych <= 0x1F) {
1984 					if (yych == '\t') goto yy434;
1985 					goto yy12;
1986 				} else {
1987 					if (yych <= ' ') goto yy436;
1988 					if (yych <= ',') goto yy12;
1989 					goto yy447;
1990 				}
1991 			} else {
1992 				if (yych <= '1') {
1993 					if (yych <= '.') goto yy448;
1994 					if (yych <= '/') goto yy446;
1995 					goto yy1024;
1996 				} else {
1997 					if (yych <= '9') goto yy443;
1998 					if (yych <= ':') goto yy457;
1999 					goto yy12;
2000 				}
2001 			}
2002 		} else {
2003 			if (yych <= 'G') {
2004 				if (yych <= 'D') {
2005 					if (yych <= 'A') goto yy436;
2006 					if (yych <= 'C') goto yy12;
2007 					goto yy436;
2008 				} else {
2009 					if (yych == 'F') goto yy436;
2010 					goto yy12;
2011 				}
2012 			} else {
2013 				if (yych <= 'P') {
2014 					if (yych <= 'J') goto yy436;
2015 					if (yych <= 'L') goto yy12;
2016 					goto yy436;
2017 				} else {
2018 					if (yych <= 'R') goto yy12;
2019 					if (yych <= 'Y') goto yy436;
2020 					goto yy12;
2021 				}
2022 			}
2023 		}
2024 	} else {
2025 		if (yych <= 'n') {
2026 			if (yych <= 'g') {
2027 				if (yych <= 'd') {
2028 					if (yych <= 'a') goto yy436;
2029 					if (yych <= 'c') goto yy12;
2030 					goto yy436;
2031 				} else {
2032 					if (yych == 'f') goto yy436;
2033 					goto yy12;
2034 				}
2035 			} else {
2036 				if (yych <= 'j') {
2037 					if (yych == 'i') goto yy12;
2038 					goto yy436;
2039 				} else {
2040 					if (yych <= 'l') goto yy12;
2041 					if (yych <= 'm') goto yy436;
2042 					goto yy444;
2043 				}
2044 			}
2045 		} else {
2046 			if (yych <= 'u') {
2047 				if (yych <= 'r') {
2048 					if (yych <= 'p') goto yy436;
2049 					if (yych <= 'q') goto yy12;
2050 					goto yy445;
2051 				} else {
2052 					if (yych <= 's') goto yy439;
2053 					if (yych <= 't') goto yy442;
2054 					goto yy436;
2055 				}
2056 			} else {
2057 				if (yych <= 'x') {
2058 					if (yych == 'w') goto yy436;
2059 					goto yy12;
2060 				} else {
2061 					if (yych <= 'y') goto yy436;
2062 					if (yych == 0xC2) goto yy436;
2063 					goto yy12;
2064 				}
2065 			}
2066 		}
2067 	}
2068 yy29:
2069 	YYDEBUG(29, *YYCURSOR);
2070 	yyaccept = 1;
2071 	yych = *(YYMARKER = ++YYCURSOR);
2072 	if (yych <= 'a') {
2073 		if (yych <= 'A') {
2074 			if (yych <= '-') {
2075 				if (yych <= 0x1F) {
2076 					if (yych == '\t') goto yy434;
2077 					goto yy12;
2078 				} else {
2079 					if (yych <= ' ') goto yy436;
2080 					if (yych <= ',') goto yy12;
2081 					goto yy447;
2082 				}
2083 			} else {
2084 				if (yych <= '9') {
2085 					if (yych <= '.') goto yy448;
2086 					if (yych <= '/') goto yy446;
2087 					goto yy443;
2088 				} else {
2089 					if (yych <= ':') goto yy457;
2090 					if (yych <= '@') goto yy12;
2091 					goto yy436;
2092 				}
2093 			}
2094 		} else {
2095 			if (yych <= 'J') {
2096 				if (yych <= 'E') {
2097 					if (yych == 'D') goto yy436;
2098 					goto yy12;
2099 				} else {
2100 					if (yych == 'G') goto yy12;
2101 					goto yy436;
2102 				}
2103 			} else {
2104 				if (yych <= 'R') {
2105 					if (yych <= 'L') goto yy12;
2106 					if (yych <= 'P') goto yy436;
2107 					goto yy12;
2108 				} else {
2109 					if (yych <= 'Y') goto yy436;
2110 					if (yych <= '`') goto yy12;
2111 					goto yy436;
2112 				}
2113 			}
2114 		}
2115 	} else {
2116 		if (yych <= 'p') {
2117 			if (yych <= 'h') {
2118 				if (yych <= 'e') {
2119 					if (yych == 'd') goto yy436;
2120 					goto yy12;
2121 				} else {
2122 					if (yych == 'g') goto yy12;
2123 					goto yy436;
2124 				}
2125 			} else {
2126 				if (yych <= 'l') {
2127 					if (yych == 'j') goto yy436;
2128 					goto yy12;
2129 				} else {
2130 					if (yych == 'n') goto yy444;
2131 					goto yy436;
2132 				}
2133 			}
2134 		} else {
2135 			if (yych <= 'v') {
2136 				if (yych <= 's') {
2137 					if (yych <= 'q') goto yy12;
2138 					if (yych <= 'r') goto yy445;
2139 					goto yy439;
2140 				} else {
2141 					if (yych <= 't') goto yy442;
2142 					if (yych <= 'u') goto yy436;
2143 					goto yy12;
2144 				}
2145 			} else {
2146 				if (yych <= 'y') {
2147 					if (yych == 'x') goto yy12;
2148 					goto yy436;
2149 				} else {
2150 					if (yych == 0xC2) goto yy436;
2151 					goto yy12;
2152 				}
2153 			}
2154 		}
2155 	}
2156 yy30:
2157 	YYDEBUG(30, *YYCURSOR);
2158 	yyaccept = 1;
2159 	yych = *(YYMARKER = ++YYCURSOR);
2160 	if (yybm[0+yych] & 2) {
2161 		goto yy56;
2162 	}
2163 	switch (yych) {
2164 	case '+':
2165 	case '-':	goto yy414;
2166 	case '0':
2167 	case '1':	goto yy411;
2168 	case '2':	goto yy412;
2169 	case '3':
2170 	case '4':
2171 	case '5':
2172 	case '6':
2173 	case '7':
2174 	case '8':
2175 	case '9':	goto yy413;
2176 	default:	goto yy12;
2177 	}
2178 yy31:
2179 	YYDEBUG(31, *YYCURSOR);
2180 	yyaccept = 0;
2181 	yych = *(YYMARKER = ++YYCURSOR);
2182 	if (yych <= '9') {
2183 		if (yych <= '(') {
2184 			if (yych <= '\t') {
2185 				if (yych <= 0x08) goto yy3;
2186 				goto yy230;
2187 			} else {
2188 				if (yych == ' ') goto yy230;
2189 				goto yy3;
2190 			}
2191 		} else {
2192 			if (yych <= ',') {
2193 				if (yych <= ')') goto yy174;
2194 				goto yy3;
2195 			} else {
2196 				if (yych == '/') goto yy3;
2197 				goto yy230;
2198 			}
2199 		}
2200 	} else {
2201 		if (yych <= 'V') {
2202 			if (yych <= 'H') {
2203 				if (yych <= '@') goto yy3;
2204 				goto yy175;
2205 			} else {
2206 				if (yych <= 'I') goto yy410;
2207 				if (yych <= 'U') goto yy175;
2208 				goto yy409;
2209 			}
2210 		} else {
2211 			if (yych <= 'Z') {
2212 				if (yych == 'X') goto yy409;
2213 				goto yy175;
2214 			} else {
2215 				if (yych <= '`') goto yy3;
2216 				if (yych <= 'z') goto yy180;
2217 				goto yy3;
2218 			}
2219 		}
2220 	}
2221 yy32:
2222 	YYDEBUG(32, *YYCURSOR);
2223 	yyaccept = 0;
2224 	yych = *(YYMARKER = ++YYCURSOR);
2225 	if (yych <= '.') {
2226 		if (yych <= ' ') {
2227 			if (yych == '\t') goto yy230;
2228 			if (yych <= 0x1F) goto yy3;
2229 			goto yy230;
2230 		} else {
2231 			if (yych == ')') goto yy174;
2232 			if (yych <= ',') goto yy3;
2233 			goto yy230;
2234 		}
2235 	} else {
2236 		if (yych <= 'H') {
2237 			if (yych <= '/') goto yy3;
2238 			if (yych <= '9') goto yy230;
2239 			if (yych <= '@') goto yy3;
2240 			goto yy175;
2241 		} else {
2242 			if (yych <= 'Z') {
2243 				if (yych <= 'I') goto yy406;
2244 				goto yy175;
2245 			} else {
2246 				if (yych <= '`') goto yy3;
2247 				if (yych <= 'z') goto yy180;
2248 				goto yy3;
2249 			}
2250 		}
2251 	}
2252 yy33:
2253 	YYDEBUG(33, *YYCURSOR);
2254 	yyaccept = 0;
2255 	yych = *(YYMARKER = ++YYCURSOR);
2256 	if (yych <= '.') {
2257 		if (yych <= ' ') {
2258 			if (yych == '\t') goto yy230;
2259 			if (yych <= 0x1F) goto yy3;
2260 			goto yy230;
2261 		} else {
2262 			if (yych == ')') goto yy174;
2263 			if (yych <= ',') goto yy3;
2264 			goto yy230;
2265 		}
2266 	} else {
2267 		if (yych <= 'H') {
2268 			if (yych <= '/') goto yy3;
2269 			if (yych <= '9') goto yy230;
2270 			if (yych <= '@') goto yy3;
2271 			goto yy175;
2272 		} else {
2273 			if (yych <= 'Z') {
2274 				if (yych <= 'I') goto yy404;
2275 				goto yy175;
2276 			} else {
2277 				if (yych <= '`') goto yy3;
2278 				if (yych <= 'z') goto yy180;
2279 				goto yy3;
2280 			}
2281 		}
2282 	}
2283 yy34:
2284 	YYDEBUG(34, *YYCURSOR);
2285 	yych = *++YYCURSOR;
2286 	if (yych <= 'U') {
2287 		if (yych <= '@') {
2288 			if (yych == ')') goto yy174;
2289 			goto yy3;
2290 		} else {
2291 			if (yych <= 'A') goto yy387;
2292 			if (yych <= 'T') goto yy175;
2293 			goto yy386;
2294 		}
2295 	} else {
2296 		if (yych <= 'a') {
2297 			if (yych <= 'Z') goto yy175;
2298 			if (yych <= '`') goto yy3;
2299 			goto yy396;
2300 		} else {
2301 			if (yych == 'u') goto yy395;
2302 			if (yych <= 'z') goto yy180;
2303 			goto yy3;
2304 		}
2305 	}
2306 yy35:
2307 	YYDEBUG(35, *YYCURSOR);
2308 	yych = *++YYCURSOR;
2309 	if (yych <= 'U') {
2310 		if (yych <= '@') {
2311 			if (yych == ')') goto yy174;
2312 			goto yy3;
2313 		} else {
2314 			if (yych <= 'A') goto yy387;
2315 			if (yych <= 'T') goto yy175;
2316 			goto yy386;
2317 		}
2318 	} else {
2319 		if (yych <= 'a') {
2320 			if (yych <= 'Z') goto yy175;
2321 			if (yych <= '`') goto yy3;
2322 			goto yy387;
2323 		} else {
2324 			if (yych == 'u') goto yy386;
2325 			if (yych <= 'z') goto yy175;
2326 			goto yy3;
2327 		}
2328 	}
2329 yy36:
2330 	YYDEBUG(36, *YYCURSOR);
2331 	yych = *++YYCURSOR;
2332 	if (yych <= 'U') {
2333 		if (yych <= 'F') {
2334 			if (yych == ')') goto yy174;
2335 			if (yych <= '@') goto yy3;
2336 			goto yy175;
2337 		} else {
2338 			if (yych <= 'O') {
2339 				if (yych <= 'G') goto yy365;
2340 				goto yy175;
2341 			} else {
2342 				if (yych <= 'P') goto yy364;
2343 				if (yych <= 'T') goto yy175;
2344 				goto yy363;
2345 			}
2346 		}
2347 	} else {
2348 		if (yych <= 'o') {
2349 			if (yych <= '`') {
2350 				if (yych <= 'Z') goto yy175;
2351 				goto yy3;
2352 			} else {
2353 				if (yych == 'g') goto yy377;
2354 				goto yy180;
2355 			}
2356 		} else {
2357 			if (yych <= 't') {
2358 				if (yych <= 'p') goto yy376;
2359 				goto yy180;
2360 			} else {
2361 				if (yych <= 'u') goto yy375;
2362 				if (yych <= 'z') goto yy180;
2363 				goto yy3;
2364 			}
2365 		}
2366 	}
2367 yy37:
2368 	YYDEBUG(37, *YYCURSOR);
2369 	yych = *++YYCURSOR;
2370 	if (yych <= 'U') {
2371 		if (yych <= 'F') {
2372 			if (yych == ')') goto yy174;
2373 			if (yych <= '@') goto yy3;
2374 			goto yy175;
2375 		} else {
2376 			if (yych <= 'O') {
2377 				if (yych <= 'G') goto yy365;
2378 				goto yy175;
2379 			} else {
2380 				if (yych <= 'P') goto yy364;
2381 				if (yych <= 'T') goto yy175;
2382 				goto yy363;
2383 			}
2384 		}
2385 	} else {
2386 		if (yych <= 'o') {
2387 			if (yych <= '`') {
2388 				if (yych <= 'Z') goto yy175;
2389 				goto yy3;
2390 			} else {
2391 				if (yych == 'g') goto yy365;
2392 				goto yy175;
2393 			}
2394 		} else {
2395 			if (yych <= 't') {
2396 				if (yych <= 'p') goto yy364;
2397 				goto yy175;
2398 			} else {
2399 				if (yych <= 'u') goto yy363;
2400 				if (yych <= 'z') goto yy175;
2401 				goto yy3;
2402 			}
2403 		}
2404 	}
2405 yy38:
2406 	YYDEBUG(38, *YYCURSOR);
2407 	yych = *++YYCURSOR;
2408 	if (yych <= 'C') {
2409 		if (yych <= ')') {
2410 			if (yych <= '(') goto yy3;
2411 			goto yy174;
2412 		} else {
2413 			if (yych <= '@') goto yy3;
2414 			if (yych <= 'B') goto yy175;
2415 			goto yy353;
2416 		}
2417 	} else {
2418 		if (yych <= 'b') {
2419 			if (yych <= 'Z') goto yy175;
2420 			if (yych <= '`') goto yy3;
2421 			goto yy180;
2422 		} else {
2423 			if (yych <= 'c') goto yy358;
2424 			if (yych <= 'z') goto yy180;
2425 			goto yy3;
2426 		}
2427 	}
2428 yy39:
2429 	YYDEBUG(39, *YYCURSOR);
2430 	yych = *++YYCURSOR;
2431 	if (yych <= 'C') {
2432 		if (yych <= ')') {
2433 			if (yych <= '(') goto yy3;
2434 			goto yy174;
2435 		} else {
2436 			if (yych <= '@') goto yy3;
2437 			if (yych <= 'B') goto yy175;
2438 			goto yy353;
2439 		}
2440 	} else {
2441 		if (yych <= 'b') {
2442 			if (yych <= 'Z') goto yy175;
2443 			if (yych <= '`') goto yy3;
2444 			goto yy175;
2445 		} else {
2446 			if (yych <= 'c') goto yy353;
2447 			if (yych <= 'z') goto yy175;
2448 			goto yy3;
2449 		}
2450 	}
2451 yy40:
2452 	YYDEBUG(40, *YYCURSOR);
2453 	yych = *++YYCURSOR;
2454 	if (yych <= 'E') {
2455 		if (yych <= ')') {
2456 			if (yych <= '(') goto yy3;
2457 			goto yy174;
2458 		} else {
2459 			if (yych <= '@') goto yy3;
2460 			if (yych <= 'D') goto yy175;
2461 			goto yy226;
2462 		}
2463 	} else {
2464 		if (yych <= 'd') {
2465 			if (yych <= 'Z') goto yy175;
2466 			if (yych <= '`') goto yy3;
2467 			goto yy180;
2468 		} else {
2469 			if (yych <= 'e') goto yy344;
2470 			if (yych <= 'z') goto yy180;
2471 			goto yy3;
2472 		}
2473 	}
2474 yy41:
2475 	YYDEBUG(41, *YYCURSOR);
2476 	yych = *++YYCURSOR;
2477 	if (yych <= 'E') {
2478 		if (yych <= ')') {
2479 			if (yych <= '(') goto yy3;
2480 			goto yy174;
2481 		} else {
2482 			if (yych <= '@') goto yy3;
2483 			if (yych <= 'D') goto yy175;
2484 			goto yy226;
2485 		}
2486 	} else {
2487 		if (yych <= 'd') {
2488 			if (yych <= 'Z') goto yy175;
2489 			if (yych <= '`') goto yy3;
2490 			goto yy175;
2491 		} else {
2492 			if (yych <= 'e') goto yy226;
2493 			if (yych <= 'z') goto yy175;
2494 			goto yy3;
2495 		}
2496 	}
2497 yy42:
2498 	YYDEBUG(42, *YYCURSOR);
2499 	yych = *++YYCURSOR;
2500 	if (yych <= 'E') {
2501 		if (yych <= ')') {
2502 			if (yych <= '(') goto yy3;
2503 			goto yy174;
2504 		} else {
2505 			if (yych <= '@') goto yy3;
2506 			if (yych <= 'D') goto yy175;
2507 			goto yy199;
2508 		}
2509 	} else {
2510 		if (yych <= 'd') {
2511 			if (yych <= 'Z') goto yy175;
2512 			if (yych <= '`') goto yy3;
2513 			goto yy180;
2514 		} else {
2515 			if (yych <= 'e') goto yy213;
2516 			if (yych <= 'z') goto yy180;
2517 			goto yy3;
2518 		}
2519 	}
2520 yy43:
2521 	YYDEBUG(43, *YYCURSOR);
2522 	yych = *++YYCURSOR;
2523 	if (yych <= 'E') {
2524 		if (yych <= ')') {
2525 			if (yych <= '(') goto yy3;
2526 			goto yy174;
2527 		} else {
2528 			if (yych <= '@') goto yy3;
2529 			if (yych <= 'D') goto yy175;
2530 			goto yy199;
2531 		}
2532 	} else {
2533 		if (yych <= 'd') {
2534 			if (yych <= 'Z') goto yy175;
2535 			if (yych <= '`') goto yy3;
2536 			goto yy175;
2537 		} else {
2538 			if (yych <= 'e') goto yy199;
2539 			if (yych <= 'z') goto yy175;
2540 			goto yy3;
2541 		}
2542 	}
2543 yy44:
2544 	YYDEBUG(44, *YYCURSOR);
2545 	yych = *++YYCURSOR;
2546 	if (yych <= 'L') {
2547 		if (yych == ')') goto yy174;
2548 		if (yych <= '@') goto yy3;
2549 		goto yy175;
2550 	} else {
2551 		if (yych <= 'Z') {
2552 			if (yych <= 'M') goto yy191;
2553 			goto yy175;
2554 		} else {
2555 			if (yych <= '`') goto yy3;
2556 			if (yych <= 'z') goto yy180;
2557 			goto yy3;
2558 		}
2559 	}
2560 yy45:
2561 	YYDEBUG(45, *YYCURSOR);
2562 	yych = *++YYCURSOR;
2563 	if (yych <= '@') goto yy12;
2564 	if (yych <= 'Z') goto yy190;
2565 	if (yych <= '`') goto yy12;
2566 	if (yych <= 'z') goto yy190;
2567 	goto yy12;
2568 yy46:
2569 	YYDEBUG(46, *YYCURSOR);
2570 	yych = *++YYCURSOR;
2571 	if (yych <= '@') {
2572 		if (yych == ')') goto yy174;
2573 		goto yy3;
2574 	} else {
2575 		if (yych <= 'Z') goto yy175;
2576 		if (yych <= '`') goto yy3;
2577 		if (yych <= 'z') goto yy180;
2578 		goto yy3;
2579 	}
2580 yy47:
2581 	YYDEBUG(47, *YYCURSOR);
2582 	yych = *++YYCURSOR;
2583 	if (yych <= '@') {
2584 		if (yych == ')') goto yy174;
2585 		goto yy3;
2586 	} else {
2587 		if (yych <= 'Z') goto yy175;
2588 		if (yych <= '`') goto yy3;
2589 		if (yych <= 'z') goto yy175;
2590 		goto yy3;
2591 	}
2592 yy48:
2593 	YYDEBUG(48, *YYCURSOR);
2594 	yyaccept = 2;
2595 	yych = *(YYMARKER = ++YYCURSOR);
2596 	if (yybm[0+yych] & 2) {
2597 		goto yy56;
2598 	}
2599 	if (yych <= '/') goto yy49;
2600 	if (yych <= '9') goto yy54;
2601 yy49:
2602 	YYDEBUG(49, *YYCURSOR);
2603 #line 1803 "parse_date.re"
2604 	{
2605 		goto std;
2606 	}
2607 #line 2605 "<stdout>"
2608 yy50:
2609 	YYDEBUG(50, *YYCURSOR);
2610 	yych = *++YYCURSOR;
2611 	goto yy49;
2612 yy51:
2613 	YYDEBUG(51, *YYCURSOR);
2614 	++YYCURSOR;
2615 	YYDEBUG(52, *YYCURSOR);
2616 #line 1808 "parse_date.re"
2617 	{
2618 		s->pos = cursor; s->line++;
2619 		goto std;
2620 	}
2621 #line 2619 "<stdout>"
2622 yy53:
2623 	YYDEBUG(53, *YYCURSOR);
2624 	yych = *++YYCURSOR;
2625 	goto yy12;
2626 yy54:
2627 	YYDEBUG(54, *YYCURSOR);
2628 	yych = *++YYCURSOR;
2629 	if (yych <= '/') goto yy59;
2630 	if (yych <= '9') goto yy70;
2631 	goto yy59;
2632 yy55:
2633 	YYDEBUG(55, *YYCURSOR);
2634 	YYCURSOR = YYMARKER;
2635 	if (yyaccept <= 16) {
2636 		if (yyaccept <= 8) {
2637 			if (yyaccept <= 4) {
2638 				if (yyaccept <= 2) {
2639 					if (yyaccept <= 1) {
2640 						if (yyaccept == 0) {
2641 							goto yy3;
2642 						} else {
2643 							goto yy12;
2644 						}
2645 					} else {
2646 						goto yy49;
2647 					}
2648 				} else {
2649 					if (yyaccept == 3) {
2650 						goto yy84;
2651 					} else {
2652 						goto yy201;
2653 					}
2654 				}
2655 			} else {
2656 				if (yyaccept <= 6) {
2657 					if (yyaccept == 5) {
2658 						goto yy228;
2659 					} else {
2660 						goto yy242;
2661 					}
2662 				} else {
2663 					if (yyaccept == 7) {
2664 						goto yy256;
2665 					} else {
2666 						goto yy367;
2667 					}
2668 				}
2669 			}
2670 		} else {
2671 			if (yyaccept <= 12) {
2672 				if (yyaccept <= 10) {
2673 					if (yyaccept == 9) {
2674 						goto yy450;
2675 					} else {
2676 						goto yy465;
2677 					}
2678 				} else {
2679 					if (yyaccept == 11) {
2680 						goto yy586;
2681 					} else {
2682 						goto yy631;
2683 					}
2684 				}
2685 			} else {
2686 				if (yyaccept <= 14) {
2687 					if (yyaccept == 13) {
2688 						goto yy641;
2689 					} else {
2690 						goto yy738;
2691 					}
2692 				} else {
2693 					if (yyaccept == 15) {
2694 						goto yy758;
2695 					} else {
2696 						goto yy789;
2697 					}
2698 				}
2699 			}
2700 		}
2701 	} else {
2702 		if (yyaccept <= 25) {
2703 			if (yyaccept <= 21) {
2704 				if (yyaccept <= 19) {
2705 					if (yyaccept <= 18) {
2706 						if (yyaccept == 17) {
2707 							goto yy796;
2708 						} else {
2709 							goto yy823;
2710 						}
2711 					} else {
2712 						goto yy768;
2713 					}
2714 				} else {
2715 					if (yyaccept == 20) {
2716 						goto yy429;
2717 					} else {
2718 						goto yy948;
2719 					}
2720 				}
2721 			} else {
2722 				if (yyaccept <= 23) {
2723 					if (yyaccept == 22) {
2724 						goto yy817;
2725 					} else {
2726 						goto yy1042;
2727 					}
2728 				} else {
2729 					if (yyaccept == 24) {
2730 						goto yy1050;
2731 					} else {
2732 						goto yy1094;
2733 					}
2734 				}
2735 			}
2736 		} else {
2737 			if (yyaccept <= 29) {
2738 				if (yyaccept <= 27) {
2739 					if (yyaccept == 26) {
2740 						goto yy1118;
2741 					} else {
2742 						goto yy1294;
2743 					}
2744 				} else {
2745 					if (yyaccept == 28) {
2746 						goto yy1389;
2747 					} else {
2748 						goto yy1427;
2749 					}
2750 				}
2751 			} else {
2752 				if (yyaccept <= 31) {
2753 					if (yyaccept == 30) {
2754 						goto yy1430;
2755 					} else {
2756 						goto yy1510;
2757 					}
2758 				} else {
2759 					if (yyaccept == 32) {
2760 						goto yy1518;
2761 					} else {
2762 						goto yy1541;
2763 					}
2764 				}
2765 			}
2766 		}
2767 	}
2768 yy56:
2769 	YYDEBUG(56, *YYCURSOR);
2770 	++YYCURSOR;
2771 	if ((YYLIMIT - YYCURSOR) < 24) YYFILL(24);
2772 	yych = *YYCURSOR;
2773 	YYDEBUG(57, *YYCURSOR);
2774 	if (yybm[0+yych] & 2) {
2775 		goto yy56;
2776 	}
2777 	if (yych <= '/') goto yy55;
2778 	if (yych <= '9') goto yy54;
2779 	goto yy55;
2780 yy58:
2781 	YYDEBUG(58, *YYCURSOR);
2782 	++YYCURSOR;
2783 	if ((YYLIMIT - YYCURSOR) < 12) YYFILL(12);
2784 	yych = *YYCURSOR;
2785 yy59:
2786 	YYDEBUG(59, *YYCURSOR);
2787 	if (yych <= 'X') {
2788 		if (yych <= 'G') {
2789 			if (yych <= ' ') {
2790 				if (yych == '\t') goto yy58;
2791 				if (yych <= 0x1F) goto yy55;
2792 				goto yy58;
2793 			} else {
2794 				if (yych <= 'D') {
2795 					if (yych <= 'C') goto yy55;
2796 					goto yy65;
2797 				} else {
2798 					if (yych == 'F') goto yy66;
2799 					goto yy55;
2800 				}
2801 			}
2802 		} else {
2803 			if (yych <= 'S') {
2804 				if (yych <= 'L') {
2805 					if (yych <= 'H') goto yy64;
2806 					goto yy55;
2807 				} else {
2808 					if (yych <= 'M') goto yy60;
2809 					if (yych <= 'R') goto yy55;
2810 					goto yy63;
2811 				}
2812 			} else {
2813 				if (yych <= 'U') {
2814 					if (yych <= 'T') goto yy69;
2815 					goto yy62;
2816 				} else {
2817 					if (yych == 'W') goto yy68;
2818 					goto yy55;
2819 				}
2820 			}
2821 		}
2822 	} else {
2823 		if (yych <= 'r') {
2824 			if (yych <= 'f') {
2825 				if (yych <= 'c') {
2826 					if (yych <= 'Y') goto yy67;
2827 					goto yy55;
2828 				} else {
2829 					if (yych <= 'd') goto yy65;
2830 					if (yych <= 'e') goto yy55;
2831 					goto yy66;
2832 				}
2833 			} else {
2834 				if (yych <= 'h') {
2835 					if (yych <= 'g') goto yy55;
2836 					goto yy64;
2837 				} else {
2838 					if (yych != 'm') goto yy55;
2839 				}
2840 			}
2841 		} else {
2842 			if (yych <= 'w') {
2843 				if (yych <= 't') {
2844 					if (yych <= 's') goto yy63;
2845 					goto yy69;
2846 				} else {
2847 					if (yych <= 'u') goto yy62;
2848 					if (yych <= 'v') goto yy55;
2849 					goto yy68;
2850 				}
2851 			} else {
2852 				if (yych <= 'y') {
2853 					if (yych <= 'x') goto yy55;
2854 					goto yy67;
2855 				} else {
2856 					if (yych == 0xC2) goto yy61;
2857 					goto yy55;
2858 				}
2859 			}
2860 		}
2861 	}
2862 yy60:
2863 	YYDEBUG(60, *YYCURSOR);
2864 	yych = *++YYCURSOR;
2865 	if (yych <= 'S') {
2866 		if (yych <= 'N') {
2867 			if (yych == 'I') goto yy148;
2868 			goto yy55;
2869 		} else {
2870 			if (yych <= 'O') goto yy147;
2871 			if (yych <= 'R') goto yy55;
2872 			goto yy149;
2873 		}
2874 	} else {
2875 		if (yych <= 'n') {
2876 			if (yych == 'i') goto yy148;
2877 			goto yy55;
2878 		} else {
2879 			if (yych <= 'o') goto yy147;
2880 			if (yych == 's') goto yy149;
2881 			goto yy55;
2882 		}
2883 	}
2884 yy61:
2885 	YYDEBUG(61, *YYCURSOR);
2886 	yych = *++YYCURSOR;
2887 	if (yych == 0xB5) goto yy144;
2888 	goto yy55;
2889 yy62:
2890 	YYDEBUG(62, *YYCURSOR);
2891 	yych = *++YYCURSOR;
2892 	if (yych == 'S') goto yy142;
2893 	if (yych == 's') goto yy142;
2894 	goto yy55;
2895 yy63:
2896 	YYDEBUG(63, *YYCURSOR);
2897 	yych = *++YYCURSOR;
2898 	if (yych <= 'U') {
2899 		if (yych <= 'D') {
2900 			if (yych == 'A') goto yy129;
2901 			goto yy55;
2902 		} else {
2903 			if (yych <= 'E') goto yy130;
2904 			if (yych <= 'T') goto yy55;
2905 			goto yy128;
2906 		}
2907 	} else {
2908 		if (yych <= 'd') {
2909 			if (yych == 'a') goto yy129;
2910 			goto yy55;
2911 		} else {
2912 			if (yych <= 'e') goto yy130;
2913 			if (yych == 'u') goto yy128;
2914 			goto yy55;
2915 		}
2916 	}
2917 yy64:
2918 	YYDEBUG(64, *YYCURSOR);
2919 	yych = *++YYCURSOR;
2920 	if (yych == 'O') goto yy126;
2921 	if (yych == 'o') goto yy126;
2922 	goto yy55;
2923 yy65:
2924 	YYDEBUG(65, *YYCURSOR);
2925 	yych = *++YYCURSOR;
2926 	if (yych == 'A') goto yy125;
2927 	if (yych == 'a') goto yy125;
2928 	goto yy55;
2929 yy66:
2930 	YYDEBUG(66, *YYCURSOR);
2931 	yych = *++YYCURSOR;
2932 	if (yych <= 'R') {
2933 		if (yych == 'O') goto yy110;
2934 		if (yych <= 'Q') goto yy55;
2935 		goto yy109;
2936 	} else {
2937 		if (yych <= 'o') {
2938 			if (yych <= 'n') goto yy55;
2939 			goto yy110;
2940 		} else {
2941 			if (yych == 'r') goto yy109;
2942 			goto yy55;
2943 		}
2944 	}
2945 yy67:
2946 	YYDEBUG(67, *YYCURSOR);
2947 	yych = *++YYCURSOR;
2948 	if (yych == 'E') goto yy106;
2949 	if (yych == 'e') goto yy106;
2950 	goto yy55;
2951 yy68:
2952 	YYDEBUG(68, *YYCURSOR);
2953 	yych = *++YYCURSOR;
2954 	if (yych == 'E') goto yy94;
2955 	if (yych == 'e') goto yy94;
2956 	goto yy55;
2957 yy69:
2958 	YYDEBUG(69, *YYCURSOR);
2959 	yych = *++YYCURSOR;
2960 	if (yych <= 'U') {
2961 		if (yych == 'H') goto yy81;
2962 		if (yych <= 'T') goto yy55;
2963 		goto yy82;
2964 	} else {
2965 		if (yych <= 'h') {
2966 			if (yych <= 'g') goto yy55;
2967 			goto yy81;
2968 		} else {
2969 			if (yych == 'u') goto yy82;
2970 			goto yy55;
2971 		}
2972 	}
2973 yy70:
2974 	YYDEBUG(70, *YYCURSOR);
2975 	yych = *++YYCURSOR;
2976 	if (yych <= '/') goto yy59;
2977 	if (yych >= ':') goto yy59;
2978 	YYDEBUG(71, *YYCURSOR);
2979 	yych = *++YYCURSOR;
2980 	if (yych <= '/') goto yy59;
2981 	if (yych >= ':') goto yy59;
2982 	YYDEBUG(72, *YYCURSOR);
2983 	yych = *++YYCURSOR;
2984 	if (yych <= '/') goto yy59;
2985 	if (yych >= ':') goto yy59;
2986 yy73:
2987 	YYDEBUG(73, *YYCURSOR);
2988 	yych = *++YYCURSOR;
2989 	if (yych <= '/') goto yy59;
2990 	if (yych >= ':') goto yy59;
2991 yy74:
2992 	YYDEBUG(74, *YYCURSOR);
2993 	yych = *++YYCURSOR;
2994 	if (yych <= '/') goto yy59;
2995 	if (yych >= ':') goto yy59;
2996 yy75:
2997 	YYDEBUG(75, *YYCURSOR);
2998 	yych = *++YYCURSOR;
2999 	if (yych <= '/') goto yy59;
3000 	if (yych >= ':') goto yy59;
3001 yy76:
3002 	YYDEBUG(76, *YYCURSOR);
3003 	yych = *++YYCURSOR;
3004 	if (yych <= '/') goto yy59;
3005 	if (yych >= ':') goto yy59;
3006 yy77:
3007 	YYDEBUG(77, *YYCURSOR);
3008 	yych = *++YYCURSOR;
3009 	if (yych <= '/') goto yy59;
3010 	if (yych >= ':') goto yy59;
3011 	YYDEBUG(78, *YYCURSOR);
3012 	yych = *++YYCURSOR;
3013 	if (yych <= '/') goto yy59;
3014 	if (yych >= ':') goto yy59;
3015 	YYDEBUG(79, *YYCURSOR);
3016 	yych = *++YYCURSOR;
3017 	if (yych <= '/') goto yy59;
3018 	if (yych >= ':') goto yy59;
3019 	YYDEBUG(80, *YYCURSOR);
3020 	yych = *++YYCURSOR;
3021 	if (yych <= '/') goto yy59;
3022 	if (yych <= '9') goto yy58;
3023 	goto yy59;
3024 yy81:
3025 	YYDEBUG(81, *YYCURSOR);
3026 	yych = *++YYCURSOR;
3027 	if (yych == 'U') goto yy89;
3028 	if (yych == 'u') goto yy89;
3029 	goto yy55;
3030 yy82:
3031 	YYDEBUG(82, *YYCURSOR);
3032 	yych = *++YYCURSOR;
3033 	if (yych == 'E') goto yy83;
3034 	if (yych != 'e') goto yy55;
3035 yy83:
3036 	YYDEBUG(83, *YYCURSOR);
3037 	yyaccept = 3;
3038 	yych = *(YYMARKER = ++YYCURSOR);
3039 	if (yych == 'S') goto yy85;
3040 	if (yych == 's') goto yy85;
3041 yy84:
3042 	YYDEBUG(84, *YYCURSOR);
3043 #line 1787 "parse_date.re"
3044 	{
3045 		timelib_ull i;
3046 		DEBUG_OUTPUT("relative");
3047 		TIMELIB_INIT;
3048 		TIMELIB_HAVE_RELATIVE();
3049 
3050 		while(*ptr) {
3051 			i = timelib_get_unsigned_nr((char **) &ptr, 24);
3052 			timelib_eat_spaces((char **) &ptr);
3053 			timelib_set_relative((char **) &ptr, i, 1, s);
3054 		}
3055 		TIMELIB_DEINIT;
3056 		return TIMELIB_RELATIVE;
3057 	}
3058 #line 3056 "<stdout>"
3059 yy85:
3060 	YYDEBUG(85, *YYCURSOR);
3061 	yych = *++YYCURSOR;
3062 	if (yych == 'D') goto yy86;
3063 	if (yych != 'd') goto yy55;
3064 yy86:
3065 	YYDEBUG(86, *YYCURSOR);
3066 	yych = *++YYCURSOR;
3067 	if (yych == 'A') goto yy87;
3068 	if (yych != 'a') goto yy55;
3069 yy87:
3070 	YYDEBUG(87, *YYCURSOR);
3071 	yych = *++YYCURSOR;
3072 	if (yych == 'Y') goto yy88;
3073 	if (yych != 'y') goto yy55;
3074 yy88:
3075 	YYDEBUG(88, *YYCURSOR);
3076 	yych = *++YYCURSOR;
3077 	goto yy84;
3078 yy89:
3079 	YYDEBUG(89, *YYCURSOR);
3080 	yyaccept = 3;
3081 	yych = *(YYMARKER = ++YYCURSOR);
3082 	if (yych == 'R') goto yy90;
3083 	if (yych != 'r') goto yy84;
3084 yy90:
3085 	YYDEBUG(90, *YYCURSOR);
3086 	yych = *++YYCURSOR;
3087 	if (yych == 'S') goto yy91;
3088 	if (yych != 's') goto yy55;
3089 yy91:
3090 	YYDEBUG(91, *YYCURSOR);
3091 	yych = *++YYCURSOR;
3092 	if (yych == 'D') goto yy92;
3093 	if (yych != 'd') goto yy55;
3094 yy92:
3095 	YYDEBUG(92, *YYCURSOR);
3096 	yych = *++YYCURSOR;
3097 	if (yych == 'A') goto yy93;
3098 	if (yych != 'a') goto yy55;
3099 yy93:
3100 	YYDEBUG(93, *YYCURSOR);
3101 	yych = *++YYCURSOR;
3102 	if (yych == 'Y') goto yy88;
3103 	if (yych == 'y') goto yy88;
3104 	goto yy55;
3105 yy94:
3106 	YYDEBUG(94, *YYCURSOR);
3107 	yych = *++YYCURSOR;
3108 	if (yych <= 'E') {
3109 		if (yych <= 'C') goto yy55;
3110 		if (yych <= 'D') goto yy96;
3111 	} else {
3112 		if (yych <= 'c') goto yy55;
3113 		if (yych <= 'd') goto yy96;
3114 		if (yych >= 'f') goto yy55;
3115 	}
3116 	YYDEBUG(95, *YYCURSOR);
3117 	yych = *++YYCURSOR;
3118 	if (yych == 'K') goto yy102;
3119 	if (yych == 'k') goto yy102;
3120 	goto yy55;
3121 yy96:
3122 	YYDEBUG(96, *YYCURSOR);
3123 	yyaccept = 3;
3124 	yych = *(YYMARKER = ++YYCURSOR);
3125 	if (yych == 'N') goto yy97;
3126 	if (yych != 'n') goto yy84;
3127 yy97:
3128 	YYDEBUG(97, *YYCURSOR);
3129 	yych = *++YYCURSOR;
3130 	if (yych == 'E') goto yy98;
3131 	if (yych != 'e') goto yy55;
3132 yy98:
3133 	YYDEBUG(98, *YYCURSOR);
3134 	yych = *++YYCURSOR;
3135 	if (yych == 'S') goto yy99;
3136 	if (yych != 's') goto yy55;
3137 yy99:
3138 	YYDEBUG(99, *YYCURSOR);
3139 	yych = *++YYCURSOR;
3140 	if (yych == 'D') goto yy100;
3141 	if (yych != 'd') goto yy55;
3142 yy100:
3143 	YYDEBUG(100, *YYCURSOR);
3144 	yych = *++YYCURSOR;
3145 	if (yych == 'A') goto yy101;
3146 	if (yych != 'a') goto yy55;
3147 yy101:
3148 	YYDEBUG(101, *YYCURSOR);
3149 	yych = *++YYCURSOR;
3150 	if (yych == 'Y') goto yy88;
3151 	if (yych == 'y') goto yy88;
3152 	goto yy55;
3153 yy102:
3154 	YYDEBUG(102, *YYCURSOR);
3155 	yyaccept = 3;
3156 	yych = *(YYMARKER = ++YYCURSOR);
3157 	if (yych <= 'S') {
3158 		if (yych == 'D') goto yy103;
3159 		if (yych <= 'R') goto yy84;
3160 		goto yy88;
3161 	} else {
3162 		if (yych <= 'd') {
3163 			if (yych <= 'c') goto yy84;
3164 		} else {
3165 			if (yych == 's') goto yy88;
3166 			goto yy84;
3167 		}
3168 	}
3169 yy103:
3170 	YYDEBUG(103, *YYCURSOR);
3171 	yych = *++YYCURSOR;
3172 	if (yych == 'A') goto yy104;
3173 	if (yych != 'a') goto yy55;
3174 yy104:
3175 	YYDEBUG(104, *YYCURSOR);
3176 	yych = *++YYCURSOR;
3177 	if (yych == 'Y') goto yy105;
3178 	if (yych != 'y') goto yy55;
3179 yy105:
3180 	YYDEBUG(105, *YYCURSOR);
3181 	yych = *++YYCURSOR;
3182 	if (yych == 'S') goto yy88;
3183 	if (yych == 's') goto yy88;
3184 	goto yy84;
3185 yy106:
3186 	YYDEBUG(106, *YYCURSOR);
3187 	yych = *++YYCURSOR;
3188 	if (yych == 'A') goto yy107;
3189 	if (yych != 'a') goto yy55;
3190 yy107:
3191 	YYDEBUG(107, *YYCURSOR);
3192 	yych = *++YYCURSOR;
3193 	if (yych == 'R') goto yy108;
3194 	if (yych != 'r') goto yy55;
3195 yy108:
3196 	YYDEBUG(108, *YYCURSOR);
3197 	yych = *++YYCURSOR;
3198 	if (yych == 'S') goto yy88;
3199 	if (yych == 's') goto yy88;
3200 	goto yy84;
3201 yy109:
3202 	YYDEBUG(109, *YYCURSOR);
3203 	yych = *++YYCURSOR;
3204 	if (yych == 'I') goto yy122;
3205 	if (yych == 'i') goto yy122;
3206 	goto yy55;
3207 yy110:
3208 	YYDEBUG(110, *YYCURSOR);
3209 	yych = *++YYCURSOR;
3210 	if (yych == 'R') goto yy111;
3211 	if (yych != 'r') goto yy55;
3212 yy111:
3213 	YYDEBUG(111, *YYCURSOR);
3214 	yych = *++YYCURSOR;
3215 	if (yych == 'T') goto yy112;
3216 	if (yych != 't') goto yy55;
3217 yy112:
3218 	YYDEBUG(112, *YYCURSOR);
3219 	yych = *++YYCURSOR;
3220 	if (yych <= 'N') {
3221 		if (yych == 'H') goto yy114;
3222 		if (yych <= 'M') goto yy55;
3223 	} else {
3224 		if (yych <= 'h') {
3225 			if (yych <= 'g') goto yy55;
3226 			goto yy114;
3227 		} else {
3228 			if (yych != 'n') goto yy55;
3229 		}
3230 	}
3231 	YYDEBUG(113, *YYCURSOR);
3232 	yych = *++YYCURSOR;
3233 	if (yych == 'I') goto yy119;
3234 	if (yych == 'i') goto yy119;
3235 	goto yy55;
3236 yy114:
3237 	YYDEBUG(114, *YYCURSOR);
3238 	yych = *++YYCURSOR;
3239 	if (yych == 'N') goto yy115;
3240 	if (yych != 'n') goto yy55;
3241 yy115:
3242 	YYDEBUG(115, *YYCURSOR);
3243 	yych = *++YYCURSOR;
3244 	if (yych == 'I') goto yy116;
3245 	if (yych != 'i') goto yy55;
3246 yy116:
3247 	YYDEBUG(116, *YYCURSOR);
3248 	yych = *++YYCURSOR;
3249 	if (yych == 'G') goto yy117;
3250 	if (yych != 'g') goto yy55;
3251 yy117:
3252 	YYDEBUG(117, *YYCURSOR);
3253 	yych = *++YYCURSOR;
3254 	if (yych == 'H') goto yy118;
3255 	if (yych != 'h') goto yy55;
3256 yy118:
3257 	YYDEBUG(118, *YYCURSOR);
3258 	yych = *++YYCURSOR;
3259 	if (yych == 'T') goto yy108;
3260 	if (yych == 't') goto yy108;
3261 	goto yy55;
3262 yy119:
3263 	YYDEBUG(119, *YYCURSOR);
3264 	yych = *++YYCURSOR;
3265 	if (yych == 'G') goto yy120;
3266 	if (yych != 'g') goto yy55;
3267 yy120:
3268 	YYDEBUG(120, *YYCURSOR);
3269 	yych = *++YYCURSOR;
3270 	if (yych == 'H') goto yy121;
3271 	if (yych != 'h') goto yy55;
3272 yy121:
3273 	YYDEBUG(121, *YYCURSOR);
3274 	yych = *++YYCURSOR;
3275 	if (yych == 'T') goto yy108;
3276 	if (yych == 't') goto yy108;
3277 	goto yy55;
3278 yy122:
3279 	YYDEBUG(122, *YYCURSOR);
3280 	yyaccept = 3;
3281 	yych = *(YYMARKER = ++YYCURSOR);
3282 	if (yych == 'D') goto yy123;
3283 	if (yych != 'd') goto yy84;
3284 yy123:
3285 	YYDEBUG(123, *YYCURSOR);
3286 	yych = *++YYCURSOR;
3287 	if (yych == 'A') goto yy124;
3288 	if (yych != 'a') goto yy55;
3289 yy124:
3290 	YYDEBUG(124, *YYCURSOR);
3291 	yych = *++YYCURSOR;
3292 	if (yych == 'Y') goto yy88;
3293 	if (yych == 'y') goto yy88;
3294 	goto yy55;
3295 yy125:
3296 	YYDEBUG(125, *YYCURSOR);
3297 	yych = *++YYCURSOR;
3298 	if (yych == 'Y') goto yy108;
3299 	if (yych == 'y') goto yy108;
3300 	goto yy55;
3301 yy126:
3302 	YYDEBUG(126, *YYCURSOR);
3303 	yych = *++YYCURSOR;
3304 	if (yych == 'U') goto yy127;
3305 	if (yych != 'u') goto yy55;
3306 yy127:
3307 	YYDEBUG(127, *YYCURSOR);
3308 	yych = *++YYCURSOR;
3309 	if (yych == 'R') goto yy108;
3310 	if (yych == 'r') goto yy108;
3311 	goto yy55;
3312 yy128:
3313 	YYDEBUG(128, *YYCURSOR);
3314 	yych = *++YYCURSOR;
3315 	if (yych == 'N') goto yy139;
3316 	if (yych == 'n') goto yy139;
3317 	goto yy55;
3318 yy129:
3319 	YYDEBUG(129, *YYCURSOR);
3320 	yych = *++YYCURSOR;
3321 	if (yych == 'T') goto yy134;
3322 	if (yych == 't') goto yy134;
3323 	goto yy55;
3324 yy130:
3325 	YYDEBUG(130, *YYCURSOR);
3326 	yych = *++YYCURSOR;
3327 	if (yych == 'C') goto yy131;
3328 	if (yych != 'c') goto yy55;
3329 yy131:
3330 	YYDEBUG(131, *YYCURSOR);
3331 	yyaccept = 3;
3332 	yych = *(YYMARKER = ++YYCURSOR);
3333 	if (yych <= 'S') {
3334 		if (yych == 'O') goto yy132;
3335 		if (yych <= 'R') goto yy84;
3336 		goto yy88;
3337 	} else {
3338 		if (yych <= 'o') {
3339 			if (yych <= 'n') goto yy84;
3340 		} else {
3341 			if (yych == 's') goto yy88;
3342 			goto yy84;
3343 		}
3344 	}
3345 yy132:
3346 	YYDEBUG(132, *YYCURSOR);
3347 	yych = *++YYCURSOR;
3348 	if (yych == 'N') goto yy133;
3349 	if (yych != 'n') goto yy55;
3350 yy133:
3351 	YYDEBUG(133, *YYCURSOR);
3352 	yych = *++YYCURSOR;
3353 	if (yych == 'D') goto yy108;
3354 	if (yych == 'd') goto yy108;
3355 	goto yy55;
3356 yy134:
3357 	YYDEBUG(134, *YYCURSOR);
3358 	yyaccept = 3;
3359 	yych = *(YYMARKER = ++YYCURSOR);
3360 	if (yych == 'U') goto yy135;
3361 	if (yych != 'u') goto yy84;
3362 yy135:
3363 	YYDEBUG(135, *YYCURSOR);
3364 	yych = *++YYCURSOR;
3365 	if (yych == 'R') goto yy136;
3366 	if (yych != 'r') goto yy55;
3367 yy136:
3368 	YYDEBUG(136, *YYCURSOR);
3369 	yych = *++YYCURSOR;
3370 	if (yych == 'D') goto yy137;
3371 	if (yych != 'd') goto yy55;
3372 yy137:
3373 	YYDEBUG(137, *YYCURSOR);
3374 	yych = *++YYCURSOR;
3375 	if (yych == 'A') goto yy138;
3376 	if (yych != 'a') goto yy55;
3377 yy138:
3378 	YYDEBUG(138, *YYCURSOR);
3379 	yych = *++YYCURSOR;
3380 	if (yych == 'Y') goto yy88;
3381 	if (yych == 'y') goto yy88;
3382 	goto yy55;
3383 yy139:
3384 	YYDEBUG(139, *YYCURSOR);
3385 	yyaccept = 3;
3386 	yych = *(YYMARKER = ++YYCURSOR);
3387 	if (yych == 'D') goto yy140;
3388 	if (yych != 'd') goto yy84;
3389 yy140:
3390 	YYDEBUG(140, *YYCURSOR);
3391 	yych = *++YYCURSOR;
3392 	if (yych == 'A') goto yy141;
3393 	if (yych != 'a') goto yy55;
3394 yy141:
3395 	YYDEBUG(141, *YYCURSOR);
3396 	yych = *++YYCURSOR;
3397 	if (yych == 'Y') goto yy88;
3398 	if (yych == 'y') goto yy88;
3399 	goto yy55;
3400 yy142:
3401 	YYDEBUG(142, *YYCURSOR);
3402 	yych = *++YYCURSOR;
3403 	if (yych == 'E') goto yy143;
3404 	if (yych != 'e') goto yy55;
3405 yy143:
3406 	YYDEBUG(143, *YYCURSOR);
3407 	yych = *++YYCURSOR;
3408 	if (yych == 'C') goto yy108;
3409 	if (yych == 'c') goto yy108;
3410 	goto yy55;
3411 yy144:
3412 	YYDEBUG(144, *YYCURSOR);
3413 	yych = *++YYCURSOR;
3414 	if (yych == 'S') goto yy145;
3415 	if (yych != 's') goto yy55;
3416 yy145:
3417 	YYDEBUG(145, *YYCURSOR);
3418 	yyaccept = 3;
3419 	yych = *(YYMARKER = ++YYCURSOR);
3420 	if (yych == 'E') goto yy146;
3421 	if (yych != 'e') goto yy84;
3422 yy146:
3423 	YYDEBUG(146, *YYCURSOR);
3424 	yych = *++YYCURSOR;
3425 	if (yych == 'C') goto yy108;
3426 	if (yych == 'c') goto yy108;
3427 	goto yy55;
3428 yy147:
3429 	YYDEBUG(147, *YYCURSOR);
3430 	yych = *++YYCURSOR;
3431 	if (yych == 'N') goto yy170;
3432 	if (yych == 'n') goto yy170;
3433 	goto yy55;
3434 yy148:
3435 	YYDEBUG(148, *YYCURSOR);
3436 	yych = *++YYCURSOR;
3437 	if (yych <= 'N') {
3438 		if (yych <= 'K') {
3439 			if (yych == 'C') goto yy152;
3440 			goto yy55;
3441 		} else {
3442 			if (yych <= 'L') goto yy151;
3443 			if (yych <= 'M') goto yy55;
3444 			goto yy153;
3445 		}
3446 	} else {
3447 		if (yych <= 'k') {
3448 			if (yych == 'c') goto yy152;
3449 			goto yy55;
3450 		} else {
3451 			if (yych <= 'l') goto yy151;
3452 			if (yych == 'n') goto yy153;
3453 			goto yy55;
3454 		}
3455 	}
3456 yy149:
3457 	YYDEBUG(149, *YYCURSOR);
3458 	yyaccept = 3;
3459 	yych = *(YYMARKER = ++YYCURSOR);
3460 	if (yych == 'E') goto yy150;
3461 	if (yych != 'e') goto yy84;
3462 yy150:
3463 	YYDEBUG(150, *YYCURSOR);
3464 	yych = *++YYCURSOR;
3465 	if (yych == 'C') goto yy108;
3466 	if (yych == 'c') goto yy108;
3467 	goto yy55;
3468 yy151:
3469 	YYDEBUG(151, *YYCURSOR);
3470 	yych = *++YYCURSOR;
3471 	if (yych == 'L') goto yy163;
3472 	if (yych == 'l') goto yy163;
3473 	goto yy55;
3474 yy152:
3475 	YYDEBUG(152, *YYCURSOR);
3476 	yych = *++YYCURSOR;
3477 	if (yych == 'R') goto yy156;
3478 	if (yych == 'r') goto yy156;
3479 	goto yy55;
3480 yy153:
3481 	YYDEBUG(153, *YYCURSOR);
3482 	yyaccept = 3;
3483 	yych = *(YYMARKER = ++YYCURSOR);
3484 	if (yych <= 'U') {
3485 		if (yych == 'S') goto yy88;
3486 		if (yych <= 'T') goto yy84;
3487 	} else {
3488 		if (yych <= 's') {
3489 			if (yych <= 'r') goto yy84;
3490 			goto yy88;
3491 		} else {
3492 			if (yych != 'u') goto yy84;
3493 		}
3494 	}
3495 	YYDEBUG(154, *YYCURSOR);
3496 	yych = *++YYCURSOR;
3497 	if (yych == 'T') goto yy155;
3498 	if (yych != 't') goto yy55;
3499 yy155:
3500 	YYDEBUG(155, *YYCURSOR);
3501 	yych = *++YYCURSOR;
3502 	if (yych == 'E') goto yy108;
3503 	if (yych == 'e') goto yy108;
3504 	goto yy55;
3505 yy156:
3506 	YYDEBUG(156, *YYCURSOR);
3507 	yych = *++YYCURSOR;
3508 	if (yych == 'O') goto yy157;
3509 	if (yych != 'o') goto yy55;
3510 yy157:
3511 	YYDEBUG(157, *YYCURSOR);
3512 	yych = *++YYCURSOR;
3513 	if (yych == 'S') goto yy158;
3514 	if (yych != 's') goto yy55;
3515 yy158:
3516 	YYDEBUG(158, *YYCURSOR);
3517 	yych = *++YYCURSOR;
3518 	if (yych == 'E') goto yy159;
3519 	if (yych != 'e') goto yy55;
3520 yy159:
3521 	YYDEBUG(159, *YYCURSOR);
3522 	yych = *++YYCURSOR;
3523 	if (yych == 'C') goto yy160;
3524 	if (yych != 'c') goto yy55;
3525 yy160:
3526 	YYDEBUG(160, *YYCURSOR);
3527 	yych = *++YYCURSOR;
3528 	if (yych == 'O') goto yy161;
3529 	if (yych != 'o') goto yy55;
3530 yy161:
3531 	YYDEBUG(161, *YYCURSOR);
3532 	yych = *++YYCURSOR;
3533 	if (yych == 'N') goto yy162;
3534 	if (yych != 'n') goto yy55;
3535 yy162:
3536 	YYDEBUG(162, *YYCURSOR);
3537 	yych = *++YYCURSOR;
3538 	if (yych == 'D') goto yy108;
3539 	if (yych == 'd') goto yy108;
3540 	goto yy55;
3541 yy163:
3542 	YYDEBUG(163, *YYCURSOR);
3543 	yych = *++YYCURSOR;
3544 	if (yych == 'I') goto yy164;
3545 	if (yych != 'i') goto yy55;
3546 yy164:
3547 	YYDEBUG(164, *YYCURSOR);
3548 	yych = *++YYCURSOR;
3549 	if (yych == 'S') goto yy165;
3550 	if (yych != 's') goto yy55;
3551 yy165:
3552 	YYDEBUG(165, *YYCURSOR);
3553 	yych = *++YYCURSOR;
3554 	if (yych == 'E') goto yy166;
3555 	if (yych != 'e') goto yy55;
3556 yy166:
3557 	YYDEBUG(166, *YYCURSOR);
3558 	yych = *++YYCURSOR;
3559 	if (yych == 'C') goto yy167;
3560 	if (yych != 'c') goto yy55;
3561 yy167:
3562 	YYDEBUG(167, *YYCURSOR);
3563 	yych = *++YYCURSOR;
3564 	if (yych == 'O') goto yy168;
3565 	if (yych != 'o') goto yy55;
3566 yy168:
3567 	YYDEBUG(168, *YYCURSOR);
3568 	yych = *++YYCURSOR;
3569 	if (yych == 'N') goto yy169;
3570 	if (yych != 'n') goto yy55;
3571 yy169:
3572 	YYDEBUG(169, *YYCURSOR);
3573 	yych = *++YYCURSOR;
3574 	if (yych == 'D') goto yy108;
3575 	if (yych == 'd') goto yy108;
3576 	goto yy55;
3577 yy170:
3578 	YYDEBUG(170, *YYCURSOR);
3579 	yyaccept = 3;
3580 	yych = *(YYMARKER = ++YYCURSOR);
3581 	if (yych <= 'T') {
3582 		if (yych == 'D') goto yy171;
3583 		if (yych <= 'S') goto yy84;
3584 		goto yy172;
3585 	} else {
3586 		if (yych <= 'd') {
3587 			if (yych <= 'c') goto yy84;
3588 		} else {
3589 			if (yych == 't') goto yy172;
3590 			goto yy84;
3591 		}
3592 	}
3593 yy171:
3594 	YYDEBUG(171, *YYCURSOR);
3595 	yych = *++YYCURSOR;
3596 	if (yych == 'A') goto yy173;
3597 	if (yych == 'a') goto yy173;
3598 	goto yy55;
3599 yy172:
3600 	YYDEBUG(172, *YYCURSOR);
3601 	yych = *++YYCURSOR;
3602 	if (yych == 'H') goto yy108;
3603 	if (yych == 'h') goto yy108;
3604 	goto yy55;
3605 yy173:
3606 	YYDEBUG(173, *YYCURSOR);
3607 	yych = *++YYCURSOR;
3608 	if (yych == 'Y') goto yy88;
3609 	if (yych == 'y') goto yy88;
3610 	goto yy55;
3611 yy174:
3612 	YYDEBUG(174, *YYCURSOR);
3613 	yych = *++YYCURSOR;
3614 	goto yy3;
3615 yy175:
3616 	YYDEBUG(175, *YYCURSOR);
3617 	yych = *++YYCURSOR;
3618 	if (yych <= '@') {
3619 		if (yych == ')') goto yy174;
3620 		goto yy3;
3621 	} else {
3622 		if (yych <= 'Z') goto yy176;
3623 		if (yych <= '`') goto yy3;
3624 		if (yych >= '{') goto yy3;
3625 	}
3626 yy176:
3627 	YYDEBUG(176, *YYCURSOR);
3628 	yych = *++YYCURSOR;
3629 	if (yych <= '@') {
3630 		if (yych == ')') goto yy174;
3631 		goto yy3;
3632 	} else {
3633 		if (yych <= 'Z') goto yy177;
3634 		if (yych <= '`') goto yy3;
3635 		if (yych >= '{') goto yy3;
3636 	}
3637 yy177:
3638 	YYDEBUG(177, *YYCURSOR);
3639 	yych = *++YYCURSOR;
3640 	if (yych <= '@') {
3641 		if (yych == ')') goto yy174;
3642 		goto yy3;
3643 	} else {
3644 		if (yych <= 'Z') goto yy178;
3645 		if (yych <= '`') goto yy3;
3646 		if (yych >= '{') goto yy3;
3647 	}
3648 yy178:
3649 	YYDEBUG(178, *YYCURSOR);
3650 	yych = *++YYCURSOR;
3651 	if (yych <= '@') {
3652 		if (yych == ')') goto yy174;
3653 		goto yy3;
3654 	} else {
3655 		if (yych <= 'Z') goto yy179;
3656 		if (yych <= '`') goto yy3;
3657 		if (yych >= '{') goto yy3;
3658 	}
3659 yy179:
3660 	YYDEBUG(179, *YYCURSOR);
3661 	yych = *++YYCURSOR;
3662 	if (yych == ')') goto yy174;
3663 	goto yy3;
3664 yy180:
3665 	YYDEBUG(180, *YYCURSOR);
3666 	yyaccept = 0;
3667 	yych = *(YYMARKER = ++YYCURSOR);
3668 	if (yych <= '/') {
3669 		if (yych <= ',') {
3670 			if (yych == ')') goto yy174;
3671 			goto yy3;
3672 		} else {
3673 			if (yych == '.') goto yy3;
3674 			goto yy182;
3675 		}
3676 	} else {
3677 		if (yych <= '^') {
3678 			if (yych <= '@') goto yy3;
3679 			if (yych <= 'Z') goto yy176;
3680 			goto yy3;
3681 		} else {
3682 			if (yych <= '_') goto yy182;
3683 			if (yych <= '`') goto yy3;
3684 			if (yych >= '{') goto yy3;
3685 		}
3686 	}
3687 yy181:
3688 	YYDEBUG(181, *YYCURSOR);
3689 	yyaccept = 0;
3690 	yych = *(YYMARKER = ++YYCURSOR);
3691 	if (yych <= '/') {
3692 		if (yych <= ',') {
3693 			if (yych == ')') goto yy174;
3694 			goto yy3;
3695 		} else {
3696 			if (yych == '.') goto yy3;
3697 		}
3698 	} else {
3699 		if (yych <= '^') {
3700 			if (yych <= '@') goto yy3;
3701 			if (yych <= 'Z') goto yy177;
3702 			goto yy3;
3703 		} else {
3704 			if (yych <= '_') goto yy182;
3705 			if (yych <= '`') goto yy3;
3706 			if (yych <= 'z') goto yy185;
3707 			goto yy3;
3708 		}
3709 	}
3710 yy182:
3711 	YYDEBUG(182, *YYCURSOR);
3712 	++YYCURSOR;
3713 	if (YYLIMIT <= YYCURSOR) YYFILL(1);
3714 	yych = *YYCURSOR;
3715 	if (yybm[0+yych] & 4) {
3716 		goto yy183;
3717 	}
3718 	goto yy55;
3719 yy183:
3720 	YYDEBUG(183, *YYCURSOR);
3721 	yyaccept = 0;
3722 	YYMARKER = ++YYCURSOR;
3723 	if (YYLIMIT <= YYCURSOR) YYFILL(1);
3724 	yych = *YYCURSOR;
3725 	YYDEBUG(184, *YYCURSOR);
3726 	if (yybm[0+yych] & 4) {
3727 		goto yy183;
3728 	}
3729 	if (yych <= '.') {
3730 		if (yych == '-') goto yy182;
3731 		goto yy3;
3732 	} else {
3733 		if (yych <= '/') goto yy182;
3734 		if (yych == '_') goto yy182;
3735 		goto yy3;
3736 	}
3737 yy185:
3738 	YYDEBUG(185, *YYCURSOR);
3739 	yyaccept = 0;
3740 	yych = *(YYMARKER = ++YYCURSOR);
3741 	if (yych <= '/') {
3742 		if (yych <= ',') {
3743 			if (yych == ')') goto yy174;
3744 			goto yy3;
3745 		} else {
3746 			if (yych == '.') goto yy3;
3747 			goto yy182;
3748 		}
3749 	} else {
3750 		if (yych <= '^') {
3751 			if (yych <= '@') goto yy3;
3752 			if (yych <= 'Z') goto yy178;
3753 			goto yy3;
3754 		} else {
3755 			if (yych <= '_') goto yy182;
3756 			if (yych <= '`') goto yy3;
3757 			if (yych >= '{') goto yy3;
3758 		}
3759 	}
3760 yy186:
3761 	YYDEBUG(186, *YYCURSOR);
3762 	yyaccept = 0;
3763 	yych = *(YYMARKER = ++YYCURSOR);
3764 	if (yych <= '/') {
3765 		if (yych <= ',') {
3766 			if (yych == ')') goto yy174;
3767 			goto yy3;
3768 		} else {
3769 			if (yych == '.') goto yy3;
3770 			goto yy182;
3771 		}
3772 	} else {
3773 		if (yych <= '^') {
3774 			if (yych <= '@') goto yy3;
3775 			if (yych <= 'Z') goto yy179;
3776 			goto yy3;
3777 		} else {
3778 			if (yych <= '_') goto yy182;
3779 			if (yych <= '`') goto yy3;
3780 			if (yych >= '{') goto yy3;
3781 		}
3782 	}
3783 yy187:
3784 	YYDEBUG(187, *YYCURSOR);
3785 	yyaccept = 0;
3786 	yych = *(YYMARKER = ++YYCURSOR);
3787 	if (yybm[0+yych] & 8) {
3788 		goto yy188;
3789 	}
3790 	if (yych <= '-') {
3791 		if (yych == ')') goto yy174;
3792 		if (yych <= ',') goto yy3;
3793 		goto yy182;
3794 	} else {
3795 		if (yych <= '/') {
3796 			if (yych <= '.') goto yy3;
3797 			goto yy182;
3798 		} else {
3799 			if (yych == '_') goto yy182;
3800 			goto yy3;
3801 		}
3802 	}
3803 yy188:
3804 	YYDEBUG(188, *YYCURSOR);
3805 	++YYCURSOR;
3806 	if (YYLIMIT <= YYCURSOR) YYFILL(1);
3807 	yych = *YYCURSOR;
3808 yy189:
3809 	YYDEBUG(189, *YYCURSOR);
3810 	if (yybm[0+yych] & 8) {
3811 		goto yy188;
3812 	}
3813 	if (yych <= '.') {
3814 		if (yych == '-') goto yy182;
3815 		goto yy55;
3816 	} else {
3817 		if (yych <= '/') goto yy182;
3818 		if (yych == '_') goto yy182;
3819 		goto yy55;
3820 	}
3821 yy190:
3822 	YYDEBUG(190, *YYCURSOR);
3823 	yych = *++YYCURSOR;
3824 	if (yych <= '@') {
3825 		if (yych == ')') goto yy174;
3826 		goto yy3;
3827 	} else {
3828 		if (yych <= 'Z') goto yy175;
3829 		if (yych <= '`') goto yy3;
3830 		if (yych <= 'z') goto yy175;
3831 		goto yy3;
3832 	}
3833 yy191:
3834 	YYDEBUG(191, *YYCURSOR);
3835 	yych = *++YYCURSOR;
3836 	if (yych <= 'S') {
3837 		if (yych == ')') goto yy174;
3838 		if (yych <= '@') goto yy3;
3839 		goto yy176;
3840 	} else {
3841 		if (yych <= 'Z') {
3842 			if (yych >= 'U') goto yy176;
3843 		} else {
3844 			if (yych <= '`') goto yy3;
3845 			if (yych <= 'z') goto yy176;
3846 			goto yy3;
3847 		}
3848 	}
3849 	YYDEBUG(192, *YYCURSOR);
3850 	yyaccept = 0;
3851 	yych = *(YYMARKER = ++YYCURSOR);
3852 	if (yych <= ',') {
3853 		if (yych <= ')') {
3854 			if (yych <= '(') goto yy3;
3855 			goto yy174;
3856 		} else {
3857 			if (yych != '+') goto yy3;
3858 		}
3859 	} else {
3860 		if (yych <= 'Z') {
3861 			if (yych <= '-') goto yy193;
3862 			if (yych <= '@') goto yy3;
3863 			goto yy177;
3864 		} else {
3865 			if (yych <= '`') goto yy3;
3866 			if (yych <= 'z') goto yy177;
3867 			goto yy3;
3868 		}
3869 	}
3870 yy193:
3871 	YYDEBUG(193, *YYCURSOR);
3872 	yych = *++YYCURSOR;
3873 	if (yych <= '/') goto yy55;
3874 	if (yych <= '1') goto yy194;
3875 	if (yych <= '2') goto yy195;
3876 	if (yych <= '9') goto yy196;
3877 	goto yy55;
3878 yy194:
3879 	YYDEBUG(194, *YYCURSOR);
3880 	yych = *++YYCURSOR;
3881 	if (yych <= '/') goto yy3;
3882 	if (yych <= '9') goto yy196;
3883 	if (yych <= ':') goto yy197;
3884 	goto yy3;
3885 yy195:
3886 	YYDEBUG(195, *YYCURSOR);
3887 	yych = *++YYCURSOR;
3888 	if (yych <= '5') {
3889 		if (yych <= '/') goto yy3;
3890 		if (yych >= '5') goto yy198;
3891 	} else {
3892 		if (yych <= '9') goto yy174;
3893 		if (yych <= ':') goto yy197;
3894 		goto yy3;
3895 	}
3896 yy196:
3897 	YYDEBUG(196, *YYCURSOR);
3898 	yych = *++YYCURSOR;
3899 	if (yych <= '/') goto yy3;
3900 	if (yych <= '5') goto yy198;
3901 	if (yych <= '9') goto yy174;
3902 	if (yych >= ';') goto yy3;
3903 yy197:
3904 	YYDEBUG(197, *YYCURSOR);
3905 	yych = *++YYCURSOR;
3906 	if (yych <= '/') goto yy3;
3907 	if (yych <= '5') goto yy198;
3908 	if (yych <= '9') goto yy174;
3909 	goto yy3;
3910 yy198:
3911 	YYDEBUG(198, *YYCURSOR);
3912 	yych = *++YYCURSOR;
3913 	if (yych <= '/') goto yy3;
3914 	if (yych <= '9') goto yy174;
3915 	goto yy3;
3916 yy199:
3917 	YYDEBUG(199, *YYCURSOR);
3918 	yych = *++YYCURSOR;
3919 	if (yych <= 'E') {
3920 		if (yych <= '@') {
3921 			if (yych == ')') goto yy174;
3922 			goto yy3;
3923 		} else {
3924 			if (yych <= 'C') goto yy176;
3925 			if (yych >= 'E') goto yy202;
3926 		}
3927 	} else {
3928 		if (yych <= 'c') {
3929 			if (yych <= 'Z') goto yy176;
3930 			if (yych <= '`') goto yy3;
3931 			goto yy176;
3932 		} else {
3933 			if (yych <= 'd') goto yy200;
3934 			if (yych <= 'e') goto yy202;
3935 			if (yych <= 'z') goto yy176;
3936 			goto yy3;
3937 		}
3938 	}
3939 yy200:
3940 	YYDEBUG(200, *YYCURSOR);
3941 	++YYCURSOR;
3942 	if ((yych = *YYCURSOR) <= 'N') {
3943 		if (yych <= ')') {
3944 			if (yych >= ')') goto yy174;
3945 		} else {
3946 			if (yych <= '@') goto yy201;
3947 			if (yych <= 'M') goto yy177;
3948 			goto yy208;
3949 		}
3950 	} else {
3951 		if (yych <= 'm') {
3952 			if (yych <= 'Z') goto yy177;
3953 			if (yych >= 'a') goto yy177;
3954 		} else {
3955 			if (yych <= 'n') goto yy208;
3956 			if (yych <= 'z') goto yy177;
3957 		}
3958 	}
3959 yy201:
3960 	YYDEBUG(201, *YYCURSOR);
3961 #line 1650 "parse_date.re"
3962 	{
3963 		const timelib_relunit* relunit;
3964 		DEBUG_OUTPUT("daytext");
3965 		TIMELIB_INIT;
3966 		TIMELIB_HAVE_RELATIVE();
3967 		TIMELIB_HAVE_WEEKDAY_RELATIVE();
3968 		TIMELIB_UNHAVE_TIME();
3969 		relunit = timelib_lookup_relunit((char**) &ptr);
3970 		s->time->relative.weekday = relunit->multiplier;
3971 		if (s->time->relative.weekday_behavior != 2) {
3972 			s->time->relative.weekday_behavior = 1;
3973 		}
3974 
3975 		TIMELIB_DEINIT;
3976 		return TIMELIB_WEEKDAY;
3977 	}
3978 #line 3976 "<stdout>"
3979 yy202:
3980 	YYDEBUG(202, *YYCURSOR);
3981 	yych = *++YYCURSOR;
3982 	if (yych <= 'K') {
3983 		if (yych <= ')') {
3984 			if (yych <= '(') goto yy3;
3985 			goto yy174;
3986 		} else {
3987 			if (yych <= '@') goto yy3;
3988 			if (yych <= 'J') goto yy177;
3989 		}
3990 	} else {
3991 		if (yych <= 'j') {
3992 			if (yych <= 'Z') goto yy177;
3993 			if (yych <= '`') goto yy3;
3994 			goto yy177;
3995 		} else {
3996 			if (yych <= 'k') goto yy203;
3997 			if (yych <= 'z') goto yy177;
3998 			goto yy3;
3999 		}
4000 	}
4001 yy203:
4002 	YYDEBUG(203, *YYCURSOR);
4003 	yych = *++YYCURSOR;
4004 	if (yych <= 'D') {
4005 		if (yych <= ')') {
4006 			if (yych <= '(') goto yy3;
4007 			goto yy174;
4008 		} else {
4009 			if (yych <= '@') goto yy3;
4010 			if (yych <= 'C') goto yy178;
4011 		}
4012 	} else {
4013 		if (yych <= 'c') {
4014 			if (yych <= 'Z') goto yy178;
4015 			if (yych <= '`') goto yy3;
4016 			goto yy178;
4017 		} else {
4018 			if (yych <= 'd') goto yy204;
4019 			if (yych <= 'z') goto yy178;
4020 			goto yy3;
4021 		}
4022 	}
4023 yy204:
4024 	YYDEBUG(204, *YYCURSOR);
4025 	yych = *++YYCURSOR;
4026 	if (yych <= 'A') {
4027 		if (yych == ')') goto yy174;
4028 		if (yych <= '@') goto yy3;
4029 	} else {
4030 		if (yych <= '`') {
4031 			if (yych <= 'Z') goto yy179;
4032 			goto yy3;
4033 		} else {
4034 			if (yych <= 'a') goto yy205;
4035 			if (yych <= 'z') goto yy179;
4036 			goto yy3;
4037 		}
4038 	}
4039 yy205:
4040 	YYDEBUG(205, *YYCURSOR);
4041 	yych = *++YYCURSOR;
4042 	if (yych <= 'X') {
4043 		if (yych == ')') goto yy174;
4044 		goto yy3;
4045 	} else {
4046 		if (yych <= 'Y') goto yy206;
4047 		if (yych != 'y') goto yy3;
4048 	}
4049 yy206:
4050 	YYDEBUG(206, *YYCURSOR);
4051 	yych = *++YYCURSOR;
4052 	if (yych == 'S') goto yy207;
4053 	if (yych != 's') goto yy201;
4054 yy207:
4055 	YYDEBUG(207, *YYCURSOR);
4056 	yych = *++YYCURSOR;
4057 	goto yy201;
4058 yy208:
4059 	YYDEBUG(208, *YYCURSOR);
4060 	yych = *++YYCURSOR;
4061 	if (yych <= 'E') {
4062 		if (yych <= ')') {
4063 			if (yych <= '(') goto yy3;
4064 			goto yy174;
4065 		} else {
4066 			if (yych <= '@') goto yy3;
4067 			if (yych <= 'D') goto yy178;
4068 		}
4069 	} else {
4070 		if (yych <= 'd') {
4071 			if (yych <= 'Z') goto yy178;
4072 			if (yych <= '`') goto yy3;
4073 			goto yy178;
4074 		} else {
4075 			if (yych <= 'e') goto yy209;
4076 			if (yych <= 'z') goto yy178;
4077 			goto yy3;
4078 		}
4079 	}
4080 yy209:
4081 	YYDEBUG(209, *YYCURSOR);
4082 	yych = *++YYCURSOR;
4083 	if (yych <= 'S') {
4084 		if (yych <= ')') {
4085 			if (yych <= '(') goto yy3;
4086 			goto yy174;
4087 		} else {
4088 			if (yych <= '@') goto yy3;
4089 			if (yych <= 'R') goto yy179;
4090 		}
4091 	} else {
4092 		if (yych <= 'r') {
4093 			if (yych <= 'Z') goto yy179;
4094 			if (yych <= '`') goto yy3;
4095 			goto yy179;
4096 		} else {
4097 			if (yych <= 's') goto yy210;
4098 			if (yych <= 'z') goto yy179;
4099 			goto yy3;
4100 		}
4101 	}
4102 yy210:
4103 	YYDEBUG(210, *YYCURSOR);
4104 	yyaccept = 0;
4105 	yych = *(YYMARKER = ++YYCURSOR);
4106 	if (yych <= 'C') {
4107 		if (yych == ')') goto yy174;
4108 		goto yy3;
4109 	} else {
4110 		if (yych <= 'D') goto yy211;
4111 		if (yych != 'd') goto yy3;
4112 	}
4113 yy211:
4114 	YYDEBUG(211, *YYCURSOR);
4115 	yych = *++YYCURSOR;
4116 	if (yych == 'A') goto yy212;
4117 	if (yych != 'a') goto yy55;
4118 yy212:
4119 	YYDEBUG(212, *YYCURSOR);
4120 	yych = *++YYCURSOR;
4121 	if (yych == 'Y') goto yy207;
4122 	if (yych == 'y') goto yy207;
4123 	goto yy55;
4124 yy213:
4125 	YYDEBUG(213, *YYCURSOR);
4126 	yyaccept = 0;
4127 	yych = *(YYMARKER = ++YYCURSOR);
4128 	if (yych <= 'D') {
4129 		if (yych <= '-') {
4130 			if (yych == ')') goto yy174;
4131 			if (yych <= ',') goto yy3;
4132 			goto yy182;
4133 		} else {
4134 			if (yych <= '/') {
4135 				if (yych <= '.') goto yy3;
4136 				goto yy182;
4137 			} else {
4138 				if (yych <= '@') goto yy3;
4139 				if (yych <= 'C') goto yy176;
4140 				goto yy200;
4141 			}
4142 		}
4143 	} else {
4144 		if (yych <= '`') {
4145 			if (yych <= 'Z') {
4146 				if (yych <= 'E') goto yy202;
4147 				goto yy176;
4148 			} else {
4149 				if (yych == '_') goto yy182;
4150 				goto yy3;
4151 			}
4152 		} else {
4153 			if (yych <= 'd') {
4154 				if (yych <= 'c') goto yy181;
4155 			} else {
4156 				if (yych <= 'e') goto yy215;
4157 				if (yych <= 'z') goto yy181;
4158 				goto yy3;
4159 			}
4160 		}
4161 	}
4162 	YYDEBUG(214, *YYCURSOR);
4163 	yyaccept = 4;
4164 	yych = *(YYMARKER = ++YYCURSOR);
4165 	if (yych <= 'M') {
4166 		if (yych <= '-') {
4167 			if (yych == ')') goto yy174;
4168 			if (yych <= ',') goto yy201;
4169 			goto yy182;
4170 		} else {
4171 			if (yych == '/') goto yy182;
4172 			if (yych <= '@') goto yy201;
4173 			goto yy177;
4174 		}
4175 	} else {
4176 		if (yych <= '_') {
4177 			if (yych <= 'N') goto yy208;
4178 			if (yych <= 'Z') goto yy177;
4179 			if (yych <= '^') goto yy201;
4180 			goto yy182;
4181 		} else {
4182 			if (yych <= 'm') {
4183 				if (yych <= '`') goto yy201;
4184 				goto yy185;
4185 			} else {
4186 				if (yych <= 'n') goto yy221;
4187 				if (yych <= 'z') goto yy185;
4188 				goto yy201;
4189 			}
4190 		}
4191 	}
4192 yy215:
4193 	YYDEBUG(215, *YYCURSOR);
4194 	yyaccept = 0;
4195 	yych = *(YYMARKER = ++YYCURSOR);
4196 	if (yych <= 'J') {
4197 		if (yych <= '-') {
4198 			if (yych == ')') goto yy174;
4199 			if (yych <= ',') goto yy3;
4200 			goto yy182;
4201 		} else {
4202 			if (yych == '/') goto yy182;
4203 			if (yych <= '@') goto yy3;
4204 			goto yy177;
4205 		}
4206 	} else {
4207 		if (yych <= '_') {
4208 			if (yych <= 'K') goto yy203;
4209 			if (yych <= 'Z') goto yy177;
4210 			if (yych <= '^') goto yy3;
4211 			goto yy182;
4212 		} else {
4213 			if (yych <= 'j') {
4214 				if (yych <= '`') goto yy3;
4215 				goto yy185;
4216 			} else {
4217 				if (yych <= 'k') goto yy216;
4218 				if (yych <= 'z') goto yy185;
4219 				goto yy3;
4220 			}
4221 		}
4222 	}
4223 yy216:
4224 	YYDEBUG(216, *YYCURSOR);
4225 	yyaccept = 0;
4226 	yych = *(YYMARKER = ++YYCURSOR);
4227 	if (yych <= 'C') {
4228 		if (yych <= '-') {
4229 			if (yych == ')') goto yy174;
4230 			if (yych <= ',') goto yy3;
4231 			goto yy182;
4232 		} else {
4233 			if (yych == '/') goto yy182;
4234 			if (yych <= '@') goto yy3;
4235 			goto yy178;
4236 		}
4237 	} else {
4238 		if (yych <= '_') {
4239 			if (yych <= 'D') goto yy204;
4240 			if (yych <= 'Z') goto yy178;
4241 			if (yych <= '^') goto yy3;
4242 			goto yy182;
4243 		} else {
4244 			if (yych <= 'c') {
4245 				if (yych <= '`') goto yy3;
4246 				goto yy186;
4247 			} else {
4248 				if (yych <= 'd') goto yy217;
4249 				if (yych <= 'z') goto yy186;
4250 				goto yy3;
4251 			}
4252 		}
4253 	}
4254 yy217:
4255 	YYDEBUG(217, *YYCURSOR);
4256 	yyaccept = 0;
4257 	yych = *(YYMARKER = ++YYCURSOR);
4258 	if (yych <= '@') {
4259 		if (yych <= ',') {
4260 			if (yych == ')') goto yy174;
4261 			goto yy3;
4262 		} else {
4263 			if (yych == '.') goto yy3;
4264 			if (yych <= '/') goto yy182;
4265 			goto yy3;
4266 		}
4267 	} else {
4268 		if (yych <= '_') {
4269 			if (yych <= 'A') goto yy205;
4270 			if (yych <= 'Z') goto yy179;
4271 			if (yych <= '^') goto yy3;
4272 			goto yy182;
4273 		} else {
4274 			if (yych <= '`') goto yy3;
4275 			if (yych <= 'a') goto yy218;
4276 			if (yych <= 'z') goto yy187;
4277 			goto yy3;
4278 		}
4279 	}
4280 yy218:
4281 	YYDEBUG(218, *YYCURSOR);
4282 	yyaccept = 0;
4283 	yych = *(YYMARKER = ++YYCURSOR);
4284 	if (yych <= 'X') {
4285 		if (yych <= ',') {
4286 			if (yych == ')') goto yy174;
4287 			goto yy3;
4288 		} else {
4289 			if (yych == '.') goto yy3;
4290 			if (yych <= '/') goto yy182;
4291 			goto yy3;
4292 		}
4293 	} else {
4294 		if (yych <= '`') {
4295 			if (yych <= 'Y') goto yy206;
4296 			if (yych == '_') goto yy182;
4297 			goto yy3;
4298 		} else {
4299 			if (yych == 'y') goto yy219;
4300 			if (yych <= 'z') goto yy188;
4301 			goto yy3;
4302 		}
4303 	}
4304 yy219:
4305 	YYDEBUG(219, *YYCURSOR);
4306 	yyaccept = 4;
4307 	yych = *(YYMARKER = ++YYCURSOR);
4308 	if (yych <= 'S') {
4309 		if (yych <= '.') {
4310 			if (yych == '-') goto yy182;
4311 			goto yy201;
4312 		} else {
4313 			if (yych <= '/') goto yy182;
4314 			if (yych <= 'R') goto yy201;
4315 			goto yy207;
4316 		}
4317 	} else {
4318 		if (yych <= '`') {
4319 			if (yych == '_') goto yy182;
4320 			goto yy201;
4321 		} else {
4322 			if (yych == 's') goto yy220;
4323 			if (yych <= 'z') goto yy188;
4324 			goto yy201;
4325 		}
4326 	}
4327 yy220:
4328 	YYDEBUG(220, *YYCURSOR);
4329 	yyaccept = 4;
4330 	yych = *(YYMARKER = ++YYCURSOR);
4331 	if (yybm[0+yych] & 8) {
4332 		goto yy188;
4333 	}
4334 	if (yych <= '.') {
4335 		if (yych == '-') goto yy182;
4336 		goto yy201;
4337 	} else {
4338 		if (yych <= '/') goto yy182;
4339 		if (yych == '_') goto yy182;
4340 		goto yy201;
4341 	}
4342 yy221:
4343 	YYDEBUG(221, *YYCURSOR);
4344 	yyaccept = 0;
4345 	yych = *(YYMARKER = ++YYCURSOR);
4346 	if (yych <= 'D') {
4347 		if (yych <= '-') {
4348 			if (yych == ')') goto yy174;
4349 			if (yych <= ',') goto yy3;
4350 			goto yy182;
4351 		} else {
4352 			if (yych == '/') goto yy182;
4353 			if (yych <= '@') goto yy3;
4354 			goto yy178;
4355 		}
4356 	} else {
4357 		if (yych <= '_') {
4358 			if (yych <= 'E') goto yy209;
4359 			if (yych <= 'Z') goto yy178;
4360 			if (yych <= '^') goto yy3;
4361 			goto yy182;
4362 		} else {
4363 			if (yych <= 'd') {
4364 				if (yych <= '`') goto yy3;
4365 				goto yy186;
4366 			} else {
4367 				if (yych <= 'e') goto yy222;
4368 				if (yych <= 'z') goto yy186;
4369 				goto yy3;
4370 			}
4371 		}
4372 	}
4373 yy222:
4374 	YYDEBUG(222, *YYCURSOR);
4375 	yyaccept = 0;
4376 	yych = *(YYMARKER = ++YYCURSOR);
4377 	if (yych <= 'R') {
4378 		if (yych <= '-') {
4379 			if (yych == ')') goto yy174;
4380 			if (yych <= ',') goto yy3;
4381 			goto yy182;
4382 		} else {
4383 			if (yych == '/') goto yy182;
4384 			if (yych <= '@') goto yy3;
4385 			goto yy179;
4386 		}
4387 	} else {
4388 		if (yych <= '_') {
4389 			if (yych <= 'S') goto yy210;
4390 			if (yych <= 'Z') goto yy179;
4391 			if (yych <= '^') goto yy3;
4392 			goto yy182;
4393 		} else {
4394 			if (yych <= 'r') {
4395 				if (yych <= '`') goto yy3;
4396 				goto yy187;
4397 			} else {
4398 				if (yych <= 's') goto yy223;
4399 				if (yych <= 'z') goto yy187;
4400 				goto yy3;
4401 			}
4402 		}
4403 	}
4404 yy223:
4405 	YYDEBUG(223, *YYCURSOR);
4406 	yyaccept = 0;
4407 	yych = *(YYMARKER = ++YYCURSOR);
4408 	if (yych <= 'C') {
4409 		if (yych <= ',') {
4410 			if (yych == ')') goto yy174;
4411 			goto yy3;
4412 		} else {
4413 			if (yych == '.') goto yy3;
4414 			if (yych <= '/') goto yy182;
4415 			goto yy3;
4416 		}
4417 	} else {
4418 		if (yych <= '`') {
4419 			if (yych <= 'D') goto yy211;
4420 			if (yych == '_') goto yy182;
4421 			goto yy3;
4422 		} else {
4423 			if (yych == 'd') goto yy224;
4424 			if (yych <= 'z') goto yy188;
4425 			goto yy3;
4426 		}
4427 	}
4428 yy224:
4429 	YYDEBUG(224, *YYCURSOR);
4430 	yych = *++YYCURSOR;
4431 	if (yych == 'A') goto yy212;
4432 	if (yych != 'a') goto yy189;
4433 	YYDEBUG(225, *YYCURSOR);
4434 	yych = *++YYCURSOR;
4435 	if (yych == 'Y') goto yy207;
4436 	if (yych == 'y') goto yy220;
4437 	goto yy189;
4438 yy226:
4439 	YYDEBUG(226, *YYCURSOR);
4440 	yych = *++YYCURSOR;
4441 	if (yych <= 'C') {
4442 		if (yych <= ')') {
4443 			if (yych <= '(') goto yy3;
4444 			goto yy174;
4445 		} else {
4446 			if (yych <= '@') goto yy3;
4447 			if (yych <= 'B') goto yy176;
4448 		}
4449 	} else {
4450 		if (yych <= 'b') {
4451 			if (yych <= 'Z') goto yy176;
4452 			if (yych <= '`') goto yy3;
4453 			goto yy176;
4454 		} else {
4455 			if (yych <= 'c') goto yy227;
4456 			if (yych <= 'z') goto yy176;
4457 			goto yy3;
4458 		}
4459 	}
4460 yy227:
4461 	YYDEBUG(227, *YYCURSOR);
4462 	yyaccept = 5;
4463 	yych = *(YYMARKER = ++YYCURSOR);
4464 	if (yych <= '/') {
4465 		if (yych <= '(') {
4466 			if (yych <= '\t') {
4467 				if (yych >= '\t') goto yy230;
4468 			} else {
4469 				if (yych == ' ') goto yy230;
4470 			}
4471 		} else {
4472 			if (yych <= ',') {
4473 				if (yych <= ')') goto yy174;
4474 			} else {
4475 				if (yych <= '-') goto yy231;
4476 				if (yych <= '.') goto yy230;
4477 			}
4478 		}
4479 	} else {
4480 		if (yych <= 'Z') {
4481 			if (yych <= '@') {
4482 				if (yych <= '9') goto yy230;
4483 			} else {
4484 				if (yych == 'E') goto yy235;
4485 				goto yy177;
4486 			}
4487 		} else {
4488 			if (yych <= 'd') {
4489 				if (yych >= 'a') goto yy177;
4490 			} else {
4491 				if (yych <= 'e') goto yy235;
4492 				if (yych <= 'z') goto yy177;
4493 			}
4494 		}
4495 	}
4496 yy228:
4497 	YYDEBUG(228, *YYCURSOR);
4498 #line 1709 "parse_date.re"
4499 	{
4500 		DEBUG_OUTPUT("monthtext");
4501 		TIMELIB_INIT;
4502 		TIMELIB_HAVE_DATE();
4503 		s->time->m = timelib_lookup_month((char **) &ptr);
4504 		TIMELIB_DEINIT;
4505 		return TIMELIB_DATE_TEXT;
4506 	}
4507 #line 4505 "<stdout>"
4508 yy229:
4509 	YYDEBUG(229, *YYCURSOR);
4510 	++YYCURSOR;
4511 	if ((YYLIMIT - YYCURSOR) < 23) YYFILL(23);
4512 	yych = *YYCURSOR;
4513 yy230:
4514 	YYDEBUG(230, *YYCURSOR);
4515 	if (yybm[0+yych] & 16) {
4516 		goto yy229;
4517 	}
4518 	if (yych <= '/') goto yy55;
4519 	if (yych <= '2') goto yy232;
4520 	if (yych <= '3') goto yy233;
4521 	if (yych <= '9') goto yy234;
4522 	goto yy55;
4523 yy231:
4524 	YYDEBUG(231, *YYCURSOR);
4525 	yych = *++YYCURSOR;
4526 	if (yych <= '/') goto yy230;
4527 	if (yych <= '0') goto yy334;
4528 	if (yych <= '2') goto yy335;
4529 	if (yych <= '3') goto yy336;
4530 	goto yy230;
4531 yy232:
4532 	YYDEBUG(232, *YYCURSOR);
4533 	yych = *++YYCURSOR;
4534 	if (yych <= '9') {
4535 		if (yych <= ' ') {
4536 			if (yych <= 0x08) {
4537 				if (yych <= 0x00) goto yy248;
4538 				goto yy55;
4539 			} else {
4540 				if (yych <= '\t') goto yy246;
4541 				if (yych <= 0x1F) goto yy55;
4542 				goto yy246;
4543 			}
4544 		} else {
4545 			if (yych <= '-') {
4546 				if (yych == ',') goto yy246;
4547 				goto yy55;
4548 			} else {
4549 				if (yych <= '.') goto yy246;
4550 				if (yych <= '/') goto yy55;
4551 				goto yy333;
4552 			}
4553 		}
4554 	} else {
4555 		if (yych <= 'm') {
4556 			if (yych <= 'd') {
4557 				if (yych <= 'c') goto yy55;
4558 				goto yy246;
4559 			} else {
4560 				if (yych == 'h') goto yy246;
4561 				goto yy55;
4562 			}
4563 		} else {
4564 			if (yych <= 'r') {
4565 				if (yych <= 'n') goto yy243;
4566 				if (yych <= 'q') goto yy55;
4567 				goto yy244;
4568 			} else {
4569 				if (yych <= 's') goto yy241;
4570 				if (yych <= 't') goto yy245;
4571 				goto yy55;
4572 			}
4573 		}
4574 	}
4575 yy233:
4576 	YYDEBUG(233, *YYCURSOR);
4577 	yych = *++YYCURSOR;
4578 	if (yych <= '1') {
4579 		if (yych <= ' ') {
4580 			if (yych <= 0x08) {
4581 				if (yych <= 0x00) goto yy248;
4582 				goto yy55;
4583 			} else {
4584 				if (yych <= '\t') goto yy246;
4585 				if (yych <= 0x1F) goto yy55;
4586 				goto yy246;
4587 			}
4588 		} else {
4589 			if (yych <= '-') {
4590 				if (yych == ',') goto yy246;
4591 				goto yy55;
4592 			} else {
4593 				if (yych <= '.') goto yy246;
4594 				if (yych <= '/') goto yy55;
4595 				goto yy333;
4596 			}
4597 		}
4598 	} else {
4599 		if (yych <= 'm') {
4600 			if (yych <= 'd') {
4601 				if (yych <= '9') goto yy240;
4602 				if (yych <= 'c') goto yy55;
4603 				goto yy246;
4604 			} else {
4605 				if (yych == 'h') goto yy246;
4606 				goto yy55;
4607 			}
4608 		} else {
4609 			if (yych <= 'r') {
4610 				if (yych <= 'n') goto yy243;
4611 				if (yych <= 'q') goto yy55;
4612 				goto yy244;
4613 			} else {
4614 				if (yych <= 's') goto yy241;
4615 				if (yych <= 't') goto yy245;
4616 				goto yy55;
4617 			}
4618 		}
4619 	}
4620 yy234:
4621 	YYDEBUG(234, *YYCURSOR);
4622 	yych = *++YYCURSOR;
4623 	if (yych <= '9') {
4624 		if (yych <= ' ') {
4625 			if (yych <= 0x08) {
4626 				if (yych <= 0x00) goto yy248;
4627 				goto yy55;
4628 			} else {
4629 				if (yych <= '\t') goto yy246;
4630 				if (yych <= 0x1F) goto yy55;
4631 				goto yy246;
4632 			}
4633 		} else {
4634 			if (yych <= '-') {
4635 				if (yych == ',') goto yy246;
4636 				goto yy55;
4637 			} else {
4638 				if (yych <= '.') goto yy246;
4639 				if (yych <= '/') goto yy55;
4640 				goto yy240;
4641 			}
4642 		}
4643 	} else {
4644 		if (yych <= 'm') {
4645 			if (yych <= 'd') {
4646 				if (yych <= 'c') goto yy55;
4647 				goto yy246;
4648 			} else {
4649 				if (yych == 'h') goto yy246;
4650 				goto yy55;
4651 			}
4652 		} else {
4653 			if (yych <= 'r') {
4654 				if (yych <= 'n') goto yy243;
4655 				if (yych <= 'q') goto yy55;
4656 				goto yy244;
4657 			} else {
4658 				if (yych <= 's') goto yy241;
4659 				if (yych <= 't') goto yy245;
4660 				goto yy55;
4661 			}
4662 		}
4663 	}
4664 yy235:
4665 	YYDEBUG(235, *YYCURSOR);
4666 	yych = *++YYCURSOR;
4667 	if (yych <= 'M') {
4668 		if (yych <= ')') {
4669 			if (yych <= '(') goto yy3;
4670 			goto yy174;
4671 		} else {
4672 			if (yych <= '@') goto yy3;
4673 			if (yych <= 'L') goto yy178;
4674 		}
4675 	} else {
4676 		if (yych <= 'l') {
4677 			if (yych <= 'Z') goto yy178;
4678 			if (yych <= '`') goto yy3;
4679 			goto yy178;
4680 		} else {
4681 			if (yych <= 'm') goto yy236;
4682 			if (yych <= 'z') goto yy178;
4683 			goto yy3;
4684 		}
4685 	}
4686 yy236:
4687 	YYDEBUG(236, *YYCURSOR);
4688 	yych = *++YYCURSOR;
4689 	if (yych <= 'B') {
4690 		if (yych <= ')') {
4691 			if (yych <= '(') goto yy3;
4692 			goto yy174;
4693 		} else {
4694 			if (yych <= '@') goto yy3;
4695 			if (yych <= 'A') goto yy179;
4696 		}
4697 	} else {
4698 		if (yych <= 'a') {
4699 			if (yych <= 'Z') goto yy179;
4700 			if (yych <= '`') goto yy3;
4701 			goto yy179;
4702 		} else {
4703 			if (yych <= 'b') goto yy237;
4704 			if (yych <= 'z') goto yy179;
4705 			goto yy3;
4706 		}
4707 	}
4708 yy237:
4709 	YYDEBUG(237, *YYCURSOR);
4710 	yyaccept = 0;
4711 	yych = *(YYMARKER = ++YYCURSOR);
4712 	if (yych <= 'D') {
4713 		if (yych == ')') goto yy174;
4714 		goto yy3;
4715 	} else {
4716 		if (yych <= 'E') goto yy238;
4717 		if (yych != 'e') goto yy3;
4718 	}
4719 yy238:
4720 	YYDEBUG(238, *YYCURSOR);
4721 	yych = *++YYCURSOR;
4722 	if (yych == 'R') goto yy239;
4723 	if (yych != 'r') goto yy55;
4724 yy239:
4725 	YYDEBUG(239, *YYCURSOR);
4726 	yyaccept = 5;
4727 	yych = *(YYMARKER = ++YYCURSOR);
4728 	if (yych <= ' ') {
4729 		if (yych == '\t') goto yy230;
4730 		if (yych <= 0x1F) goto yy228;
4731 		goto yy230;
4732 	} else {
4733 		if (yych <= '.') {
4734 			if (yych <= ',') goto yy228;
4735 			goto yy230;
4736 		} else {
4737 			if (yych <= '/') goto yy228;
4738 			if (yych <= '9') goto yy230;
4739 			goto yy228;
4740 		}
4741 	}
4742 yy240:
4743 	YYDEBUG(240, *YYCURSOR);
4744 	yych = *++YYCURSOR;
4745 	if (yych <= '/') goto yy55;
4746 	if (yych <= '9') goto yy330;
4747 	goto yy55;
4748 yy241:
4749 	YYDEBUG(241, *YYCURSOR);
4750 	yyaccept = 6;
4751 	yych = *(YYMARKER = ++YYCURSOR);
4752 	if (yych == 't') goto yy329;
4753 	goto yy247;
4754 yy242:
4755 	YYDEBUG(242, *YYCURSOR);
4756 #line 1455 "parse_date.re"
4757 	{
4758 		int length = 0;
4759 		DEBUG_OUTPUT("datetextual | datenoyear");
4760 		TIMELIB_INIT;
4761 		TIMELIB_HAVE_DATE();
4762 		s->time->m = timelib_get_month((char **) &ptr);
4763 		s->time->d = timelib_get_nr((char **) &ptr, 2);
4764 		s->time->y = timelib_get_nr_ex((char **) &ptr, 4, &length);
4765 		TIMELIB_PROCESS_YEAR(s->time->y, length);
4766 		TIMELIB_DEINIT;
4767 		return TIMELIB_DATE_TEXT;
4768 	}
4769 #line 4767 "<stdout>"
4770 yy243:
4771 	YYDEBUG(243, *YYCURSOR);
4772 	yyaccept = 6;
4773 	yych = *(YYMARKER = ++YYCURSOR);
4774 	if (yych == 'd') goto yy329;
4775 	goto yy247;
4776 yy244:
4777 	YYDEBUG(244, *YYCURSOR);
4778 	yyaccept = 6;
4779 	yych = *(YYMARKER = ++YYCURSOR);
4780 	if (yych == 'd') goto yy329;
4781 	goto yy247;
4782 yy245:
4783 	YYDEBUG(245, *YYCURSOR);
4784 	yyaccept = 6;
4785 	yych = *(YYMARKER = ++YYCURSOR);
4786 	if (yych == 'h') goto yy329;
4787 	goto yy247;
4788 yy246:
4789 	YYDEBUG(246, *YYCURSOR);
4790 	yyaccept = 6;
4791 	YYMARKER = ++YYCURSOR;
4792 	if ((YYLIMIT - YYCURSOR) < 18) YYFILL(18);
4793 	yych = *YYCURSOR;
4794 yy247:
4795 	YYDEBUG(247, *YYCURSOR);
4796 	if (yybm[0+yych] & 32) {
4797 		goto yy246;
4798 	}
4799 	if (yych <= '2') {
4800 		if (yych <= '/') goto yy242;
4801 		if (yych <= '0') goto yy320;
4802 		if (yych <= '1') goto yy321;
4803 		goto yy322;
4804 	} else {
4805 		if (yych <= '9') goto yy323;
4806 		if (yych == 'T') goto yy249;
4807 		goto yy242;
4808 	}
4809 yy248:
4810 	YYDEBUG(248, *YYCURSOR);
4811 	yyaccept = 6;
4812 	yych = *(YYMARKER = ++YYCURSOR);
4813 	if (yych <= '9') {
4814 		if (yych <= '0') {
4815 			if (yych <= '/') goto yy242;
4816 			goto yy250;
4817 		} else {
4818 			if (yych <= '1') goto yy251;
4819 			if (yych <= '2') goto yy252;
4820 			goto yy253;
4821 		}
4822 	} else {
4823 		if (yych <= 'T') {
4824 			if (yych <= 'S') goto yy242;
4825 		} else {
4826 			if (yych != 't') goto yy242;
4827 		}
4828 	}
4829 yy249:
4830 	YYDEBUG(249, *YYCURSOR);
4831 	yych = *++YYCURSOR;
4832 	if (yych <= '/') goto yy55;
4833 	if (yych <= '1') goto yy318;
4834 	if (yych <= '2') goto yy319;
4835 	if (yych <= '9') goto yy308;
4836 	goto yy55;
4837 yy250:
4838 	YYDEBUG(250, *YYCURSOR);
4839 	yych = *++YYCURSOR;
4840 	if (yych <= '/') {
4841 		if (yych == '.') goto yy309;
4842 		goto yy55;
4843 	} else {
4844 		if (yych <= '0') goto yy308;
4845 		if (yych <= '9') goto yy253;
4846 		if (yych <= ':') goto yy309;
4847 		goto yy55;
4848 	}
4849 yy251:
4850 	YYDEBUG(251, *YYCURSOR);
4851 	yych = *++YYCURSOR;
4852 	if (yych <= '/') {
4853 		if (yych == '.') goto yy254;
4854 		goto yy55;
4855 	} else {
4856 		if (yych <= '2') goto yy253;
4857 		if (yych <= '9') goto yy308;
4858 		if (yych <= ':') goto yy254;
4859 		goto yy55;
4860 	}
4861 yy252:
4862 	YYDEBUG(252, *YYCURSOR);
4863 	yych = *++YYCURSOR;
4864 	if (yych <= '/') {
4865 		if (yych == '.') goto yy254;
4866 		goto yy55;
4867 	} else {
4868 		if (yych <= '4') goto yy308;
4869 		if (yych == ':') goto yy254;
4870 		goto yy55;
4871 	}
4872 yy253:
4873 	YYDEBUG(253, *YYCURSOR);
4874 	yych = *++YYCURSOR;
4875 	if (yych == '.') goto yy254;
4876 	if (yych != ':') goto yy55;
4877 yy254:
4878 	YYDEBUG(254, *YYCURSOR);
4879 	yych = *++YYCURSOR;
4880 	if (yych <= '/') goto yy55;
4881 	if (yych <= '5') goto yy255;
4882 	if (yych <= '9') goto yy257;
4883 	goto yy55;
4884 yy255:
4885 	YYDEBUG(255, *YYCURSOR);
4886 	yyaccept = 7;
4887 	yych = *(YYMARKER = ++YYCURSOR);
4888 	if (yych <= '/') {
4889 		if (yych == '.') goto yy258;
4890 	} else {
4891 		if (yych <= '9') goto yy301;
4892 		if (yych <= ':') goto yy258;
4893 	}
4894 yy256:
4895 	YYDEBUG(256, *YYCURSOR);
4896 #line 1757 "parse_date.re"
4897 	{
4898 		int tz_not_found;
4899 		DEBUG_OUTPUT("dateshortwithtimeshort | dateshortwithtimelong | dateshortwithtimelongtz");
4900 		TIMELIB_INIT;
4901 		TIMELIB_HAVE_DATE();
4902 		s->time->m = timelib_get_month((char **) &ptr);
4903 		s->time->d = timelib_get_nr((char **) &ptr, 2);
4904 
4905 		TIMELIB_HAVE_TIME();
4906 		s->time->h = timelib_get_nr((char **) &ptr, 2);
4907 		s->time->i = timelib_get_nr((char **) &ptr, 2);
4908 		if (*ptr == ':') {
4909 			s->time->s = timelib_get_nr((char **) &ptr, 2);
4910 
4911 			if (*ptr == '.') {
4912 				s->time->us = timelib_get_frac_nr((char **) &ptr, 8);
4913 			}
4914 		}
4915 
4916 		if (*ptr != '\0') {
4917 			s->time->z = timelib_parse_zone((char **) &ptr, &s->time->dst, s->time, &tz_not_found, s->tzdb, tz_get_wrapper);
4918 			if (tz_not_found) {
4919 				add_error(s, TIMELIB_ERR_TZID_NOT_FOUND, "The timezone could not be found in the database");
4920 			}
4921 		}
4922 		TIMELIB_DEINIT;
4923 		return TIMELIB_SHORTDATE_WITH_TIME;
4924 	}
4925 #line 4923 "<stdout>"
4926 yy257:
4927 	YYDEBUG(257, *YYCURSOR);
4928 	yyaccept = 7;
4929 	yych = *(YYMARKER = ++YYCURSOR);
4930 	if (yych == '.') goto yy258;
4931 	if (yych != ':') goto yy256;
4932 yy258:
4933 	YYDEBUG(258, *YYCURSOR);
4934 	yych = *++YYCURSOR;
4935 	if (yych <= '/') goto yy55;
4936 	if (yych <= '5') goto yy259;
4937 	if (yych <= '6') goto yy260;
4938 	if (yych <= '9') goto yy261;
4939 	goto yy55;
4940 yy259:
4941 	YYDEBUG(259, *YYCURSOR);
4942 	yych = *++YYCURSOR;
4943 	if (yych <= '/') goto yy256;
4944 	if (yych <= '9') goto yy262;
4945 	goto yy256;
4946 yy260:
4947 	YYDEBUG(260, *YYCURSOR);
4948 	yych = *++YYCURSOR;
4949 	if (yych == '0') goto yy262;
4950 	goto yy256;
4951 yy261:
4952 	YYDEBUG(261, *YYCURSOR);
4953 	yych = *++YYCURSOR;
4954 	goto yy256;
4955 yy262:
4956 	YYDEBUG(262, *YYCURSOR);
4957 	yyaccept = 7;
4958 	yych = *(YYMARKER = ++YYCURSOR);
4959 	if (yych <= '*') {
4960 		if (yych <= 0x1F) {
4961 			if (yych == '\t') goto yy264;
4962 			goto yy256;
4963 		} else {
4964 			if (yych <= ' ') goto yy264;
4965 			if (yych == '(') goto yy264;
4966 			goto yy256;
4967 		}
4968 	} else {
4969 		if (yych <= '@') {
4970 			if (yych == ',') goto yy256;
4971 			if (yych <= '-') goto yy264;
4972 			goto yy256;
4973 		} else {
4974 			if (yych <= 'Z') goto yy264;
4975 			if (yych <= '`') goto yy256;
4976 			if (yych <= 'z') goto yy264;
4977 			goto yy256;
4978 		}
4979 	}
4980 yy263:
4981 	YYDEBUG(263, *YYCURSOR);
4982 	++YYCURSOR;
4983 	if ((YYLIMIT - YYCURSOR) < 9) YYFILL(9);
4984 	yych = *YYCURSOR;
4985 yy264:
4986 	YYDEBUG(264, *YYCURSOR);
4987 	if (yych <= '@') {
4988 		if (yych <= '\'') {
4989 			if (yych <= '\t') {
4990 				if (yych <= 0x08) goto yy55;
4991 				goto yy263;
4992 			} else {
4993 				if (yych == ' ') goto yy263;
4994 				goto yy55;
4995 			}
4996 		} else {
4997 			if (yych <= '+') {
4998 				if (yych <= '(') goto yy267;
4999 				if (yych <= '*') goto yy55;
5000 				goto yy266;
5001 			} else {
5002 				if (yych == '-') goto yy266;
5003 				goto yy55;
5004 			}
5005 		}
5006 	} else {
5007 		if (yych <= 'Z') {
5008 			if (yych <= 'G') {
5009 				if (yych <= 'A') goto yy268;
5010 				if (yych <= 'F') goto yy269;
5011 			} else {
5012 				if (yych == 'P') goto yy268;
5013 				goto yy269;
5014 			}
5015 		} else {
5016 			if (yych <= 'o') {
5017 				if (yych <= '`') goto yy55;
5018 				if (yych <= 'a') goto yy270;
5019 				goto yy271;
5020 			} else {
5021 				if (yych <= 'p') goto yy270;
5022 				if (yych <= 'z') goto yy271;
5023 				goto yy55;
5024 			}
5025 		}
5026 	}
5027 yy265:
5028 	YYDEBUG(265, *YYCURSOR);
5029 	yych = *++YYCURSOR;
5030 	if (yych <= 'L') {
5031 		if (yych == ')') goto yy261;
5032 		if (yych <= '@') goto yy256;
5033 		goto yy272;
5034 	} else {
5035 		if (yych <= 'Z') {
5036 			if (yych <= 'M') goto yy299;
5037 			goto yy272;
5038 		} else {
5039 			if (yych <= '`') goto yy256;
5040 			if (yych <= 'z') goto yy283;
5041 			goto yy256;
5042 		}
5043 	}
5044 yy266:
5045 	YYDEBUG(266, *YYCURSOR);
5046 	yych = *++YYCURSOR;
5047 	if (yych <= '/') goto yy55;
5048 	if (yych <= '1') goto yy294;
5049 	if (yych <= '2') goto yy295;
5050 	if (yych <= '9') goto yy296;
5051 	goto yy55;
5052 yy267:
5053 	YYDEBUG(267, *YYCURSOR);
5054 	yych = *++YYCURSOR;
5055 	if (yych <= '@') goto yy55;
5056 	if (yych <= 'Z') goto yy271;
5057 	if (yych <= '`') goto yy55;
5058 	if (yych <= 'z') goto yy271;
5059 	goto yy55;
5060 yy268:
5061 	YYDEBUG(268, *YYCURSOR);
5062 	yyaccept = 7;
5063 	yych = *(YYMARKER = ++YYCURSOR);
5064 	if (yych <= 'L') {
5065 		if (yych <= '-') {
5066 			if (yych == ')') goto yy261;
5067 			goto yy256;
5068 		} else {
5069 			if (yych <= '.') goto yy277;
5070 			if (yych <= '@') goto yy256;
5071 			goto yy272;
5072 		}
5073 	} else {
5074 		if (yych <= '`') {
5075 			if (yych <= 'M') goto yy278;
5076 			if (yych <= 'Z') goto yy272;
5077 			goto yy256;
5078 		} else {
5079 			if (yych == 'm') goto yy293;
5080 			if (yych <= 'z') goto yy283;
5081 			goto yy256;
5082 		}
5083 	}
5084 yy269:
5085 	YYDEBUG(269, *YYCURSOR);
5086 	yych = *++YYCURSOR;
5087 	if (yych <= '@') {
5088 		if (yych == ')') goto yy261;
5089 		goto yy256;
5090 	} else {
5091 		if (yych <= 'Z') goto yy272;
5092 		if (yych <= '`') goto yy256;
5093 		if (yych <= 'z') goto yy283;
5094 		goto yy256;
5095 	}
5096 yy270:
5097 	YYDEBUG(270, *YYCURSOR);
5098 	yyaccept = 7;
5099 	yych = *(YYMARKER = ++YYCURSOR);
5100 	if (yych <= 'L') {
5101 		if (yych <= '-') {
5102 			if (yych == ')') goto yy261;
5103 			goto yy256;
5104 		} else {
5105 			if (yych <= '.') goto yy277;
5106 			if (yych <= '@') goto yy256;
5107 			goto yy272;
5108 		}
5109 	} else {
5110 		if (yych <= '`') {
5111 			if (yych <= 'M') goto yy278;
5112 			if (yych <= 'Z') goto yy272;
5113 			goto yy256;
5114 		} else {
5115 			if (yych == 'm') goto yy278;
5116 			if (yych <= 'z') goto yy272;
5117 			goto yy256;
5118 		}
5119 	}
5120 yy271:
5121 	YYDEBUG(271, *YYCURSOR);
5122 	yych = *++YYCURSOR;
5123 	if (yych <= '@') {
5124 		if (yych == ')') goto yy261;
5125 		goto yy256;
5126 	} else {
5127 		if (yych <= 'Z') goto yy272;
5128 		if (yych <= '`') goto yy256;
5129 		if (yych >= '{') goto yy256;
5130 	}
5131 yy272:
5132 	YYDEBUG(272, *YYCURSOR);
5133 	yych = *++YYCURSOR;
5134 	if (yych <= '@') {
5135 		if (yych == ')') goto yy261;
5136 		goto yy256;
5137 	} else {
5138 		if (yych <= 'Z') goto yy273;
5139 		if (yych <= '`') goto yy256;
5140 		if (yych >= '{') goto yy256;
5141 	}
5142 yy273:
5143 	YYDEBUG(273, *YYCURSOR);
5144 	yych = *++YYCURSOR;
5145 	if (yych <= '@') {
5146 		if (yych == ')') goto yy261;
5147 		goto yy256;
5148 	} else {
5149 		if (yych <= 'Z') goto yy274;
5150 		if (yych <= '`') goto yy256;
5151 		if (yych >= '{') goto yy256;
5152 	}
5153 yy274:
5154 	YYDEBUG(274, *YYCURSOR);
5155 	yych = *++YYCURSOR;
5156 	if (yych <= '@') {
5157 		if (yych == ')') goto yy261;
5158 		goto yy256;
5159 	} else {
5160 		if (yych <= 'Z') goto yy275;
5161 		if (yych <= '`') goto yy256;
5162 		if (yych >= '{') goto yy256;
5163 	}
5164 yy275:
5165 	YYDEBUG(275, *YYCURSOR);
5166 	yych = *++YYCURSOR;
5167 	if (yych <= '@') {
5168 		if (yych == ')') goto yy261;
5169 		goto yy256;
5170 	} else {
5171 		if (yych <= 'Z') goto yy276;
5172 		if (yych <= '`') goto yy256;
5173 		if (yych >= '{') goto yy256;
5174 	}
5175 yy276:
5176 	YYDEBUG(276, *YYCURSOR);
5177 	yych = *++YYCURSOR;
5178 	if (yych == ')') goto yy261;
5179 	goto yy256;
5180 yy277:
5181 	YYDEBUG(277, *YYCURSOR);
5182 	yych = *++YYCURSOR;
5183 	if (yych == 'M') goto yy282;
5184 	if (yych == 'm') goto yy282;
5185 	goto yy55;
5186 yy278:
5187 	YYDEBUG(278, *YYCURSOR);
5188 	yyaccept = 7;
5189 	yych = *(YYMARKER = ++YYCURSOR);
5190 	if (yych <= ')') {
5191 		if (yych <= '\t') {
5192 			if (yych <= 0x00) goto yy280;
5193 			if (yych <= 0x08) goto yy256;
5194 			goto yy280;
5195 		} else {
5196 			if (yych == ' ') goto yy280;
5197 			if (yych <= '(') goto yy256;
5198 			goto yy261;
5199 		}
5200 	} else {
5201 		if (yych <= '@') {
5202 			if (yych != '.') goto yy256;
5203 		} else {
5204 			if (yych <= 'Z') goto yy273;
5205 			if (yych <= '`') goto yy256;
5206 			if (yych <= 'z') goto yy273;
5207 			goto yy256;
5208 		}
5209 	}
5210 yy279:
5211 	YYDEBUG(279, *YYCURSOR);
5212 	yych = *++YYCURSOR;
5213 	if (yych <= '\t') {
5214 		if (yych <= 0x00) goto yy280;
5215 		if (yych <= 0x08) goto yy55;
5216 	} else {
5217 		if (yych != ' ') goto yy55;
5218 	}
5219 yy280:
5220 	YYDEBUG(280, *YYCURSOR);
5221 	++YYCURSOR;
5222 	YYDEBUG(281, *YYCURSOR);
5223 #line 1733 "parse_date.re"
5224 	{
5225 		DEBUG_OUTPUT("dateshortwithtimeshort12 | dateshortwithtimelong12");
5226 		TIMELIB_INIT;
5227 		TIMELIB_HAVE_DATE();
5228 		s->time->m = timelib_get_month((char **) &ptr);
5229 		s->time->d = timelib_get_nr((char **) &ptr, 2);
5230 
5231 		TIMELIB_HAVE_TIME();
5232 		s->time->h = timelib_get_nr((char **) &ptr, 2);
5233 		s->time->i = timelib_get_nr((char **) &ptr, 2);
5234 		if (*ptr == ':' || *ptr == '.') {
5235 			s->time->s = timelib_get_nr((char **) &ptr, 2);
5236 
5237 			if (*ptr == '.') {
5238 				s->time->us = timelib_get_frac_nr((char **) &ptr, 8);
5239 			}
5240 		}
5241 
5242 		s->time->h += timelib_meridian((char **) &ptr, s->time->h);
5243 		TIMELIB_DEINIT;
5244 		return TIMELIB_SHORTDATE_WITH_TIME;
5245 	}
5246 #line 5244 "<stdout>"
5247 yy282:
5248 	YYDEBUG(282, *YYCURSOR);
5249 	yych = *++YYCURSOR;
5250 	if (yych <= 0x1F) {
5251 		if (yych <= 0x00) goto yy280;
5252 		if (yych == '\t') goto yy280;
5253 		goto yy55;
5254 	} else {
5255 		if (yych <= ' ') goto yy280;
5256 		if (yych == '.') goto yy279;
5257 		goto yy55;
5258 	}
5259 yy283:
5260 	YYDEBUG(283, *YYCURSOR);
5261 	yyaccept = 7;
5262 	yych = *(YYMARKER = ++YYCURSOR);
5263 	if (yych <= '/') {
5264 		if (yych <= ',') {
5265 			if (yych == ')') goto yy261;
5266 			goto yy256;
5267 		} else {
5268 			if (yych == '.') goto yy256;
5269 			goto yy285;
5270 		}
5271 	} else {
5272 		if (yych <= '^') {
5273 			if (yych <= '@') goto yy256;
5274 			if (yych <= 'Z') goto yy273;
5275 			goto yy256;
5276 		} else {
5277 			if (yych <= '_') goto yy285;
5278 			if (yych <= '`') goto yy256;
5279 			if (yych >= '{') goto yy256;
5280 		}
5281 	}
5282 yy284:
5283 	YYDEBUG(284, *YYCURSOR);
5284 	yyaccept = 7;
5285 	yych = *(YYMARKER = ++YYCURSOR);
5286 	if (yych <= '/') {
5287 		if (yych <= ',') {
5288 			if (yych == ')') goto yy261;
5289 			goto yy256;
5290 		} else {
5291 			if (yych == '.') goto yy256;
5292 		}
5293 	} else {
5294 		if (yych <= '^') {
5295 			if (yych <= '@') goto yy256;
5296 			if (yych <= 'Z') goto yy274;
5297 			goto yy256;
5298 		} else {
5299 			if (yych <= '_') goto yy285;
5300 			if (yych <= '`') goto yy256;
5301 			if (yych <= 'z') goto yy288;
5302 			goto yy256;
5303 		}
5304 	}
5305 yy285:
5306 	YYDEBUG(285, *YYCURSOR);
5307 	++YYCURSOR;
5308 	if (YYLIMIT <= YYCURSOR) YYFILL(1);
5309 	yych = *YYCURSOR;
5310 	if (yych <= '@') goto yy55;
5311 	if (yych <= 'Z') goto yy286;
5312 	if (yych <= '`') goto yy55;
5313 	if (yych >= '{') goto yy55;
5314 yy286:
5315 	YYDEBUG(286, *YYCURSOR);
5316 	yyaccept = 7;
5317 	YYMARKER = ++YYCURSOR;
5318 	if (YYLIMIT <= YYCURSOR) YYFILL(1);
5319 	yych = *YYCURSOR;
5320 	YYDEBUG(287, *YYCURSOR);
5321 	if (yych <= '@') {
5322 		if (yych <= '-') {
5323 			if (yych <= ',') goto yy256;
5324 			goto yy285;
5325 		} else {
5326 			if (yych == '/') goto yy285;
5327 			goto yy256;
5328 		}
5329 	} else {
5330 		if (yych <= '_') {
5331 			if (yych <= 'Z') goto yy286;
5332 			if (yych <= '^') goto yy256;
5333 			goto yy285;
5334 		} else {
5335 			if (yych <= '`') goto yy256;
5336 			if (yych <= 'z') goto yy286;
5337 			goto yy256;
5338 		}
5339 	}
5340 yy288:
5341 	YYDEBUG(288, *YYCURSOR);
5342 	yyaccept = 7;
5343 	yych = *(YYMARKER = ++YYCURSOR);
5344 	if (yych <= '/') {
5345 		if (yych <= ',') {
5346 			if (yych == ')') goto yy261;
5347 			goto yy256;
5348 		} else {
5349 			if (yych == '.') goto yy256;
5350 			goto yy285;
5351 		}
5352 	} else {
5353 		if (yych <= '^') {
5354 			if (yych <= '@') goto yy256;
5355 			if (yych <= 'Z') goto yy275;
5356 			goto yy256;
5357 		} else {
5358 			if (yych <= '_') goto yy285;
5359 			if (yych <= '`') goto yy256;
5360 			if (yych >= '{') goto yy256;
5361 		}
5362 	}
5363 	YYDEBUG(289, *YYCURSOR);
5364 	yyaccept = 7;
5365 	yych = *(YYMARKER = ++YYCURSOR);
5366 	if (yych <= '/') {
5367 		if (yych <= ',') {
5368 			if (yych == ')') goto yy261;
5369 			goto yy256;
5370 		} else {
5371 			if (yych == '.') goto yy256;
5372 			goto yy285;
5373 		}
5374 	} else {
5375 		if (yych <= '^') {
5376 			if (yych <= '@') goto yy256;
5377 			if (yych <= 'Z') goto yy276;
5378 			goto yy256;
5379 		} else {
5380 			if (yych <= '_') goto yy285;
5381 			if (yych <= '`') goto yy256;
5382 			if (yych >= '{') goto yy256;
5383 		}
5384 	}
5385 	YYDEBUG(290, *YYCURSOR);
5386 	yyaccept = 7;
5387 	yych = *(YYMARKER = ++YYCURSOR);
5388 	if (yych <= '.') {
5389 		if (yych <= ')') {
5390 			if (yych <= '(') goto yy256;
5391 			goto yy261;
5392 		} else {
5393 			if (yych == '-') goto yy285;
5394 			goto yy256;
5395 		}
5396 	} else {
5397 		if (yych <= '_') {
5398 			if (yych <= '/') goto yy285;
5399 			if (yych <= '^') goto yy256;
5400 			goto yy285;
5401 		} else {
5402 			if (yych <= '`') goto yy256;
5403 			if (yych >= '{') goto yy256;
5404 		}
5405 	}
5406 yy291:
5407 	YYDEBUG(291, *YYCURSOR);
5408 	++YYCURSOR;
5409 	if (YYLIMIT <= YYCURSOR) YYFILL(1);
5410 	yych = *YYCURSOR;
5411 	YYDEBUG(292, *YYCURSOR);
5412 	if (yych <= '/') {
5413 		if (yych == '-') goto yy285;
5414 		if (yych <= '.') goto yy55;
5415 		goto yy285;
5416 	} else {
5417 		if (yych <= '_') {
5418 			if (yych <= '^') goto yy55;
5419 			goto yy285;
5420 		} else {
5421 			if (yych <= '`') goto yy55;
5422 			if (yych <= 'z') goto yy291;
5423 			goto yy55;
5424 		}
5425 	}
5426 yy293:
5427 	YYDEBUG(293, *YYCURSOR);
5428 	yyaccept = 7;
5429 	yych = *(YYMARKER = ++YYCURSOR);
5430 	if (yych <= '-') {
5431 		if (yych <= 0x1F) {
5432 			if (yych <= 0x00) goto yy280;
5433 			if (yych == '\t') goto yy280;
5434 			goto yy256;
5435 		} else {
5436 			if (yych <= '(') {
5437 				if (yych <= ' ') goto yy280;
5438 				goto yy256;
5439 			} else {
5440 				if (yych <= ')') goto yy261;
5441 				if (yych <= ',') goto yy256;
5442 				goto yy285;
5443 			}
5444 		}
5445 	} else {
5446 		if (yych <= 'Z') {
5447 			if (yych <= '.') goto yy279;
5448 			if (yych <= '/') goto yy285;
5449 			if (yych <= '@') goto yy256;
5450 			goto yy273;
5451 		} else {
5452 			if (yych <= '_') {
5453 				if (yych <= '^') goto yy256;
5454 				goto yy285;
5455 			} else {
5456 				if (yych <= '`') goto yy256;
5457 				if (yych <= 'z') goto yy284;
5458 				goto yy256;
5459 			}
5460 		}
5461 	}
5462 yy294:
5463 	YYDEBUG(294, *YYCURSOR);
5464 	yych = *++YYCURSOR;
5465 	if (yych <= '/') goto yy256;
5466 	if (yych <= '9') goto yy296;
5467 	if (yych <= ':') goto yy297;
5468 	goto yy256;
5469 yy295:
5470 	YYDEBUG(295, *YYCURSOR);
5471 	yych = *++YYCURSOR;
5472 	if (yych <= '5') {
5473 		if (yych <= '/') goto yy256;
5474 		if (yych >= '5') goto yy298;
5475 	} else {
5476 		if (yych <= '9') goto yy261;
5477 		if (yych <= ':') goto yy297;
5478 		goto yy256;
5479 	}
5480 yy296:
5481 	YYDEBUG(296, *YYCURSOR);
5482 	yych = *++YYCURSOR;
5483 	if (yych <= '/') goto yy256;
5484 	if (yych <= '5') goto yy298;
5485 	if (yych <= '9') goto yy261;
5486 	if (yych >= ';') goto yy256;
5487 yy297:
5488 	YYDEBUG(297, *YYCURSOR);
5489 	yych = *++YYCURSOR;
5490 	if (yych <= '/') goto yy256;
5491 	if (yych <= '5') goto yy298;
5492 	if (yych <= '9') goto yy261;
5493 	goto yy256;
5494 yy298:
5495 	YYDEBUG(298, *YYCURSOR);
5496 	yych = *++YYCURSOR;
5497 	if (yych <= '/') goto yy256;
5498 	if (yych <= '9') goto yy261;
5499 	goto yy256;
5500 yy299:
5501 	YYDEBUG(299, *YYCURSOR);
5502 	yych = *++YYCURSOR;
5503 	if (yych <= 'S') {
5504 		if (yych == ')') goto yy261;
5505 		if (yych <= '@') goto yy256;
5506 		goto yy273;
5507 	} else {
5508 		if (yych <= 'Z') {
5509 			if (yych >= 'U') goto yy273;
5510 		} else {
5511 			if (yych <= '`') goto yy256;
5512 			if (yych <= 'z') goto yy273;
5513 			goto yy256;
5514 		}
5515 	}
5516 	YYDEBUG(300, *YYCURSOR);
5517 	yyaccept = 7;
5518 	yych = *(YYMARKER = ++YYCURSOR);
5519 	if (yych <= ',') {
5520 		if (yych <= ')') {
5521 			if (yych <= '(') goto yy256;
5522 			goto yy261;
5523 		} else {
5524 			if (yych == '+') goto yy266;
5525 			goto yy256;
5526 		}
5527 	} else {
5528 		if (yych <= 'Z') {
5529 			if (yych <= '-') goto yy266;
5530 			if (yych <= '@') goto yy256;
5531 			goto yy274;
5532 		} else {
5533 			if (yych <= '`') goto yy256;
5534 			if (yych <= 'z') goto yy274;
5535 			goto yy256;
5536 		}
5537 	}
5538 yy301:
5539 	YYDEBUG(301, *YYCURSOR);
5540 	yyaccept = 7;
5541 	yych = *(YYMARKER = ++YYCURSOR);
5542 	if (yych <= ':') {
5543 		if (yych <= ' ') {
5544 			if (yych == '\t') goto yy302;
5545 			if (yych <= 0x1F) goto yy256;
5546 		} else {
5547 			if (yych == '.') goto yy258;
5548 			if (yych <= '9') goto yy256;
5549 			goto yy258;
5550 		}
5551 	} else {
5552 		if (yych <= 'P') {
5553 			if (yych == 'A') goto yy304;
5554 			if (yych <= 'O') goto yy256;
5555 			goto yy304;
5556 		} else {
5557 			if (yych <= 'a') {
5558 				if (yych <= '`') goto yy256;
5559 				goto yy304;
5560 			} else {
5561 				if (yych == 'p') goto yy304;
5562 				goto yy256;
5563 			}
5564 		}
5565 	}
5566 yy302:
5567 	YYDEBUG(302, *YYCURSOR);
5568 	++YYCURSOR;
5569 	if ((YYLIMIT - YYCURSOR) < 5) YYFILL(5);
5570 	yych = *YYCURSOR;
5571 	YYDEBUG(303, *YYCURSOR);
5572 	if (yych <= 'A') {
5573 		if (yych <= 0x1F) {
5574 			if (yych == '\t') goto yy302;
5575 			goto yy55;
5576 		} else {
5577 			if (yych <= ' ') goto yy302;
5578 			if (yych <= '@') goto yy55;
5579 		}
5580 	} else {
5581 		if (yych <= '`') {
5582 			if (yych != 'P') goto yy55;
5583 		} else {
5584 			if (yych <= 'a') goto yy304;
5585 			if (yych != 'p') goto yy55;
5586 		}
5587 	}
5588 yy304:
5589 	YYDEBUG(304, *YYCURSOR);
5590 	yych = *++YYCURSOR;
5591 	if (yych <= 'L') {
5592 		if (yych != '.') goto yy55;
5593 	} else {
5594 		if (yych <= 'M') goto yy306;
5595 		if (yych == 'm') goto yy306;
5596 		goto yy55;
5597 	}
5598 	YYDEBUG(305, *YYCURSOR);
5599 	yych = *++YYCURSOR;
5600 	if (yych == 'M') goto yy306;
5601 	if (yych != 'm') goto yy55;
5602 yy306:
5603 	YYDEBUG(306, *YYCURSOR);
5604 	yych = *++YYCURSOR;
5605 	if (yych <= 0x1F) {
5606 		if (yych <= 0x00) goto yy280;
5607 		if (yych == '\t') goto yy280;
5608 		goto yy55;
5609 	} else {
5610 		if (yych <= ' ') goto yy280;
5611 		if (yych != '.') goto yy55;
5612 	}
5613 	YYDEBUG(307, *YYCURSOR);
5614 	yych = *++YYCURSOR;
5615 	if (yych <= '\t') {
5616 		if (yych <= 0x00) goto yy280;
5617 		if (yych <= 0x08) goto yy55;
5618 		goto yy280;
5619 	} else {
5620 		if (yych == ' ') goto yy280;
5621 		goto yy55;
5622 	}
5623 yy308:
5624 	YYDEBUG(308, *YYCURSOR);
5625 	yych = *++YYCURSOR;
5626 	if (yych == '.') goto yy309;
5627 	if (yych != ':') goto yy55;
5628 yy309:
5629 	YYDEBUG(309, *YYCURSOR);
5630 	yych = *++YYCURSOR;
5631 	if (yych <= '/') goto yy55;
5632 	if (yych <= '5') goto yy310;
5633 	if (yych <= '9') goto yy311;
5634 	goto yy55;
5635 yy310:
5636 	YYDEBUG(310, *YYCURSOR);
5637 	yyaccept = 7;
5638 	yych = *(YYMARKER = ++YYCURSOR);
5639 	if (yych <= '/') {
5640 		if (yych == '.') goto yy312;
5641 		goto yy256;
5642 	} else {
5643 		if (yych <= '9') goto yy311;
5644 		if (yych <= ':') goto yy312;
5645 		goto yy256;
5646 	}
5647 yy311:
5648 	YYDEBUG(311, *YYCURSOR);
5649 	yyaccept = 7;
5650 	yych = *(YYMARKER = ++YYCURSOR);
5651 	if (yych == '.') goto yy312;
5652 	if (yych != ':') goto yy256;
5653 yy312:
5654 	YYDEBUG(312, *YYCURSOR);
5655 	yych = *++YYCURSOR;
5656 	if (yych <= '/') goto yy55;
5657 	if (yych <= '5') goto yy313;
5658 	if (yych <= '6') goto yy314;
5659 	if (yych <= '9') goto yy261;
5660 	goto yy55;
5661 yy313:
5662 	YYDEBUG(313, *YYCURSOR);
5663 	yych = *++YYCURSOR;
5664 	if (yych <= '/') goto yy256;
5665 	if (yych <= '9') goto yy315;
5666 	goto yy256;
5667 yy314:
5668 	YYDEBUG(314, *YYCURSOR);
5669 	yych = *++YYCURSOR;
5670 	if (yych != '0') goto yy256;
5671 yy315:
5672 	YYDEBUG(315, *YYCURSOR);
5673 	yyaccept = 7;
5674 	yych = *(YYMARKER = ++YYCURSOR);
5675 	if (yych <= '*') {
5676 		if (yych <= 0x1F) {
5677 			if (yych == '\t') goto yy317;
5678 			goto yy256;
5679 		} else {
5680 			if (yych <= ' ') goto yy317;
5681 			if (yych == '(') goto yy317;
5682 			goto yy256;
5683 		}
5684 	} else {
5685 		if (yych <= '@') {
5686 			if (yych == ',') goto yy256;
5687 			if (yych <= '-') goto yy317;
5688 			goto yy256;
5689 		} else {
5690 			if (yych <= 'Z') goto yy317;
5691 			if (yych <= '`') goto yy256;
5692 			if (yych <= 'z') goto yy317;
5693 			goto yy256;
5694 		}
5695 	}
5696 yy316:
5697 	YYDEBUG(316, *YYCURSOR);
5698 	++YYCURSOR;
5699 	if ((YYLIMIT - YYCURSOR) < 9) YYFILL(9);
5700 	yych = *YYCURSOR;
5701 yy317:
5702 	YYDEBUG(317, *YYCURSOR);
5703 	if (yych <= '+') {
5704 		if (yych <= ' ') {
5705 			if (yych == '\t') goto yy316;
5706 			if (yych <= 0x1F) goto yy55;
5707 			goto yy316;
5708 		} else {
5709 			if (yych == '(') goto yy267;
5710 			if (yych <= '*') goto yy55;
5711 			goto yy266;
5712 		}
5713 	} else {
5714 		if (yych <= 'F') {
5715 			if (yych == '-') goto yy266;
5716 			if (yych <= '@') goto yy55;
5717 			goto yy269;
5718 		} else {
5719 			if (yych <= 'Z') {
5720 				if (yych <= 'G') goto yy265;
5721 				goto yy269;
5722 			} else {
5723 				if (yych <= '`') goto yy55;
5724 				if (yych <= 'z') goto yy271;
5725 				goto yy55;
5726 			}
5727 		}
5728 	}
5729 yy318:
5730 	YYDEBUG(318, *YYCURSOR);
5731 	yych = *++YYCURSOR;
5732 	if (yych <= '/') {
5733 		if (yych == '.') goto yy309;
5734 		goto yy55;
5735 	} else {
5736 		if (yych <= '9') goto yy308;
5737 		if (yych <= ':') goto yy309;
5738 		goto yy55;
5739 	}
5740 yy319:
5741 	YYDEBUG(319, *YYCURSOR);
5742 	yych = *++YYCURSOR;
5743 	if (yych <= '/') {
5744 		if (yych == '.') goto yy309;
5745 		goto yy55;
5746 	} else {
5747 		if (yych <= '4') goto yy308;
5748 		if (yych == ':') goto yy309;
5749 		goto yy55;
5750 	}
5751 yy320:
5752 	YYDEBUG(320, *YYCURSOR);
5753 	yyaccept = 6;
5754 	yych = *(YYMARKER = ++YYCURSOR);
5755 	if (yych <= '/') {
5756 		if (yych == '.') goto yy309;
5757 		goto yy242;
5758 	} else {
5759 		if (yych <= '0') goto yy327;
5760 		if (yych <= '9') goto yy328;
5761 		if (yych <= ':') goto yy309;
5762 		goto yy242;
5763 	}
5764 yy321:
5765 	YYDEBUG(321, *YYCURSOR);
5766 	yyaccept = 6;
5767 	yych = *(YYMARKER = ++YYCURSOR);
5768 	if (yych <= '/') {
5769 		if (yych == '.') goto yy254;
5770 		goto yy242;
5771 	} else {
5772 		if (yych <= '2') goto yy328;
5773 		if (yych <= '9') goto yy327;
5774 		if (yych <= ':') goto yy254;
5775 		goto yy242;
5776 	}
5777 yy322:
5778 	YYDEBUG(322, *YYCURSOR);
5779 	yyaccept = 6;
5780 	yych = *(YYMARKER = ++YYCURSOR);
5781 	if (yych <= '/') {
5782 		if (yych == '.') goto yy254;
5783 		goto yy242;
5784 	} else {
5785 		if (yych <= '4') goto yy327;
5786 		if (yych <= '9') goto yy324;
5787 		if (yych <= ':') goto yy254;
5788 		goto yy242;
5789 	}
5790 yy323:
5791 	YYDEBUG(323, *YYCURSOR);
5792 	yyaccept = 6;
5793 	yych = *(YYMARKER = ++YYCURSOR);
5794 	if (yych <= '/') {
5795 		if (yych == '.') goto yy254;
5796 		goto yy242;
5797 	} else {
5798 		if (yych <= '9') goto yy324;
5799 		if (yych <= ':') goto yy254;
5800 		goto yy242;
5801 	}
5802 yy324:
5803 	YYDEBUG(324, *YYCURSOR);
5804 	yych = *++YYCURSOR;
5805 	if (yych <= '/') goto yy242;
5806 	if (yych >= ':') goto yy242;
5807 yy325:
5808 	YYDEBUG(325, *YYCURSOR);
5809 	yych = *++YYCURSOR;
5810 	if (yych <= '/') goto yy242;
5811 	if (yych >= ':') goto yy242;
5812 	YYDEBUG(326, *YYCURSOR);
5813 	yych = *++YYCURSOR;
5814 	goto yy242;
5815 yy327:
5816 	YYDEBUG(327, *YYCURSOR);
5817 	yyaccept = 6;
5818 	yych = *(YYMARKER = ++YYCURSOR);
5819 	if (yych <= '/') {
5820 		if (yych == '.') goto yy309;
5821 		goto yy242;
5822 	} else {
5823 		if (yych <= '9') goto yy325;
5824 		if (yych <= ':') goto yy309;
5825 		goto yy242;
5826 	}
5827 yy328:
5828 	YYDEBUG(328, *YYCURSOR);
5829 	yyaccept = 6;
5830 	yych = *(YYMARKER = ++YYCURSOR);
5831 	if (yych <= '/') {
5832 		if (yych == '.') goto yy254;
5833 		goto yy242;
5834 	} else {
5835 		if (yych <= '9') goto yy325;
5836 		if (yych <= ':') goto yy254;
5837 		goto yy242;
5838 	}
5839 yy329:
5840 	YYDEBUG(329, *YYCURSOR);
5841 	yyaccept = 6;
5842 	yych = *(YYMARKER = ++YYCURSOR);
5843 	if (yych <= 0x00) goto yy248;
5844 	goto yy247;
5845 yy330:
5846 	YYDEBUG(330, *YYCURSOR);
5847 	yych = *++YYCURSOR;
5848 	if (yych <= '/') goto yy55;
5849 	if (yych >= ':') goto yy55;
5850 	YYDEBUG(331, *YYCURSOR);
5851 	++YYCURSOR;
5852 	YYDEBUG(332, *YYCURSOR);
5853 #line 1427 "parse_date.re"
5854 	{
5855 		int length = 0;
5856 		DEBUG_OUTPUT("datenoday");
5857 		TIMELIB_INIT;
5858 		TIMELIB_HAVE_DATE();
5859 		s->time->m = timelib_get_month((char **) &ptr);
5860 		s->time->y = timelib_get_nr_ex((char **) &ptr, 4, &length);
5861 		s->time->d = 1;
5862 		TIMELIB_PROCESS_YEAR(s->time->y, length);
5863 		TIMELIB_DEINIT;
5864 		return TIMELIB_DATE_NO_DAY;
5865 	}
5866 #line 5864 "<stdout>"
5867 yy333:
5868 	YYDEBUG(333, *YYCURSOR);
5869 	yych = *++YYCURSOR;
5870 	if (yych <= '9') {
5871 		if (yych <= ' ') {
5872 			if (yych <= 0x08) {
5873 				if (yych <= 0x00) goto yy248;
5874 				goto yy55;
5875 			} else {
5876 				if (yych <= '\t') goto yy246;
5877 				if (yych <= 0x1F) goto yy55;
5878 				goto yy246;
5879 			}
5880 		} else {
5881 			if (yych <= '-') {
5882 				if (yych == ',') goto yy246;
5883 				goto yy55;
5884 			} else {
5885 				if (yych <= '.') goto yy246;
5886 				if (yych <= '/') goto yy55;
5887 				goto yy330;
5888 			}
5889 		}
5890 	} else {
5891 		if (yych <= 'm') {
5892 			if (yych <= 'd') {
5893 				if (yych <= 'c') goto yy55;
5894 				goto yy246;
5895 			} else {
5896 				if (yych == 'h') goto yy246;
5897 				goto yy55;
5898 			}
5899 		} else {
5900 			if (yych <= 'r') {
5901 				if (yych <= 'n') goto yy243;
5902 				if (yych <= 'q') goto yy55;
5903 				goto yy244;
5904 			} else {
5905 				if (yych <= 's') goto yy241;
5906 				if (yych <= 't') goto yy245;
5907 				goto yy55;
5908 			}
5909 		}
5910 	}
5911 yy334:
5912 	YYDEBUG(334, *YYCURSOR);
5913 	yych = *++YYCURSOR;
5914 	if (yych <= '9') {
5915 		if (yych <= ' ') {
5916 			if (yych <= 0x08) {
5917 				if (yych <= 0x00) goto yy248;
5918 				goto yy55;
5919 			} else {
5920 				if (yych <= '\t') goto yy246;
5921 				if (yych <= 0x1F) goto yy55;
5922 				goto yy246;
5923 			}
5924 		} else {
5925 			if (yych <= '-') {
5926 				if (yych == ',') goto yy246;
5927 				goto yy55;
5928 			} else {
5929 				if (yych <= '.') goto yy246;
5930 				if (yych <= '/') goto yy55;
5931 				goto yy337;
5932 			}
5933 		}
5934 	} else {
5935 		if (yych <= 'm') {
5936 			if (yych <= 'd') {
5937 				if (yych <= 'c') goto yy55;
5938 				goto yy246;
5939 			} else {
5940 				if (yych == 'h') goto yy246;
5941 				goto yy55;
5942 			}
5943 		} else {
5944 			if (yych <= 'r') {
5945 				if (yych <= 'n') goto yy243;
5946 				if (yych <= 'q') goto yy55;
5947 				goto yy244;
5948 			} else {
5949 				if (yych <= 's') goto yy241;
5950 				if (yych <= 't') goto yy245;
5951 				goto yy55;
5952 			}
5953 		}
5954 	}
5955 yy335:
5956 	YYDEBUG(335, *YYCURSOR);
5957 	yych = *++YYCURSOR;
5958 	if (yych <= '9') {
5959 		if (yych <= ' ') {
5960 			if (yych <= 0x08) {
5961 				if (yych <= 0x00) goto yy248;
5962 				goto yy55;
5963 			} else {
5964 				if (yych <= '\t') goto yy246;
5965 				if (yych <= 0x1F) goto yy55;
5966 				goto yy246;
5967 			}
5968 		} else {
5969 			if (yych <= '-') {
5970 				if (yych == ',') goto yy246;
5971 				goto yy55;
5972 			} else {
5973 				if (yych <= '.') goto yy246;
5974 				if (yych <= '/') goto yy55;
5975 				goto yy337;
5976 			}
5977 		}
5978 	} else {
5979 		if (yych <= 'm') {
5980 			if (yych <= 'd') {
5981 				if (yych <= 'c') goto yy55;
5982 				goto yy246;
5983 			} else {
5984 				if (yych == 'h') goto yy246;
5985 				goto yy55;
5986 			}
5987 		} else {
5988 			if (yych <= 'r') {
5989 				if (yych <= 'n') goto yy243;
5990 				if (yych <= 'q') goto yy55;
5991 				goto yy244;
5992 			} else {
5993 				if (yych <= 's') goto yy241;
5994 				if (yych <= 't') goto yy245;
5995 				goto yy55;
5996 			}
5997 		}
5998 	}
5999 yy336:
6000 	YYDEBUG(336, *YYCURSOR);
6001 	yych = *++YYCURSOR;
6002 	if (yych <= '1') {
6003 		if (yych <= ' ') {
6004 			if (yych <= 0x08) {
6005 				if (yych <= 0x00) goto yy248;
6006 				goto yy55;
6007 			} else {
6008 				if (yych <= '\t') goto yy246;
6009 				if (yych <= 0x1F) goto yy55;
6010 				goto yy246;
6011 			}
6012 		} else {
6013 			if (yych <= '-') {
6014 				if (yych == ',') goto yy246;
6015 				goto yy55;
6016 			} else {
6017 				if (yych <= '.') goto yy246;
6018 				if (yych <= '/') goto yy55;
6019 			}
6020 		}
6021 	} else {
6022 		if (yych <= 'm') {
6023 			if (yych <= 'd') {
6024 				if (yych <= '9') goto yy240;
6025 				if (yych <= 'c') goto yy55;
6026 				goto yy246;
6027 			} else {
6028 				if (yych == 'h') goto yy246;
6029 				goto yy55;
6030 			}
6031 		} else {
6032 			if (yych <= 'r') {
6033 				if (yych <= 'n') goto yy243;
6034 				if (yych <= 'q') goto yy55;
6035 				goto yy244;
6036 			} else {
6037 				if (yych <= 's') goto yy241;
6038 				if (yych <= 't') goto yy245;
6039 				goto yy55;
6040 			}
6041 		}
6042 	}
6043 yy337:
6044 	YYDEBUG(337, *YYCURSOR);
6045 	yych = *++YYCURSOR;
6046 	if (yych <= '9') {
6047 		if (yych <= ' ') {
6048 			if (yych <= 0x08) {
6049 				if (yych <= 0x00) goto yy248;
6050 				goto yy55;
6051 			} else {
6052 				if (yych <= '\t') goto yy246;
6053 				if (yych <= 0x1F) goto yy55;
6054 				goto yy246;
6055 			}
6056 		} else {
6057 			if (yych <= '-') {
6058 				if (yych <= '+') goto yy55;
6059 				if (yych <= ',') goto yy246;
6060 			} else {
6061 				if (yych <= '.') goto yy246;
6062 				if (yych <= '/') goto yy55;
6063 				goto yy330;
6064 			}
6065 		}
6066 	} else {
6067 		if (yych <= 'm') {
6068 			if (yych <= 'd') {
6069 				if (yych <= 'c') goto yy55;
6070 				goto yy246;
6071 			} else {
6072 				if (yych == 'h') goto yy246;
6073 				goto yy55;
6074 			}
6075 		} else {
6076 			if (yych <= 'r') {
6077 				if (yych <= 'n') goto yy243;
6078 				if (yych <= 'q') goto yy55;
6079 				goto yy244;
6080 			} else {
6081 				if (yych <= 's') goto yy241;
6082 				if (yych <= 't') goto yy245;
6083 				goto yy55;
6084 			}
6085 		}
6086 	}
6087 	YYDEBUG(338, *YYCURSOR);
6088 	yych = *++YYCURSOR;
6089 	if (yych <= '/') goto yy55;
6090 	if (yych >= ':') goto yy55;
6091 	YYDEBUG(339, *YYCURSOR);
6092 	++YYCURSOR;
6093 	if ((yych = *YYCURSOR) <= '/') goto yy340;
6094 	if (yych <= '9') goto yy341;
6095 yy340:
6096 	YYDEBUG(340, *YYCURSOR);
6097 #line 1571 "parse_date.re"
6098 	{
6099 		int length = 0;
6100 		DEBUG_OUTPUT("pgtextshort");
6101 		TIMELIB_INIT;
6102 		TIMELIB_HAVE_DATE();
6103 		s->time->m = timelib_get_month((char **) &ptr);
6104 		s->time->d = timelib_get_nr((char **) &ptr, 2);
6105 		s->time->y = timelib_get_nr_ex((char **) &ptr, 4, &length);
6106 		TIMELIB_PROCESS_YEAR(s->time->y, length);
6107 		TIMELIB_DEINIT;
6108 		return TIMELIB_PG_TEXT;
6109 	}
6110 #line 6108 "<stdout>"
6111 yy341:
6112 	YYDEBUG(341, *YYCURSOR);
6113 	yych = *++YYCURSOR;
6114 	if (yych <= '/') goto yy340;
6115 	if (yych >= ':') goto yy340;
6116 	YYDEBUG(342, *YYCURSOR);
6117 	yych = *++YYCURSOR;
6118 	if (yych <= '/') goto yy340;
6119 	if (yych >= ':') goto yy340;
6120 	YYDEBUG(343, *YYCURSOR);
6121 	yych = *++YYCURSOR;
6122 	goto yy340;
6123 yy344:
6124 	YYDEBUG(344, *YYCURSOR);
6125 	yyaccept = 0;
6126 	yych = *(YYMARKER = ++YYCURSOR);
6127 	if (yych <= 'B') {
6128 		if (yych <= '-') {
6129 			if (yych == ')') goto yy174;
6130 			if (yych <= ',') goto yy3;
6131 			goto yy182;
6132 		} else {
6133 			if (yych == '/') goto yy182;
6134 			if (yych <= '@') goto yy3;
6135 			goto yy176;
6136 		}
6137 	} else {
6138 		if (yych <= '_') {
6139 			if (yych <= 'C') goto yy227;
6140 			if (yych <= 'Z') goto yy176;
6141 			if (yych <= '^') goto yy3;
6142 			goto yy182;
6143 		} else {
6144 			if (yych <= 'b') {
6145 				if (yych <= '`') goto yy3;
6146 				goto yy181;
6147 			} else {
6148 				if (yych <= 'c') goto yy345;
6149 				if (yych <= 'z') goto yy181;
6150 				goto yy3;
6151 			}
6152 		}
6153 	}
6154 yy345:
6155 	YYDEBUG(345, *YYCURSOR);
6156 	yyaccept = 5;
6157 	yych = *(YYMARKER = ++YYCURSOR);
6158 	if (yych <= '9') {
6159 		if (yych <= '(') {
6160 			if (yych <= '\t') {
6161 				if (yych <= 0x08) goto yy228;
6162 				goto yy230;
6163 			} else {
6164 				if (yych == ' ') goto yy230;
6165 				goto yy228;
6166 			}
6167 		} else {
6168 			if (yych <= '-') {
6169 				if (yych <= ')') goto yy174;
6170 				if (yych <= ',') goto yy228;
6171 			} else {
6172 				if (yych == '/') goto yy182;
6173 				goto yy230;
6174 			}
6175 		}
6176 	} else {
6177 		if (yych <= '^') {
6178 			if (yych <= 'D') {
6179 				if (yych <= '@') goto yy228;
6180 				goto yy177;
6181 			} else {
6182 				if (yych <= 'E') goto yy235;
6183 				if (yych <= 'Z') goto yy177;
6184 				goto yy228;
6185 			}
6186 		} else {
6187 			if (yych <= 'd') {
6188 				if (yych <= '_') goto yy182;
6189 				if (yych <= '`') goto yy228;
6190 				goto yy185;
6191 			} else {
6192 				if (yych <= 'e') goto yy347;
6193 				if (yych <= 'z') goto yy185;
6194 				goto yy228;
6195 			}
6196 		}
6197 	}
6198 yy346:
6199 	YYDEBUG(346, *YYCURSOR);
6200 	yych = *++YYCURSOR;
6201 	if (yybm[0+yych] & 4) {
6202 		goto yy183;
6203 	}
6204 	if (yych <= '/') goto yy230;
6205 	if (yych <= '0') goto yy334;
6206 	if (yych <= '2') goto yy335;
6207 	if (yych <= '3') goto yy336;
6208 	goto yy230;
6209 yy347:
6210 	YYDEBUG(347, *YYCURSOR);
6211 	yyaccept = 0;
6212 	yych = *(YYMARKER = ++YYCURSOR);
6213 	if (yych <= 'L') {
6214 		if (yych <= '-') {
6215 			if (yych == ')') goto yy174;
6216 			if (yych <= ',') goto yy3;
6217 			goto yy182;
6218 		} else {
6219 			if (yych == '/') goto yy182;
6220 			if (yych <= '@') goto yy3;
6221 			goto yy178;
6222 		}
6223 	} else {
6224 		if (yych <= '_') {
6225 			if (yych <= 'M') goto yy236;
6226 			if (yych <= 'Z') goto yy178;
6227 			if (yych <= '^') goto yy3;
6228 			goto yy182;
6229 		} else {
6230 			if (yych <= 'l') {
6231 				if (yych <= '`') goto yy3;
6232 				goto yy186;
6233 			} else {
6234 				if (yych <= 'm') goto yy348;
6235 				if (yych <= 'z') goto yy186;
6236 				goto yy3;
6237 			}
6238 		}
6239 	}
6240 yy348:
6241 	YYDEBUG(348, *YYCURSOR);
6242 	yyaccept = 0;
6243 	yych = *(YYMARKER = ++YYCURSOR);
6244 	if (yych <= 'A') {
6245 		if (yych <= '-') {
6246 			if (yych == ')') goto yy174;
6247 			if (yych <= ',') goto yy3;
6248 			goto yy182;
6249 		} else {
6250 			if (yych == '/') goto yy182;
6251 			if (yych <= '@') goto yy3;
6252 			goto yy179;
6253 		}
6254 	} else {
6255 		if (yych <= '_') {
6256 			if (yych <= 'B') goto yy237;
6257 			if (yych <= 'Z') goto yy179;
6258 			if (yych <= '^') goto yy3;
6259 			goto yy182;
6260 		} else {
6261 			if (yych <= 'a') {
6262 				if (yych <= '`') goto yy3;
6263 				goto yy187;
6264 			} else {
6265 				if (yych <= 'b') goto yy349;
6266 				if (yych <= 'z') goto yy187;
6267 				goto yy3;
6268 			}
6269 		}
6270 	}
6271 yy349:
6272 	YYDEBUG(349, *YYCURSOR);
6273 	yyaccept = 0;
6274 	yych = *(YYMARKER = ++YYCURSOR);
6275 	if (yych <= 'D') {
6276 		if (yych <= ',') {
6277 			if (yych == ')') goto yy174;
6278 			goto yy3;
6279 		} else {
6280 			if (yych == '.') goto yy3;
6281 			if (yych <= '/') goto yy182;
6282 			goto yy3;
6283 		}
6284 	} else {
6285 		if (yych <= '`') {
6286 			if (yych <= 'E') goto yy238;
6287 			if (yych == '_') goto yy182;
6288 			goto yy3;
6289 		} else {
6290 			if (yych == 'e') goto yy350;
6291 			if (yych <= 'z') goto yy188;
6292 			goto yy3;
6293 		}
6294 	}
6295 yy350:
6296 	YYDEBUG(350, *YYCURSOR);
6297 	yych = *++YYCURSOR;
6298 	if (yych == 'R') goto yy239;
6299 	if (yych != 'r') goto yy189;
6300 yy351:
6301 	YYDEBUG(351, *YYCURSOR);
6302 	yyaccept = 5;
6303 	yych = *(YYMARKER = ++YYCURSOR);
6304 	if (yybm[0+yych] & 8) {
6305 		goto yy188;
6306 	}
6307 	if (yych <= '-') {
6308 		if (yych <= 0x1F) {
6309 			if (yych == '\t') goto yy230;
6310 			goto yy228;
6311 		} else {
6312 			if (yych <= ' ') goto yy230;
6313 			if (yych <= ',') goto yy228;
6314 		}
6315 	} else {
6316 		if (yych <= '9') {
6317 			if (yych == '/') goto yy182;
6318 			goto yy230;
6319 		} else {
6320 			if (yych == '_') goto yy182;
6321 			goto yy228;
6322 		}
6323 	}
6324 yy352:
6325 	YYDEBUG(352, *YYCURSOR);
6326 	yych = *++YYCURSOR;
6327 	if (yybm[0+yych] & 4) {
6328 		goto yy183;
6329 	}
6330 	goto yy230;
6331 yy353:
6332 	YYDEBUG(353, *YYCURSOR);
6333 	yych = *++YYCURSOR;
6334 	if (yych <= 'T') {
6335 		if (yych <= ')') {
6336 			if (yych <= '(') goto yy3;
6337 			goto yy174;
6338 		} else {
6339 			if (yych <= '@') goto yy3;
6340 			if (yych <= 'S') goto yy176;
6341 		}
6342 	} else {
6343 		if (yych <= 's') {
6344 			if (yych <= 'Z') goto yy176;
6345 			if (yych <= '`') goto yy3;
6346 			goto yy176;
6347 		} else {
6348 			if (yych <= 't') goto yy354;
6349 			if (yych <= 'z') goto yy176;
6350 			goto yy3;
6351 		}
6352 	}
6353 yy354:
6354 	YYDEBUG(354, *YYCURSOR);
6355 	yyaccept = 5;
6356 	yych = *(YYMARKER = ++YYCURSOR);
6357 	if (yych <= '/') {
6358 		if (yych <= '(') {
6359 			if (yych <= '\t') {
6360 				if (yych <= 0x08) goto yy228;
6361 				goto yy230;
6362 			} else {
6363 				if (yych == ' ') goto yy230;
6364 				goto yy228;
6365 			}
6366 		} else {
6367 			if (yych <= ',') {
6368 				if (yych <= ')') goto yy174;
6369 				goto yy228;
6370 			} else {
6371 				if (yych <= '-') goto yy231;
6372 				if (yych <= '.') goto yy230;
6373 				goto yy228;
6374 			}
6375 		}
6376 	} else {
6377 		if (yych <= 'Z') {
6378 			if (yych <= '@') {
6379 				if (yych <= '9') goto yy230;
6380 				goto yy228;
6381 			} else {
6382 				if (yych != 'O') goto yy177;
6383 			}
6384 		} else {
6385 			if (yych <= 'n') {
6386 				if (yych <= '`') goto yy228;
6387 				goto yy177;
6388 			} else {
6389 				if (yych <= 'o') goto yy355;
6390 				if (yych <= 'z') goto yy177;
6391 				goto yy228;
6392 			}
6393 		}
6394 	}
6395 yy355:
6396 	YYDEBUG(355, *YYCURSOR);
6397 	yych = *++YYCURSOR;
6398 	if (yych <= 'B') {
6399 		if (yych <= ')') {
6400 			if (yych <= '(') goto yy3;
6401 			goto yy174;
6402 		} else {
6403 			if (yych <= '@') goto yy3;
6404 			if (yych <= 'A') goto yy178;
6405 		}
6406 	} else {
6407 		if (yych <= 'a') {
6408 			if (yych <= 'Z') goto yy178;
6409 			if (yych <= '`') goto yy3;
6410 			goto yy178;
6411 		} else {
6412 			if (yych <= 'b') goto yy356;
6413 			if (yych <= 'z') goto yy178;
6414 			goto yy3;
6415 		}
6416 	}
6417 yy356:
6418 	YYDEBUG(356, *YYCURSOR);
6419 	yych = *++YYCURSOR;
6420 	if (yych <= 'E') {
6421 		if (yych <= ')') {
6422 			if (yych <= '(') goto yy3;
6423 			goto yy174;
6424 		} else {
6425 			if (yych <= '@') goto yy3;
6426 			if (yych <= 'D') goto yy179;
6427 		}
6428 	} else {
6429 		if (yych <= 'd') {
6430 			if (yych <= 'Z') goto yy179;
6431 			if (yych <= '`') goto yy3;
6432 			goto yy179;
6433 		} else {
6434 			if (yych <= 'e') goto yy357;
6435 			if (yych <= 'z') goto yy179;
6436 			goto yy3;
6437 		}
6438 	}
6439 yy357:
6440 	YYDEBUG(357, *YYCURSOR);
6441 	yych = *++YYCURSOR;
6442 	if (yych <= 'Q') {
6443 		if (yych == ')') goto yy174;
6444 		goto yy3;
6445 	} else {
6446 		if (yych <= 'R') goto yy239;
6447 		if (yych == 'r') goto yy239;
6448 		goto yy3;
6449 	}
6450 yy358:
6451 	YYDEBUG(358, *YYCURSOR);
6452 	yyaccept = 0;
6453 	yych = *(YYMARKER = ++YYCURSOR);
6454 	if (yych <= 'S') {
6455 		if (yych <= '-') {
6456 			if (yych == ')') goto yy174;
6457 			if (yych <= ',') goto yy3;
6458 			goto yy182;
6459 		} else {
6460 			if (yych == '/') goto yy182;
6461 			if (yych <= '@') goto yy3;
6462 			goto yy176;
6463 		}
6464 	} else {
6465 		if (yych <= '_') {
6466 			if (yych <= 'T') goto yy354;
6467 			if (yych <= 'Z') goto yy176;
6468 			if (yych <= '^') goto yy3;
6469 			goto yy182;
6470 		} else {
6471 			if (yych <= 's') {
6472 				if (yych <= '`') goto yy3;
6473 				goto yy181;
6474 			} else {
6475 				if (yych <= 't') goto yy359;
6476 				if (yych <= 'z') goto yy181;
6477 				goto yy3;
6478 			}
6479 		}
6480 	}
6481 yy359:
6482 	YYDEBUG(359, *YYCURSOR);
6483 	yyaccept = 5;
6484 	yych = *(YYMARKER = ++YYCURSOR);
6485 	if (yych <= '9') {
6486 		if (yych <= '(') {
6487 			if (yych <= '\t') {
6488 				if (yych <= 0x08) goto yy228;
6489 				goto yy230;
6490 			} else {
6491 				if (yych == ' ') goto yy230;
6492 				goto yy228;
6493 			}
6494 		} else {
6495 			if (yych <= '-') {
6496 				if (yych <= ')') goto yy174;
6497 				if (yych <= ',') goto yy228;
6498 				goto yy346;
6499 			} else {
6500 				if (yych == '/') goto yy182;
6501 				goto yy230;
6502 			}
6503 		}
6504 	} else {
6505 		if (yych <= '^') {
6506 			if (yych <= 'N') {
6507 				if (yych <= '@') goto yy228;
6508 				goto yy177;
6509 			} else {
6510 				if (yych <= 'O') goto yy355;
6511 				if (yych <= 'Z') goto yy177;
6512 				goto yy228;
6513 			}
6514 		} else {
6515 			if (yych <= 'n') {
6516 				if (yych <= '_') goto yy182;
6517 				if (yych <= '`') goto yy228;
6518 				goto yy185;
6519 			} else {
6520 				if (yych <= 'o') goto yy360;
6521 				if (yych <= 'z') goto yy185;
6522 				goto yy228;
6523 			}
6524 		}
6525 	}
6526 yy360:
6527 	YYDEBUG(360, *YYCURSOR);
6528 	yyaccept = 0;
6529 	yych = *(YYMARKER = ++YYCURSOR);
6530 	if (yych <= 'A') {
6531 		if (yych <= '-') {
6532 			if (yych == ')') goto yy174;
6533 			if (yych <= ',') goto yy3;
6534 			goto yy182;
6535 		} else {
6536 			if (yych == '/') goto yy182;
6537 			if (yych <= '@') goto yy3;
6538 			goto yy178;
6539 		}
6540 	} else {
6541 		if (yych <= '_') {
6542 			if (yych <= 'B') goto yy356;
6543 			if (yych <= 'Z') goto yy178;
6544 			if (yych <= '^') goto yy3;
6545 			goto yy182;
6546 		} else {
6547 			if (yych <= 'a') {
6548 				if (yych <= '`') goto yy3;
6549 				goto yy186;
6550 			} else {
6551 				if (yych <= 'b') goto yy361;
6552 				if (yych <= 'z') goto yy186;
6553 				goto yy3;
6554 			}
6555 		}
6556 	}
6557 yy361:
6558 	YYDEBUG(361, *YYCURSOR);
6559 	yyaccept = 0;
6560 	yych = *(YYMARKER = ++YYCURSOR);
6561 	if (yych <= 'D') {
6562 		if (yych <= '-') {
6563 			if (yych == ')') goto yy174;
6564 			if (yych <= ',') goto yy3;
6565 			goto yy182;
6566 		} else {
6567 			if (yych == '/') goto yy182;
6568 			if (yych <= '@') goto yy3;
6569 			goto yy179;
6570 		}
6571 	} else {
6572 		if (yych <= '_') {
6573 			if (yych <= 'E') goto yy357;
6574 			if (yych <= 'Z') goto yy179;
6575 			if (yych <= '^') goto yy3;
6576 			goto yy182;
6577 		} else {
6578 			if (yych <= 'd') {
6579 				if (yych <= '`') goto yy3;
6580 				goto yy187;
6581 			} else {
6582 				if (yych <= 'e') goto yy362;
6583 				if (yych <= 'z') goto yy187;
6584 				goto yy3;
6585 			}
6586 		}
6587 	}
6588 yy362:
6589 	YYDEBUG(362, *YYCURSOR);
6590 	yyaccept = 0;
6591 	yych = *(YYMARKER = ++YYCURSOR);
6592 	if (yych <= 'Q') {
6593 		if (yych <= ',') {
6594 			if (yych == ')') goto yy174;
6595 			goto yy3;
6596 		} else {
6597 			if (yych == '.') goto yy3;
6598 			if (yych <= '/') goto yy182;
6599 			goto yy3;
6600 		}
6601 	} else {
6602 		if (yych <= '`') {
6603 			if (yych <= 'R') goto yy239;
6604 			if (yych == '_') goto yy182;
6605 			goto yy3;
6606 		} else {
6607 			if (yych == 'r') goto yy351;
6608 			if (yych <= 'z') goto yy188;
6609 			goto yy3;
6610 		}
6611 	}
6612 yy363:
6613 	YYDEBUG(363, *YYCURSOR);
6614 	yych = *++YYCURSOR;
6615 	if (yych <= 'G') {
6616 		if (yych <= ')') {
6617 			if (yych <= '(') goto yy3;
6618 			goto yy174;
6619 		} else {
6620 			if (yych <= '@') goto yy3;
6621 			if (yych <= 'F') goto yy176;
6622 			goto yy371;
6623 		}
6624 	} else {
6625 		if (yych <= 'f') {
6626 			if (yych <= 'Z') goto yy176;
6627 			if (yych <= '`') goto yy3;
6628 			goto yy176;
6629 		} else {
6630 			if (yych <= 'g') goto yy371;
6631 			if (yych <= 'z') goto yy176;
6632 			goto yy3;
6633 		}
6634 	}
6635 yy364:
6636 	YYDEBUG(364, *YYCURSOR);
6637 	yych = *++YYCURSOR;
6638 	if (yych <= 'R') {
6639 		if (yych <= ')') {
6640 			if (yych <= '(') goto yy3;
6641 			goto yy174;
6642 		} else {
6643 			if (yych <= '@') goto yy3;
6644 			if (yych <= 'Q') goto yy176;
6645 			goto yy368;
6646 		}
6647 	} else {
6648 		if (yych <= 'q') {
6649 			if (yych <= 'Z') goto yy176;
6650 			if (yych <= '`') goto yy3;
6651 			goto yy176;
6652 		} else {
6653 			if (yych <= 'r') goto yy368;
6654 			if (yych <= 'z') goto yy176;
6655 			goto yy3;
6656 		}
6657 	}
6658 yy365:
6659 	YYDEBUG(365, *YYCURSOR);
6660 	yych = *++YYCURSOR;
6661 	if (yych <= 'O') {
6662 		if (yych <= ')') {
6663 			if (yych <= '(') goto yy3;
6664 			goto yy174;
6665 		} else {
6666 			if (yych <= '@') goto yy3;
6667 			if (yych <= 'N') goto yy176;
6668 		}
6669 	} else {
6670 		if (yych <= 'n') {
6671 			if (yych <= 'Z') goto yy176;
6672 			if (yych <= '`') goto yy3;
6673 			goto yy176;
6674 		} else {
6675 			if (yych <= 'o') goto yy366;
6676 			if (yych <= 'z') goto yy176;
6677 			goto yy3;
6678 		}
6679 	}
6680 yy366:
6681 	YYDEBUG(366, *YYCURSOR);
6682 	++YYCURSOR;
6683 	if ((yych = *YYCURSOR) <= '@') {
6684 		if (yych == ')') goto yy174;
6685 	} else {
6686 		if (yych <= 'Z') goto yy177;
6687 		if (yych <= '`') goto yy367;
6688 		if (yych <= 'z') goto yy177;
6689 	}
6690 yy367:
6691 	YYDEBUG(367, *YYCURSOR);
6692 #line 1629 "parse_date.re"
6693 	{
6694 		DEBUG_OUTPUT("ago");
6695 		TIMELIB_INIT;
6696 		s->time->relative.y = 0 - s->time->relative.y;
6697 		s->time->relative.m = 0 - s->time->relative.m;
6698 		s->time->relative.d = 0 - s->time->relative.d;
6699 		s->time->relative.h = 0 - s->time->relative.h;
6700 		s->time->relative.i = 0 - s->time->relative.i;
6701 		s->time->relative.s = 0 - s->time->relative.s;
6702 		s->time->relative.weekday = 0 - s->time->relative.weekday;
6703 		if (s->time->relative.weekday == 0) {
6704 			s->time->relative.weekday = -7;
6705 		}
6706 		if (s->time->relative.have_special_relative && s->time->relative.special.type == TIMELIB_SPECIAL_WEEKDAY) {
6707 			s->time->relative.special.amount = 0 - s->time->relative.special.amount;
6708 		}
6709 		TIMELIB_DEINIT;
6710 		return TIMELIB_AGO;
6711 	}
6712 #line 6710 "<stdout>"
6713 yy368:
6714 	YYDEBUG(368, *YYCURSOR);
6715 	yyaccept = 5;
6716 	yych = *(YYMARKER = ++YYCURSOR);
6717 	if (yych <= '/') {
6718 		if (yych <= '(') {
6719 			if (yych <= '\t') {
6720 				if (yych <= 0x08) goto yy228;
6721 				goto yy230;
6722 			} else {
6723 				if (yych == ' ') goto yy230;
6724 				goto yy228;
6725 			}
6726 		} else {
6727 			if (yych <= ',') {
6728 				if (yych <= ')') goto yy174;
6729 				goto yy228;
6730 			} else {
6731 				if (yych <= '-') goto yy231;
6732 				if (yych <= '.') goto yy230;
6733 				goto yy228;
6734 			}
6735 		}
6736 	} else {
6737 		if (yych <= 'Z') {
6738 			if (yych <= '@') {
6739 				if (yych <= '9') goto yy230;
6740 				goto yy228;
6741 			} else {
6742 				if (yych != 'I') goto yy177;
6743 			}
6744 		} else {
6745 			if (yych <= 'h') {
6746 				if (yych <= '`') goto yy228;
6747 				goto yy177;
6748 			} else {
6749 				if (yych <= 'i') goto yy369;
6750 				if (yych <= 'z') goto yy177;
6751 				goto yy228;
6752 			}
6753 		}
6754 	}
6755 yy369:
6756 	YYDEBUG(369, *YYCURSOR);
6757 	yych = *++YYCURSOR;
6758 	if (yych <= 'L') {
6759 		if (yych <= ')') {
6760 			if (yych <= '(') goto yy3;
6761 			goto yy174;
6762 		} else {
6763 			if (yych <= '@') goto yy3;
6764 			if (yych <= 'K') goto yy178;
6765 		}
6766 	} else {
6767 		if (yych <= 'k') {
6768 			if (yych <= 'Z') goto yy178;
6769 			if (yych <= '`') goto yy3;
6770 			goto yy178;
6771 		} else {
6772 			if (yych <= 'l') goto yy370;
6773 			if (yych <= 'z') goto yy178;
6774 			goto yy3;
6775 		}
6776 	}
6777 yy370:
6778 	YYDEBUG(370, *YYCURSOR);
6779 	yyaccept = 5;
6780 	yych = *(YYMARKER = ++YYCURSOR);
6781 	if (yych <= ',') {
6782 		if (yych <= 0x1F) {
6783 			if (yych == '\t') goto yy230;
6784 			goto yy228;
6785 		} else {
6786 			if (yych <= ' ') goto yy230;
6787 			if (yych == ')') goto yy174;
6788 			goto yy228;
6789 		}
6790 	} else {
6791 		if (yych <= '@') {
6792 			if (yych == '/') goto yy228;
6793 			if (yych <= '9') goto yy230;
6794 			goto yy228;
6795 		} else {
6796 			if (yych <= 'Z') goto yy179;
6797 			if (yych <= '`') goto yy228;
6798 			if (yych <= 'z') goto yy179;
6799 			goto yy228;
6800 		}
6801 	}
6802 yy371:
6803 	YYDEBUG(371, *YYCURSOR);
6804 	yyaccept = 5;
6805 	yych = *(YYMARKER = ++YYCURSOR);
6806 	if (yych <= '/') {
6807 		if (yych <= '(') {
6808 			if (yych <= '\t') {
6809 				if (yych <= 0x08) goto yy228;
6810 				goto yy230;
6811 			} else {
6812 				if (yych == ' ') goto yy230;
6813 				goto yy228;
6814 			}
6815 		} else {
6816 			if (yych <= ',') {
6817 				if (yych <= ')') goto yy174;
6818 				goto yy228;
6819 			} else {
6820 				if (yych <= '-') goto yy231;
6821 				if (yych <= '.') goto yy230;
6822 				goto yy228;
6823 			}
6824 		}
6825 	} else {
6826 		if (yych <= 'Z') {
6827 			if (yych <= '@') {
6828 				if (yych <= '9') goto yy230;
6829 				goto yy228;
6830 			} else {
6831 				if (yych != 'U') goto yy177;
6832 			}
6833 		} else {
6834 			if (yych <= 't') {
6835 				if (yych <= '`') goto yy228;
6836 				goto yy177;
6837 			} else {
6838 				if (yych <= 'u') goto yy372;
6839 				if (yych <= 'z') goto yy177;
6840 				goto yy228;
6841 			}
6842 		}
6843 	}
6844 yy372:
6845 	YYDEBUG(372, *YYCURSOR);
6846 	yych = *++YYCURSOR;
6847 	if (yych <= 'S') {
6848 		if (yych <= ')') {
6849 			if (yych <= '(') goto yy3;
6850 			goto yy174;
6851 		} else {
6852 			if (yych <= '@') goto yy3;
6853 			if (yych <= 'R') goto yy178;
6854 		}
6855 	} else {
6856 		if (yych <= 'r') {
6857 			if (yych <= 'Z') goto yy178;
6858 			if (yych <= '`') goto yy3;
6859 			goto yy178;
6860 		} else {
6861 			if (yych <= 's') goto yy373;
6862 			if (yych <= 'z') goto yy178;
6863 			goto yy3;
6864 		}
6865 	}
6866 yy373:
6867 	YYDEBUG(373, *YYCURSOR);
6868 	yych = *++YYCURSOR;
6869 	if (yych <= 'T') {
6870 		if (yych <= ')') {
6871 			if (yych <= '(') goto yy3;
6872 			goto yy174;
6873 		} else {
6874 			if (yych <= '@') goto yy3;
6875 			if (yych <= 'S') goto yy179;
6876 		}
6877 	} else {
6878 		if (yych <= 's') {
6879 			if (yych <= 'Z') goto yy179;
6880 			if (yych <= '`') goto yy3;
6881 			goto yy179;
6882 		} else {
6883 			if (yych <= 't') goto yy374;
6884 			if (yych <= 'z') goto yy179;
6885 			goto yy3;
6886 		}
6887 	}
6888 yy374:
6889 	YYDEBUG(374, *YYCURSOR);
6890 	yyaccept = 5;
6891 	yych = *(YYMARKER = ++YYCURSOR);
6892 	if (yych <= '(') {
6893 		if (yych <= '\t') {
6894 			if (yych <= 0x08) goto yy228;
6895 			goto yy230;
6896 		} else {
6897 			if (yych == ' ') goto yy230;
6898 			goto yy228;
6899 		}
6900 	} else {
6901 		if (yych <= '.') {
6902 			if (yych <= ')') goto yy174;
6903 			if (yych <= ',') goto yy228;
6904 			goto yy230;
6905 		} else {
6906 			if (yych <= '/') goto yy228;
6907 			if (yych <= '9') goto yy230;
6908 			goto yy228;
6909 		}
6910 	}
6911 yy375:
6912 	YYDEBUG(375, *YYCURSOR);
6913 	yyaccept = 0;
6914 	yych = *(YYMARKER = ++YYCURSOR);
6915 	if (yych <= 'F') {
6916 		if (yych <= '-') {
6917 			if (yych == ')') goto yy174;
6918 			if (yych <= ',') goto yy3;
6919 			goto yy182;
6920 		} else {
6921 			if (yych == '/') goto yy182;
6922 			if (yych <= '@') goto yy3;
6923 			goto yy176;
6924 		}
6925 	} else {
6926 		if (yych <= '_') {
6927 			if (yych <= 'G') goto yy371;
6928 			if (yych <= 'Z') goto yy176;
6929 			if (yych <= '^') goto yy3;
6930 			goto yy182;
6931 		} else {
6932 			if (yych <= 'f') {
6933 				if (yych <= '`') goto yy3;
6934 				goto yy181;
6935 			} else {
6936 				if (yych <= 'g') goto yy382;
6937 				if (yych <= 'z') goto yy181;
6938 				goto yy3;
6939 			}
6940 		}
6941 	}
6942 yy376:
6943 	YYDEBUG(376, *YYCURSOR);
6944 	yyaccept = 0;
6945 	yych = *(YYMARKER = ++YYCURSOR);
6946 	if (yych <= 'Q') {
6947 		if (yych <= '-') {
6948 			if (yych == ')') goto yy174;
6949 			if (yych <= ',') goto yy3;
6950 			goto yy182;
6951 		} else {
6952 			if (yych == '/') goto yy182;
6953 			if (yych <= '@') goto yy3;
6954 			goto yy176;
6955 		}
6956 	} else {
6957 		if (yych <= '_') {
6958 			if (yych <= 'R') goto yy368;
6959 			if (yych <= 'Z') goto yy176;
6960 			if (yych <= '^') goto yy3;
6961 			goto yy182;
6962 		} else {
6963 			if (yych <= 'q') {
6964 				if (yych <= '`') goto yy3;
6965 				goto yy181;
6966 			} else {
6967 				if (yych <= 'r') goto yy379;
6968 				if (yych <= 'z') goto yy181;
6969 				goto yy3;
6970 			}
6971 		}
6972 	}
6973 yy377:
6974 	YYDEBUG(377, *YYCURSOR);
6975 	yyaccept = 0;
6976 	yych = *(YYMARKER = ++YYCURSOR);
6977 	if (yych <= 'N') {
6978 		if (yych <= '-') {
6979 			if (yych == ')') goto yy174;
6980 			if (yych <= ',') goto yy3;
6981 			goto yy182;
6982 		} else {
6983 			if (yych == '/') goto yy182;
6984 			if (yych <= '@') goto yy3;
6985 			goto yy176;
6986 		}
6987 	} else {
6988 		if (yych <= '_') {
6989 			if (yych <= 'O') goto yy366;
6990 			if (yych <= 'Z') goto yy176;
6991 			if (yych <= '^') goto yy3;
6992 			goto yy182;
6993 		} else {
6994 			if (yych <= 'n') {
6995 				if (yych <= '`') goto yy3;
6996 				goto yy181;
6997 			} else {
6998 				if (yych <= 'o') goto yy378;
6999 				if (yych <= 'z') goto yy181;
7000 				goto yy3;
7001 			}
7002 		}
7003 	}
7004 yy378:
7005 	YYDEBUG(378, *YYCURSOR);
7006 	yyaccept = 8;
7007 	yych = *(YYMARKER = ++YYCURSOR);
7008 	if (yych <= '/') {
7009 		if (yych <= ',') {
7010 			if (yych == ')') goto yy174;
7011 			goto yy367;
7012 		} else {
7013 			if (yych == '.') goto yy367;
7014 			goto yy182;
7015 		}
7016 	} else {
7017 		if (yych <= '^') {
7018 			if (yych <= '@') goto yy367;
7019 			if (yych <= 'Z') goto yy177;
7020 			goto yy367;
7021 		} else {
7022 			if (yych <= '_') goto yy182;
7023 			if (yych <= '`') goto yy367;
7024 			if (yych <= 'z') goto yy185;
7025 			goto yy367;
7026 		}
7027 	}
7028 yy379:
7029 	YYDEBUG(379, *YYCURSOR);
7030 	yyaccept = 5;
7031 	yych = *(YYMARKER = ++YYCURSOR);
7032 	if (yych <= '9') {
7033 		if (yych <= '(') {
7034 			if (yych <= '\t') {
7035 				if (yych <= 0x08) goto yy228;
7036 				goto yy230;
7037 			} else {
7038 				if (yych == ' ') goto yy230;
7039 				goto yy228;
7040 			}
7041 		} else {
7042 			if (yych <= '-') {
7043 				if (yych <= ')') goto yy174;
7044 				if (yych <= ',') goto yy228;
7045 				goto yy346;
7046 			} else {
7047 				if (yych == '/') goto yy182;
7048 				goto yy230;
7049 			}
7050 		}
7051 	} else {
7052 		if (yych <= '^') {
7053 			if (yych <= 'H') {
7054 				if (yych <= '@') goto yy228;
7055 				goto yy177;
7056 			} else {
7057 				if (yych <= 'I') goto yy369;
7058 				if (yych <= 'Z') goto yy177;
7059 				goto yy228;
7060 			}
7061 		} else {
7062 			if (yych <= 'h') {
7063 				if (yych <= '_') goto yy182;
7064 				if (yych <= '`') goto yy228;
7065 				goto yy185;
7066 			} else {
7067 				if (yych <= 'i') goto yy380;
7068 				if (yych <= 'z') goto yy185;
7069 				goto yy228;
7070 			}
7071 		}
7072 	}
7073 yy380:
7074 	YYDEBUG(380, *YYCURSOR);
7075 	yyaccept = 0;
7076 	yych = *(YYMARKER = ++YYCURSOR);
7077 	if (yych <= 'K') {
7078 		if (yych <= '-') {
7079 			if (yych == ')') goto yy174;
7080 			if (yych <= ',') goto yy3;
7081 			goto yy182;
7082 		} else {
7083 			if (yych == '/') goto yy182;
7084 			if (yych <= '@') goto yy3;
7085 			goto yy178;
7086 		}
7087 	} else {
7088 		if (yych <= '_') {
7089 			if (yych <= 'L') goto yy370;
7090 			if (yych <= 'Z') goto yy178;
7091 			if (yych <= '^') goto yy3;
7092 			goto yy182;
7093 		} else {
7094 			if (yych <= 'k') {
7095 				if (yych <= '`') goto yy3;
7096 				goto yy186;
7097 			} else {
7098 				if (yych <= 'l') goto yy381;
7099 				if (yych <= 'z') goto yy186;
7100 				goto yy3;
7101 			}
7102 		}
7103 	}
7104 yy381:
7105 	YYDEBUG(381, *YYCURSOR);
7106 	yyaccept = 5;
7107 	yych = *(YYMARKER = ++YYCURSOR);
7108 	if (yych <= '.') {
7109 		if (yych <= ' ') {
7110 			if (yych == '\t') goto yy230;
7111 			if (yych <= 0x1F) goto yy228;
7112 			goto yy230;
7113 		} else {
7114 			if (yych <= ')') {
7115 				if (yych <= '(') goto yy228;
7116 				goto yy174;
7117 			} else {
7118 				if (yych <= ',') goto yy228;
7119 				if (yych <= '-') goto yy352;
7120 				goto yy230;
7121 			}
7122 		}
7123 	} else {
7124 		if (yych <= 'Z') {
7125 			if (yych <= '/') goto yy182;
7126 			if (yych <= '9') goto yy230;
7127 			if (yych <= '@') goto yy228;
7128 			goto yy179;
7129 		} else {
7130 			if (yych <= '_') {
7131 				if (yych <= '^') goto yy228;
7132 				goto yy182;
7133 			} else {
7134 				if (yych <= '`') goto yy228;
7135 				if (yych <= 'z') goto yy187;
7136 				goto yy228;
7137 			}
7138 		}
7139 	}
7140 yy382:
7141 	YYDEBUG(382, *YYCURSOR);
7142 	yyaccept = 5;
7143 	yych = *(YYMARKER = ++YYCURSOR);
7144 	if (yych <= '9') {
7145 		if (yych <= '(') {
7146 			if (yych <= '\t') {
7147 				if (yych <= 0x08) goto yy228;
7148 				goto yy230;
7149 			} else {
7150 				if (yych == ' ') goto yy230;
7151 				goto yy228;
7152 			}
7153 		} else {
7154 			if (yych <= '-') {
7155 				if (yych <= ')') goto yy174;
7156 				if (yych <= ',') goto yy228;
7157 				goto yy346;
7158 			} else {
7159 				if (yych == '/') goto yy182;
7160 				goto yy230;
7161 			}
7162 		}
7163 	} else {
7164 		if (yych <= '^') {
7165 			if (yych <= 'T') {
7166 				if (yych <= '@') goto yy228;
7167 				goto yy177;
7168 			} else {
7169 				if (yych <= 'U') goto yy372;
7170 				if (yych <= 'Z') goto yy177;
7171 				goto yy228;
7172 			}
7173 		} else {
7174 			if (yych <= 't') {
7175 				if (yych <= '_') goto yy182;
7176 				if (yych <= '`') goto yy228;
7177 				goto yy185;
7178 			} else {
7179 				if (yych <= 'u') goto yy383;
7180 				if (yych <= 'z') goto yy185;
7181 				goto yy228;
7182 			}
7183 		}
7184 	}
7185 yy383:
7186 	YYDEBUG(383, *YYCURSOR);
7187 	yyaccept = 0;
7188 	yych = *(YYMARKER = ++YYCURSOR);
7189 	if (yych <= 'R') {
7190 		if (yych <= '-') {
7191 			if (yych == ')') goto yy174;
7192 			if (yych <= ',') goto yy3;
7193 			goto yy182;
7194 		} else {
7195 			if (yych == '/') goto yy182;
7196 			if (yych <= '@') goto yy3;
7197 			goto yy178;
7198 		}
7199 	} else {
7200 		if (yych <= '_') {
7201 			if (yych <= 'S') goto yy373;
7202 			if (yych <= 'Z') goto yy178;
7203 			if (yych <= '^') goto yy3;
7204 			goto yy182;
7205 		} else {
7206 			if (yych <= 'r') {
7207 				if (yych <= '`') goto yy3;
7208 				goto yy186;
7209 			} else {
7210 				if (yych <= 's') goto yy384;
7211 				if (yych <= 'z') goto yy186;
7212 				goto yy3;
7213 			}
7214 		}
7215 	}
7216 yy384:
7217 	YYDEBUG(384, *YYCURSOR);
7218 	yyaccept = 0;
7219 	yych = *(YYMARKER = ++YYCURSOR);
7220 	if (yych <= 'S') {
7221 		if (yych <= '-') {
7222 			if (yych == ')') goto yy174;
7223 			if (yych <= ',') goto yy3;
7224 			goto yy182;
7225 		} else {
7226 			if (yych == '/') goto yy182;
7227 			if (yych <= '@') goto yy3;
7228 			goto yy179;
7229 		}
7230 	} else {
7231 		if (yych <= '_') {
7232 			if (yych <= 'T') goto yy374;
7233 			if (yych <= 'Z') goto yy179;
7234 			if (yych <= '^') goto yy3;
7235 			goto yy182;
7236 		} else {
7237 			if (yych <= 's') {
7238 				if (yych <= '`') goto yy3;
7239 				goto yy187;
7240 			} else {
7241 				if (yych <= 't') goto yy385;
7242 				if (yych <= 'z') goto yy187;
7243 				goto yy3;
7244 			}
7245 		}
7246 	}
7247 yy385:
7248 	YYDEBUG(385, *YYCURSOR);
7249 	yyaccept = 5;
7250 	yych = *(YYMARKER = ++YYCURSOR);
7251 	if (yybm[0+yych] & 8) {
7252 		goto yy188;
7253 	}
7254 	if (yych <= ',') {
7255 		if (yych <= 0x1F) {
7256 			if (yych == '\t') goto yy230;
7257 			goto yy228;
7258 		} else {
7259 			if (yych <= ' ') goto yy230;
7260 			if (yych == ')') goto yy174;
7261 			goto yy228;
7262 		}
7263 	} else {
7264 		if (yych <= '/') {
7265 			if (yych <= '-') goto yy352;
7266 			if (yych <= '.') goto yy230;
7267 			goto yy182;
7268 		} else {
7269 			if (yych <= '9') goto yy230;
7270 			if (yych == '_') goto yy182;
7271 			goto yy228;
7272 		}
7273 	}
7274 yy386:
7275 	YYDEBUG(386, *YYCURSOR);
7276 	yych = *++YYCURSOR;
7277 	if (yych <= 'N') {
7278 		if (yych <= '@') {
7279 			if (yych == ')') goto yy174;
7280 			goto yy3;
7281 		} else {
7282 			if (yych == 'L') goto yy393;
7283 			if (yych <= 'M') goto yy176;
7284 			goto yy392;
7285 		}
7286 	} else {
7287 		if (yych <= 'l') {
7288 			if (yych <= 'Z') goto yy176;
7289 			if (yych <= '`') goto yy3;
7290 			if (yych <= 'k') goto yy176;
7291 			goto yy393;
7292 		} else {
7293 			if (yych == 'n') goto yy392;
7294 			if (yych <= 'z') goto yy176;
7295 			goto yy3;
7296 		}
7297 	}
7298 yy387:
7299 	YYDEBUG(387, *YYCURSOR);
7300 	yych = *++YYCURSOR;
7301 	if (yych <= 'N') {
7302 		if (yych <= ')') {
7303 			if (yych <= '(') goto yy3;
7304 			goto yy174;
7305 		} else {
7306 			if (yych <= '@') goto yy3;
7307 			if (yych <= 'M') goto yy176;
7308 		}
7309 	} else {
7310 		if (yych <= 'm') {
7311 			if (yych <= 'Z') goto yy176;
7312 			if (yych <= '`') goto yy3;
7313 			goto yy176;
7314 		} else {
7315 			if (yych <= 'n') goto yy388;
7316 			if (yych <= 'z') goto yy176;
7317 			goto yy3;
7318 		}
7319 	}
7320 yy388:
7321 	YYDEBUG(388, *YYCURSOR);
7322 	yyaccept = 5;
7323 	yych = *(YYMARKER = ++YYCURSOR);
7324 	if (yych <= '/') {
7325 		if (yych <= '(') {
7326 			if (yych <= '\t') {
7327 				if (yych <= 0x08) goto yy228;
7328 				goto yy230;
7329 			} else {
7330 				if (yych == ' ') goto yy230;
7331 				goto yy228;
7332 			}
7333 		} else {
7334 			if (yych <= ',') {
7335 				if (yych <= ')') goto yy174;
7336 				goto yy228;
7337 			} else {
7338 				if (yych <= '-') goto yy231;
7339 				if (yych <= '.') goto yy230;
7340 				goto yy228;
7341 			}
7342 		}
7343 	} else {
7344 		if (yych <= 'Z') {
7345 			if (yych <= '@') {
7346 				if (yych <= '9') goto yy230;
7347 				goto yy228;
7348 			} else {
7349 				if (yych != 'U') goto yy177;
7350 			}
7351 		} else {
7352 			if (yych <= 't') {
7353 				if (yych <= '`') goto yy228;
7354 				goto yy177;
7355 			} else {
7356 				if (yych <= 'u') goto yy389;
7357 				if (yych <= 'z') goto yy177;
7358 				goto yy228;
7359 			}
7360 		}
7361 	}
7362 yy389:
7363 	YYDEBUG(389, *YYCURSOR);
7364 	yych = *++YYCURSOR;
7365 	if (yych <= 'A') {
7366 		if (yych == ')') goto yy174;
7367 		if (yych <= '@') goto yy3;
7368 	} else {
7369 		if (yych <= '`') {
7370 			if (yych <= 'Z') goto yy178;
7371 			goto yy3;
7372 		} else {
7373 			if (yych <= 'a') goto yy390;
7374 			if (yych <= 'z') goto yy178;
7375 			goto yy3;
7376 		}
7377 	}
7378 yy390:
7379 	YYDEBUG(390, *YYCURSOR);
7380 	yych = *++YYCURSOR;
7381 	if (yych <= 'R') {
7382 		if (yych <= ')') {
7383 			if (yych <= '(') goto yy3;
7384 			goto yy174;
7385 		} else {
7386 			if (yych <= '@') goto yy3;
7387 			if (yych <= 'Q') goto yy179;
7388 		}
7389 	} else {
7390 		if (yych <= 'q') {
7391 			if (yych <= 'Z') goto yy179;
7392 			if (yych <= '`') goto yy3;
7393 			goto yy179;
7394 		} else {
7395 			if (yych <= 'r') goto yy391;
7396 			if (yych <= 'z') goto yy179;
7397 			goto yy3;
7398 		}
7399 	}
7400 yy391:
7401 	YYDEBUG(391, *YYCURSOR);
7402 	yych = *++YYCURSOR;
7403 	if (yych <= 'X') {
7404 		if (yych == ')') goto yy174;
7405 		goto yy3;
7406 	} else {
7407 		if (yych <= 'Y') goto yy239;
7408 		if (yych == 'y') goto yy239;
7409 		goto yy3;
7410 	}
7411 yy392:
7412 	YYDEBUG(392, *YYCURSOR);
7413 	yyaccept = 5;
7414 	yych = *(YYMARKER = ++YYCURSOR);
7415 	if (yych <= '/') {
7416 		if (yych <= '(') {
7417 			if (yych <= '\t') {
7418 				if (yych <= 0x08) goto yy228;
7419 				goto yy230;
7420 			} else {
7421 				if (yych == ' ') goto yy230;
7422 				goto yy228;
7423 			}
7424 		} else {
7425 			if (yych <= ',') {
7426 				if (yych <= ')') goto yy174;
7427 				goto yy228;
7428 			} else {
7429 				if (yych <= '-') goto yy231;
7430 				if (yych <= '.') goto yy230;
7431 				goto yy228;
7432 			}
7433 		}
7434 	} else {
7435 		if (yych <= 'Z') {
7436 			if (yych <= '@') {
7437 				if (yych <= '9') goto yy230;
7438 				goto yy228;
7439 			} else {
7440 				if (yych == 'E') goto yy394;
7441 				goto yy177;
7442 			}
7443 		} else {
7444 			if (yych <= 'd') {
7445 				if (yych <= '`') goto yy228;
7446 				goto yy177;
7447 			} else {
7448 				if (yych <= 'e') goto yy394;
7449 				if (yych <= 'z') goto yy177;
7450 				goto yy228;
7451 			}
7452 		}
7453 	}
7454 yy393:
7455 	YYDEBUG(393, *YYCURSOR);
7456 	yyaccept = 5;
7457 	yych = *(YYMARKER = ++YYCURSOR);
7458 	if (yych <= '/') {
7459 		if (yych <= '(') {
7460 			if (yych <= '\t') {
7461 				if (yych <= 0x08) goto yy228;
7462 				goto yy230;
7463 			} else {
7464 				if (yych == ' ') goto yy230;
7465 				goto yy228;
7466 			}
7467 		} else {
7468 			if (yych <= ',') {
7469 				if (yych <= ')') goto yy174;
7470 				goto yy228;
7471 			} else {
7472 				if (yych <= '-') goto yy231;
7473 				if (yych <= '.') goto yy230;
7474 				goto yy228;
7475 			}
7476 		}
7477 	} else {
7478 		if (yych <= 'Z') {
7479 			if (yych <= '@') {
7480 				if (yych <= '9') goto yy230;
7481 				goto yy228;
7482 			} else {
7483 				if (yych != 'Y') goto yy177;
7484 			}
7485 		} else {
7486 			if (yych <= 'x') {
7487 				if (yych <= '`') goto yy228;
7488 				goto yy177;
7489 			} else {
7490 				if (yych <= 'y') goto yy394;
7491 				if (yych <= 'z') goto yy177;
7492 				goto yy228;
7493 			}
7494 		}
7495 	}
7496 yy394:
7497 	YYDEBUG(394, *YYCURSOR);
7498 	yyaccept = 5;
7499 	yych = *(YYMARKER = ++YYCURSOR);
7500 	if (yych <= ',') {
7501 		if (yych <= 0x1F) {
7502 			if (yych == '\t') goto yy230;
7503 			goto yy228;
7504 		} else {
7505 			if (yych <= ' ') goto yy230;
7506 			if (yych == ')') goto yy174;
7507 			goto yy228;
7508 		}
7509 	} else {
7510 		if (yych <= '@') {
7511 			if (yych == '/') goto yy228;
7512 			if (yych <= '9') goto yy230;
7513 			goto yy228;
7514 		} else {
7515 			if (yych <= 'Z') goto yy178;
7516 			if (yych <= '`') goto yy228;
7517 			if (yych <= 'z') goto yy178;
7518 			goto yy228;
7519 		}
7520 	}
7521 yy395:
7522 	YYDEBUG(395, *YYCURSOR);
7523 	yyaccept = 0;
7524 	yych = *(YYMARKER = ++YYCURSOR);
7525 	if (yych <= 'M') {
7526 		if (yych <= '.') {
7527 			if (yych <= ')') {
7528 				if (yych <= '(') goto yy3;
7529 				goto yy174;
7530 			} else {
7531 				if (yych == '-') goto yy182;
7532 				goto yy3;
7533 			}
7534 		} else {
7535 			if (yych <= '@') {
7536 				if (yych <= '/') goto yy182;
7537 				goto yy3;
7538 			} else {
7539 				if (yych == 'L') goto yy393;
7540 				goto yy176;
7541 			}
7542 		}
7543 	} else {
7544 		if (yych <= '`') {
7545 			if (yych <= 'Z') {
7546 				if (yych <= 'N') goto yy392;
7547 				goto yy176;
7548 			} else {
7549 				if (yych == '_') goto yy182;
7550 				goto yy3;
7551 			}
7552 		} else {
7553 			if (yych <= 'm') {
7554 				if (yych == 'l') goto yy402;
7555 				goto yy181;
7556 			} else {
7557 				if (yych <= 'n') goto yy401;
7558 				if (yych <= 'z') goto yy181;
7559 				goto yy3;
7560 			}
7561 		}
7562 	}
7563 yy396:
7564 	YYDEBUG(396, *YYCURSOR);
7565 	yyaccept = 0;
7566 	yych = *(YYMARKER = ++YYCURSOR);
7567 	if (yych <= 'M') {
7568 		if (yych <= '-') {
7569 			if (yych == ')') goto yy174;
7570 			if (yych <= ',') goto yy3;
7571 			goto yy182;
7572 		} else {
7573 			if (yych == '/') goto yy182;
7574 			if (yych <= '@') goto yy3;
7575 			goto yy176;
7576 		}
7577 	} else {
7578 		if (yych <= '_') {
7579 			if (yych <= 'N') goto yy388;
7580 			if (yych <= 'Z') goto yy176;
7581 			if (yych <= '^') goto yy3;
7582 			goto yy182;
7583 		} else {
7584 			if (yych <= 'm') {
7585 				if (yych <= '`') goto yy3;
7586 				goto yy181;
7587 			} else {
7588 				if (yych <= 'n') goto yy397;
7589 				if (yych <= 'z') goto yy181;
7590 				goto yy3;
7591 			}
7592 		}
7593 	}
7594 yy397:
7595 	YYDEBUG(397, *YYCURSOR);
7596 	yyaccept = 5;
7597 	yych = *(YYMARKER = ++YYCURSOR);
7598 	if (yych <= '9') {
7599 		if (yych <= '(') {
7600 			if (yych <= '\t') {
7601 				if (yych <= 0x08) goto yy228;
7602 				goto yy230;
7603 			} else {
7604 				if (yych == ' ') goto yy230;
7605 				goto yy228;
7606 			}
7607 		} else {
7608 			if (yych <= '-') {
7609 				if (yych <= ')') goto yy174;
7610 				if (yych <= ',') goto yy228;
7611 				goto yy346;
7612 			} else {
7613 				if (yych == '/') goto yy182;
7614 				goto yy230;
7615 			}
7616 		}
7617 	} else {
7618 		if (yych <= '^') {
7619 			if (yych <= 'T') {
7620 				if (yych <= '@') goto yy228;
7621 				goto yy177;
7622 			} else {
7623 				if (yych <= 'U') goto yy389;
7624 				if (yych <= 'Z') goto yy177;
7625 				goto yy228;
7626 			}
7627 		} else {
7628 			if (yych <= 't') {
7629 				if (yych <= '_') goto yy182;
7630 				if (yych <= '`') goto yy228;
7631 				goto yy185;
7632 			} else {
7633 				if (yych <= 'u') goto yy398;
7634 				if (yych <= 'z') goto yy185;
7635 				goto yy228;
7636 			}
7637 		}
7638 	}
7639 yy398:
7640 	YYDEBUG(398, *YYCURSOR);
7641 	yyaccept = 0;
7642 	yych = *(YYMARKER = ++YYCURSOR);
7643 	if (yych <= '@') {
7644 		if (yych <= ',') {
7645 			if (yych == ')') goto yy174;
7646 			goto yy3;
7647 		} else {
7648 			if (yych == '.') goto yy3;
7649 			if (yych <= '/') goto yy182;
7650 			goto yy3;
7651 		}
7652 	} else {
7653 		if (yych <= '_') {
7654 			if (yych <= 'A') goto yy390;
7655 			if (yych <= 'Z') goto yy178;
7656 			if (yych <= '^') goto yy3;
7657 			goto yy182;
7658 		} else {
7659 			if (yych <= '`') goto yy3;
7660 			if (yych <= 'a') goto yy399;
7661 			if (yych <= 'z') goto yy186;
7662 			goto yy3;
7663 		}
7664 	}
7665 yy399:
7666 	YYDEBUG(399, *YYCURSOR);
7667 	yyaccept = 0;
7668 	yych = *(YYMARKER = ++YYCURSOR);
7669 	if (yych <= 'Q') {
7670 		if (yych <= '-') {
7671 			if (yych == ')') goto yy174;
7672 			if (yych <= ',') goto yy3;
7673 			goto yy182;
7674 		} else {
7675 			if (yych == '/') goto yy182;
7676 			if (yych <= '@') goto yy3;
7677 			goto yy179;
7678 		}
7679 	} else {
7680 		if (yych <= '_') {
7681 			if (yych <= 'R') goto yy391;
7682 			if (yych <= 'Z') goto yy179;
7683 			if (yych <= '^') goto yy3;
7684 			goto yy182;
7685 		} else {
7686 			if (yych <= 'q') {
7687 				if (yych <= '`') goto yy3;
7688 				goto yy187;
7689 			} else {
7690 				if (yych <= 'r') goto yy400;
7691 				if (yych <= 'z') goto yy187;
7692 				goto yy3;
7693 			}
7694 		}
7695 	}
7696 yy400:
7697 	YYDEBUG(400, *YYCURSOR);
7698 	yyaccept = 0;
7699 	yych = *(YYMARKER = ++YYCURSOR);
7700 	if (yych <= 'X') {
7701 		if (yych <= ',') {
7702 			if (yych == ')') goto yy174;
7703 			goto yy3;
7704 		} else {
7705 			if (yych == '.') goto yy3;
7706 			if (yych <= '/') goto yy182;
7707 			goto yy3;
7708 		}
7709 	} else {
7710 		if (yych <= '`') {
7711 			if (yych <= 'Y') goto yy239;
7712 			if (yych == '_') goto yy182;
7713 			goto yy3;
7714 		} else {
7715 			if (yych == 'y') goto yy351;
7716 			if (yych <= 'z') goto yy188;
7717 			goto yy3;
7718 		}
7719 	}
7720 yy401:
7721 	YYDEBUG(401, *YYCURSOR);
7722 	yyaccept = 5;
7723 	yych = *(YYMARKER = ++YYCURSOR);
7724 	if (yych <= '9') {
7725 		if (yych <= '(') {
7726 			if (yych <= '\t') {
7727 				if (yych <= 0x08) goto yy228;
7728 				goto yy230;
7729 			} else {
7730 				if (yych == ' ') goto yy230;
7731 				goto yy228;
7732 			}
7733 		} else {
7734 			if (yych <= '-') {
7735 				if (yych <= ')') goto yy174;
7736 				if (yych <= ',') goto yy228;
7737 				goto yy346;
7738 			} else {
7739 				if (yych == '/') goto yy182;
7740 				goto yy230;
7741 			}
7742 		}
7743 	} else {
7744 		if (yych <= '^') {
7745 			if (yych <= 'D') {
7746 				if (yych <= '@') goto yy228;
7747 				goto yy177;
7748 			} else {
7749 				if (yych <= 'E') goto yy394;
7750 				if (yych <= 'Z') goto yy177;
7751 				goto yy228;
7752 			}
7753 		} else {
7754 			if (yych <= 'd') {
7755 				if (yych <= '_') goto yy182;
7756 				if (yych <= '`') goto yy228;
7757 				goto yy185;
7758 			} else {
7759 				if (yych <= 'e') goto yy403;
7760 				if (yych <= 'z') goto yy185;
7761 				goto yy228;
7762 			}
7763 		}
7764 	}
7765 yy402:
7766 	YYDEBUG(402, *YYCURSOR);
7767 	yyaccept = 5;
7768 	yych = *(YYMARKER = ++YYCURSOR);
7769 	if (yych <= '9') {
7770 		if (yych <= '(') {
7771 			if (yych <= '\t') {
7772 				if (yych <= 0x08) goto yy228;
7773 				goto yy230;
7774 			} else {
7775 				if (yych == ' ') goto yy230;
7776 				goto yy228;
7777 			}
7778 		} else {
7779 			if (yych <= '-') {
7780 				if (yych <= ')') goto yy174;
7781 				if (yych <= ',') goto yy228;
7782 				goto yy346;
7783 			} else {
7784 				if (yych == '/') goto yy182;
7785 				goto yy230;
7786 			}
7787 		}
7788 	} else {
7789 		if (yych <= '^') {
7790 			if (yych <= 'X') {
7791 				if (yych <= '@') goto yy228;
7792 				goto yy177;
7793 			} else {
7794 				if (yych <= 'Y') goto yy394;
7795 				if (yych <= 'Z') goto yy177;
7796 				goto yy228;
7797 			}
7798 		} else {
7799 			if (yych <= 'x') {
7800 				if (yych <= '_') goto yy182;
7801 				if (yych <= '`') goto yy228;
7802 				goto yy185;
7803 			} else {
7804 				if (yych <= 'y') goto yy403;
7805 				if (yych <= 'z') goto yy185;
7806 				goto yy228;
7807 			}
7808 		}
7809 	}
7810 yy403:
7811 	YYDEBUG(403, *YYCURSOR);
7812 	yyaccept = 5;
7813 	yych = *(YYMARKER = ++YYCURSOR);
7814 	if (yych <= '.') {
7815 		if (yych <= ' ') {
7816 			if (yych == '\t') goto yy230;
7817 			if (yych <= 0x1F) goto yy228;
7818 			goto yy230;
7819 		} else {
7820 			if (yych <= ')') {
7821 				if (yych <= '(') goto yy228;
7822 				goto yy174;
7823 			} else {
7824 				if (yych <= ',') goto yy228;
7825 				if (yych <= '-') goto yy352;
7826 				goto yy230;
7827 			}
7828 		}
7829 	} else {
7830 		if (yych <= 'Z') {
7831 			if (yych <= '/') goto yy182;
7832 			if (yych <= '9') goto yy230;
7833 			if (yych <= '@') goto yy228;
7834 			goto yy178;
7835 		} else {
7836 			if (yych <= '_') {
7837 				if (yych <= '^') goto yy228;
7838 				goto yy182;
7839 			} else {
7840 				if (yych <= '`') goto yy228;
7841 				if (yych <= 'z') goto yy186;
7842 				goto yy228;
7843 			}
7844 		}
7845 	}
7846 yy404:
7847 	YYDEBUG(404, *YYCURSOR);
7848 	yyaccept = 0;
7849 	yych = *(YYMARKER = ++YYCURSOR);
7850 	if (yych <= '.') {
7851 		if (yych <= ' ') {
7852 			if (yych == '\t') goto yy230;
7853 			if (yych <= 0x1F) goto yy3;
7854 			goto yy230;
7855 		} else {
7856 			if (yych == ')') goto yy174;
7857 			if (yych <= ',') goto yy3;
7858 			goto yy230;
7859 		}
7860 	} else {
7861 		if (yych <= 'H') {
7862 			if (yych <= '/') goto yy3;
7863 			if (yych <= '9') goto yy230;
7864 			if (yych <= '@') goto yy3;
7865 			goto yy176;
7866 		} else {
7867 			if (yych <= 'Z') {
7868 				if (yych >= 'J') goto yy176;
7869 			} else {
7870 				if (yych <= '`') goto yy3;
7871 				if (yych <= 'z') goto yy176;
7872 				goto yy3;
7873 			}
7874 		}
7875 	}
7876 yy405:
7877 	YYDEBUG(405, *YYCURSOR);
7878 	yyaccept = 0;
7879 	yych = *(YYMARKER = ++YYCURSOR);
7880 	if (yych <= ',') {
7881 		if (yych <= 0x1F) {
7882 			if (yych == '\t') goto yy230;
7883 			goto yy3;
7884 		} else {
7885 			if (yych <= ' ') goto yy230;
7886 			if (yych == ')') goto yy174;
7887 			goto yy3;
7888 		}
7889 	} else {
7890 		if (yych <= '@') {
7891 			if (yych == '/') goto yy3;
7892 			if (yych <= '9') goto yy230;
7893 			goto yy3;
7894 		} else {
7895 			if (yych <= 'Z') goto yy177;
7896 			if (yych <= '`') goto yy3;
7897 			if (yych <= 'z') goto yy177;
7898 			goto yy3;
7899 		}
7900 	}
7901 yy406:
7902 	YYDEBUG(406, *YYCURSOR);
7903 	yyaccept = 0;
7904 	yych = *(YYMARKER = ++YYCURSOR);
7905 	if (yych <= '.') {
7906 		if (yych <= ' ') {
7907 			if (yych == '\t') goto yy230;
7908 			if (yych <= 0x1F) goto yy3;
7909 			goto yy230;
7910 		} else {
7911 			if (yych == ')') goto yy174;
7912 			if (yych <= ',') goto yy3;
7913 			goto yy230;
7914 		}
7915 	} else {
7916 		if (yych <= 'H') {
7917 			if (yych <= '/') goto yy3;
7918 			if (yych <= '9') goto yy230;
7919 			if (yych <= '@') goto yy3;
7920 			goto yy176;
7921 		} else {
7922 			if (yych <= 'Z') {
7923 				if (yych >= 'J') goto yy176;
7924 			} else {
7925 				if (yych <= '`') goto yy3;
7926 				if (yych <= 'z') goto yy176;
7927 				goto yy3;
7928 			}
7929 		}
7930 	}
7931 	YYDEBUG(407, *YYCURSOR);
7932 	yyaccept = 0;
7933 	yych = *(YYMARKER = ++YYCURSOR);
7934 	if (yych <= '.') {
7935 		if (yych <= ' ') {
7936 			if (yych == '\t') goto yy230;
7937 			if (yych <= 0x1F) goto yy3;
7938 			goto yy230;
7939 		} else {
7940 			if (yych == ')') goto yy174;
7941 			if (yych <= ',') goto yy3;
7942 			goto yy230;
7943 		}
7944 	} else {
7945 		if (yych <= 'H') {
7946 			if (yych <= '/') goto yy3;
7947 			if (yych <= '9') goto yy230;
7948 			if (yych <= '@') goto yy3;
7949 			goto yy177;
7950 		} else {
7951 			if (yych <= 'Z') {
7952 				if (yych >= 'J') goto yy177;
7953 			} else {
7954 				if (yych <= '`') goto yy3;
7955 				if (yych <= 'z') goto yy177;
7956 				goto yy3;
7957 			}
7958 		}
7959 	}
7960 	YYDEBUG(408, *YYCURSOR);
7961 	yyaccept = 0;
7962 	yych = *(YYMARKER = ++YYCURSOR);
7963 	if (yych <= ',') {
7964 		if (yych <= 0x1F) {
7965 			if (yych == '\t') goto yy230;
7966 			goto yy3;
7967 		} else {
7968 			if (yych <= ' ') goto yy230;
7969 			if (yych == ')') goto yy174;
7970 			goto yy3;
7971 		}
7972 	} else {
7973 		if (yych <= '@') {
7974 			if (yych == '/') goto yy3;
7975 			if (yych <= '9') goto yy230;
7976 			goto yy3;
7977 		} else {
7978 			if (yych <= 'Z') goto yy178;
7979 			if (yych <= '`') goto yy3;
7980 			if (yych <= 'z') goto yy178;
7981 			goto yy3;
7982 		}
7983 	}
7984 yy409:
7985 	YYDEBUG(409, *YYCURSOR);
7986 	yyaccept = 0;
7987 	yych = *(YYMARKER = ++YYCURSOR);
7988 	if (yych <= ',') {
7989 		if (yych <= 0x1F) {
7990 			if (yych == '\t') goto yy230;
7991 			goto yy3;
7992 		} else {
7993 			if (yych <= ' ') goto yy230;
7994 			if (yych == ')') goto yy174;
7995 			goto yy3;
7996 		}
7997 	} else {
7998 		if (yych <= '@') {
7999 			if (yych == '/') goto yy3;
8000 			if (yych <= '9') goto yy230;
8001 			goto yy3;
8002 		} else {
8003 			if (yych <= 'Z') goto yy176;
8004 			if (yych <= '`') goto yy3;
8005 			if (yych <= 'z') goto yy176;
8006 			goto yy3;
8007 		}
8008 	}
8009 yy410:
8010 	YYDEBUG(410, *YYCURSOR);
8011 	yyaccept = 0;
8012 	yych = *(YYMARKER = ++YYCURSOR);
8013 	if (yych <= '.') {
8014 		if (yych <= ' ') {
8015 			if (yych == '\t') goto yy230;
8016 			if (yych <= 0x1F) goto yy3;
8017 			goto yy230;
8018 		} else {
8019 			if (yych == ')') goto yy174;
8020 			if (yych <= ',') goto yy3;
8021 			goto yy230;
8022 		}
8023 	} else {
8024 		if (yych <= 'H') {
8025 			if (yych <= '/') goto yy3;
8026 			if (yych <= '9') goto yy230;
8027 			if (yych <= '@') goto yy3;
8028 			goto yy176;
8029 		} else {
8030 			if (yych <= 'Z') {
8031 				if (yych <= 'I') goto yy405;
8032 				goto yy176;
8033 			} else {
8034 				if (yych <= '`') goto yy3;
8035 				if (yych <= 'z') goto yy176;
8036 				goto yy3;
8037 			}
8038 		}
8039 	}
8040 yy411:
8041 	YYDEBUG(411, *YYCURSOR);
8042 	yyaccept = 0;
8043 	yych = *(YYMARKER = ++YYCURSOR);
8044 	if (yych <= 'W') {
8045 		if (yych <= 'D') {
8046 			if (yych <= ' ') {
8047 				if (yych == '\t') goto yy59;
8048 				if (yych <= 0x1F) goto yy3;
8049 				goto yy59;
8050 			} else {
8051 				if (yych <= '9') {
8052 					if (yych <= '/') goto yy3;
8053 					goto yy431;
8054 				} else {
8055 					if (yych <= ':') goto yy197;
8056 					if (yych <= 'C') goto yy3;
8057 					goto yy59;
8058 				}
8059 			}
8060 		} else {
8061 			if (yych <= 'L') {
8062 				if (yych <= 'F') {
8063 					if (yych <= 'E') goto yy3;
8064 					goto yy59;
8065 				} else {
8066 					if (yych == 'H') goto yy59;
8067 					goto yy3;
8068 				}
8069 			} else {
8070 				if (yych <= 'R') {
8071 					if (yych <= 'M') goto yy59;
8072 					goto yy3;
8073 				} else {
8074 					if (yych == 'V') goto yy3;
8075 					goto yy59;
8076 				}
8077 			}
8078 		}
8079 	} else {
8080 		if (yych <= 'l') {
8081 			if (yych <= 'd') {
8082 				if (yych == 'Y') goto yy59;
8083 				if (yych <= 'c') goto yy3;
8084 				goto yy59;
8085 			} else {
8086 				if (yych <= 'f') {
8087 					if (yych <= 'e') goto yy3;
8088 					goto yy59;
8089 				} else {
8090 					if (yych == 'h') goto yy59;
8091 					goto yy3;
8092 				}
8093 			}
8094 		} else {
8095 			if (yych <= 'w') {
8096 				if (yych <= 'r') {
8097 					if (yych <= 'm') goto yy59;
8098 					goto yy3;
8099 				} else {
8100 					if (yych == 'v') goto yy3;
8101 					goto yy59;
8102 				}
8103 			} else {
8104 				if (yych <= 'y') {
8105 					if (yych <= 'x') goto yy3;
8106 					goto yy59;
8107 				} else {
8108 					if (yych == 0xC2) goto yy59;
8109 					goto yy3;
8110 				}
8111 			}
8112 		}
8113 	}
8114 yy412:
8115 	YYDEBUG(412, *YYCURSOR);
8116 	yyaccept = 0;
8117 	yych = *(YYMARKER = ++YYCURSOR);
8118 	if (yych <= 'V') {
8119 		if (yych <= 'C') {
8120 			if (yych <= '/') {
8121 				if (yych <= '\t') {
8122 					if (yych <= 0x08) goto yy3;
8123 					goto yy59;
8124 				} else {
8125 					if (yych == ' ') goto yy59;
8126 					goto yy3;
8127 				}
8128 			} else {
8129 				if (yych <= '5') {
8130 					if (yych <= '4') goto yy431;
8131 					goto yy416;
8132 				} else {
8133 					if (yych <= '9') goto yy417;
8134 					if (yych <= ':') goto yy197;
8135 					goto yy3;
8136 				}
8137 			}
8138 		} else {
8139 			if (yych <= 'H') {
8140 				if (yych <= 'E') {
8141 					if (yych <= 'D') goto yy59;
8142 					goto yy3;
8143 				} else {
8144 					if (yych == 'G') goto yy3;
8145 					goto yy59;
8146 				}
8147 			} else {
8148 				if (yych <= 'M') {
8149 					if (yych <= 'L') goto yy3;
8150 					goto yy59;
8151 				} else {
8152 					if (yych <= 'R') goto yy3;
8153 					if (yych <= 'U') goto yy59;
8154 					goto yy3;
8155 				}
8156 			}
8157 		}
8158 	} else {
8159 		if (yych <= 'l') {
8160 			if (yych <= 'd') {
8161 				if (yych <= 'X') {
8162 					if (yych <= 'W') goto yy59;
8163 					goto yy3;
8164 				} else {
8165 					if (yych <= 'Y') goto yy59;
8166 					if (yych <= 'c') goto yy3;
8167 					goto yy59;
8168 				}
8169 			} else {
8170 				if (yych <= 'f') {
8171 					if (yych <= 'e') goto yy3;
8172 					goto yy59;
8173 				} else {
8174 					if (yych == 'h') goto yy59;
8175 					goto yy3;
8176 				}
8177 			}
8178 		} else {
8179 			if (yych <= 'w') {
8180 				if (yych <= 'r') {
8181 					if (yych <= 'm') goto yy59;
8182 					goto yy3;
8183 				} else {
8184 					if (yych == 'v') goto yy3;
8185 					goto yy59;
8186 				}
8187 			} else {
8188 				if (yych <= 'y') {
8189 					if (yych <= 'x') goto yy3;
8190 					goto yy59;
8191 				} else {
8192 					if (yych == 0xC2) goto yy59;
8193 					goto yy3;
8194 				}
8195 			}
8196 		}
8197 	}
8198 yy413:
8199 	YYDEBUG(413, *YYCURSOR);
8200 	yyaccept = 0;
8201 	yych = *(YYMARKER = ++YYCURSOR);
8202 	if (yych <= 'V') {
8203 		if (yych <= 'C') {
8204 			if (yych <= ' ') {
8205 				if (yych == '\t') goto yy59;
8206 				if (yych <= 0x1F) goto yy3;
8207 				goto yy59;
8208 			} else {
8209 				if (yych <= '5') {
8210 					if (yych <= '/') goto yy3;
8211 					goto yy416;
8212 				} else {
8213 					if (yych <= '9') goto yy417;
8214 					if (yych <= ':') goto yy197;
8215 					goto yy3;
8216 				}
8217 			}
8218 		} else {
8219 			if (yych <= 'H') {
8220 				if (yych <= 'E') {
8221 					if (yych <= 'D') goto yy59;
8222 					goto yy3;
8223 				} else {
8224 					if (yych == 'G') goto yy3;
8225 					goto yy59;
8226 				}
8227 			} else {
8228 				if (yych <= 'M') {
8229 					if (yych <= 'L') goto yy3;
8230 					goto yy59;
8231 				} else {
8232 					if (yych <= 'R') goto yy3;
8233 					if (yych <= 'U') goto yy59;
8234 					goto yy3;
8235 				}
8236 			}
8237 		}
8238 	} else {
8239 		if (yych <= 'l') {
8240 			if (yych <= 'd') {
8241 				if (yych <= 'X') {
8242 					if (yych <= 'W') goto yy59;
8243 					goto yy3;
8244 				} else {
8245 					if (yych <= 'Y') goto yy59;
8246 					if (yych <= 'c') goto yy3;
8247 					goto yy59;
8248 				}
8249 			} else {
8250 				if (yych <= 'f') {
8251 					if (yych <= 'e') goto yy3;
8252 					goto yy59;
8253 				} else {
8254 					if (yych == 'h') goto yy59;
8255 					goto yy3;
8256 				}
8257 			}
8258 		} else {
8259 			if (yych <= 'w') {
8260 				if (yych <= 'r') {
8261 					if (yych <= 'm') goto yy59;
8262 					goto yy3;
8263 				} else {
8264 					if (yych == 'v') goto yy3;
8265 					goto yy59;
8266 				}
8267 			} else {
8268 				if (yych <= 'y') {
8269 					if (yych <= 'x') goto yy3;
8270 					goto yy59;
8271 				} else {
8272 					if (yych == 0xC2) goto yy59;
8273 					goto yy3;
8274 				}
8275 			}
8276 		}
8277 	}
8278 yy414:
8279 	YYDEBUG(414, *YYCURSOR);
8280 	++YYCURSOR;
8281 	if ((YYLIMIT - YYCURSOR) < 24) YYFILL(24);
8282 	yych = *YYCURSOR;
8283 	YYDEBUG(415, *YYCURSOR);
8284 	if (yybm[0+yych] & 2) {
8285 		goto yy56;
8286 	}
8287 	if (yych <= ',') {
8288 		if (yych == '+') goto yy414;
8289 		goto yy55;
8290 	} else {
8291 		if (yych <= '-') goto yy414;
8292 		if (yych <= '/') goto yy55;
8293 		if (yych <= '9') goto yy54;
8294 		goto yy55;
8295 	}
8296 yy416:
8297 	YYDEBUG(416, *YYCURSOR);
8298 	yyaccept = 0;
8299 	yych = *(YYMARKER = ++YYCURSOR);
8300 	if (yych <= 'W') {
8301 		if (yych <= 'E') {
8302 			if (yych <= ' ') {
8303 				if (yych == '\t') goto yy59;
8304 				if (yych <= 0x1F) goto yy3;
8305 				goto yy59;
8306 			} else {
8307 				if (yych <= '9') {
8308 					if (yych <= '/') goto yy3;
8309 					goto yy430;
8310 				} else {
8311 					if (yych == 'D') goto yy59;
8312 					goto yy3;
8313 				}
8314 			}
8315 		} else {
8316 			if (yych <= 'L') {
8317 				if (yych == 'G') goto yy3;
8318 				if (yych <= 'H') goto yy59;
8319 				goto yy3;
8320 			} else {
8321 				if (yych <= 'R') {
8322 					if (yych <= 'M') goto yy59;
8323 					goto yy3;
8324 				} else {
8325 					if (yych == 'V') goto yy3;
8326 					goto yy59;
8327 				}
8328 			}
8329 		}
8330 	} else {
8331 		if (yych <= 'l') {
8332 			if (yych <= 'd') {
8333 				if (yych == 'Y') goto yy59;
8334 				if (yych <= 'c') goto yy3;
8335 				goto yy59;
8336 			} else {
8337 				if (yych <= 'f') {
8338 					if (yych <= 'e') goto yy3;
8339 					goto yy59;
8340 				} else {
8341 					if (yych == 'h') goto yy59;
8342 					goto yy3;
8343 				}
8344 			}
8345 		} else {
8346 			if (yych <= 'w') {
8347 				if (yych <= 'r') {
8348 					if (yych <= 'm') goto yy59;
8349 					goto yy3;
8350 				} else {
8351 					if (yych == 'v') goto yy3;
8352 					goto yy59;
8353 				}
8354 			} else {
8355 				if (yych <= 'y') {
8356 					if (yych <= 'x') goto yy3;
8357 					goto yy59;
8358 				} else {
8359 					if (yych == 0xC2) goto yy59;
8360 					goto yy3;
8361 				}
8362 			}
8363 		}
8364 	}
8365 yy417:
8366 	YYDEBUG(417, *YYCURSOR);
8367 	yyaccept = 0;
8368 	yych = *(YYMARKER = ++YYCURSOR);
8369 	if (yych <= 'W') {
8370 		if (yych <= 'E') {
8371 			if (yych <= ' ') {
8372 				if (yych == '\t') goto yy59;
8373 				if (yych <= 0x1F) goto yy3;
8374 				goto yy59;
8375 			} else {
8376 				if (yych <= '9') {
8377 					if (yych <= '/') goto yy3;
8378 				} else {
8379 					if (yych == 'D') goto yy59;
8380 					goto yy3;
8381 				}
8382 			}
8383 		} else {
8384 			if (yych <= 'L') {
8385 				if (yych == 'G') goto yy3;
8386 				if (yych <= 'H') goto yy59;
8387 				goto yy3;
8388 			} else {
8389 				if (yych <= 'R') {
8390 					if (yych <= 'M') goto yy59;
8391 					goto yy3;
8392 				} else {
8393 					if (yych == 'V') goto yy3;
8394 					goto yy59;
8395 				}
8396 			}
8397 		}
8398 	} else {
8399 		if (yych <= 'l') {
8400 			if (yych <= 'd') {
8401 				if (yych == 'Y') goto yy59;
8402 				if (yych <= 'c') goto yy3;
8403 				goto yy59;
8404 			} else {
8405 				if (yych <= 'f') {
8406 					if (yych <= 'e') goto yy3;
8407 					goto yy59;
8408 				} else {
8409 					if (yych == 'h') goto yy59;
8410 					goto yy3;
8411 				}
8412 			}
8413 		} else {
8414 			if (yych <= 'w') {
8415 				if (yych <= 'r') {
8416 					if (yych <= 'm') goto yy59;
8417 					goto yy3;
8418 				} else {
8419 					if (yych == 'v') goto yy3;
8420 					goto yy59;
8421 				}
8422 			} else {
8423 				if (yych <= 'y') {
8424 					if (yych <= 'x') goto yy3;
8425 					goto yy59;
8426 				} else {
8427 					if (yych == 0xC2) goto yy59;
8428 					goto yy3;
8429 				}
8430 			}
8431 		}
8432 	}
8433 	YYDEBUG(418, *YYCURSOR);
8434 	yych = *++YYCURSOR;
8435 	if (yych <= '/') goto yy59;
8436 	if (yych >= ':') goto yy59;
8437 yy419:
8438 	YYDEBUG(419, *YYCURSOR);
8439 	yych = *++YYCURSOR;
8440 	if (yych == '-') goto yy420;
8441 	if (yych <= '/') goto yy59;
8442 	if (yych <= '9') goto yy73;
8443 	goto yy59;
8444 yy420:
8445 	YYDEBUG(420, *YYCURSOR);
8446 	yych = *++YYCURSOR;
8447 	if (yych <= '/') goto yy55;
8448 	if (yych <= '0') goto yy421;
8449 	if (yych <= '1') goto yy422;
8450 	goto yy55;
8451 yy421:
8452 	YYDEBUG(421, *YYCURSOR);
8453 	yych = *++YYCURSOR;
8454 	if (yych <= '/') goto yy55;
8455 	if (yych <= '9') goto yy423;
8456 	goto yy55;
8457 yy422:
8458 	YYDEBUG(422, *YYCURSOR);
8459 	yych = *++YYCURSOR;
8460 	if (yych <= '/') goto yy55;
8461 	if (yych >= '3') goto yy55;
8462 yy423:
8463 	YYDEBUG(423, *YYCURSOR);
8464 	yych = *++YYCURSOR;
8465 	if (yych != '-') goto yy55;
8466 	YYDEBUG(424, *YYCURSOR);
8467 	yych = *++YYCURSOR;
8468 	if (yych <= '/') goto yy55;
8469 	if (yych <= '0') goto yy425;
8470 	if (yych <= '2') goto yy426;
8471 	if (yych <= '3') goto yy427;
8472 	goto yy55;
8473 yy425:
8474 	YYDEBUG(425, *YYCURSOR);
8475 	yych = *++YYCURSOR;
8476 	if (yych <= '/') goto yy55;
8477 	if (yych <= '9') goto yy428;
8478 	goto yy55;
8479 yy426:
8480 	YYDEBUG(426, *YYCURSOR);
8481 	yych = *++YYCURSOR;
8482 	if (yych <= '/') goto yy55;
8483 	if (yych <= '9') goto yy428;
8484 	goto yy55;
8485 yy427:
8486 	YYDEBUG(427, *YYCURSOR);
8487 	yych = *++YYCURSOR;
8488 	if (yych <= '/') goto yy55;
8489 	if (yych >= '2') goto yy55;
8490 yy428:
8491 	YYDEBUG(428, *YYCURSOR);
8492 	++YYCURSOR;
8493 yy429:
8494 	YYDEBUG(429, *YYCURSOR);
8495 #line 1332 "parse_date.re"
8496 	{
8497 		DEBUG_OUTPUT("iso8601date4 | iso8601date2 | iso8601dateslash | dateslash");
8498 		TIMELIB_INIT;
8499 		TIMELIB_HAVE_DATE();
8500 		s->time->y = timelib_get_unsigned_nr((char **) &ptr, 4);
8501 		s->time->m = timelib_get_nr((char **) &ptr, 2);
8502 		s->time->d = timelib_get_nr((char **) &ptr, 2);
8503 		TIMELIB_DEINIT;
8504 		return TIMELIB_ISO_DATE;
8505 	}
8506 #line 8504 "<stdout>"
8507 yy430:
8508 	YYDEBUG(430, *YYCURSOR);
8509 	yyaccept = 0;
8510 	yych = *(YYMARKER = ++YYCURSOR);
8511 	if (yych <= 'W') {
8512 		if (yych <= 'E') {
8513 			if (yych <= ' ') {
8514 				if (yych == '\t') goto yy59;
8515 				if (yych <= 0x1F) goto yy3;
8516 				goto yy59;
8517 			} else {
8518 				if (yych <= '9') {
8519 					if (yych <= '/') goto yy3;
8520 					goto yy419;
8521 				} else {
8522 					if (yych == 'D') goto yy59;
8523 					goto yy3;
8524 				}
8525 			}
8526 		} else {
8527 			if (yych <= 'L') {
8528 				if (yych == 'G') goto yy3;
8529 				if (yych <= 'H') goto yy59;
8530 				goto yy3;
8531 			} else {
8532 				if (yych <= 'R') {
8533 					if (yych <= 'M') goto yy59;
8534 					goto yy3;
8535 				} else {
8536 					if (yych == 'V') goto yy3;
8537 					goto yy59;
8538 				}
8539 			}
8540 		}
8541 	} else {
8542 		if (yych <= 'l') {
8543 			if (yych <= 'd') {
8544 				if (yych == 'Y') goto yy59;
8545 				if (yych <= 'c') goto yy3;
8546 				goto yy59;
8547 			} else {
8548 				if (yych <= 'f') {
8549 					if (yych <= 'e') goto yy3;
8550 					goto yy59;
8551 				} else {
8552 					if (yych == 'h') goto yy59;
8553 					goto yy3;
8554 				}
8555 			}
8556 		} else {
8557 			if (yych <= 'w') {
8558 				if (yych <= 'r') {
8559 					if (yych <= 'm') goto yy59;
8560 					goto yy3;
8561 				} else {
8562 					if (yych == 'v') goto yy3;
8563 					goto yy59;
8564 				}
8565 			} else {
8566 				if (yych <= 'y') {
8567 					if (yych <= 'x') goto yy3;
8568 					goto yy59;
8569 				} else {
8570 					if (yych == 0xC2) goto yy59;
8571 					goto yy3;
8572 				}
8573 			}
8574 		}
8575 	}
8576 yy431:
8577 	YYDEBUG(431, *YYCURSOR);
8578 	yyaccept = 0;
8579 	yych = *(YYMARKER = ++YYCURSOR);
8580 	if (yych <= 'V') {
8581 		if (yych <= 'C') {
8582 			if (yych <= ' ') {
8583 				if (yych == '\t') goto yy59;
8584 				if (yych <= 0x1F) goto yy3;
8585 				goto yy59;
8586 			} else {
8587 				if (yych <= '5') {
8588 					if (yych <= '/') goto yy3;
8589 				} else {
8590 					if (yych <= '9') goto yy430;
8591 					if (yych <= ':') goto yy197;
8592 					goto yy3;
8593 				}
8594 			}
8595 		} else {
8596 			if (yych <= 'H') {
8597 				if (yych <= 'E') {
8598 					if (yych <= 'D') goto yy59;
8599 					goto yy3;
8600 				} else {
8601 					if (yych == 'G') goto yy3;
8602 					goto yy59;
8603 				}
8604 			} else {
8605 				if (yych <= 'M') {
8606 					if (yych <= 'L') goto yy3;
8607 					goto yy59;
8608 				} else {
8609 					if (yych <= 'R') goto yy3;
8610 					if (yych <= 'U') goto yy59;
8611 					goto yy3;
8612 				}
8613 			}
8614 		}
8615 	} else {
8616 		if (yych <= 'l') {
8617 			if (yych <= 'd') {
8618 				if (yych <= 'X') {
8619 					if (yych <= 'W') goto yy59;
8620 					goto yy3;
8621 				} else {
8622 					if (yych <= 'Y') goto yy59;
8623 					if (yych <= 'c') goto yy3;
8624 					goto yy59;
8625 				}
8626 			} else {
8627 				if (yych <= 'f') {
8628 					if (yych <= 'e') goto yy3;
8629 					goto yy59;
8630 				} else {
8631 					if (yych == 'h') goto yy59;
8632 					goto yy3;
8633 				}
8634 			}
8635 		} else {
8636 			if (yych <= 'w') {
8637 				if (yych <= 'r') {
8638 					if (yych <= 'm') goto yy59;
8639 					goto yy3;
8640 				} else {
8641 					if (yych == 'v') goto yy3;
8642 					goto yy59;
8643 				}
8644 			} else {
8645 				if (yych <= 'y') {
8646 					if (yych <= 'x') goto yy3;
8647 					goto yy59;
8648 				} else {
8649 					if (yych == 0xC2) goto yy59;
8650 					goto yy3;
8651 				}
8652 			}
8653 		}
8654 	}
8655 	YYDEBUG(432, *YYCURSOR);
8656 	yyaccept = 0;
8657 	yych = *(YYMARKER = ++YYCURSOR);
8658 	if (yych <= 'W') {
8659 		if (yych <= 'E') {
8660 			if (yych <= ' ') {
8661 				if (yych == '\t') goto yy59;
8662 				if (yych <= 0x1F) goto yy3;
8663 				goto yy59;
8664 			} else {
8665 				if (yych <= '9') {
8666 					if (yych <= '/') goto yy3;
8667 				} else {
8668 					if (yych == 'D') goto yy59;
8669 					goto yy3;
8670 				}
8671 			}
8672 		} else {
8673 			if (yych <= 'L') {
8674 				if (yych == 'G') goto yy3;
8675 				if (yych <= 'H') goto yy59;
8676 				goto yy3;
8677 			} else {
8678 				if (yych <= 'R') {
8679 					if (yych <= 'M') goto yy59;
8680 					goto yy3;
8681 				} else {
8682 					if (yych == 'V') goto yy3;
8683 					goto yy59;
8684 				}
8685 			}
8686 		}
8687 	} else {
8688 		if (yych <= 'l') {
8689 			if (yych <= 'd') {
8690 				if (yych == 'Y') goto yy59;
8691 				if (yych <= 'c') goto yy3;
8692 				goto yy59;
8693 			} else {
8694 				if (yych <= 'f') {
8695 					if (yych <= 'e') goto yy3;
8696 					goto yy59;
8697 				} else {
8698 					if (yych == 'h') goto yy59;
8699 					goto yy3;
8700 				}
8701 			}
8702 		} else {
8703 			if (yych <= 'w') {
8704 				if (yych <= 'r') {
8705 					if (yych <= 'm') goto yy59;
8706 					goto yy3;
8707 				} else {
8708 					if (yych == 'v') goto yy3;
8709 					goto yy59;
8710 				}
8711 			} else {
8712 				if (yych <= 'y') {
8713 					if (yych <= 'x') goto yy3;
8714 					goto yy59;
8715 				} else {
8716 					if (yych == 0xC2) goto yy59;
8717 					goto yy3;
8718 				}
8719 			}
8720 		}
8721 	}
8722 	YYDEBUG(433, *YYCURSOR);
8723 	yyaccept = 0;
8724 	yych = *(YYMARKER = ++YYCURSOR);
8725 	if (yych <= 'V') {
8726 		if (yych <= 'C') {
8727 			if (yych <= ' ') {
8728 				if (yych == '\t') goto yy59;
8729 				if (yych <= 0x1F) goto yy3;
8730 				goto yy59;
8731 			} else {
8732 				if (yych <= '-') {
8733 					if (yych <= ',') goto yy3;
8734 					goto yy420;
8735 				} else {
8736 					if (yych <= '/') goto yy3;
8737 					if (yych <= '9') goto yy73;
8738 					goto yy3;
8739 				}
8740 			}
8741 		} else {
8742 			if (yych <= 'H') {
8743 				if (yych <= 'E') {
8744 					if (yych <= 'D') goto yy59;
8745 					goto yy3;
8746 				} else {
8747 					if (yych == 'G') goto yy3;
8748 					goto yy59;
8749 				}
8750 			} else {
8751 				if (yych <= 'M') {
8752 					if (yych <= 'L') goto yy3;
8753 					goto yy59;
8754 				} else {
8755 					if (yych <= 'R') goto yy3;
8756 					if (yych <= 'U') goto yy59;
8757 					goto yy3;
8758 				}
8759 			}
8760 		}
8761 	} else {
8762 		if (yych <= 'l') {
8763 			if (yych <= 'd') {
8764 				if (yych <= 'X') {
8765 					if (yych <= 'W') goto yy59;
8766 					goto yy3;
8767 				} else {
8768 					if (yych <= 'Y') goto yy59;
8769 					if (yych <= 'c') goto yy3;
8770 					goto yy59;
8771 				}
8772 			} else {
8773 				if (yych <= 'f') {
8774 					if (yych <= 'e') goto yy3;
8775 					goto yy59;
8776 				} else {
8777 					if (yych == 'h') goto yy59;
8778 					goto yy3;
8779 				}
8780 			}
8781 		} else {
8782 			if (yych <= 'w') {
8783 				if (yych <= 'r') {
8784 					if (yych <= 'm') goto yy59;
8785 					goto yy3;
8786 				} else {
8787 					if (yych == 'v') goto yy3;
8788 					goto yy59;
8789 				}
8790 			} else {
8791 				if (yych <= 'y') {
8792 					if (yych <= 'x') goto yy3;
8793 					goto yy59;
8794 				} else {
8795 					if (yych == 0xC2) goto yy59;
8796 					goto yy3;
8797 				}
8798 			}
8799 		}
8800 	}
8801 yy434:
8802 	YYDEBUG(434, *YYCURSOR);
8803 	yych = *++YYCURSOR;
8804 	if (yych <= '/') goto yy436;
8805 	if (yych <= '0') goto yy710;
8806 	if (yych <= '1') goto yy711;
8807 	if (yych <= '9') goto yy712;
8808 	goto yy436;
8809 yy435:
8810 	YYDEBUG(435, *YYCURSOR);
8811 	++YYCURSOR;
8812 	if ((YYLIMIT - YYCURSOR) < 13) YYFILL(13);
8813 	yych = *YYCURSOR;
8814 yy436:
8815 	YYDEBUG(436, *YYCURSOR);
8816 	if (yych <= 'W') {
8817 		if (yych <= 'G') {
8818 			if (yych <= '.') {
8819 				if (yych <= 0x1F) {
8820 					if (yych == '\t') goto yy435;
8821 					goto yy55;
8822 				} else {
8823 					if (yych <= ' ') goto yy435;
8824 					if (yych <= ',') goto yy55;
8825 					goto yy551;
8826 				}
8827 			} else {
8828 				if (yych <= 'C') {
8829 					if (yych == 'A') goto yy454;
8830 					goto yy55;
8831 				} else {
8832 					if (yych <= 'D') goto yy440;
8833 					if (yych == 'F') goto yy441;
8834 					goto yy55;
8835 				}
8836 			}
8837 		} else {
8838 			if (yych <= 'O') {
8839 				if (yych <= 'J') {
8840 					if (yych <= 'H') goto yy64;
8841 					if (yych <= 'I') goto yy449;
8842 					goto yy453;
8843 				} else {
8844 					if (yych <= 'L') goto yy55;
8845 					if (yych <= 'M') goto yy437;
8846 					if (yych <= 'N') goto yy456;
8847 					goto yy455;
8848 				}
8849 			} else {
8850 				if (yych <= 'S') {
8851 					if (yych <= 'P') goto yy458;
8852 					if (yych <= 'R') goto yy55;
8853 					goto yy438;
8854 				} else {
8855 					if (yych <= 'T') goto yy69;
8856 					if (yych <= 'U') goto yy62;
8857 					if (yych <= 'V') goto yy451;
8858 					goto yy68;
8859 				}
8860 			}
8861 		}
8862 	} else {
8863 		if (yych <= 'm') {
8864 			if (yych <= 'e') {
8865 				if (yych <= '`') {
8866 					if (yych <= 'X') goto yy452;
8867 					if (yych <= 'Y') goto yy67;
8868 					goto yy55;
8869 				} else {
8870 					if (yych <= 'a') goto yy454;
8871 					if (yych == 'd') goto yy440;
8872 					goto yy55;
8873 				}
8874 			} else {
8875 				if (yych <= 'h') {
8876 					if (yych <= 'f') goto yy441;
8877 					if (yych <= 'g') goto yy55;
8878 					goto yy64;
8879 				} else {
8880 					if (yych == 'j') goto yy453;
8881 					if (yych <= 'l') goto yy55;
8882 				}
8883 			}
8884 		} else {
8885 			if (yych <= 'u') {
8886 				if (yych <= 'p') {
8887 					if (yych <= 'n') goto yy456;
8888 					if (yych <= 'o') goto yy455;
8889 					goto yy458;
8890 				} else {
8891 					if (yych <= 'r') goto yy55;
8892 					if (yych <= 's') goto yy438;
8893 					if (yych <= 't') goto yy69;
8894 					goto yy62;
8895 				}
8896 			} else {
8897 				if (yych <= 'x') {
8898 					if (yych == 'w') goto yy68;
8899 					goto yy55;
8900 				} else {
8901 					if (yych <= 'y') goto yy67;
8902 					if (yych == 0xC2) goto yy61;
8903 					goto yy55;
8904 				}
8905 			}
8906 		}
8907 	}
8908 yy437:
8909 	YYDEBUG(437, *YYCURSOR);
8910 	yych = *++YYCURSOR;
8911 	if (yych <= 'S') {
8912 		if (yych <= 'I') {
8913 			if (yych == 'A') goto yy566;
8914 			if (yych <= 'H') goto yy55;
8915 			goto yy148;
8916 		} else {
8917 			if (yych == 'O') goto yy147;
8918 			if (yych <= 'R') goto yy55;
8919 			goto yy149;
8920 		}
8921 	} else {
8922 		if (yych <= 'i') {
8923 			if (yych == 'a') goto yy566;
8924 			if (yych <= 'h') goto yy55;
8925 			goto yy148;
8926 		} else {
8927 			if (yych <= 'o') {
8928 				if (yych <= 'n') goto yy55;
8929 				goto yy147;
8930 			} else {
8931 				if (yych == 's') goto yy149;
8932 				goto yy55;
8933 			}
8934 		}
8935 	}
8936 yy438:
8937 	YYDEBUG(438, *YYCURSOR);
8938 	yych = *++YYCURSOR;
8939 	if (yych <= 'U') {
8940 		if (yych <= 'D') {
8941 			if (yych == 'A') goto yy129;
8942 			goto yy55;
8943 		} else {
8944 			if (yych <= 'E') goto yy1023;
8945 			if (yych <= 'T') goto yy55;
8946 			goto yy128;
8947 		}
8948 	} else {
8949 		if (yych <= 'd') {
8950 			if (yych == 'a') goto yy129;
8951 			goto yy55;
8952 		} else {
8953 			if (yych <= 'e') goto yy1023;
8954 			if (yych == 'u') goto yy128;
8955 			goto yy55;
8956 		}
8957 	}
8958 yy439:
8959 	YYDEBUG(439, *YYCURSOR);
8960 	yych = *++YYCURSOR;
8961 	if (yych <= '`') {
8962 		if (yych <= 'D') {
8963 			if (yych == 'A') goto yy129;
8964 			goto yy55;
8965 		} else {
8966 			if (yych <= 'E') goto yy1023;
8967 			if (yych == 'U') goto yy128;
8968 			goto yy55;
8969 		}
8970 	} else {
8971 		if (yych <= 'e') {
8972 			if (yych <= 'a') goto yy129;
8973 			if (yych <= 'd') goto yy55;
8974 			goto yy1023;
8975 		} else {
8976 			if (yych <= 's') goto yy55;
8977 			if (yych <= 't') goto yy703;
8978 			if (yych <= 'u') goto yy128;
8979 			goto yy55;
8980 		}
8981 	}
8982 yy440:
8983 	YYDEBUG(440, *YYCURSOR);
8984 	yych = *++YYCURSOR;
8985 	if (yych <= 'E') {
8986 		if (yych == 'A') goto yy125;
8987 		if (yych <= 'D') goto yy55;
8988 		goto yy553;
8989 	} else {
8990 		if (yych <= 'a') {
8991 			if (yych <= '`') goto yy55;
8992 			goto yy125;
8993 		} else {
8994 			if (yych == 'e') goto yy553;
8995 			goto yy55;
8996 		}
8997 	}
8998 yy441:
8999 	YYDEBUG(441, *YYCURSOR);
9000 	yych = *++YYCURSOR;
9001 	if (yych <= 'R') {
9002 		if (yych <= 'N') {
9003 			if (yych == 'E') goto yy569;
9004 			goto yy55;
9005 		} else {
9006 			if (yych <= 'O') goto yy110;
9007 			if (yych <= 'Q') goto yy55;
9008 			goto yy109;
9009 		}
9010 	} else {
9011 		if (yych <= 'n') {
9012 			if (yych == 'e') goto yy569;
9013 			goto yy55;
9014 		} else {
9015 			if (yych <= 'o') goto yy110;
9016 			if (yych == 'r') goto yy109;
9017 			goto yy55;
9018 		}
9019 	}
9020 yy442:
9021 	YYDEBUG(442, *YYCURSOR);
9022 	yych = *++YYCURSOR;
9023 	if (yych <= 'U') {
9024 		if (yych == 'H') goto yy81;
9025 		if (yych <= 'T') goto yy55;
9026 		goto yy82;
9027 	} else {
9028 		if (yych <= 'h') {
9029 			if (yych <= 'g') goto yy55;
9030 			goto yy1022;
9031 		} else {
9032 			if (yych == 'u') goto yy82;
9033 			goto yy55;
9034 		}
9035 	}
9036 yy443:
9037 	YYDEBUG(443, *YYCURSOR);
9038 	yych = *++YYCURSOR;
9039 	if (yych == '-') goto yy716;
9040 	if (yych <= '/') goto yy59;
9041 	if (yych <= '9') goto yy715;
9042 	goto yy59;
9043 yy444:
9044 	YYDEBUG(444, *YYCURSOR);
9045 	yych = *++YYCURSOR;
9046 	if (yych <= 'c') {
9047 		if (yych == 'O') goto yy504;
9048 		goto yy55;
9049 	} else {
9050 		if (yych <= 'd') goto yy703;
9051 		if (yych == 'o') goto yy504;
9052 		goto yy55;
9053 	}
9054 yy445:
9055 	YYDEBUG(445, *YYCURSOR);
9056 	yych = *++YYCURSOR;
9057 	if (yych == 'd') goto yy703;
9058 	goto yy55;
9059 yy446:
9060 	YYDEBUG(446, *YYCURSOR);
9061 	yych = *++YYCURSOR;
9062 	switch (yych) {
9063 	case '0':
9064 	case '1':
9065 	case '2':	goto yy640;
9066 	case '3':	goto yy642;
9067 	case '4':
9068 	case '5':
9069 	case '6':
9070 	case '7':
9071 	case '8':
9072 	case '9':	goto yy643;
9073 	case 'A':
9074 	case 'a':	goto yy647;
9075 	case 'D':
9076 	case 'd':	goto yy651;
9077 	case 'F':
9078 	case 'f':	goto yy645;
9079 	case 'J':
9080 	case 'j':	goto yy644;
9081 	case 'M':
9082 	case 'm':	goto yy646;
9083 	case 'N':
9084 	case 'n':	goto yy650;
9085 	case 'O':
9086 	case 'o':	goto yy649;
9087 	case 'S':
9088 	case 's':	goto yy648;
9089 	default:	goto yy55;
9090 	}
9091 yy447:
9092 	YYDEBUG(447, *YYCURSOR);
9093 	yych = *++YYCURSOR;
9094 	switch (yych) {
9095 	case '0':	goto yy590;
9096 	case '1':	goto yy591;
9097 	case '2':
9098 	case '3':
9099 	case '4':
9100 	case '5':
9101 	case '6':
9102 	case '7':
9103 	case '8':
9104 	case '9':	goto yy592;
9105 	case 'A':
9106 	case 'a':	goto yy596;
9107 	case 'D':
9108 	case 'd':	goto yy600;
9109 	case 'F':
9110 	case 'f':	goto yy594;
9111 	case 'J':
9112 	case 'j':	goto yy593;
9113 	case 'M':
9114 	case 'm':	goto yy595;
9115 	case 'N':
9116 	case 'n':	goto yy599;
9117 	case 'O':
9118 	case 'o':	goto yy598;
9119 	case 'S':
9120 	case 's':	goto yy597;
9121 	default:	goto yy552;
9122 	}
9123 yy448:
9124 	YYDEBUG(448, *YYCURSOR);
9125 	yych = *++YYCURSOR;
9126 	if (yych <= '1') {
9127 		if (yych <= '/') goto yy552;
9128 		if (yych <= '0') goto yy542;
9129 		goto yy543;
9130 	} else {
9131 		if (yych <= '5') goto yy544;
9132 		if (yych <= '9') goto yy545;
9133 		goto yy552;
9134 	}
9135 yy449:
9136 	YYDEBUG(449, *YYCURSOR);
9137 	yyaccept = 9;
9138 	yych = *(YYMARKER = ++YYCURSOR);
9139 	if (yych <= '/') {
9140 		if (yych <= 0x1F) {
9141 			if (yych == '\t') goto yy506;
9142 		} else {
9143 			if (yych <= ' ') goto yy506;
9144 			if (yych <= ',') goto yy450;
9145 			if (yych <= '.') goto yy506;
9146 		}
9147 	} else {
9148 		if (yych <= 'U') {
9149 			if (yych <= '9') goto yy508;
9150 			if (yych == 'I') goto yy541;
9151 		} else {
9152 			if (yych == 'W') goto yy450;
9153 			if (yych <= 'X') goto yy514;
9154 		}
9155 	}
9156 yy450:
9157 	YYDEBUG(450, *YYCURSOR);
9158 #line 1469 "parse_date.re"
9159 	{
9160 		DEBUG_OUTPUT("datenoyearrev");
9161 		TIMELIB_INIT;
9162 		TIMELIB_HAVE_DATE();
9163 		s->time->d = timelib_get_nr((char **) &ptr, 2);
9164 		timelib_skip_day_suffix((char **) &ptr);
9165 		s->time->m = timelib_get_month((char **) &ptr);
9166 		TIMELIB_DEINIT;
9167 		return TIMELIB_DATE_TEXT;
9168 	}
9169 #line 9167 "<stdout>"
9170 yy451:
9171 	YYDEBUG(451, *YYCURSOR);
9172 	yyaccept = 9;
9173 	yych = *(YYMARKER = ++YYCURSOR);
9174 	if (yych <= ',') {
9175 		if (yych <= '\t') {
9176 			if (yych <= 0x08) goto yy450;
9177 			goto yy506;
9178 		} else {
9179 			if (yych == ' ') goto yy506;
9180 			goto yy450;
9181 		}
9182 	} else {
9183 		if (yych <= '9') {
9184 			if (yych <= '.') goto yy506;
9185 			if (yych <= '/') goto yy450;
9186 			goto yy508;
9187 		} else {
9188 			if (yych == 'I') goto yy539;
9189 			goto yy450;
9190 		}
9191 	}
9192 yy452:
9193 	YYDEBUG(452, *YYCURSOR);
9194 	yyaccept = 9;
9195 	yych = *(YYMARKER = ++YYCURSOR);
9196 	if (yych <= ',') {
9197 		if (yych <= '\t') {
9198 			if (yych <= 0x08) goto yy450;
9199 			goto yy506;
9200 		} else {
9201 			if (yych == ' ') goto yy506;
9202 			goto yy450;
9203 		}
9204 	} else {
9205 		if (yych <= '9') {
9206 			if (yych <= '.') goto yy506;
9207 			if (yych <= '/') goto yy450;
9208 			goto yy508;
9209 		} else {
9210 			if (yych == 'I') goto yy538;
9211 			goto yy450;
9212 		}
9213 	}
9214 yy453:
9215 	YYDEBUG(453, *YYCURSOR);
9216 	yych = *++YYCURSOR;
9217 	if (yych <= 'U') {
9218 		if (yych == 'A') goto yy531;
9219 		if (yych <= 'T') goto yy55;
9220 		goto yy530;
9221 	} else {
9222 		if (yych <= 'a') {
9223 			if (yych <= '`') goto yy55;
9224 			goto yy531;
9225 		} else {
9226 			if (yych == 'u') goto yy530;
9227 			goto yy55;
9228 		}
9229 	}
9230 yy454:
9231 	YYDEBUG(454, *YYCURSOR);
9232 	yych = *++YYCURSOR;
9233 	if (yych <= 'T') {
9234 		if (yych <= 'L') {
9235 			if (yych == '.') goto yy459;
9236 			goto yy55;
9237 		} else {
9238 			if (yych <= 'M') goto yy460;
9239 			if (yych == 'P') goto yy524;
9240 			goto yy55;
9241 		}
9242 	} else {
9243 		if (yych <= 'o') {
9244 			if (yych <= 'U') goto yy523;
9245 			if (yych == 'm') goto yy460;
9246 			goto yy55;
9247 		} else {
9248 			if (yych <= 'p') goto yy524;
9249 			if (yych == 'u') goto yy523;
9250 			goto yy55;
9251 		}
9252 	}
9253 yy455:
9254 	YYDEBUG(455, *YYCURSOR);
9255 	yych = *++YYCURSOR;
9256 	if (yych == 'C') goto yy518;
9257 	if (yych == 'c') goto yy518;
9258 	goto yy55;
9259 yy456:
9260 	YYDEBUG(456, *YYCURSOR);
9261 	yych = *++YYCURSOR;
9262 	if (yych == 'O') goto yy504;
9263 	if (yych == 'o') goto yy504;
9264 	goto yy55;
9265 yy457:
9266 	YYDEBUG(457, *YYCURSOR);
9267 	yych = *++YYCURSOR;
9268 	if (yych <= '/') goto yy55;
9269 	if (yych <= '5') goto yy464;
9270 	if (yych <= '9') goto yy466;
9271 	goto yy55;
9272 yy458:
9273 	YYDEBUG(458, *YYCURSOR);
9274 	yych = *++YYCURSOR;
9275 	if (yych <= 'L') {
9276 		if (yych != '.') goto yy55;
9277 	} else {
9278 		if (yych <= 'M') goto yy460;
9279 		if (yych == 'm') goto yy460;
9280 		goto yy55;
9281 	}
9282 yy459:
9283 	YYDEBUG(459, *YYCURSOR);
9284 	yych = *++YYCURSOR;
9285 	if (yych == 'M') goto yy460;
9286 	if (yych != 'm') goto yy55;
9287 yy460:
9288 	YYDEBUG(460, *YYCURSOR);
9289 	yych = *++YYCURSOR;
9290 	if (yych <= 0x1F) {
9291 		if (yych <= 0x00) goto yy462;
9292 		if (yych == '\t') goto yy462;
9293 		goto yy55;
9294 	} else {
9295 		if (yych <= ' ') goto yy462;
9296 		if (yych != '.') goto yy55;
9297 	}
9298 	YYDEBUG(461, *YYCURSOR);
9299 	yych = *++YYCURSOR;
9300 	if (yych <= '\t') {
9301 		if (yych <= 0x00) goto yy462;
9302 		if (yych <= 0x08) goto yy55;
9303 	} else {
9304 		if (yych != ' ') goto yy55;
9305 	}
9306 yy462:
9307 	YYDEBUG(462, *YYCURSOR);
9308 	++YYCURSOR;
9309 	YYDEBUG(463, *YYCURSOR);
9310 #line 1187 "parse_date.re"
9311 	{
9312 		DEBUG_OUTPUT("timetiny12 | timeshort12 | timelong12");
9313 		TIMELIB_INIT;
9314 		TIMELIB_HAVE_TIME();
9315 		s->time->h = timelib_get_nr((char **) &ptr, 2);
9316 		if (*ptr == ':' || *ptr == '.') {
9317 			s->time->i = timelib_get_nr((char **) &ptr, 2);
9318 			if (*ptr == ':' || *ptr == '.') {
9319 				s->time->s = timelib_get_nr((char **) &ptr, 2);
9320 			}
9321 		}
9322 		s->time->h += timelib_meridian((char **) &ptr, s->time->h);
9323 		TIMELIB_DEINIT;
9324 		return TIMELIB_TIME12;
9325 	}
9326 #line 9324 "<stdout>"
9327 yy464:
9328 	YYDEBUG(464, *YYCURSOR);
9329 	yyaccept = 10;
9330 	yych = *(YYMARKER = ++YYCURSOR);
9331 	if (yych <= '/') {
9332 		if (yych == '.') goto yy467;
9333 	} else {
9334 		if (yych <= '9') goto yy481;
9335 		if (yych <= ':') goto yy467;
9336 	}
9337 yy465:
9338 	YYDEBUG(465, *YYCURSOR);
9339 #line 1224 "parse_date.re"
9340 	{
9341 		int tz_not_found;
9342 		DEBUG_OUTPUT("timeshort24 | timelong24 | iso8601long");
9343 		TIMELIB_INIT;
9344 		TIMELIB_HAVE_TIME();
9345 		s->time->h = timelib_get_nr((char **) &ptr, 2);
9346 		s->time->i = timelib_get_nr((char **) &ptr, 2);
9347 		if (*ptr == ':' || *ptr == '.') {
9348 			s->time->s = timelib_get_nr((char **) &ptr, 2);
9349 
9350 			if (*ptr == '.') {
9351 				s->time->us = timelib_get_frac_nr((char **) &ptr, 8);
9352 			}
9353 		}
9354 
9355 		if (*ptr != '\0') {
9356 			s->time->z = timelib_parse_zone((char **) &ptr, &s->time->dst, s->time, &tz_not_found, s->tzdb, tz_get_wrapper);
9357 			if (tz_not_found) {
9358 				add_error(s, TIMELIB_ERR_TZID_NOT_FOUND, "The timezone could not be found in the database");
9359 			}
9360 		}
9361 		TIMELIB_DEINIT;
9362 		return TIMELIB_TIME24_WITH_ZONE;
9363 	}
9364 #line 9362 "<stdout>"
9365 yy466:
9366 	YYDEBUG(466, *YYCURSOR);
9367 	yyaccept = 10;
9368 	yych = *(YYMARKER = ++YYCURSOR);
9369 	if (yych == '.') goto yy467;
9370 	if (yych != ':') goto yy465;
9371 yy467:
9372 	YYDEBUG(467, *YYCURSOR);
9373 	yych = *++YYCURSOR;
9374 	if (yych <= '/') goto yy55;
9375 	if (yych <= '5') goto yy468;
9376 	if (yych <= '6') goto yy469;
9377 	if (yych <= '9') goto yy470;
9378 	goto yy55;
9379 yy468:
9380 	YYDEBUG(468, *YYCURSOR);
9381 	yyaccept = 10;
9382 	yych = *(YYMARKER = ++YYCURSOR);
9383 	if (yych == '.') goto yy471;
9384 	if (yych <= '/') goto yy465;
9385 	if (yych <= '9') goto yy474;
9386 	goto yy465;
9387 yy469:
9388 	YYDEBUG(469, *YYCURSOR);
9389 	yyaccept = 10;
9390 	yych = *(YYMARKER = ++YYCURSOR);
9391 	if (yych == '.') goto yy471;
9392 	if (yych == '0') goto yy474;
9393 	goto yy465;
9394 yy470:
9395 	YYDEBUG(470, *YYCURSOR);
9396 	yyaccept = 10;
9397 	yych = *(YYMARKER = ++YYCURSOR);
9398 	if (yych != '.') goto yy465;
9399 yy471:
9400 	YYDEBUG(471, *YYCURSOR);
9401 	yych = *++YYCURSOR;
9402 	if (yybm[0+yych] & 128) {
9403 		goto yy472;
9404 	}
9405 	goto yy55;
9406 yy472:
9407 	YYDEBUG(472, *YYCURSOR);
9408 	++YYCURSOR;
9409 	if (YYLIMIT <= YYCURSOR) YYFILL(1);
9410 	yych = *YYCURSOR;
9411 	YYDEBUG(473, *YYCURSOR);
9412 	if (yybm[0+yych] & 128) {
9413 		goto yy472;
9414 	}
9415 	goto yy465;
9416 yy474:
9417 	YYDEBUG(474, *YYCURSOR);
9418 	yyaccept = 10;
9419 	yych = *(YYMARKER = ++YYCURSOR);
9420 	if (yych <= '@') {
9421 		if (yych <= 0x1F) {
9422 			if (yych != '\t') goto yy465;
9423 		} else {
9424 			if (yych <= ' ') goto yy475;
9425 			if (yych == '.') goto yy471;
9426 			goto yy465;
9427 		}
9428 	} else {
9429 		if (yych <= '`') {
9430 			if (yych <= 'A') goto yy477;
9431 			if (yych == 'P') goto yy477;
9432 			goto yy465;
9433 		} else {
9434 			if (yych <= 'a') goto yy477;
9435 			if (yych == 'p') goto yy477;
9436 			goto yy465;
9437 		}
9438 	}
9439 yy475:
9440 	YYDEBUG(475, *YYCURSOR);
9441 	++YYCURSOR;
9442 	if ((YYLIMIT - YYCURSOR) < 5) YYFILL(5);
9443 	yych = *YYCURSOR;
9444 	YYDEBUG(476, *YYCURSOR);
9445 	if (yych <= 'A') {
9446 		if (yych <= 0x1F) {
9447 			if (yych == '\t') goto yy475;
9448 			goto yy55;
9449 		} else {
9450 			if (yych <= ' ') goto yy475;
9451 			if (yych <= '@') goto yy55;
9452 		}
9453 	} else {
9454 		if (yych <= '`') {
9455 			if (yych != 'P') goto yy55;
9456 		} else {
9457 			if (yych <= 'a') goto yy477;
9458 			if (yych != 'p') goto yy55;
9459 		}
9460 	}
9461 yy477:
9462 	YYDEBUG(477, *YYCURSOR);
9463 	yych = *++YYCURSOR;
9464 	if (yych <= 'L') {
9465 		if (yych != '.') goto yy55;
9466 	} else {
9467 		if (yych <= 'M') goto yy479;
9468 		if (yych == 'm') goto yy479;
9469 		goto yy55;
9470 	}
9471 	YYDEBUG(478, *YYCURSOR);
9472 	yych = *++YYCURSOR;
9473 	if (yych == 'M') goto yy479;
9474 	if (yych != 'm') goto yy55;
9475 yy479:
9476 	YYDEBUG(479, *YYCURSOR);
9477 	yych = *++YYCURSOR;
9478 	if (yych <= 0x1F) {
9479 		if (yych <= 0x00) goto yy462;
9480 		if (yych == '\t') goto yy462;
9481 		goto yy55;
9482 	} else {
9483 		if (yych <= ' ') goto yy462;
9484 		if (yych != '.') goto yy55;
9485 	}
9486 	YYDEBUG(480, *YYCURSOR);
9487 	yych = *++YYCURSOR;
9488 	if (yych <= '\t') {
9489 		if (yych <= 0x00) goto yy462;
9490 		if (yych <= 0x08) goto yy55;
9491 		goto yy462;
9492 	} else {
9493 		if (yych == ' ') goto yy462;
9494 		goto yy55;
9495 	}
9496 yy481:
9497 	YYDEBUG(481, *YYCURSOR);
9498 	yyaccept = 10;
9499 	yych = *(YYMARKER = ++YYCURSOR);
9500 	if (yych <= ':') {
9501 		if (yych <= ' ') {
9502 			if (yych == '\t') goto yy482;
9503 			if (yych <= 0x1F) goto yy465;
9504 		} else {
9505 			if (yych == '.') goto yy467;
9506 			if (yych <= '9') goto yy465;
9507 			goto yy485;
9508 		}
9509 	} else {
9510 		if (yych <= 'P') {
9511 			if (yych == 'A') goto yy484;
9512 			if (yych <= 'O') goto yy465;
9513 			goto yy484;
9514 		} else {
9515 			if (yych <= 'a') {
9516 				if (yych <= '`') goto yy465;
9517 				goto yy484;
9518 			} else {
9519 				if (yych == 'p') goto yy484;
9520 				goto yy465;
9521 			}
9522 		}
9523 	}
9524 yy482:
9525 	YYDEBUG(482, *YYCURSOR);
9526 	++YYCURSOR;
9527 	if ((YYLIMIT - YYCURSOR) < 5) YYFILL(5);
9528 	yych = *YYCURSOR;
9529 	YYDEBUG(483, *YYCURSOR);
9530 	if (yych <= 'A') {
9531 		if (yych <= 0x1F) {
9532 			if (yych == '\t') goto yy482;
9533 			goto yy55;
9534 		} else {
9535 			if (yych <= ' ') goto yy482;
9536 			if (yych <= '@') goto yy55;
9537 		}
9538 	} else {
9539 		if (yych <= '`') {
9540 			if (yych != 'P') goto yy55;
9541 		} else {
9542 			if (yych <= 'a') goto yy484;
9543 			if (yych != 'p') goto yy55;
9544 		}
9545 	}
9546 yy484:
9547 	YYDEBUG(484, *YYCURSOR);
9548 	yych = *++YYCURSOR;
9549 	if (yych <= 'L') {
9550 		if (yych == '.') goto yy501;
9551 		goto yy55;
9552 	} else {
9553 		if (yych <= 'M') goto yy502;
9554 		if (yych == 'm') goto yy502;
9555 		goto yy55;
9556 	}
9557 yy485:
9558 	YYDEBUG(485, *YYCURSOR);
9559 	yych = *++YYCURSOR;
9560 	if (yych <= '/') goto yy55;
9561 	if (yych <= '5') goto yy486;
9562 	if (yych <= '6') goto yy487;
9563 	if (yych <= '9') goto yy470;
9564 	goto yy55;
9565 yy486:
9566 	YYDEBUG(486, *YYCURSOR);
9567 	yyaccept = 10;
9568 	yych = *(YYMARKER = ++YYCURSOR);
9569 	if (yych == '.') goto yy471;
9570 	if (yych <= '/') goto yy465;
9571 	if (yych <= '9') goto yy488;
9572 	goto yy465;
9573 yy487:
9574 	YYDEBUG(487, *YYCURSOR);
9575 	yyaccept = 10;
9576 	yych = *(YYMARKER = ++YYCURSOR);
9577 	if (yych == '.') goto yy471;
9578 	if (yych != '0') goto yy465;
9579 yy488:
9580 	YYDEBUG(488, *YYCURSOR);
9581 	yyaccept = 10;
9582 	yych = *(YYMARKER = ++YYCURSOR);
9583 	if (yych <= ':') {
9584 		if (yych <= ' ') {
9585 			if (yych == '\t') goto yy475;
9586 			if (yych <= 0x1F) goto yy465;
9587 			goto yy475;
9588 		} else {
9589 			if (yych == '.') goto yy489;
9590 			if (yych <= '9') goto yy465;
9591 			goto yy490;
9592 		}
9593 	} else {
9594 		if (yych <= 'P') {
9595 			if (yych == 'A') goto yy477;
9596 			if (yych <= 'O') goto yy465;
9597 			goto yy477;
9598 		} else {
9599 			if (yych <= 'a') {
9600 				if (yych <= '`') goto yy465;
9601 				goto yy477;
9602 			} else {
9603 				if (yych == 'p') goto yy477;
9604 				goto yy465;
9605 			}
9606 		}
9607 	}
9608 yy489:
9609 	YYDEBUG(489, *YYCURSOR);
9610 	yych = *++YYCURSOR;
9611 	if (yych <= '/') goto yy55;
9612 	if (yych <= '9') goto yy499;
9613 	goto yy55;
9614 yy490:
9615 	YYDEBUG(490, *YYCURSOR);
9616 	yych = *++YYCURSOR;
9617 	if (yych <= '/') goto yy55;
9618 	if (yych >= ':') goto yy55;
9619 yy491:
9620 	YYDEBUG(491, *YYCURSOR);
9621 	++YYCURSOR;
9622 	if ((YYLIMIT - YYCURSOR) < 5) YYFILL(5);
9623 	yych = *YYCURSOR;
9624 	YYDEBUG(492, *YYCURSOR);
9625 	if (yych <= 'O') {
9626 		if (yych <= '9') {
9627 			if (yych <= '/') goto yy55;
9628 			goto yy491;
9629 		} else {
9630 			if (yych != 'A') goto yy55;
9631 		}
9632 	} else {
9633 		if (yych <= 'a') {
9634 			if (yych <= 'P') goto yy493;
9635 			if (yych <= '`') goto yy55;
9636 		} else {
9637 			if (yych != 'p') goto yy55;
9638 		}
9639 	}
9640 yy493:
9641 	YYDEBUG(493, *YYCURSOR);
9642 	yych = *++YYCURSOR;
9643 	if (yych <= 'L') {
9644 		if (yych != '.') goto yy55;
9645 	} else {
9646 		if (yych <= 'M') goto yy495;
9647 		if (yych == 'm') goto yy495;
9648 		goto yy55;
9649 	}
9650 	YYDEBUG(494, *YYCURSOR);
9651 	yych = *++YYCURSOR;
9652 	if (yych == 'M') goto yy495;
9653 	if (yych != 'm') goto yy55;
9654 yy495:
9655 	YYDEBUG(495, *YYCURSOR);
9656 	yych = *++YYCURSOR;
9657 	if (yych <= 0x1F) {
9658 		if (yych <= 0x00) goto yy497;
9659 		if (yych == '\t') goto yy497;
9660 		goto yy55;
9661 	} else {
9662 		if (yych <= ' ') goto yy497;
9663 		if (yych != '.') goto yy55;
9664 	}
9665 	YYDEBUG(496, *YYCURSOR);
9666 	yych = *++YYCURSOR;
9667 	if (yych <= '\t') {
9668 		if (yych <= 0x00) goto yy497;
9669 		if (yych <= 0x08) goto yy55;
9670 	} else {
9671 		if (yych != ' ') goto yy55;
9672 	}
9673 yy497:
9674 	YYDEBUG(497, *YYCURSOR);
9675 	++YYCURSOR;
9676 	YYDEBUG(498, *YYCURSOR);
9677 #line 1204 "parse_date.re"
9678 	{
9679 		DEBUG_OUTPUT("mssqltime");
9680 		TIMELIB_INIT;
9681 		TIMELIB_HAVE_TIME();
9682 		s->time->h = timelib_get_nr((char **) &ptr, 2);
9683 		s->time->i = timelib_get_nr((char **) &ptr, 2);
9684 		if (*ptr == ':' || *ptr == '.') {
9685 			s->time->s = timelib_get_nr((char **) &ptr, 2);
9686 
9687 			if (*ptr == ':' || *ptr == '.') {
9688 				s->time->us = timelib_get_frac_nr((char **) &ptr, 8);
9689 			}
9690 		}
9691 		timelib_eat_spaces((char **) &ptr);
9692 		s->time->h += timelib_meridian((char **) &ptr, s->time->h);
9693 		TIMELIB_DEINIT;
9694 		return TIMELIB_TIME24_WITH_ZONE;
9695 	}
9696 #line 9694 "<stdout>"
9697 yy499:
9698 	YYDEBUG(499, *YYCURSOR);
9699 	yyaccept = 10;
9700 	YYMARKER = ++YYCURSOR;
9701 	if ((YYLIMIT - YYCURSOR) < 5) YYFILL(5);
9702 	yych = *YYCURSOR;
9703 	YYDEBUG(500, *YYCURSOR);
9704 	if (yych <= 'O') {
9705 		if (yych <= '9') {
9706 			if (yych <= '/') goto yy465;
9707 			goto yy499;
9708 		} else {
9709 			if (yych == 'A') goto yy493;
9710 			goto yy465;
9711 		}
9712 	} else {
9713 		if (yych <= 'a') {
9714 			if (yych <= 'P') goto yy493;
9715 			if (yych <= '`') goto yy465;
9716 			goto yy493;
9717 		} else {
9718 			if (yych == 'p') goto yy493;
9719 			goto yy465;
9720 		}
9721 	}
9722 yy501:
9723 	YYDEBUG(501, *YYCURSOR);
9724 	yych = *++YYCURSOR;
9725 	if (yych == 'M') goto yy502;
9726 	if (yych != 'm') goto yy55;
9727 yy502:
9728 	YYDEBUG(502, *YYCURSOR);
9729 	yych = *++YYCURSOR;
9730 	if (yych <= 0x1F) {
9731 		if (yych <= 0x00) goto yy462;
9732 		if (yych == '\t') goto yy462;
9733 		goto yy55;
9734 	} else {
9735 		if (yych <= ' ') goto yy462;
9736 		if (yych != '.') goto yy55;
9737 	}
9738 	YYDEBUG(503, *YYCURSOR);
9739 	yych = *++YYCURSOR;
9740 	if (yych <= '\t') {
9741 		if (yych <= 0x00) goto yy462;
9742 		if (yych <= 0x08) goto yy55;
9743 		goto yy462;
9744 	} else {
9745 		if (yych == ' ') goto yy462;
9746 		goto yy55;
9747 	}
9748 yy504:
9749 	YYDEBUG(504, *YYCURSOR);
9750 	yych = *++YYCURSOR;
9751 	if (yych == 'V') goto yy505;
9752 	if (yych != 'v') goto yy55;
9753 yy505:
9754 	YYDEBUG(505, *YYCURSOR);
9755 	yyaccept = 9;
9756 	yych = *(YYMARKER = ++YYCURSOR);
9757 	if (yych <= '.') {
9758 		if (yych <= 0x1F) {
9759 			if (yych != '\t') goto yy450;
9760 		} else {
9761 			if (yych <= ' ') goto yy506;
9762 			if (yych <= ',') goto yy450;
9763 		}
9764 	} else {
9765 		if (yych <= 'D') {
9766 			if (yych <= '/') goto yy450;
9767 			if (yych <= '9') goto yy508;
9768 			goto yy450;
9769 		} else {
9770 			if (yych <= 'E') goto yy510;
9771 			if (yych == 'e') goto yy510;
9772 			goto yy450;
9773 		}
9774 	}
9775 yy506:
9776 	YYDEBUG(506, *YYCURSOR);
9777 	++YYCURSOR;
9778 	if ((YYLIMIT - YYCURSOR) < 4) YYFILL(4);
9779 	yych = *YYCURSOR;
9780 yy507:
9781 	YYDEBUG(507, *YYCURSOR);
9782 	if (yych <= ' ') {
9783 		if (yych == '\t') goto yy506;
9784 		if (yych <= 0x1F) goto yy55;
9785 		goto yy506;
9786 	} else {
9787 		if (yych <= '.') {
9788 			if (yych <= ',') goto yy55;
9789 			goto yy506;
9790 		} else {
9791 			if (yych <= '/') goto yy55;
9792 			if (yych >= ':') goto yy55;
9793 		}
9794 	}
9795 yy508:
9796 	YYDEBUG(508, *YYCURSOR);
9797 	++YYCURSOR;
9798 	if ((yych = *YYCURSOR) <= '/') goto yy509;
9799 	if (yych <= '9') goto yy515;
9800 yy509:
9801 	YYDEBUG(509, *YYCURSOR);
9802 #line 1386 "parse_date.re"
9803 	{
9804 		int length = 0;
9805 		DEBUG_OUTPUT("datefull");
9806 		TIMELIB_INIT;
9807 		TIMELIB_HAVE_DATE();
9808 		s->time->d = timelib_get_nr((char **) &ptr, 2);
9809 		timelib_skip_day_suffix((char **) &ptr);
9810 		s->time->m = timelib_get_month((char **) &ptr);
9811 		s->time->y = timelib_get_nr_ex((char **) &ptr, 4, &length);
9812 		TIMELIB_PROCESS_YEAR(s->time->y, length);
9813 		TIMELIB_DEINIT;
9814 		return TIMELIB_DATE_FULL;
9815 	}
9816 #line 9814 "<stdout>"
9817 yy510:
9818 	YYDEBUG(510, *YYCURSOR);
9819 	yych = *++YYCURSOR;
9820 	if (yych == 'M') goto yy511;
9821 	if (yych != 'm') goto yy55;
9822 yy511:
9823 	YYDEBUG(511, *YYCURSOR);
9824 	yych = *++YYCURSOR;
9825 	if (yych == 'B') goto yy512;
9826 	if (yych != 'b') goto yy55;
9827 yy512:
9828 	YYDEBUG(512, *YYCURSOR);
9829 	yych = *++YYCURSOR;
9830 	if (yych == 'E') goto yy513;
9831 	if (yych != 'e') goto yy55;
9832 yy513:
9833 	YYDEBUG(513, *YYCURSOR);
9834 	yych = *++YYCURSOR;
9835 	if (yych == 'R') goto yy514;
9836 	if (yych != 'r') goto yy55;
9837 yy514:
9838 	YYDEBUG(514, *YYCURSOR);
9839 	yyaccept = 9;
9840 	yych = *(YYMARKER = ++YYCURSOR);
9841 	if (yych <= ' ') {
9842 		if (yych == '\t') goto yy506;
9843 		if (yych <= 0x1F) goto yy450;
9844 		goto yy506;
9845 	} else {
9846 		if (yych <= '.') {
9847 			if (yych <= ',') goto yy450;
9848 			goto yy506;
9849 		} else {
9850 			if (yych <= '/') goto yy450;
9851 			if (yych <= '9') goto yy508;
9852 			goto yy450;
9853 		}
9854 	}
9855 yy515:
9856 	YYDEBUG(515, *YYCURSOR);
9857 	yych = *++YYCURSOR;
9858 	if (yych <= '/') goto yy509;
9859 	if (yych >= ':') goto yy509;
9860 yy516:
9861 	YYDEBUG(516, *YYCURSOR);
9862 	yych = *++YYCURSOR;
9863 	if (yych <= '/') goto yy509;
9864 	if (yych >= ':') goto yy509;
9865 	YYDEBUG(517, *YYCURSOR);
9866 	yych = *++YYCURSOR;
9867 	goto yy509;
9868 yy518:
9869 	YYDEBUG(518, *YYCURSOR);
9870 	yych = *++YYCURSOR;
9871 	if (yych == 'T') goto yy519;
9872 	if (yych != 't') goto yy55;
9873 yy519:
9874 	YYDEBUG(519, *YYCURSOR);
9875 	yyaccept = 9;
9876 	yych = *(YYMARKER = ++YYCURSOR);
9877 	if (yych <= '.') {
9878 		if (yych <= 0x1F) {
9879 			if (yych == '\t') goto yy506;
9880 			goto yy450;
9881 		} else {
9882 			if (yych <= ' ') goto yy506;
9883 			if (yych <= ',') goto yy450;
9884 			goto yy506;
9885 		}
9886 	} else {
9887 		if (yych <= 'N') {
9888 			if (yych <= '/') goto yy450;
9889 			if (yych <= '9') goto yy508;
9890 			goto yy450;
9891 		} else {
9892 			if (yych <= 'O') goto yy520;
9893 			if (yych != 'o') goto yy450;
9894 		}
9895 	}
9896 yy520:
9897 	YYDEBUG(520, *YYCURSOR);
9898 	yych = *++YYCURSOR;
9899 	if (yych == 'B') goto yy521;
9900 	if (yych != 'b') goto yy55;
9901 yy521:
9902 	YYDEBUG(521, *YYCURSOR);
9903 	yych = *++YYCURSOR;
9904 	if (yych == 'E') goto yy522;
9905 	if (yych != 'e') goto yy55;
9906 yy522:
9907 	YYDEBUG(522, *YYCURSOR);
9908 	yych = *++YYCURSOR;
9909 	if (yych == 'R') goto yy514;
9910 	if (yych == 'r') goto yy514;
9911 	goto yy55;
9912 yy523:
9913 	YYDEBUG(523, *YYCURSOR);
9914 	yych = *++YYCURSOR;
9915 	if (yych == 'G') goto yy527;
9916 	if (yych == 'g') goto yy527;
9917 	goto yy55;
9918 yy524:
9919 	YYDEBUG(524, *YYCURSOR);
9920 	yych = *++YYCURSOR;
9921 	if (yych == 'R') goto yy525;
9922 	if (yych != 'r') goto yy55;
9923 yy525:
9924 	YYDEBUG(525, *YYCURSOR);
9925 	yyaccept = 9;
9926 	yych = *(YYMARKER = ++YYCURSOR);
9927 	if (yych <= '.') {
9928 		if (yych <= 0x1F) {
9929 			if (yych == '\t') goto yy506;
9930 			goto yy450;
9931 		} else {
9932 			if (yych <= ' ') goto yy506;
9933 			if (yych <= ',') goto yy450;
9934 			goto yy506;
9935 		}
9936 	} else {
9937 		if (yych <= 'H') {
9938 			if (yych <= '/') goto yy450;
9939 			if (yych <= '9') goto yy508;
9940 			goto yy450;
9941 		} else {
9942 			if (yych <= 'I') goto yy526;
9943 			if (yych != 'i') goto yy450;
9944 		}
9945 	}
9946 yy526:
9947 	YYDEBUG(526, *YYCURSOR);
9948 	yych = *++YYCURSOR;
9949 	if (yych == 'L') goto yy514;
9950 	if (yych == 'l') goto yy514;
9951 	goto yy55;
9952 yy527:
9953 	YYDEBUG(527, *YYCURSOR);
9954 	yyaccept = 9;
9955 	yych = *(YYMARKER = ++YYCURSOR);
9956 	if (yych <= '.') {
9957 		if (yych <= 0x1F) {
9958 			if (yych == '\t') goto yy506;
9959 			goto yy450;
9960 		} else {
9961 			if (yych <= ' ') goto yy506;
9962 			if (yych <= ',') goto yy450;
9963 			goto yy506;
9964 		}
9965 	} else {
9966 		if (yych <= 'T') {
9967 			if (yych <= '/') goto yy450;
9968 			if (yych <= '9') goto yy508;
9969 			goto yy450;
9970 		} else {
9971 			if (yych <= 'U') goto yy528;
9972 			if (yych != 'u') goto yy450;
9973 		}
9974 	}
9975 yy528:
9976 	YYDEBUG(528, *YYCURSOR);
9977 	yych = *++YYCURSOR;
9978 	if (yych == 'S') goto yy529;
9979 	if (yych != 's') goto yy55;
9980 yy529:
9981 	YYDEBUG(529, *YYCURSOR);
9982 	yych = *++YYCURSOR;
9983 	if (yych == 'T') goto yy514;
9984 	if (yych == 't') goto yy514;
9985 	goto yy55;
9986 yy530:
9987 	YYDEBUG(530, *YYCURSOR);
9988 	yych = *++YYCURSOR;
9989 	if (yych <= 'N') {
9990 		if (yych == 'L') goto yy537;
9991 		if (yych <= 'M') goto yy55;
9992 		goto yy536;
9993 	} else {
9994 		if (yych <= 'l') {
9995 			if (yych <= 'k') goto yy55;
9996 			goto yy537;
9997 		} else {
9998 			if (yych == 'n') goto yy536;
9999 			goto yy55;
10000 		}
10001 	}
10002 yy531:
10003 	YYDEBUG(531, *YYCURSOR);
10004 	yych = *++YYCURSOR;
10005 	if (yych == 'N') goto yy532;
10006 	if (yych != 'n') goto yy55;
10007 yy532:
10008 	YYDEBUG(532, *YYCURSOR);
10009 	yyaccept = 9;
10010 	yych = *(YYMARKER = ++YYCURSOR);
10011 	if (yych <= '.') {
10012 		if (yych <= 0x1F) {
10013 			if (yych == '\t') goto yy506;
10014 			goto yy450;
10015 		} else {
10016 			if (yych <= ' ') goto yy506;
10017 			if (yych <= ',') goto yy450;
10018 			goto yy506;
10019 		}
10020 	} else {
10021 		if (yych <= 'T') {
10022 			if (yych <= '/') goto yy450;
10023 			if (yych <= '9') goto yy508;
10024 			goto yy450;
10025 		} else {
10026 			if (yych <= 'U') goto yy533;
10027 			if (yych != 'u') goto yy450;
10028 		}
10029 	}
10030 yy533:
10031 	YYDEBUG(533, *YYCURSOR);
10032 	yych = *++YYCURSOR;
10033 	if (yych == 'A') goto yy534;
10034 	if (yych != 'a') goto yy55;
10035 yy534:
10036 	YYDEBUG(534, *YYCURSOR);
10037 	yych = *++YYCURSOR;
10038 	if (yych == 'R') goto yy535;
10039 	if (yych != 'r') goto yy55;
10040 yy535:
10041 	YYDEBUG(535, *YYCURSOR);
10042 	yych = *++YYCURSOR;
10043 	if (yych == 'Y') goto yy514;
10044 	if (yych == 'y') goto yy514;
10045 	goto yy55;
10046 yy536:
10047 	YYDEBUG(536, *YYCURSOR);
10048 	yyaccept = 9;
10049 	yych = *(YYMARKER = ++YYCURSOR);
10050 	if (yych <= '.') {
10051 		if (yych <= 0x1F) {
10052 			if (yych == '\t') goto yy506;
10053 			goto yy450;
10054 		} else {
10055 			if (yych <= ' ') goto yy506;
10056 			if (yych <= ',') goto yy450;
10057 			goto yy506;
10058 		}
10059 	} else {
10060 		if (yych <= 'D') {
10061 			if (yych <= '/') goto yy450;
10062 			if (yych <= '9') goto yy508;
10063 			goto yy450;
10064 		} else {
10065 			if (yych <= 'E') goto yy514;
10066 			if (yych == 'e') goto yy514;
10067 			goto yy450;
10068 		}
10069 	}
10070 yy537:
10071 	YYDEBUG(537, *YYCURSOR);
10072 	yyaccept = 9;
10073 	yych = *(YYMARKER = ++YYCURSOR);
10074 	if (yych <= '.') {
10075 		if (yych <= 0x1F) {
10076 			if (yych == '\t') goto yy506;
10077 			goto yy450;
10078 		} else {
10079 			if (yych <= ' ') goto yy506;
10080 			if (yych <= ',') goto yy450;
10081 			goto yy506;
10082 		}
10083 	} else {
10084 		if (yych <= 'X') {
10085 			if (yych <= '/') goto yy450;
10086 			if (yych <= '9') goto yy508;
10087 			goto yy450;
10088 		} else {
10089 			if (yych <= 'Y') goto yy514;
10090 			if (yych == 'y') goto yy514;
10091 			goto yy450;
10092 		}
10093 	}
10094 yy538:
10095 	YYDEBUG(538, *YYCURSOR);
10096 	yyaccept = 9;
10097 	yych = *(YYMARKER = ++YYCURSOR);
10098 	if (yych <= ',') {
10099 		if (yych <= '\t') {
10100 			if (yych <= 0x08) goto yy450;
10101 			goto yy506;
10102 		} else {
10103 			if (yych == ' ') goto yy506;
10104 			goto yy450;
10105 		}
10106 	} else {
10107 		if (yych <= '9') {
10108 			if (yych <= '.') goto yy506;
10109 			if (yych <= '/') goto yy450;
10110 			goto yy508;
10111 		} else {
10112 			if (yych == 'I') goto yy514;
10113 			goto yy450;
10114 		}
10115 	}
10116 yy539:
10117 	YYDEBUG(539, *YYCURSOR);
10118 	yyaccept = 9;
10119 	yych = *(YYMARKER = ++YYCURSOR);
10120 	if (yych <= ',') {
10121 		if (yych <= '\t') {
10122 			if (yych <= 0x08) goto yy450;
10123 			goto yy506;
10124 		} else {
10125 			if (yych == ' ') goto yy506;
10126 			goto yy450;
10127 		}
10128 	} else {
10129 		if (yych <= '9') {
10130 			if (yych <= '.') goto yy506;
10131 			if (yych <= '/') goto yy450;
10132 			goto yy508;
10133 		} else {
10134 			if (yych != 'I') goto yy450;
10135 		}
10136 	}
10137 	YYDEBUG(540, *YYCURSOR);
10138 	yyaccept = 9;
10139 	yych = *(YYMARKER = ++YYCURSOR);
10140 	if (yych <= ',') {
10141 		if (yych <= '\t') {
10142 			if (yych <= 0x08) goto yy450;
10143 			goto yy506;
10144 		} else {
10145 			if (yych == ' ') goto yy506;
10146 			goto yy450;
10147 		}
10148 	} else {
10149 		if (yych <= '9') {
10150 			if (yych <= '.') goto yy506;
10151 			if (yych <= '/') goto yy450;
10152 			goto yy508;
10153 		} else {
10154 			if (yych == 'I') goto yy514;
10155 			goto yy450;
10156 		}
10157 	}
10158 yy541:
10159 	YYDEBUG(541, *YYCURSOR);
10160 	yyaccept = 9;
10161 	yych = *(YYMARKER = ++YYCURSOR);
10162 	if (yych <= ',') {
10163 		if (yych <= '\t') {
10164 			if (yych <= 0x08) goto yy450;
10165 			goto yy506;
10166 		} else {
10167 			if (yych == ' ') goto yy506;
10168 			goto yy450;
10169 		}
10170 	} else {
10171 		if (yych <= '9') {
10172 			if (yych <= '.') goto yy506;
10173 			if (yych <= '/') goto yy450;
10174 			goto yy508;
10175 		} else {
10176 			if (yych == 'I') goto yy514;
10177 			goto yy450;
10178 		}
10179 	}
10180 yy542:
10181 	YYDEBUG(542, *YYCURSOR);
10182 	yyaccept = 10;
10183 	yych = *(YYMARKER = ++YYCURSOR);
10184 	if (yych <= '.') {
10185 		if (yych <= ',') goto yy465;
10186 		if (yych <= '-') goto yy576;
10187 		goto yy575;
10188 	} else {
10189 		if (yych <= '/') goto yy465;
10190 		if (yych <= '9') goto yy589;
10191 		if (yych <= ':') goto yy467;
10192 		goto yy465;
10193 	}
10194 yy543:
10195 	YYDEBUG(543, *YYCURSOR);
10196 	yyaccept = 10;
10197 	yych = *(YYMARKER = ++YYCURSOR);
10198 	if (yych <= '/') {
10199 		if (yych <= ',') goto yy465;
10200 		if (yych <= '-') goto yy576;
10201 		if (yych <= '.') goto yy575;
10202 		goto yy465;
10203 	} else {
10204 		if (yych <= '2') goto yy589;
10205 		if (yych <= '9') goto yy588;
10206 		if (yych <= ':') goto yy467;
10207 		goto yy465;
10208 	}
10209 yy544:
10210 	YYDEBUG(544, *YYCURSOR);
10211 	yyaccept = 10;
10212 	yych = *(YYMARKER = ++YYCURSOR);
10213 	if (yych <= '.') {
10214 		if (yych <= ',') goto yy465;
10215 		if (yych <= '-') goto yy576;
10216 		goto yy575;
10217 	} else {
10218 		if (yych <= '/') goto yy465;
10219 		if (yych <= '9') goto yy588;
10220 		if (yych <= ':') goto yy467;
10221 		goto yy465;
10222 	}
10223 yy545:
10224 	YYDEBUG(545, *YYCURSOR);
10225 	yyaccept = 10;
10226 	yych = *(YYMARKER = ++YYCURSOR);
10227 	if (yych <= '.') {
10228 		if (yych <= ',') goto yy465;
10229 		if (yych <= '-') goto yy576;
10230 		goto yy575;
10231 	} else {
10232 		if (yych == ':') goto yy467;
10233 		goto yy465;
10234 	}
10235 yy546:
10236 	YYDEBUG(546, *YYCURSOR);
10237 	yych = *++YYCURSOR;
10238 	if (yych == 'E') goto yy569;
10239 	if (yych == 'e') goto yy569;
10240 	goto yy55;
10241 yy547:
10242 	YYDEBUG(547, *YYCURSOR);
10243 	yych = *++YYCURSOR;
10244 	if (yych == 'A') goto yy566;
10245 	if (yych == 'a') goto yy566;
10246 	goto yy55;
10247 yy548:
10248 	YYDEBUG(548, *YYCURSOR);
10249 	yych = *++YYCURSOR;
10250 	if (yych <= 'U') {
10251 		if (yych == 'P') goto yy524;
10252 		if (yych <= 'T') goto yy55;
10253 		goto yy523;
10254 	} else {
10255 		if (yych <= 'p') {
10256 			if (yych <= 'o') goto yy55;
10257 			goto yy524;
10258 		} else {
10259 			if (yych == 'u') goto yy523;
10260 			goto yy55;
10261 		}
10262 	}
10263 yy549:
10264 	YYDEBUG(549, *YYCURSOR);
10265 	yych = *++YYCURSOR;
10266 	if (yych == 'E') goto yy559;
10267 	if (yych == 'e') goto yy559;
10268 	goto yy55;
10269 yy550:
10270 	YYDEBUG(550, *YYCURSOR);
10271 	yych = *++YYCURSOR;
10272 	if (yych == 'E') goto yy553;
10273 	if (yych == 'e') goto yy553;
10274 	goto yy55;
10275 yy551:
10276 	YYDEBUG(551, *YYCURSOR);
10277 	++YYCURSOR;
10278 	if ((YYLIMIT - YYCURSOR) < 13) YYFILL(13);
10279 	yych = *YYCURSOR;
10280 yy552:
10281 	YYDEBUG(552, *YYCURSOR);
10282 	switch (yych) {
10283 	case '\t':
10284 	case ' ':
10285 	case '-':
10286 	case '.':	goto yy551;
10287 	case 'A':
10288 	case 'a':	goto yy548;
10289 	case 'D':
10290 	case 'd':	goto yy550;
10291 	case 'F':
10292 	case 'f':	goto yy546;
10293 	case 'I':	goto yy449;
10294 	case 'J':
10295 	case 'j':	goto yy453;
10296 	case 'M':
10297 	case 'm':	goto yy547;
10298 	case 'N':
10299 	case 'n':	goto yy456;
10300 	case 'O':
10301 	case 'o':	goto yy455;
10302 	case 'S':
10303 	case 's':	goto yy549;
10304 	case 'V':	goto yy451;
10305 	case 'X':	goto yy452;
10306 	default:	goto yy55;
10307 	}
10308 yy553:
10309 	YYDEBUG(553, *YYCURSOR);
10310 	yych = *++YYCURSOR;
10311 	if (yych == 'C') goto yy554;
10312 	if (yych != 'c') goto yy55;
10313 yy554:
10314 	YYDEBUG(554, *YYCURSOR);
10315 	yyaccept = 9;
10316 	yych = *(YYMARKER = ++YYCURSOR);
10317 	if (yych <= '.') {
10318 		if (yych <= 0x1F) {
10319 			if (yych == '\t') goto yy506;
10320 			goto yy450;
10321 		} else {
10322 			if (yych <= ' ') goto yy506;
10323 			if (yych <= ',') goto yy450;
10324 			goto yy506;
10325 		}
10326 	} else {
10327 		if (yych <= 'D') {
10328 			if (yych <= '/') goto yy450;
10329 			if (yych <= '9') goto yy508;
10330 			goto yy450;
10331 		} else {
10332 			if (yych <= 'E') goto yy555;
10333 			if (yych != 'e') goto yy450;
10334 		}
10335 	}
10336 yy555:
10337 	YYDEBUG(555, *YYCURSOR);
10338 	yych = *++YYCURSOR;
10339 	if (yych == 'M') goto yy556;
10340 	if (yych != 'm') goto yy55;
10341 yy556:
10342 	YYDEBUG(556, *YYCURSOR);
10343 	yych = *++YYCURSOR;
10344 	if (yych == 'B') goto yy557;
10345 	if (yych != 'b') goto yy55;
10346 yy557:
10347 	YYDEBUG(557, *YYCURSOR);
10348 	yych = *++YYCURSOR;
10349 	if (yych == 'E') goto yy558;
10350 	if (yych != 'e') goto yy55;
10351 yy558:
10352 	YYDEBUG(558, *YYCURSOR);
10353 	yych = *++YYCURSOR;
10354 	if (yych == 'R') goto yy514;
10355 	if (yych == 'r') goto yy514;
10356 	goto yy55;
10357 yy559:
10358 	YYDEBUG(559, *YYCURSOR);
10359 	yych = *++YYCURSOR;
10360 	if (yych == 'P') goto yy560;
10361 	if (yych != 'p') goto yy55;
10362 yy560:
10363 	YYDEBUG(560, *YYCURSOR);
10364 	yyaccept = 9;
10365 	yych = *(YYMARKER = ++YYCURSOR);
10366 	if (yych <= '.') {
10367 		if (yych <= 0x1F) {
10368 			if (yych == '\t') goto yy506;
10369 			goto yy450;
10370 		} else {
10371 			if (yych <= ' ') goto yy506;
10372 			if (yych <= ',') goto yy450;
10373 			goto yy506;
10374 		}
10375 	} else {
10376 		if (yych <= 'S') {
10377 			if (yych <= '/') goto yy450;
10378 			if (yych <= '9') goto yy508;
10379 			goto yy450;
10380 		} else {
10381 			if (yych <= 'T') goto yy561;
10382 			if (yych != 't') goto yy450;
10383 		}
10384 	}
10385 yy561:
10386 	YYDEBUG(561, *YYCURSOR);
10387 	yyaccept = 9;
10388 	yych = *(YYMARKER = ++YYCURSOR);
10389 	if (yych <= '.') {
10390 		if (yych <= 0x1F) {
10391 			if (yych == '\t') goto yy506;
10392 			goto yy450;
10393 		} else {
10394 			if (yych <= ' ') goto yy506;
10395 			if (yych <= ',') goto yy450;
10396 			goto yy506;
10397 		}
10398 	} else {
10399 		if (yych <= 'D') {
10400 			if (yych <= '/') goto yy450;
10401 			if (yych <= '9') goto yy508;
10402 			goto yy450;
10403 		} else {
10404 			if (yych <= 'E') goto yy562;
10405 			if (yych != 'e') goto yy450;
10406 		}
10407 	}
10408 yy562:
10409 	YYDEBUG(562, *YYCURSOR);
10410 	yych = *++YYCURSOR;
10411 	if (yych == 'M') goto yy563;
10412 	if (yych != 'm') goto yy55;
10413 yy563:
10414 	YYDEBUG(563, *YYCURSOR);
10415 	yych = *++YYCURSOR;
10416 	if (yych == 'B') goto yy564;
10417 	if (yych != 'b') goto yy55;
10418 yy564:
10419 	YYDEBUG(564, *YYCURSOR);
10420 	yych = *++YYCURSOR;
10421 	if (yych == 'E') goto yy565;
10422 	if (yych != 'e') goto yy55;
10423 yy565:
10424 	YYDEBUG(565, *YYCURSOR);
10425 	yych = *++YYCURSOR;
10426 	if (yych == 'R') goto yy514;
10427 	if (yych == 'r') goto yy514;
10428 	goto yy55;
10429 yy566:
10430 	YYDEBUG(566, *YYCURSOR);
10431 	yych = *++YYCURSOR;
10432 	if (yych <= 'Y') {
10433 		if (yych == 'R') goto yy567;
10434 		if (yych <= 'X') goto yy55;
10435 		goto yy514;
10436 	} else {
10437 		if (yych <= 'r') {
10438 			if (yych <= 'q') goto yy55;
10439 		} else {
10440 			if (yych == 'y') goto yy514;
10441 			goto yy55;
10442 		}
10443 	}
10444 yy567:
10445 	YYDEBUG(567, *YYCURSOR);
10446 	yyaccept = 9;
10447 	yych = *(YYMARKER = ++YYCURSOR);
10448 	if (yych <= '.') {
10449 		if (yych <= 0x1F) {
10450 			if (yych == '\t') goto yy506;
10451 			goto yy450;
10452 		} else {
10453 			if (yych <= ' ') goto yy506;
10454 			if (yych <= ',') goto yy450;
10455 			goto yy506;
10456 		}
10457 	} else {
10458 		if (yych <= 'B') {
10459 			if (yych <= '/') goto yy450;
10460 			if (yych <= '9') goto yy508;
10461 			goto yy450;
10462 		} else {
10463 			if (yych <= 'C') goto yy568;
10464 			if (yych != 'c') goto yy450;
10465 		}
10466 	}
10467 yy568:
10468 	YYDEBUG(568, *YYCURSOR);
10469 	yych = *++YYCURSOR;
10470 	if (yych == 'H') goto yy514;
10471 	if (yych == 'h') goto yy514;
10472 	goto yy55;
10473 yy569:
10474 	YYDEBUG(569, *YYCURSOR);
10475 	yych = *++YYCURSOR;
10476 	if (yych == 'B') goto yy570;
10477 	if (yych != 'b') goto yy55;
10478 yy570:
10479 	YYDEBUG(570, *YYCURSOR);
10480 	yyaccept = 9;
10481 	yych = *(YYMARKER = ++YYCURSOR);
10482 	if (yych <= '.') {
10483 		if (yych <= 0x1F) {
10484 			if (yych == '\t') goto yy506;
10485 			goto yy450;
10486 		} else {
10487 			if (yych <= ' ') goto yy506;
10488 			if (yych <= ',') goto yy450;
10489 			goto yy506;
10490 		}
10491 	} else {
10492 		if (yych <= 'Q') {
10493 			if (yych <= '/') goto yy450;
10494 			if (yych <= '9') goto yy508;
10495 			goto yy450;
10496 		} else {
10497 			if (yych <= 'R') goto yy571;
10498 			if (yych != 'r') goto yy450;
10499 		}
10500 	}
10501 yy571:
10502 	YYDEBUG(571, *YYCURSOR);
10503 	yych = *++YYCURSOR;
10504 	if (yych == 'U') goto yy572;
10505 	if (yych != 'u') goto yy55;
10506 yy572:
10507 	YYDEBUG(572, *YYCURSOR);
10508 	yych = *++YYCURSOR;
10509 	if (yych == 'A') goto yy573;
10510 	if (yych != 'a') goto yy55;
10511 yy573:
10512 	YYDEBUG(573, *YYCURSOR);
10513 	yych = *++YYCURSOR;
10514 	if (yych == 'R') goto yy574;
10515 	if (yych != 'r') goto yy55;
10516 yy574:
10517 	YYDEBUG(574, *YYCURSOR);
10518 	yych = *++YYCURSOR;
10519 	if (yych == 'Y') goto yy514;
10520 	if (yych == 'y') goto yy514;
10521 	goto yy55;
10522 yy575:
10523 	YYDEBUG(575, *YYCURSOR);
10524 	yych = *++YYCURSOR;
10525 	if (yych <= '/') goto yy55;
10526 	if (yych <= '5') goto yy582;
10527 	if (yych <= '6') goto yy583;
10528 	if (yych <= '9') goto yy584;
10529 	goto yy55;
10530 yy576:
10531 	YYDEBUG(576, *YYCURSOR);
10532 	yych = *++YYCURSOR;
10533 	if (yych <= '/') goto yy55;
10534 	if (yych >= ':') goto yy55;
10535 	YYDEBUG(577, *YYCURSOR);
10536 	yych = *++YYCURSOR;
10537 	if (yych <= '/') goto yy55;
10538 	if (yych >= ':') goto yy55;
10539 yy578:
10540 	YYDEBUG(578, *YYCURSOR);
10541 	yych = *++YYCURSOR;
10542 	if (yych <= '/') goto yy55;
10543 	if (yych >= ':') goto yy55;
10544 yy579:
10545 	YYDEBUG(579, *YYCURSOR);
10546 	yych = *++YYCURSOR;
10547 	if (yych <= '/') goto yy55;
10548 	if (yych >= ':') goto yy55;
10549 	YYDEBUG(580, *YYCURSOR);
10550 	++YYCURSOR;
10551 	YYDEBUG(581, *YYCURSOR);
10552 #line 1401 "parse_date.re"
10553 	{
10554 		DEBUG_OUTPUT("pointed date YYYY");
10555 		TIMELIB_INIT;
10556 		TIMELIB_HAVE_DATE();
10557 		s->time->d = timelib_get_nr((char **) &ptr, 2);
10558 		s->time->m = timelib_get_nr((char **) &ptr, 2);
10559 		s->time->y = timelib_get_nr((char **) &ptr, 4);
10560 		TIMELIB_DEINIT;
10561 		return TIMELIB_DATE_FULL_POINTED;
10562 	}
10563 #line 10561 "<stdout>"
10564 yy582:
10565 	YYDEBUG(582, *YYCURSOR);
10566 	yyaccept = 10;
10567 	yych = *(YYMARKER = ++YYCURSOR);
10568 	if (yych == '.') goto yy471;
10569 	if (yych <= '/') goto yy465;
10570 	if (yych <= '9') goto yy587;
10571 	goto yy465;
10572 yy583:
10573 	YYDEBUG(583, *YYCURSOR);
10574 	yyaccept = 10;
10575 	yych = *(YYMARKER = ++YYCURSOR);
10576 	if (yych <= '/') {
10577 		if (yych == '.') goto yy471;
10578 		goto yy465;
10579 	} else {
10580 		if (yych <= '0') goto yy587;
10581 		if (yych <= '9') goto yy585;
10582 		goto yy465;
10583 	}
10584 yy584:
10585 	YYDEBUG(584, *YYCURSOR);
10586 	yyaccept = 10;
10587 	yych = *(YYMARKER = ++YYCURSOR);
10588 	if (yych == '.') goto yy471;
10589 	if (yych <= '/') goto yy465;
10590 	if (yych >= ':') goto yy465;
10591 yy585:
10592 	YYDEBUG(585, *YYCURSOR);
10593 	yyaccept = 11;
10594 	yych = *(YYMARKER = ++YYCURSOR);
10595 	if (yych <= '/') goto yy586;
10596 	if (yych <= '9') goto yy579;
10597 yy586:
10598 	YYDEBUG(586, *YYCURSOR);
10599 #line 1413 "parse_date.re"
10600 	{
10601 		int length = 0;
10602 		DEBUG_OUTPUT("pointed date YY");
10603 		TIMELIB_INIT;
10604 		TIMELIB_HAVE_DATE();
10605 		s->time->d = timelib_get_nr((char **) &ptr, 2);
10606 		s->time->m = timelib_get_nr((char **) &ptr, 2);
10607 		s->time->y = timelib_get_nr_ex((char **) &ptr, 2, &length);
10608 		TIMELIB_PROCESS_YEAR(s->time->y, length);
10609 		TIMELIB_DEINIT;
10610 		return TIMELIB_DATE_FULL_POINTED;
10611 	}
10612 #line 10610 "<stdout>"
10613 yy587:
10614 	YYDEBUG(587, *YYCURSOR);
10615 	yyaccept = 10;
10616 	yych = *(YYMARKER = ++YYCURSOR);
10617 	if (yych <= '9') {
10618 		if (yych <= ' ') {
10619 			if (yych == '\t') goto yy475;
10620 			if (yych <= 0x1F) goto yy465;
10621 			goto yy475;
10622 		} else {
10623 			if (yych == '.') goto yy471;
10624 			if (yych <= '/') goto yy465;
10625 			goto yy579;
10626 		}
10627 	} else {
10628 		if (yych <= 'P') {
10629 			if (yych == 'A') goto yy477;
10630 			if (yych <= 'O') goto yy465;
10631 			goto yy477;
10632 		} else {
10633 			if (yych <= 'a') {
10634 				if (yych <= '`') goto yy465;
10635 				goto yy477;
10636 			} else {
10637 				if (yych == 'p') goto yy477;
10638 				goto yy465;
10639 			}
10640 		}
10641 	}
10642 yy588:
10643 	YYDEBUG(588, *YYCURSOR);
10644 	yyaccept = 10;
10645 	yych = *(YYMARKER = ++YYCURSOR);
10646 	if (yych <= ':') {
10647 		if (yych <= ' ') {
10648 			if (yych == '\t') goto yy482;
10649 			if (yych <= 0x1F) goto yy465;
10650 			goto yy482;
10651 		} else {
10652 			if (yych == '.') goto yy467;
10653 			if (yych <= '9') goto yy465;
10654 			goto yy467;
10655 		}
10656 	} else {
10657 		if (yych <= 'P') {
10658 			if (yych == 'A') goto yy484;
10659 			if (yych <= 'O') goto yy465;
10660 			goto yy484;
10661 		} else {
10662 			if (yych <= 'a') {
10663 				if (yych <= '`') goto yy465;
10664 				goto yy484;
10665 			} else {
10666 				if (yych == 'p') goto yy484;
10667 				goto yy465;
10668 			}
10669 		}
10670 	}
10671 yy589:
10672 	YYDEBUG(589, *YYCURSOR);
10673 	yyaccept = 10;
10674 	yych = *(YYMARKER = ++YYCURSOR);
10675 	if (yych <= ':') {
10676 		if (yych <= ' ') {
10677 			if (yych == '\t') goto yy482;
10678 			if (yych <= 0x1F) goto yy465;
10679 			goto yy482;
10680 		} else {
10681 			if (yych <= '-') {
10682 				if (yych <= ',') goto yy465;
10683 				goto yy576;
10684 			} else {
10685 				if (yych <= '.') goto yy575;
10686 				if (yych <= '9') goto yy465;
10687 				goto yy467;
10688 			}
10689 		}
10690 	} else {
10691 		if (yych <= 'P') {
10692 			if (yych == 'A') goto yy484;
10693 			if (yych <= 'O') goto yy465;
10694 			goto yy484;
10695 		} else {
10696 			if (yych <= 'a') {
10697 				if (yych <= '`') goto yy465;
10698 				goto yy484;
10699 			} else {
10700 				if (yych == 'p') goto yy484;
10701 				goto yy465;
10702 			}
10703 		}
10704 	}
10705 yy590:
10706 	YYDEBUG(590, *YYCURSOR);
10707 	yych = *++YYCURSOR;
10708 	if (yych <= '.') {
10709 		if (yych <= ',') goto yy55;
10710 		if (yych <= '-') goto yy629;
10711 		goto yy576;
10712 	} else {
10713 		if (yych <= '/') goto yy55;
10714 		if (yych <= '9') goto yy592;
10715 		goto yy55;
10716 	}
10717 yy591:
10718 	YYDEBUG(591, *YYCURSOR);
10719 	yych = *++YYCURSOR;
10720 	if (yych <= '.') {
10721 		if (yych <= ',') goto yy55;
10722 		if (yych <= '-') goto yy629;
10723 		goto yy576;
10724 	} else {
10725 		if (yych <= '/') goto yy55;
10726 		if (yych >= '3') goto yy55;
10727 	}
10728 yy592:
10729 	YYDEBUG(592, *YYCURSOR);
10730 	yych = *++YYCURSOR;
10731 	if (yych <= ',') goto yy55;
10732 	if (yych <= '-') goto yy629;
10733 	if (yych <= '.') goto yy576;
10734 	goto yy55;
10735 yy593:
10736 	YYDEBUG(593, *YYCURSOR);
10737 	yych = *++YYCURSOR;
10738 	if (yych <= 'U') {
10739 		if (yych == 'A') goto yy625;
10740 		if (yych <= 'T') goto yy55;
10741 		goto yy624;
10742 	} else {
10743 		if (yych <= 'a') {
10744 			if (yych <= '`') goto yy55;
10745 			goto yy625;
10746 		} else {
10747 			if (yych == 'u') goto yy624;
10748 			goto yy55;
10749 		}
10750 	}
10751 yy594:
10752 	YYDEBUG(594, *YYCURSOR);
10753 	yych = *++YYCURSOR;
10754 	if (yych == 'E') goto yy622;
10755 	if (yych == 'e') goto yy622;
10756 	goto yy55;
10757 yy595:
10758 	YYDEBUG(595, *YYCURSOR);
10759 	yych = *++YYCURSOR;
10760 	if (yych == 'A') goto yy619;
10761 	if (yych == 'a') goto yy619;
10762 	goto yy55;
10763 yy596:
10764 	YYDEBUG(596, *YYCURSOR);
10765 	yych = *++YYCURSOR;
10766 	if (yych <= 'U') {
10767 		if (yych == 'P') goto yy616;
10768 		if (yych <= 'T') goto yy55;
10769 		goto yy615;
10770 	} else {
10771 		if (yych <= 'p') {
10772 			if (yych <= 'o') goto yy55;
10773 			goto yy616;
10774 		} else {
10775 			if (yych == 'u') goto yy615;
10776 			goto yy55;
10777 		}
10778 	}
10779 yy597:
10780 	YYDEBUG(597, *YYCURSOR);
10781 	yych = *++YYCURSOR;
10782 	if (yych == 'E') goto yy612;
10783 	if (yych == 'e') goto yy612;
10784 	goto yy55;
10785 yy598:
10786 	YYDEBUG(598, *YYCURSOR);
10787 	yych = *++YYCURSOR;
10788 	if (yych == 'C') goto yy610;
10789 	if (yych == 'c') goto yy610;
10790 	goto yy55;
10791 yy599:
10792 	YYDEBUG(599, *YYCURSOR);
10793 	yych = *++YYCURSOR;
10794 	if (yych == 'O') goto yy608;
10795 	if (yych == 'o') goto yy608;
10796 	goto yy55;
10797 yy600:
10798 	YYDEBUG(600, *YYCURSOR);
10799 	yych = *++YYCURSOR;
10800 	if (yych == 'E') goto yy601;
10801 	if (yych != 'e') goto yy55;
10802 yy601:
10803 	YYDEBUG(601, *YYCURSOR);
10804 	yych = *++YYCURSOR;
10805 	if (yych == 'C') goto yy602;
10806 	if (yych != 'c') goto yy55;
10807 yy602:
10808 	YYDEBUG(602, *YYCURSOR);
10809 	yyaccept = 9;
10810 	yych = *(YYMARKER = ++YYCURSOR);
10811 	if (yych <= '.') {
10812 		if (yych <= 0x1F) {
10813 			if (yych == '\t') goto yy506;
10814 			goto yy450;
10815 		} else {
10816 			if (yych <= ' ') goto yy506;
10817 			if (yych <= ',') goto yy450;
10818 			if (yych >= '.') goto yy506;
10819 		}
10820 	} else {
10821 		if (yych <= 'D') {
10822 			if (yych <= '/') goto yy450;
10823 			if (yych <= '9') goto yy508;
10824 			goto yy450;
10825 		} else {
10826 			if (yych <= 'E') goto yy555;
10827 			if (yych == 'e') goto yy555;
10828 			goto yy450;
10829 		}
10830 	}
10831 yy603:
10832 	YYDEBUG(603, *YYCURSOR);
10833 	yych = *++YYCURSOR;
10834 	if (yych <= '/') goto yy507;
10835 	if (yych <= '0') goto yy604;
10836 	if (yych <= '2') goto yy605;
10837 	if (yych <= '3') goto yy606;
10838 	goto yy507;
10839 yy604:
10840 	YYDEBUG(604, *YYCURSOR);
10841 	yych = *++YYCURSOR;
10842 	if (yych <= '/') goto yy509;
10843 	if (yych <= '9') goto yy607;
10844 	goto yy509;
10845 yy605:
10846 	YYDEBUG(605, *YYCURSOR);
10847 	yych = *++YYCURSOR;
10848 	if (yych <= '/') goto yy509;
10849 	if (yych <= '9') goto yy607;
10850 	goto yy509;
10851 yy606:
10852 	YYDEBUG(606, *YYCURSOR);
10853 	yych = *++YYCURSOR;
10854 	if (yych <= '/') goto yy509;
10855 	if (yych <= '1') goto yy607;
10856 	if (yych <= '9') goto yy515;
10857 	goto yy509;
10858 yy607:
10859 	YYDEBUG(607, *YYCURSOR);
10860 	yych = *++YYCURSOR;
10861 	if (yych <= '/') goto yy509;
10862 	if (yych <= '9') goto yy516;
10863 	goto yy509;
10864 yy608:
10865 	YYDEBUG(608, *YYCURSOR);
10866 	yych = *++YYCURSOR;
10867 	if (yych == 'V') goto yy609;
10868 	if (yych != 'v') goto yy55;
10869 yy609:
10870 	YYDEBUG(609, *YYCURSOR);
10871 	yyaccept = 9;
10872 	yych = *(YYMARKER = ++YYCURSOR);
10873 	if (yych <= '.') {
10874 		if (yych <= 0x1F) {
10875 			if (yych == '\t') goto yy506;
10876 			goto yy450;
10877 		} else {
10878 			if (yych <= ' ') goto yy506;
10879 			if (yych <= ',') goto yy450;
10880 			if (yych <= '-') goto yy603;
10881 			goto yy506;
10882 		}
10883 	} else {
10884 		if (yych <= 'D') {
10885 			if (yych <= '/') goto yy450;
10886 			if (yych <= '9') goto yy508;
10887 			goto yy450;
10888 		} else {
10889 			if (yych <= 'E') goto yy510;
10890 			if (yych == 'e') goto yy510;
10891 			goto yy450;
10892 		}
10893 	}
10894 yy610:
10895 	YYDEBUG(610, *YYCURSOR);
10896 	yych = *++YYCURSOR;
10897 	if (yych == 'T') goto yy611;
10898 	if (yych != 't') goto yy55;
10899 yy611:
10900 	YYDEBUG(611, *YYCURSOR);
10901 	yyaccept = 9;
10902 	yych = *(YYMARKER = ++YYCURSOR);
10903 	if (yych <= '.') {
10904 		if (yych <= 0x1F) {
10905 			if (yych == '\t') goto yy506;
10906 			goto yy450;
10907 		} else {
10908 			if (yych <= ' ') goto yy506;
10909 			if (yych <= ',') goto yy450;
10910 			if (yych <= '-') goto yy603;
10911 			goto yy506;
10912 		}
10913 	} else {
10914 		if (yych <= 'N') {
10915 			if (yych <= '/') goto yy450;
10916 			if (yych <= '9') goto yy508;
10917 			goto yy450;
10918 		} else {
10919 			if (yych <= 'O') goto yy520;
10920 			if (yych == 'o') goto yy520;
10921 			goto yy450;
10922 		}
10923 	}
10924 yy612:
10925 	YYDEBUG(612, *YYCURSOR);
10926 	yych = *++YYCURSOR;
10927 	if (yych == 'P') goto yy613;
10928 	if (yych != 'p') goto yy55;
10929 yy613:
10930 	YYDEBUG(613, *YYCURSOR);
10931 	yyaccept = 9;
10932 	yych = *(YYMARKER = ++YYCURSOR);
10933 	if (yych <= '.') {
10934 		if (yych <= 0x1F) {
10935 			if (yych == '\t') goto yy506;
10936 			goto yy450;
10937 		} else {
10938 			if (yych <= ' ') goto yy506;
10939 			if (yych <= ',') goto yy450;
10940 			if (yych <= '-') goto yy603;
10941 			goto yy506;
10942 		}
10943 	} else {
10944 		if (yych <= 'S') {
10945 			if (yych <= '/') goto yy450;
10946 			if (yych <= '9') goto yy508;
10947 			goto yy450;
10948 		} else {
10949 			if (yych <= 'T') goto yy614;
10950 			if (yych != 't') goto yy450;
10951 		}
10952 	}
10953 yy614:
10954 	YYDEBUG(614, *YYCURSOR);
10955 	yyaccept = 9;
10956 	yych = *(YYMARKER = ++YYCURSOR);
10957 	if (yych <= '.') {
10958 		if (yych <= 0x1F) {
10959 			if (yych == '\t') goto yy506;
10960 			goto yy450;
10961 		} else {
10962 			if (yych <= ' ') goto yy506;
10963 			if (yych <= ',') goto yy450;
10964 			if (yych <= '-') goto yy603;
10965 			goto yy506;
10966 		}
10967 	} else {
10968 		if (yych <= 'D') {
10969 			if (yych <= '/') goto yy450;
10970 			if (yych <= '9') goto yy508;
10971 			goto yy450;
10972 		} else {
10973 			if (yych <= 'E') goto yy562;
10974 			if (yych == 'e') goto yy562;
10975 			goto yy450;
10976 		}
10977 	}
10978 yy615:
10979 	YYDEBUG(615, *YYCURSOR);
10980 	yych = *++YYCURSOR;
10981 	if (yych == 'G') goto yy618;
10982 	if (yych == 'g') goto yy618;
10983 	goto yy55;
10984 yy616:
10985 	YYDEBUG(616, *YYCURSOR);
10986 	yych = *++YYCURSOR;
10987 	if (yych == 'R') goto yy617;
10988 	if (yych != 'r') goto yy55;
10989 yy617:
10990 	YYDEBUG(617, *YYCURSOR);
10991 	yyaccept = 9;
10992 	yych = *(YYMARKER = ++YYCURSOR);
10993 	if (yych <= '.') {
10994 		if (yych <= 0x1F) {
10995 			if (yych == '\t') goto yy506;
10996 			goto yy450;
10997 		} else {
10998 			if (yych <= ' ') goto yy506;
10999 			if (yych <= ',') goto yy450;
11000 			if (yych <= '-') goto yy603;
11001 			goto yy506;
11002 		}
11003 	} else {
11004 		if (yych <= 'H') {
11005 			if (yych <= '/') goto yy450;
11006 			if (yych <= '9') goto yy508;
11007 			goto yy450;
11008 		} else {
11009 			if (yych <= 'I') goto yy526;
11010 			if (yych == 'i') goto yy526;
11011 			goto yy450;
11012 		}
11013 	}
11014 yy618:
11015 	YYDEBUG(618, *YYCURSOR);
11016 	yyaccept = 9;
11017 	yych = *(YYMARKER = ++YYCURSOR);
11018 	if (yych <= '.') {
11019 		if (yych <= 0x1F) {
11020 			if (yych == '\t') goto yy506;
11021 			goto yy450;
11022 		} else {
11023 			if (yych <= ' ') goto yy506;
11024 			if (yych <= ',') goto yy450;
11025 			if (yych <= '-') goto yy603;
11026 			goto yy506;
11027 		}
11028 	} else {
11029 		if (yych <= 'T') {
11030 			if (yych <= '/') goto yy450;
11031 			if (yych <= '9') goto yy508;
11032 			goto yy450;
11033 		} else {
11034 			if (yych <= 'U') goto yy528;
11035 			if (yych == 'u') goto yy528;
11036 			goto yy450;
11037 		}
11038 	}
11039 yy619:
11040 	YYDEBUG(619, *YYCURSOR);
11041 	yych = *++YYCURSOR;
11042 	if (yych <= 'Y') {
11043 		if (yych == 'R') goto yy620;
11044 		if (yych <= 'X') goto yy55;
11045 		goto yy621;
11046 	} else {
11047 		if (yych <= 'r') {
11048 			if (yych <= 'q') goto yy55;
11049 		} else {
11050 			if (yych == 'y') goto yy621;
11051 			goto yy55;
11052 		}
11053 	}
11054 yy620:
11055 	YYDEBUG(620, *YYCURSOR);
11056 	yyaccept = 9;
11057 	yych = *(YYMARKER = ++YYCURSOR);
11058 	if (yych <= '.') {
11059 		if (yych <= 0x1F) {
11060 			if (yych == '\t') goto yy506;
11061 			goto yy450;
11062 		} else {
11063 			if (yych <= ' ') goto yy506;
11064 			if (yych <= ',') goto yy450;
11065 			if (yych <= '-') goto yy603;
11066 			goto yy506;
11067 		}
11068 	} else {
11069 		if (yych <= 'B') {
11070 			if (yych <= '/') goto yy450;
11071 			if (yych <= '9') goto yy508;
11072 			goto yy450;
11073 		} else {
11074 			if (yych <= 'C') goto yy568;
11075 			if (yych == 'c') goto yy568;
11076 			goto yy450;
11077 		}
11078 	}
11079 yy621:
11080 	YYDEBUG(621, *YYCURSOR);
11081 	yyaccept = 9;
11082 	yych = *(YYMARKER = ++YYCURSOR);
11083 	if (yych <= ',') {
11084 		if (yych <= '\t') {
11085 			if (yych <= 0x08) goto yy450;
11086 			goto yy506;
11087 		} else {
11088 			if (yych == ' ') goto yy506;
11089 			goto yy450;
11090 		}
11091 	} else {
11092 		if (yych <= '.') {
11093 			if (yych <= '-') goto yy603;
11094 			goto yy506;
11095 		} else {
11096 			if (yych <= '/') goto yy450;
11097 			if (yych <= '9') goto yy508;
11098 			goto yy450;
11099 		}
11100 	}
11101 yy622:
11102 	YYDEBUG(622, *YYCURSOR);
11103 	yych = *++YYCURSOR;
11104 	if (yych == 'B') goto yy623;
11105 	if (yych != 'b') goto yy55;
11106 yy623:
11107 	YYDEBUG(623, *YYCURSOR);
11108 	yyaccept = 9;
11109 	yych = *(YYMARKER = ++YYCURSOR);
11110 	if (yych <= '.') {
11111 		if (yych <= 0x1F) {
11112 			if (yych == '\t') goto yy506;
11113 			goto yy450;
11114 		} else {
11115 			if (yych <= ' ') goto yy506;
11116 			if (yych <= ',') goto yy450;
11117 			if (yych <= '-') goto yy603;
11118 			goto yy506;
11119 		}
11120 	} else {
11121 		if (yych <= 'Q') {
11122 			if (yych <= '/') goto yy450;
11123 			if (yych <= '9') goto yy508;
11124 			goto yy450;
11125 		} else {
11126 			if (yych <= 'R') goto yy571;
11127 			if (yych == 'r') goto yy571;
11128 			goto yy450;
11129 		}
11130 	}
11131 yy624:
11132 	YYDEBUG(624, *YYCURSOR);
11133 	yych = *++YYCURSOR;
11134 	if (yych <= 'N') {
11135 		if (yych == 'L') goto yy628;
11136 		if (yych <= 'M') goto yy55;
11137 		goto yy627;
11138 	} else {
11139 		if (yych <= 'l') {
11140 			if (yych <= 'k') goto yy55;
11141 			goto yy628;
11142 		} else {
11143 			if (yych == 'n') goto yy627;
11144 			goto yy55;
11145 		}
11146 	}
11147 yy625:
11148 	YYDEBUG(625, *YYCURSOR);
11149 	yych = *++YYCURSOR;
11150 	if (yych == 'N') goto yy626;
11151 	if (yych != 'n') goto yy55;
11152 yy626:
11153 	YYDEBUG(626, *YYCURSOR);
11154 	yyaccept = 9;
11155 	yych = *(YYMARKER = ++YYCURSOR);
11156 	if (yych <= '.') {
11157 		if (yych <= 0x1F) {
11158 			if (yych == '\t') goto yy506;
11159 			goto yy450;
11160 		} else {
11161 			if (yych <= ' ') goto yy506;
11162 			if (yych <= ',') goto yy450;
11163 			if (yych <= '-') goto yy603;
11164 			goto yy506;
11165 		}
11166 	} else {
11167 		if (yych <= 'T') {
11168 			if (yych <= '/') goto yy450;
11169 			if (yych <= '9') goto yy508;
11170 			goto yy450;
11171 		} else {
11172 			if (yych <= 'U') goto yy533;
11173 			if (yych == 'u') goto yy533;
11174 			goto yy450;
11175 		}
11176 	}
11177 yy627:
11178 	YYDEBUG(627, *YYCURSOR);
11179 	yyaccept = 9;
11180 	yych = *(YYMARKER = ++YYCURSOR);
11181 	if (yych <= '.') {
11182 		if (yych <= 0x1F) {
11183 			if (yych == '\t') goto yy506;
11184 			goto yy450;
11185 		} else {
11186 			if (yych <= ' ') goto yy506;
11187 			if (yych <= ',') goto yy450;
11188 			if (yych <= '-') goto yy603;
11189 			goto yy506;
11190 		}
11191 	} else {
11192 		if (yych <= 'D') {
11193 			if (yych <= '/') goto yy450;
11194 			if (yych <= '9') goto yy508;
11195 			goto yy450;
11196 		} else {
11197 			if (yych <= 'E') goto yy514;
11198 			if (yych == 'e') goto yy514;
11199 			goto yy450;
11200 		}
11201 	}
11202 yy628:
11203 	YYDEBUG(628, *YYCURSOR);
11204 	yyaccept = 9;
11205 	yych = *(YYMARKER = ++YYCURSOR);
11206 	if (yych <= '.') {
11207 		if (yych <= 0x1F) {
11208 			if (yych == '\t') goto yy506;
11209 			goto yy450;
11210 		} else {
11211 			if (yych <= ' ') goto yy506;
11212 			if (yych <= ',') goto yy450;
11213 			if (yych <= '-') goto yy603;
11214 			goto yy506;
11215 		}
11216 	} else {
11217 		if (yych <= 'X') {
11218 			if (yych <= '/') goto yy450;
11219 			if (yych <= '9') goto yy508;
11220 			goto yy450;
11221 		} else {
11222 			if (yych <= 'Y') goto yy514;
11223 			if (yych == 'y') goto yy514;
11224 			goto yy450;
11225 		}
11226 	}
11227 yy629:
11228 	YYDEBUG(629, *YYCURSOR);
11229 	yych = *++YYCURSOR;
11230 	if (yych <= '/') goto yy55;
11231 	if (yych <= '2') goto yy630;
11232 	if (yych <= '3') goto yy632;
11233 	if (yych <= '9') goto yy633;
11234 	goto yy55;
11235 yy630:
11236 	YYDEBUG(630, *YYCURSOR);
11237 	yyaccept = 12;
11238 	yych = *(YYMARKER = ++YYCURSOR);
11239 	if (yych <= 'n') {
11240 		if (yych <= '/') goto yy631;
11241 		if (yych <= '9') goto yy639;
11242 		if (yych >= 'n') goto yy635;
11243 	} else {
11244 		if (yych <= 'r') {
11245 			if (yych >= 'r') goto yy636;
11246 		} else {
11247 			if (yych <= 's') goto yy634;
11248 			if (yych <= 't') goto yy637;
11249 		}
11250 	}
11251 yy631:
11252 	YYDEBUG(631, *YYCURSOR);
11253 #line 1372 "parse_date.re"
11254 	{
11255 		int length = 0;
11256 		DEBUG_OUTPUT("gnudateshort");
11257 		TIMELIB_INIT;
11258 		TIMELIB_HAVE_DATE();
11259 		s->time->y = timelib_get_nr_ex((char **) &ptr, 4, &length);
11260 		s->time->m = timelib_get_nr((char **) &ptr, 2);
11261 		s->time->d = timelib_get_nr((char **) &ptr, 2);
11262 		TIMELIB_PROCESS_YEAR(s->time->y, length);
11263 		TIMELIB_DEINIT;
11264 		return TIMELIB_ISO_DATE;
11265 	}
11266 #line 11264 "<stdout>"
11267 yy632:
11268 	YYDEBUG(632, *YYCURSOR);
11269 	yyaccept = 12;
11270 	yych = *(YYMARKER = ++YYCURSOR);
11271 	if (yych <= 'n') {
11272 		if (yych <= '1') {
11273 			if (yych <= '/') goto yy631;
11274 			goto yy639;
11275 		} else {
11276 			if (yych <= '9') goto yy578;
11277 			if (yych <= 'm') goto yy631;
11278 			goto yy635;
11279 		}
11280 	} else {
11281 		if (yych <= 'r') {
11282 			if (yych <= 'q') goto yy631;
11283 			goto yy636;
11284 		} else {
11285 			if (yych <= 's') goto yy634;
11286 			if (yych <= 't') goto yy637;
11287 			goto yy631;
11288 		}
11289 	}
11290 yy633:
11291 	YYDEBUG(633, *YYCURSOR);
11292 	yyaccept = 12;
11293 	yych = *(YYMARKER = ++YYCURSOR);
11294 	if (yych <= 'n') {
11295 		if (yych <= '/') goto yy631;
11296 		if (yych <= '9') goto yy578;
11297 		if (yych <= 'm') goto yy631;
11298 		goto yy635;
11299 	} else {
11300 		if (yych <= 'r') {
11301 			if (yych <= 'q') goto yy631;
11302 			goto yy636;
11303 		} else {
11304 			if (yych <= 's') goto yy634;
11305 			if (yych <= 't') goto yy637;
11306 			goto yy631;
11307 		}
11308 	}
11309 yy634:
11310 	YYDEBUG(634, *YYCURSOR);
11311 	yych = *++YYCURSOR;
11312 	if (yych == 't') goto yy638;
11313 	goto yy55;
11314 yy635:
11315 	YYDEBUG(635, *YYCURSOR);
11316 	yych = *++YYCURSOR;
11317 	if (yych == 'd') goto yy638;
11318 	goto yy55;
11319 yy636:
11320 	YYDEBUG(636, *YYCURSOR);
11321 	yych = *++YYCURSOR;
11322 	if (yych == 'd') goto yy638;
11323 	goto yy55;
11324 yy637:
11325 	YYDEBUG(637, *YYCURSOR);
11326 	yych = *++YYCURSOR;
11327 	if (yych != 'h') goto yy55;
11328 yy638:
11329 	YYDEBUG(638, *YYCURSOR);
11330 	yych = *++YYCURSOR;
11331 	goto yy631;
11332 yy639:
11333 	YYDEBUG(639, *YYCURSOR);
11334 	yyaccept = 12;
11335 	yych = *(YYMARKER = ++YYCURSOR);
11336 	if (yych <= 'n') {
11337 		if (yych <= '/') goto yy631;
11338 		if (yych <= '9') goto yy579;
11339 		if (yych <= 'm') goto yy631;
11340 		goto yy635;
11341 	} else {
11342 		if (yych <= 'r') {
11343 			if (yych <= 'q') goto yy631;
11344 			goto yy636;
11345 		} else {
11346 			if (yych <= 's') goto yy634;
11347 			if (yych <= 't') goto yy637;
11348 			goto yy631;
11349 		}
11350 	}
11351 yy640:
11352 	YYDEBUG(640, *YYCURSOR);
11353 	yyaccept = 13;
11354 	yych = *(YYMARKER = ++YYCURSOR);
11355 	if (yych <= 'n') {
11356 		if (yych <= '/') {
11357 			if (yych >= '/') goto yy697;
11358 		} else {
11359 			if (yych <= '9') goto yy643;
11360 			if (yych >= 'n') goto yy694;
11361 		}
11362 	} else {
11363 		if (yych <= 'r') {
11364 			if (yych >= 'r') goto yy695;
11365 		} else {
11366 			if (yych <= 's') goto yy693;
11367 			if (yych <= 't') goto yy696;
11368 		}
11369 	}
11370 yy641:
11371 	YYDEBUG(641, *YYCURSOR);
11372 #line 1316 "parse_date.re"
11373 	{
11374 		int length = 0;
11375 		DEBUG_OUTPUT("americanshort | american");
11376 		TIMELIB_INIT;
11377 		TIMELIB_HAVE_DATE();
11378 		s->time->m = timelib_get_nr((char **) &ptr, 2);
11379 		s->time->d = timelib_get_nr((char **) &ptr, 2);
11380 		if (*ptr == '/') {
11381 			s->time->y = timelib_get_nr_ex((char **) &ptr, 4, &length);
11382 			TIMELIB_PROCESS_YEAR(s->time->y, length);
11383 		}
11384 		TIMELIB_DEINIT;
11385 		return TIMELIB_AMERICAN;
11386 	}
11387 #line 11385 "<stdout>"
11388 yy642:
11389 	YYDEBUG(642, *YYCURSOR);
11390 	yyaccept = 13;
11391 	yych = *(YYMARKER = ++YYCURSOR);
11392 	if (yych <= 'n') {
11393 		if (yych <= '/') {
11394 			if (yych <= '.') goto yy641;
11395 			goto yy697;
11396 		} else {
11397 			if (yych <= '1') goto yy643;
11398 			if (yych <= 'm') goto yy641;
11399 			goto yy694;
11400 		}
11401 	} else {
11402 		if (yych <= 'r') {
11403 			if (yych <= 'q') goto yy641;
11404 			goto yy695;
11405 		} else {
11406 			if (yych <= 's') goto yy693;
11407 			if (yych <= 't') goto yy696;
11408 			goto yy641;
11409 		}
11410 	}
11411 yy643:
11412 	YYDEBUG(643, *YYCURSOR);
11413 	yyaccept = 13;
11414 	yych = *(YYMARKER = ++YYCURSOR);
11415 	if (yych <= 'n') {
11416 		if (yych == '/') goto yy697;
11417 		if (yych <= 'm') goto yy641;
11418 		goto yy694;
11419 	} else {
11420 		if (yych <= 'r') {
11421 			if (yych <= 'q') goto yy641;
11422 			goto yy695;
11423 		} else {
11424 			if (yych <= 's') goto yy693;
11425 			if (yych <= 't') goto yy696;
11426 			goto yy641;
11427 		}
11428 	}
11429 yy644:
11430 	YYDEBUG(644, *YYCURSOR);
11431 	yych = *++YYCURSOR;
11432 	if (yych <= 'U') {
11433 		if (yych == 'A') goto yy692;
11434 		if (yych <= 'T') goto yy55;
11435 		goto yy691;
11436 	} else {
11437 		if (yych <= 'a') {
11438 			if (yych <= '`') goto yy55;
11439 			goto yy692;
11440 		} else {
11441 			if (yych == 'u') goto yy691;
11442 			goto yy55;
11443 		}
11444 	}
11445 yy645:
11446 	YYDEBUG(645, *YYCURSOR);
11447 	yych = *++YYCURSOR;
11448 	if (yych == 'E') goto yy690;
11449 	if (yych == 'e') goto yy690;
11450 	goto yy55;
11451 yy646:
11452 	YYDEBUG(646, *YYCURSOR);
11453 	yych = *++YYCURSOR;
11454 	if (yych == 'A') goto yy689;
11455 	if (yych == 'a') goto yy689;
11456 	goto yy55;
11457 yy647:
11458 	YYDEBUG(647, *YYCURSOR);
11459 	yych = *++YYCURSOR;
11460 	if (yych <= 'U') {
11461 		if (yych == 'P') goto yy688;
11462 		if (yych <= 'T') goto yy55;
11463 		goto yy687;
11464 	} else {
11465 		if (yych <= 'p') {
11466 			if (yych <= 'o') goto yy55;
11467 			goto yy688;
11468 		} else {
11469 			if (yych == 'u') goto yy687;
11470 			goto yy55;
11471 		}
11472 	}
11473 yy648:
11474 	YYDEBUG(648, *YYCURSOR);
11475 	yych = *++YYCURSOR;
11476 	if (yych == 'E') goto yy685;
11477 	if (yych == 'e') goto yy685;
11478 	goto yy55;
11479 yy649:
11480 	YYDEBUG(649, *YYCURSOR);
11481 	yych = *++YYCURSOR;
11482 	if (yych == 'C') goto yy684;
11483 	if (yych == 'c') goto yy684;
11484 	goto yy55;
11485 yy650:
11486 	YYDEBUG(650, *YYCURSOR);
11487 	yych = *++YYCURSOR;
11488 	if (yych == 'O') goto yy683;
11489 	if (yych == 'o') goto yy683;
11490 	goto yy55;
11491 yy651:
11492 	YYDEBUG(651, *YYCURSOR);
11493 	yych = *++YYCURSOR;
11494 	if (yych == 'E') goto yy652;
11495 	if (yych != 'e') goto yy55;
11496 yy652:
11497 	YYDEBUG(652, *YYCURSOR);
11498 	yych = *++YYCURSOR;
11499 	if (yych == 'C') goto yy653;
11500 	if (yych != 'c') goto yy55;
11501 yy653:
11502 	YYDEBUG(653, *YYCURSOR);
11503 	yych = *++YYCURSOR;
11504 	if (yych != '/') goto yy55;
11505 yy654:
11506 	YYDEBUG(654, *YYCURSOR);
11507 	yych = *++YYCURSOR;
11508 	if (yych <= '/') goto yy55;
11509 	if (yych >= ':') goto yy55;
11510 	YYDEBUG(655, *YYCURSOR);
11511 	yych = *++YYCURSOR;
11512 	if (yych <= '/') goto yy55;
11513 	if (yych >= ':') goto yy55;
11514 	YYDEBUG(656, *YYCURSOR);
11515 	yych = *++YYCURSOR;
11516 	if (yych <= '/') goto yy55;
11517 	if (yych >= ':') goto yy55;
11518 	YYDEBUG(657, *YYCURSOR);
11519 	yych = *++YYCURSOR;
11520 	if (yych <= '/') goto yy55;
11521 	if (yych >= ':') goto yy55;
11522 	YYDEBUG(658, *YYCURSOR);
11523 	yych = *++YYCURSOR;
11524 	if (yych != ':') goto yy55;
11525 	YYDEBUG(659, *YYCURSOR);
11526 	yych = *++YYCURSOR;
11527 	if (yych <= '/') goto yy55;
11528 	if (yych <= '1') goto yy660;
11529 	if (yych <= '2') goto yy661;
11530 	goto yy55;
11531 yy660:
11532 	YYDEBUG(660, *YYCURSOR);
11533 	yych = *++YYCURSOR;
11534 	if (yych <= '/') goto yy55;
11535 	if (yych <= '9') goto yy662;
11536 	goto yy55;
11537 yy661:
11538 	YYDEBUG(661, *YYCURSOR);
11539 	yych = *++YYCURSOR;
11540 	if (yych <= '/') goto yy55;
11541 	if (yych >= '5') goto yy55;
11542 yy662:
11543 	YYDEBUG(662, *YYCURSOR);
11544 	yych = *++YYCURSOR;
11545 	if (yych != ':') goto yy55;
11546 	YYDEBUG(663, *YYCURSOR);
11547 	yych = *++YYCURSOR;
11548 	if (yych <= '/') goto yy55;
11549 	if (yych >= '6') goto yy55;
11550 	YYDEBUG(664, *YYCURSOR);
11551 	yych = *++YYCURSOR;
11552 	if (yych <= '/') goto yy55;
11553 	if (yych >= ':') goto yy55;
11554 	YYDEBUG(665, *YYCURSOR);
11555 	yych = *++YYCURSOR;
11556 	if (yych != ':') goto yy55;
11557 	YYDEBUG(666, *YYCURSOR);
11558 	yych = *++YYCURSOR;
11559 	if (yych <= '/') goto yy55;
11560 	if (yych <= '5') goto yy667;
11561 	if (yych <= '6') goto yy668;
11562 	goto yy55;
11563 yy667:
11564 	YYDEBUG(667, *YYCURSOR);
11565 	yych = *++YYCURSOR;
11566 	if (yych <= '/') goto yy55;
11567 	if (yych <= '9') goto yy669;
11568 	goto yy55;
11569 yy668:
11570 	YYDEBUG(668, *YYCURSOR);
11571 	yych = *++YYCURSOR;
11572 	if (yych != '0') goto yy55;
11573 yy669:
11574 	YYDEBUG(669, *YYCURSOR);
11575 	yych = *++YYCURSOR;
11576 	if (yych == '\t') goto yy670;
11577 	if (yych != ' ') goto yy55;
11578 yy670:
11579 	YYDEBUG(670, *YYCURSOR);
11580 	++YYCURSOR;
11581 	if ((YYLIMIT - YYCURSOR) < 9) YYFILL(9);
11582 	yych = *YYCURSOR;
11583 	YYDEBUG(671, *YYCURSOR);
11584 	if (yych <= '*') {
11585 		if (yych <= '\t') {
11586 			if (yych <= 0x08) goto yy55;
11587 			goto yy670;
11588 		} else {
11589 			if (yych == ' ') goto yy670;
11590 			goto yy55;
11591 		}
11592 	} else {
11593 		if (yych <= '-') {
11594 			if (yych == ',') goto yy55;
11595 			goto yy673;
11596 		} else {
11597 			if (yych != 'G') goto yy55;
11598 		}
11599 	}
11600 	YYDEBUG(672, *YYCURSOR);
11601 	yych = *++YYCURSOR;
11602 	if (yych == 'M') goto yy681;
11603 	goto yy55;
11604 yy673:
11605 	YYDEBUG(673, *YYCURSOR);
11606 	yych = *++YYCURSOR;
11607 	if (yych <= '/') goto yy55;
11608 	if (yych <= '1') goto yy674;
11609 	if (yych <= '2') goto yy676;
11610 	if (yych <= '9') goto yy677;
11611 	goto yy55;
11612 yy674:
11613 	YYDEBUG(674, *YYCURSOR);
11614 	++YYCURSOR;
11615 	if ((yych = *YYCURSOR) <= '/') goto yy675;
11616 	if (yych <= '9') goto yy677;
11617 	if (yych <= ':') goto yy678;
11618 yy675:
11619 	YYDEBUG(675, *YYCURSOR);
11620 #line 1599 "parse_date.re"
11621 	{
11622 		int tz_not_found;
11623 		DEBUG_OUTPUT("clf");
11624 		TIMELIB_INIT;
11625 		TIMELIB_HAVE_TIME();
11626 		TIMELIB_HAVE_DATE();
11627 		s->time->d = timelib_get_nr((char **) &ptr, 2);
11628 		s->time->m = timelib_get_month((char **) &ptr);
11629 		s->time->y = timelib_get_nr((char **) &ptr, 4);
11630 		s->time->h = timelib_get_nr((char **) &ptr, 2);
11631 		s->time->i = timelib_get_nr((char **) &ptr, 2);
11632 		s->time->s = timelib_get_nr((char **) &ptr, 2);
11633 		s->time->z = timelib_parse_zone((char **) &ptr, &s->time->dst, s->time, &tz_not_found, s->tzdb, tz_get_wrapper);
11634 		if (tz_not_found) {
11635 			add_error(s, TIMELIB_ERR_TZID_NOT_FOUND, "The timezone could not be found in the database");
11636 		}
11637 		TIMELIB_DEINIT;
11638 		return TIMELIB_CLF;
11639 	}
11640 #line 11638 "<stdout>"
11641 yy676:
11642 	YYDEBUG(676, *YYCURSOR);
11643 	yych = *++YYCURSOR;
11644 	if (yych <= '5') {
11645 		if (yych <= '/') goto yy675;
11646 		if (yych >= '5') goto yy679;
11647 	} else {
11648 		if (yych <= '9') goto yy680;
11649 		if (yych <= ':') goto yy678;
11650 		goto yy675;
11651 	}
11652 yy677:
11653 	YYDEBUG(677, *YYCURSOR);
11654 	yych = *++YYCURSOR;
11655 	if (yych <= '/') goto yy675;
11656 	if (yych <= '5') goto yy679;
11657 	if (yych <= '9') goto yy680;
11658 	if (yych >= ';') goto yy675;
11659 yy678:
11660 	YYDEBUG(678, *YYCURSOR);
11661 	yych = *++YYCURSOR;
11662 	if (yych <= '/') goto yy675;
11663 	if (yych <= '5') goto yy679;
11664 	if (yych <= '9') goto yy680;
11665 	goto yy675;
11666 yy679:
11667 	YYDEBUG(679, *YYCURSOR);
11668 	yych = *++YYCURSOR;
11669 	if (yych <= '/') goto yy675;
11670 	if (yych >= ':') goto yy675;
11671 yy680:
11672 	YYDEBUG(680, *YYCURSOR);
11673 	yych = *++YYCURSOR;
11674 	goto yy675;
11675 yy681:
11676 	YYDEBUG(681, *YYCURSOR);
11677 	yych = *++YYCURSOR;
11678 	if (yych != 'T') goto yy55;
11679 	YYDEBUG(682, *YYCURSOR);
11680 	yych = *++YYCURSOR;
11681 	if (yych == '+') goto yy673;
11682 	if (yych == '-') goto yy673;
11683 	goto yy55;
11684 yy683:
11685 	YYDEBUG(683, *YYCURSOR);
11686 	yych = *++YYCURSOR;
11687 	if (yych == 'V') goto yy653;
11688 	if (yych == 'v') goto yy653;
11689 	goto yy55;
11690 yy684:
11691 	YYDEBUG(684, *YYCURSOR);
11692 	yych = *++YYCURSOR;
11693 	if (yych == 'T') goto yy653;
11694 	if (yych == 't') goto yy653;
11695 	goto yy55;
11696 yy685:
11697 	YYDEBUG(685, *YYCURSOR);
11698 	yych = *++YYCURSOR;
11699 	if (yych == 'P') goto yy686;
11700 	if (yych != 'p') goto yy55;
11701 yy686:
11702 	YYDEBUG(686, *YYCURSOR);
11703 	yych = *++YYCURSOR;
11704 	if (yych <= 'S') {
11705 		if (yych == '/') goto yy654;
11706 		goto yy55;
11707 	} else {
11708 		if (yych <= 'T') goto yy653;
11709 		if (yych == 't') goto yy653;
11710 		goto yy55;
11711 	}
11712 yy687:
11713 	YYDEBUG(687, *YYCURSOR);
11714 	yych = *++YYCURSOR;
11715 	if (yych == 'G') goto yy653;
11716 	if (yych == 'g') goto yy653;
11717 	goto yy55;
11718 yy688:
11719 	YYDEBUG(688, *YYCURSOR);
11720 	yych = *++YYCURSOR;
11721 	if (yych == 'R') goto yy653;
11722 	if (yych == 'r') goto yy653;
11723 	goto yy55;
11724 yy689:
11725 	YYDEBUG(689, *YYCURSOR);
11726 	yych = *++YYCURSOR;
11727 	if (yych <= 'Y') {
11728 		if (yych == 'R') goto yy653;
11729 		if (yych <= 'X') goto yy55;
11730 		goto yy653;
11731 	} else {
11732 		if (yych <= 'r') {
11733 			if (yych <= 'q') goto yy55;
11734 			goto yy653;
11735 		} else {
11736 			if (yych == 'y') goto yy653;
11737 			goto yy55;
11738 		}
11739 	}
11740 yy690:
11741 	YYDEBUG(690, *YYCURSOR);
11742 	yych = *++YYCURSOR;
11743 	if (yych == 'B') goto yy653;
11744 	if (yych == 'b') goto yy653;
11745 	goto yy55;
11746 yy691:
11747 	YYDEBUG(691, *YYCURSOR);
11748 	yych = *++YYCURSOR;
11749 	if (yych <= 'N') {
11750 		if (yych == 'L') goto yy653;
11751 		if (yych <= 'M') goto yy55;
11752 		goto yy653;
11753 	} else {
11754 		if (yych <= 'l') {
11755 			if (yych <= 'k') goto yy55;
11756 			goto yy653;
11757 		} else {
11758 			if (yych == 'n') goto yy653;
11759 			goto yy55;
11760 		}
11761 	}
11762 yy692:
11763 	YYDEBUG(692, *YYCURSOR);
11764 	yych = *++YYCURSOR;
11765 	if (yych == 'N') goto yy653;
11766 	if (yych == 'n') goto yy653;
11767 	goto yy55;
11768 yy693:
11769 	YYDEBUG(693, *YYCURSOR);
11770 	yych = *++YYCURSOR;
11771 	if (yych == 't') goto yy702;
11772 	goto yy55;
11773 yy694:
11774 	YYDEBUG(694, *YYCURSOR);
11775 	yych = *++YYCURSOR;
11776 	if (yych == 'd') goto yy702;
11777 	goto yy55;
11778 yy695:
11779 	YYDEBUG(695, *YYCURSOR);
11780 	yych = *++YYCURSOR;
11781 	if (yych == 'd') goto yy702;
11782 	goto yy55;
11783 yy696:
11784 	YYDEBUG(696, *YYCURSOR);
11785 	yych = *++YYCURSOR;
11786 	if (yych == 'h') goto yy702;
11787 	goto yy55;
11788 yy697:
11789 	YYDEBUG(697, *YYCURSOR);
11790 	yych = *++YYCURSOR;
11791 	if (yych <= '/') goto yy55;
11792 	if (yych >= ':') goto yy55;
11793 	YYDEBUG(698, *YYCURSOR);
11794 	yych = *++YYCURSOR;
11795 	if (yych <= '/') goto yy641;
11796 	if (yych >= ':') goto yy641;
11797 	YYDEBUG(699, *YYCURSOR);
11798 	yych = *++YYCURSOR;
11799 	if (yych <= '/') goto yy641;
11800 	if (yych >= ':') goto yy641;
11801 	YYDEBUG(700, *YYCURSOR);
11802 	yych = *++YYCURSOR;
11803 	if (yych <= '/') goto yy641;
11804 	if (yych >= ':') goto yy641;
11805 	YYDEBUG(701, *YYCURSOR);
11806 	yych = *++YYCURSOR;
11807 	goto yy641;
11808 yy702:
11809 	YYDEBUG(702, *YYCURSOR);
11810 	yyaccept = 13;
11811 	yych = *(YYMARKER = ++YYCURSOR);
11812 	if (yych == '/') goto yy697;
11813 	goto yy641;
11814 yy703:
11815 	YYDEBUG(703, *YYCURSOR);
11816 	yych = *++YYCURSOR;
11817 	if (yych <= ',') {
11818 		if (yych == '\t') goto yy705;
11819 		goto yy552;
11820 	} else {
11821 		if (yych <= '-') goto yy706;
11822 		if (yych <= '.') goto yy705;
11823 		if (yych >= '0') goto yy552;
11824 	}
11825 yy704:
11826 	YYDEBUG(704, *YYCURSOR);
11827 	yych = *++YYCURSOR;
11828 	switch (yych) {
11829 	case 'A':
11830 	case 'a':	goto yy647;
11831 	case 'D':
11832 	case 'd':	goto yy651;
11833 	case 'F':
11834 	case 'f':	goto yy645;
11835 	case 'J':
11836 	case 'j':	goto yy644;
11837 	case 'M':
11838 	case 'm':	goto yy646;
11839 	case 'N':
11840 	case 'n':	goto yy650;
11841 	case 'O':
11842 	case 'o':	goto yy649;
11843 	case 'S':
11844 	case 's':	goto yy648;
11845 	default:	goto yy55;
11846 	}
11847 yy705:
11848 	YYDEBUG(705, *YYCURSOR);
11849 	yych = *++YYCURSOR;
11850 	if (yych <= '/') goto yy552;
11851 	if (yych <= '0') goto yy710;
11852 	if (yych <= '1') goto yy711;
11853 	if (yych <= '9') goto yy712;
11854 	goto yy552;
11855 yy706:
11856 	YYDEBUG(706, *YYCURSOR);
11857 	yych = *++YYCURSOR;
11858 	if (yych <= '/') goto yy552;
11859 	if (yych <= '0') goto yy707;
11860 	if (yych <= '1') goto yy708;
11861 	if (yych <= '9') goto yy709;
11862 	goto yy552;
11863 yy707:
11864 	YYDEBUG(707, *YYCURSOR);
11865 	yych = *++YYCURSOR;
11866 	if (yych <= ',') goto yy55;
11867 	if (yych <= '.') goto yy576;
11868 	if (yych <= '/') goto yy55;
11869 	if (yych <= '9') goto yy709;
11870 	goto yy55;
11871 yy708:
11872 	YYDEBUG(708, *YYCURSOR);
11873 	yych = *++YYCURSOR;
11874 	if (yych <= ',') goto yy55;
11875 	if (yych <= '.') goto yy576;
11876 	if (yych <= '/') goto yy55;
11877 	if (yych >= '3') goto yy55;
11878 yy709:
11879 	YYDEBUG(709, *YYCURSOR);
11880 	yych = *++YYCURSOR;
11881 	if (yych <= ',') goto yy55;
11882 	if (yych <= '.') goto yy576;
11883 	goto yy55;
11884 yy710:
11885 	YYDEBUG(710, *YYCURSOR);
11886 	yych = *++YYCURSOR;
11887 	if (yych <= '.') {
11888 		if (yych <= ',') goto yy55;
11889 		if (yych <= '-') goto yy576;
11890 		goto yy713;
11891 	} else {
11892 		if (yych <= '/') goto yy55;
11893 		if (yych <= '9') goto yy712;
11894 		goto yy55;
11895 	}
11896 yy711:
11897 	YYDEBUG(711, *YYCURSOR);
11898 	yych = *++YYCURSOR;
11899 	if (yych <= '.') {
11900 		if (yych <= ',') goto yy55;
11901 		if (yych <= '-') goto yy576;
11902 		goto yy713;
11903 	} else {
11904 		if (yych <= '/') goto yy55;
11905 		if (yych >= '3') goto yy55;
11906 	}
11907 yy712:
11908 	YYDEBUG(712, *YYCURSOR);
11909 	yych = *++YYCURSOR;
11910 	if (yych <= ',') goto yy55;
11911 	if (yych <= '-') goto yy576;
11912 	if (yych >= '/') goto yy55;
11913 yy713:
11914 	YYDEBUG(713, *YYCURSOR);
11915 	yych = *++YYCURSOR;
11916 	if (yych <= '/') goto yy55;
11917 	if (yych >= ':') goto yy55;
11918 	YYDEBUG(714, *YYCURSOR);
11919 	yych = *++YYCURSOR;
11920 	if (yych <= '/') goto yy55;
11921 	if (yych <= '9') goto yy585;
11922 	goto yy55;
11923 yy715:
11924 	YYDEBUG(715, *YYCURSOR);
11925 	yych = *++YYCURSOR;
11926 	if (yych == '-') goto yy759;
11927 	if (yych <= '/') goto yy59;
11928 	if (yych <= '9') goto yy757;
11929 	goto yy59;
11930 yy716:
11931 	YYDEBUG(716, *YYCURSOR);
11932 	yych = *++YYCURSOR;
11933 	switch (yych) {
11934 	case '0':	goto yy725;
11935 	case '1':	goto yy726;
11936 	case '2':
11937 	case '3':
11938 	case '4':
11939 	case '5':
11940 	case '6':
11941 	case '7':
11942 	case '8':
11943 	case '9':	goto yy727;
11944 	case 'A':
11945 	case 'a':	goto yy720;
11946 	case 'D':
11947 	case 'd':	goto yy724;
11948 	case 'F':
11949 	case 'f':	goto yy718;
11950 	case 'J':
11951 	case 'j':	goto yy717;
11952 	case 'M':
11953 	case 'm':	goto yy719;
11954 	case 'N':
11955 	case 'n':	goto yy723;
11956 	case 'O':
11957 	case 'o':	goto yy722;
11958 	case 'S':
11959 	case 's':	goto yy721;
11960 	default:	goto yy55;
11961 	}
11962 yy717:
11963 	YYDEBUG(717, *YYCURSOR);
11964 	yych = *++YYCURSOR;
11965 	if (yych <= 'U') {
11966 		if (yych == 'A') goto yy756;
11967 		if (yych <= 'T') goto yy55;
11968 		goto yy755;
11969 	} else {
11970 		if (yych <= 'a') {
11971 			if (yych <= '`') goto yy55;
11972 			goto yy756;
11973 		} else {
11974 			if (yych == 'u') goto yy755;
11975 			goto yy55;
11976 		}
11977 	}
11978 yy718:
11979 	YYDEBUG(718, *YYCURSOR);
11980 	yych = *++YYCURSOR;
11981 	if (yych == 'E') goto yy754;
11982 	if (yych == 'e') goto yy754;
11983 	goto yy55;
11984 yy719:
11985 	YYDEBUG(719, *YYCURSOR);
11986 	yych = *++YYCURSOR;
11987 	if (yych == 'A') goto yy753;
11988 	if (yych == 'a') goto yy753;
11989 	goto yy55;
11990 yy720:
11991 	YYDEBUG(720, *YYCURSOR);
11992 	yych = *++YYCURSOR;
11993 	if (yych <= 'U') {
11994 		if (yych == 'P') goto yy752;
11995 		if (yych <= 'T') goto yy55;
11996 		goto yy751;
11997 	} else {
11998 		if (yych <= 'p') {
11999 			if (yych <= 'o') goto yy55;
12000 			goto yy752;
12001 		} else {
12002 			if (yych == 'u') goto yy751;
12003 			goto yy55;
12004 		}
12005 	}
12006 yy721:
12007 	YYDEBUG(721, *YYCURSOR);
12008 	yych = *++YYCURSOR;
12009 	if (yych == 'E') goto yy749;
12010 	if (yych == 'e') goto yy749;
12011 	goto yy55;
12012 yy722:
12013 	YYDEBUG(722, *YYCURSOR);
12014 	yych = *++YYCURSOR;
12015 	if (yych == 'C') goto yy748;
12016 	if (yych == 'c') goto yy748;
12017 	goto yy55;
12018 yy723:
12019 	YYDEBUG(723, *YYCURSOR);
12020 	yych = *++YYCURSOR;
12021 	if (yych == 'O') goto yy747;
12022 	if (yych == 'o') goto yy747;
12023 	goto yy55;
12024 yy724:
12025 	YYDEBUG(724, *YYCURSOR);
12026 	yych = *++YYCURSOR;
12027 	if (yych == 'E') goto yy739;
12028 	if (yych == 'e') goto yy739;
12029 	goto yy55;
12030 yy725:
12031 	YYDEBUG(725, *YYCURSOR);
12032 	yych = *++YYCURSOR;
12033 	if (yych == '-') goto yy728;
12034 	if (yych <= '/') goto yy55;
12035 	if (yych <= '9') goto yy732;
12036 	goto yy55;
12037 yy726:
12038 	YYDEBUG(726, *YYCURSOR);
12039 	yych = *++YYCURSOR;
12040 	if (yych == '-') goto yy728;
12041 	if (yych <= '/') goto yy55;
12042 	if (yych <= '2') goto yy732;
12043 	goto yy55;
12044 yy727:
12045 	YYDEBUG(727, *YYCURSOR);
12046 	yych = *++YYCURSOR;
12047 	if (yych != '-') goto yy55;
12048 yy728:
12049 	YYDEBUG(728, *YYCURSOR);
12050 	yych = *++YYCURSOR;
12051 	if (yych <= '/') goto yy55;
12052 	if (yych <= '2') goto yy729;
12053 	if (yych <= '3') goto yy730;
12054 	if (yych <= '9') goto yy731;
12055 	goto yy55;
12056 yy729:
12057 	YYDEBUG(729, *YYCURSOR);
12058 	yyaccept = 12;
12059 	yych = *(YYMARKER = ++YYCURSOR);
12060 	if (yych <= 'n') {
12061 		if (yych <= '/') goto yy631;
12062 		if (yych <= '9') goto yy731;
12063 		if (yych <= 'm') goto yy631;
12064 		goto yy635;
12065 	} else {
12066 		if (yych <= 'r') {
12067 			if (yych <= 'q') goto yy631;
12068 			goto yy636;
12069 		} else {
12070 			if (yych <= 's') goto yy634;
12071 			if (yych <= 't') goto yy637;
12072 			goto yy631;
12073 		}
12074 	}
12075 yy730:
12076 	YYDEBUG(730, *YYCURSOR);
12077 	yyaccept = 12;
12078 	yych = *(YYMARKER = ++YYCURSOR);
12079 	if (yych <= 'n') {
12080 		if (yych <= '/') goto yy631;
12081 		if (yych <= '1') goto yy731;
12082 		if (yych <= 'm') goto yy631;
12083 		goto yy635;
12084 	} else {
12085 		if (yych <= 'r') {
12086 			if (yych <= 'q') goto yy631;
12087 			goto yy636;
12088 		} else {
12089 			if (yych <= 's') goto yy634;
12090 			if (yych <= 't') goto yy637;
12091 			goto yy631;
12092 		}
12093 	}
12094 yy731:
12095 	YYDEBUG(731, *YYCURSOR);
12096 	yyaccept = 12;
12097 	yych = *(YYMARKER = ++YYCURSOR);
12098 	if (yych <= 'q') {
12099 		if (yych == 'n') goto yy635;
12100 		goto yy631;
12101 	} else {
12102 		if (yych <= 'r') goto yy636;
12103 		if (yych <= 's') goto yy634;
12104 		if (yych <= 't') goto yy637;
12105 		goto yy631;
12106 	}
12107 yy732:
12108 	YYDEBUG(732, *YYCURSOR);
12109 	yych = *++YYCURSOR;
12110 	if (yych != '-') goto yy55;
12111 	YYDEBUG(733, *YYCURSOR);
12112 	yych = *++YYCURSOR;
12113 	if (yych <= '2') {
12114 		if (yych <= '/') goto yy55;
12115 		if (yych >= '1') goto yy735;
12116 	} else {
12117 		if (yych <= '3') goto yy736;
12118 		if (yych <= '9') goto yy731;
12119 		goto yy55;
12120 	}
12121 	YYDEBUG(734, *YYCURSOR);
12122 	yyaccept = 12;
12123 	yych = *(YYMARKER = ++YYCURSOR);
12124 	if (yych <= 'n') {
12125 		if (yych <= '/') goto yy631;
12126 		if (yych <= '9') goto yy737;
12127 		if (yych <= 'm') goto yy631;
12128 		goto yy635;
12129 	} else {
12130 		if (yych <= 'r') {
12131 			if (yych <= 'q') goto yy631;
12132 			goto yy636;
12133 		} else {
12134 			if (yych <= 's') goto yy634;
12135 			if (yych <= 't') goto yy637;
12136 			goto yy631;
12137 		}
12138 	}
12139 yy735:
12140 	YYDEBUG(735, *YYCURSOR);
12141 	yyaccept = 12;
12142 	yych = *(YYMARKER = ++YYCURSOR);
12143 	if (yych <= 'n') {
12144 		if (yych <= '/') goto yy631;
12145 		if (yych <= '9') goto yy737;
12146 		if (yych <= 'm') goto yy631;
12147 		goto yy635;
12148 	} else {
12149 		if (yych <= 'r') {
12150 			if (yych <= 'q') goto yy631;
12151 			goto yy636;
12152 		} else {
12153 			if (yych <= 's') goto yy634;
12154 			if (yych <= 't') goto yy637;
12155 			goto yy631;
12156 		}
12157 	}
12158 yy736:
12159 	YYDEBUG(736, *YYCURSOR);
12160 	yyaccept = 12;
12161 	yych = *(YYMARKER = ++YYCURSOR);
12162 	if (yych <= 'n') {
12163 		if (yych <= '/') goto yy631;
12164 		if (yych <= '1') goto yy737;
12165 		if (yych <= 'm') goto yy631;
12166 		goto yy635;
12167 	} else {
12168 		if (yych <= 'r') {
12169 			if (yych <= 'q') goto yy631;
12170 			goto yy636;
12171 		} else {
12172 			if (yych <= 's') goto yy634;
12173 			if (yych <= 't') goto yy637;
12174 			goto yy631;
12175 		}
12176 	}
12177 yy737:
12178 	YYDEBUG(737, *YYCURSOR);
12179 	yyaccept = 14;
12180 	yych = *(YYMARKER = ++YYCURSOR);
12181 	if (yych <= 'q') {
12182 		if (yych == 'n') goto yy635;
12183 	} else {
12184 		if (yych <= 'r') goto yy636;
12185 		if (yych <= 's') goto yy634;
12186 		if (yych <= 't') goto yy637;
12187 	}
12188 yy738:
12189 	YYDEBUG(738, *YYCURSOR);
12190 #line 1344 "parse_date.re"
12191 	{
12192 		int length = 0;
12193 		DEBUG_OUTPUT("iso8601date2");
12194 		TIMELIB_INIT;
12195 		TIMELIB_HAVE_DATE();
12196 		s->time->y = timelib_get_nr_ex((char **) &ptr, 4, &length);
12197 		s->time->m = timelib_get_nr((char **) &ptr, 2);
12198 		s->time->d = timelib_get_nr((char **) &ptr, 2);
12199 		TIMELIB_PROCESS_YEAR(s->time->y, length);
12200 		TIMELIB_DEINIT;
12201 		return TIMELIB_ISO_DATE;
12202 	}
12203 #line 12201 "<stdout>"
12204 yy739:
12205 	YYDEBUG(739, *YYCURSOR);
12206 	yych = *++YYCURSOR;
12207 	if (yych == 'C') goto yy740;
12208 	if (yych != 'c') goto yy55;
12209 yy740:
12210 	YYDEBUG(740, *YYCURSOR);
12211 	yych = *++YYCURSOR;
12212 	if (yych != '-') goto yy55;
12213 yy741:
12214 	YYDEBUG(741, *YYCURSOR);
12215 	yych = *++YYCURSOR;
12216 	if (yych <= '/') goto yy55;
12217 	if (yych <= '0') goto yy742;
12218 	if (yych <= '2') goto yy743;
12219 	if (yych <= '3') goto yy744;
12220 	goto yy55;
12221 yy742:
12222 	YYDEBUG(742, *YYCURSOR);
12223 	yych = *++YYCURSOR;
12224 	if (yych <= '/') goto yy55;
12225 	if (yych <= '9') goto yy745;
12226 	goto yy55;
12227 yy743:
12228 	YYDEBUG(743, *YYCURSOR);
12229 	yych = *++YYCURSOR;
12230 	if (yych <= '/') goto yy55;
12231 	if (yych <= '9') goto yy745;
12232 	goto yy55;
12233 yy744:
12234 	YYDEBUG(744, *YYCURSOR);
12235 	yych = *++YYCURSOR;
12236 	if (yych <= '/') goto yy55;
12237 	if (yych >= '2') goto yy55;
12238 yy745:
12239 	YYDEBUG(745, *YYCURSOR);
12240 	++YYCURSOR;
12241 	YYDEBUG(746, *YYCURSOR);
12242 #line 1585 "parse_date.re"
12243 	{
12244 		int length = 0;
12245 		DEBUG_OUTPUT("pgtextreverse");
12246 		TIMELIB_INIT;
12247 		TIMELIB_HAVE_DATE();
12248 		s->time->y = timelib_get_nr_ex((char **) &ptr, 4, &length);
12249 		s->time->m = timelib_get_month((char **) &ptr);
12250 		s->time->d = timelib_get_nr((char **) &ptr, 2);
12251 		TIMELIB_PROCESS_YEAR(s->time->y, length);
12252 		TIMELIB_DEINIT;
12253 		return TIMELIB_PG_TEXT;
12254 	}
12255 #line 12253 "<stdout>"
12256 yy747:
12257 	YYDEBUG(747, *YYCURSOR);
12258 	yych = *++YYCURSOR;
12259 	if (yych == 'V') goto yy740;
12260 	if (yych == 'v') goto yy740;
12261 	goto yy55;
12262 yy748:
12263 	YYDEBUG(748, *YYCURSOR);
12264 	yych = *++YYCURSOR;
12265 	if (yych == 'T') goto yy740;
12266 	if (yych == 't') goto yy740;
12267 	goto yy55;
12268 yy749:
12269 	YYDEBUG(749, *YYCURSOR);
12270 	yych = *++YYCURSOR;
12271 	if (yych == 'P') goto yy750;
12272 	if (yych != 'p') goto yy55;
12273 yy750:
12274 	YYDEBUG(750, *YYCURSOR);
12275 	yych = *++YYCURSOR;
12276 	if (yych <= 'S') {
12277 		if (yych == '-') goto yy741;
12278 		goto yy55;
12279 	} else {
12280 		if (yych <= 'T') goto yy740;
12281 		if (yych == 't') goto yy740;
12282 		goto yy55;
12283 	}
12284 yy751:
12285 	YYDEBUG(751, *YYCURSOR);
12286 	yych = *++YYCURSOR;
12287 	if (yych == 'G') goto yy740;
12288 	if (yych == 'g') goto yy740;
12289 	goto yy55;
12290 yy752:
12291 	YYDEBUG(752, *YYCURSOR);
12292 	yych = *++YYCURSOR;
12293 	if (yych == 'R') goto yy740;
12294 	if (yych == 'r') goto yy740;
12295 	goto yy55;
12296 yy753:
12297 	YYDEBUG(753, *YYCURSOR);
12298 	yych = *++YYCURSOR;
12299 	if (yych <= 'Y') {
12300 		if (yych == 'R') goto yy740;
12301 		if (yych <= 'X') goto yy55;
12302 		goto yy740;
12303 	} else {
12304 		if (yych <= 'r') {
12305 			if (yych <= 'q') goto yy55;
12306 			goto yy740;
12307 		} else {
12308 			if (yych == 'y') goto yy740;
12309 			goto yy55;
12310 		}
12311 	}
12312 yy754:
12313 	YYDEBUG(754, *YYCURSOR);
12314 	yych = *++YYCURSOR;
12315 	if (yych == 'B') goto yy740;
12316 	if (yych == 'b') goto yy740;
12317 	goto yy55;
12318 yy755:
12319 	YYDEBUG(755, *YYCURSOR);
12320 	yych = *++YYCURSOR;
12321 	if (yych <= 'N') {
12322 		if (yych == 'L') goto yy740;
12323 		if (yych <= 'M') goto yy55;
12324 		goto yy740;
12325 	} else {
12326 		if (yych <= 'l') {
12327 			if (yych <= 'k') goto yy55;
12328 			goto yy740;
12329 		} else {
12330 			if (yych == 'n') goto yy740;
12331 			goto yy55;
12332 		}
12333 	}
12334 yy756:
12335 	YYDEBUG(756, *YYCURSOR);
12336 	yych = *++YYCURSOR;
12337 	if (yych == 'N') goto yy740;
12338 	if (yych == 'n') goto yy740;
12339 	goto yy55;
12340 yy757:
12341 	YYDEBUG(757, *YYCURSOR);
12342 	yyaccept = 15;
12343 	yych = *(YYMARKER = ++YYCURSOR);
12344 	if (yych <= 'O') {
12345 		if (yych <= '3') {
12346 			if (yych <= '-') {
12347 				if (yych <= 0x1F) {
12348 					if (yych == '\t') goto yy765;
12349 				} else {
12350 					if (yych <= ' ') goto yy765;
12351 					if (yych >= '-') goto yy762;
12352 				}
12353 			} else {
12354 				if (yych <= '0') {
12355 					if (yych <= '.') goto yy766;
12356 					if (yych <= '/') goto yy763;
12357 					goto yy779;
12358 				} else {
12359 					if (yych <= '1') goto yy780;
12360 					if (yych <= '2') goto yy782;
12361 					goto yy783;
12362 				}
12363 			}
12364 		} else {
12365 			if (yych <= 'D') {
12366 				if (yych <= '@') {
12367 					if (yych <= '9') goto yy73;
12368 					if (yych <= ':') goto yy781;
12369 				} else {
12370 					if (yych <= 'A') goto yy765;
12371 					if (yych >= 'D') goto yy765;
12372 				}
12373 			} else {
12374 				if (yych <= 'G') {
12375 					if (yych == 'F') goto yy765;
12376 				} else {
12377 					if (yych <= 'J') goto yy765;
12378 					if (yych >= 'M') goto yy765;
12379 				}
12380 			}
12381 		}
12382 	} else {
12383 		if (yych <= 'h') {
12384 			if (yych <= 'a') {
12385 				if (yych <= 'W') {
12386 					if (yych <= 'R') goto yy758;
12387 					if (yych <= 'V') goto yy765;
12388 					goto yy784;
12389 				} else {
12390 					if (yych <= 'Y') goto yy765;
12391 					if (yych >= 'a') goto yy765;
12392 				}
12393 			} else {
12394 				if (yych <= 'e') {
12395 					if (yych == 'd') goto yy765;
12396 				} else {
12397 					if (yych != 'g') goto yy765;
12398 				}
12399 			}
12400 		} else {
12401 			if (yych <= 'u') {
12402 				if (yych <= 'l') {
12403 					if (yych == 'j') goto yy765;
12404 				} else {
12405 					if (yych <= 'o') goto yy765;
12406 					if (yych >= 's') goto yy765;
12407 				}
12408 			} else {
12409 				if (yych <= 'x') {
12410 					if (yych == 'w') goto yy765;
12411 				} else {
12412 					if (yych <= 'y') goto yy765;
12413 					if (yych == 0xC2) goto yy765;
12414 				}
12415 			}
12416 		}
12417 	}
12418 yy758:
12419 	YYDEBUG(758, *YYCURSOR);
12420 #line 1620 "parse_date.re"
12421 	{
12422 		DEBUG_OUTPUT("year4");
12423 		TIMELIB_INIT;
12424 		s->time->y = timelib_get_nr((char **) &ptr, 4);
12425 		TIMELIB_DEINIT;
12426 		return TIMELIB_CLF;
12427 	}
12428 #line 12426 "<stdout>"
12429 yy759:
12430 	YYDEBUG(759, *YYCURSOR);
12431 	yych = *++YYCURSOR;
12432 	switch (yych) {
12433 	case '0':	goto yy760;
12434 	case '1':	goto yy761;
12435 	case '2':
12436 	case '3':
12437 	case '4':
12438 	case '5':
12439 	case '6':
12440 	case '7':
12441 	case '8':
12442 	case '9':	goto yy727;
12443 	case 'A':
12444 	case 'a':	goto yy720;
12445 	case 'D':
12446 	case 'd':	goto yy724;
12447 	case 'F':
12448 	case 'f':	goto yy718;
12449 	case 'J':
12450 	case 'j':	goto yy717;
12451 	case 'M':
12452 	case 'm':	goto yy719;
12453 	case 'N':
12454 	case 'n':	goto yy723;
12455 	case 'O':
12456 	case 'o':	goto yy722;
12457 	case 'S':
12458 	case 's':	goto yy721;
12459 	default:	goto yy55;
12460 	}
12461 yy760:
12462 	YYDEBUG(760, *YYCURSOR);
12463 	yych = *++YYCURSOR;
12464 	if (yych == '-') goto yy728;
12465 	if (yych <= '/') goto yy55;
12466 	if (yych <= '9') goto yy727;
12467 	goto yy55;
12468 yy761:
12469 	YYDEBUG(761, *YYCURSOR);
12470 	yych = *++YYCURSOR;
12471 	if (yych == '-') goto yy728;
12472 	if (yych <= '/') goto yy55;
12473 	if (yych <= '2') goto yy727;
12474 	goto yy55;
12475 yy762:
12476 	YYDEBUG(762, *YYCURSOR);
12477 	yych = *++YYCURSOR;
12478 	switch (yych) {
12479 	case '0':	goto yy947;
12480 	case '1':	goto yy949;
12481 	case '2':
12482 	case '3':
12483 	case '4':
12484 	case '5':
12485 	case '6':
12486 	case '7':
12487 	case '8':
12488 	case '9':	goto yy950;
12489 	case 'A':
12490 	case 'a':	goto yy941;
12491 	case 'D':
12492 	case 'd':	goto yy945;
12493 	case 'F':
12494 	case 'f':	goto yy939;
12495 	case 'J':
12496 	case 'j':	goto yy938;
12497 	case 'M':
12498 	case 'm':	goto yy940;
12499 	case 'N':
12500 	case 'n':	goto yy944;
12501 	case 'O':
12502 	case 'o':	goto yy943;
12503 	case 'S':
12504 	case 's':	goto yy942;
12505 	case 'W':	goto yy946;
12506 	default:	goto yy913;
12507 	}
12508 yy763:
12509 	YYDEBUG(763, *YYCURSOR);
12510 	yych = *++YYCURSOR;
12511 	if (yych <= '/') goto yy55;
12512 	if (yych <= '0') goto yy921;
12513 	if (yych <= '1') goto yy922;
12514 	if (yych <= '9') goto yy923;
12515 	goto yy55;
12516 yy764:
12517 	YYDEBUG(764, *YYCURSOR);
12518 	++YYCURSOR;
12519 	if ((YYLIMIT - YYCURSOR) < 12) YYFILL(12);
12520 	yych = *YYCURSOR;
12521 yy765:
12522 	YYDEBUG(765, *YYCURSOR);
12523 	if (yych <= 'W') {
12524 		if (yych <= 'G') {
12525 			if (yych <= '.') {
12526 				if (yych <= 0x1F) {
12527 					if (yych == '\t') goto yy764;
12528 					goto yy55;
12529 				} else {
12530 					if (yych <= ' ') goto yy764;
12531 					if (yych <= ',') goto yy55;
12532 					goto yy912;
12533 				}
12534 			} else {
12535 				if (yych <= 'C') {
12536 					if (yych == 'A') goto yy774;
12537 					goto yy55;
12538 				} else {
12539 					if (yych <= 'D') goto yy778;
12540 					if (yych == 'F') goto yy772;
12541 					goto yy55;
12542 				}
12543 			}
12544 		} else {
12545 			if (yych <= 'N') {
12546 				if (yych <= 'J') {
12547 					if (yych <= 'H') goto yy64;
12548 					if (yych <= 'I') goto yy767;
12549 					goto yy771;
12550 				} else {
12551 					if (yych <= 'L') goto yy55;
12552 					if (yych <= 'M') goto yy773;
12553 					goto yy777;
12554 				}
12555 			} else {
12556 				if (yych <= 'S') {
12557 					if (yych <= 'O') goto yy776;
12558 					if (yych <= 'R') goto yy55;
12559 					goto yy775;
12560 				} else {
12561 					if (yych <= 'T') goto yy69;
12562 					if (yych <= 'U') goto yy62;
12563 					if (yych <= 'V') goto yy769;
12564 					goto yy68;
12565 				}
12566 			}
12567 		}
12568 	} else {
12569 		if (yych <= 'l') {
12570 			if (yych <= 'd') {
12571 				if (yych <= '`') {
12572 					if (yych <= 'X') goto yy770;
12573 					if (yych <= 'Y') goto yy67;
12574 					goto yy55;
12575 				} else {
12576 					if (yych <= 'a') goto yy774;
12577 					if (yych <= 'c') goto yy55;
12578 					goto yy778;
12579 				}
12580 			} else {
12581 				if (yych <= 'g') {
12582 					if (yych == 'f') goto yy772;
12583 					goto yy55;
12584 				} else {
12585 					if (yych <= 'h') goto yy64;
12586 					if (yych == 'j') goto yy771;
12587 					goto yy55;
12588 				}
12589 			}
12590 		} else {
12591 			if (yych <= 'u') {
12592 				if (yych <= 'o') {
12593 					if (yych <= 'm') goto yy773;
12594 					if (yych <= 'n') goto yy777;
12595 					goto yy776;
12596 				} else {
12597 					if (yych <= 'r') goto yy55;
12598 					if (yych <= 's') goto yy775;
12599 					if (yych <= 't') goto yy69;
12600 					goto yy62;
12601 				}
12602 			} else {
12603 				if (yych <= 'x') {
12604 					if (yych == 'w') goto yy68;
12605 					goto yy55;
12606 				} else {
12607 					if (yych <= 'y') goto yy67;
12608 					if (yych == 0xC2) goto yy61;
12609 					goto yy55;
12610 				}
12611 			}
12612 		}
12613 	}
12614 yy766:
12615 	YYDEBUG(766, *YYCURSOR);
12616 	yych = *++YYCURSOR;
12617 	if (yych <= '/') goto yy913;
12618 	if (yych <= '0') goto yy905;
12619 	if (yych <= '2') goto yy906;
12620 	if (yych <= '3') goto yy907;
12621 	goto yy913;
12622 yy767:
12623 	YYDEBUG(767, *YYCURSOR);
12624 	++YYCURSOR;
12625 	if ((yych = *YYCURSOR) <= 'U') {
12626 		if (yych == 'I') goto yy904;
12627 	} else {
12628 		if (yych == 'W') goto yy768;
12629 		if (yych <= 'X') goto yy858;
12630 	}
12631 yy768:
12632 	YYDEBUG(768, *YYCURSOR);
12633 #line 1441 "parse_date.re"
12634 	{
12635 		int length = 0;
12636 		DEBUG_OUTPUT("datenodayrev");
12637 		TIMELIB_INIT;
12638 		TIMELIB_HAVE_DATE();
12639 		s->time->y = timelib_get_nr_ex((char **) &ptr, 4, &length);
12640 		s->time->m = timelib_get_month((char **) &ptr);
12641 		s->time->d = 1;
12642 		TIMELIB_PROCESS_YEAR(s->time->y, length);
12643 		TIMELIB_DEINIT;
12644 		return TIMELIB_DATE_NO_DAY;
12645 	}
12646 #line 12644 "<stdout>"
12647 yy769:
12648 	YYDEBUG(769, *YYCURSOR);
12649 	yych = *++YYCURSOR;
12650 	if (yych == 'I') goto yy902;
12651 	goto yy768;
12652 yy770:
12653 	YYDEBUG(770, *YYCURSOR);
12654 	yych = *++YYCURSOR;
12655 	if (yych == 'I') goto yy901;
12656 	goto yy768;
12657 yy771:
12658 	YYDEBUG(771, *YYCURSOR);
12659 	yych = *++YYCURSOR;
12660 	if (yych <= 'U') {
12661 		if (yych == 'A') goto yy894;
12662 		if (yych <= 'T') goto yy55;
12663 		goto yy893;
12664 	} else {
12665 		if (yych <= 'a') {
12666 			if (yych <= '`') goto yy55;
12667 			goto yy894;
12668 		} else {
12669 			if (yych == 'u') goto yy893;
12670 			goto yy55;
12671 		}
12672 	}
12673 yy772:
12674 	YYDEBUG(772, *YYCURSOR);
12675 	yych = *++YYCURSOR;
12676 	if (yych <= 'R') {
12677 		if (yych <= 'N') {
12678 			if (yych == 'E') goto yy887;
12679 			goto yy55;
12680 		} else {
12681 			if (yych <= 'O') goto yy110;
12682 			if (yych <= 'Q') goto yy55;
12683 			goto yy109;
12684 		}
12685 	} else {
12686 		if (yych <= 'n') {
12687 			if (yych == 'e') goto yy887;
12688 			goto yy55;
12689 		} else {
12690 			if (yych <= 'o') goto yy110;
12691 			if (yych == 'r') goto yy109;
12692 			goto yy55;
12693 		}
12694 	}
12695 yy773:
12696 	YYDEBUG(773, *YYCURSOR);
12697 	yych = *++YYCURSOR;
12698 	if (yych <= 'S') {
12699 		if (yych <= 'I') {
12700 			if (yych == 'A') goto yy884;
12701 			if (yych <= 'H') goto yy55;
12702 			goto yy148;
12703 		} else {
12704 			if (yych == 'O') goto yy147;
12705 			if (yych <= 'R') goto yy55;
12706 			goto yy149;
12707 		}
12708 	} else {
12709 		if (yych <= 'i') {
12710 			if (yych == 'a') goto yy884;
12711 			if (yych <= 'h') goto yy55;
12712 			goto yy148;
12713 		} else {
12714 			if (yych <= 'o') {
12715 				if (yych <= 'n') goto yy55;
12716 				goto yy147;
12717 			} else {
12718 				if (yych == 's') goto yy149;
12719 				goto yy55;
12720 			}
12721 		}
12722 	}
12723 yy774:
12724 	YYDEBUG(774, *YYCURSOR);
12725 	yych = *++YYCURSOR;
12726 	if (yych <= 'U') {
12727 		if (yych == 'P') goto yy878;
12728 		if (yych <= 'T') goto yy55;
12729 		goto yy877;
12730 	} else {
12731 		if (yych <= 'p') {
12732 			if (yych <= 'o') goto yy55;
12733 			goto yy878;
12734 		} else {
12735 			if (yych == 'u') goto yy877;
12736 			goto yy55;
12737 		}
12738 	}
12739 yy775:
12740 	YYDEBUG(775, *YYCURSOR);
12741 	yych = *++YYCURSOR;
12742 	if (yych <= 'U') {
12743 		if (yych <= 'D') {
12744 			if (yych == 'A') goto yy129;
12745 			goto yy55;
12746 		} else {
12747 			if (yych <= 'E') goto yy870;
12748 			if (yych <= 'T') goto yy55;
12749 			goto yy128;
12750 		}
12751 	} else {
12752 		if (yych <= 'd') {
12753 			if (yych == 'a') goto yy129;
12754 			goto yy55;
12755 		} else {
12756 			if (yych <= 'e') goto yy870;
12757 			if (yych == 'u') goto yy128;
12758 			goto yy55;
12759 		}
12760 	}
12761 yy776:
12762 	YYDEBUG(776, *YYCURSOR);
12763 	yych = *++YYCURSOR;
12764 	if (yych == 'C') goto yy865;
12765 	if (yych == 'c') goto yy865;
12766 	goto yy55;
12767 yy777:
12768 	YYDEBUG(777, *YYCURSOR);
12769 	yych = *++YYCURSOR;
12770 	if (yych == 'O') goto yy859;
12771 	if (yych == 'o') goto yy859;
12772 	goto yy55;
12773 yy778:
12774 	YYDEBUG(778, *YYCURSOR);
12775 	yych = *++YYCURSOR;
12776 	if (yych <= 'E') {
12777 		if (yych == 'A') goto yy125;
12778 		if (yych <= 'D') goto yy55;
12779 		goto yy852;
12780 	} else {
12781 		if (yych <= 'a') {
12782 			if (yych <= '`') goto yy55;
12783 			goto yy125;
12784 		} else {
12785 			if (yych == 'e') goto yy852;
12786 			goto yy55;
12787 		}
12788 	}
12789 yy779:
12790 	YYDEBUG(779, *YYCURSOR);
12791 	yych = *++YYCURSOR;
12792 	if (yych <= '/') goto yy59;
12793 	if (yych <= '0') goto yy849;
12794 	if (yych <= '9') goto yy850;
12795 	goto yy59;
12796 yy780:
12797 	YYDEBUG(780, *YYCURSOR);
12798 	yych = *++YYCURSOR;
12799 	if (yych <= '/') goto yy59;
12800 	if (yych <= '2') goto yy818;
12801 	if (yych <= '9') goto yy797;
12802 	goto yy59;
12803 yy781:
12804 	YYDEBUG(781, *YYCURSOR);
12805 	yych = *++YYCURSOR;
12806 	if (yych <= '/') goto yy55;
12807 	if (yych <= '0') goto yy798;
12808 	if (yych <= '1') goto yy799;
12809 	goto yy55;
12810 yy782:
12811 	YYDEBUG(782, *YYCURSOR);
12812 	yych = *++YYCURSOR;
12813 	if (yych <= '/') goto yy59;
12814 	if (yych <= '9') goto yy797;
12815 	goto yy59;
12816 yy783:
12817 	YYDEBUG(783, *YYCURSOR);
12818 	yych = *++YYCURSOR;
12819 	if (yych <= '/') goto yy59;
12820 	if (yych <= '5') goto yy793;
12821 	if (yych <= '6') goto yy794;
12822 	if (yych <= '9') goto yy74;
12823 	goto yy59;
12824 yy784:
12825 	YYDEBUG(784, *YYCURSOR);
12826 	yych = *++YYCURSOR;
12827 	if (yych <= '5') {
12828 		if (yych <= '/') goto yy55;
12829 		if (yych <= '0') goto yy785;
12830 		if (yych <= '4') goto yy786;
12831 		goto yy787;
12832 	} else {
12833 		if (yych <= 'E') {
12834 			if (yych <= 'D') goto yy55;
12835 			goto yy94;
12836 		} else {
12837 			if (yych == 'e') goto yy94;
12838 			goto yy55;
12839 		}
12840 	}
12841 yy785:
12842 	YYDEBUG(785, *YYCURSOR);
12843 	yych = *++YYCURSOR;
12844 	if (yych <= '0') goto yy55;
12845 	if (yych <= '9') goto yy788;
12846 	goto yy55;
12847 yy786:
12848 	YYDEBUG(786, *YYCURSOR);
12849 	yych = *++YYCURSOR;
12850 	if (yych <= '/') goto yy55;
12851 	if (yych <= '9') goto yy788;
12852 	goto yy55;
12853 yy787:
12854 	YYDEBUG(787, *YYCURSOR);
12855 	yych = *++YYCURSOR;
12856 	if (yych <= '/') goto yy55;
12857 	if (yych >= '4') goto yy55;
12858 yy788:
12859 	YYDEBUG(788, *YYCURSOR);
12860 	yyaccept = 16;
12861 	yych = *(YYMARKER = ++YYCURSOR);
12862 	if (yych == '-') goto yy790;
12863 	if (yych <= '/') goto yy789;
12864 	if (yych <= '7') goto yy791;
12865 yy789:
12866 	YYDEBUG(789, *YYCURSOR);
12867 #line 1552 "parse_date.re"
12868 	{
12869 		timelib_sll w, d;
12870 		DEBUG_OUTPUT("isoweek");
12871 		TIMELIB_INIT;
12872 		TIMELIB_HAVE_DATE();
12873 		TIMELIB_HAVE_RELATIVE();
12874 
12875 		s->time->y = timelib_get_nr((char **) &ptr, 4);
12876 		w = timelib_get_nr((char **) &ptr, 2);
12877 		d = 1;
12878 		s->time->m = 1;
12879 		s->time->d = 1;
12880 		s->time->relative.d = timelib_daynr_from_weeknr(s->time->y, w, d);
12881 
12882 		TIMELIB_DEINIT;
12883 		return TIMELIB_ISO_WEEK;
12884 	}
12885 #line 12883 "<stdout>"
12886 yy790:
12887 	YYDEBUG(790, *YYCURSOR);
12888 	yych = *++YYCURSOR;
12889 	if (yych <= '/') goto yy55;
12890 	if (yych >= '8') goto yy55;
12891 yy791:
12892 	YYDEBUG(791, *YYCURSOR);
12893 	++YYCURSOR;
12894 	YYDEBUG(792, *YYCURSOR);
12895 #line 1533 "parse_date.re"
12896 	{
12897 		timelib_sll w, d;
12898 		DEBUG_OUTPUT("isoweekday");
12899 		TIMELIB_INIT;
12900 		TIMELIB_HAVE_DATE();
12901 		TIMELIB_HAVE_RELATIVE();
12902 
12903 		s->time->y = timelib_get_nr((char **) &ptr, 4);
12904 		w = timelib_get_nr((char **) &ptr, 2);
12905 		d = timelib_get_nr((char **) &ptr, 1);
12906 		s->time->m = 1;
12907 		s->time->d = 1;
12908 		s->time->relative.d = timelib_daynr_from_weeknr(s->time->y, w, d);
12909 
12910 		TIMELIB_DEINIT;
12911 		return TIMELIB_ISO_WEEK;
12912 	}
12913 #line 12911 "<stdout>"
12914 yy793:
12915 	YYDEBUG(793, *YYCURSOR);
12916 	yych = *++YYCURSOR;
12917 	if (yych <= '/') goto yy59;
12918 	if (yych <= '9') goto yy795;
12919 	goto yy59;
12920 yy794:
12921 	YYDEBUG(794, *YYCURSOR);
12922 	yych = *++YYCURSOR;
12923 	if (yych <= '/') goto yy59;
12924 	if (yych <= '6') goto yy795;
12925 	if (yych <= '9') goto yy75;
12926 	goto yy59;
12927 yy795:
12928 	YYDEBUG(795, *YYCURSOR);
12929 	yyaccept = 17;
12930 	yych = *(YYMARKER = ++YYCURSOR);
12931 	if (yych <= 'W') {
12932 		if (yych <= 'E') {
12933 			if (yych <= ' ') {
12934 				if (yych == '\t') goto yy59;
12935 				if (yych >= ' ') goto yy59;
12936 			} else {
12937 				if (yych <= '9') {
12938 					if (yych >= '0') goto yy76;
12939 				} else {
12940 					if (yych == 'D') goto yy59;
12941 				}
12942 			}
12943 		} else {
12944 			if (yych <= 'L') {
12945 				if (yych == 'G') goto yy796;
12946 				if (yych <= 'H') goto yy59;
12947 			} else {
12948 				if (yych <= 'R') {
12949 					if (yych <= 'M') goto yy59;
12950 				} else {
12951 					if (yych != 'V') goto yy59;
12952 				}
12953 			}
12954 		}
12955 	} else {
12956 		if (yych <= 'l') {
12957 			if (yych <= 'd') {
12958 				if (yych == 'Y') goto yy59;
12959 				if (yych >= 'd') goto yy59;
12960 			} else {
12961 				if (yych <= 'f') {
12962 					if (yych >= 'f') goto yy59;
12963 				} else {
12964 					if (yych == 'h') goto yy59;
12965 				}
12966 			}
12967 		} else {
12968 			if (yych <= 'w') {
12969 				if (yych <= 'r') {
12970 					if (yych <= 'm') goto yy59;
12971 				} else {
12972 					if (yych != 'v') goto yy59;
12973 				}
12974 			} else {
12975 				if (yych <= 'y') {
12976 					if (yych >= 'y') goto yy59;
12977 				} else {
12978 					if (yych == 0xC2) goto yy59;
12979 				}
12980 			}
12981 		}
12982 	}
12983 yy796:
12984 	YYDEBUG(796, *YYCURSOR);
12985 #line 1519 "parse_date.re"
12986 	{
12987 		int length = 0;
12988 		DEBUG_OUTPUT("pgydotd");
12989 		TIMELIB_INIT;
12990 		TIMELIB_HAVE_DATE();
12991 		s->time->y = timelib_get_nr_ex((char **) &ptr, 4, &length);
12992 		s->time->d = timelib_get_nr((char **) &ptr, 3);
12993 		s->time->m = 1;
12994 		TIMELIB_PROCESS_YEAR(s->time->y, length);
12995 		TIMELIB_DEINIT;
12996 		return TIMELIB_PG_YEARDAY;
12997 	}
12998 #line 12996 "<stdout>"
12999 yy797:
13000 	YYDEBUG(797, *YYCURSOR);
13001 	yych = *++YYCURSOR;
13002 	if (yych <= '/') goto yy59;
13003 	if (yych <= '9') goto yy795;
13004 	goto yy59;
13005 yy798:
13006 	YYDEBUG(798, *YYCURSOR);
13007 	yych = *++YYCURSOR;
13008 	if (yych <= '/') goto yy55;
13009 	if (yych <= '9') goto yy800;
13010 	goto yy55;
13011 yy799:
13012 	YYDEBUG(799, *YYCURSOR);
13013 	yych = *++YYCURSOR;
13014 	if (yych <= '/') goto yy55;
13015 	if (yych >= '3') goto yy55;
13016 yy800:
13017 	YYDEBUG(800, *YYCURSOR);
13018 	yych = *++YYCURSOR;
13019 	if (yych != ':') goto yy55;
13020 	YYDEBUG(801, *YYCURSOR);
13021 	yych = *++YYCURSOR;
13022 	if (yych <= '/') goto yy55;
13023 	if (yych <= '0') goto yy802;
13024 	if (yych <= '2') goto yy803;
13025 	if (yych <= '3') goto yy804;
13026 	goto yy55;
13027 yy802:
13028 	YYDEBUG(802, *YYCURSOR);
13029 	yych = *++YYCURSOR;
13030 	if (yych <= '/') goto yy55;
13031 	if (yych <= '9') goto yy805;
13032 	goto yy55;
13033 yy803:
13034 	YYDEBUG(803, *YYCURSOR);
13035 	yych = *++YYCURSOR;
13036 	if (yych <= '/') goto yy55;
13037 	if (yych <= '9') goto yy805;
13038 	goto yy55;
13039 yy804:
13040 	YYDEBUG(804, *YYCURSOR);
13041 	yych = *++YYCURSOR;
13042 	if (yych <= '/') goto yy55;
13043 	if (yych >= '2') goto yy55;
13044 yy805:
13045 	YYDEBUG(805, *YYCURSOR);
13046 	yych = *++YYCURSOR;
13047 	if (yych != ' ') goto yy55;
13048 	YYDEBUG(806, *YYCURSOR);
13049 	yych = *++YYCURSOR;
13050 	if (yych <= '/') goto yy55;
13051 	if (yych <= '1') goto yy807;
13052 	if (yych <= '2') goto yy808;
13053 	goto yy55;
13054 yy807:
13055 	YYDEBUG(807, *YYCURSOR);
13056 	yych = *++YYCURSOR;
13057 	if (yych <= '/') goto yy55;
13058 	if (yych <= '9') goto yy809;
13059 	goto yy55;
13060 yy808:
13061 	YYDEBUG(808, *YYCURSOR);
13062 	yych = *++YYCURSOR;
13063 	if (yych <= '/') goto yy55;
13064 	if (yych >= '5') goto yy55;
13065 yy809:
13066 	YYDEBUG(809, *YYCURSOR);
13067 	yych = *++YYCURSOR;
13068 	if (yych != ':') goto yy55;
13069 	YYDEBUG(810, *YYCURSOR);
13070 	yych = *++YYCURSOR;
13071 	if (yych <= '/') goto yy55;
13072 	if (yych >= '6') goto yy55;
13073 	YYDEBUG(811, *YYCURSOR);
13074 	yych = *++YYCURSOR;
13075 	if (yych <= '/') goto yy55;
13076 	if (yych >= ':') goto yy55;
13077 	YYDEBUG(812, *YYCURSOR);
13078 	yych = *++YYCURSOR;
13079 	if (yych != ':') goto yy55;
13080 	YYDEBUG(813, *YYCURSOR);
13081 	yych = *++YYCURSOR;
13082 	if (yych <= '/') goto yy55;
13083 	if (yych <= '5') goto yy814;
13084 	if (yych <= '6') goto yy815;
13085 	goto yy55;
13086 yy814:
13087 	YYDEBUG(814, *YYCURSOR);
13088 	yych = *++YYCURSOR;
13089 	if (yych <= '/') goto yy55;
13090 	if (yych <= '9') goto yy816;
13091 	goto yy55;
13092 yy815:
13093 	YYDEBUG(815, *YYCURSOR);
13094 	yych = *++YYCURSOR;
13095 	if (yych != '0') goto yy55;
13096 yy816:
13097 	YYDEBUG(816, *YYCURSOR);
13098 	++YYCURSOR;
13099 yy817:
13100 	YYDEBUG(817, *YYCURSOR);
13101 #line 1493 "parse_date.re"
13102 	{
13103 		int tz_not_found;
13104 		DEBUG_OUTPUT("xmlrpc | xmlrpcnocolon | soap | wddx | exif");
13105 		TIMELIB_INIT;
13106 		TIMELIB_HAVE_TIME();
13107 		TIMELIB_HAVE_DATE();
13108 		s->time->y = timelib_get_nr((char **) &ptr, 4);
13109 		s->time->m = timelib_get_nr((char **) &ptr, 2);
13110 		s->time->d = timelib_get_nr((char **) &ptr, 2);
13111 		s->time->h = timelib_get_nr((char **) &ptr, 2);
13112 		s->time->i = timelib_get_nr((char **) &ptr, 2);
13113 		s->time->s = timelib_get_nr((char **) &ptr, 2);
13114 		if (*ptr == '.') {
13115 			s->time->us = timelib_get_frac_nr((char **) &ptr, 9);
13116 			if (*ptr) { /* timezone is optional */
13117 				s->time->z = timelib_parse_zone((char **) &ptr, &s->time->dst, s->time, &tz_not_found, s->tzdb, tz_get_wrapper);
13118 				if (tz_not_found) {
13119 					add_error(s, TIMELIB_ERR_TZID_NOT_FOUND, "The timezone could not be found in the database");
13120 				}
13121 			}
13122 		}
13123 		TIMELIB_DEINIT;
13124 		return TIMELIB_XMLRPC_SOAP;
13125 	}
13126 #line 13124 "<stdout>"
13127 yy818:
13128 	YYDEBUG(818, *YYCURSOR);
13129 	yych = *++YYCURSOR;
13130 	if (yych <= '2') {
13131 		if (yych <= '/') goto yy59;
13132 		if (yych >= '1') goto yy820;
13133 	} else {
13134 		if (yych <= '3') goto yy821;
13135 		if (yych <= '9') goto yy795;
13136 		goto yy59;
13137 	}
13138 yy819:
13139 	YYDEBUG(819, *YYCURSOR);
13140 	yyaccept = 17;
13141 	yych = *(YYMARKER = ++YYCURSOR);
13142 	if (yych <= 'W') {
13143 		if (yych <= 'E') {
13144 			if (yych <= ' ') {
13145 				if (yych == '\t') goto yy59;
13146 				if (yych <= 0x1F) goto yy796;
13147 				goto yy59;
13148 			} else {
13149 				if (yych <= '9') {
13150 					if (yych <= '/') goto yy796;
13151 					goto yy822;
13152 				} else {
13153 					if (yych == 'D') goto yy59;
13154 					goto yy796;
13155 				}
13156 			}
13157 		} else {
13158 			if (yych <= 'L') {
13159 				if (yych == 'G') goto yy796;
13160 				if (yych <= 'H') goto yy59;
13161 				goto yy796;
13162 			} else {
13163 				if (yych <= 'R') {
13164 					if (yych <= 'M') goto yy59;
13165 					goto yy796;
13166 				} else {
13167 					if (yych == 'V') goto yy796;
13168 					goto yy59;
13169 				}
13170 			}
13171 		}
13172 	} else {
13173 		if (yych <= 'l') {
13174 			if (yych <= 'd') {
13175 				if (yych == 'Y') goto yy59;
13176 				if (yych <= 'c') goto yy796;
13177 				goto yy59;
13178 			} else {
13179 				if (yych <= 'f') {
13180 					if (yych <= 'e') goto yy796;
13181 					goto yy59;
13182 				} else {
13183 					if (yych == 'h') goto yy59;
13184 					goto yy796;
13185 				}
13186 			}
13187 		} else {
13188 			if (yych <= 'w') {
13189 				if (yych <= 'r') {
13190 					if (yych <= 'm') goto yy59;
13191 					goto yy796;
13192 				} else {
13193 					if (yych == 'v') goto yy796;
13194 					goto yy59;
13195 				}
13196 			} else {
13197 				if (yych <= 'y') {
13198 					if (yych <= 'x') goto yy796;
13199 					goto yy59;
13200 				} else {
13201 					if (yych == 0xC2) goto yy59;
13202 					goto yy796;
13203 				}
13204 			}
13205 		}
13206 	}
13207 yy820:
13208 	YYDEBUG(820, *YYCURSOR);
13209 	yyaccept = 17;
13210 	yych = *(YYMARKER = ++YYCURSOR);
13211 	if (yych <= 'W') {
13212 		if (yych <= 'E') {
13213 			if (yych <= ' ') {
13214 				if (yych == '\t') goto yy59;
13215 				if (yych <= 0x1F) goto yy796;
13216 				goto yy59;
13217 			} else {
13218 				if (yych <= '9') {
13219 					if (yych <= '/') goto yy796;
13220 					goto yy822;
13221 				} else {
13222 					if (yych == 'D') goto yy59;
13223 					goto yy796;
13224 				}
13225 			}
13226 		} else {
13227 			if (yych <= 'L') {
13228 				if (yych == 'G') goto yy796;
13229 				if (yych <= 'H') goto yy59;
13230 				goto yy796;
13231 			} else {
13232 				if (yych <= 'R') {
13233 					if (yych <= 'M') goto yy59;
13234 					goto yy796;
13235 				} else {
13236 					if (yych == 'V') goto yy796;
13237 					goto yy59;
13238 				}
13239 			}
13240 		}
13241 	} else {
13242 		if (yych <= 'l') {
13243 			if (yych <= 'd') {
13244 				if (yych == 'Y') goto yy59;
13245 				if (yych <= 'c') goto yy796;
13246 				goto yy59;
13247 			} else {
13248 				if (yych <= 'f') {
13249 					if (yych <= 'e') goto yy796;
13250 					goto yy59;
13251 				} else {
13252 					if (yych == 'h') goto yy59;
13253 					goto yy796;
13254 				}
13255 			}
13256 		} else {
13257 			if (yych <= 'w') {
13258 				if (yych <= 'r') {
13259 					if (yych <= 'm') goto yy59;
13260 					goto yy796;
13261 				} else {
13262 					if (yych == 'v') goto yy796;
13263 					goto yy59;
13264 				}
13265 			} else {
13266 				if (yych <= 'y') {
13267 					if (yych <= 'x') goto yy796;
13268 					goto yy59;
13269 				} else {
13270 					if (yych == 0xC2) goto yy59;
13271 					goto yy796;
13272 				}
13273 			}
13274 		}
13275 	}
13276 yy821:
13277 	YYDEBUG(821, *YYCURSOR);
13278 	yyaccept = 17;
13279 	yych = *(YYMARKER = ++YYCURSOR);
13280 	if (yych <= 'W') {
13281 		if (yych <= 'D') {
13282 			if (yych <= ' ') {
13283 				if (yych == '\t') goto yy59;
13284 				if (yych <= 0x1F) goto yy796;
13285 				goto yy59;
13286 			} else {
13287 				if (yych <= '1') {
13288 					if (yych <= '/') goto yy796;
13289 				} else {
13290 					if (yych <= '9') goto yy76;
13291 					if (yych <= 'C') goto yy796;
13292 					goto yy59;
13293 				}
13294 			}
13295 		} else {
13296 			if (yych <= 'L') {
13297 				if (yych <= 'F') {
13298 					if (yych <= 'E') goto yy796;
13299 					goto yy59;
13300 				} else {
13301 					if (yych == 'H') goto yy59;
13302 					goto yy796;
13303 				}
13304 			} else {
13305 				if (yych <= 'R') {
13306 					if (yych <= 'M') goto yy59;
13307 					goto yy796;
13308 				} else {
13309 					if (yych == 'V') goto yy796;
13310 					goto yy59;
13311 				}
13312 			}
13313 		}
13314 	} else {
13315 		if (yych <= 'l') {
13316 			if (yych <= 'd') {
13317 				if (yych == 'Y') goto yy59;
13318 				if (yych <= 'c') goto yy796;
13319 				goto yy59;
13320 			} else {
13321 				if (yych <= 'f') {
13322 					if (yych <= 'e') goto yy796;
13323 					goto yy59;
13324 				} else {
13325 					if (yych == 'h') goto yy59;
13326 					goto yy796;
13327 				}
13328 			}
13329 		} else {
13330 			if (yych <= 'w') {
13331 				if (yych <= 'r') {
13332 					if (yych <= 'm') goto yy59;
13333 					goto yy796;
13334 				} else {
13335 					if (yych == 'v') goto yy796;
13336 					goto yy59;
13337 				}
13338 			} else {
13339 				if (yych <= 'y') {
13340 					if (yych <= 'x') goto yy796;
13341 					goto yy59;
13342 				} else {
13343 					if (yych == 0xC2) goto yy59;
13344 					goto yy796;
13345 				}
13346 			}
13347 		}
13348 	}
13349 yy822:
13350 	YYDEBUG(822, *YYCURSOR);
13351 	yyaccept = 18;
13352 	yych = *(YYMARKER = ++YYCURSOR);
13353 	if (yych <= 'W') {
13354 		if (yych <= 'F') {
13355 			if (yych <= '/') {
13356 				if (yych <= '\t') {
13357 					if (yych >= '\t') goto yy58;
13358 				} else {
13359 					if (yych == ' ') goto yy58;
13360 				}
13361 			} else {
13362 				if (yych <= 'C') {
13363 					if (yych <= '9') goto yy77;
13364 				} else {
13365 					if (yych <= 'D') goto yy65;
13366 					if (yych >= 'F') goto yy66;
13367 				}
13368 			}
13369 		} else {
13370 			if (yych <= 'R') {
13371 				if (yych <= 'H') {
13372 					if (yych >= 'H') goto yy64;
13373 				} else {
13374 					if (yych == 'M') goto yy60;
13375 				}
13376 			} else {
13377 				if (yych <= 'T') {
13378 					if (yych <= 'S') goto yy63;
13379 					goto yy824;
13380 				} else {
13381 					if (yych <= 'U') goto yy62;
13382 					if (yych >= 'W') goto yy68;
13383 				}
13384 			}
13385 		}
13386 	} else {
13387 		if (yych <= 'm') {
13388 			if (yych <= 'e') {
13389 				if (yych <= 'Y') {
13390 					if (yych >= 'Y') goto yy67;
13391 				} else {
13392 					if (yych == 'd') goto yy65;
13393 				}
13394 			} else {
13395 				if (yych <= 'g') {
13396 					if (yych <= 'f') goto yy66;
13397 				} else {
13398 					if (yych <= 'h') goto yy64;
13399 					if (yych >= 'm') goto yy60;
13400 				}
13401 			}
13402 		} else {
13403 			if (yych <= 'v') {
13404 				if (yych <= 's') {
13405 					if (yych >= 's') goto yy63;
13406 				} else {
13407 					if (yych <= 't') goto yy825;
13408 					if (yych <= 'u') goto yy62;
13409 				}
13410 			} else {
13411 				if (yych <= 'y') {
13412 					if (yych <= 'w') goto yy68;
13413 					if (yych >= 'y') goto yy67;
13414 				} else {
13415 					if (yych == 0xC2) goto yy61;
13416 				}
13417 			}
13418 		}
13419 	}
13420 yy823:
13421 	YYDEBUG(823, *YYCURSOR);
13422 #line 1481 "parse_date.re"
13423 	{
13424 		DEBUG_OUTPUT("datenocolon");
13425 		TIMELIB_INIT;
13426 		TIMELIB_HAVE_DATE();
13427 		s->time->y = timelib_get_nr((char **) &ptr, 4);
13428 		s->time->m = timelib_get_nr((char **) &ptr, 2);
13429 		s->time->d = timelib_get_nr((char **) &ptr, 2);
13430 		TIMELIB_DEINIT;
13431 		return TIMELIB_DATE_NOCOLON;
13432 	}
13433 #line 13431 "<stdout>"
13434 yy824:
13435 	YYDEBUG(824, *YYCURSOR);
13436 	yych = *++YYCURSOR;
13437 	if (yych <= 'H') {
13438 		if (yych <= '2') {
13439 			if (yych <= '/') goto yy55;
13440 			if (yych <= '1') goto yy839;
13441 			goto yy840;
13442 		} else {
13443 			if (yych <= '9') goto yy841;
13444 			if (yych <= 'G') goto yy55;
13445 			goto yy81;
13446 		}
13447 	} else {
13448 		if (yych <= 'g') {
13449 			if (yych == 'U') goto yy82;
13450 			goto yy55;
13451 		} else {
13452 			if (yych <= 'h') goto yy81;
13453 			if (yych == 'u') goto yy82;
13454 			goto yy55;
13455 		}
13456 	}
13457 yy825:
13458 	YYDEBUG(825, *YYCURSOR);
13459 	yych = *++YYCURSOR;
13460 	if (yych <= 'H') {
13461 		if (yych <= '2') {
13462 			if (yych <= '/') goto yy55;
13463 			if (yych >= '2') goto yy827;
13464 		} else {
13465 			if (yych <= '9') goto yy828;
13466 			if (yych <= 'G') goto yy55;
13467 			goto yy81;
13468 		}
13469 	} else {
13470 		if (yych <= 'g') {
13471 			if (yych == 'U') goto yy82;
13472 			goto yy55;
13473 		} else {
13474 			if (yych <= 'h') goto yy81;
13475 			if (yych == 'u') goto yy82;
13476 			goto yy55;
13477 		}
13478 	}
13479 	YYDEBUG(826, *YYCURSOR);
13480 	yych = *++YYCURSOR;
13481 	if (yych <= '/') goto yy55;
13482 	if (yych <= '5') goto yy833;
13483 	if (yych <= '9') goto yy828;
13484 	goto yy55;
13485 yy827:
13486 	YYDEBUG(827, *YYCURSOR);
13487 	yych = *++YYCURSOR;
13488 	if (yych <= '/') goto yy55;
13489 	if (yych <= '4') goto yy833;
13490 	if (yych <= '5') goto yy829;
13491 	goto yy55;
13492 yy828:
13493 	YYDEBUG(828, *YYCURSOR);
13494 	yych = *++YYCURSOR;
13495 	if (yych <= '/') goto yy55;
13496 	if (yych >= '6') goto yy55;
13497 yy829:
13498 	YYDEBUG(829, *YYCURSOR);
13499 	yych = *++YYCURSOR;
13500 	if (yych <= '/') goto yy55;
13501 	if (yych >= ':') goto yy55;
13502 yy830:
13503 	YYDEBUG(830, *YYCURSOR);
13504 	yych = *++YYCURSOR;
13505 	if (yych <= '/') goto yy55;
13506 	if (yych <= '5') goto yy831;
13507 	if (yych <= '6') goto yy832;
13508 	goto yy55;
13509 yy831:
13510 	YYDEBUG(831, *YYCURSOR);
13511 	yych = *++YYCURSOR;
13512 	if (yych <= '/') goto yy55;
13513 	if (yych <= '9') goto yy816;
13514 	goto yy55;
13515 yy832:
13516 	YYDEBUG(832, *YYCURSOR);
13517 	yych = *++YYCURSOR;
13518 	if (yych == '0') goto yy816;
13519 	goto yy55;
13520 yy833:
13521 	YYDEBUG(833, *YYCURSOR);
13522 	yych = *++YYCURSOR;
13523 	if (yych <= '/') goto yy55;
13524 	if (yych <= '5') goto yy834;
13525 	if (yych <= '9') goto yy830;
13526 	goto yy55;
13527 yy834:
13528 	YYDEBUG(834, *YYCURSOR);
13529 	yych = *++YYCURSOR;
13530 	if (yych <= '/') goto yy55;
13531 	if (yych <= '5') goto yy835;
13532 	if (yych <= '6') goto yy836;
13533 	if (yych <= '9') goto yy830;
13534 	goto yy55;
13535 yy835:
13536 	YYDEBUG(835, *YYCURSOR);
13537 	yych = *++YYCURSOR;
13538 	if (yych <= '/') goto yy55;
13539 	if (yych <= '5') goto yy837;
13540 	if (yych <= '6') goto yy838;
13541 	if (yych <= '9') goto yy816;
13542 	goto yy55;
13543 yy836:
13544 	YYDEBUG(836, *YYCURSOR);
13545 	yych = *++YYCURSOR;
13546 	if (yych <= '/') goto yy55;
13547 	if (yych <= '0') goto yy837;
13548 	if (yych <= '5') goto yy831;
13549 	if (yych <= '6') goto yy832;
13550 	goto yy55;
13551 yy837:
13552 	YYDEBUG(837, *YYCURSOR);
13553 	yych = *++YYCURSOR;
13554 	if (yych <= '/') goto yy817;
13555 	if (yych <= '9') goto yy816;
13556 	goto yy817;
13557 yy838:
13558 	YYDEBUG(838, *YYCURSOR);
13559 	yych = *++YYCURSOR;
13560 	if (yych == '0') goto yy816;
13561 	goto yy817;
13562 yy839:
13563 	YYDEBUG(839, *YYCURSOR);
13564 	yych = *++YYCURSOR;
13565 	if (yych <= '/') goto yy55;
13566 	if (yych <= '5') goto yy848;
13567 	if (yych <= '9') goto yy841;
13568 	if (yych <= ':') goto yy842;
13569 	goto yy55;
13570 yy840:
13571 	YYDEBUG(840, *YYCURSOR);
13572 	yych = *++YYCURSOR;
13573 	if (yych <= '5') {
13574 		if (yych <= '/') goto yy55;
13575 		if (yych <= '4') goto yy848;
13576 		goto yy829;
13577 	} else {
13578 		if (yych == ':') goto yy842;
13579 		goto yy55;
13580 	}
13581 yy841:
13582 	YYDEBUG(841, *YYCURSOR);
13583 	yych = *++YYCURSOR;
13584 	if (yych <= '/') goto yy55;
13585 	if (yych <= '5') goto yy829;
13586 	if (yych != ':') goto yy55;
13587 yy842:
13588 	YYDEBUG(842, *YYCURSOR);
13589 	yych = *++YYCURSOR;
13590 	if (yych <= '/') goto yy55;
13591 	if (yych >= '6') goto yy55;
13592 	YYDEBUG(843, *YYCURSOR);
13593 	yych = *++YYCURSOR;
13594 	if (yych <= '/') goto yy55;
13595 	if (yych >= ':') goto yy55;
13596 	YYDEBUG(844, *YYCURSOR);
13597 	yych = *++YYCURSOR;
13598 	if (yych != ':') goto yy55;
13599 	YYDEBUG(845, *YYCURSOR);
13600 	yych = *++YYCURSOR;
13601 	if (yych <= '/') goto yy55;
13602 	if (yych <= '5') goto yy846;
13603 	if (yych <= '6') goto yy847;
13604 	goto yy55;
13605 yy846:
13606 	YYDEBUG(846, *YYCURSOR);
13607 	yych = *++YYCURSOR;
13608 	if (yych <= '/') goto yy55;
13609 	if (yych <= '9') goto yy816;
13610 	goto yy55;
13611 yy847:
13612 	YYDEBUG(847, *YYCURSOR);
13613 	yych = *++YYCURSOR;
13614 	if (yych == '0') goto yy816;
13615 	goto yy55;
13616 yy848:
13617 	YYDEBUG(848, *YYCURSOR);
13618 	yych = *++YYCURSOR;
13619 	if (yych <= '/') goto yy55;
13620 	if (yych <= '5') goto yy834;
13621 	if (yych <= '9') goto yy830;
13622 	if (yych <= ':') goto yy842;
13623 	goto yy55;
13624 yy849:
13625 	YYDEBUG(849, *YYCURSOR);
13626 	yych = *++YYCURSOR;
13627 	if (yych <= '2') {
13628 		if (yych <= '/') goto yy59;
13629 		if (yych <= '0') goto yy851;
13630 		goto yy820;
13631 	} else {
13632 		if (yych <= '3') goto yy821;
13633 		if (yych <= '9') goto yy795;
13634 		goto yy59;
13635 	}
13636 yy850:
13637 	YYDEBUG(850, *YYCURSOR);
13638 	yych = *++YYCURSOR;
13639 	if (yych <= '2') {
13640 		if (yych <= '/') goto yy59;
13641 		if (yych <= '0') goto yy819;
13642 		goto yy820;
13643 	} else {
13644 		if (yych <= '3') goto yy821;
13645 		if (yych <= '9') goto yy795;
13646 		goto yy59;
13647 	}
13648 yy851:
13649 	YYDEBUG(851, *YYCURSOR);
13650 	yych = *++YYCURSOR;
13651 	if (yych <= '/') goto yy59;
13652 	if (yych <= '9') goto yy822;
13653 	goto yy59;
13654 yy852:
13655 	YYDEBUG(852, *YYCURSOR);
13656 	yych = *++YYCURSOR;
13657 	if (yych == 'C') goto yy853;
13658 	if (yych != 'c') goto yy55;
13659 yy853:
13660 	YYDEBUG(853, *YYCURSOR);
13661 	yyaccept = 19;
13662 	yych = *(YYMARKER = ++YYCURSOR);
13663 	if (yych == 'E') goto yy854;
13664 	if (yych != 'e') goto yy768;
13665 yy854:
13666 	YYDEBUG(854, *YYCURSOR);
13667 	yych = *++YYCURSOR;
13668 	if (yych == 'M') goto yy855;
13669 	if (yych != 'm') goto yy55;
13670 yy855:
13671 	YYDEBUG(855, *YYCURSOR);
13672 	yych = *++YYCURSOR;
13673 	if (yych == 'B') goto yy856;
13674 	if (yych != 'b') goto yy55;
13675 yy856:
13676 	YYDEBUG(856, *YYCURSOR);
13677 	yych = *++YYCURSOR;
13678 	if (yych == 'E') goto yy857;
13679 	if (yych != 'e') goto yy55;
13680 yy857:
13681 	YYDEBUG(857, *YYCURSOR);
13682 	yych = *++YYCURSOR;
13683 	if (yych == 'R') goto yy858;
13684 	if (yych != 'r') goto yy55;
13685 yy858:
13686 	YYDEBUG(858, *YYCURSOR);
13687 	yych = *++YYCURSOR;
13688 	goto yy768;
13689 yy859:
13690 	YYDEBUG(859, *YYCURSOR);
13691 	yych = *++YYCURSOR;
13692 	if (yych == 'V') goto yy860;
13693 	if (yych != 'v') goto yy55;
13694 yy860:
13695 	YYDEBUG(860, *YYCURSOR);
13696 	yyaccept = 19;
13697 	yych = *(YYMARKER = ++YYCURSOR);
13698 	if (yych == 'E') goto yy861;
13699 	if (yych != 'e') goto yy768;
13700 yy861:
13701 	YYDEBUG(861, *YYCURSOR);
13702 	yych = *++YYCURSOR;
13703 	if (yych == 'M') goto yy862;
13704 	if (yych != 'm') goto yy55;
13705 yy862:
13706 	YYDEBUG(862, *YYCURSOR);
13707 	yych = *++YYCURSOR;
13708 	if (yych == 'B') goto yy863;
13709 	if (yych != 'b') goto yy55;
13710 yy863:
13711 	YYDEBUG(863, *YYCURSOR);
13712 	yych = *++YYCURSOR;
13713 	if (yych == 'E') goto yy864;
13714 	if (yych != 'e') goto yy55;
13715 yy864:
13716 	YYDEBUG(864, *YYCURSOR);
13717 	yych = *++YYCURSOR;
13718 	if (yych == 'R') goto yy858;
13719 	if (yych == 'r') goto yy858;
13720 	goto yy55;
13721 yy865:
13722 	YYDEBUG(865, *YYCURSOR);
13723 	yych = *++YYCURSOR;
13724 	if (yych == 'T') goto yy866;
13725 	if (yych != 't') goto yy55;
13726 yy866:
13727 	YYDEBUG(866, *YYCURSOR);
13728 	yyaccept = 19;
13729 	yych = *(YYMARKER = ++YYCURSOR);
13730 	if (yych == 'O') goto yy867;
13731 	if (yych != 'o') goto yy768;
13732 yy867:
13733 	YYDEBUG(867, *YYCURSOR);
13734 	yych = *++YYCURSOR;
13735 	if (yych == 'B') goto yy868;
13736 	if (yych != 'b') goto yy55;
13737 yy868:
13738 	YYDEBUG(868, *YYCURSOR);
13739 	yych = *++YYCURSOR;
13740 	if (yych == 'E') goto yy869;
13741 	if (yych != 'e') goto yy55;
13742 yy869:
13743 	YYDEBUG(869, *YYCURSOR);
13744 	yych = *++YYCURSOR;
13745 	if (yych == 'R') goto yy858;
13746 	if (yych == 'r') goto yy858;
13747 	goto yy55;
13748 yy870:
13749 	YYDEBUG(870, *YYCURSOR);
13750 	yych = *++YYCURSOR;
13751 	if (yych <= 'P') {
13752 		if (yych == 'C') goto yy131;
13753 		if (yych <= 'O') goto yy55;
13754 	} else {
13755 		if (yych <= 'c') {
13756 			if (yych <= 'b') goto yy55;
13757 			goto yy131;
13758 		} else {
13759 			if (yych != 'p') goto yy55;
13760 		}
13761 	}
13762 yy871:
13763 	YYDEBUG(871, *YYCURSOR);
13764 	yych = *++YYCURSOR;
13765 	if (yych == 'T') goto yy872;
13766 	if (yych != 't') goto yy768;
13767 yy872:
13768 	YYDEBUG(872, *YYCURSOR);
13769 	yyaccept = 19;
13770 	yych = *(YYMARKER = ++YYCURSOR);
13771 	if (yych == 'E') goto yy873;
13772 	if (yych != 'e') goto yy768;
13773 yy873:
13774 	YYDEBUG(873, *YYCURSOR);
13775 	yych = *++YYCURSOR;
13776 	if (yych == 'M') goto yy874;
13777 	if (yych != 'm') goto yy55;
13778 yy874:
13779 	YYDEBUG(874, *YYCURSOR);
13780 	yych = *++YYCURSOR;
13781 	if (yych == 'B') goto yy875;
13782 	if (yych != 'b') goto yy55;
13783 yy875:
13784 	YYDEBUG(875, *YYCURSOR);
13785 	yych = *++YYCURSOR;
13786 	if (yych == 'E') goto yy876;
13787 	if (yych != 'e') goto yy55;
13788 yy876:
13789 	YYDEBUG(876, *YYCURSOR);
13790 	yych = *++YYCURSOR;
13791 	if (yych == 'R') goto yy858;
13792 	if (yych == 'r') goto yy858;
13793 	goto yy55;
13794 yy877:
13795 	YYDEBUG(877, *YYCURSOR);
13796 	yych = *++YYCURSOR;
13797 	if (yych == 'G') goto yy881;
13798 	if (yych == 'g') goto yy881;
13799 	goto yy55;
13800 yy878:
13801 	YYDEBUG(878, *YYCURSOR);
13802 	yych = *++YYCURSOR;
13803 	if (yych == 'R') goto yy879;
13804 	if (yych != 'r') goto yy55;
13805 yy879:
13806 	YYDEBUG(879, *YYCURSOR);
13807 	yyaccept = 19;
13808 	yych = *(YYMARKER = ++YYCURSOR);
13809 	if (yych == 'I') goto yy880;
13810 	if (yych != 'i') goto yy768;
13811 yy880:
13812 	YYDEBUG(880, *YYCURSOR);
13813 	yych = *++YYCURSOR;
13814 	if (yych == 'L') goto yy858;
13815 	if (yych == 'l') goto yy858;
13816 	goto yy55;
13817 yy881:
13818 	YYDEBUG(881, *YYCURSOR);
13819 	yyaccept = 19;
13820 	yych = *(YYMARKER = ++YYCURSOR);
13821 	if (yych == 'U') goto yy882;
13822 	if (yych != 'u') goto yy768;
13823 yy882:
13824 	YYDEBUG(882, *YYCURSOR);
13825 	yych = *++YYCURSOR;
13826 	if (yych == 'S') goto yy883;
13827 	if (yych != 's') goto yy55;
13828 yy883:
13829 	YYDEBUG(883, *YYCURSOR);
13830 	yych = *++YYCURSOR;
13831 	if (yych == 'T') goto yy858;
13832 	if (yych == 't') goto yy858;
13833 	goto yy55;
13834 yy884:
13835 	YYDEBUG(884, *YYCURSOR);
13836 	yych = *++YYCURSOR;
13837 	if (yych <= 'Y') {
13838 		if (yych == 'R') goto yy885;
13839 		if (yych <= 'X') goto yy55;
13840 		goto yy858;
13841 	} else {
13842 		if (yych <= 'r') {
13843 			if (yych <= 'q') goto yy55;
13844 		} else {
13845 			if (yych == 'y') goto yy858;
13846 			goto yy55;
13847 		}
13848 	}
13849 yy885:
13850 	YYDEBUG(885, *YYCURSOR);
13851 	yyaccept = 19;
13852 	yych = *(YYMARKER = ++YYCURSOR);
13853 	if (yych == 'C') goto yy886;
13854 	if (yych != 'c') goto yy768;
13855 yy886:
13856 	YYDEBUG(886, *YYCURSOR);
13857 	yych = *++YYCURSOR;
13858 	if (yych == 'H') goto yy858;
13859 	if (yych == 'h') goto yy858;
13860 	goto yy55;
13861 yy887:
13862 	YYDEBUG(887, *YYCURSOR);
13863 	yych = *++YYCURSOR;
13864 	if (yych == 'B') goto yy888;
13865 	if (yych != 'b') goto yy55;
13866 yy888:
13867 	YYDEBUG(888, *YYCURSOR);
13868 	yyaccept = 19;
13869 	yych = *(YYMARKER = ++YYCURSOR);
13870 	if (yych == 'R') goto yy889;
13871 	if (yych != 'r') goto yy768;
13872 yy889:
13873 	YYDEBUG(889, *YYCURSOR);
13874 	yych = *++YYCURSOR;
13875 	if (yych == 'U') goto yy890;
13876 	if (yych != 'u') goto yy55;
13877 yy890:
13878 	YYDEBUG(890, *YYCURSOR);
13879 	yych = *++YYCURSOR;
13880 	if (yych == 'A') goto yy891;
13881 	if (yych != 'a') goto yy55;
13882 yy891:
13883 	YYDEBUG(891, *YYCURSOR);
13884 	yych = *++YYCURSOR;
13885 	if (yych == 'R') goto yy892;
13886 	if (yych != 'r') goto yy55;
13887 yy892:
13888 	YYDEBUG(892, *YYCURSOR);
13889 	yych = *++YYCURSOR;
13890 	if (yych == 'Y') goto yy858;
13891 	if (yych == 'y') goto yy858;
13892 	goto yy55;
13893 yy893:
13894 	YYDEBUG(893, *YYCURSOR);
13895 	yych = *++YYCURSOR;
13896 	if (yych <= 'N') {
13897 		if (yych == 'L') goto yy900;
13898 		if (yych <= 'M') goto yy55;
13899 		goto yy899;
13900 	} else {
13901 		if (yych <= 'l') {
13902 			if (yych <= 'k') goto yy55;
13903 			goto yy900;
13904 		} else {
13905 			if (yych == 'n') goto yy899;
13906 			goto yy55;
13907 		}
13908 	}
13909 yy894:
13910 	YYDEBUG(894, *YYCURSOR);
13911 	yych = *++YYCURSOR;
13912 	if (yych == 'N') goto yy895;
13913 	if (yych != 'n') goto yy55;
13914 yy895:
13915 	YYDEBUG(895, *YYCURSOR);
13916 	yyaccept = 19;
13917 	yych = *(YYMARKER = ++YYCURSOR);
13918 	if (yych == 'U') goto yy896;
13919 	if (yych != 'u') goto yy768;
13920 yy896:
13921 	YYDEBUG(896, *YYCURSOR);
13922 	yych = *++YYCURSOR;
13923 	if (yych == 'A') goto yy897;
13924 	if (yych != 'a') goto yy55;
13925 yy897:
13926 	YYDEBUG(897, *YYCURSOR);
13927 	yych = *++YYCURSOR;
13928 	if (yych == 'R') goto yy898;
13929 	if (yych != 'r') goto yy55;
13930 yy898:
13931 	YYDEBUG(898, *YYCURSOR);
13932 	yych = *++YYCURSOR;
13933 	if (yych == 'Y') goto yy858;
13934 	if (yych == 'y') goto yy858;
13935 	goto yy55;
13936 yy899:
13937 	YYDEBUG(899, *YYCURSOR);
13938 	yych = *++YYCURSOR;
13939 	if (yych == 'E') goto yy858;
13940 	if (yych == 'e') goto yy858;
13941 	goto yy768;
13942 yy900:
13943 	YYDEBUG(900, *YYCURSOR);
13944 	yych = *++YYCURSOR;
13945 	if (yych == 'Y') goto yy858;
13946 	if (yych == 'y') goto yy858;
13947 	goto yy768;
13948 yy901:
13949 	YYDEBUG(901, *YYCURSOR);
13950 	yych = *++YYCURSOR;
13951 	if (yych == 'I') goto yy858;
13952 	goto yy768;
13953 yy902:
13954 	YYDEBUG(902, *YYCURSOR);
13955 	yych = *++YYCURSOR;
13956 	if (yych != 'I') goto yy768;
13957 	YYDEBUG(903, *YYCURSOR);
13958 	yych = *++YYCURSOR;
13959 	if (yych == 'I') goto yy858;
13960 	goto yy768;
13961 yy904:
13962 	YYDEBUG(904, *YYCURSOR);
13963 	yych = *++YYCURSOR;
13964 	if (yych == 'I') goto yy858;
13965 	goto yy768;
13966 yy905:
13967 	YYDEBUG(905, *YYCURSOR);
13968 	yych = *++YYCURSOR;
13969 	if (yych <= '/') goto yy55;
13970 	if (yych <= '0') goto yy920;
13971 	if (yych <= '9') goto yy919;
13972 	goto yy55;
13973 yy906:
13974 	YYDEBUG(906, *YYCURSOR);
13975 	yych = *++YYCURSOR;
13976 	if (yych <= '/') goto yy55;
13977 	if (yych <= '9') goto yy918;
13978 	goto yy55;
13979 yy907:
13980 	YYDEBUG(907, *YYCURSOR);
13981 	yych = *++YYCURSOR;
13982 	if (yych <= '/') goto yy55;
13983 	if (yych <= '5') goto yy916;
13984 	if (yych <= '6') goto yy915;
13985 	goto yy55;
13986 yy908:
13987 	YYDEBUG(908, *YYCURSOR);
13988 	yych = *++YYCURSOR;
13989 	if (yych == 'E') goto yy887;
13990 	if (yych == 'e') goto yy887;
13991 	goto yy55;
13992 yy909:
13993 	YYDEBUG(909, *YYCURSOR);
13994 	yych = *++YYCURSOR;
13995 	if (yych == 'A') goto yy884;
13996 	if (yych == 'a') goto yy884;
13997 	goto yy55;
13998 yy910:
13999 	YYDEBUG(910, *YYCURSOR);
14000 	yych = *++YYCURSOR;
14001 	if (yych == 'E') goto yy914;
14002 	if (yych == 'e') goto yy914;
14003 	goto yy55;
14004 yy911:
14005 	YYDEBUG(911, *YYCURSOR);
14006 	yych = *++YYCURSOR;
14007 	if (yych == 'E') goto yy852;
14008 	if (yych == 'e') goto yy852;
14009 	goto yy55;
14010 yy912:
14011 	YYDEBUG(912, *YYCURSOR);
14012 	++YYCURSOR;
14013 	if ((YYLIMIT - YYCURSOR) < 9) YYFILL(9);
14014 	yych = *YYCURSOR;
14015 yy913:
14016 	YYDEBUG(913, *YYCURSOR);
14017 	switch (yych) {
14018 	case '\t':
14019 	case ' ':
14020 	case '-':
14021 	case '.':	goto yy912;
14022 	case 'A':
14023 	case 'a':	goto yy774;
14024 	case 'D':
14025 	case 'd':	goto yy911;
14026 	case 'F':
14027 	case 'f':	goto yy908;
14028 	case 'I':	goto yy767;
14029 	case 'J':
14030 	case 'j':	goto yy771;
14031 	case 'M':
14032 	case 'm':	goto yy909;
14033 	case 'N':
14034 	case 'n':	goto yy777;
14035 	case 'O':
14036 	case 'o':	goto yy776;
14037 	case 'S':
14038 	case 's':	goto yy910;
14039 	case 'V':	goto yy769;
14040 	case 'X':	goto yy770;
14041 	default:	goto yy55;
14042 	}
14043 yy914:
14044 	YYDEBUG(914, *YYCURSOR);
14045 	yych = *++YYCURSOR;
14046 	if (yych == 'P') goto yy871;
14047 	if (yych == 'p') goto yy871;
14048 	goto yy55;
14049 yy915:
14050 	YYDEBUG(915, *YYCURSOR);
14051 	yych = *++YYCURSOR;
14052 	if (yych <= '/') goto yy55;
14053 	if (yych <= '6') goto yy917;
14054 	goto yy55;
14055 yy916:
14056 	YYDEBUG(916, *YYCURSOR);
14057 	yych = *++YYCURSOR;
14058 	if (yych <= '/') goto yy55;
14059 	if (yych >= ':') goto yy55;
14060 yy917:
14061 	YYDEBUG(917, *YYCURSOR);
14062 	yych = *++YYCURSOR;
14063 	goto yy796;
14064 yy918:
14065 	YYDEBUG(918, *YYCURSOR);
14066 	yych = *++YYCURSOR;
14067 	if (yych <= '/') goto yy55;
14068 	if (yych <= '9') goto yy917;
14069 	goto yy55;
14070 yy919:
14071 	YYDEBUG(919, *YYCURSOR);
14072 	yych = *++YYCURSOR;
14073 	if (yych <= '/') goto yy55;
14074 	if (yych <= '9') goto yy917;
14075 	goto yy55;
14076 yy920:
14077 	YYDEBUG(920, *YYCURSOR);
14078 	yych = *++YYCURSOR;
14079 	if (yych <= '0') goto yy55;
14080 	if (yych <= '9') goto yy917;
14081 	goto yy55;
14082 yy921:
14083 	YYDEBUG(921, *YYCURSOR);
14084 	yych = *++YYCURSOR;
14085 	if (yych <= '.') goto yy55;
14086 	if (yych <= '/') goto yy924;
14087 	if (yych <= '9') goto yy932;
14088 	goto yy55;
14089 yy922:
14090 	YYDEBUG(922, *YYCURSOR);
14091 	yych = *++YYCURSOR;
14092 	if (yych <= '.') goto yy55;
14093 	if (yych <= '/') goto yy924;
14094 	if (yych <= '2') goto yy932;
14095 	goto yy55;
14096 yy923:
14097 	YYDEBUG(923, *YYCURSOR);
14098 	yych = *++YYCURSOR;
14099 	if (yych != '/') goto yy55;
14100 yy924:
14101 	YYDEBUG(924, *YYCURSOR);
14102 	yych = *++YYCURSOR;
14103 	if (yych <= '/') goto yy55;
14104 	if (yych <= '2') goto yy925;
14105 	if (yych <= '3') goto yy926;
14106 	if (yych <= '9') goto yy927;
14107 	goto yy55;
14108 yy925:
14109 	YYDEBUG(925, *YYCURSOR);
14110 	yyaccept = 20;
14111 	yych = *(YYMARKER = ++YYCURSOR);
14112 	if (yych <= 'n') {
14113 		if (yych <= '/') goto yy429;
14114 		if (yych <= '9') goto yy927;
14115 		if (yych <= 'm') goto yy429;
14116 		goto yy929;
14117 	} else {
14118 		if (yych <= 'r') {
14119 			if (yych <= 'q') goto yy429;
14120 			goto yy930;
14121 		} else {
14122 			if (yych <= 's') goto yy928;
14123 			if (yych <= 't') goto yy931;
14124 			goto yy429;
14125 		}
14126 	}
14127 yy926:
14128 	YYDEBUG(926, *YYCURSOR);
14129 	yyaccept = 20;
14130 	yych = *(YYMARKER = ++YYCURSOR);
14131 	if (yych <= 'n') {
14132 		if (yych <= '/') goto yy429;
14133 		if (yych <= '1') goto yy927;
14134 		if (yych <= 'm') goto yy429;
14135 		goto yy929;
14136 	} else {
14137 		if (yych <= 'r') {
14138 			if (yych <= 'q') goto yy429;
14139 			goto yy930;
14140 		} else {
14141 			if (yych <= 's') goto yy928;
14142 			if (yych <= 't') goto yy931;
14143 			goto yy429;
14144 		}
14145 	}
14146 yy927:
14147 	YYDEBUG(927, *YYCURSOR);
14148 	yyaccept = 20;
14149 	yych = *(YYMARKER = ++YYCURSOR);
14150 	if (yych <= 'q') {
14151 		if (yych == 'n') goto yy929;
14152 		goto yy429;
14153 	} else {
14154 		if (yych <= 'r') goto yy930;
14155 		if (yych <= 's') goto yy928;
14156 		if (yych <= 't') goto yy931;
14157 		goto yy429;
14158 	}
14159 yy928:
14160 	YYDEBUG(928, *YYCURSOR);
14161 	yych = *++YYCURSOR;
14162 	if (yych == 't') goto yy428;
14163 	goto yy55;
14164 yy929:
14165 	YYDEBUG(929, *YYCURSOR);
14166 	yych = *++YYCURSOR;
14167 	if (yych == 'd') goto yy428;
14168 	goto yy55;
14169 yy930:
14170 	YYDEBUG(930, *YYCURSOR);
14171 	yych = *++YYCURSOR;
14172 	if (yych == 'd') goto yy428;
14173 	goto yy55;
14174 yy931:
14175 	YYDEBUG(931, *YYCURSOR);
14176 	yych = *++YYCURSOR;
14177 	if (yych == 'h') goto yy428;
14178 	goto yy55;
14179 yy932:
14180 	YYDEBUG(932, *YYCURSOR);
14181 	yych = *++YYCURSOR;
14182 	if (yych != '/') goto yy55;
14183 	YYDEBUG(933, *YYCURSOR);
14184 	yych = *++YYCURSOR;
14185 	if (yych <= '2') {
14186 		if (yych <= '/') goto yy55;
14187 		if (yych >= '1') goto yy935;
14188 	} else {
14189 		if (yych <= '3') goto yy936;
14190 		if (yych <= '9') goto yy927;
14191 		goto yy55;
14192 	}
14193 	YYDEBUG(934, *YYCURSOR);
14194 	yyaccept = 20;
14195 	yych = *(YYMARKER = ++YYCURSOR);
14196 	if (yych <= 'n') {
14197 		if (yych <= '/') goto yy429;
14198 		if (yych <= '9') goto yy937;
14199 		if (yych <= 'm') goto yy429;
14200 		goto yy929;
14201 	} else {
14202 		if (yych <= 'r') {
14203 			if (yych <= 'q') goto yy429;
14204 			goto yy930;
14205 		} else {
14206 			if (yych <= 's') goto yy928;
14207 			if (yych <= 't') goto yy931;
14208 			goto yy429;
14209 		}
14210 	}
14211 yy935:
14212 	YYDEBUG(935, *YYCURSOR);
14213 	yyaccept = 20;
14214 	yych = *(YYMARKER = ++YYCURSOR);
14215 	if (yych <= 'n') {
14216 		if (yych <= '/') goto yy429;
14217 		if (yych <= '9') goto yy937;
14218 		if (yych <= 'm') goto yy429;
14219 		goto yy929;
14220 	} else {
14221 		if (yych <= 'r') {
14222 			if (yych <= 'q') goto yy429;
14223 			goto yy930;
14224 		} else {
14225 			if (yych <= 's') goto yy928;
14226 			if (yych <= 't') goto yy931;
14227 			goto yy429;
14228 		}
14229 	}
14230 yy936:
14231 	YYDEBUG(936, *YYCURSOR);
14232 	yyaccept = 20;
14233 	yych = *(YYMARKER = ++YYCURSOR);
14234 	if (yych <= 'n') {
14235 		if (yych <= '/') goto yy429;
14236 		if (yych <= '1') goto yy937;
14237 		if (yych <= 'm') goto yy429;
14238 		goto yy929;
14239 	} else {
14240 		if (yych <= 'r') {
14241 			if (yych <= 'q') goto yy429;
14242 			goto yy930;
14243 		} else {
14244 			if (yych <= 's') goto yy928;
14245 			if (yych <= 't') goto yy931;
14246 			goto yy429;
14247 		}
14248 	}
14249 yy937:
14250 	YYDEBUG(937, *YYCURSOR);
14251 	yyaccept = 20;
14252 	yych = *(YYMARKER = ++YYCURSOR);
14253 	if (yych <= 'n') {
14254 		if (yych == '/') goto yy428;
14255 		if (yych <= 'm') goto yy429;
14256 		goto yy929;
14257 	} else {
14258 		if (yych <= 'r') {
14259 			if (yych <= 'q') goto yy429;
14260 			goto yy930;
14261 		} else {
14262 			if (yych <= 's') goto yy928;
14263 			if (yych <= 't') goto yy931;
14264 			goto yy429;
14265 		}
14266 	}
14267 yy938:
14268 	YYDEBUG(938, *YYCURSOR);
14269 	yych = *++YYCURSOR;
14270 	if (yych <= 'U') {
14271 		if (yych == 'A') goto yy1018;
14272 		if (yych <= 'T') goto yy55;
14273 		goto yy1017;
14274 	} else {
14275 		if (yych <= 'a') {
14276 			if (yych <= '`') goto yy55;
14277 			goto yy1018;
14278 		} else {
14279 			if (yych == 'u') goto yy1017;
14280 			goto yy55;
14281 		}
14282 	}
14283 yy939:
14284 	YYDEBUG(939, *YYCURSOR);
14285 	yych = *++YYCURSOR;
14286 	if (yych == 'E') goto yy1015;
14287 	if (yych == 'e') goto yy1015;
14288 	goto yy55;
14289 yy940:
14290 	YYDEBUG(940, *YYCURSOR);
14291 	yych = *++YYCURSOR;
14292 	if (yych == 'A') goto yy1012;
14293 	if (yych == 'a') goto yy1012;
14294 	goto yy55;
14295 yy941:
14296 	YYDEBUG(941, *YYCURSOR);
14297 	yych = *++YYCURSOR;
14298 	if (yych <= 'U') {
14299 		if (yych == 'P') goto yy1009;
14300 		if (yych <= 'T') goto yy55;
14301 		goto yy1008;
14302 	} else {
14303 		if (yych <= 'p') {
14304 			if (yych <= 'o') goto yy55;
14305 			goto yy1009;
14306 		} else {
14307 			if (yych == 'u') goto yy1008;
14308 			goto yy55;
14309 		}
14310 	}
14311 yy942:
14312 	YYDEBUG(942, *YYCURSOR);
14313 	yych = *++YYCURSOR;
14314 	if (yych == 'E') goto yy1005;
14315 	if (yych == 'e') goto yy1005;
14316 	goto yy55;
14317 yy943:
14318 	YYDEBUG(943, *YYCURSOR);
14319 	yych = *++YYCURSOR;
14320 	if (yych == 'C') goto yy1003;
14321 	if (yych == 'c') goto yy1003;
14322 	goto yy55;
14323 yy944:
14324 	YYDEBUG(944, *YYCURSOR);
14325 	yych = *++YYCURSOR;
14326 	if (yych == 'O') goto yy1001;
14327 	if (yych == 'o') goto yy1001;
14328 	goto yy55;
14329 yy945:
14330 	YYDEBUG(945, *YYCURSOR);
14331 	yych = *++YYCURSOR;
14332 	if (yych == 'E') goto yy999;
14333 	if (yych == 'e') goto yy999;
14334 	goto yy55;
14335 yy946:
14336 	YYDEBUG(946, *YYCURSOR);
14337 	yych = *++YYCURSOR;
14338 	if (yych <= '/') goto yy55;
14339 	if (yych <= '0') goto yy785;
14340 	if (yych <= '4') goto yy786;
14341 	if (yych <= '5') goto yy787;
14342 	goto yy55;
14343 yy947:
14344 	YYDEBUG(947, *YYCURSOR);
14345 	yyaccept = 21;
14346 	yych = *(YYMARKER = ++YYCURSOR);
14347 	if (yych == '-') goto yy951;
14348 	if (yych <= '/') goto yy948;
14349 	if (yych <= '9') goto yy970;
14350 yy948:
14351 	YYDEBUG(948, *YYCURSOR);
14352 #line 1358 "parse_date.re"
14353 	{
14354 		int length = 0;
14355 		DEBUG_OUTPUT("gnudateshorter");
14356 		TIMELIB_INIT;
14357 		TIMELIB_HAVE_DATE();
14358 		s->time->y = timelib_get_nr_ex((char **) &ptr, 4, &length);
14359 		s->time->m = timelib_get_nr((char **) &ptr, 2);
14360 		s->time->d = 1;
14361 		TIMELIB_PROCESS_YEAR(s->time->y, length);
14362 		TIMELIB_DEINIT;
14363 		return TIMELIB_ISO_DATE;
14364 	}
14365 #line 14363 "<stdout>"
14366 yy949:
14367 	YYDEBUG(949, *YYCURSOR);
14368 	yyaccept = 21;
14369 	yych = *(YYMARKER = ++YYCURSOR);
14370 	if (yych == '-') goto yy951;
14371 	if (yych <= '/') goto yy948;
14372 	if (yych <= '2') goto yy970;
14373 	goto yy948;
14374 yy950:
14375 	YYDEBUG(950, *YYCURSOR);
14376 	yyaccept = 21;
14377 	yych = *(YYMARKER = ++YYCURSOR);
14378 	if (yych != '-') goto yy948;
14379 yy951:
14380 	YYDEBUG(951, *YYCURSOR);
14381 	yych = *++YYCURSOR;
14382 	if (yych <= '/') goto yy55;
14383 	if (yych <= '2') goto yy952;
14384 	if (yych <= '3') goto yy953;
14385 	if (yych <= '9') goto yy954;
14386 	goto yy55;
14387 yy952:
14388 	YYDEBUG(952, *YYCURSOR);
14389 	yyaccept = 12;
14390 	yych = *(YYMARKER = ++YYCURSOR);
14391 	if (yych <= 'm') {
14392 		if (yych <= '9') {
14393 			if (yych <= '/') goto yy631;
14394 			goto yy954;
14395 		} else {
14396 			if (yych == 'T') goto yy959;
14397 			goto yy631;
14398 		}
14399 	} else {
14400 		if (yych <= 'r') {
14401 			if (yych <= 'n') goto yy956;
14402 			if (yych <= 'q') goto yy631;
14403 			goto yy957;
14404 		} else {
14405 			if (yych <= 's') goto yy955;
14406 			if (yych <= 't') goto yy958;
14407 			goto yy631;
14408 		}
14409 	}
14410 yy953:
14411 	YYDEBUG(953, *YYCURSOR);
14412 	yyaccept = 12;
14413 	yych = *(YYMARKER = ++YYCURSOR);
14414 	if (yych <= 'm') {
14415 		if (yych <= '1') {
14416 			if (yych <= '/') goto yy631;
14417 		} else {
14418 			if (yych == 'T') goto yy959;
14419 			goto yy631;
14420 		}
14421 	} else {
14422 		if (yych <= 'r') {
14423 			if (yych <= 'n') goto yy956;
14424 			if (yych <= 'q') goto yy631;
14425 			goto yy957;
14426 		} else {
14427 			if (yych <= 's') goto yy955;
14428 			if (yych <= 't') goto yy958;
14429 			goto yy631;
14430 		}
14431 	}
14432 yy954:
14433 	YYDEBUG(954, *YYCURSOR);
14434 	yyaccept = 12;
14435 	yych = *(YYMARKER = ++YYCURSOR);
14436 	if (yych <= 'n') {
14437 		if (yych == 'T') goto yy959;
14438 		if (yych <= 'm') goto yy631;
14439 		goto yy956;
14440 	} else {
14441 		if (yych <= 'r') {
14442 			if (yych <= 'q') goto yy631;
14443 			goto yy957;
14444 		} else {
14445 			if (yych <= 's') goto yy955;
14446 			if (yych <= 't') goto yy958;
14447 			goto yy631;
14448 		}
14449 	}
14450 yy955:
14451 	YYDEBUG(955, *YYCURSOR);
14452 	yych = *++YYCURSOR;
14453 	if (yych == 't') goto yy969;
14454 	goto yy55;
14455 yy956:
14456 	YYDEBUG(956, *YYCURSOR);
14457 	yych = *++YYCURSOR;
14458 	if (yych == 'd') goto yy969;
14459 	goto yy55;
14460 yy957:
14461 	YYDEBUG(957, *YYCURSOR);
14462 	yych = *++YYCURSOR;
14463 	if (yych == 'd') goto yy969;
14464 	goto yy55;
14465 yy958:
14466 	YYDEBUG(958, *YYCURSOR);
14467 	yych = *++YYCURSOR;
14468 	if (yych == 'h') goto yy969;
14469 	goto yy55;
14470 yy959:
14471 	YYDEBUG(959, *YYCURSOR);
14472 	yych = *++YYCURSOR;
14473 	if (yych <= '/') goto yy55;
14474 	if (yych <= '1') goto yy960;
14475 	if (yych <= '2') goto yy961;
14476 	if (yych <= '9') goto yy962;
14477 	goto yy55;
14478 yy960:
14479 	YYDEBUG(960, *YYCURSOR);
14480 	yych = *++YYCURSOR;
14481 	if (yych <= '/') goto yy55;
14482 	if (yych <= '9') goto yy962;
14483 	if (yych <= ':') goto yy963;
14484 	goto yy55;
14485 yy961:
14486 	YYDEBUG(961, *YYCURSOR);
14487 	yych = *++YYCURSOR;
14488 	if (yych <= '/') goto yy55;
14489 	if (yych <= '4') goto yy962;
14490 	if (yych == ':') goto yy963;
14491 	goto yy55;
14492 yy962:
14493 	YYDEBUG(962, *YYCURSOR);
14494 	yych = *++YYCURSOR;
14495 	if (yych != ':') goto yy55;
14496 yy963:
14497 	YYDEBUG(963, *YYCURSOR);
14498 	yych = *++YYCURSOR;
14499 	if (yych <= '/') goto yy55;
14500 	if (yych <= '5') goto yy964;
14501 	if (yych <= '9') goto yy965;
14502 	goto yy55;
14503 yy964:
14504 	YYDEBUG(964, *YYCURSOR);
14505 	yych = *++YYCURSOR;
14506 	if (yych <= '/') goto yy55;
14507 	if (yych <= '9') goto yy965;
14508 	if (yych <= ':') goto yy966;
14509 	goto yy55;
14510 yy965:
14511 	YYDEBUG(965, *YYCURSOR);
14512 	yych = *++YYCURSOR;
14513 	if (yych != ':') goto yy55;
14514 yy966:
14515 	YYDEBUG(966, *YYCURSOR);
14516 	yych = *++YYCURSOR;
14517 	if (yych <= '/') goto yy55;
14518 	if (yych <= '5') goto yy967;
14519 	if (yych <= '6') goto yy968;
14520 	if (yych <= '9') goto yy816;
14521 	goto yy55;
14522 yy967:
14523 	YYDEBUG(967, *YYCURSOR);
14524 	yych = *++YYCURSOR;
14525 	if (yych <= '/') goto yy817;
14526 	if (yych <= '9') goto yy816;
14527 	goto yy817;
14528 yy968:
14529 	YYDEBUG(968, *YYCURSOR);
14530 	yych = *++YYCURSOR;
14531 	if (yych == '0') goto yy816;
14532 	goto yy817;
14533 yy969:
14534 	YYDEBUG(969, *YYCURSOR);
14535 	yyaccept = 12;
14536 	yych = *(YYMARKER = ++YYCURSOR);
14537 	if (yych == 'T') goto yy959;
14538 	goto yy631;
14539 yy970:
14540 	YYDEBUG(970, *YYCURSOR);
14541 	yyaccept = 21;
14542 	yych = *(YYMARKER = ++YYCURSOR);
14543 	if (yych != '-') goto yy948;
14544 	YYDEBUG(971, *YYCURSOR);
14545 	yych = *++YYCURSOR;
14546 	if (yych <= '2') {
14547 		if (yych <= '/') goto yy55;
14548 		if (yych >= '1') goto yy973;
14549 	} else {
14550 		if (yych <= '3') goto yy974;
14551 		if (yych <= '9') goto yy954;
14552 		goto yy55;
14553 	}
14554 	YYDEBUG(972, *YYCURSOR);
14555 	yyaccept = 12;
14556 	yych = *(YYMARKER = ++YYCURSOR);
14557 	if (yych <= 'm') {
14558 		if (yych <= '9') {
14559 			if (yych <= '/') goto yy631;
14560 			goto yy975;
14561 		} else {
14562 			if (yych == 'T') goto yy959;
14563 			goto yy631;
14564 		}
14565 	} else {
14566 		if (yych <= 'r') {
14567 			if (yych <= 'n') goto yy956;
14568 			if (yych <= 'q') goto yy631;
14569 			goto yy957;
14570 		} else {
14571 			if (yych <= 's') goto yy955;
14572 			if (yych <= 't') goto yy958;
14573 			goto yy631;
14574 		}
14575 	}
14576 yy973:
14577 	YYDEBUG(973, *YYCURSOR);
14578 	yyaccept = 12;
14579 	yych = *(YYMARKER = ++YYCURSOR);
14580 	if (yych <= 'm') {
14581 		if (yych <= '9') {
14582 			if (yych <= '/') goto yy631;
14583 			goto yy975;
14584 		} else {
14585 			if (yych == 'T') goto yy959;
14586 			goto yy631;
14587 		}
14588 	} else {
14589 		if (yych <= 'r') {
14590 			if (yych <= 'n') goto yy956;
14591 			if (yych <= 'q') goto yy631;
14592 			goto yy957;
14593 		} else {
14594 			if (yych <= 's') goto yy955;
14595 			if (yych <= 't') goto yy958;
14596 			goto yy631;
14597 		}
14598 	}
14599 yy974:
14600 	YYDEBUG(974, *YYCURSOR);
14601 	yyaccept = 12;
14602 	yych = *(YYMARKER = ++YYCURSOR);
14603 	if (yych <= 'm') {
14604 		if (yych <= '1') {
14605 			if (yych <= '/') goto yy631;
14606 		} else {
14607 			if (yych == 'T') goto yy959;
14608 			goto yy631;
14609 		}
14610 	} else {
14611 		if (yych <= 'r') {
14612 			if (yych <= 'n') goto yy956;
14613 			if (yych <= 'q') goto yy631;
14614 			goto yy957;
14615 		} else {
14616 			if (yych <= 's') goto yy955;
14617 			if (yych <= 't') goto yy958;
14618 			goto yy631;
14619 		}
14620 	}
14621 yy975:
14622 	YYDEBUG(975, *YYCURSOR);
14623 	yyaccept = 20;
14624 	yych = *(YYMARKER = ++YYCURSOR);
14625 	if (yych <= 'n') {
14626 		if (yych == 'T') goto yy976;
14627 		if (yych <= 'm') goto yy429;
14628 		goto yy956;
14629 	} else {
14630 		if (yych <= 'r') {
14631 			if (yych <= 'q') goto yy429;
14632 			goto yy957;
14633 		} else {
14634 			if (yych <= 's') goto yy955;
14635 			if (yych <= 't') goto yy958;
14636 			goto yy429;
14637 		}
14638 	}
14639 yy976:
14640 	YYDEBUG(976, *YYCURSOR);
14641 	yych = *++YYCURSOR;
14642 	if (yych <= '/') goto yy55;
14643 	if (yych <= '1') goto yy977;
14644 	if (yych <= '2') goto yy978;
14645 	if (yych <= '9') goto yy962;
14646 	goto yy55;
14647 yy977:
14648 	YYDEBUG(977, *YYCURSOR);
14649 	yych = *++YYCURSOR;
14650 	if (yych <= '/') goto yy55;
14651 	if (yych <= '9') goto yy979;
14652 	if (yych <= ':') goto yy963;
14653 	goto yy55;
14654 yy978:
14655 	YYDEBUG(978, *YYCURSOR);
14656 	yych = *++YYCURSOR;
14657 	if (yych <= '/') goto yy55;
14658 	if (yych <= '4') goto yy979;
14659 	if (yych == ':') goto yy963;
14660 	goto yy55;
14661 yy979:
14662 	YYDEBUG(979, *YYCURSOR);
14663 	yych = *++YYCURSOR;
14664 	if (yych != ':') goto yy55;
14665 	YYDEBUG(980, *YYCURSOR);
14666 	yych = *++YYCURSOR;
14667 	if (yych <= '/') goto yy55;
14668 	if (yych <= '5') goto yy981;
14669 	if (yych <= '9') goto yy965;
14670 	goto yy55;
14671 yy981:
14672 	YYDEBUG(981, *YYCURSOR);
14673 	yych = *++YYCURSOR;
14674 	if (yych <= '/') goto yy55;
14675 	if (yych <= '9') goto yy982;
14676 	if (yych <= ':') goto yy966;
14677 	goto yy55;
14678 yy982:
14679 	YYDEBUG(982, *YYCURSOR);
14680 	yych = *++YYCURSOR;
14681 	if (yych != ':') goto yy55;
14682 	YYDEBUG(983, *YYCURSOR);
14683 	yych = *++YYCURSOR;
14684 	if (yych <= '/') goto yy55;
14685 	if (yych <= '5') goto yy984;
14686 	if (yych <= '6') goto yy985;
14687 	if (yych <= '9') goto yy816;
14688 	goto yy55;
14689 yy984:
14690 	YYDEBUG(984, *YYCURSOR);
14691 	yych = *++YYCURSOR;
14692 	if (yych <= '/') goto yy817;
14693 	if (yych <= '9') goto yy986;
14694 	goto yy817;
14695 yy985:
14696 	YYDEBUG(985, *YYCURSOR);
14697 	yych = *++YYCURSOR;
14698 	if (yych != '0') goto yy817;
14699 yy986:
14700 	YYDEBUG(986, *YYCURSOR);
14701 	yyaccept = 22;
14702 	yych = *(YYMARKER = ++YYCURSOR);
14703 	if (yych != '.') goto yy817;
14704 	YYDEBUG(987, *YYCURSOR);
14705 	yych = *++YYCURSOR;
14706 	if (yych <= '/') goto yy55;
14707 	if (yych >= ':') goto yy55;
14708 yy988:
14709 	YYDEBUG(988, *YYCURSOR);
14710 	yyaccept = 22;
14711 	YYMARKER = ++YYCURSOR;
14712 	if ((YYLIMIT - YYCURSOR) < 9) YYFILL(9);
14713 	yych = *YYCURSOR;
14714 	YYDEBUG(989, *YYCURSOR);
14715 	if (yych <= '-') {
14716 		if (yych == '+') goto yy991;
14717 		if (yych <= ',') goto yy817;
14718 		goto yy991;
14719 	} else {
14720 		if (yych <= '9') {
14721 			if (yych <= '/') goto yy817;
14722 			goto yy988;
14723 		} else {
14724 			if (yych != 'G') goto yy817;
14725 		}
14726 	}
14727 	YYDEBUG(990, *YYCURSOR);
14728 	yych = *++YYCURSOR;
14729 	if (yych == 'M') goto yy997;
14730 	goto yy55;
14731 yy991:
14732 	YYDEBUG(991, *YYCURSOR);
14733 	yych = *++YYCURSOR;
14734 	if (yych <= '/') goto yy55;
14735 	if (yych <= '1') goto yy992;
14736 	if (yych <= '2') goto yy993;
14737 	if (yych <= '9') goto yy994;
14738 	goto yy55;
14739 yy992:
14740 	YYDEBUG(992, *YYCURSOR);
14741 	yych = *++YYCURSOR;
14742 	if (yych <= '/') goto yy817;
14743 	if (yych <= '9') goto yy994;
14744 	if (yych <= ':') goto yy995;
14745 	goto yy817;
14746 yy993:
14747 	YYDEBUG(993, *YYCURSOR);
14748 	yych = *++YYCURSOR;
14749 	if (yych <= '5') {
14750 		if (yych <= '/') goto yy817;
14751 		if (yych >= '5') goto yy996;
14752 	} else {
14753 		if (yych <= '9') goto yy816;
14754 		if (yych <= ':') goto yy995;
14755 		goto yy817;
14756 	}
14757 yy994:
14758 	YYDEBUG(994, *YYCURSOR);
14759 	yych = *++YYCURSOR;
14760 	if (yych <= '/') goto yy817;
14761 	if (yych <= '5') goto yy996;
14762 	if (yych <= '9') goto yy816;
14763 	if (yych >= ';') goto yy817;
14764 yy995:
14765 	YYDEBUG(995, *YYCURSOR);
14766 	yych = *++YYCURSOR;
14767 	if (yych <= '/') goto yy817;
14768 	if (yych <= '5') goto yy996;
14769 	if (yych <= '9') goto yy816;
14770 	goto yy817;
14771 yy996:
14772 	YYDEBUG(996, *YYCURSOR);
14773 	yych = *++YYCURSOR;
14774 	if (yych <= '/') goto yy817;
14775 	if (yych <= '9') goto yy816;
14776 	goto yy817;
14777 yy997:
14778 	YYDEBUG(997, *YYCURSOR);
14779 	yych = *++YYCURSOR;
14780 	if (yych != 'T') goto yy55;
14781 	YYDEBUG(998, *YYCURSOR);
14782 	yych = *++YYCURSOR;
14783 	if (yych == '+') goto yy991;
14784 	if (yych == '-') goto yy991;
14785 	goto yy55;
14786 yy999:
14787 	YYDEBUG(999, *YYCURSOR);
14788 	yych = *++YYCURSOR;
14789 	if (yych == 'C') goto yy1000;
14790 	if (yych != 'c') goto yy55;
14791 yy1000:
14792 	YYDEBUG(1000, *YYCURSOR);
14793 	yyaccept = 19;
14794 	yych = *(YYMARKER = ++YYCURSOR);
14795 	if (yych <= 'D') {
14796 		if (yych == '-') goto yy741;
14797 		goto yy768;
14798 	} else {
14799 		if (yych <= 'E') goto yy854;
14800 		if (yych == 'e') goto yy854;
14801 		goto yy768;
14802 	}
14803 yy1001:
14804 	YYDEBUG(1001, *YYCURSOR);
14805 	yych = *++YYCURSOR;
14806 	if (yych == 'V') goto yy1002;
14807 	if (yych != 'v') goto yy55;
14808 yy1002:
14809 	YYDEBUG(1002, *YYCURSOR);
14810 	yyaccept = 19;
14811 	yych = *(YYMARKER = ++YYCURSOR);
14812 	if (yych <= 'D') {
14813 		if (yych == '-') goto yy741;
14814 		goto yy768;
14815 	} else {
14816 		if (yych <= 'E') goto yy861;
14817 		if (yych == 'e') goto yy861;
14818 		goto yy768;
14819 	}
14820 yy1003:
14821 	YYDEBUG(1003, *YYCURSOR);
14822 	yych = *++YYCURSOR;
14823 	if (yych == 'T') goto yy1004;
14824 	if (yych != 't') goto yy55;
14825 yy1004:
14826 	YYDEBUG(1004, *YYCURSOR);
14827 	yyaccept = 19;
14828 	yych = *(YYMARKER = ++YYCURSOR);
14829 	if (yych <= 'N') {
14830 		if (yych == '-') goto yy741;
14831 		goto yy768;
14832 	} else {
14833 		if (yych <= 'O') goto yy867;
14834 		if (yych == 'o') goto yy867;
14835 		goto yy768;
14836 	}
14837 yy1005:
14838 	YYDEBUG(1005, *YYCURSOR);
14839 	yych = *++YYCURSOR;
14840 	if (yych == 'P') goto yy1006;
14841 	if (yych != 'p') goto yy55;
14842 yy1006:
14843 	YYDEBUG(1006, *YYCURSOR);
14844 	yyaccept = 19;
14845 	yych = *(YYMARKER = ++YYCURSOR);
14846 	if (yych <= 'S') {
14847 		if (yych == '-') goto yy741;
14848 		goto yy768;
14849 	} else {
14850 		if (yych <= 'T') goto yy1007;
14851 		if (yych != 't') goto yy768;
14852 	}
14853 yy1007:
14854 	YYDEBUG(1007, *YYCURSOR);
14855 	yyaccept = 19;
14856 	yych = *(YYMARKER = ++YYCURSOR);
14857 	if (yych <= 'D') {
14858 		if (yych == '-') goto yy741;
14859 		goto yy768;
14860 	} else {
14861 		if (yych <= 'E') goto yy873;
14862 		if (yych == 'e') goto yy873;
14863 		goto yy768;
14864 	}
14865 yy1008:
14866 	YYDEBUG(1008, *YYCURSOR);
14867 	yych = *++YYCURSOR;
14868 	if (yych == 'G') goto yy1011;
14869 	if (yych == 'g') goto yy1011;
14870 	goto yy55;
14871 yy1009:
14872 	YYDEBUG(1009, *YYCURSOR);
14873 	yych = *++YYCURSOR;
14874 	if (yych == 'R') goto yy1010;
14875 	if (yych != 'r') goto yy55;
14876 yy1010:
14877 	YYDEBUG(1010, *YYCURSOR);
14878 	yyaccept = 19;
14879 	yych = *(YYMARKER = ++YYCURSOR);
14880 	if (yych <= 'H') {
14881 		if (yych == '-') goto yy741;
14882 		goto yy768;
14883 	} else {
14884 		if (yych <= 'I') goto yy880;
14885 		if (yych == 'i') goto yy880;
14886 		goto yy768;
14887 	}
14888 yy1011:
14889 	YYDEBUG(1011, *YYCURSOR);
14890 	yyaccept = 19;
14891 	yych = *(YYMARKER = ++YYCURSOR);
14892 	if (yych <= 'T') {
14893 		if (yych == '-') goto yy741;
14894 		goto yy768;
14895 	} else {
14896 		if (yych <= 'U') goto yy882;
14897 		if (yych == 'u') goto yy882;
14898 		goto yy768;
14899 	}
14900 yy1012:
14901 	YYDEBUG(1012, *YYCURSOR);
14902 	yych = *++YYCURSOR;
14903 	if (yych <= 'Y') {
14904 		if (yych == 'R') goto yy1013;
14905 		if (yych <= 'X') goto yy55;
14906 		goto yy1014;
14907 	} else {
14908 		if (yych <= 'r') {
14909 			if (yych <= 'q') goto yy55;
14910 		} else {
14911 			if (yych == 'y') goto yy1014;
14912 			goto yy55;
14913 		}
14914 	}
14915 yy1013:
14916 	YYDEBUG(1013, *YYCURSOR);
14917 	yyaccept = 19;
14918 	yych = *(YYMARKER = ++YYCURSOR);
14919 	if (yych <= 'B') {
14920 		if (yych == '-') goto yy741;
14921 		goto yy768;
14922 	} else {
14923 		if (yych <= 'C') goto yy886;
14924 		if (yych == 'c') goto yy886;
14925 		goto yy768;
14926 	}
14927 yy1014:
14928 	YYDEBUG(1014, *YYCURSOR);
14929 	yyaccept = 19;
14930 	yych = *(YYMARKER = ++YYCURSOR);
14931 	if (yych == '-') goto yy741;
14932 	goto yy768;
14933 yy1015:
14934 	YYDEBUG(1015, *YYCURSOR);
14935 	yych = *++YYCURSOR;
14936 	if (yych == 'B') goto yy1016;
14937 	if (yych != 'b') goto yy55;
14938 yy1016:
14939 	YYDEBUG(1016, *YYCURSOR);
14940 	yyaccept = 19;
14941 	yych = *(YYMARKER = ++YYCURSOR);
14942 	if (yych <= 'Q') {
14943 		if (yych == '-') goto yy741;
14944 		goto yy768;
14945 	} else {
14946 		if (yych <= 'R') goto yy889;
14947 		if (yych == 'r') goto yy889;
14948 		goto yy768;
14949 	}
14950 yy1017:
14951 	YYDEBUG(1017, *YYCURSOR);
14952 	yych = *++YYCURSOR;
14953 	if (yych <= 'N') {
14954 		if (yych == 'L') goto yy1021;
14955 		if (yych <= 'M') goto yy55;
14956 		goto yy1020;
14957 	} else {
14958 		if (yych <= 'l') {
14959 			if (yych <= 'k') goto yy55;
14960 			goto yy1021;
14961 		} else {
14962 			if (yych == 'n') goto yy1020;
14963 			goto yy55;
14964 		}
14965 	}
14966 yy1018:
14967 	YYDEBUG(1018, *YYCURSOR);
14968 	yych = *++YYCURSOR;
14969 	if (yych == 'N') goto yy1019;
14970 	if (yych != 'n') goto yy55;
14971 yy1019:
14972 	YYDEBUG(1019, *YYCURSOR);
14973 	yyaccept = 19;
14974 	yych = *(YYMARKER = ++YYCURSOR);
14975 	if (yych <= 'T') {
14976 		if (yych == '-') goto yy741;
14977 		goto yy768;
14978 	} else {
14979 		if (yych <= 'U') goto yy896;
14980 		if (yych == 'u') goto yy896;
14981 		goto yy768;
14982 	}
14983 yy1020:
14984 	YYDEBUG(1020, *YYCURSOR);
14985 	yyaccept = 19;
14986 	yych = *(YYMARKER = ++YYCURSOR);
14987 	if (yych <= 'D') {
14988 		if (yych == '-') goto yy741;
14989 		goto yy768;
14990 	} else {
14991 		if (yych <= 'E') goto yy858;
14992 		if (yych == 'e') goto yy858;
14993 		goto yy768;
14994 	}
14995 yy1021:
14996 	YYDEBUG(1021, *YYCURSOR);
14997 	yyaccept = 19;
14998 	yych = *(YYMARKER = ++YYCURSOR);
14999 	if (yych <= 'X') {
15000 		if (yych == '-') goto yy741;
15001 		goto yy768;
15002 	} else {
15003 		if (yych <= 'Y') goto yy858;
15004 		if (yych == 'y') goto yy858;
15005 		goto yy768;
15006 	}
15007 yy1022:
15008 	YYDEBUG(1022, *YYCURSOR);
15009 	yych = *++YYCURSOR;
15010 	if (yych <= '.') {
15011 		if (yych <= '\t') {
15012 			if (yych <= 0x08) goto yy552;
15013 			goto yy705;
15014 		} else {
15015 			if (yych <= ',') goto yy552;
15016 			if (yych <= '-') goto yy706;
15017 			goto yy705;
15018 		}
15019 	} else {
15020 		if (yych <= 'U') {
15021 			if (yych <= '/') goto yy704;
15022 			if (yych <= 'T') goto yy552;
15023 			goto yy89;
15024 		} else {
15025 			if (yych == 'u') goto yy89;
15026 			goto yy552;
15027 		}
15028 	}
15029 yy1023:
15030 	YYDEBUG(1023, *YYCURSOR);
15031 	yych = *++YYCURSOR;
15032 	if (yych <= 'P') {
15033 		if (yych == 'C') goto yy131;
15034 		if (yych <= 'O') goto yy55;
15035 		goto yy560;
15036 	} else {
15037 		if (yych <= 'c') {
15038 			if (yych <= 'b') goto yy55;
15039 			goto yy131;
15040 		} else {
15041 			if (yych == 'p') goto yy560;
15042 			goto yy55;
15043 		}
15044 	}
15045 yy1024:
15046 	YYDEBUG(1024, *YYCURSOR);
15047 	yych = *++YYCURSOR;
15048 	if (yych <= '9') {
15049 		if (yych <= ',') {
15050 			if (yych == '\t') goto yy1026;
15051 			goto yy1028;
15052 		} else {
15053 			if (yych <= '-') goto yy1025;
15054 			if (yych <= '.') goto yy705;
15055 			if (yych <= '/') goto yy704;
15056 			goto yy715;
15057 		}
15058 	} else {
15059 		if (yych <= 'q') {
15060 			if (yych == 'n') goto yy444;
15061 			goto yy1028;
15062 		} else {
15063 			if (yych <= 'r') goto yy445;
15064 			if (yych <= 's') goto yy439;
15065 			if (yych <= 't') goto yy442;
15066 			goto yy1028;
15067 		}
15068 	}
15069 yy1025:
15070 	YYDEBUG(1025, *YYCURSOR);
15071 	yych = *++YYCURSOR;
15072 	switch (yych) {
15073 	case '0':	goto yy1029;
15074 	case '1':	goto yy1030;
15075 	case '2':
15076 	case '3':
15077 	case '4':
15078 	case '5':
15079 	case '6':
15080 	case '7':
15081 	case '8':
15082 	case '9':	goto yy592;
15083 	case 'A':
15084 	case 'a':	goto yy596;
15085 	case 'D':
15086 	case 'd':	goto yy600;
15087 	case 'F':
15088 	case 'f':	goto yy594;
15089 	case 'J':
15090 	case 'j':	goto yy593;
15091 	case 'M':
15092 	case 'm':	goto yy595;
15093 	case 'N':
15094 	case 'n':	goto yy599;
15095 	case 'O':
15096 	case 'o':	goto yy598;
15097 	case 'S':
15098 	case 's':	goto yy597;
15099 	default:	goto yy552;
15100 	}
15101 yy1026:
15102 	YYDEBUG(1026, *YYCURSOR);
15103 	yych = *++YYCURSOR;
15104 	if (yych <= '/') goto yy1028;
15105 	if (yych <= '0') goto yy710;
15106 	if (yych <= '1') goto yy711;
15107 	if (yych <= '9') goto yy712;
15108 	goto yy1028;
15109 yy1027:
15110 	YYDEBUG(1027, *YYCURSOR);
15111 	++YYCURSOR;
15112 	if ((YYLIMIT - YYCURSOR) < 13) YYFILL(13);
15113 	yych = *YYCURSOR;
15114 yy1028:
15115 	YYDEBUG(1028, *YYCURSOR);
15116 	if (yych <= 'W') {
15117 		if (yych <= 'G') {
15118 			if (yych <= '.') {
15119 				if (yych <= 0x1F) {
15120 					if (yych == '\t') goto yy1027;
15121 					goto yy55;
15122 				} else {
15123 					if (yych <= ' ') goto yy1027;
15124 					if (yych <= ',') goto yy55;
15125 					goto yy551;
15126 				}
15127 			} else {
15128 				if (yych <= 'C') {
15129 					if (yych == 'A') goto yy548;
15130 					goto yy55;
15131 				} else {
15132 					if (yych <= 'D') goto yy440;
15133 					if (yych == 'F') goto yy441;
15134 					goto yy55;
15135 				}
15136 			}
15137 		} else {
15138 			if (yych <= 'N') {
15139 				if (yych <= 'J') {
15140 					if (yych <= 'H') goto yy64;
15141 					if (yych <= 'I') goto yy449;
15142 					goto yy453;
15143 				} else {
15144 					if (yych <= 'L') goto yy55;
15145 					if (yych <= 'M') goto yy437;
15146 					goto yy456;
15147 				}
15148 			} else {
15149 				if (yych <= 'S') {
15150 					if (yych <= 'O') goto yy455;
15151 					if (yych <= 'R') goto yy55;
15152 					goto yy438;
15153 				} else {
15154 					if (yych <= 'T') goto yy69;
15155 					if (yych <= 'U') goto yy62;
15156 					if (yych <= 'V') goto yy451;
15157 					goto yy68;
15158 				}
15159 			}
15160 		}
15161 	} else {
15162 		if (yych <= 'l') {
15163 			if (yych <= 'd') {
15164 				if (yych <= '`') {
15165 					if (yych <= 'X') goto yy452;
15166 					if (yych <= 'Y') goto yy67;
15167 					goto yy55;
15168 				} else {
15169 					if (yych <= 'a') goto yy548;
15170 					if (yych <= 'c') goto yy55;
15171 					goto yy440;
15172 				}
15173 			} else {
15174 				if (yych <= 'g') {
15175 					if (yych == 'f') goto yy441;
15176 					goto yy55;
15177 				} else {
15178 					if (yych <= 'h') goto yy64;
15179 					if (yych == 'j') goto yy453;
15180 					goto yy55;
15181 				}
15182 			}
15183 		} else {
15184 			if (yych <= 'u') {
15185 				if (yych <= 'o') {
15186 					if (yych <= 'm') goto yy437;
15187 					if (yych <= 'n') goto yy456;
15188 					goto yy455;
15189 				} else {
15190 					if (yych <= 'r') goto yy55;
15191 					if (yych <= 's') goto yy438;
15192 					if (yych <= 't') goto yy69;
15193 					goto yy62;
15194 				}
15195 			} else {
15196 				if (yych <= 'x') {
15197 					if (yych == 'w') goto yy68;
15198 					goto yy55;
15199 				} else {
15200 					if (yych <= 'y') goto yy67;
15201 					if (yych == 0xC2) goto yy61;
15202 					goto yy55;
15203 				}
15204 			}
15205 		}
15206 	}
15207 yy1029:
15208 	YYDEBUG(1029, *YYCURSOR);
15209 	yych = *++YYCURSOR;
15210 	if (yych <= '.') {
15211 		if (yych <= ',') goto yy55;
15212 		if (yych <= '-') goto yy629;
15213 		goto yy576;
15214 	} else {
15215 		if (yych <= '/') goto yy55;
15216 		if (yych <= '9') goto yy1031;
15217 		goto yy55;
15218 	}
15219 yy1030:
15220 	YYDEBUG(1030, *YYCURSOR);
15221 	yych = *++YYCURSOR;
15222 	if (yych <= '.') {
15223 		if (yych <= ',') goto yy55;
15224 		if (yych <= '-') goto yy629;
15225 		goto yy576;
15226 	} else {
15227 		if (yych <= '/') goto yy55;
15228 		if (yych >= '3') goto yy55;
15229 	}
15230 yy1031:
15231 	YYDEBUG(1031, *YYCURSOR);
15232 	yych = *++YYCURSOR;
15233 	if (yych <= ',') goto yy55;
15234 	if (yych <= '-') goto yy1032;
15235 	if (yych <= '.') goto yy576;
15236 	goto yy55;
15237 yy1032:
15238 	YYDEBUG(1032, *YYCURSOR);
15239 	yych = *++YYCURSOR;
15240 	if (yych <= '2') {
15241 		if (yych <= '/') goto yy55;
15242 		if (yych >= '1') goto yy1034;
15243 	} else {
15244 		if (yych <= '3') goto yy1035;
15245 		if (yych <= '9') goto yy633;
15246 		goto yy55;
15247 	}
15248 	YYDEBUG(1033, *YYCURSOR);
15249 	yyaccept = 12;
15250 	yych = *(YYMARKER = ++YYCURSOR);
15251 	if (yych <= 'n') {
15252 		if (yych <= '/') goto yy631;
15253 		if (yych <= '9') goto yy1036;
15254 		if (yych <= 'm') goto yy631;
15255 		goto yy635;
15256 	} else {
15257 		if (yych <= 'r') {
15258 			if (yych <= 'q') goto yy631;
15259 			goto yy636;
15260 		} else {
15261 			if (yych <= 's') goto yy634;
15262 			if (yych <= 't') goto yy637;
15263 			goto yy631;
15264 		}
15265 	}
15266 yy1034:
15267 	YYDEBUG(1034, *YYCURSOR);
15268 	yyaccept = 12;
15269 	yych = *(YYMARKER = ++YYCURSOR);
15270 	if (yych <= 'n') {
15271 		if (yych <= '/') goto yy631;
15272 		if (yych <= '9') goto yy1036;
15273 		if (yych <= 'm') goto yy631;
15274 		goto yy635;
15275 	} else {
15276 		if (yych <= 'r') {
15277 			if (yych <= 'q') goto yy631;
15278 			goto yy636;
15279 		} else {
15280 			if (yych <= 's') goto yy634;
15281 			if (yych <= 't') goto yy637;
15282 			goto yy631;
15283 		}
15284 	}
15285 yy1035:
15286 	YYDEBUG(1035, *YYCURSOR);
15287 	yyaccept = 12;
15288 	yych = *(YYMARKER = ++YYCURSOR);
15289 	if (yych <= 'n') {
15290 		if (yych <= '1') {
15291 			if (yych <= '/') goto yy631;
15292 		} else {
15293 			if (yych <= '9') goto yy578;
15294 			if (yych <= 'm') goto yy631;
15295 			goto yy635;
15296 		}
15297 	} else {
15298 		if (yych <= 'r') {
15299 			if (yych <= 'q') goto yy631;
15300 			goto yy636;
15301 		} else {
15302 			if (yych <= 's') goto yy634;
15303 			if (yych <= 't') goto yy637;
15304 			goto yy631;
15305 		}
15306 	}
15307 yy1036:
15308 	YYDEBUG(1036, *YYCURSOR);
15309 	yyaccept = 14;
15310 	yych = *(YYMARKER = ++YYCURSOR);
15311 	if (yych <= 'n') {
15312 		if (yych <= '/') goto yy738;
15313 		if (yych <= '9') goto yy579;
15314 		if (yych <= 'm') goto yy738;
15315 		goto yy635;
15316 	} else {
15317 		if (yych <= 'r') {
15318 			if (yych <= 'q') goto yy738;
15319 			goto yy636;
15320 		} else {
15321 			if (yych <= 's') goto yy634;
15322 			if (yych <= 't') goto yy637;
15323 			goto yy738;
15324 		}
15325 	}
15326 yy1037:
15327 	YYDEBUG(1037, *YYCURSOR);
15328 	yych = *++YYCURSOR;
15329 	if (yych <= '9') {
15330 		if (yych <= '-') {
15331 			if (yych == '\t') goto yy1026;
15332 			if (yych <= ',') goto yy1028;
15333 			goto yy1025;
15334 		} else {
15335 			if (yych <= '.') goto yy1038;
15336 			if (yych <= '/') goto yy704;
15337 			if (yych <= '5') goto yy1040;
15338 			goto yy715;
15339 		}
15340 	} else {
15341 		if (yych <= 'q') {
15342 			if (yych <= ':') goto yy1039;
15343 			if (yych == 'n') goto yy444;
15344 			goto yy1028;
15345 		} else {
15346 			if (yych <= 'r') goto yy445;
15347 			if (yych <= 's') goto yy439;
15348 			if (yych <= 't') goto yy442;
15349 			goto yy1028;
15350 		}
15351 	}
15352 yy1038:
15353 	YYDEBUG(1038, *YYCURSOR);
15354 	yych = *++YYCURSOR;
15355 	if (yych <= '1') {
15356 		if (yych <= '/') goto yy552;
15357 		if (yych <= '0') goto yy1062;
15358 		goto yy1063;
15359 	} else {
15360 		if (yych <= '5') goto yy1064;
15361 		if (yych <= '9') goto yy1065;
15362 		goto yy552;
15363 	}
15364 yy1039:
15365 	YYDEBUG(1039, *YYCURSOR);
15366 	yych = *++YYCURSOR;
15367 	if (yych <= '/') goto yy55;
15368 	if (yych <= '5') goto yy1057;
15369 	if (yych <= '9') goto yy1058;
15370 	goto yy55;
15371 yy1040:
15372 	YYDEBUG(1040, *YYCURSOR);
15373 	yych = *++YYCURSOR;
15374 	if (yych == '-') goto yy759;
15375 	if (yych <= '/') goto yy59;
15376 	if (yych >= ':') goto yy59;
15377 	YYDEBUG(1041, *YYCURSOR);
15378 	yyaccept = 23;
15379 	yych = *(YYMARKER = ++YYCURSOR);
15380 	if (yych <= 'L') {
15381 		if (yych <= '3') {
15382 			if (yych <= '-') {
15383 				if (yych <= 0x1F) {
15384 					if (yych == '\t') goto yy765;
15385 				} else {
15386 					if (yych <= ' ') goto yy765;
15387 					if (yych >= '-') goto yy762;
15388 				}
15389 			} else {
15390 				if (yych <= '0') {
15391 					if (yych <= '.') goto yy766;
15392 					if (yych <= '/') goto yy763;
15393 					goto yy1043;
15394 				} else {
15395 					if (yych <= '1') goto yy1044;
15396 					if (yych <= '2') goto yy1045;
15397 					goto yy1046;
15398 				}
15399 			}
15400 		} else {
15401 			if (yych <= 'A') {
15402 				if (yych <= '9') {
15403 					if (yych <= '5') goto yy1047;
15404 					if (yych <= '6') goto yy1048;
15405 					goto yy73;
15406 				} else {
15407 					if (yych <= ':') goto yy781;
15408 					if (yych >= 'A') goto yy765;
15409 				}
15410 			} else {
15411 				if (yych <= 'E') {
15412 					if (yych == 'D') goto yy765;
15413 				} else {
15414 					if (yych == 'G') goto yy1042;
15415 					if (yych <= 'J') goto yy765;
15416 				}
15417 			}
15418 		}
15419 	} else {
15420 		if (yych <= 'h') {
15421 			if (yych <= '`') {
15422 				if (yych <= 'V') {
15423 					if (yych <= 'O') goto yy765;
15424 					if (yych >= 'S') goto yy765;
15425 				} else {
15426 					if (yych <= 'W') goto yy784;
15427 					if (yych <= 'Y') goto yy765;
15428 				}
15429 			} else {
15430 				if (yych <= 'd') {
15431 					if (yych <= 'a') goto yy765;
15432 					if (yych >= 'd') goto yy765;
15433 				} else {
15434 					if (yych == 'f') goto yy765;
15435 					if (yych >= 'h') goto yy765;
15436 				}
15437 			}
15438 		} else {
15439 			if (yych <= 'u') {
15440 				if (yych <= 'l') {
15441 					if (yych == 'j') goto yy765;
15442 				} else {
15443 					if (yych <= 'o') goto yy765;
15444 					if (yych >= 's') goto yy765;
15445 				}
15446 			} else {
15447 				if (yych <= 'x') {
15448 					if (yych == 'w') goto yy765;
15449 				} else {
15450 					if (yych <= 'y') goto yy765;
15451 					if (yych == 0xC2) goto yy765;
15452 				}
15453 			}
15454 		}
15455 	}
15456 yy1042:
15457 	YYDEBUG(1042, *YYCURSOR);
15458 #line 1250 "parse_date.re"
15459 	{
15460 		DEBUG_OUTPUT("gnunocolon");
15461 		TIMELIB_INIT;
15462 		switch (s->time->have_time) {
15463 			case 0:
15464 				s->time->h = timelib_get_nr((char **) &ptr, 2);
15465 				s->time->i = timelib_get_nr((char **) &ptr, 2);
15466 				s->time->s = 0;
15467 				break;
15468 			case 1:
15469 				s->time->y = timelib_get_nr((char **) &ptr, 4);
15470 				break;
15471 			default:
15472 				TIMELIB_DEINIT;
15473 				add_error(s, TIMELIB_ERR_DOUBLE_TIME, "Double time specification");
15474 				return TIMELIB_ERROR;
15475 		}
15476 		s->time->have_time++;
15477 		TIMELIB_DEINIT;
15478 		return TIMELIB_GNU_NOCOLON;
15479 	}
15480 #line 15478 "<stdout>"
15481 yy1043:
15482 	YYDEBUG(1043, *YYCURSOR);
15483 	yych = *++YYCURSOR;
15484 	if (yych <= '/') goto yy59;
15485 	if (yych <= '0') goto yy1055;
15486 	if (yych <= '9') goto yy1056;
15487 	goto yy59;
15488 yy1044:
15489 	YYDEBUG(1044, *YYCURSOR);
15490 	yych = *++YYCURSOR;
15491 	if (yych <= '/') goto yy59;
15492 	if (yych <= '2') goto yy1054;
15493 	if (yych <= '9') goto yy1053;
15494 	goto yy59;
15495 yy1045:
15496 	YYDEBUG(1045, *YYCURSOR);
15497 	yych = *++YYCURSOR;
15498 	if (yych <= '/') goto yy59;
15499 	if (yych <= '9') goto yy1053;
15500 	goto yy59;
15501 yy1046:
15502 	YYDEBUG(1046, *YYCURSOR);
15503 	yych = *++YYCURSOR;
15504 	if (yych <= '/') goto yy59;
15505 	if (yych <= '5') goto yy1051;
15506 	if (yych <= '6') goto yy1052;
15507 	if (yych <= '9') goto yy1049;
15508 	goto yy59;
15509 yy1047:
15510 	YYDEBUG(1047, *YYCURSOR);
15511 	yych = *++YYCURSOR;
15512 	if (yych <= '/') goto yy59;
15513 	if (yych <= '9') goto yy1049;
15514 	goto yy59;
15515 yy1048:
15516 	YYDEBUG(1048, *YYCURSOR);
15517 	yych = *++YYCURSOR;
15518 	if (yych <= '/') goto yy59;
15519 	if (yych <= '0') goto yy1049;
15520 	if (yych <= '9') goto yy74;
15521 	goto yy59;
15522 yy1049:
15523 	YYDEBUG(1049, *YYCURSOR);
15524 	yyaccept = 24;
15525 	yych = *(YYMARKER = ++YYCURSOR);
15526 	if (yych <= 'W') {
15527 		if (yych <= 'E') {
15528 			if (yych <= ' ') {
15529 				if (yych == '\t') goto yy59;
15530 				if (yych >= ' ') goto yy59;
15531 			} else {
15532 				if (yych <= '9') {
15533 					if (yych >= '0') goto yy75;
15534 				} else {
15535 					if (yych == 'D') goto yy59;
15536 				}
15537 			}
15538 		} else {
15539 			if (yych <= 'L') {
15540 				if (yych == 'G') goto yy1050;
15541 				if (yych <= 'H') goto yy59;
15542 			} else {
15543 				if (yych <= 'R') {
15544 					if (yych <= 'M') goto yy59;
15545 				} else {
15546 					if (yych != 'V') goto yy59;
15547 				}
15548 			}
15549 		}
15550 	} else {
15551 		if (yych <= 'l') {
15552 			if (yych <= 'd') {
15553 				if (yych == 'Y') goto yy59;
15554 				if (yych >= 'd') goto yy59;
15555 			} else {
15556 				if (yych <= 'f') {
15557 					if (yych >= 'f') goto yy59;
15558 				} else {
15559 					if (yych == 'h') goto yy59;
15560 				}
15561 			}
15562 		} else {
15563 			if (yych <= 'w') {
15564 				if (yych <= 'r') {
15565 					if (yych <= 'm') goto yy59;
15566 				} else {
15567 					if (yych != 'v') goto yy59;
15568 				}
15569 			} else {
15570 				if (yych <= 'y') {
15571 					if (yych >= 'y') goto yy59;
15572 				} else {
15573 					if (yych == 0xC2) goto yy59;
15574 				}
15575 			}
15576 		}
15577 	}
15578 yy1050:
15579 	YYDEBUG(1050, *YYCURSOR);
15580 #line 1296 "parse_date.re"
15581 	{
15582 		int tz_not_found;
15583 		DEBUG_OUTPUT("iso8601nocolon");
15584 		TIMELIB_INIT;
15585 		TIMELIB_HAVE_TIME();
15586 		s->time->h = timelib_get_nr((char **) &ptr, 2);
15587 		s->time->i = timelib_get_nr((char **) &ptr, 2);
15588 		s->time->s = timelib_get_nr((char **) &ptr, 2);
15589 
15590 		if (*ptr != '\0') {
15591 			s->time->z = timelib_parse_zone((char **) &ptr, &s->time->dst, s->time, &tz_not_found, s->tzdb, tz_get_wrapper);
15592 			if (tz_not_found) {
15593 				add_error(s, TIMELIB_ERR_TZID_NOT_FOUND, "The timezone could not be found in the database");
15594 			}
15595 		}
15596 		TIMELIB_DEINIT;
15597 		return TIMELIB_ISO_NOCOLON;
15598 	}
15599 #line 15597 "<stdout>"
15600 yy1051:
15601 	YYDEBUG(1051, *YYCURSOR);
15602 	yyaccept = 24;
15603 	yych = *(YYMARKER = ++YYCURSOR);
15604 	if (yych <= 'W') {
15605 		if (yych <= 'E') {
15606 			if (yych <= ' ') {
15607 				if (yych == '\t') goto yy59;
15608 				if (yych <= 0x1F) goto yy1050;
15609 				goto yy59;
15610 			} else {
15611 				if (yych <= '9') {
15612 					if (yych <= '/') goto yy1050;
15613 					goto yy795;
15614 				} else {
15615 					if (yych == 'D') goto yy59;
15616 					goto yy1050;
15617 				}
15618 			}
15619 		} else {
15620 			if (yych <= 'L') {
15621 				if (yych == 'G') goto yy1050;
15622 				if (yych <= 'H') goto yy59;
15623 				goto yy1050;
15624 			} else {
15625 				if (yych <= 'R') {
15626 					if (yych <= 'M') goto yy59;
15627 					goto yy1050;
15628 				} else {
15629 					if (yych == 'V') goto yy1050;
15630 					goto yy59;
15631 				}
15632 			}
15633 		}
15634 	} else {
15635 		if (yych <= 'l') {
15636 			if (yych <= 'd') {
15637 				if (yych == 'Y') goto yy59;
15638 				if (yych <= 'c') goto yy1050;
15639 				goto yy59;
15640 			} else {
15641 				if (yych <= 'f') {
15642 					if (yych <= 'e') goto yy1050;
15643 					goto yy59;
15644 				} else {
15645 					if (yych == 'h') goto yy59;
15646 					goto yy1050;
15647 				}
15648 			}
15649 		} else {
15650 			if (yych <= 'w') {
15651 				if (yych <= 'r') {
15652 					if (yych <= 'm') goto yy59;
15653 					goto yy1050;
15654 				} else {
15655 					if (yych == 'v') goto yy1050;
15656 					goto yy59;
15657 				}
15658 			} else {
15659 				if (yych <= 'y') {
15660 					if (yych <= 'x') goto yy1050;
15661 					goto yy59;
15662 				} else {
15663 					if (yych == 0xC2) goto yy59;
15664 					goto yy1050;
15665 				}
15666 			}
15667 		}
15668 	}
15669 yy1052:
15670 	YYDEBUG(1052, *YYCURSOR);
15671 	yyaccept = 24;
15672 	yych = *(YYMARKER = ++YYCURSOR);
15673 	if (yych <= 'W') {
15674 		if (yych <= 'D') {
15675 			if (yych <= ' ') {
15676 				if (yych == '\t') goto yy59;
15677 				if (yych <= 0x1F) goto yy1050;
15678 				goto yy59;
15679 			} else {
15680 				if (yych <= '6') {
15681 					if (yych <= '/') goto yy1050;
15682 					goto yy795;
15683 				} else {
15684 					if (yych <= '9') goto yy75;
15685 					if (yych <= 'C') goto yy1050;
15686 					goto yy59;
15687 				}
15688 			}
15689 		} else {
15690 			if (yych <= 'L') {
15691 				if (yych <= 'F') {
15692 					if (yych <= 'E') goto yy1050;
15693 					goto yy59;
15694 				} else {
15695 					if (yych == 'H') goto yy59;
15696 					goto yy1050;
15697 				}
15698 			} else {
15699 				if (yych <= 'R') {
15700 					if (yych <= 'M') goto yy59;
15701 					goto yy1050;
15702 				} else {
15703 					if (yych == 'V') goto yy1050;
15704 					goto yy59;
15705 				}
15706 			}
15707 		}
15708 	} else {
15709 		if (yych <= 'l') {
15710 			if (yych <= 'd') {
15711 				if (yych == 'Y') goto yy59;
15712 				if (yych <= 'c') goto yy1050;
15713 				goto yy59;
15714 			} else {
15715 				if (yych <= 'f') {
15716 					if (yych <= 'e') goto yy1050;
15717 					goto yy59;
15718 				} else {
15719 					if (yych == 'h') goto yy59;
15720 					goto yy1050;
15721 				}
15722 			}
15723 		} else {
15724 			if (yych <= 'w') {
15725 				if (yych <= 'r') {
15726 					if (yych <= 'm') goto yy59;
15727 					goto yy1050;
15728 				} else {
15729 					if (yych == 'v') goto yy1050;
15730 					goto yy59;
15731 				}
15732 			} else {
15733 				if (yych <= 'y') {
15734 					if (yych <= 'x') goto yy1050;
15735 					goto yy59;
15736 				} else {
15737 					if (yych == 0xC2) goto yy59;
15738 					goto yy1050;
15739 				}
15740 			}
15741 		}
15742 	}
15743 yy1053:
15744 	YYDEBUG(1053, *YYCURSOR);
15745 	yyaccept = 24;
15746 	yych = *(YYMARKER = ++YYCURSOR);
15747 	if (yych <= 'W') {
15748 		if (yych <= 'E') {
15749 			if (yych <= ' ') {
15750 				if (yych == '\t') goto yy59;
15751 				if (yych <= 0x1F) goto yy1050;
15752 				goto yy59;
15753 			} else {
15754 				if (yych <= '9') {
15755 					if (yych <= '/') goto yy1050;
15756 					goto yy795;
15757 				} else {
15758 					if (yych == 'D') goto yy59;
15759 					goto yy1050;
15760 				}
15761 			}
15762 		} else {
15763 			if (yych <= 'L') {
15764 				if (yych == 'G') goto yy1050;
15765 				if (yych <= 'H') goto yy59;
15766 				goto yy1050;
15767 			} else {
15768 				if (yych <= 'R') {
15769 					if (yych <= 'M') goto yy59;
15770 					goto yy1050;
15771 				} else {
15772 					if (yych == 'V') goto yy1050;
15773 					goto yy59;
15774 				}
15775 			}
15776 		}
15777 	} else {
15778 		if (yych <= 'l') {
15779 			if (yych <= 'd') {
15780 				if (yych == 'Y') goto yy59;
15781 				if (yych <= 'c') goto yy1050;
15782 				goto yy59;
15783 			} else {
15784 				if (yych <= 'f') {
15785 					if (yych <= 'e') goto yy1050;
15786 					goto yy59;
15787 				} else {
15788 					if (yych == 'h') goto yy59;
15789 					goto yy1050;
15790 				}
15791 			}
15792 		} else {
15793 			if (yych <= 'w') {
15794 				if (yych <= 'r') {
15795 					if (yych <= 'm') goto yy59;
15796 					goto yy1050;
15797 				} else {
15798 					if (yych == 'v') goto yy1050;
15799 					goto yy59;
15800 				}
15801 			} else {
15802 				if (yych <= 'y') {
15803 					if (yych <= 'x') goto yy1050;
15804 					goto yy59;
15805 				} else {
15806 					if (yych == 0xC2) goto yy59;
15807 					goto yy1050;
15808 				}
15809 			}
15810 		}
15811 	}
15812 yy1054:
15813 	YYDEBUG(1054, *YYCURSOR);
15814 	yyaccept = 24;
15815 	yych = *(YYMARKER = ++YYCURSOR);
15816 	if (yych <= 'V') {
15817 		if (yych <= 'C') {
15818 			if (yych <= '/') {
15819 				if (yych <= '\t') {
15820 					if (yych <= 0x08) goto yy1050;
15821 					goto yy59;
15822 				} else {
15823 					if (yych == ' ') goto yy59;
15824 					goto yy1050;
15825 				}
15826 			} else {
15827 				if (yych <= '2') {
15828 					if (yych <= '0') goto yy819;
15829 					goto yy820;
15830 				} else {
15831 					if (yych <= '3') goto yy821;
15832 					if (yych <= '9') goto yy795;
15833 					goto yy1050;
15834 				}
15835 			}
15836 		} else {
15837 			if (yych <= 'H') {
15838 				if (yych <= 'E') {
15839 					if (yych <= 'D') goto yy59;
15840 					goto yy1050;
15841 				} else {
15842 					if (yych == 'G') goto yy1050;
15843 					goto yy59;
15844 				}
15845 			} else {
15846 				if (yych <= 'M') {
15847 					if (yych <= 'L') goto yy1050;
15848 					goto yy59;
15849 				} else {
15850 					if (yych <= 'R') goto yy1050;
15851 					if (yych <= 'U') goto yy59;
15852 					goto yy1050;
15853 				}
15854 			}
15855 		}
15856 	} else {
15857 		if (yych <= 'l') {
15858 			if (yych <= 'd') {
15859 				if (yych <= 'X') {
15860 					if (yych <= 'W') goto yy59;
15861 					goto yy1050;
15862 				} else {
15863 					if (yych <= 'Y') goto yy59;
15864 					if (yych <= 'c') goto yy1050;
15865 					goto yy59;
15866 				}
15867 			} else {
15868 				if (yych <= 'f') {
15869 					if (yych <= 'e') goto yy1050;
15870 					goto yy59;
15871 				} else {
15872 					if (yych == 'h') goto yy59;
15873 					goto yy1050;
15874 				}
15875 			}
15876 		} else {
15877 			if (yych <= 'w') {
15878 				if (yych <= 'r') {
15879 					if (yych <= 'm') goto yy59;
15880 					goto yy1050;
15881 				} else {
15882 					if (yych == 'v') goto yy1050;
15883 					goto yy59;
15884 				}
15885 			} else {
15886 				if (yych <= 'y') {
15887 					if (yych <= 'x') goto yy1050;
15888 					goto yy59;
15889 				} else {
15890 					if (yych == 0xC2) goto yy59;
15891 					goto yy1050;
15892 				}
15893 			}
15894 		}
15895 	}
15896 yy1055:
15897 	YYDEBUG(1055, *YYCURSOR);
15898 	yyaccept = 24;
15899 	yych = *(YYMARKER = ++YYCURSOR);
15900 	if (yych <= 'V') {
15901 		if (yych <= 'C') {
15902 			if (yych <= '/') {
15903 				if (yych <= '\t') {
15904 					if (yych <= 0x08) goto yy1050;
15905 					goto yy59;
15906 				} else {
15907 					if (yych == ' ') goto yy59;
15908 					goto yy1050;
15909 				}
15910 			} else {
15911 				if (yych <= '2') {
15912 					if (yych <= '0') goto yy851;
15913 					goto yy820;
15914 				} else {
15915 					if (yych <= '3') goto yy821;
15916 					if (yych <= '9') goto yy795;
15917 					goto yy1050;
15918 				}
15919 			}
15920 		} else {
15921 			if (yych <= 'H') {
15922 				if (yych <= 'E') {
15923 					if (yych <= 'D') goto yy59;
15924 					goto yy1050;
15925 				} else {
15926 					if (yych == 'G') goto yy1050;
15927 					goto yy59;
15928 				}
15929 			} else {
15930 				if (yych <= 'M') {
15931 					if (yych <= 'L') goto yy1050;
15932 					goto yy59;
15933 				} else {
15934 					if (yych <= 'R') goto yy1050;
15935 					if (yych <= 'U') goto yy59;
15936 					goto yy1050;
15937 				}
15938 			}
15939 		}
15940 	} else {
15941 		if (yych <= 'l') {
15942 			if (yych <= 'd') {
15943 				if (yych <= 'X') {
15944 					if (yych <= 'W') goto yy59;
15945 					goto yy1050;
15946 				} else {
15947 					if (yych <= 'Y') goto yy59;
15948 					if (yych <= 'c') goto yy1050;
15949 					goto yy59;
15950 				}
15951 			} else {
15952 				if (yych <= 'f') {
15953 					if (yych <= 'e') goto yy1050;
15954 					goto yy59;
15955 				} else {
15956 					if (yych == 'h') goto yy59;
15957 					goto yy1050;
15958 				}
15959 			}
15960 		} else {
15961 			if (yych <= 'w') {
15962 				if (yych <= 'r') {
15963 					if (yych <= 'm') goto yy59;
15964 					goto yy1050;
15965 				} else {
15966 					if (yych == 'v') goto yy1050;
15967 					goto yy59;
15968 				}
15969 			} else {
15970 				if (yych <= 'y') {
15971 					if (yych <= 'x') goto yy1050;
15972 					goto yy59;
15973 				} else {
15974 					if (yych == 0xC2) goto yy59;
15975 					goto yy1050;
15976 				}
15977 			}
15978 		}
15979 	}
15980 yy1056:
15981 	YYDEBUG(1056, *YYCURSOR);
15982 	yyaccept = 24;
15983 	yych = *(YYMARKER = ++YYCURSOR);
15984 	if (yych <= 'V') {
15985 		if (yych <= 'C') {
15986 			if (yych <= '/') {
15987 				if (yych <= '\t') {
15988 					if (yych <= 0x08) goto yy1050;
15989 					goto yy59;
15990 				} else {
15991 					if (yych == ' ') goto yy59;
15992 					goto yy1050;
15993 				}
15994 			} else {
15995 				if (yych <= '2') {
15996 					if (yych <= '0') goto yy819;
15997 					goto yy820;
15998 				} else {
15999 					if (yych <= '3') goto yy821;
16000 					if (yych <= '9') goto yy795;
16001 					goto yy1050;
16002 				}
16003 			}
16004 		} else {
16005 			if (yych <= 'H') {
16006 				if (yych <= 'E') {
16007 					if (yych <= 'D') goto yy59;
16008 					goto yy1050;
16009 				} else {
16010 					if (yych == 'G') goto yy1050;
16011 					goto yy59;
16012 				}
16013 			} else {
16014 				if (yych <= 'M') {
16015 					if (yych <= 'L') goto yy1050;
16016 					goto yy59;
16017 				} else {
16018 					if (yych <= 'R') goto yy1050;
16019 					if (yych <= 'U') goto yy59;
16020 					goto yy1050;
16021 				}
16022 			}
16023 		}
16024 	} else {
16025 		if (yych <= 'l') {
16026 			if (yych <= 'd') {
16027 				if (yych <= 'X') {
16028 					if (yych <= 'W') goto yy59;
16029 					goto yy1050;
16030 				} else {
16031 					if (yych <= 'Y') goto yy59;
16032 					if (yych <= 'c') goto yy1050;
16033 					goto yy59;
16034 				}
16035 			} else {
16036 				if (yych <= 'f') {
16037 					if (yych <= 'e') goto yy1050;
16038 					goto yy59;
16039 				} else {
16040 					if (yych == 'h') goto yy59;
16041 					goto yy1050;
16042 				}
16043 			}
16044 		} else {
16045 			if (yych <= 'w') {
16046 				if (yych <= 'r') {
16047 					if (yych <= 'm') goto yy59;
16048 					goto yy1050;
16049 				} else {
16050 					if (yych == 'v') goto yy1050;
16051 					goto yy59;
16052 				}
16053 			} else {
16054 				if (yych <= 'y') {
16055 					if (yych <= 'x') goto yy1050;
16056 					goto yy59;
16057 				} else {
16058 					if (yych == 0xC2) goto yy59;
16059 					goto yy1050;
16060 				}
16061 			}
16062 		}
16063 	}
16064 yy1057:
16065 	YYDEBUG(1057, *YYCURSOR);
16066 	yyaccept = 10;
16067 	yych = *(YYMARKER = ++YYCURSOR);
16068 	if (yych <= '/') {
16069 		if (yych == '.') goto yy1059;
16070 		goto yy465;
16071 	} else {
16072 		if (yych <= '9') goto yy1058;
16073 		if (yych <= ':') goto yy1059;
16074 		goto yy465;
16075 	}
16076 yy1058:
16077 	YYDEBUG(1058, *YYCURSOR);
16078 	yyaccept = 10;
16079 	yych = *(YYMARKER = ++YYCURSOR);
16080 	if (yych == '.') goto yy1059;
16081 	if (yych != ':') goto yy465;
16082 yy1059:
16083 	YYDEBUG(1059, *YYCURSOR);
16084 	yych = *++YYCURSOR;
16085 	if (yych <= '/') goto yy55;
16086 	if (yych <= '5') goto yy1060;
16087 	if (yych <= '6') goto yy1061;
16088 	if (yych <= '9') goto yy470;
16089 	goto yy55;
16090 yy1060:
16091 	YYDEBUG(1060, *YYCURSOR);
16092 	yyaccept = 10;
16093 	yych = *(YYMARKER = ++YYCURSOR);
16094 	if (yych == '.') goto yy471;
16095 	if (yych <= '/') goto yy465;
16096 	if (yych <= '9') goto yy470;
16097 	goto yy465;
16098 yy1061:
16099 	YYDEBUG(1061, *YYCURSOR);
16100 	yyaccept = 10;
16101 	yych = *(YYMARKER = ++YYCURSOR);
16102 	if (yych == '.') goto yy471;
16103 	if (yych == '0') goto yy470;
16104 	goto yy465;
16105 yy1062:
16106 	YYDEBUG(1062, *YYCURSOR);
16107 	yyaccept = 10;
16108 	yych = *(YYMARKER = ++YYCURSOR);
16109 	if (yych <= '.') {
16110 		if (yych <= ',') goto yy465;
16111 		if (yych <= '-') goto yy576;
16112 		goto yy1066;
16113 	} else {
16114 		if (yych <= '/') goto yy465;
16115 		if (yych <= '9') goto yy1065;
16116 		if (yych <= ':') goto yy1059;
16117 		goto yy465;
16118 	}
16119 yy1063:
16120 	YYDEBUG(1063, *YYCURSOR);
16121 	yyaccept = 10;
16122 	yych = *(YYMARKER = ++YYCURSOR);
16123 	if (yych <= '/') {
16124 		if (yych <= ',') goto yy465;
16125 		if (yych <= '-') goto yy576;
16126 		if (yych <= '.') goto yy1066;
16127 		goto yy465;
16128 	} else {
16129 		if (yych <= '2') goto yy1065;
16130 		if (yych <= '9') goto yy1058;
16131 		if (yych <= ':') goto yy1059;
16132 		goto yy465;
16133 	}
16134 yy1064:
16135 	YYDEBUG(1064, *YYCURSOR);
16136 	yyaccept = 10;
16137 	yych = *(YYMARKER = ++YYCURSOR);
16138 	if (yych <= '.') {
16139 		if (yych <= ',') goto yy465;
16140 		if (yych <= '-') goto yy576;
16141 		goto yy1066;
16142 	} else {
16143 		if (yych <= '/') goto yy465;
16144 		if (yych <= '9') goto yy1058;
16145 		if (yych <= ':') goto yy1059;
16146 		goto yy465;
16147 	}
16148 yy1065:
16149 	YYDEBUG(1065, *YYCURSOR);
16150 	yyaccept = 10;
16151 	yych = *(YYMARKER = ++YYCURSOR);
16152 	if (yych <= '.') {
16153 		if (yych <= ',') goto yy465;
16154 		if (yych <= '-') goto yy576;
16155 	} else {
16156 		if (yych == ':') goto yy1059;
16157 		goto yy465;
16158 	}
16159 yy1066:
16160 	YYDEBUG(1066, *YYCURSOR);
16161 	yych = *++YYCURSOR;
16162 	if (yych <= '/') goto yy55;
16163 	if (yych <= '5') goto yy1067;
16164 	if (yych <= '6') goto yy1068;
16165 	if (yych <= '9') goto yy584;
16166 	goto yy55;
16167 yy1067:
16168 	YYDEBUG(1067, *YYCURSOR);
16169 	yyaccept = 10;
16170 	yych = *(YYMARKER = ++YYCURSOR);
16171 	if (yych == '.') goto yy471;
16172 	if (yych <= '/') goto yy465;
16173 	if (yych <= '9') goto yy1069;
16174 	goto yy465;
16175 yy1068:
16176 	YYDEBUG(1068, *YYCURSOR);
16177 	yyaccept = 10;
16178 	yych = *(YYMARKER = ++YYCURSOR);
16179 	if (yych <= '/') {
16180 		if (yych == '.') goto yy471;
16181 		goto yy465;
16182 	} else {
16183 		if (yych <= '0') goto yy1069;
16184 		if (yych <= '9') goto yy585;
16185 		goto yy465;
16186 	}
16187 yy1069:
16188 	YYDEBUG(1069, *YYCURSOR);
16189 	yyaccept = 10;
16190 	yych = *(YYMARKER = ++YYCURSOR);
16191 	if (yych == '.') goto yy471;
16192 	if (yych <= '/') goto yy465;
16193 	if (yych <= '9') goto yy579;
16194 	goto yy465;
16195 yy1070:
16196 	YYDEBUG(1070, *YYCURSOR);
16197 	yych = *++YYCURSOR;
16198 	if (yych <= '9') {
16199 		if (yych <= '-') {
16200 			if (yych == '\t') goto yy434;
16201 			if (yych <= ',') goto yy436;
16202 			goto yy1025;
16203 		} else {
16204 			if (yych <= '.') goto yy448;
16205 			if (yych <= '/') goto yy446;
16206 			if (yych <= '5') goto yy1040;
16207 			goto yy715;
16208 		}
16209 	} else {
16210 		if (yych <= 'q') {
16211 			if (yych <= ':') goto yy457;
16212 			if (yych == 'n') goto yy444;
16213 			goto yy436;
16214 		} else {
16215 			if (yych <= 'r') goto yy445;
16216 			if (yych <= 's') goto yy439;
16217 			if (yych <= 't') goto yy442;
16218 			goto yy436;
16219 		}
16220 	}
16221 yy1071:
16222 	YYDEBUG(1071, *YYCURSOR);
16223 	yych = *++YYCURSOR;
16224 	if (yych <= '9') {
16225 		if (yych <= '-') {
16226 			if (yych == '\t') goto yy1026;
16227 			if (yych <= ',') goto yy1028;
16228 			goto yy1025;
16229 		} else {
16230 			if (yych <= '.') goto yy1038;
16231 			if (yych <= '/') goto yy446;
16232 			if (yych <= '5') goto yy1040;
16233 			goto yy715;
16234 		}
16235 	} else {
16236 		if (yych <= 'q') {
16237 			if (yych <= ':') goto yy1039;
16238 			if (yych == 'n') goto yy444;
16239 			goto yy1028;
16240 		} else {
16241 			if (yych <= 'r') goto yy445;
16242 			if (yych <= 's') goto yy439;
16243 			if (yych <= 't') goto yy442;
16244 			goto yy1028;
16245 		}
16246 	}
16247 yy1072:
16248 	YYDEBUG(1072, *YYCURSOR);
16249 	yych = *++YYCURSOR;
16250 	if (yych <= 'E') {
16251 		if (yych <= ')') {
16252 			if (yych <= '(') goto yy3;
16253 			goto yy174;
16254 		} else {
16255 			if (yych <= '@') goto yy3;
16256 			if (yych <= 'D') goto yy176;
16257 		}
16258 	} else {
16259 		if (yych <= 'd') {
16260 			if (yych <= 'Z') goto yy176;
16261 			if (yych <= '`') goto yy3;
16262 			goto yy176;
16263 		} else {
16264 			if (yych <= 'e') goto yy1073;
16265 			if (yych <= 'z') goto yy176;
16266 			goto yy3;
16267 		}
16268 	}
16269 yy1073:
16270 	YYDEBUG(1073, *YYCURSOR);
16271 	yych = *++YYCURSOR;
16272 	if (yych <= 'V') {
16273 		if (yych <= ')') {
16274 			if (yych <= '(') goto yy3;
16275 			goto yy174;
16276 		} else {
16277 			if (yych <= '@') goto yy3;
16278 			if (yych <= 'U') goto yy177;
16279 		}
16280 	} else {
16281 		if (yych <= 'u') {
16282 			if (yych <= 'Z') goto yy177;
16283 			if (yych <= '`') goto yy3;
16284 			goto yy177;
16285 		} else {
16286 			if (yych <= 'v') goto yy1074;
16287 			if (yych <= 'z') goto yy177;
16288 			goto yy3;
16289 		}
16290 	}
16291 yy1074:
16292 	YYDEBUG(1074, *YYCURSOR);
16293 	yych = *++YYCURSOR;
16294 	if (yych <= 'I') {
16295 		if (yych <= ')') {
16296 			if (yych <= '(') goto yy3;
16297 			goto yy174;
16298 		} else {
16299 			if (yych <= '@') goto yy3;
16300 			if (yych <= 'H') goto yy178;
16301 		}
16302 	} else {
16303 		if (yych <= 'h') {
16304 			if (yych <= 'Z') goto yy178;
16305 			if (yych <= '`') goto yy3;
16306 			goto yy178;
16307 		} else {
16308 			if (yych <= 'i') goto yy1075;
16309 			if (yych <= 'z') goto yy178;
16310 			goto yy3;
16311 		}
16312 	}
16313 yy1075:
16314 	YYDEBUG(1075, *YYCURSOR);
16315 	yych = *++YYCURSOR;
16316 	if (yych <= 'O') {
16317 		if (yych <= ')') {
16318 			if (yych <= '(') goto yy3;
16319 			goto yy174;
16320 		} else {
16321 			if (yych <= '@') goto yy3;
16322 			if (yych <= 'N') goto yy179;
16323 		}
16324 	} else {
16325 		if (yych <= 'n') {
16326 			if (yych <= 'Z') goto yy179;
16327 			if (yych <= '`') goto yy3;
16328 			goto yy179;
16329 		} else {
16330 			if (yych <= 'o') goto yy1076;
16331 			if (yych <= 'z') goto yy179;
16332 			goto yy3;
16333 		}
16334 	}
16335 yy1076:
16336 	YYDEBUG(1076, *YYCURSOR);
16337 	yyaccept = 0;
16338 	yych = *(YYMARKER = ++YYCURSOR);
16339 	if (yych <= 'T') {
16340 		if (yych == ')') goto yy174;
16341 		goto yy3;
16342 	} else {
16343 		if (yych <= 'U') goto yy1077;
16344 		if (yych != 'u') goto yy3;
16345 	}
16346 yy1077:
16347 	YYDEBUG(1077, *YYCURSOR);
16348 	yych = *++YYCURSOR;
16349 	if (yych == 'S') goto yy1078;
16350 	if (yych != 's') goto yy55;
16351 yy1078:
16352 	YYDEBUG(1078, *YYCURSOR);
16353 	yych = *++YYCURSOR;
16354 	if (yych == '\t') goto yy1079;
16355 	if (yych != ' ') goto yy55;
16356 yy1079:
16357 	YYDEBUG(1079, *YYCURSOR);
16358 	++YYCURSOR;
16359 	if ((YYLIMIT - YYCURSOR) < 12) YYFILL(12);
16360 	yych = *YYCURSOR;
16361 yy1080:
16362 	YYDEBUG(1080, *YYCURSOR);
16363 	if (yych <= 'X') {
16364 		if (yych <= 'G') {
16365 			if (yych <= ' ') {
16366 				if (yych == '\t') goto yy1079;
16367 				if (yych <= 0x1F) goto yy55;
16368 				goto yy1079;
16369 			} else {
16370 				if (yych <= 'D') {
16371 					if (yych <= 'C') goto yy55;
16372 					goto yy1086;
16373 				} else {
16374 					if (yych == 'F') goto yy1087;
16375 					goto yy55;
16376 				}
16377 			}
16378 		} else {
16379 			if (yych <= 'S') {
16380 				if (yych <= 'L') {
16381 					if (yych <= 'H') goto yy1085;
16382 					goto yy55;
16383 				} else {
16384 					if (yych <= 'M') goto yy1081;
16385 					if (yych <= 'R') goto yy55;
16386 					goto yy1084;
16387 				}
16388 			} else {
16389 				if (yych <= 'U') {
16390 					if (yych <= 'T') goto yy1090;
16391 					goto yy1083;
16392 				} else {
16393 					if (yych == 'W') goto yy1089;
16394 					goto yy55;
16395 				}
16396 			}
16397 		}
16398 	} else {
16399 		if (yych <= 'r') {
16400 			if (yych <= 'f') {
16401 				if (yych <= 'c') {
16402 					if (yych <= 'Y') goto yy1088;
16403 					goto yy55;
16404 				} else {
16405 					if (yych <= 'd') goto yy1086;
16406 					if (yych <= 'e') goto yy55;
16407 					goto yy1087;
16408 				}
16409 			} else {
16410 				if (yych <= 'h') {
16411 					if (yych <= 'g') goto yy55;
16412 					goto yy1085;
16413 				} else {
16414 					if (yych != 'm') goto yy55;
16415 				}
16416 			}
16417 		} else {
16418 			if (yych <= 'w') {
16419 				if (yych <= 't') {
16420 					if (yych <= 's') goto yy1084;
16421 					goto yy1090;
16422 				} else {
16423 					if (yych <= 'u') goto yy1083;
16424 					if (yych <= 'v') goto yy55;
16425 					goto yy1089;
16426 				}
16427 			} else {
16428 				if (yych <= 'y') {
16429 					if (yych <= 'x') goto yy55;
16430 					goto yy1088;
16431 				} else {
16432 					if (yych == 0xC2) goto yy1082;
16433 					goto yy55;
16434 				}
16435 			}
16436 		}
16437 	}
16438 yy1081:
16439 	YYDEBUG(1081, *YYCURSOR);
16440 	yych = *++YYCURSOR;
16441 	if (yych <= 'S') {
16442 		if (yych <= 'N') {
16443 			if (yych == 'I') goto yy1165;
16444 			goto yy55;
16445 		} else {
16446 			if (yych <= 'O') goto yy1164;
16447 			if (yych <= 'R') goto yy55;
16448 			goto yy1166;
16449 		}
16450 	} else {
16451 		if (yych <= 'n') {
16452 			if (yych == 'i') goto yy1165;
16453 			goto yy55;
16454 		} else {
16455 			if (yych <= 'o') goto yy1164;
16456 			if (yych == 's') goto yy1166;
16457 			goto yy55;
16458 		}
16459 	}
16460 yy1082:
16461 	YYDEBUG(1082, *YYCURSOR);
16462 	yych = *++YYCURSOR;
16463 	if (yych == 0xB5) goto yy1161;
16464 	goto yy55;
16465 yy1083:
16466 	YYDEBUG(1083, *YYCURSOR);
16467 	yych = *++YYCURSOR;
16468 	if (yych == 'S') goto yy1159;
16469 	if (yych == 's') goto yy1159;
16470 	goto yy55;
16471 yy1084:
16472 	YYDEBUG(1084, *YYCURSOR);
16473 	yych = *++YYCURSOR;
16474 	if (yych <= 'U') {
16475 		if (yych <= 'D') {
16476 			if (yych == 'A') goto yy1146;
16477 			goto yy55;
16478 		} else {
16479 			if (yych <= 'E') goto yy1147;
16480 			if (yych <= 'T') goto yy55;
16481 			goto yy1145;
16482 		}
16483 	} else {
16484 		if (yych <= 'd') {
16485 			if (yych == 'a') goto yy1146;
16486 			goto yy55;
16487 		} else {
16488 			if (yych <= 'e') goto yy1147;
16489 			if (yych == 'u') goto yy1145;
16490 			goto yy55;
16491 		}
16492 	}
16493 yy1085:
16494 	YYDEBUG(1085, *YYCURSOR);
16495 	yych = *++YYCURSOR;
16496 	if (yych == 'O') goto yy1143;
16497 	if (yych == 'o') goto yy1143;
16498 	goto yy55;
16499 yy1086:
16500 	YYDEBUG(1086, *YYCURSOR);
16501 	yych = *++YYCURSOR;
16502 	if (yych == 'A') goto yy1142;
16503 	if (yych == 'a') goto yy1142;
16504 	goto yy55;
16505 yy1087:
16506 	YYDEBUG(1087, *YYCURSOR);
16507 	yych = *++YYCURSOR;
16508 	if (yych <= 'R') {
16509 		if (yych == 'O') goto yy1127;
16510 		if (yych <= 'Q') goto yy55;
16511 		goto yy1126;
16512 	} else {
16513 		if (yych <= 'o') {
16514 			if (yych <= 'n') goto yy55;
16515 			goto yy1127;
16516 		} else {
16517 			if (yych == 'r') goto yy1126;
16518 			goto yy55;
16519 		}
16520 	}
16521 yy1088:
16522 	YYDEBUG(1088, *YYCURSOR);
16523 	yych = *++YYCURSOR;
16524 	if (yych == 'E') goto yy1123;
16525 	if (yych == 'e') goto yy1123;
16526 	goto yy55;
16527 yy1089:
16528 	YYDEBUG(1089, *YYCURSOR);
16529 	yych = *++YYCURSOR;
16530 	if (yych == 'E') goto yy1109;
16531 	if (yych == 'e') goto yy1109;
16532 	goto yy55;
16533 yy1090:
16534 	YYDEBUG(1090, *YYCURSOR);
16535 	yych = *++YYCURSOR;
16536 	if (yych <= 'U') {
16537 		if (yych == 'H') goto yy1091;
16538 		if (yych <= 'T') goto yy55;
16539 		goto yy1092;
16540 	} else {
16541 		if (yych <= 'h') {
16542 			if (yych <= 'g') goto yy55;
16543 		} else {
16544 			if (yych == 'u') goto yy1092;
16545 			goto yy55;
16546 		}
16547 	}
16548 yy1091:
16549 	YYDEBUG(1091, *YYCURSOR);
16550 	yych = *++YYCURSOR;
16551 	if (yych == 'U') goto yy1104;
16552 	if (yych == 'u') goto yy1104;
16553 	goto yy55;
16554 yy1092:
16555 	YYDEBUG(1092, *YYCURSOR);
16556 	yych = *++YYCURSOR;
16557 	if (yych == 'E') goto yy1093;
16558 	if (yych != 'e') goto yy55;
16559 yy1093:
16560 	YYDEBUG(1093, *YYCURSOR);
16561 	yyaccept = 25;
16562 	yych = *(YYMARKER = ++YYCURSOR);
16563 	if (yych <= ' ') {
16564 		if (yych == '\t') goto yy1095;
16565 		if (yych >= ' ') goto yy1095;
16566 	} else {
16567 		if (yych <= 'S') {
16568 			if (yych >= 'S') goto yy1097;
16569 		} else {
16570 			if (yych == 's') goto yy1097;
16571 		}
16572 	}
16573 yy1094:
16574 	YYDEBUG(1094, *YYCURSOR);
16575 #line 1692 "parse_date.re"
16576 	{
16577 		timelib_sll i;
16578 		int         behavior = 0;
16579 		DEBUG_OUTPUT("relativetext");
16580 		TIMELIB_INIT;
16581 		TIMELIB_HAVE_RELATIVE();
16582 
16583 		while(*ptr) {
16584 			i = timelib_get_relative_text((char **) &ptr, &behavior);
16585 			timelib_eat_spaces((char **) &ptr);
16586 			timelib_set_relative((char **) &ptr, i, behavior, s);
16587 		}
16588 		TIMELIB_DEINIT;
16589 		return TIMELIB_RELATIVE;
16590 	}
16591 #line 16589 "<stdout>"
16592 yy1095:
16593 	YYDEBUG(1095, *YYCURSOR);
16594 	++YYCURSOR;
16595 	if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
16596 	yych = *YYCURSOR;
16597 	YYDEBUG(1096, *YYCURSOR);
16598 	if (yych <= ' ') {
16599 		if (yych == '\t') goto yy1095;
16600 		if (yych <= 0x1F) goto yy55;
16601 		goto yy1095;
16602 	} else {
16603 		if (yych <= 'O') {
16604 			if (yych <= 'N') goto yy55;
16605 			goto yy1101;
16606 		} else {
16607 			if (yych == 'o') goto yy1101;
16608 			goto yy55;
16609 		}
16610 	}
16611 yy1097:
16612 	YYDEBUG(1097, *YYCURSOR);
16613 	yych = *++YYCURSOR;
16614 	if (yych == 'D') goto yy1098;
16615 	if (yych != 'd') goto yy55;
16616 yy1098:
16617 	YYDEBUG(1098, *YYCURSOR);
16618 	yych = *++YYCURSOR;
16619 	if (yych == 'A') goto yy1099;
16620 	if (yych != 'a') goto yy55;
16621 yy1099:
16622 	YYDEBUG(1099, *YYCURSOR);
16623 	yych = *++YYCURSOR;
16624 	if (yych == 'Y') goto yy1100;
16625 	if (yych != 'y') goto yy55;
16626 yy1100:
16627 	YYDEBUG(1100, *YYCURSOR);
16628 	yyaccept = 25;
16629 	yych = *(YYMARKER = ++YYCURSOR);
16630 	if (yych == '\t') goto yy1095;
16631 	if (yych == ' ') goto yy1095;
16632 	goto yy1094;
16633 yy1101:
16634 	YYDEBUG(1101, *YYCURSOR);
16635 	yych = *++YYCURSOR;
16636 	if (yych == 'F') goto yy1102;
16637 	if (yych != 'f') goto yy55;
16638 yy1102:
16639 	YYDEBUG(1102, *YYCURSOR);
16640 	++YYCURSOR;
16641 	YYDEBUG(1103, *YYCURSOR);
16642 #line 1165 "parse_date.re"
16643 	{
16644 		timelib_sll i;
16645 		int         behavior = 0;
16646 		DEBUG_OUTPUT("weekdayof");
16647 		TIMELIB_INIT;
16648 		TIMELIB_HAVE_RELATIVE();
16649 		TIMELIB_HAVE_SPECIAL_RELATIVE();
16650 
16651 		i = timelib_get_relative_text((char **) &ptr, &behavior);
16652 		timelib_eat_spaces((char **) &ptr);
16653 		if (i > 0) { /* first, second... etc */
16654 			s->time->relative.special.type = TIMELIB_SPECIAL_DAY_OF_WEEK_IN_MONTH;
16655 			timelib_set_relative((char **) &ptr, i, 1, s);
16656 		} else { /* last */
16657 			s->time->relative.special.type = TIMELIB_SPECIAL_LAST_DAY_OF_WEEK_IN_MONTH;
16658 			timelib_set_relative((char **) &ptr, i, behavior, s);
16659 		}
16660 		TIMELIB_DEINIT;
16661 		return TIMELIB_WEEK_DAY_OF_MONTH;
16662 	}
16663 #line 16661 "<stdout>"
16664 yy1104:
16665 	YYDEBUG(1104, *YYCURSOR);
16666 	yyaccept = 25;
16667 	yych = *(YYMARKER = ++YYCURSOR);
16668 	if (yych <= ' ') {
16669 		if (yych == '\t') goto yy1095;
16670 		if (yych <= 0x1F) goto yy1094;
16671 		goto yy1095;
16672 	} else {
16673 		if (yych <= 'R') {
16674 			if (yych <= 'Q') goto yy1094;
16675 		} else {
16676 			if (yych != 'r') goto yy1094;
16677 		}
16678 	}
16679 	YYDEBUG(1105, *YYCURSOR);
16680 	yych = *++YYCURSOR;
16681 	if (yych == 'S') goto yy1106;
16682 	if (yych != 's') goto yy55;
16683 yy1106:
16684 	YYDEBUG(1106, *YYCURSOR);
16685 	yych = *++YYCURSOR;
16686 	if (yych == 'D') goto yy1107;
16687 	if (yych != 'd') goto yy55;
16688 yy1107:
16689 	YYDEBUG(1107, *YYCURSOR);
16690 	yych = *++YYCURSOR;
16691 	if (yych == 'A') goto yy1108;
16692 	if (yych != 'a') goto yy55;
16693 yy1108:
16694 	YYDEBUG(1108, *YYCURSOR);
16695 	yych = *++YYCURSOR;
16696 	if (yych == 'Y') goto yy1100;
16697 	if (yych == 'y') goto yy1100;
16698 	goto yy55;
16699 yy1109:
16700 	YYDEBUG(1109, *YYCURSOR);
16701 	yych = *++YYCURSOR;
16702 	if (yych <= 'E') {
16703 		if (yych <= 'C') goto yy55;
16704 		if (yych <= 'D') goto yy1111;
16705 	} else {
16706 		if (yych <= 'c') goto yy55;
16707 		if (yych <= 'd') goto yy1111;
16708 		if (yych >= 'f') goto yy55;
16709 	}
16710 	YYDEBUG(1110, *YYCURSOR);
16711 	yych = *++YYCURSOR;
16712 	if (yych == 'K') goto yy1117;
16713 	if (yych == 'k') goto yy1117;
16714 	goto yy55;
16715 yy1111:
16716 	YYDEBUG(1111, *YYCURSOR);
16717 	yyaccept = 25;
16718 	yych = *(YYMARKER = ++YYCURSOR);
16719 	if (yych <= ' ') {
16720 		if (yych == '\t') goto yy1095;
16721 		if (yych <= 0x1F) goto yy1094;
16722 		goto yy1095;
16723 	} else {
16724 		if (yych <= 'N') {
16725 			if (yych <= 'M') goto yy1094;
16726 		} else {
16727 			if (yych != 'n') goto yy1094;
16728 		}
16729 	}
16730 	YYDEBUG(1112, *YYCURSOR);
16731 	yych = *++YYCURSOR;
16732 	if (yych == 'E') goto yy1113;
16733 	if (yych != 'e') goto yy55;
16734 yy1113:
16735 	YYDEBUG(1113, *YYCURSOR);
16736 	yych = *++YYCURSOR;
16737 	if (yych == 'S') goto yy1114;
16738 	if (yych != 's') goto yy55;
16739 yy1114:
16740 	YYDEBUG(1114, *YYCURSOR);
16741 	yych = *++YYCURSOR;
16742 	if (yych == 'D') goto yy1115;
16743 	if (yych != 'd') goto yy55;
16744 yy1115:
16745 	YYDEBUG(1115, *YYCURSOR);
16746 	yych = *++YYCURSOR;
16747 	if (yych == 'A') goto yy1116;
16748 	if (yych != 'a') goto yy55;
16749 yy1116:
16750 	YYDEBUG(1116, *YYCURSOR);
16751 	yych = *++YYCURSOR;
16752 	if (yych == 'Y') goto yy1100;
16753 	if (yych == 'y') goto yy1100;
16754 	goto yy55;
16755 yy1117:
16756 	YYDEBUG(1117, *YYCURSOR);
16757 	yyaccept = 26;
16758 	yych = *(YYMARKER = ++YYCURSOR);
16759 	if (yych <= 'S') {
16760 		if (yych == 'D') goto yy1120;
16761 		if (yych >= 'S') goto yy1119;
16762 	} else {
16763 		if (yych <= 'd') {
16764 			if (yych >= 'd') goto yy1120;
16765 		} else {
16766 			if (yych == 's') goto yy1119;
16767 		}
16768 	}
16769 yy1118:
16770 	YYDEBUG(1118, *YYCURSOR);
16771 #line 1668 "parse_date.re"
16772 	{
16773 		timelib_sll i;
16774 		int         behavior = 0;
16775 		DEBUG_OUTPUT("relativetextweek");
16776 		TIMELIB_INIT;
16777 		TIMELIB_HAVE_RELATIVE();
16778 
16779 		while(*ptr) {
16780 			i = timelib_get_relative_text((char **) &ptr, &behavior);
16781 			timelib_eat_spaces((char **) &ptr);
16782 			timelib_set_relative((char **) &ptr, i, behavior, s);
16783 			s->time->relative.weekday_behavior = 2;
16784 
16785 			/* to handle the format weekday + last/this/next week */
16786 			if (s->time->relative.have_weekday_relative == 0) {
16787 				TIMELIB_HAVE_WEEKDAY_RELATIVE();
16788 				s->time->relative.weekday = 1;
16789 			}
16790 		}
16791 		TIMELIB_DEINIT;
16792 		return TIMELIB_RELATIVE;
16793 	}
16794 #line 16792 "<stdout>"
16795 yy1119:
16796 	YYDEBUG(1119, *YYCURSOR);
16797 	yych = *++YYCURSOR;
16798 	goto yy1094;
16799 yy1120:
16800 	YYDEBUG(1120, *YYCURSOR);
16801 	yych = *++YYCURSOR;
16802 	if (yych == 'A') goto yy1121;
16803 	if (yych != 'a') goto yy55;
16804 yy1121:
16805 	YYDEBUG(1121, *YYCURSOR);
16806 	yych = *++YYCURSOR;
16807 	if (yych == 'Y') goto yy1122;
16808 	if (yych != 'y') goto yy55;
16809 yy1122:
16810 	YYDEBUG(1122, *YYCURSOR);
16811 	yych = *++YYCURSOR;
16812 	if (yych == 'S') goto yy1119;
16813 	if (yych == 's') goto yy1119;
16814 	goto yy1094;
16815 yy1123:
16816 	YYDEBUG(1123, *YYCURSOR);
16817 	yych = *++YYCURSOR;
16818 	if (yych == 'A') goto yy1124;
16819 	if (yych != 'a') goto yy55;
16820 yy1124:
16821 	YYDEBUG(1124, *YYCURSOR);
16822 	yych = *++YYCURSOR;
16823 	if (yych == 'R') goto yy1125;
16824 	if (yych != 'r') goto yy55;
16825 yy1125:
16826 	YYDEBUG(1125, *YYCURSOR);
16827 	yych = *++YYCURSOR;
16828 	if (yych == 'S') goto yy1119;
16829 	if (yych == 's') goto yy1119;
16830 	goto yy1094;
16831 yy1126:
16832 	YYDEBUG(1126, *YYCURSOR);
16833 	yych = *++YYCURSOR;
16834 	if (yych == 'I') goto yy1139;
16835 	if (yych == 'i') goto yy1139;
16836 	goto yy55;
16837 yy1127:
16838 	YYDEBUG(1127, *YYCURSOR);
16839 	yych = *++YYCURSOR;
16840 	if (yych == 'R') goto yy1128;
16841 	if (yych != 'r') goto yy55;
16842 yy1128:
16843 	YYDEBUG(1128, *YYCURSOR);
16844 	yych = *++YYCURSOR;
16845 	if (yych == 'T') goto yy1129;
16846 	if (yych != 't') goto yy55;
16847 yy1129:
16848 	YYDEBUG(1129, *YYCURSOR);
16849 	yych = *++YYCURSOR;
16850 	if (yych <= 'N') {
16851 		if (yych == 'H') goto yy1131;
16852 		if (yych <= 'M') goto yy55;
16853 	} else {
16854 		if (yych <= 'h') {
16855 			if (yych <= 'g') goto yy55;
16856 			goto yy1131;
16857 		} else {
16858 			if (yych != 'n') goto yy55;
16859 		}
16860 	}
16861 	YYDEBUG(1130, *YYCURSOR);
16862 	yych = *++YYCURSOR;
16863 	if (yych == 'I') goto yy1136;
16864 	if (yych == 'i') goto yy1136;
16865 	goto yy55;
16866 yy1131:
16867 	YYDEBUG(1131, *YYCURSOR);
16868 	yych = *++YYCURSOR;
16869 	if (yych == 'N') goto yy1132;
16870 	if (yych != 'n') goto yy55;
16871 yy1132:
16872 	YYDEBUG(1132, *YYCURSOR);
16873 	yych = *++YYCURSOR;
16874 	if (yych == 'I') goto yy1133;
16875 	if (yych != 'i') goto yy55;
16876 yy1133:
16877 	YYDEBUG(1133, *YYCURSOR);
16878 	yych = *++YYCURSOR;
16879 	if (yych == 'G') goto yy1134;
16880 	if (yych != 'g') goto yy55;
16881 yy1134:
16882 	YYDEBUG(1134, *YYCURSOR);
16883 	yych = *++YYCURSOR;
16884 	if (yych == 'H') goto yy1135;
16885 	if (yych != 'h') goto yy55;
16886 yy1135:
16887 	YYDEBUG(1135, *YYCURSOR);
16888 	yych = *++YYCURSOR;
16889 	if (yych == 'T') goto yy1125;
16890 	if (yych == 't') goto yy1125;
16891 	goto yy55;
16892 yy1136:
16893 	YYDEBUG(1136, *YYCURSOR);
16894 	yych = *++YYCURSOR;
16895 	if (yych == 'G') goto yy1137;
16896 	if (yych != 'g') goto yy55;
16897 yy1137:
16898 	YYDEBUG(1137, *YYCURSOR);
16899 	yych = *++YYCURSOR;
16900 	if (yych == 'H') goto yy1138;
16901 	if (yych != 'h') goto yy55;
16902 yy1138:
16903 	YYDEBUG(1138, *YYCURSOR);
16904 	yych = *++YYCURSOR;
16905 	if (yych == 'T') goto yy1125;
16906 	if (yych == 't') goto yy1125;
16907 	goto yy55;
16908 yy1139:
16909 	YYDEBUG(1139, *YYCURSOR);
16910 	yyaccept = 25;
16911 	yych = *(YYMARKER = ++YYCURSOR);
16912 	if (yych <= ' ') {
16913 		if (yych == '\t') goto yy1095;
16914 		if (yych <= 0x1F) goto yy1094;
16915 		goto yy1095;
16916 	} else {
16917 		if (yych <= 'D') {
16918 			if (yych <= 'C') goto yy1094;
16919 		} else {
16920 			if (yych != 'd') goto yy1094;
16921 		}
16922 	}
16923 	YYDEBUG(1140, *YYCURSOR);
16924 	yych = *++YYCURSOR;
16925 	if (yych == 'A') goto yy1141;
16926 	if (yych != 'a') goto yy55;
16927 yy1141:
16928 	YYDEBUG(1141, *YYCURSOR);
16929 	yych = *++YYCURSOR;
16930 	if (yych == 'Y') goto yy1100;
16931 	if (yych == 'y') goto yy1100;
16932 	goto yy55;
16933 yy1142:
16934 	YYDEBUG(1142, *YYCURSOR);
16935 	yych = *++YYCURSOR;
16936 	if (yych == 'Y') goto yy1125;
16937 	if (yych == 'y') goto yy1125;
16938 	goto yy55;
16939 yy1143:
16940 	YYDEBUG(1143, *YYCURSOR);
16941 	yych = *++YYCURSOR;
16942 	if (yych == 'U') goto yy1144;
16943 	if (yych != 'u') goto yy55;
16944 yy1144:
16945 	YYDEBUG(1144, *YYCURSOR);
16946 	yych = *++YYCURSOR;
16947 	if (yych == 'R') goto yy1125;
16948 	if (yych == 'r') goto yy1125;
16949 	goto yy55;
16950 yy1145:
16951 	YYDEBUG(1145, *YYCURSOR);
16952 	yych = *++YYCURSOR;
16953 	if (yych == 'N') goto yy1156;
16954 	if (yych == 'n') goto yy1156;
16955 	goto yy55;
16956 yy1146:
16957 	YYDEBUG(1146, *YYCURSOR);
16958 	yych = *++YYCURSOR;
16959 	if (yych == 'T') goto yy1151;
16960 	if (yych == 't') goto yy1151;
16961 	goto yy55;
16962 yy1147:
16963 	YYDEBUG(1147, *YYCURSOR);
16964 	yych = *++YYCURSOR;
16965 	if (yych == 'C') goto yy1148;
16966 	if (yych != 'c') goto yy55;
16967 yy1148:
16968 	YYDEBUG(1148, *YYCURSOR);
16969 	yyaccept = 25;
16970 	yych = *(YYMARKER = ++YYCURSOR);
16971 	if (yych <= 'S') {
16972 		if (yych == 'O') goto yy1149;
16973 		if (yych <= 'R') goto yy1094;
16974 		goto yy1119;
16975 	} else {
16976 		if (yych <= 'o') {
16977 			if (yych <= 'n') goto yy1094;
16978 		} else {
16979 			if (yych == 's') goto yy1119;
16980 			goto yy1094;
16981 		}
16982 	}
16983 yy1149:
16984 	YYDEBUG(1149, *YYCURSOR);
16985 	yych = *++YYCURSOR;
16986 	if (yych == 'N') goto yy1150;
16987 	if (yych != 'n') goto yy55;
16988 yy1150:
16989 	YYDEBUG(1150, *YYCURSOR);
16990 	yych = *++YYCURSOR;
16991 	if (yych == 'D') goto yy1125;
16992 	if (yych == 'd') goto yy1125;
16993 	goto yy55;
16994 yy1151:
16995 	YYDEBUG(1151, *YYCURSOR);
16996 	yyaccept = 25;
16997 	yych = *(YYMARKER = ++YYCURSOR);
16998 	if (yych <= ' ') {
16999 		if (yych == '\t') goto yy1095;
17000 		if (yych <= 0x1F) goto yy1094;
17001 		goto yy1095;
17002 	} else {
17003 		if (yych <= 'U') {
17004 			if (yych <= 'T') goto yy1094;
17005 		} else {
17006 			if (yych != 'u') goto yy1094;
17007 		}
17008 	}
17009 	YYDEBUG(1152, *YYCURSOR);
17010 	yych = *++YYCURSOR;
17011 	if (yych == 'R') goto yy1153;
17012 	if (yych != 'r') goto yy55;
17013 yy1153:
17014 	YYDEBUG(1153, *YYCURSOR);
17015 	yych = *++YYCURSOR;
17016 	if (yych == 'D') goto yy1154;
17017 	if (yych != 'd') goto yy55;
17018 yy1154:
17019 	YYDEBUG(1154, *YYCURSOR);
17020 	yych = *++YYCURSOR;
17021 	if (yych == 'A') goto yy1155;
17022 	if (yych != 'a') goto yy55;
17023 yy1155:
17024 	YYDEBUG(1155, *YYCURSOR);
17025 	yych = *++YYCURSOR;
17026 	if (yych == 'Y') goto yy1100;
17027 	if (yych == 'y') goto yy1100;
17028 	goto yy55;
17029 yy1156:
17030 	YYDEBUG(1156, *YYCURSOR);
17031 	yyaccept = 25;
17032 	yych = *(YYMARKER = ++YYCURSOR);
17033 	if (yych <= ' ') {
17034 		if (yych == '\t') goto yy1095;
17035 		if (yych <= 0x1F) goto yy1094;
17036 		goto yy1095;
17037 	} else {
17038 		if (yych <= 'D') {
17039 			if (yych <= 'C') goto yy1094;
17040 		} else {
17041 			if (yych != 'd') goto yy1094;
17042 		}
17043 	}
17044 	YYDEBUG(1157, *YYCURSOR);
17045 	yych = *++YYCURSOR;
17046 	if (yych == 'A') goto yy1158;
17047 	if (yych != 'a') goto yy55;
17048 yy1158:
17049 	YYDEBUG(1158, *YYCURSOR);
17050 	yych = *++YYCURSOR;
17051 	if (yych == 'Y') goto yy1100;
17052 	if (yych == 'y') goto yy1100;
17053 	goto yy55;
17054 yy1159:
17055 	YYDEBUG(1159, *YYCURSOR);
17056 	yych = *++YYCURSOR;
17057 	if (yych == 'E') goto yy1160;
17058 	if (yych != 'e') goto yy55;
17059 yy1160:
17060 	YYDEBUG(1160, *YYCURSOR);
17061 	yych = *++YYCURSOR;
17062 	if (yych == 'C') goto yy1125;
17063 	if (yych == 'c') goto yy1125;
17064 	goto yy55;
17065 yy1161:
17066 	YYDEBUG(1161, *YYCURSOR);
17067 	yych = *++YYCURSOR;
17068 	if (yych == 'S') goto yy1162;
17069 	if (yych != 's') goto yy55;
17070 yy1162:
17071 	YYDEBUG(1162, *YYCURSOR);
17072 	yyaccept = 25;
17073 	yych = *(YYMARKER = ++YYCURSOR);
17074 	if (yych == 'E') goto yy1163;
17075 	if (yych != 'e') goto yy1094;
17076 yy1163:
17077 	YYDEBUG(1163, *YYCURSOR);
17078 	yych = *++YYCURSOR;
17079 	if (yych == 'C') goto yy1125;
17080 	if (yych == 'c') goto yy1125;
17081 	goto yy55;
17082 yy1164:
17083 	YYDEBUG(1164, *YYCURSOR);
17084 	yych = *++YYCURSOR;
17085 	if (yych == 'N') goto yy1187;
17086 	if (yych == 'n') goto yy1187;
17087 	goto yy55;
17088 yy1165:
17089 	YYDEBUG(1165, *YYCURSOR);
17090 	yych = *++YYCURSOR;
17091 	if (yych <= 'N') {
17092 		if (yych <= 'K') {
17093 			if (yych == 'C') goto yy1169;
17094 			goto yy55;
17095 		} else {
17096 			if (yych <= 'L') goto yy1168;
17097 			if (yych <= 'M') goto yy55;
17098 			goto yy1170;
17099 		}
17100 	} else {
17101 		if (yych <= 'k') {
17102 			if (yych == 'c') goto yy1169;
17103 			goto yy55;
17104 		} else {
17105 			if (yych <= 'l') goto yy1168;
17106 			if (yych == 'n') goto yy1170;
17107 			goto yy55;
17108 		}
17109 	}
17110 yy1166:
17111 	YYDEBUG(1166, *YYCURSOR);
17112 	yyaccept = 25;
17113 	yych = *(YYMARKER = ++YYCURSOR);
17114 	if (yych == 'E') goto yy1167;
17115 	if (yych != 'e') goto yy1094;
17116 yy1167:
17117 	YYDEBUG(1167, *YYCURSOR);
17118 	yych = *++YYCURSOR;
17119 	if (yych == 'C') goto yy1125;
17120 	if (yych == 'c') goto yy1125;
17121 	goto yy55;
17122 yy1168:
17123 	YYDEBUG(1168, *YYCURSOR);
17124 	yych = *++YYCURSOR;
17125 	if (yych == 'L') goto yy1180;
17126 	if (yych == 'l') goto yy1180;
17127 	goto yy55;
17128 yy1169:
17129 	YYDEBUG(1169, *YYCURSOR);
17130 	yych = *++YYCURSOR;
17131 	if (yych == 'R') goto yy1173;
17132 	if (yych == 'r') goto yy1173;
17133 	goto yy55;
17134 yy1170:
17135 	YYDEBUG(1170, *YYCURSOR);
17136 	yyaccept = 25;
17137 	yych = *(YYMARKER = ++YYCURSOR);
17138 	if (yych <= 'U') {
17139 		if (yych == 'S') goto yy1119;
17140 		if (yych <= 'T') goto yy1094;
17141 	} else {
17142 		if (yych <= 's') {
17143 			if (yych <= 'r') goto yy1094;
17144 			goto yy1119;
17145 		} else {
17146 			if (yych != 'u') goto yy1094;
17147 		}
17148 	}
17149 	YYDEBUG(1171, *YYCURSOR);
17150 	yych = *++YYCURSOR;
17151 	if (yych == 'T') goto yy1172;
17152 	if (yych != 't') goto yy55;
17153 yy1172:
17154 	YYDEBUG(1172, *YYCURSOR);
17155 	yych = *++YYCURSOR;
17156 	if (yych == 'E') goto yy1125;
17157 	if (yych == 'e') goto yy1125;
17158 	goto yy55;
17159 yy1173:
17160 	YYDEBUG(1173, *YYCURSOR);
17161 	yych = *++YYCURSOR;
17162 	if (yych == 'O') goto yy1174;
17163 	if (yych != 'o') goto yy55;
17164 yy1174:
17165 	YYDEBUG(1174, *YYCURSOR);
17166 	yych = *++YYCURSOR;
17167 	if (yych == 'S') goto yy1175;
17168 	if (yych != 's') goto yy55;
17169 yy1175:
17170 	YYDEBUG(1175, *YYCURSOR);
17171 	yych = *++YYCURSOR;
17172 	if (yych == 'E') goto yy1176;
17173 	if (yych != 'e') goto yy55;
17174 yy1176:
17175 	YYDEBUG(1176, *YYCURSOR);
17176 	yych = *++YYCURSOR;
17177 	if (yych == 'C') goto yy1177;
17178 	if (yych != 'c') goto yy55;
17179 yy1177:
17180 	YYDEBUG(1177, *YYCURSOR);
17181 	yych = *++YYCURSOR;
17182 	if (yych == 'O') goto yy1178;
17183 	if (yych != 'o') goto yy55;
17184 yy1178:
17185 	YYDEBUG(1178, *YYCURSOR);
17186 	yych = *++YYCURSOR;
17187 	if (yych == 'N') goto yy1179;
17188 	if (yych != 'n') goto yy55;
17189 yy1179:
17190 	YYDEBUG(1179, *YYCURSOR);
17191 	yych = *++YYCURSOR;
17192 	if (yych == 'D') goto yy1125;
17193 	if (yych == 'd') goto yy1125;
17194 	goto yy55;
17195 yy1180:
17196 	YYDEBUG(1180, *YYCURSOR);
17197 	yych = *++YYCURSOR;
17198 	if (yych == 'I') goto yy1181;
17199 	if (yych != 'i') goto yy55;
17200 yy1181:
17201 	YYDEBUG(1181, *YYCURSOR);
17202 	yych = *++YYCURSOR;
17203 	if (yych == 'S') goto yy1182;
17204 	if (yych != 's') goto yy55;
17205 yy1182:
17206 	YYDEBUG(1182, *YYCURSOR);
17207 	yych = *++YYCURSOR;
17208 	if (yych == 'E') goto yy1183;
17209 	if (yych != 'e') goto yy55;
17210 yy1183:
17211 	YYDEBUG(1183, *YYCURSOR);
17212 	yych = *++YYCURSOR;
17213 	if (yych == 'C') goto yy1184;
17214 	if (yych != 'c') goto yy55;
17215 yy1184:
17216 	YYDEBUG(1184, *YYCURSOR);
17217 	yych = *++YYCURSOR;
17218 	if (yych == 'O') goto yy1185;
17219 	if (yych != 'o') goto yy55;
17220 yy1185:
17221 	YYDEBUG(1185, *YYCURSOR);
17222 	yych = *++YYCURSOR;
17223 	if (yych == 'N') goto yy1186;
17224 	if (yych != 'n') goto yy55;
17225 yy1186:
17226 	YYDEBUG(1186, *YYCURSOR);
17227 	yych = *++YYCURSOR;
17228 	if (yych == 'D') goto yy1125;
17229 	if (yych == 'd') goto yy1125;
17230 	goto yy55;
17231 yy1187:
17232 	YYDEBUG(1187, *YYCURSOR);
17233 	yyaccept = 25;
17234 	yych = *(YYMARKER = ++YYCURSOR);
17235 	if (yych <= 'D') {
17236 		if (yych <= 0x1F) {
17237 			if (yych == '\t') goto yy1095;
17238 			goto yy1094;
17239 		} else {
17240 			if (yych <= ' ') goto yy1095;
17241 			if (yych <= 'C') goto yy1094;
17242 		}
17243 	} else {
17244 		if (yych <= 'c') {
17245 			if (yych == 'T') goto yy1189;
17246 			goto yy1094;
17247 		} else {
17248 			if (yych <= 'd') goto yy1188;
17249 			if (yych == 't') goto yy1189;
17250 			goto yy1094;
17251 		}
17252 	}
17253 yy1188:
17254 	YYDEBUG(1188, *YYCURSOR);
17255 	yych = *++YYCURSOR;
17256 	if (yych == 'A') goto yy1190;
17257 	if (yych == 'a') goto yy1190;
17258 	goto yy55;
17259 yy1189:
17260 	YYDEBUG(1189, *YYCURSOR);
17261 	yych = *++YYCURSOR;
17262 	if (yych == 'H') goto yy1125;
17263 	if (yych == 'h') goto yy1125;
17264 	goto yy55;
17265 yy1190:
17266 	YYDEBUG(1190, *YYCURSOR);
17267 	yych = *++YYCURSOR;
17268 	if (yych == 'Y') goto yy1100;
17269 	if (yych == 'y') goto yy1100;
17270 	goto yy55;
17271 yy1191:
17272 	YYDEBUG(1191, *YYCURSOR);
17273 	yyaccept = 0;
17274 	yych = *(YYMARKER = ++YYCURSOR);
17275 	if (yych <= 'D') {
17276 		if (yych <= '-') {
17277 			if (yych == ')') goto yy174;
17278 			if (yych <= ',') goto yy3;
17279 			goto yy182;
17280 		} else {
17281 			if (yych == '/') goto yy182;
17282 			if (yych <= '@') goto yy3;
17283 			goto yy176;
17284 		}
17285 	} else {
17286 		if (yych <= '_') {
17287 			if (yych <= 'E') goto yy1073;
17288 			if (yych <= 'Z') goto yy176;
17289 			if (yych <= '^') goto yy3;
17290 			goto yy182;
17291 		} else {
17292 			if (yych <= 'd') {
17293 				if (yych <= '`') goto yy3;
17294 				goto yy181;
17295 			} else {
17296 				if (yych <= 'e') goto yy1192;
17297 				if (yych <= 'z') goto yy181;
17298 				goto yy3;
17299 			}
17300 		}
17301 	}
17302 yy1192:
17303 	YYDEBUG(1192, *YYCURSOR);
17304 	yyaccept = 0;
17305 	yych = *(YYMARKER = ++YYCURSOR);
17306 	if (yych <= 'U') {
17307 		if (yych <= '-') {
17308 			if (yych == ')') goto yy174;
17309 			if (yych <= ',') goto yy3;
17310 			goto yy182;
17311 		} else {
17312 			if (yych == '/') goto yy182;
17313 			if (yych <= '@') goto yy3;
17314 			goto yy177;
17315 		}
17316 	} else {
17317 		if (yych <= '_') {
17318 			if (yych <= 'V') goto yy1074;
17319 			if (yych <= 'Z') goto yy177;
17320 			if (yych <= '^') goto yy3;
17321 			goto yy182;
17322 		} else {
17323 			if (yych <= 'u') {
17324 				if (yych <= '`') goto yy3;
17325 				goto yy185;
17326 			} else {
17327 				if (yych <= 'v') goto yy1193;
17328 				if (yych <= 'z') goto yy185;
17329 				goto yy3;
17330 			}
17331 		}
17332 	}
17333 yy1193:
17334 	YYDEBUG(1193, *YYCURSOR);
17335 	yyaccept = 0;
17336 	yych = *(YYMARKER = ++YYCURSOR);
17337 	if (yych <= 'H') {
17338 		if (yych <= '-') {
17339 			if (yych == ')') goto yy174;
17340 			if (yych <= ',') goto yy3;
17341 			goto yy182;
17342 		} else {
17343 			if (yych == '/') goto yy182;
17344 			if (yych <= '@') goto yy3;
17345 			goto yy178;
17346 		}
17347 	} else {
17348 		if (yych <= '_') {
17349 			if (yych <= 'I') goto yy1075;
17350 			if (yych <= 'Z') goto yy178;
17351 			if (yych <= '^') goto yy3;
17352 			goto yy182;
17353 		} else {
17354 			if (yych <= 'h') {
17355 				if (yych <= '`') goto yy3;
17356 				goto yy186;
17357 			} else {
17358 				if (yych <= 'i') goto yy1194;
17359 				if (yych <= 'z') goto yy186;
17360 				goto yy3;
17361 			}
17362 		}
17363 	}
17364 yy1194:
17365 	YYDEBUG(1194, *YYCURSOR);
17366 	yyaccept = 0;
17367 	yych = *(YYMARKER = ++YYCURSOR);
17368 	if (yych <= 'N') {
17369 		if (yych <= '-') {
17370 			if (yych == ')') goto yy174;
17371 			if (yych <= ',') goto yy3;
17372 			goto yy182;
17373 		} else {
17374 			if (yych == '/') goto yy182;
17375 			if (yych <= '@') goto yy3;
17376 			goto yy179;
17377 		}
17378 	} else {
17379 		if (yych <= '_') {
17380 			if (yych <= 'O') goto yy1076;
17381 			if (yych <= 'Z') goto yy179;
17382 			if (yych <= '^') goto yy3;
17383 			goto yy182;
17384 		} else {
17385 			if (yych <= 'n') {
17386 				if (yych <= '`') goto yy3;
17387 				goto yy187;
17388 			} else {
17389 				if (yych <= 'o') goto yy1195;
17390 				if (yych <= 'z') goto yy187;
17391 				goto yy3;
17392 			}
17393 		}
17394 	}
17395 yy1195:
17396 	YYDEBUG(1195, *YYCURSOR);
17397 	yyaccept = 0;
17398 	yych = *(YYMARKER = ++YYCURSOR);
17399 	if (yych <= 'T') {
17400 		if (yych <= ',') {
17401 			if (yych == ')') goto yy174;
17402 			goto yy3;
17403 		} else {
17404 			if (yych == '.') goto yy3;
17405 			if (yych <= '/') goto yy182;
17406 			goto yy3;
17407 		}
17408 	} else {
17409 		if (yych <= '`') {
17410 			if (yych <= 'U') goto yy1077;
17411 			if (yych == '_') goto yy182;
17412 			goto yy3;
17413 		} else {
17414 			if (yych == 'u') goto yy1196;
17415 			if (yych <= 'z') goto yy188;
17416 			goto yy3;
17417 		}
17418 	}
17419 yy1196:
17420 	YYDEBUG(1196, *YYCURSOR);
17421 	yych = *++YYCURSOR;
17422 	if (yych == 'S') goto yy1078;
17423 	if (yych != 's') goto yy189;
17424 	YYDEBUG(1197, *YYCURSOR);
17425 	yych = *++YYCURSOR;
17426 	if (yybm[0+yych] & 8) {
17427 		goto yy188;
17428 	}
17429 	if (yych <= ',') {
17430 		if (yych <= '\t') {
17431 			if (yych <= 0x08) goto yy55;
17432 			goto yy1079;
17433 		} else {
17434 			if (yych == ' ') goto yy1079;
17435 			goto yy55;
17436 		}
17437 	} else {
17438 		if (yych <= '/') {
17439 			if (yych == '.') goto yy55;
17440 			goto yy182;
17441 		} else {
17442 			if (yych == '_') goto yy182;
17443 			goto yy55;
17444 		}
17445 	}
17446 yy1198:
17447 	YYDEBUG(1198, *YYCURSOR);
17448 	yych = *++YYCURSOR;
17449 	if (yych <= 'G') {
17450 		if (yych <= ')') {
17451 			if (yych <= '(') goto yy3;
17452 			goto yy174;
17453 		} else {
17454 			if (yych <= '@') goto yy3;
17455 			if (yych <= 'F') goto yy176;
17456 			goto yy1212;
17457 		}
17458 	} else {
17459 		if (yych <= 'f') {
17460 			if (yych <= 'Z') goto yy176;
17461 			if (yych <= '`') goto yy3;
17462 			goto yy176;
17463 		} else {
17464 			if (yych <= 'g') goto yy1212;
17465 			if (yych <= 'z') goto yy176;
17466 			goto yy3;
17467 		}
17468 	}
17469 yy1199:
17470 	YYDEBUG(1199, *YYCURSOR);
17471 	yych = *++YYCURSOR;
17472 	if (yych <= 'E') {
17473 		if (yych <= ')') {
17474 			if (yych <= '(') goto yy3;
17475 			goto yy174;
17476 		} else {
17477 			if (yych <= '@') goto yy3;
17478 			if (yych <= 'D') goto yy176;
17479 		}
17480 	} else {
17481 		if (yych <= 'd') {
17482 			if (yych <= 'Z') goto yy176;
17483 			if (yych <= '`') goto yy3;
17484 			goto yy176;
17485 		} else {
17486 			if (yych <= 'e') goto yy1200;
17487 			if (yych <= 'z') goto yy176;
17488 			goto yy3;
17489 		}
17490 	}
17491 yy1200:
17492 	YYDEBUG(1200, *YYCURSOR);
17493 	yych = *++YYCURSOR;
17494 	if (yych <= 'V') {
17495 		if (yych <= ')') {
17496 			if (yych <= '(') goto yy3;
17497 			goto yy174;
17498 		} else {
17499 			if (yych <= '@') goto yy3;
17500 			if (yych <= 'U') goto yy177;
17501 		}
17502 	} else {
17503 		if (yych <= 'u') {
17504 			if (yych <= 'Z') goto yy177;
17505 			if (yych <= '`') goto yy3;
17506 			goto yy177;
17507 		} else {
17508 			if (yych <= 'v') goto yy1201;
17509 			if (yych <= 'z') goto yy177;
17510 			goto yy3;
17511 		}
17512 	}
17513 yy1201:
17514 	YYDEBUG(1201, *YYCURSOR);
17515 	yych = *++YYCURSOR;
17516 	if (yych <= 'E') {
17517 		if (yych <= ')') {
17518 			if (yych <= '(') goto yy3;
17519 			goto yy174;
17520 		} else {
17521 			if (yych <= '@') goto yy3;
17522 			if (yych <= 'D') goto yy178;
17523 		}
17524 	} else {
17525 		if (yych <= 'd') {
17526 			if (yych <= 'Z') goto yy178;
17527 			if (yych <= '`') goto yy3;
17528 			goto yy178;
17529 		} else {
17530 			if (yych <= 'e') goto yy1202;
17531 			if (yych <= 'z') goto yy178;
17532 			goto yy3;
17533 		}
17534 	}
17535 yy1202:
17536 	YYDEBUG(1202, *YYCURSOR);
17537 	yych = *++YYCURSOR;
17538 	if (yych <= 'N') {
17539 		if (yych <= ')') {
17540 			if (yych <= '(') goto yy3;
17541 			goto yy174;
17542 		} else {
17543 			if (yych <= '@') goto yy3;
17544 			if (yych <= 'M') goto yy179;
17545 		}
17546 	} else {
17547 		if (yych <= 'm') {
17548 			if (yych <= 'Z') goto yy179;
17549 			if (yych <= '`') goto yy3;
17550 			goto yy179;
17551 		} else {
17552 			if (yych <= 'n') goto yy1203;
17553 			if (yych <= 'z') goto yy179;
17554 			goto yy3;
17555 		}
17556 	}
17557 yy1203:
17558 	YYDEBUG(1203, *YYCURSOR);
17559 	yyaccept = 0;
17560 	yych = *(YYMARKER = ++YYCURSOR);
17561 	if (yych <= 'S') {
17562 		if (yych == ')') goto yy174;
17563 		goto yy3;
17564 	} else {
17565 		if (yych <= 'T') goto yy1204;
17566 		if (yych != 't') goto yy3;
17567 	}
17568 yy1204:
17569 	YYDEBUG(1204, *YYCURSOR);
17570 	yych = *++YYCURSOR;
17571 	if (yych == 'H') goto yy1205;
17572 	if (yych != 'h') goto yy55;
17573 yy1205:
17574 	YYDEBUG(1205, *YYCURSOR);
17575 	yych = *++YYCURSOR;
17576 	if (yych == '\t') goto yy1206;
17577 	if (yych != ' ') goto yy55;
17578 yy1206:
17579 	YYDEBUG(1206, *YYCURSOR);
17580 	++YYCURSOR;
17581 	if ((YYLIMIT - YYCURSOR) < 12) YYFILL(12);
17582 	yych = *YYCURSOR;
17583 yy1207:
17584 	YYDEBUG(1207, *YYCURSOR);
17585 	if (yych <= 'X') {
17586 		if (yych <= 'G') {
17587 			if (yych <= ' ') {
17588 				if (yych == '\t') goto yy1206;
17589 				if (yych <= 0x1F) goto yy55;
17590 				goto yy1206;
17591 			} else {
17592 				if (yych <= 'D') {
17593 					if (yych <= 'C') goto yy55;
17594 					goto yy1086;
17595 				} else {
17596 					if (yych == 'F') goto yy1087;
17597 					goto yy55;
17598 				}
17599 			}
17600 		} else {
17601 			if (yych <= 'S') {
17602 				if (yych <= 'L') {
17603 					if (yych <= 'H') goto yy1085;
17604 					goto yy55;
17605 				} else {
17606 					if (yych <= 'M') goto yy1081;
17607 					if (yych <= 'R') goto yy55;
17608 					goto yy1084;
17609 				}
17610 			} else {
17611 				if (yych <= 'U') {
17612 					if (yych <= 'T') goto yy1090;
17613 					goto yy1083;
17614 				} else {
17615 					if (yych != 'W') goto yy55;
17616 				}
17617 			}
17618 		}
17619 	} else {
17620 		if (yych <= 'r') {
17621 			if (yych <= 'f') {
17622 				if (yych <= 'c') {
17623 					if (yych <= 'Y') goto yy1088;
17624 					goto yy55;
17625 				} else {
17626 					if (yych <= 'd') goto yy1086;
17627 					if (yych <= 'e') goto yy55;
17628 					goto yy1087;
17629 				}
17630 			} else {
17631 				if (yych <= 'h') {
17632 					if (yych <= 'g') goto yy55;
17633 					goto yy1085;
17634 				} else {
17635 					if (yych == 'm') goto yy1081;
17636 					goto yy55;
17637 				}
17638 			}
17639 		} else {
17640 			if (yych <= 'w') {
17641 				if (yych <= 't') {
17642 					if (yych <= 's') goto yy1084;
17643 					goto yy1090;
17644 				} else {
17645 					if (yych <= 'u') goto yy1083;
17646 					if (yych <= 'v') goto yy55;
17647 				}
17648 			} else {
17649 				if (yych <= 'y') {
17650 					if (yych <= 'x') goto yy55;
17651 					goto yy1088;
17652 				} else {
17653 					if (yych == 0xC2) goto yy1082;
17654 					goto yy55;
17655 				}
17656 			}
17657 		}
17658 	}
17659 	YYDEBUG(1208, *YYCURSOR);
17660 	yych = *++YYCURSOR;
17661 	if (yych == 'E') goto yy1209;
17662 	if (yych != 'e') goto yy55;
17663 yy1209:
17664 	YYDEBUG(1209, *YYCURSOR);
17665 	yych = *++YYCURSOR;
17666 	if (yych <= 'E') {
17667 		if (yych <= 'C') goto yy55;
17668 		if (yych <= 'D') goto yy1111;
17669 	} else {
17670 		if (yych <= 'c') goto yy55;
17671 		if (yych <= 'd') goto yy1111;
17672 		if (yych >= 'f') goto yy55;
17673 	}
17674 	YYDEBUG(1210, *YYCURSOR);
17675 	yych = *++YYCURSOR;
17676 	if (yych == 'K') goto yy1211;
17677 	if (yych != 'k') goto yy55;
17678 yy1211:
17679 	YYDEBUG(1211, *YYCURSOR);
17680 	yych = *++YYCURSOR;
17681 	if (yych <= 'S') {
17682 		if (yych == 'D') goto yy1120;
17683 		if (yych <= 'R') goto yy55;
17684 		goto yy1119;
17685 	} else {
17686 		if (yych <= 'd') {
17687 			if (yych <= 'c') goto yy55;
17688 			goto yy1120;
17689 		} else {
17690 			if (yych == 's') goto yy1119;
17691 			goto yy55;
17692 		}
17693 	}
17694 yy1212:
17695 	YYDEBUG(1212, *YYCURSOR);
17696 	yych = *++YYCURSOR;
17697 	if (yych <= 'H') {
17698 		if (yych <= ')') {
17699 			if (yych <= '(') goto yy3;
17700 			goto yy174;
17701 		} else {
17702 			if (yych <= '@') goto yy3;
17703 			if (yych <= 'G') goto yy177;
17704 		}
17705 	} else {
17706 		if (yych <= 'g') {
17707 			if (yych <= 'Z') goto yy177;
17708 			if (yych <= '`') goto yy3;
17709 			goto yy177;
17710 		} else {
17711 			if (yych <= 'h') goto yy1213;
17712 			if (yych <= 'z') goto yy177;
17713 			goto yy3;
17714 		}
17715 	}
17716 yy1213:
17717 	YYDEBUG(1213, *YYCURSOR);
17718 	yych = *++YYCURSOR;
17719 	if (yych <= 'T') {
17720 		if (yych <= ')') {
17721 			if (yych <= '(') goto yy3;
17722 			goto yy174;
17723 		} else {
17724 			if (yych <= '@') goto yy3;
17725 			if (yych <= 'S') goto yy178;
17726 		}
17727 	} else {
17728 		if (yych <= 's') {
17729 			if (yych <= 'Z') goto yy178;
17730 			if (yych <= '`') goto yy3;
17731 			goto yy178;
17732 		} else {
17733 			if (yych <= 't') goto yy1214;
17734 			if (yych <= 'z') goto yy178;
17735 			goto yy3;
17736 		}
17737 	}
17738 yy1214:
17739 	YYDEBUG(1214, *YYCURSOR);
17740 	yyaccept = 0;
17741 	yych = *(YYMARKER = ++YYCURSOR);
17742 	if (yych <= '@') {
17743 		if (yych <= 0x1F) {
17744 			if (yych == '\t') goto yy1206;
17745 			goto yy3;
17746 		} else {
17747 			if (yych <= ' ') goto yy1206;
17748 			if (yych == ')') goto yy174;
17749 			goto yy3;
17750 		}
17751 	} else {
17752 		if (yych <= '`') {
17753 			if (yych == 'H') goto yy1215;
17754 			if (yych <= 'Z') goto yy179;
17755 			goto yy3;
17756 		} else {
17757 			if (yych == 'h') goto yy1215;
17758 			if (yych <= 'z') goto yy179;
17759 			goto yy3;
17760 		}
17761 	}
17762 yy1215:
17763 	YYDEBUG(1215, *YYCURSOR);
17764 	yyaccept = 0;
17765 	yych = *(YYMARKER = ++YYCURSOR);
17766 	if (yych <= 0x1F) {
17767 		if (yych == '\t') goto yy1206;
17768 		goto yy3;
17769 	} else {
17770 		if (yych <= ' ') goto yy1206;
17771 		if (yych == ')') goto yy174;
17772 		goto yy3;
17773 	}
17774 yy1216:
17775 	YYDEBUG(1216, *YYCURSOR);
17776 	yyaccept = 0;
17777 	yych = *(YYMARKER = ++YYCURSOR);
17778 	if (yych <= 'F') {
17779 		if (yych <= '-') {
17780 			if (yych == ')') goto yy174;
17781 			if (yych <= ',') goto yy3;
17782 			goto yy182;
17783 		} else {
17784 			if (yych == '/') goto yy182;
17785 			if (yych <= '@') goto yy3;
17786 			goto yy176;
17787 		}
17788 	} else {
17789 		if (yych <= '_') {
17790 			if (yych <= 'G') goto yy1212;
17791 			if (yych <= 'Z') goto yy176;
17792 			if (yych <= '^') goto yy3;
17793 			goto yy182;
17794 		} else {
17795 			if (yych <= 'f') {
17796 				if (yych <= '`') goto yy3;
17797 				goto yy181;
17798 			} else {
17799 				if (yych <= 'g') goto yy1224;
17800 				if (yych <= 'z') goto yy181;
17801 				goto yy3;
17802 			}
17803 		}
17804 	}
17805 yy1217:
17806 	YYDEBUG(1217, *YYCURSOR);
17807 	yyaccept = 0;
17808 	yych = *(YYMARKER = ++YYCURSOR);
17809 	if (yych <= 'D') {
17810 		if (yych <= '-') {
17811 			if (yych == ')') goto yy174;
17812 			if (yych <= ',') goto yy3;
17813 			goto yy182;
17814 		} else {
17815 			if (yych == '/') goto yy182;
17816 			if (yych <= '@') goto yy3;
17817 			goto yy176;
17818 		}
17819 	} else {
17820 		if (yych <= '_') {
17821 			if (yych <= 'E') goto yy1200;
17822 			if (yych <= 'Z') goto yy176;
17823 			if (yych <= '^') goto yy3;
17824 			goto yy182;
17825 		} else {
17826 			if (yych <= 'd') {
17827 				if (yych <= '`') goto yy3;
17828 				goto yy181;
17829 			} else {
17830 				if (yych <= 'e') goto yy1218;
17831 				if (yych <= 'z') goto yy181;
17832 				goto yy3;
17833 			}
17834 		}
17835 	}
17836 yy1218:
17837 	YYDEBUG(1218, *YYCURSOR);
17838 	yyaccept = 0;
17839 	yych = *(YYMARKER = ++YYCURSOR);
17840 	if (yych <= 'U') {
17841 		if (yych <= '-') {
17842 			if (yych == ')') goto yy174;
17843 			if (yych <= ',') goto yy3;
17844 			goto yy182;
17845 		} else {
17846 			if (yych == '/') goto yy182;
17847 			if (yych <= '@') goto yy3;
17848 			goto yy177;
17849 		}
17850 	} else {
17851 		if (yych <= '_') {
17852 			if (yych <= 'V') goto yy1201;
17853 			if (yych <= 'Z') goto yy177;
17854 			if (yych <= '^') goto yy3;
17855 			goto yy182;
17856 		} else {
17857 			if (yych <= 'u') {
17858 				if (yych <= '`') goto yy3;
17859 				goto yy185;
17860 			} else {
17861 				if (yych <= 'v') goto yy1219;
17862 				if (yych <= 'z') goto yy185;
17863 				goto yy3;
17864 			}
17865 		}
17866 	}
17867 yy1219:
17868 	YYDEBUG(1219, *YYCURSOR);
17869 	yyaccept = 0;
17870 	yych = *(YYMARKER = ++YYCURSOR);
17871 	if (yych <= 'D') {
17872 		if (yych <= '-') {
17873 			if (yych == ')') goto yy174;
17874 			if (yych <= ',') goto yy3;
17875 			goto yy182;
17876 		} else {
17877 			if (yych == '/') goto yy182;
17878 			if (yych <= '@') goto yy3;
17879 			goto yy178;
17880 		}
17881 	} else {
17882 		if (yych <= '_') {
17883 			if (yych <= 'E') goto yy1202;
17884 			if (yych <= 'Z') goto yy178;
17885 			if (yych <= '^') goto yy3;
17886 			goto yy182;
17887 		} else {
17888 			if (yych <= 'd') {
17889 				if (yych <= '`') goto yy3;
17890 				goto yy186;
17891 			} else {
17892 				if (yych <= 'e') goto yy1220;
17893 				if (yych <= 'z') goto yy186;
17894 				goto yy3;
17895 			}
17896 		}
17897 	}
17898 yy1220:
17899 	YYDEBUG(1220, *YYCURSOR);
17900 	yyaccept = 0;
17901 	yych = *(YYMARKER = ++YYCURSOR);
17902 	if (yych <= 'M') {
17903 		if (yych <= '-') {
17904 			if (yych == ')') goto yy174;
17905 			if (yych <= ',') goto yy3;
17906 			goto yy182;
17907 		} else {
17908 			if (yych == '/') goto yy182;
17909 			if (yych <= '@') goto yy3;
17910 			goto yy179;
17911 		}
17912 	} else {
17913 		if (yych <= '_') {
17914 			if (yych <= 'N') goto yy1203;
17915 			if (yych <= 'Z') goto yy179;
17916 			if (yych <= '^') goto yy3;
17917 			goto yy182;
17918 		} else {
17919 			if (yych <= 'm') {
17920 				if (yych <= '`') goto yy3;
17921 				goto yy187;
17922 			} else {
17923 				if (yych <= 'n') goto yy1221;
17924 				if (yych <= 'z') goto yy187;
17925 				goto yy3;
17926 			}
17927 		}
17928 	}
17929 yy1221:
17930 	YYDEBUG(1221, *YYCURSOR);
17931 	yyaccept = 0;
17932 	yych = *(YYMARKER = ++YYCURSOR);
17933 	if (yych <= 'S') {
17934 		if (yych <= ',') {
17935 			if (yych == ')') goto yy174;
17936 			goto yy3;
17937 		} else {
17938 			if (yych == '.') goto yy3;
17939 			if (yych <= '/') goto yy182;
17940 			goto yy3;
17941 		}
17942 	} else {
17943 		if (yych <= '`') {
17944 			if (yych <= 'T') goto yy1204;
17945 			if (yych == '_') goto yy182;
17946 			goto yy3;
17947 		} else {
17948 			if (yych == 't') goto yy1222;
17949 			if (yych <= 'z') goto yy188;
17950 			goto yy3;
17951 		}
17952 	}
17953 yy1222:
17954 	YYDEBUG(1222, *YYCURSOR);
17955 	yych = *++YYCURSOR;
17956 	if (yych == 'H') goto yy1205;
17957 	if (yych != 'h') goto yy189;
17958 yy1223:
17959 	YYDEBUG(1223, *YYCURSOR);
17960 	yych = *++YYCURSOR;
17961 	if (yybm[0+yych] & 8) {
17962 		goto yy188;
17963 	}
17964 	if (yych <= ',') {
17965 		if (yych <= '\t') {
17966 			if (yych <= 0x08) goto yy55;
17967 			goto yy1206;
17968 		} else {
17969 			if (yych == ' ') goto yy1206;
17970 			goto yy55;
17971 		}
17972 	} else {
17973 		if (yych <= '/') {
17974 			if (yych == '.') goto yy55;
17975 			goto yy182;
17976 		} else {
17977 			if (yych == '_') goto yy182;
17978 			goto yy55;
17979 		}
17980 	}
17981 yy1224:
17982 	YYDEBUG(1224, *YYCURSOR);
17983 	yyaccept = 0;
17984 	yych = *(YYMARKER = ++YYCURSOR);
17985 	if (yych <= 'G') {
17986 		if (yych <= '-') {
17987 			if (yych == ')') goto yy174;
17988 			if (yych <= ',') goto yy3;
17989 			goto yy182;
17990 		} else {
17991 			if (yych == '/') goto yy182;
17992 			if (yych <= '@') goto yy3;
17993 			goto yy177;
17994 		}
17995 	} else {
17996 		if (yych <= '_') {
17997 			if (yych <= 'H') goto yy1213;
17998 			if (yych <= 'Z') goto yy177;
17999 			if (yych <= '^') goto yy3;
18000 			goto yy182;
18001 		} else {
18002 			if (yych <= 'g') {
18003 				if (yych <= '`') goto yy3;
18004 				goto yy185;
18005 			} else {
18006 				if (yych <= 'h') goto yy1225;
18007 				if (yych <= 'z') goto yy185;
18008 				goto yy3;
18009 			}
18010 		}
18011 	}
18012 yy1225:
18013 	YYDEBUG(1225, *YYCURSOR);
18014 	yyaccept = 0;
18015 	yych = *(YYMARKER = ++YYCURSOR);
18016 	if (yych <= 'S') {
18017 		if (yych <= '-') {
18018 			if (yych == ')') goto yy174;
18019 			if (yych <= ',') goto yy3;
18020 			goto yy182;
18021 		} else {
18022 			if (yych == '/') goto yy182;
18023 			if (yych <= '@') goto yy3;
18024 			goto yy178;
18025 		}
18026 	} else {
18027 		if (yych <= '_') {
18028 			if (yych <= 'T') goto yy1214;
18029 			if (yych <= 'Z') goto yy178;
18030 			if (yych <= '^') goto yy3;
18031 			goto yy182;
18032 		} else {
18033 			if (yych <= 's') {
18034 				if (yych <= '`') goto yy3;
18035 				goto yy186;
18036 			} else {
18037 				if (yych <= 't') goto yy1226;
18038 				if (yych <= 'z') goto yy186;
18039 				goto yy3;
18040 			}
18041 		}
18042 	}
18043 yy1226:
18044 	YYDEBUG(1226, *YYCURSOR);
18045 	yyaccept = 0;
18046 	yych = *(YYMARKER = ++YYCURSOR);
18047 	if (yych <= '/') {
18048 		if (yych <= '(') {
18049 			if (yych <= '\t') {
18050 				if (yych <= 0x08) goto yy3;
18051 				goto yy1206;
18052 			} else {
18053 				if (yych == ' ') goto yy1206;
18054 				goto yy3;
18055 			}
18056 		} else {
18057 			if (yych <= ',') {
18058 				if (yych <= ')') goto yy174;
18059 				goto yy3;
18060 			} else {
18061 				if (yych == '.') goto yy3;
18062 				goto yy182;
18063 			}
18064 		}
18065 	} else {
18066 		if (yych <= '^') {
18067 			if (yych <= 'G') {
18068 				if (yych <= '@') goto yy3;
18069 				goto yy179;
18070 			} else {
18071 				if (yych <= 'H') goto yy1215;
18072 				if (yych <= 'Z') goto yy179;
18073 				goto yy3;
18074 			}
18075 		} else {
18076 			if (yych <= 'g') {
18077 				if (yych <= '_') goto yy182;
18078 				if (yych <= '`') goto yy3;
18079 				goto yy187;
18080 			} else {
18081 				if (yych <= 'h') goto yy1227;
18082 				if (yych <= 'z') goto yy187;
18083 				goto yy3;
18084 			}
18085 		}
18086 	}
18087 yy1227:
18088 	YYDEBUG(1227, *YYCURSOR);
18089 	yyaccept = 0;
18090 	yych = *(YYMARKER = ++YYCURSOR);
18091 	if (yybm[0+yych] & 8) {
18092 		goto yy188;
18093 	}
18094 	if (yych <= ')') {
18095 		if (yych <= 0x1F) {
18096 			if (yych == '\t') goto yy1206;
18097 			goto yy3;
18098 		} else {
18099 			if (yych <= ' ') goto yy1206;
18100 			if (yych <= '(') goto yy3;
18101 			goto yy174;
18102 		}
18103 	} else {
18104 		if (yych <= '.') {
18105 			if (yych == '-') goto yy182;
18106 			goto yy3;
18107 		} else {
18108 			if (yych <= '/') goto yy182;
18109 			if (yych == '_') goto yy182;
18110 			goto yy3;
18111 		}
18112 	}
18113 yy1228:
18114 	YYDEBUG(1228, *YYCURSOR);
18115 	yych = *++YYCURSOR;
18116 	if (yych <= 'V') {
18117 		if (yych <= 'B') {
18118 			if (yych == ')') goto yy174;
18119 			if (yych <= '@') goto yy3;
18120 			goto yy176;
18121 		} else {
18122 			if (yych <= 'O') {
18123 				if (yych <= 'C') goto yy1244;
18124 				goto yy176;
18125 			} else {
18126 				if (yych <= 'P') goto yy1246;
18127 				if (yych <= 'U') goto yy176;
18128 				goto yy1245;
18129 			}
18130 		}
18131 	} else {
18132 		if (yych <= 'o') {
18133 			if (yych <= '`') {
18134 				if (yych <= 'Z') goto yy176;
18135 				goto yy3;
18136 			} else {
18137 				if (yych == 'c') goto yy1244;
18138 				goto yy176;
18139 			}
18140 		} else {
18141 			if (yych <= 'u') {
18142 				if (yych <= 'p') goto yy1246;
18143 				goto yy176;
18144 			} else {
18145 				if (yych <= 'v') goto yy1245;
18146 				if (yych <= 'z') goto yy176;
18147 				goto yy3;
18148 			}
18149 		}
18150 	}
18151 yy1229:
18152 	YYDEBUG(1229, *YYCURSOR);
18153 	yych = *++YYCURSOR;
18154 	if (yych <= 'T') {
18155 		if (yych <= ')') {
18156 			if (yych <= '(') goto yy3;
18157 			goto yy174;
18158 		} else {
18159 			if (yych <= '@') goto yy3;
18160 			if (yych <= 'S') goto yy176;
18161 			goto yy1239;
18162 		}
18163 	} else {
18164 		if (yych <= 's') {
18165 			if (yych <= 'Z') goto yy176;
18166 			if (yych <= '`') goto yy3;
18167 			goto yy176;
18168 		} else {
18169 			if (yych <= 't') goto yy1239;
18170 			if (yych <= 'z') goto yy176;
18171 			goto yy3;
18172 		}
18173 	}
18174 yy1230:
18175 	YYDEBUG(1230, *YYCURSOR);
18176 	yych = *++YYCURSOR;
18177 	if (yych <= 'X') {
18178 		if (yych <= ')') {
18179 			if (yych <= '(') goto yy3;
18180 			goto yy174;
18181 		} else {
18182 			if (yych <= '@') goto yy3;
18183 			if (yych <= 'W') goto yy176;
18184 			goto yy1236;
18185 		}
18186 	} else {
18187 		if (yych <= 'w') {
18188 			if (yych <= 'Z') goto yy176;
18189 			if (yych <= '`') goto yy3;
18190 			goto yy176;
18191 		} else {
18192 			if (yych <= 'x') goto yy1236;
18193 			if (yych <= 'z') goto yy176;
18194 			goto yy3;
18195 		}
18196 	}
18197 yy1231:
18198 	YYDEBUG(1231, *YYCURSOR);
18199 	yych = *++YYCURSOR;
18200 	if (yych <= 'N') {
18201 		if (yych <= ')') {
18202 			if (yych <= '(') goto yy3;
18203 			goto yy174;
18204 		} else {
18205 			if (yych <= '@') goto yy3;
18206 			if (yych <= 'M') goto yy176;
18207 		}
18208 	} else {
18209 		if (yych <= 'm') {
18210 			if (yych <= 'Z') goto yy176;
18211 			if (yych <= '`') goto yy3;
18212 			goto yy176;
18213 		} else {
18214 			if (yych <= 'n') goto yy1232;
18215 			if (yych <= 'z') goto yy176;
18216 			goto yy3;
18217 		}
18218 	}
18219 yy1232:
18220 	YYDEBUG(1232, *YYCURSOR);
18221 	yych = *++YYCURSOR;
18222 	if (yych <= 'D') {
18223 		if (yych <= ')') {
18224 			if (yych <= '(') goto yy201;
18225 			goto yy174;
18226 		} else {
18227 			if (yych <= '@') goto yy201;
18228 			if (yych <= 'C') goto yy177;
18229 		}
18230 	} else {
18231 		if (yych <= 'c') {
18232 			if (yych <= 'Z') goto yy177;
18233 			if (yych <= '`') goto yy201;
18234 			goto yy177;
18235 		} else {
18236 			if (yych <= 'd') goto yy1233;
18237 			if (yych <= 'z') goto yy177;
18238 			goto yy201;
18239 		}
18240 	}
18241 yy1233:
18242 	YYDEBUG(1233, *YYCURSOR);
18243 	yych = *++YYCURSOR;
18244 	if (yych <= 'A') {
18245 		if (yych == ')') goto yy174;
18246 		if (yych <= '@') goto yy3;
18247 	} else {
18248 		if (yych <= '`') {
18249 			if (yych <= 'Z') goto yy178;
18250 			goto yy3;
18251 		} else {
18252 			if (yych <= 'a') goto yy1234;
18253 			if (yych <= 'z') goto yy178;
18254 			goto yy3;
18255 		}
18256 	}
18257 yy1234:
18258 	YYDEBUG(1234, *YYCURSOR);
18259 	yych = *++YYCURSOR;
18260 	if (yych <= 'Y') {
18261 		if (yych <= ')') {
18262 			if (yych <= '(') goto yy3;
18263 			goto yy174;
18264 		} else {
18265 			if (yych <= '@') goto yy3;
18266 			if (yych <= 'X') goto yy179;
18267 		}
18268 	} else {
18269 		if (yych <= 'x') {
18270 			if (yych <= 'Z') goto yy179;
18271 			if (yych <= '`') goto yy3;
18272 			goto yy179;
18273 		} else {
18274 			if (yych <= 'y') goto yy1235;
18275 			if (yych <= 'z') goto yy179;
18276 			goto yy3;
18277 		}
18278 	}
18279 yy1235:
18280 	YYDEBUG(1235, *YYCURSOR);
18281 	yych = *++YYCURSOR;
18282 	if (yych == ')') goto yy174;
18283 	goto yy201;
18284 yy1236:
18285 	YYDEBUG(1236, *YYCURSOR);
18286 	yych = *++YYCURSOR;
18287 	if (yych <= 'T') {
18288 		if (yych <= ')') {
18289 			if (yych <= '(') goto yy3;
18290 			goto yy174;
18291 		} else {
18292 			if (yych <= '@') goto yy3;
18293 			if (yych <= 'S') goto yy177;
18294 		}
18295 	} else {
18296 		if (yych <= 's') {
18297 			if (yych <= 'Z') goto yy177;
18298 			if (yych <= '`') goto yy3;
18299 			goto yy177;
18300 		} else {
18301 			if (yych <= 't') goto yy1237;
18302 			if (yych <= 'z') goto yy177;
18303 			goto yy3;
18304 		}
18305 	}
18306 yy1237:
18307 	YYDEBUG(1237, *YYCURSOR);
18308 	yych = *++YYCURSOR;
18309 	if (yych <= 'H') {
18310 		if (yych <= ')') {
18311 			if (yych <= '(') goto yy3;
18312 			goto yy174;
18313 		} else {
18314 			if (yych <= '@') goto yy3;
18315 			if (yych <= 'G') goto yy178;
18316 		}
18317 	} else {
18318 		if (yych <= 'g') {
18319 			if (yych <= 'Z') goto yy178;
18320 			if (yych <= '`') goto yy3;
18321 			goto yy178;
18322 		} else {
18323 			if (yych <= 'h') goto yy1238;
18324 			if (yych <= 'z') goto yy178;
18325 			goto yy3;
18326 		}
18327 	}
18328 yy1238:
18329 	YYDEBUG(1238, *YYCURSOR);
18330 	yyaccept = 0;
18331 	yych = *(YYMARKER = ++YYCURSOR);
18332 	if (yych <= '(') {
18333 		if (yych <= '\t') {
18334 			if (yych <= 0x08) goto yy3;
18335 			goto yy1206;
18336 		} else {
18337 			if (yych == ' ') goto yy1206;
18338 			goto yy3;
18339 		}
18340 	} else {
18341 		if (yych <= 'Z') {
18342 			if (yych <= ')') goto yy174;
18343 			if (yych <= '@') goto yy3;
18344 			goto yy179;
18345 		} else {
18346 			if (yych <= '`') goto yy3;
18347 			if (yych <= 'z') goto yy179;
18348 			goto yy3;
18349 		}
18350 	}
18351 yy1239:
18352 	YYDEBUG(1239, *YYCURSOR);
18353 	yych = *++YYCURSOR;
18354 	if (yych <= 'U') {
18355 		if (yych <= ')') {
18356 			if (yych <= '(') goto yy201;
18357 			goto yy174;
18358 		} else {
18359 			if (yych <= '@') goto yy201;
18360 			if (yych <= 'T') goto yy177;
18361 		}
18362 	} else {
18363 		if (yych <= 't') {
18364 			if (yych <= 'Z') goto yy177;
18365 			if (yych <= '`') goto yy201;
18366 			goto yy177;
18367 		} else {
18368 			if (yych <= 'u') goto yy1240;
18369 			if (yych <= 'z') goto yy177;
18370 			goto yy201;
18371 		}
18372 	}
18373 yy1240:
18374 	YYDEBUG(1240, *YYCURSOR);
18375 	yych = *++YYCURSOR;
18376 	if (yych <= 'R') {
18377 		if (yych <= ')') {
18378 			if (yych <= '(') goto yy3;
18379 			goto yy174;
18380 		} else {
18381 			if (yych <= '@') goto yy3;
18382 			if (yych <= 'Q') goto yy178;
18383 		}
18384 	} else {
18385 		if (yych <= 'q') {
18386 			if (yych <= 'Z') goto yy178;
18387 			if (yych <= '`') goto yy3;
18388 			goto yy178;
18389 		} else {
18390 			if (yych <= 'r') goto yy1241;
18391 			if (yych <= 'z') goto yy178;
18392 			goto yy3;
18393 		}
18394 	}
18395 yy1241:
18396 	YYDEBUG(1241, *YYCURSOR);
18397 	yych = *++YYCURSOR;
18398 	if (yych <= 'D') {
18399 		if (yych <= ')') {
18400 			if (yych <= '(') goto yy3;
18401 			goto yy174;
18402 		} else {
18403 			if (yych <= '@') goto yy3;
18404 			if (yych <= 'C') goto yy179;
18405 		}
18406 	} else {
18407 		if (yych <= 'c') {
18408 			if (yych <= 'Z') goto yy179;
18409 			if (yych <= '`') goto yy3;
18410 			goto yy179;
18411 		} else {
18412 			if (yych <= 'd') goto yy1242;
18413 			if (yych <= 'z') goto yy179;
18414 			goto yy3;
18415 		}
18416 	}
18417 yy1242:
18418 	YYDEBUG(1242, *YYCURSOR);
18419 	yyaccept = 0;
18420 	yych = *(YYMARKER = ++YYCURSOR);
18421 	if (yych <= '@') {
18422 		if (yych == ')') goto yy174;
18423 		goto yy3;
18424 	} else {
18425 		if (yych <= 'A') goto yy1243;
18426 		if (yych != 'a') goto yy3;
18427 	}
18428 yy1243:
18429 	YYDEBUG(1243, *YYCURSOR);
18430 	yych = *++YYCURSOR;
18431 	if (yych == 'Y') goto yy207;
18432 	if (yych == 'y') goto yy207;
18433 	goto yy55;
18434 yy1244:
18435 	YYDEBUG(1244, *YYCURSOR);
18436 	yych = *++YYCURSOR;
18437 	if (yych <= 'O') {
18438 		if (yych <= ')') {
18439 			if (yych <= '(') goto yy3;
18440 			goto yy174;
18441 		} else {
18442 			if (yych <= '@') goto yy3;
18443 			if (yych <= 'N') goto yy177;
18444 			goto yy1255;
18445 		}
18446 	} else {
18447 		if (yych <= 'n') {
18448 			if (yych <= 'Z') goto yy177;
18449 			if (yych <= '`') goto yy3;
18450 			goto yy177;
18451 		} else {
18452 			if (yych <= 'o') goto yy1255;
18453 			if (yych <= 'z') goto yy177;
18454 			goto yy3;
18455 		}
18456 	}
18457 yy1245:
18458 	YYDEBUG(1245, *YYCURSOR);
18459 	yych = *++YYCURSOR;
18460 	if (yych <= 'E') {
18461 		if (yych <= ')') {
18462 			if (yych <= '(') goto yy3;
18463 			goto yy174;
18464 		} else {
18465 			if (yych <= '@') goto yy3;
18466 			if (yych <= 'D') goto yy177;
18467 			goto yy1252;
18468 		}
18469 	} else {
18470 		if (yych <= 'd') {
18471 			if (yych <= 'Z') goto yy177;
18472 			if (yych <= '`') goto yy3;
18473 			goto yy177;
18474 		} else {
18475 			if (yych <= 'e') goto yy1252;
18476 			if (yych <= 'z') goto yy177;
18477 			goto yy3;
18478 		}
18479 	}
18480 yy1246:
18481 	YYDEBUG(1246, *YYCURSOR);
18482 	yyaccept = 5;
18483 	yych = *(YYMARKER = ++YYCURSOR);
18484 	if (yych <= '/') {
18485 		if (yych <= '(') {
18486 			if (yych <= '\t') {
18487 				if (yych <= 0x08) goto yy228;
18488 				goto yy230;
18489 			} else {
18490 				if (yych == ' ') goto yy230;
18491 				goto yy228;
18492 			}
18493 		} else {
18494 			if (yych <= ',') {
18495 				if (yych <= ')') goto yy174;
18496 				goto yy228;
18497 			} else {
18498 				if (yych <= '-') goto yy231;
18499 				if (yych <= '.') goto yy230;
18500 				goto yy228;
18501 			}
18502 		}
18503 	} else {
18504 		if (yych <= 'Z') {
18505 			if (yych <= '@') {
18506 				if (yych <= '9') goto yy230;
18507 				goto yy228;
18508 			} else {
18509 				if (yych != 'T') goto yy177;
18510 			}
18511 		} else {
18512 			if (yych <= 's') {
18513 				if (yych <= '`') goto yy228;
18514 				goto yy177;
18515 			} else {
18516 				if (yych <= 't') goto yy1247;
18517 				if (yych <= 'z') goto yy177;
18518 				goto yy228;
18519 			}
18520 		}
18521 	}
18522 yy1247:
18523 	YYDEBUG(1247, *YYCURSOR);
18524 	yyaccept = 5;
18525 	yych = *(YYMARKER = ++YYCURSOR);
18526 	if (yych <= '/') {
18527 		if (yych <= '(') {
18528 			if (yych <= '\t') {
18529 				if (yych <= 0x08) goto yy228;
18530 				goto yy230;
18531 			} else {
18532 				if (yych == ' ') goto yy230;
18533 				goto yy228;
18534 			}
18535 		} else {
18536 			if (yych <= ',') {
18537 				if (yych <= ')') goto yy174;
18538 				goto yy228;
18539 			} else {
18540 				if (yych <= '-') goto yy231;
18541 				if (yych <= '.') goto yy230;
18542 				goto yy228;
18543 			}
18544 		}
18545 	} else {
18546 		if (yych <= 'Z') {
18547 			if (yych <= '@') {
18548 				if (yych <= '9') goto yy230;
18549 				goto yy228;
18550 			} else {
18551 				if (yych != 'E') goto yy178;
18552 			}
18553 		} else {
18554 			if (yych <= 'd') {
18555 				if (yych <= '`') goto yy228;
18556 				goto yy178;
18557 			} else {
18558 				if (yych <= 'e') goto yy1248;
18559 				if (yych <= 'z') goto yy178;
18560 				goto yy228;
18561 			}
18562 		}
18563 	}
18564 yy1248:
18565 	YYDEBUG(1248, *YYCURSOR);
18566 	yych = *++YYCURSOR;
18567 	if (yych <= 'M') {
18568 		if (yych <= ')') {
18569 			if (yych <= '(') goto yy3;
18570 			goto yy174;
18571 		} else {
18572 			if (yych <= '@') goto yy3;
18573 			if (yych <= 'L') goto yy179;
18574 		}
18575 	} else {
18576 		if (yych <= 'l') {
18577 			if (yych <= 'Z') goto yy179;
18578 			if (yych <= '`') goto yy3;
18579 			goto yy179;
18580 		} else {
18581 			if (yych <= 'm') goto yy1249;
18582 			if (yych <= 'z') goto yy179;
18583 			goto yy3;
18584 		}
18585 	}
18586 yy1249:
18587 	YYDEBUG(1249, *YYCURSOR);
18588 	yyaccept = 0;
18589 	yych = *(YYMARKER = ++YYCURSOR);
18590 	if (yych <= 'A') {
18591 		if (yych == ')') goto yy174;
18592 		goto yy3;
18593 	} else {
18594 		if (yych <= 'B') goto yy1250;
18595 		if (yych != 'b') goto yy3;
18596 	}
18597 yy1250:
18598 	YYDEBUG(1250, *YYCURSOR);
18599 	yych = *++YYCURSOR;
18600 	if (yych == 'E') goto yy1251;
18601 	if (yych != 'e') goto yy55;
18602 yy1251:
18603 	YYDEBUG(1251, *YYCURSOR);
18604 	yych = *++YYCURSOR;
18605 	if (yych == 'R') goto yy239;
18606 	if (yych == 'r') goto yy239;
18607 	goto yy55;
18608 yy1252:
18609 	YYDEBUG(1252, *YYCURSOR);
18610 	yych = *++YYCURSOR;
18611 	if (yych <= 'N') {
18612 		if (yych <= ')') {
18613 			if (yych <= '(') goto yy3;
18614 			goto yy174;
18615 		} else {
18616 			if (yych <= '@') goto yy3;
18617 			if (yych <= 'M') goto yy178;
18618 		}
18619 	} else {
18620 		if (yych <= 'm') {
18621 			if (yych <= 'Z') goto yy178;
18622 			if (yych <= '`') goto yy3;
18623 			goto yy178;
18624 		} else {
18625 			if (yych <= 'n') goto yy1253;
18626 			if (yych <= 'z') goto yy178;
18627 			goto yy3;
18628 		}
18629 	}
18630 yy1253:
18631 	YYDEBUG(1253, *YYCURSOR);
18632 	yych = *++YYCURSOR;
18633 	if (yych <= 'T') {
18634 		if (yych <= ')') {
18635 			if (yych <= '(') goto yy3;
18636 			goto yy174;
18637 		} else {
18638 			if (yych <= '@') goto yy3;
18639 			if (yych <= 'S') goto yy179;
18640 		}
18641 	} else {
18642 		if (yych <= 's') {
18643 			if (yych <= 'Z') goto yy179;
18644 			if (yych <= '`') goto yy3;
18645 			goto yy179;
18646 		} else {
18647 			if (yych <= 't') goto yy1254;
18648 			if (yych <= 'z') goto yy179;
18649 			goto yy3;
18650 		}
18651 	}
18652 yy1254:
18653 	YYDEBUG(1254, *YYCURSOR);
18654 	yyaccept = 0;
18655 	yych = *(YYMARKER = ++YYCURSOR);
18656 	if (yych <= 'G') {
18657 		if (yych == ')') goto yy174;
18658 		goto yy3;
18659 	} else {
18660 		if (yych <= 'H') goto yy1205;
18661 		if (yych == 'h') goto yy1205;
18662 		goto yy3;
18663 	}
18664 yy1255:
18665 	YYDEBUG(1255, *YYCURSOR);
18666 	yych = *++YYCURSOR;
18667 	if (yych <= 'N') {
18668 		if (yych <= ')') {
18669 			if (yych <= '(') goto yy3;
18670 			goto yy174;
18671 		} else {
18672 			if (yych <= '@') goto yy3;
18673 			if (yych <= 'M') goto yy178;
18674 		}
18675 	} else {
18676 		if (yych <= 'm') {
18677 			if (yych <= 'Z') goto yy178;
18678 			if (yych <= '`') goto yy3;
18679 			goto yy178;
18680 		} else {
18681 			if (yych <= 'n') goto yy1256;
18682 			if (yych <= 'z') goto yy178;
18683 			goto yy3;
18684 		}
18685 	}
18686 yy1256:
18687 	YYDEBUG(1256, *YYCURSOR);
18688 	yych = *++YYCURSOR;
18689 	if (yych <= 'D') {
18690 		if (yych <= ')') {
18691 			if (yych <= '(') goto yy3;
18692 			goto yy174;
18693 		} else {
18694 			if (yych <= '@') goto yy3;
18695 			if (yych <= 'C') goto yy179;
18696 			goto yy1215;
18697 		}
18698 	} else {
18699 		if (yych <= 'c') {
18700 			if (yych <= 'Z') goto yy179;
18701 			if (yych <= '`') goto yy3;
18702 			goto yy179;
18703 		} else {
18704 			if (yych <= 'd') goto yy1215;
18705 			if (yych <= 'z') goto yy179;
18706 			goto yy3;
18707 		}
18708 	}
18709 yy1257:
18710 	YYDEBUG(1257, *YYCURSOR);
18711 	yyaccept = 0;
18712 	yych = *(YYMARKER = ++YYCURSOR);
18713 	if (yych <= 'U') {
18714 		if (yych <= '/') {
18715 			if (yych <= ',') {
18716 				if (yych == ')') goto yy174;
18717 				goto yy3;
18718 			} else {
18719 				if (yych == '.') goto yy3;
18720 				goto yy182;
18721 			}
18722 		} else {
18723 			if (yych <= 'C') {
18724 				if (yych <= '@') goto yy3;
18725 				if (yych <= 'B') goto yy176;
18726 				goto yy1244;
18727 			} else {
18728 				if (yych == 'P') goto yy1246;
18729 				goto yy176;
18730 			}
18731 		}
18732 	} else {
18733 		if (yych <= 'b') {
18734 			if (yych <= '^') {
18735 				if (yych <= 'V') goto yy1245;
18736 				if (yych <= 'Z') goto yy176;
18737 				goto yy3;
18738 			} else {
18739 				if (yych <= '_') goto yy182;
18740 				if (yych <= '`') goto yy3;
18741 				goto yy181;
18742 			}
18743 		} else {
18744 			if (yych <= 'p') {
18745 				if (yych <= 'c') goto yy1273;
18746 				if (yych <= 'o') goto yy181;
18747 				goto yy1275;
18748 			} else {
18749 				if (yych == 'v') goto yy1274;
18750 				if (yych <= 'z') goto yy181;
18751 				goto yy3;
18752 			}
18753 		}
18754 	}
18755 yy1258:
18756 	YYDEBUG(1258, *YYCURSOR);
18757 	yyaccept = 0;
18758 	yych = *(YYMARKER = ++YYCURSOR);
18759 	if (yych <= 'S') {
18760 		if (yych <= '-') {
18761 			if (yych == ')') goto yy174;
18762 			if (yych <= ',') goto yy3;
18763 			goto yy182;
18764 		} else {
18765 			if (yych == '/') goto yy182;
18766 			if (yych <= '@') goto yy3;
18767 			goto yy176;
18768 		}
18769 	} else {
18770 		if (yych <= '_') {
18771 			if (yych <= 'T') goto yy1239;
18772 			if (yych <= 'Z') goto yy176;
18773 			if (yych <= '^') goto yy3;
18774 			goto yy182;
18775 		} else {
18776 			if (yych <= 's') {
18777 				if (yych <= '`') goto yy3;
18778 				goto yy181;
18779 			} else {
18780 				if (yych <= 't') goto yy1268;
18781 				if (yych <= 'z') goto yy181;
18782 				goto yy3;
18783 			}
18784 		}
18785 	}
18786 yy1259:
18787 	YYDEBUG(1259, *YYCURSOR);
18788 	yyaccept = 0;
18789 	yych = *(YYMARKER = ++YYCURSOR);
18790 	if (yych <= 'W') {
18791 		if (yych <= '-') {
18792 			if (yych == ')') goto yy174;
18793 			if (yych <= ',') goto yy3;
18794 			goto yy182;
18795 		} else {
18796 			if (yych == '/') goto yy182;
18797 			if (yych <= '@') goto yy3;
18798 			goto yy176;
18799 		}
18800 	} else {
18801 		if (yych <= '_') {
18802 			if (yych <= 'X') goto yy1236;
18803 			if (yych <= 'Z') goto yy176;
18804 			if (yych <= '^') goto yy3;
18805 			goto yy182;
18806 		} else {
18807 			if (yych <= 'w') {
18808 				if (yych <= '`') goto yy3;
18809 				goto yy181;
18810 			} else {
18811 				if (yych <= 'x') goto yy1265;
18812 				if (yych <= 'z') goto yy181;
18813 				goto yy3;
18814 			}
18815 		}
18816 	}
18817 yy1260:
18818 	YYDEBUG(1260, *YYCURSOR);
18819 	yyaccept = 0;
18820 	yych = *(YYMARKER = ++YYCURSOR);
18821 	if (yych <= 'M') {
18822 		if (yych <= '-') {
18823 			if (yych == ')') goto yy174;
18824 			if (yych <= ',') goto yy3;
18825 			goto yy182;
18826 		} else {
18827 			if (yych == '/') goto yy182;
18828 			if (yych <= '@') goto yy3;
18829 			goto yy176;
18830 		}
18831 	} else {
18832 		if (yych <= '_') {
18833 			if (yych <= 'N') goto yy1232;
18834 			if (yych <= 'Z') goto yy176;
18835 			if (yych <= '^') goto yy3;
18836 			goto yy182;
18837 		} else {
18838 			if (yych <= 'm') {
18839 				if (yych <= '`') goto yy3;
18840 				goto yy181;
18841 			} else {
18842 				if (yych <= 'n') goto yy1261;
18843 				if (yych <= 'z') goto yy181;
18844 				goto yy3;
18845 			}
18846 		}
18847 	}
18848 yy1261:
18849 	YYDEBUG(1261, *YYCURSOR);
18850 	yyaccept = 4;
18851 	yych = *(YYMARKER = ++YYCURSOR);
18852 	if (yych <= 'C') {
18853 		if (yych <= '-') {
18854 			if (yych == ')') goto yy174;
18855 			if (yych <= ',') goto yy201;
18856 			goto yy182;
18857 		} else {
18858 			if (yych == '/') goto yy182;
18859 			if (yych <= '@') goto yy201;
18860 			goto yy177;
18861 		}
18862 	} else {
18863 		if (yych <= '_') {
18864 			if (yych <= 'D') goto yy1233;
18865 			if (yych <= 'Z') goto yy177;
18866 			if (yych <= '^') goto yy201;
18867 			goto yy182;
18868 		} else {
18869 			if (yych <= 'c') {
18870 				if (yych <= '`') goto yy201;
18871 				goto yy185;
18872 			} else {
18873 				if (yych <= 'd') goto yy1262;
18874 				if (yych <= 'z') goto yy185;
18875 				goto yy201;
18876 			}
18877 		}
18878 	}
18879 yy1262:
18880 	YYDEBUG(1262, *YYCURSOR);
18881 	yyaccept = 0;
18882 	yych = *(YYMARKER = ++YYCURSOR);
18883 	if (yych <= '@') {
18884 		if (yych <= ',') {
18885 			if (yych == ')') goto yy174;
18886 			goto yy3;
18887 		} else {
18888 			if (yych == '.') goto yy3;
18889 			if (yych <= '/') goto yy182;
18890 			goto yy3;
18891 		}
18892 	} else {
18893 		if (yych <= '_') {
18894 			if (yych <= 'A') goto yy1234;
18895 			if (yych <= 'Z') goto yy178;
18896 			if (yych <= '^') goto yy3;
18897 			goto yy182;
18898 		} else {
18899 			if (yych <= '`') goto yy3;
18900 			if (yych <= 'a') goto yy1263;
18901 			if (yych <= 'z') goto yy186;
18902 			goto yy3;
18903 		}
18904 	}
18905 yy1263:
18906 	YYDEBUG(1263, *YYCURSOR);
18907 	yyaccept = 0;
18908 	yych = *(YYMARKER = ++YYCURSOR);
18909 	if (yych <= 'X') {
18910 		if (yych <= '-') {
18911 			if (yych == ')') goto yy174;
18912 			if (yych <= ',') goto yy3;
18913 			goto yy182;
18914 		} else {
18915 			if (yych == '/') goto yy182;
18916 			if (yych <= '@') goto yy3;
18917 			goto yy179;
18918 		}
18919 	} else {
18920 		if (yych <= '_') {
18921 			if (yych <= 'Y') goto yy1235;
18922 			if (yych <= 'Z') goto yy179;
18923 			if (yych <= '^') goto yy3;
18924 			goto yy182;
18925 		} else {
18926 			if (yych <= 'x') {
18927 				if (yych <= '`') goto yy3;
18928 				goto yy187;
18929 			} else {
18930 				if (yych <= 'y') goto yy1264;
18931 				if (yych <= 'z') goto yy187;
18932 				goto yy3;
18933 			}
18934 		}
18935 	}
18936 yy1264:
18937 	YYDEBUG(1264, *YYCURSOR);
18938 	yyaccept = 4;
18939 	yych = *(YYMARKER = ++YYCURSOR);
18940 	if (yybm[0+yych] & 8) {
18941 		goto yy188;
18942 	}
18943 	if (yych <= '-') {
18944 		if (yych == ')') goto yy174;
18945 		if (yych <= ',') goto yy201;
18946 		goto yy182;
18947 	} else {
18948 		if (yych <= '/') {
18949 			if (yych <= '.') goto yy201;
18950 			goto yy182;
18951 		} else {
18952 			if (yych == '_') goto yy182;
18953 			goto yy201;
18954 		}
18955 	}
18956 yy1265:
18957 	YYDEBUG(1265, *YYCURSOR);
18958 	yyaccept = 0;
18959 	yych = *(YYMARKER = ++YYCURSOR);
18960 	if (yych <= 'S') {
18961 		if (yych <= '-') {
18962 			if (yych == ')') goto yy174;
18963 			if (yych <= ',') goto yy3;
18964 			goto yy182;
18965 		} else {
18966 			if (yych == '/') goto yy182;
18967 			if (yych <= '@') goto yy3;
18968 			goto yy177;
18969 		}
18970 	} else {
18971 		if (yych <= '_') {
18972 			if (yych <= 'T') goto yy1237;
18973 			if (yych <= 'Z') goto yy177;
18974 			if (yych <= '^') goto yy3;
18975 			goto yy182;
18976 		} else {
18977 			if (yych <= 's') {
18978 				if (yych <= '`') goto yy3;
18979 				goto yy185;
18980 			} else {
18981 				if (yych <= 't') goto yy1266;
18982 				if (yych <= 'z') goto yy185;
18983 				goto yy3;
18984 			}
18985 		}
18986 	}
18987 yy1266:
18988 	YYDEBUG(1266, *YYCURSOR);
18989 	yyaccept = 0;
18990 	yych = *(YYMARKER = ++YYCURSOR);
18991 	if (yych <= 'G') {
18992 		if (yych <= '-') {
18993 			if (yych == ')') goto yy174;
18994 			if (yych <= ',') goto yy3;
18995 			goto yy182;
18996 		} else {
18997 			if (yych == '/') goto yy182;
18998 			if (yych <= '@') goto yy3;
18999 			goto yy178;
19000 		}
19001 	} else {
19002 		if (yych <= '_') {
19003 			if (yych <= 'H') goto yy1238;
19004 			if (yych <= 'Z') goto yy178;
19005 			if (yych <= '^') goto yy3;
19006 			goto yy182;
19007 		} else {
19008 			if (yych <= 'g') {
19009 				if (yych <= '`') goto yy3;
19010 				goto yy186;
19011 			} else {
19012 				if (yych <= 'h') goto yy1267;
19013 				if (yych <= 'z') goto yy186;
19014 				goto yy3;
19015 			}
19016 		}
19017 	}
19018 yy1267:
19019 	YYDEBUG(1267, *YYCURSOR);
19020 	yyaccept = 0;
19021 	yych = *(YYMARKER = ++YYCURSOR);
19022 	if (yych <= '-') {
19023 		if (yych <= ' ') {
19024 			if (yych == '\t') goto yy1206;
19025 			if (yych <= 0x1F) goto yy3;
19026 			goto yy1206;
19027 		} else {
19028 			if (yych == ')') goto yy174;
19029 			if (yych <= ',') goto yy3;
19030 			goto yy182;
19031 		}
19032 	} else {
19033 		if (yych <= 'Z') {
19034 			if (yych == '/') goto yy182;
19035 			if (yych <= '@') goto yy3;
19036 			goto yy179;
19037 		} else {
19038 			if (yych <= '_') {
19039 				if (yych <= '^') goto yy3;
19040 				goto yy182;
19041 			} else {
19042 				if (yych <= '`') goto yy3;
19043 				if (yych <= 'z') goto yy187;
19044 				goto yy3;
19045 			}
19046 		}
19047 	}
19048 yy1268:
19049 	YYDEBUG(1268, *YYCURSOR);
19050 	yyaccept = 4;
19051 	yych = *(YYMARKER = ++YYCURSOR);
19052 	if (yych <= 'T') {
19053 		if (yych <= '-') {
19054 			if (yych == ')') goto yy174;
19055 			if (yych <= ',') goto yy201;
19056 			goto yy182;
19057 		} else {
19058 			if (yych == '/') goto yy182;
19059 			if (yych <= '@') goto yy201;
19060 			goto yy177;
19061 		}
19062 	} else {
19063 		if (yych <= '_') {
19064 			if (yych <= 'U') goto yy1240;
19065 			if (yych <= 'Z') goto yy177;
19066 			if (yych <= '^') goto yy201;
19067 			goto yy182;
19068 		} else {
19069 			if (yych <= 't') {
19070 				if (yych <= '`') goto yy201;
19071 				goto yy185;
19072 			} else {
19073 				if (yych <= 'u') goto yy1269;
19074 				if (yych <= 'z') goto yy185;
19075 				goto yy201;
19076 			}
19077 		}
19078 	}
19079 yy1269:
19080 	YYDEBUG(1269, *YYCURSOR);
19081 	yyaccept = 0;
19082 	yych = *(YYMARKER = ++YYCURSOR);
19083 	if (yych <= 'Q') {
19084 		if (yych <= '-') {
19085 			if (yych == ')') goto yy174;
19086 			if (yych <= ',') goto yy3;
19087 			goto yy182;
19088 		} else {
19089 			if (yych == '/') goto yy182;
19090 			if (yych <= '@') goto yy3;
19091 			goto yy178;
19092 		}
19093 	} else {
19094 		if (yych <= '_') {
19095 			if (yych <= 'R') goto yy1241;
19096 			if (yych <= 'Z') goto yy178;
19097 			if (yych <= '^') goto yy3;
19098 			goto yy182;
19099 		} else {
19100 			if (yych <= 'q') {
19101 				if (yych <= '`') goto yy3;
19102 				goto yy186;
19103 			} else {
19104 				if (yych <= 'r') goto yy1270;
19105 				if (yych <= 'z') goto yy186;
19106 				goto yy3;
19107 			}
19108 		}
19109 	}
19110 yy1270:
19111 	YYDEBUG(1270, *YYCURSOR);
19112 	yyaccept = 0;
19113 	yych = *(YYMARKER = ++YYCURSOR);
19114 	if (yych <= 'C') {
19115 		if (yych <= '-') {
19116 			if (yych == ')') goto yy174;
19117 			if (yych <= ',') goto yy3;
19118 			goto yy182;
19119 		} else {
19120 			if (yych == '/') goto yy182;
19121 			if (yych <= '@') goto yy3;
19122 			goto yy179;
19123 		}
19124 	} else {
19125 		if (yych <= '_') {
19126 			if (yych <= 'D') goto yy1242;
19127 			if (yych <= 'Z') goto yy179;
19128 			if (yych <= '^') goto yy3;
19129 			goto yy182;
19130 		} else {
19131 			if (yych <= 'c') {
19132 				if (yych <= '`') goto yy3;
19133 				goto yy187;
19134 			} else {
19135 				if (yych <= 'd') goto yy1271;
19136 				if (yych <= 'z') goto yy187;
19137 				goto yy3;
19138 			}
19139 		}
19140 	}
19141 yy1271:
19142 	YYDEBUG(1271, *YYCURSOR);
19143 	yyaccept = 0;
19144 	yych = *(YYMARKER = ++YYCURSOR);
19145 	if (yych <= '@') {
19146 		if (yych <= ',') {
19147 			if (yych == ')') goto yy174;
19148 			goto yy3;
19149 		} else {
19150 			if (yych == '.') goto yy3;
19151 			if (yych <= '/') goto yy182;
19152 			goto yy3;
19153 		}
19154 	} else {
19155 		if (yych <= '_') {
19156 			if (yych <= 'A') goto yy1243;
19157 			if (yych <= '^') goto yy3;
19158 			goto yy182;
19159 		} else {
19160 			if (yych <= '`') goto yy3;
19161 			if (yych <= 'a') goto yy1272;
19162 			if (yych <= 'z') goto yy188;
19163 			goto yy3;
19164 		}
19165 	}
19166 yy1272:
19167 	YYDEBUG(1272, *YYCURSOR);
19168 	yych = *++YYCURSOR;
19169 	if (yych == 'Y') goto yy207;
19170 	if (yych == 'y') goto yy220;
19171 	goto yy189;
19172 yy1273:
19173 	YYDEBUG(1273, *YYCURSOR);
19174 	yyaccept = 0;
19175 	yych = *(YYMARKER = ++YYCURSOR);
19176 	if (yych <= 'N') {
19177 		if (yych <= '-') {
19178 			if (yych == ')') goto yy174;
19179 			if (yych <= ',') goto yy3;
19180 			goto yy182;
19181 		} else {
19182 			if (yych == '/') goto yy182;
19183 			if (yych <= '@') goto yy3;
19184 			goto yy177;
19185 		}
19186 	} else {
19187 		if (yych <= '_') {
19188 			if (yych <= 'O') goto yy1255;
19189 			if (yych <= 'Z') goto yy177;
19190 			if (yych <= '^') goto yy3;
19191 			goto yy182;
19192 		} else {
19193 			if (yych <= 'n') {
19194 				if (yych <= '`') goto yy3;
19195 				goto yy185;
19196 			} else {
19197 				if (yych <= 'o') goto yy1284;
19198 				if (yych <= 'z') goto yy185;
19199 				goto yy3;
19200 			}
19201 		}
19202 	}
19203 yy1274:
19204 	YYDEBUG(1274, *YYCURSOR);
19205 	yyaccept = 0;
19206 	yych = *(YYMARKER = ++YYCURSOR);
19207 	if (yych <= 'D') {
19208 		if (yych <= '-') {
19209 			if (yych == ')') goto yy174;
19210 			if (yych <= ',') goto yy3;
19211 			goto yy182;
19212 		} else {
19213 			if (yych == '/') goto yy182;
19214 			if (yych <= '@') goto yy3;
19215 			goto yy177;
19216 		}
19217 	} else {
19218 		if (yych <= '_') {
19219 			if (yych <= 'E') goto yy1252;
19220 			if (yych <= 'Z') goto yy177;
19221 			if (yych <= '^') goto yy3;
19222 			goto yy182;
19223 		} else {
19224 			if (yych <= 'd') {
19225 				if (yych <= '`') goto yy3;
19226 				goto yy185;
19227 			} else {
19228 				if (yych <= 'e') goto yy1281;
19229 				if (yych <= 'z') goto yy185;
19230 				goto yy3;
19231 			}
19232 		}
19233 	}
19234 yy1275:
19235 	YYDEBUG(1275, *YYCURSOR);
19236 	yyaccept = 5;
19237 	yych = *(YYMARKER = ++YYCURSOR);
19238 	if (yych <= '9') {
19239 		if (yych <= '(') {
19240 			if (yych <= '\t') {
19241 				if (yych <= 0x08) goto yy228;
19242 				goto yy230;
19243 			} else {
19244 				if (yych == ' ') goto yy230;
19245 				goto yy228;
19246 			}
19247 		} else {
19248 			if (yych <= '-') {
19249 				if (yych <= ')') goto yy174;
19250 				if (yych <= ',') goto yy228;
19251 				goto yy346;
19252 			} else {
19253 				if (yych == '/') goto yy182;
19254 				goto yy230;
19255 			}
19256 		}
19257 	} else {
19258 		if (yych <= '^') {
19259 			if (yych <= 'S') {
19260 				if (yych <= '@') goto yy228;
19261 				goto yy177;
19262 			} else {
19263 				if (yych <= 'T') goto yy1247;
19264 				if (yych <= 'Z') goto yy177;
19265 				goto yy228;
19266 			}
19267 		} else {
19268 			if (yych <= 's') {
19269 				if (yych <= '_') goto yy182;
19270 				if (yych <= '`') goto yy228;
19271 				goto yy185;
19272 			} else {
19273 				if (yych <= 't') goto yy1276;
19274 				if (yych <= 'z') goto yy185;
19275 				goto yy228;
19276 			}
19277 		}
19278 	}
19279 yy1276:
19280 	YYDEBUG(1276, *YYCURSOR);
19281 	yyaccept = 5;
19282 	yych = *(YYMARKER = ++YYCURSOR);
19283 	if (yych <= '9') {
19284 		if (yych <= '(') {
19285 			if (yych <= '\t') {
19286 				if (yych <= 0x08) goto yy228;
19287 				goto yy230;
19288 			} else {
19289 				if (yych == ' ') goto yy230;
19290 				goto yy228;
19291 			}
19292 		} else {
19293 			if (yych <= '-') {
19294 				if (yych <= ')') goto yy174;
19295 				if (yych <= ',') goto yy228;
19296 				goto yy346;
19297 			} else {
19298 				if (yych == '/') goto yy182;
19299 				goto yy230;
19300 			}
19301 		}
19302 	} else {
19303 		if (yych <= '^') {
19304 			if (yych <= 'D') {
19305 				if (yych <= '@') goto yy228;
19306 				goto yy178;
19307 			} else {
19308 				if (yych <= 'E') goto yy1248;
19309 				if (yych <= 'Z') goto yy178;
19310 				goto yy228;
19311 			}
19312 		} else {
19313 			if (yych <= 'd') {
19314 				if (yych <= '_') goto yy182;
19315 				if (yych <= '`') goto yy228;
19316 				goto yy186;
19317 			} else {
19318 				if (yych <= 'e') goto yy1277;
19319 				if (yych <= 'z') goto yy186;
19320 				goto yy228;
19321 			}
19322 		}
19323 	}
19324 yy1277:
19325 	YYDEBUG(1277, *YYCURSOR);
19326 	yyaccept = 0;
19327 	yych = *(YYMARKER = ++YYCURSOR);
19328 	if (yych <= 'L') {
19329 		if (yych <= '-') {
19330 			if (yych == ')') goto yy174;
19331 			if (yych <= ',') goto yy3;
19332 			goto yy182;
19333 		} else {
19334 			if (yych == '/') goto yy182;
19335 			if (yych <= '@') goto yy3;
19336 			goto yy179;
19337 		}
19338 	} else {
19339 		if (yych <= '_') {
19340 			if (yych <= 'M') goto yy1249;
19341 			if (yych <= 'Z') goto yy179;
19342 			if (yych <= '^') goto yy3;
19343 			goto yy182;
19344 		} else {
19345 			if (yych <= 'l') {
19346 				if (yych <= '`') goto yy3;
19347 				goto yy187;
19348 			} else {
19349 				if (yych <= 'm') goto yy1278;
19350 				if (yych <= 'z') goto yy187;
19351 				goto yy3;
19352 			}
19353 		}
19354 	}
19355 yy1278:
19356 	YYDEBUG(1278, *YYCURSOR);
19357 	yyaccept = 0;
19358 	yych = *(YYMARKER = ++YYCURSOR);
19359 	if (yych <= 'A') {
19360 		if (yych <= ',') {
19361 			if (yych == ')') goto yy174;
19362 			goto yy3;
19363 		} else {
19364 			if (yych == '.') goto yy3;
19365 			if (yych <= '/') goto yy182;
19366 			goto yy3;
19367 		}
19368 	} else {
19369 		if (yych <= '`') {
19370 			if (yych <= 'B') goto yy1250;
19371 			if (yych == '_') goto yy182;
19372 			goto yy3;
19373 		} else {
19374 			if (yych == 'b') goto yy1279;
19375 			if (yych <= 'z') goto yy188;
19376 			goto yy3;
19377 		}
19378 	}
19379 yy1279:
19380 	YYDEBUG(1279, *YYCURSOR);
19381 	yych = *++YYCURSOR;
19382 	if (yych == 'E') goto yy1251;
19383 	if (yych != 'e') goto yy189;
19384 	YYDEBUG(1280, *YYCURSOR);
19385 	yych = *++YYCURSOR;
19386 	if (yych == 'R') goto yy239;
19387 	if (yych == 'r') goto yy351;
19388 	goto yy189;
19389 yy1281:
19390 	YYDEBUG(1281, *YYCURSOR);
19391 	yyaccept = 0;
19392 	yych = *(YYMARKER = ++YYCURSOR);
19393 	if (yych <= 'M') {
19394 		if (yych <= '-') {
19395 			if (yych == ')') goto yy174;
19396 			if (yych <= ',') goto yy3;
19397 			goto yy182;
19398 		} else {
19399 			if (yych == '/') goto yy182;
19400 			if (yych <= '@') goto yy3;
19401 			goto yy178;
19402 		}
19403 	} else {
19404 		if (yych <= '_') {
19405 			if (yych <= 'N') goto yy1253;
19406 			if (yych <= 'Z') goto yy178;
19407 			if (yych <= '^') goto yy3;
19408 			goto yy182;
19409 		} else {
19410 			if (yych <= 'm') {
19411 				if (yych <= '`') goto yy3;
19412 				goto yy186;
19413 			} else {
19414 				if (yych <= 'n') goto yy1282;
19415 				if (yych <= 'z') goto yy186;
19416 				goto yy3;
19417 			}
19418 		}
19419 	}
19420 yy1282:
19421 	YYDEBUG(1282, *YYCURSOR);
19422 	yyaccept = 0;
19423 	yych = *(YYMARKER = ++YYCURSOR);
19424 	if (yych <= 'S') {
19425 		if (yych <= '-') {
19426 			if (yych == ')') goto yy174;
19427 			if (yych <= ',') goto yy3;
19428 			goto yy182;
19429 		} else {
19430 			if (yych == '/') goto yy182;
19431 			if (yych <= '@') goto yy3;
19432 			goto yy179;
19433 		}
19434 	} else {
19435 		if (yych <= '_') {
19436 			if (yych <= 'T') goto yy1254;
19437 			if (yych <= 'Z') goto yy179;
19438 			if (yych <= '^') goto yy3;
19439 			goto yy182;
19440 		} else {
19441 			if (yych <= 's') {
19442 				if (yych <= '`') goto yy3;
19443 				goto yy187;
19444 			} else {
19445 				if (yych <= 't') goto yy1283;
19446 				if (yych <= 'z') goto yy187;
19447 				goto yy3;
19448 			}
19449 		}
19450 	}
19451 yy1283:
19452 	YYDEBUG(1283, *YYCURSOR);
19453 	yyaccept = 0;
19454 	yych = *(YYMARKER = ++YYCURSOR);
19455 	if (yych <= 'G') {
19456 		if (yych <= ',') {
19457 			if (yych == ')') goto yy174;
19458 			goto yy3;
19459 		} else {
19460 			if (yych == '.') goto yy3;
19461 			if (yych <= '/') goto yy182;
19462 			goto yy3;
19463 		}
19464 	} else {
19465 		if (yych <= '`') {
19466 			if (yych <= 'H') goto yy1205;
19467 			if (yych == '_') goto yy182;
19468 			goto yy3;
19469 		} else {
19470 			if (yych == 'h') goto yy1223;
19471 			if (yych <= 'z') goto yy188;
19472 			goto yy3;
19473 		}
19474 	}
19475 yy1284:
19476 	YYDEBUG(1284, *YYCURSOR);
19477 	yyaccept = 0;
19478 	yych = *(YYMARKER = ++YYCURSOR);
19479 	if (yych <= 'M') {
19480 		if (yych <= '-') {
19481 			if (yych == ')') goto yy174;
19482 			if (yych <= ',') goto yy3;
19483 			goto yy182;
19484 		} else {
19485 			if (yych == '/') goto yy182;
19486 			if (yych <= '@') goto yy3;
19487 			goto yy178;
19488 		}
19489 	} else {
19490 		if (yych <= '_') {
19491 			if (yych <= 'N') goto yy1256;
19492 			if (yych <= 'Z') goto yy178;
19493 			if (yych <= '^') goto yy3;
19494 			goto yy182;
19495 		} else {
19496 			if (yych <= 'm') {
19497 				if (yych <= '`') goto yy3;
19498 				goto yy186;
19499 			} else {
19500 				if (yych <= 'n') goto yy1285;
19501 				if (yych <= 'z') goto yy186;
19502 				goto yy3;
19503 			}
19504 		}
19505 	}
19506 yy1285:
19507 	YYDEBUG(1285, *YYCURSOR);
19508 	yyaccept = 0;
19509 	yych = *(YYMARKER = ++YYCURSOR);
19510 	if (yych <= 'C') {
19511 		if (yych <= '-') {
19512 			if (yych == ')') goto yy174;
19513 			if (yych <= ',') goto yy3;
19514 			goto yy182;
19515 		} else {
19516 			if (yych == '/') goto yy182;
19517 			if (yych <= '@') goto yy3;
19518 			goto yy179;
19519 		}
19520 	} else {
19521 		if (yych <= '_') {
19522 			if (yych <= 'D') goto yy1215;
19523 			if (yych <= 'Z') goto yy179;
19524 			if (yych <= '^') goto yy3;
19525 			goto yy182;
19526 		} else {
19527 			if (yych <= 'c') {
19528 				if (yych <= '`') goto yy3;
19529 				goto yy187;
19530 			} else {
19531 				if (yych <= 'd') goto yy1227;
19532 				if (yych <= 'z') goto yy187;
19533 				goto yy3;
19534 			}
19535 		}
19536 	}
19537 yy1286:
19538 	YYDEBUG(1286, *YYCURSOR);
19539 	yych = *++YYCURSOR;
19540 	if (yych <= 'C') {
19541 		if (yych <= ')') {
19542 			if (yych <= '(') goto yy3;
19543 			goto yy174;
19544 		} else {
19545 			if (yych <= '@') goto yy3;
19546 			if (yych <= 'B') goto yy176;
19547 		}
19548 	} else {
19549 		if (yych <= 'b') {
19550 			if (yych <= 'Z') goto yy176;
19551 			if (yych <= '`') goto yy3;
19552 			goto yy176;
19553 		} else {
19554 			if (yych <= 'c') goto yy1287;
19555 			if (yych <= 'z') goto yy176;
19556 			goto yy3;
19557 		}
19558 	}
19559 yy1287:
19560 	YYDEBUG(1287, *YYCURSOR);
19561 	yych = *++YYCURSOR;
19562 	if (yych <= 'K') {
19563 		if (yych <= ')') {
19564 			if (yych <= '(') goto yy3;
19565 			goto yy174;
19566 		} else {
19567 			if (yych <= '@') goto yy3;
19568 			if (yych <= 'J') goto yy177;
19569 		}
19570 	} else {
19571 		if (yych <= 'j') {
19572 			if (yych <= 'Z') goto yy177;
19573 			if (yych <= '`') goto yy3;
19574 			goto yy177;
19575 		} else {
19576 			if (yych <= 'k') goto yy1288;
19577 			if (yych <= 'z') goto yy177;
19578 			goto yy3;
19579 		}
19580 	}
19581 yy1288:
19582 	YYDEBUG(1288, *YYCURSOR);
19583 	yyaccept = 0;
19584 	yych = *(YYMARKER = ++YYCURSOR);
19585 	if (yych <= ')') {
19586 		if (yych == ' ') goto yy1289;
19587 		if (yych <= '(') goto yy3;
19588 		goto yy174;
19589 	} else {
19590 		if (yych <= 'Z') {
19591 			if (yych <= '@') goto yy3;
19592 			goto yy178;
19593 		} else {
19594 			if (yych <= '`') goto yy3;
19595 			if (yych <= 'z') goto yy178;
19596 			goto yy3;
19597 		}
19598 	}
19599 yy1289:
19600 	YYDEBUG(1289, *YYCURSOR);
19601 	yych = *++YYCURSOR;
19602 	if (yych == 'O') goto yy1290;
19603 	if (yych != 'o') goto yy55;
19604 yy1290:
19605 	YYDEBUG(1290, *YYCURSOR);
19606 	yych = *++YYCURSOR;
19607 	if (yych == 'F') goto yy1291;
19608 	if (yych != 'f') goto yy55;
19609 yy1291:
19610 	YYDEBUG(1291, *YYCURSOR);
19611 	yych = *++YYCURSOR;
19612 	if (yych != ' ') goto yy55;
19613 	YYDEBUG(1292, *YYCURSOR);
19614 	yych = *++YYCURSOR;
19615 	if (yych <= '/') goto yy55;
19616 	if (yych <= '1') goto yy1293;
19617 	if (yych <= '2') goto yy1295;
19618 	if (yych <= '9') goto yy1296;
19619 	goto yy55;
19620 yy1293:
19621 	YYDEBUG(1293, *YYCURSOR);
19622 	yyaccept = 27;
19623 	yych = *(YYMARKER = ++YYCURSOR);
19624 	if (yych <= '@') {
19625 		if (yych <= 0x1F) {
19626 			if (yych == '\t') goto yy1297;
19627 		} else {
19628 			if (yych <= ' ') goto yy1297;
19629 			if (yych <= '/') goto yy1294;
19630 			if (yych <= '9') goto yy1296;
19631 		}
19632 	} else {
19633 		if (yych <= '`') {
19634 			if (yych <= 'A') goto yy1299;
19635 			if (yych == 'P') goto yy1299;
19636 		} else {
19637 			if (yych <= 'a') goto yy1299;
19638 			if (yych == 'p') goto yy1299;
19639 		}
19640 	}
19641 yy1294:
19642 	YYDEBUG(1294, *YYCURSOR);
19643 #line 1142 "parse_date.re"
19644 	{
19645 		DEBUG_OUTPUT("backof | frontof");
19646 		TIMELIB_INIT;
19647 		TIMELIB_UNHAVE_TIME();
19648 		TIMELIB_HAVE_TIME();
19649 
19650 		if (*ptr == 'b') {
19651 			s->time->h = timelib_get_nr((char **) &ptr, 2);
19652 			s->time->i = 15;
19653 		} else {
19654 			s->time->h = timelib_get_nr((char **) &ptr, 2) - 1;
19655 			s->time->i = 45;
19656 		}
19657 		if (*ptr != '\0' ) {
19658 			timelib_eat_spaces((char **) &ptr);
19659 			s->time->h += timelib_meridian((char **) &ptr, s->time->h);
19660 		}
19661 
19662 		TIMELIB_DEINIT;
19663 		return TIMELIB_LF_DAY_OF_MONTH;
19664 	}
19665 #line 19663 "<stdout>"
19666 yy1295:
19667 	YYDEBUG(1295, *YYCURSOR);
19668 	yyaccept = 27;
19669 	yych = *(YYMARKER = ++YYCURSOR);
19670 	if (yych <= '@') {
19671 		if (yych <= 0x1F) {
19672 			if (yych == '\t') goto yy1297;
19673 			goto yy1294;
19674 		} else {
19675 			if (yych <= ' ') goto yy1297;
19676 			if (yych <= '/') goto yy1294;
19677 			if (yych >= '5') goto yy1294;
19678 		}
19679 	} else {
19680 		if (yych <= '`') {
19681 			if (yych <= 'A') goto yy1299;
19682 			if (yych == 'P') goto yy1299;
19683 			goto yy1294;
19684 		} else {
19685 			if (yych <= 'a') goto yy1299;
19686 			if (yych == 'p') goto yy1299;
19687 			goto yy1294;
19688 		}
19689 	}
19690 yy1296:
19691 	YYDEBUG(1296, *YYCURSOR);
19692 	yyaccept = 27;
19693 	yych = *(YYMARKER = ++YYCURSOR);
19694 	if (yych <= 'A') {
19695 		if (yych <= 0x1F) {
19696 			if (yych != '\t') goto yy1294;
19697 		} else {
19698 			if (yych <= ' ') goto yy1297;
19699 			if (yych <= '@') goto yy1294;
19700 			goto yy1299;
19701 		}
19702 	} else {
19703 		if (yych <= '`') {
19704 			if (yych == 'P') goto yy1299;
19705 			goto yy1294;
19706 		} else {
19707 			if (yych <= 'a') goto yy1299;
19708 			if (yych == 'p') goto yy1299;
19709 			goto yy1294;
19710 		}
19711 	}
19712 yy1297:
19713 	YYDEBUG(1297, *YYCURSOR);
19714 	++YYCURSOR;
19715 	if ((YYLIMIT - YYCURSOR) < 5) YYFILL(5);
19716 	yych = *YYCURSOR;
19717 	YYDEBUG(1298, *YYCURSOR);
19718 	if (yych <= 'A') {
19719 		if (yych <= 0x1F) {
19720 			if (yych == '\t') goto yy1297;
19721 			goto yy55;
19722 		} else {
19723 			if (yych <= ' ') goto yy1297;
19724 			if (yych <= '@') goto yy55;
19725 		}
19726 	} else {
19727 		if (yych <= '`') {
19728 			if (yych != 'P') goto yy55;
19729 		} else {
19730 			if (yych <= 'a') goto yy1299;
19731 			if (yych != 'p') goto yy55;
19732 		}
19733 	}
19734 yy1299:
19735 	YYDEBUG(1299, *YYCURSOR);
19736 	yych = *++YYCURSOR;
19737 	if (yych <= 'L') {
19738 		if (yych != '.') goto yy55;
19739 	} else {
19740 		if (yych <= 'M') goto yy1301;
19741 		if (yych == 'm') goto yy1301;
19742 		goto yy55;
19743 	}
19744 	YYDEBUG(1300, *YYCURSOR);
19745 	yych = *++YYCURSOR;
19746 	if (yych == 'M') goto yy1301;
19747 	if (yych != 'm') goto yy55;
19748 yy1301:
19749 	YYDEBUG(1301, *YYCURSOR);
19750 	yych = *++YYCURSOR;
19751 	if (yych <= 0x1F) {
19752 		if (yych <= 0x00) goto yy1303;
19753 		if (yych == '\t') goto yy1303;
19754 		goto yy55;
19755 	} else {
19756 		if (yych <= ' ') goto yy1303;
19757 		if (yych != '.') goto yy55;
19758 	}
19759 	YYDEBUG(1302, *YYCURSOR);
19760 	yych = *++YYCURSOR;
19761 	if (yych <= '\t') {
19762 		if (yych <= 0x00) goto yy1303;
19763 		if (yych <= 0x08) goto yy55;
19764 	} else {
19765 		if (yych != ' ') goto yy55;
19766 	}
19767 yy1303:
19768 	YYDEBUG(1303, *YYCURSOR);
19769 	yych = *++YYCURSOR;
19770 	goto yy1294;
19771 yy1304:
19772 	YYDEBUG(1304, *YYCURSOR);
19773 	yyaccept = 0;
19774 	yych = *(YYMARKER = ++YYCURSOR);
19775 	if (yych <= 'B') {
19776 		if (yych <= '-') {
19777 			if (yych == ')') goto yy174;
19778 			if (yych <= ',') goto yy3;
19779 			goto yy182;
19780 		} else {
19781 			if (yych == '/') goto yy182;
19782 			if (yych <= '@') goto yy3;
19783 			goto yy176;
19784 		}
19785 	} else {
19786 		if (yych <= '_') {
19787 			if (yych <= 'C') goto yy1287;
19788 			if (yych <= 'Z') goto yy176;
19789 			if (yych <= '^') goto yy3;
19790 			goto yy182;
19791 		} else {
19792 			if (yych <= 'b') {
19793 				if (yych <= '`') goto yy3;
19794 				goto yy181;
19795 			} else {
19796 				if (yych <= 'c') goto yy1305;
19797 				if (yych <= 'z') goto yy181;
19798 				goto yy3;
19799 			}
19800 		}
19801 	}
19802 yy1305:
19803 	YYDEBUG(1305, *YYCURSOR);
19804 	yyaccept = 0;
19805 	yych = *(YYMARKER = ++YYCURSOR);
19806 	if (yych <= 'J') {
19807 		if (yych <= '-') {
19808 			if (yych == ')') goto yy174;
19809 			if (yych <= ',') goto yy3;
19810 			goto yy182;
19811 		} else {
19812 			if (yych == '/') goto yy182;
19813 			if (yych <= '@') goto yy3;
19814 			goto yy177;
19815 		}
19816 	} else {
19817 		if (yych <= '_') {
19818 			if (yych <= 'K') goto yy1288;
19819 			if (yych <= 'Z') goto yy177;
19820 			if (yych <= '^') goto yy3;
19821 			goto yy182;
19822 		} else {
19823 			if (yych <= 'j') {
19824 				if (yych <= '`') goto yy3;
19825 				goto yy185;
19826 			} else {
19827 				if (yych <= 'k') goto yy1306;
19828 				if (yych <= 'z') goto yy185;
19829 				goto yy3;
19830 			}
19831 		}
19832 	}
19833 yy1306:
19834 	YYDEBUG(1306, *YYCURSOR);
19835 	yyaccept = 0;
19836 	yych = *(YYMARKER = ++YYCURSOR);
19837 	if (yych <= '.') {
19838 		if (yych <= '(') {
19839 			if (yych == ' ') goto yy1289;
19840 			goto yy3;
19841 		} else {
19842 			if (yych <= ')') goto yy174;
19843 			if (yych == '-') goto yy182;
19844 			goto yy3;
19845 		}
19846 	} else {
19847 		if (yych <= '^') {
19848 			if (yych <= '/') goto yy182;
19849 			if (yych <= '@') goto yy3;
19850 			if (yych <= 'Z') goto yy178;
19851 			goto yy3;
19852 		} else {
19853 			if (yych <= '_') goto yy182;
19854 			if (yych <= '`') goto yy3;
19855 			if (yych <= 'z') goto yy186;
19856 			goto yy3;
19857 		}
19858 	}
19859 yy1307:
19860 	YYDEBUG(1307, *YYCURSOR);
19861 	yych = *++YYCURSOR;
19862 	if (yych <= 'S') {
19863 		if (yych <= ')') {
19864 			if (yych <= '(') goto yy3;
19865 			goto yy174;
19866 		} else {
19867 			if (yych <= '@') goto yy3;
19868 			if (yych <= 'R') goto yy176;
19869 		}
19870 	} else {
19871 		if (yych <= 'r') {
19872 			if (yych <= 'Z') goto yy176;
19873 			if (yych <= '`') goto yy3;
19874 			goto yy176;
19875 		} else {
19876 			if (yych <= 's') goto yy1308;
19877 			if (yych <= 'z') goto yy176;
19878 			goto yy3;
19879 		}
19880 	}
19881 yy1308:
19882 	YYDEBUG(1308, *YYCURSOR);
19883 	yych = *++YYCURSOR;
19884 	if (yych <= 'T') {
19885 		if (yych <= ')') {
19886 			if (yych <= '(') goto yy3;
19887 			goto yy174;
19888 		} else {
19889 			if (yych <= '@') goto yy3;
19890 			if (yych <= 'S') goto yy177;
19891 		}
19892 	} else {
19893 		if (yych <= 's') {
19894 			if (yych <= 'Z') goto yy177;
19895 			if (yych <= '`') goto yy3;
19896 			goto yy177;
19897 		} else {
19898 			if (yych <= 't') goto yy1309;
19899 			if (yych <= 'z') goto yy177;
19900 			goto yy3;
19901 		}
19902 	}
19903 yy1309:
19904 	YYDEBUG(1309, *YYCURSOR);
19905 	yyaccept = 0;
19906 	yych = *(YYMARKER = ++YYCURSOR);
19907 	if (yych <= '(') {
19908 		if (yych <= '\t') {
19909 			if (yych <= 0x08) goto yy3;
19910 			goto yy1079;
19911 		} else {
19912 			if (yych != ' ') goto yy3;
19913 		}
19914 	} else {
19915 		if (yych <= 'Z') {
19916 			if (yych <= ')') goto yy174;
19917 			if (yych <= '@') goto yy3;
19918 			goto yy178;
19919 		} else {
19920 			if (yych <= '`') goto yy3;
19921 			if (yych <= 'z') goto yy178;
19922 			goto yy3;
19923 		}
19924 	}
19925 yy1310:
19926 	YYDEBUG(1310, *YYCURSOR);
19927 	yych = *++YYCURSOR;
19928 	if (yych == 'D') goto yy1311;
19929 	if (yych != 'd') goto yy1080;
19930 yy1311:
19931 	YYDEBUG(1311, *YYCURSOR);
19932 	yych = *++YYCURSOR;
19933 	if (yych == 'A') goto yy1312;
19934 	if (yych != 'a') goto yy55;
19935 yy1312:
19936 	YYDEBUG(1312, *YYCURSOR);
19937 	yych = *++YYCURSOR;
19938 	if (yych == 'Y') goto yy1313;
19939 	if (yych != 'y') goto yy55;
19940 yy1313:
19941 	YYDEBUG(1313, *YYCURSOR);
19942 	yyaccept = 25;
19943 	yych = *(YYMARKER = ++YYCURSOR);
19944 	if (yych <= 'R') {
19945 		if (yych != ' ') goto yy1094;
19946 	} else {
19947 		if (yych <= 'S') goto yy1119;
19948 		if (yych == 's') goto yy1119;
19949 		goto yy1094;
19950 	}
19951 	YYDEBUG(1314, *YYCURSOR);
19952 	yych = *++YYCURSOR;
19953 	if (yych == 'O') goto yy1315;
19954 	if (yych != 'o') goto yy55;
19955 yy1315:
19956 	YYDEBUG(1315, *YYCURSOR);
19957 	yych = *++YYCURSOR;
19958 	if (yych == 'F') goto yy1316;
19959 	if (yych != 'f') goto yy55;
19960 yy1316:
19961 	YYDEBUG(1316, *YYCURSOR);
19962 	++YYCURSOR;
19963 	YYDEBUG(1317, *YYCURSOR);
19964 #line 1125 "parse_date.re"
19965 	{
19966 		DEBUG_OUTPUT("firstdayof | lastdayof");
19967 		TIMELIB_INIT;
19968 		TIMELIB_HAVE_RELATIVE();
19969 
19970 		/* skip "last day of" or "first day of" */
19971 		if (*ptr == 'l' || *ptr == 'L') {
19972 			s->time->relative.first_last_day_of = TIMELIB_SPECIAL_LAST_DAY_OF_MONTH;
19973 		} else {
19974 			s->time->relative.first_last_day_of = TIMELIB_SPECIAL_FIRST_DAY_OF_MONTH;
19975 		}
19976 
19977 		TIMELIB_DEINIT;
19978 		return TIMELIB_LF_DAY_OF_MONTH;
19979 	}
19980 #line 19978 "<stdout>"
19981 yy1318:
19982 	YYDEBUG(1318, *YYCURSOR);
19983 	yyaccept = 0;
19984 	yych = *(YYMARKER = ++YYCURSOR);
19985 	if (yych <= 'R') {
19986 		if (yych <= '-') {
19987 			if (yych == ')') goto yy174;
19988 			if (yych <= ',') goto yy3;
19989 			goto yy182;
19990 		} else {
19991 			if (yych == '/') goto yy182;
19992 			if (yych <= '@') goto yy3;
19993 			goto yy176;
19994 		}
19995 	} else {
19996 		if (yych <= '_') {
19997 			if (yych <= 'S') goto yy1308;
19998 			if (yych <= 'Z') goto yy176;
19999 			if (yych <= '^') goto yy3;
20000 			goto yy182;
20001 		} else {
20002 			if (yych <= 'r') {
20003 				if (yych <= '`') goto yy3;
20004 				goto yy181;
20005 			} else {
20006 				if (yych <= 's') goto yy1319;
20007 				if (yych <= 'z') goto yy181;
20008 				goto yy3;
20009 			}
20010 		}
20011 	}
20012 yy1319:
20013 	YYDEBUG(1319, *YYCURSOR);
20014 	yyaccept = 0;
20015 	yych = *(YYMARKER = ++YYCURSOR);
20016 	if (yych <= 'S') {
20017 		if (yych <= '-') {
20018 			if (yych == ')') goto yy174;
20019 			if (yych <= ',') goto yy3;
20020 			goto yy182;
20021 		} else {
20022 			if (yych == '/') goto yy182;
20023 			if (yych <= '@') goto yy3;
20024 			goto yy177;
20025 		}
20026 	} else {
20027 		if (yych <= '_') {
20028 			if (yych <= 'T') goto yy1309;
20029 			if (yych <= 'Z') goto yy177;
20030 			if (yych <= '^') goto yy3;
20031 			goto yy182;
20032 		} else {
20033 			if (yych <= 's') {
20034 				if (yych <= '`') goto yy3;
20035 				goto yy185;
20036 			} else {
20037 				if (yych <= 't') goto yy1320;
20038 				if (yych <= 'z') goto yy185;
20039 				goto yy3;
20040 			}
20041 		}
20042 	}
20043 yy1320:
20044 	YYDEBUG(1320, *YYCURSOR);
20045 	yyaccept = 0;
20046 	yych = *(YYMARKER = ++YYCURSOR);
20047 	if (yych <= '-') {
20048 		if (yych <= ' ') {
20049 			if (yych == '\t') goto yy1079;
20050 			if (yych <= 0x1F) goto yy3;
20051 			goto yy1310;
20052 		} else {
20053 			if (yych == ')') goto yy174;
20054 			if (yych <= ',') goto yy3;
20055 			goto yy182;
20056 		}
20057 	} else {
20058 		if (yych <= 'Z') {
20059 			if (yych == '/') goto yy182;
20060 			if (yych <= '@') goto yy3;
20061 			goto yy178;
20062 		} else {
20063 			if (yych <= '_') {
20064 				if (yych <= '^') goto yy3;
20065 				goto yy182;
20066 			} else {
20067 				if (yych <= '`') goto yy3;
20068 				if (yych <= 'z') goto yy186;
20069 				goto yy3;
20070 			}
20071 		}
20072 	}
20073 yy1321:
20074 	YYDEBUG(1321, *YYCURSOR);
20075 	yych = *++YYCURSOR;
20076 	if (yych <= 'B') {
20077 		if (yych <= ')') {
20078 			if (yych <= '(') goto yy3;
20079 			goto yy174;
20080 		} else {
20081 			if (yych <= '@') goto yy3;
20082 			if (yych <= 'A') goto yy176;
20083 			goto yy1358;
20084 		}
20085 	} else {
20086 		if (yych <= 'a') {
20087 			if (yych <= 'Z') goto yy176;
20088 			if (yych <= '`') goto yy3;
20089 			goto yy176;
20090 		} else {
20091 			if (yych <= 'b') goto yy1358;
20092 			if (yych <= 'z') goto yy176;
20093 			goto yy3;
20094 		}
20095 	}
20096 yy1322:
20097 	YYDEBUG(1322, *YYCURSOR);
20098 	yych = *++YYCURSOR;
20099 	if (yych <= 'R') {
20100 		if (yych <= '@') {
20101 			if (yych == ')') goto yy174;
20102 			goto yy3;
20103 		} else {
20104 			if (yych == 'F') goto yy1348;
20105 			if (yych <= 'Q') goto yy176;
20106 			goto yy1347;
20107 		}
20108 	} else {
20109 		if (yych <= 'f') {
20110 			if (yych <= 'Z') goto yy176;
20111 			if (yych <= '`') goto yy3;
20112 			if (yych <= 'e') goto yy176;
20113 			goto yy1348;
20114 		} else {
20115 			if (yych == 'r') goto yy1347;
20116 			if (yych <= 'z') goto yy176;
20117 			goto yy3;
20118 		}
20119 	}
20120 yy1323:
20121 	YYDEBUG(1323, *YYCURSOR);
20122 	yych = *++YYCURSOR;
20123 	if (yych <= 'U') {
20124 		if (yych <= ')') {
20125 			if (yych <= '(') goto yy3;
20126 			goto yy174;
20127 		} else {
20128 			if (yych <= '@') goto yy3;
20129 			if (yych <= 'T') goto yy176;
20130 			goto yy1344;
20131 		}
20132 	} else {
20133 		if (yych <= 't') {
20134 			if (yych <= 'Z') goto yy176;
20135 			if (yych <= '`') goto yy3;
20136 			goto yy176;
20137 		} else {
20138 			if (yych <= 'u') goto yy1344;
20139 			if (yych <= 'z') goto yy176;
20140 			goto yy3;
20141 		}
20142 	}
20143 yy1324:
20144 	YYDEBUG(1324, *YYCURSOR);
20145 	yych = *++YYCURSOR;
20146 	if (yych <= 'O') {
20147 		if (yych <= '@') {
20148 			if (yych == ')') goto yy174;
20149 			goto yy3;
20150 		} else {
20151 			if (yych == 'I') goto yy1326;
20152 			if (yych <= 'N') goto yy176;
20153 		}
20154 	} else {
20155 		if (yych <= 'i') {
20156 			if (yych <= 'Z') goto yy176;
20157 			if (yych <= '`') goto yy3;
20158 			if (yych <= 'h') goto yy176;
20159 			goto yy1326;
20160 		} else {
20161 			if (yych == 'o') goto yy1325;
20162 			if (yych <= 'z') goto yy176;
20163 			goto yy3;
20164 		}
20165 	}
20166 yy1325:
20167 	YYDEBUG(1325, *YYCURSOR);
20168 	yych = *++YYCURSOR;
20169 	if (yych <= 'N') {
20170 		if (yych <= ')') {
20171 			if (yych <= '(') goto yy3;
20172 			goto yy174;
20173 		} else {
20174 			if (yych <= '@') goto yy3;
20175 			if (yych <= 'M') goto yy177;
20176 			goto yy1329;
20177 		}
20178 	} else {
20179 		if (yych <= 'm') {
20180 			if (yych <= 'Z') goto yy177;
20181 			if (yych <= '`') goto yy3;
20182 			goto yy177;
20183 		} else {
20184 			if (yych <= 'n') goto yy1329;
20185 			if (yych <= 'z') goto yy177;
20186 			goto yy3;
20187 		}
20188 	}
20189 yy1326:
20190 	YYDEBUG(1326, *YYCURSOR);
20191 	yych = *++YYCURSOR;
20192 	if (yych <= 'D') {
20193 		if (yych <= ')') {
20194 			if (yych <= '(') goto yy201;
20195 			goto yy174;
20196 		} else {
20197 			if (yych <= '@') goto yy201;
20198 			if (yych <= 'C') goto yy177;
20199 		}
20200 	} else {
20201 		if (yych <= 'c') {
20202 			if (yych <= 'Z') goto yy177;
20203 			if (yych <= '`') goto yy201;
20204 			goto yy177;
20205 		} else {
20206 			if (yych <= 'd') goto yy1327;
20207 			if (yych <= 'z') goto yy177;
20208 			goto yy201;
20209 		}
20210 	}
20211 yy1327:
20212 	YYDEBUG(1327, *YYCURSOR);
20213 	yych = *++YYCURSOR;
20214 	if (yych <= 'A') {
20215 		if (yych == ')') goto yy174;
20216 		if (yych <= '@') goto yy3;
20217 	} else {
20218 		if (yych <= '`') {
20219 			if (yych <= 'Z') goto yy178;
20220 			goto yy3;
20221 		} else {
20222 			if (yych <= 'a') goto yy1328;
20223 			if (yych <= 'z') goto yy178;
20224 			goto yy3;
20225 		}
20226 	}
20227 yy1328:
20228 	YYDEBUG(1328, *YYCURSOR);
20229 	yych = *++YYCURSOR;
20230 	if (yych <= 'Y') {
20231 		if (yych <= ')') {
20232 			if (yych <= '(') goto yy3;
20233 			goto yy174;
20234 		} else {
20235 			if (yych <= '@') goto yy3;
20236 			if (yych <= 'X') goto yy179;
20237 			goto yy1235;
20238 		}
20239 	} else {
20240 		if (yych <= 'x') {
20241 			if (yych <= 'Z') goto yy179;
20242 			if (yych <= '`') goto yy3;
20243 			goto yy179;
20244 		} else {
20245 			if (yych <= 'y') goto yy1235;
20246 			if (yych <= 'z') goto yy179;
20247 			goto yy3;
20248 		}
20249 	}
20250 yy1329:
20251 	YYDEBUG(1329, *YYCURSOR);
20252 	yych = *++YYCURSOR;
20253 	if (yych <= 'T') {
20254 		if (yych <= ')') {
20255 			if (yych <= '(') goto yy3;
20256 			goto yy174;
20257 		} else {
20258 			if (yych <= '@') goto yy3;
20259 			if (yych <= 'S') goto yy178;
20260 		}
20261 	} else {
20262 		if (yych <= 's') {
20263 			if (yych <= 'Z') goto yy178;
20264 			if (yych <= '`') goto yy3;
20265 			goto yy178;
20266 		} else {
20267 			if (yych <= 't') goto yy1330;
20268 			if (yych <= 'z') goto yy178;
20269 			goto yy3;
20270 		}
20271 	}
20272 yy1330:
20273 	YYDEBUG(1330, *YYCURSOR);
20274 	yyaccept = 0;
20275 	yych = *(YYMARKER = ++YYCURSOR);
20276 	if (yych <= ')') {
20277 		if (yych == ' ') goto yy1331;
20278 		if (yych <= '(') goto yy3;
20279 		goto yy174;
20280 	} else {
20281 		if (yych <= 'Z') {
20282 			if (yych <= '@') goto yy3;
20283 			goto yy179;
20284 		} else {
20285 			if (yych <= '`') goto yy3;
20286 			if (yych <= 'z') goto yy179;
20287 			goto yy3;
20288 		}
20289 	}
20290 yy1331:
20291 	YYDEBUG(1331, *YYCURSOR);
20292 	yych = *++YYCURSOR;
20293 	if (yych == 'O') goto yy1332;
20294 	if (yych != 'o') goto yy55;
20295 yy1332:
20296 	YYDEBUG(1332, *YYCURSOR);
20297 	yych = *++YYCURSOR;
20298 	if (yych == 'F') goto yy1333;
20299 	if (yych != 'f') goto yy55;
20300 yy1333:
20301 	YYDEBUG(1333, *YYCURSOR);
20302 	yych = *++YYCURSOR;
20303 	if (yych != ' ') goto yy55;
20304 	YYDEBUG(1334, *YYCURSOR);
20305 	yych = *++YYCURSOR;
20306 	if (yych <= '/') goto yy55;
20307 	if (yych <= '1') goto yy1335;
20308 	if (yych <= '2') goto yy1336;
20309 	if (yych <= '9') goto yy1337;
20310 	goto yy55;
20311 yy1335:
20312 	YYDEBUG(1335, *YYCURSOR);
20313 	yyaccept = 27;
20314 	yych = *(YYMARKER = ++YYCURSOR);
20315 	if (yych <= '@') {
20316 		if (yych <= 0x1F) {
20317 			if (yych == '\t') goto yy1338;
20318 			goto yy1294;
20319 		} else {
20320 			if (yych <= ' ') goto yy1338;
20321 			if (yych <= '/') goto yy1294;
20322 			if (yych <= '9') goto yy1337;
20323 			goto yy1294;
20324 		}
20325 	} else {
20326 		if (yych <= '`') {
20327 			if (yych <= 'A') goto yy1340;
20328 			if (yych == 'P') goto yy1340;
20329 			goto yy1294;
20330 		} else {
20331 			if (yych <= 'a') goto yy1340;
20332 			if (yych == 'p') goto yy1340;
20333 			goto yy1294;
20334 		}
20335 	}
20336 yy1336:
20337 	YYDEBUG(1336, *YYCURSOR);
20338 	yyaccept = 27;
20339 	yych = *(YYMARKER = ++YYCURSOR);
20340 	if (yych <= '@') {
20341 		if (yych <= 0x1F) {
20342 			if (yych == '\t') goto yy1338;
20343 			goto yy1294;
20344 		} else {
20345 			if (yych <= ' ') goto yy1338;
20346 			if (yych <= '/') goto yy1294;
20347 			if (yych >= '5') goto yy1294;
20348 		}
20349 	} else {
20350 		if (yych <= '`') {
20351 			if (yych <= 'A') goto yy1340;
20352 			if (yych == 'P') goto yy1340;
20353 			goto yy1294;
20354 		} else {
20355 			if (yych <= 'a') goto yy1340;
20356 			if (yych == 'p') goto yy1340;
20357 			goto yy1294;
20358 		}
20359 	}
20360 yy1337:
20361 	YYDEBUG(1337, *YYCURSOR);
20362 	yyaccept = 27;
20363 	yych = *(YYMARKER = ++YYCURSOR);
20364 	if (yych <= 'A') {
20365 		if (yych <= 0x1F) {
20366 			if (yych != '\t') goto yy1294;
20367 		} else {
20368 			if (yych <= ' ') goto yy1338;
20369 			if (yych <= '@') goto yy1294;
20370 			goto yy1340;
20371 		}
20372 	} else {
20373 		if (yych <= '`') {
20374 			if (yych == 'P') goto yy1340;
20375 			goto yy1294;
20376 		} else {
20377 			if (yych <= 'a') goto yy1340;
20378 			if (yych == 'p') goto yy1340;
20379 			goto yy1294;
20380 		}
20381 	}
20382 yy1338:
20383 	YYDEBUG(1338, *YYCURSOR);
20384 	++YYCURSOR;
20385 	if ((YYLIMIT - YYCURSOR) < 5) YYFILL(5);
20386 	yych = *YYCURSOR;
20387 	YYDEBUG(1339, *YYCURSOR);
20388 	if (yych <= 'A') {
20389 		if (yych <= 0x1F) {
20390 			if (yych == '\t') goto yy1338;
20391 			goto yy55;
20392 		} else {
20393 			if (yych <= ' ') goto yy1338;
20394 			if (yych <= '@') goto yy55;
20395 		}
20396 	} else {
20397 		if (yych <= '`') {
20398 			if (yych != 'P') goto yy55;
20399 		} else {
20400 			if (yych <= 'a') goto yy1340;
20401 			if (yych != 'p') goto yy55;
20402 		}
20403 	}
20404 yy1340:
20405 	YYDEBUG(1340, *YYCURSOR);
20406 	yych = *++YYCURSOR;
20407 	if (yych <= 'L') {
20408 		if (yych != '.') goto yy55;
20409 	} else {
20410 		if (yych <= 'M') goto yy1342;
20411 		if (yych == 'm') goto yy1342;
20412 		goto yy55;
20413 	}
20414 	YYDEBUG(1341, *YYCURSOR);
20415 	yych = *++YYCURSOR;
20416 	if (yych == 'M') goto yy1342;
20417 	if (yych != 'm') goto yy55;
20418 yy1342:
20419 	YYDEBUG(1342, *YYCURSOR);
20420 	yych = *++YYCURSOR;
20421 	if (yych <= 0x1F) {
20422 		if (yych <= 0x00) goto yy1303;
20423 		if (yych == '\t') goto yy1303;
20424 		goto yy55;
20425 	} else {
20426 		if (yych <= ' ') goto yy1303;
20427 		if (yych != '.') goto yy55;
20428 	}
20429 	YYDEBUG(1343, *YYCURSOR);
20430 	yych = *++YYCURSOR;
20431 	if (yych <= '\t') {
20432 		if (yych <= 0x00) goto yy1303;
20433 		if (yych <= 0x08) goto yy55;
20434 		goto yy1303;
20435 	} else {
20436 		if (yych == ' ') goto yy1303;
20437 		goto yy55;
20438 	}
20439 yy1344:
20440 	YYDEBUG(1344, *YYCURSOR);
20441 	yych = *++YYCURSOR;
20442 	if (yych <= 'R') {
20443 		if (yych <= ')') {
20444 			if (yych <= '(') goto yy3;
20445 			goto yy174;
20446 		} else {
20447 			if (yych <= '@') goto yy3;
20448 			if (yych <= 'Q') goto yy177;
20449 		}
20450 	} else {
20451 		if (yych <= 'q') {
20452 			if (yych <= 'Z') goto yy177;
20453 			if (yych <= '`') goto yy3;
20454 			goto yy177;
20455 		} else {
20456 			if (yych <= 'r') goto yy1345;
20457 			if (yych <= 'z') goto yy177;
20458 			goto yy3;
20459 		}
20460 	}
20461 yy1345:
20462 	YYDEBUG(1345, *YYCURSOR);
20463 	yych = *++YYCURSOR;
20464 	if (yych <= 'T') {
20465 		if (yych <= ')') {
20466 			if (yych <= '(') goto yy3;
20467 			goto yy174;
20468 		} else {
20469 			if (yych <= '@') goto yy3;
20470 			if (yych <= 'S') goto yy178;
20471 		}
20472 	} else {
20473 		if (yych <= 's') {
20474 			if (yych <= 'Z') goto yy178;
20475 			if (yych <= '`') goto yy3;
20476 			goto yy178;
20477 		} else {
20478 			if (yych <= 't') goto yy1346;
20479 			if (yych <= 'z') goto yy178;
20480 			goto yy3;
20481 		}
20482 	}
20483 yy1346:
20484 	YYDEBUG(1346, *YYCURSOR);
20485 	yych = *++YYCURSOR;
20486 	if (yych <= 'H') {
20487 		if (yych <= ')') {
20488 			if (yych <= '(') goto yy3;
20489 			goto yy174;
20490 		} else {
20491 			if (yych <= '@') goto yy3;
20492 			if (yych <= 'G') goto yy179;
20493 			goto yy1215;
20494 		}
20495 	} else {
20496 		if (yych <= 'g') {
20497 			if (yych <= 'Z') goto yy179;
20498 			if (yych <= '`') goto yy3;
20499 			goto yy179;
20500 		} else {
20501 			if (yych <= 'h') goto yy1215;
20502 			if (yych <= 'z') goto yy179;
20503 			goto yy3;
20504 		}
20505 	}
20506 yy1347:
20507 	YYDEBUG(1347, *YYCURSOR);
20508 	yych = *++YYCURSOR;
20509 	if (yych <= 'S') {
20510 		if (yych <= ')') {
20511 			if (yych <= '(') goto yy3;
20512 			goto yy174;
20513 		} else {
20514 			if (yych <= '@') goto yy3;
20515 			if (yych <= 'R') goto yy177;
20516 			goto yy1350;
20517 		}
20518 	} else {
20519 		if (yych <= 'r') {
20520 			if (yych <= 'Z') goto yy177;
20521 			if (yych <= '`') goto yy3;
20522 			goto yy177;
20523 		} else {
20524 			if (yych <= 's') goto yy1350;
20525 			if (yych <= 'z') goto yy177;
20526 			goto yy3;
20527 		}
20528 	}
20529 yy1348:
20530 	YYDEBUG(1348, *YYCURSOR);
20531 	yych = *++YYCURSOR;
20532 	if (yych <= 'T') {
20533 		if (yych <= ')') {
20534 			if (yych <= '(') goto yy3;
20535 			goto yy174;
20536 		} else {
20537 			if (yych <= '@') goto yy3;
20538 			if (yych <= 'S') goto yy177;
20539 		}
20540 	} else {
20541 		if (yych <= 's') {
20542 			if (yych <= 'Z') goto yy177;
20543 			if (yych <= '`') goto yy3;
20544 			goto yy177;
20545 		} else {
20546 			if (yych <= 't') goto yy1349;
20547 			if (yych <= 'z') goto yy177;
20548 			goto yy3;
20549 		}
20550 	}
20551 yy1349:
20552 	YYDEBUG(1349, *YYCURSOR);
20553 	yych = *++YYCURSOR;
20554 	if (yych <= 'H') {
20555 		if (yych <= ')') {
20556 			if (yych <= '(') goto yy3;
20557 			goto yy174;
20558 		} else {
20559 			if (yych <= '@') goto yy3;
20560 			if (yych <= 'G') goto yy178;
20561 			goto yy1238;
20562 		}
20563 	} else {
20564 		if (yych <= 'g') {
20565 			if (yych <= 'Z') goto yy178;
20566 			if (yych <= '`') goto yy3;
20567 			goto yy178;
20568 		} else {
20569 			if (yych <= 'h') goto yy1238;
20570 			if (yych <= 'z') goto yy178;
20571 			goto yy3;
20572 		}
20573 	}
20574 yy1350:
20575 	YYDEBUG(1350, *YYCURSOR);
20576 	yych = *++YYCURSOR;
20577 	if (yych <= 'T') {
20578 		if (yych <= ')') {
20579 			if (yych <= '(') goto yy3;
20580 			goto yy174;
20581 		} else {
20582 			if (yych <= '@') goto yy3;
20583 			if (yych <= 'S') goto yy178;
20584 		}
20585 	} else {
20586 		if (yych <= 's') {
20587 			if (yych <= 'Z') goto yy178;
20588 			if (yych <= '`') goto yy3;
20589 			goto yy178;
20590 		} else {
20591 			if (yych <= 't') goto yy1351;
20592 			if (yych <= 'z') goto yy178;
20593 			goto yy3;
20594 		}
20595 	}
20596 yy1351:
20597 	YYDEBUG(1351, *YYCURSOR);
20598 	yyaccept = 0;
20599 	yych = *(YYMARKER = ++YYCURSOR);
20600 	if (yych <= '(') {
20601 		if (yych <= '\t') {
20602 			if (yych <= 0x08) goto yy3;
20603 			goto yy1206;
20604 		} else {
20605 			if (yych != ' ') goto yy3;
20606 		}
20607 	} else {
20608 		if (yych <= 'Z') {
20609 			if (yych <= ')') goto yy174;
20610 			if (yych <= '@') goto yy3;
20611 			goto yy179;
20612 		} else {
20613 			if (yych <= '`') goto yy3;
20614 			if (yych <= 'z') goto yy179;
20615 			goto yy3;
20616 		}
20617 	}
20618 yy1352:
20619 	YYDEBUG(1352, *YYCURSOR);
20620 	yych = *++YYCURSOR;
20621 	if (yych == 'D') goto yy1353;
20622 	if (yych != 'd') goto yy1207;
20623 yy1353:
20624 	YYDEBUG(1353, *YYCURSOR);
20625 	yych = *++YYCURSOR;
20626 	if (yych == 'A') goto yy1354;
20627 	if (yych != 'a') goto yy55;
20628 yy1354:
20629 	YYDEBUG(1354, *YYCURSOR);
20630 	yych = *++YYCURSOR;
20631 	if (yych == 'Y') goto yy1355;
20632 	if (yych != 'y') goto yy55;
20633 yy1355:
20634 	YYDEBUG(1355, *YYCURSOR);
20635 	yyaccept = 25;
20636 	yych = *(YYMARKER = ++YYCURSOR);
20637 	if (yych <= 'R') {
20638 		if (yych != ' ') goto yy1094;
20639 	} else {
20640 		if (yych <= 'S') goto yy1119;
20641 		if (yych == 's') goto yy1119;
20642 		goto yy1094;
20643 	}
20644 	YYDEBUG(1356, *YYCURSOR);
20645 	yych = *++YYCURSOR;
20646 	if (yych == 'O') goto yy1357;
20647 	if (yych != 'o') goto yy55;
20648 yy1357:
20649 	YYDEBUG(1357, *YYCURSOR);
20650 	yych = *++YYCURSOR;
20651 	if (yych == 'F') goto yy1316;
20652 	if (yych == 'f') goto yy1316;
20653 	goto yy55;
20654 yy1358:
20655 	YYDEBUG(1358, *YYCURSOR);
20656 	yyaccept = 5;
20657 	yych = *(YYMARKER = ++YYCURSOR);
20658 	if (yych <= '/') {
20659 		if (yych <= '(') {
20660 			if (yych <= '\t') {
20661 				if (yych <= 0x08) goto yy228;
20662 				goto yy230;
20663 			} else {
20664 				if (yych == ' ') goto yy230;
20665 				goto yy228;
20666 			}
20667 		} else {
20668 			if (yych <= ',') {
20669 				if (yych <= ')') goto yy174;
20670 				goto yy228;
20671 			} else {
20672 				if (yych <= '-') goto yy231;
20673 				if (yych <= '.') goto yy230;
20674 				goto yy228;
20675 			}
20676 		}
20677 	} else {
20678 		if (yych <= 'Z') {
20679 			if (yych <= '@') {
20680 				if (yych <= '9') goto yy230;
20681 				goto yy228;
20682 			} else {
20683 				if (yych != 'R') goto yy177;
20684 			}
20685 		} else {
20686 			if (yych <= 'q') {
20687 				if (yych <= '`') goto yy228;
20688 				goto yy177;
20689 			} else {
20690 				if (yych <= 'r') goto yy1359;
20691 				if (yych <= 'z') goto yy177;
20692 				goto yy228;
20693 			}
20694 		}
20695 	}
20696 yy1359:
20697 	YYDEBUG(1359, *YYCURSOR);
20698 	yych = *++YYCURSOR;
20699 	if (yych <= 'U') {
20700 		if (yych <= ')') {
20701 			if (yych <= '(') goto yy3;
20702 			goto yy174;
20703 		} else {
20704 			if (yych <= '@') goto yy3;
20705 			if (yych <= 'T') goto yy178;
20706 		}
20707 	} else {
20708 		if (yych <= 't') {
20709 			if (yych <= 'Z') goto yy178;
20710 			if (yych <= '`') goto yy3;
20711 			goto yy178;
20712 		} else {
20713 			if (yych <= 'u') goto yy1360;
20714 			if (yych <= 'z') goto yy178;
20715 			goto yy3;
20716 		}
20717 	}
20718 yy1360:
20719 	YYDEBUG(1360, *YYCURSOR);
20720 	yych = *++YYCURSOR;
20721 	if (yych <= 'A') {
20722 		if (yych == ')') goto yy174;
20723 		if (yych <= '@') goto yy3;
20724 	} else {
20725 		if (yych <= '`') {
20726 			if (yych <= 'Z') goto yy179;
20727 			goto yy3;
20728 		} else {
20729 			if (yych <= 'a') goto yy1361;
20730 			if (yych <= 'z') goto yy179;
20731 			goto yy3;
20732 		}
20733 	}
20734 yy1361:
20735 	YYDEBUG(1361, *YYCURSOR);
20736 	yyaccept = 0;
20737 	yych = *(YYMARKER = ++YYCURSOR);
20738 	if (yych <= 'Q') {
20739 		if (yych == ')') goto yy174;
20740 		goto yy3;
20741 	} else {
20742 		if (yych <= 'R') goto yy1362;
20743 		if (yych != 'r') goto yy3;
20744 	}
20745 yy1362:
20746 	YYDEBUG(1362, *YYCURSOR);
20747 	yych = *++YYCURSOR;
20748 	if (yych == 'Y') goto yy239;
20749 	if (yych == 'y') goto yy239;
20750 	goto yy55;
20751 yy1363:
20752 	YYDEBUG(1363, *YYCURSOR);
20753 	yyaccept = 0;
20754 	yych = *(YYMARKER = ++YYCURSOR);
20755 	if (yych <= 'A') {
20756 		if (yych <= '-') {
20757 			if (yych == ')') goto yy174;
20758 			if (yych <= ',') goto yy3;
20759 			goto yy182;
20760 		} else {
20761 			if (yych == '/') goto yy182;
20762 			if (yych <= '@') goto yy3;
20763 			goto yy176;
20764 		}
20765 	} else {
20766 		if (yych <= '_') {
20767 			if (yych <= 'B') goto yy1358;
20768 			if (yych <= 'Z') goto yy176;
20769 			if (yych <= '^') goto yy3;
20770 			goto yy182;
20771 		} else {
20772 			if (yych <= 'a') {
20773 				if (yych <= '`') goto yy3;
20774 				goto yy181;
20775 			} else {
20776 				if (yych <= 'b') goto yy1381;
20777 				if (yych <= 'z') goto yy181;
20778 				goto yy3;
20779 			}
20780 		}
20781 	}
20782 yy1364:
20783 	YYDEBUG(1364, *YYCURSOR);
20784 	yyaccept = 0;
20785 	yych = *(YYMARKER = ++YYCURSOR);
20786 	if (yych <= 'Q') {
20787 		if (yych <= '.') {
20788 			if (yych <= ')') {
20789 				if (yych <= '(') goto yy3;
20790 				goto yy174;
20791 			} else {
20792 				if (yych == '-') goto yy182;
20793 				goto yy3;
20794 			}
20795 		} else {
20796 			if (yych <= '@') {
20797 				if (yych <= '/') goto yy182;
20798 				goto yy3;
20799 			} else {
20800 				if (yych == 'F') goto yy1348;
20801 				goto yy176;
20802 			}
20803 		}
20804 	} else {
20805 		if (yych <= '`') {
20806 			if (yych <= 'Z') {
20807 				if (yych <= 'R') goto yy1347;
20808 				goto yy176;
20809 			} else {
20810 				if (yych == '_') goto yy182;
20811 				goto yy3;
20812 			}
20813 		} else {
20814 			if (yych <= 'q') {
20815 				if (yych == 'f') goto yy1377;
20816 				goto yy181;
20817 			} else {
20818 				if (yych <= 'r') goto yy1376;
20819 				if (yych <= 'z') goto yy181;
20820 				goto yy3;
20821 			}
20822 		}
20823 	}
20824 yy1365:
20825 	YYDEBUG(1365, *YYCURSOR);
20826 	yyaccept = 0;
20827 	yych = *(YYMARKER = ++YYCURSOR);
20828 	if (yych <= 'T') {
20829 		if (yych <= '-') {
20830 			if (yych == ')') goto yy174;
20831 			if (yych <= ',') goto yy3;
20832 			goto yy182;
20833 		} else {
20834 			if (yych == '/') goto yy182;
20835 			if (yych <= '@') goto yy3;
20836 			goto yy176;
20837 		}
20838 	} else {
20839 		if (yych <= '_') {
20840 			if (yych <= 'U') goto yy1344;
20841 			if (yych <= 'Z') goto yy176;
20842 			if (yych <= '^') goto yy3;
20843 			goto yy182;
20844 		} else {
20845 			if (yych <= 't') {
20846 				if (yych <= '`') goto yy3;
20847 				goto yy181;
20848 			} else {
20849 				if (yych <= 'u') goto yy1373;
20850 				if (yych <= 'z') goto yy181;
20851 				goto yy3;
20852 			}
20853 		}
20854 	}
20855 yy1366:
20856 	YYDEBUG(1366, *YYCURSOR);
20857 	yyaccept = 0;
20858 	yych = *(YYMARKER = ++YYCURSOR);
20859 	if (yych <= 'N') {
20860 		if (yych <= '.') {
20861 			if (yych <= ')') {
20862 				if (yych <= '(') goto yy3;
20863 				goto yy174;
20864 			} else {
20865 				if (yych == '-') goto yy182;
20866 				goto yy3;
20867 			}
20868 		} else {
20869 			if (yych <= '@') {
20870 				if (yych <= '/') goto yy182;
20871 				goto yy3;
20872 			} else {
20873 				if (yych == 'I') goto yy1326;
20874 				goto yy176;
20875 			}
20876 		}
20877 	} else {
20878 		if (yych <= '`') {
20879 			if (yych <= 'Z') {
20880 				if (yych <= 'O') goto yy1325;
20881 				goto yy176;
20882 			} else {
20883 				if (yych == '_') goto yy182;
20884 				goto yy3;
20885 			}
20886 		} else {
20887 			if (yych <= 'n') {
20888 				if (yych == 'i') goto yy1368;
20889 				goto yy181;
20890 			} else {
20891 				if (yych <= 'o') goto yy1367;
20892 				if (yych <= 'z') goto yy181;
20893 				goto yy3;
20894 			}
20895 		}
20896 	}
20897 yy1367:
20898 	YYDEBUG(1367, *YYCURSOR);
20899 	yyaccept = 0;
20900 	yych = *(YYMARKER = ++YYCURSOR);
20901 	if (yych <= 'M') {
20902 		if (yych <= '-') {
20903 			if (yych == ')') goto yy174;
20904 			if (yych <= ',') goto yy3;
20905 			goto yy182;
20906 		} else {
20907 			if (yych == '/') goto yy182;
20908 			if (yych <= '@') goto yy3;
20909 			goto yy177;
20910 		}
20911 	} else {
20912 		if (yych <= '_') {
20913 			if (yych <= 'N') goto yy1329;
20914 			if (yych <= 'Z') goto yy177;
20915 			if (yych <= '^') goto yy3;
20916 			goto yy182;
20917 		} else {
20918 			if (yych <= 'm') {
20919 				if (yych <= '`') goto yy3;
20920 				goto yy185;
20921 			} else {
20922 				if (yych <= 'n') goto yy1371;
20923 				if (yych <= 'z') goto yy185;
20924 				goto yy3;
20925 			}
20926 		}
20927 	}
20928 yy1368:
20929 	YYDEBUG(1368, *YYCURSOR);
20930 	yyaccept = 4;
20931 	yych = *(YYMARKER = ++YYCURSOR);
20932 	if (yych <= 'C') {
20933 		if (yych <= '-') {
20934 			if (yych == ')') goto yy174;
20935 			if (yych <= ',') goto yy201;
20936 			goto yy182;
20937 		} else {
20938 			if (yych == '/') goto yy182;
20939 			if (yych <= '@') goto yy201;
20940 			goto yy177;
20941 		}
20942 	} else {
20943 		if (yych <= '_') {
20944 			if (yych <= 'D') goto yy1327;
20945 			if (yych <= 'Z') goto yy177;
20946 			if (yych <= '^') goto yy201;
20947 			goto yy182;
20948 		} else {
20949 			if (yych <= 'c') {
20950 				if (yych <= '`') goto yy201;
20951 				goto yy185;
20952 			} else {
20953 				if (yych <= 'd') goto yy1369;
20954 				if (yych <= 'z') goto yy185;
20955 				goto yy201;
20956 			}
20957 		}
20958 	}
20959 yy1369:
20960 	YYDEBUG(1369, *YYCURSOR);
20961 	yyaccept = 0;
20962 	yych = *(YYMARKER = ++YYCURSOR);
20963 	if (yych <= '@') {
20964 		if (yych <= ',') {
20965 			if (yych == ')') goto yy174;
20966 			goto yy3;
20967 		} else {
20968 			if (yych == '.') goto yy3;
20969 			if (yych <= '/') goto yy182;
20970 			goto yy3;
20971 		}
20972 	} else {
20973 		if (yych <= '_') {
20974 			if (yych <= 'A') goto yy1328;
20975 			if (yych <= 'Z') goto yy178;
20976 			if (yych <= '^') goto yy3;
20977 			goto yy182;
20978 		} else {
20979 			if (yych <= '`') goto yy3;
20980 			if (yych <= 'a') goto yy1370;
20981 			if (yych <= 'z') goto yy186;
20982 			goto yy3;
20983 		}
20984 	}
20985 yy1370:
20986 	YYDEBUG(1370, *YYCURSOR);
20987 	yyaccept = 0;
20988 	yych = *(YYMARKER = ++YYCURSOR);
20989 	if (yych <= 'X') {
20990 		if (yych <= '-') {
20991 			if (yych == ')') goto yy174;
20992 			if (yych <= ',') goto yy3;
20993 			goto yy182;
20994 		} else {
20995 			if (yych == '/') goto yy182;
20996 			if (yych <= '@') goto yy3;
20997 			goto yy179;
20998 		}
20999 	} else {
21000 		if (yych <= '_') {
21001 			if (yych <= 'Y') goto yy1235;
21002 			if (yych <= 'Z') goto yy179;
21003 			if (yych <= '^') goto yy3;
21004 			goto yy182;
21005 		} else {
21006 			if (yych <= 'x') {
21007 				if (yych <= '`') goto yy3;
21008 				goto yy187;
21009 			} else {
21010 				if (yych <= 'y') goto yy1264;
21011 				if (yych <= 'z') goto yy187;
21012 				goto yy3;
21013 			}
21014 		}
21015 	}
21016 yy1371:
21017 	YYDEBUG(1371, *YYCURSOR);
21018 	yyaccept = 0;
21019 	yych = *(YYMARKER = ++YYCURSOR);
21020 	if (yych <= 'S') {
21021 		if (yych <= '-') {
21022 			if (yych == ')') goto yy174;
21023 			if (yych <= ',') goto yy3;
21024 			goto yy182;
21025 		} else {
21026 			if (yych == '/') goto yy182;
21027 			if (yych <= '@') goto yy3;
21028 			goto yy178;
21029 		}
21030 	} else {
21031 		if (yych <= '_') {
21032 			if (yych <= 'T') goto yy1330;
21033 			if (yych <= 'Z') goto yy178;
21034 			if (yych <= '^') goto yy3;
21035 			goto yy182;
21036 		} else {
21037 			if (yych <= 's') {
21038 				if (yych <= '`') goto yy3;
21039 				goto yy186;
21040 			} else {
21041 				if (yych <= 't') goto yy1372;
21042 				if (yych <= 'z') goto yy186;
21043 				goto yy3;
21044 			}
21045 		}
21046 	}
21047 yy1372:
21048 	YYDEBUG(1372, *YYCURSOR);
21049 	yyaccept = 0;
21050 	yych = *(YYMARKER = ++YYCURSOR);
21051 	if (yych <= '.') {
21052 		if (yych <= '(') {
21053 			if (yych == ' ') goto yy1331;
21054 			goto yy3;
21055 		} else {
21056 			if (yych <= ')') goto yy174;
21057 			if (yych == '-') goto yy182;
21058 			goto yy3;
21059 		}
21060 	} else {
21061 		if (yych <= '^') {
21062 			if (yych <= '/') goto yy182;
21063 			if (yych <= '@') goto yy3;
21064 			if (yych <= 'Z') goto yy179;
21065 			goto yy3;
21066 		} else {
21067 			if (yych <= '_') goto yy182;
21068 			if (yych <= '`') goto yy3;
21069 			if (yych <= 'z') goto yy187;
21070 			goto yy3;
21071 		}
21072 	}
21073 yy1373:
21074 	YYDEBUG(1373, *YYCURSOR);
21075 	yyaccept = 0;
21076 	yych = *(YYMARKER = ++YYCURSOR);
21077 	if (yych <= 'Q') {
21078 		if (yych <= '-') {
21079 			if (yych == ')') goto yy174;
21080 			if (yych <= ',') goto yy3;
21081 			goto yy182;
21082 		} else {
21083 			if (yych == '/') goto yy182;
21084 			if (yych <= '@') goto yy3;
21085 			goto yy177;
21086 		}
21087 	} else {
21088 		if (yych <= '_') {
21089 			if (yych <= 'R') goto yy1345;
21090 			if (yych <= 'Z') goto yy177;
21091 			if (yych <= '^') goto yy3;
21092 			goto yy182;
21093 		} else {
21094 			if (yych <= 'q') {
21095 				if (yych <= '`') goto yy3;
21096 				goto yy185;
21097 			} else {
21098 				if (yych <= 'r') goto yy1374;
21099 				if (yych <= 'z') goto yy185;
21100 				goto yy3;
21101 			}
21102 		}
21103 	}
21104 yy1374:
21105 	YYDEBUG(1374, *YYCURSOR);
21106 	yyaccept = 0;
21107 	yych = *(YYMARKER = ++YYCURSOR);
21108 	if (yych <= 'S') {
21109 		if (yych <= '-') {
21110 			if (yych == ')') goto yy174;
21111 			if (yych <= ',') goto yy3;
21112 			goto yy182;
21113 		} else {
21114 			if (yych == '/') goto yy182;
21115 			if (yych <= '@') goto yy3;
21116 			goto yy178;
21117 		}
21118 	} else {
21119 		if (yych <= '_') {
21120 			if (yych <= 'T') goto yy1346;
21121 			if (yych <= 'Z') goto yy178;
21122 			if (yych <= '^') goto yy3;
21123 			goto yy182;
21124 		} else {
21125 			if (yych <= 's') {
21126 				if (yych <= '`') goto yy3;
21127 				goto yy186;
21128 			} else {
21129 				if (yych <= 't') goto yy1375;
21130 				if (yych <= 'z') goto yy186;
21131 				goto yy3;
21132 			}
21133 		}
21134 	}
21135 yy1375:
21136 	YYDEBUG(1375, *YYCURSOR);
21137 	yyaccept = 0;
21138 	yych = *(YYMARKER = ++YYCURSOR);
21139 	if (yych <= 'G') {
21140 		if (yych <= '-') {
21141 			if (yych == ')') goto yy174;
21142 			if (yych <= ',') goto yy3;
21143 			goto yy182;
21144 		} else {
21145 			if (yych == '/') goto yy182;
21146 			if (yych <= '@') goto yy3;
21147 			goto yy179;
21148 		}
21149 	} else {
21150 		if (yych <= '_') {
21151 			if (yych <= 'H') goto yy1215;
21152 			if (yych <= 'Z') goto yy179;
21153 			if (yych <= '^') goto yy3;
21154 			goto yy182;
21155 		} else {
21156 			if (yych <= 'g') {
21157 				if (yych <= '`') goto yy3;
21158 				goto yy187;
21159 			} else {
21160 				if (yych <= 'h') goto yy1227;
21161 				if (yych <= 'z') goto yy187;
21162 				goto yy3;
21163 			}
21164 		}
21165 	}
21166 yy1376:
21167 	YYDEBUG(1376, *YYCURSOR);
21168 	yyaccept = 0;
21169 	yych = *(YYMARKER = ++YYCURSOR);
21170 	if (yych <= 'R') {
21171 		if (yych <= '-') {
21172 			if (yych == ')') goto yy174;
21173 			if (yych <= ',') goto yy3;
21174 			goto yy182;
21175 		} else {
21176 			if (yych == '/') goto yy182;
21177 			if (yych <= '@') goto yy3;
21178 			goto yy177;
21179 		}
21180 	} else {
21181 		if (yych <= '_') {
21182 			if (yych <= 'S') goto yy1350;
21183 			if (yych <= 'Z') goto yy177;
21184 			if (yych <= '^') goto yy3;
21185 			goto yy182;
21186 		} else {
21187 			if (yych <= 'r') {
21188 				if (yych <= '`') goto yy3;
21189 				goto yy185;
21190 			} else {
21191 				if (yych <= 's') goto yy1379;
21192 				if (yych <= 'z') goto yy185;
21193 				goto yy3;
21194 			}
21195 		}
21196 	}
21197 yy1377:
21198 	YYDEBUG(1377, *YYCURSOR);
21199 	yyaccept = 0;
21200 	yych = *(YYMARKER = ++YYCURSOR);
21201 	if (yych <= 'S') {
21202 		if (yych <= '-') {
21203 			if (yych == ')') goto yy174;
21204 			if (yych <= ',') goto yy3;
21205 			goto yy182;
21206 		} else {
21207 			if (yych == '/') goto yy182;
21208 			if (yych <= '@') goto yy3;
21209 			goto yy177;
21210 		}
21211 	} else {
21212 		if (yych <= '_') {
21213 			if (yych <= 'T') goto yy1349;
21214 			if (yych <= 'Z') goto yy177;
21215 			if (yych <= '^') goto yy3;
21216 			goto yy182;
21217 		} else {
21218 			if (yych <= 's') {
21219 				if (yych <= '`') goto yy3;
21220 				goto yy185;
21221 			} else {
21222 				if (yych <= 't') goto yy1378;
21223 				if (yych <= 'z') goto yy185;
21224 				goto yy3;
21225 			}
21226 		}
21227 	}
21228 yy1378:
21229 	YYDEBUG(1378, *YYCURSOR);
21230 	yyaccept = 0;
21231 	yych = *(YYMARKER = ++YYCURSOR);
21232 	if (yych <= 'G') {
21233 		if (yych <= '-') {
21234 			if (yych == ')') goto yy174;
21235 			if (yych <= ',') goto yy3;
21236 			goto yy182;
21237 		} else {
21238 			if (yych == '/') goto yy182;
21239 			if (yych <= '@') goto yy3;
21240 			goto yy178;
21241 		}
21242 	} else {
21243 		if (yych <= '_') {
21244 			if (yych <= 'H') goto yy1238;
21245 			if (yych <= 'Z') goto yy178;
21246 			if (yych <= '^') goto yy3;
21247 			goto yy182;
21248 		} else {
21249 			if (yych <= 'g') {
21250 				if (yych <= '`') goto yy3;
21251 				goto yy186;
21252 			} else {
21253 				if (yych <= 'h') goto yy1267;
21254 				if (yych <= 'z') goto yy186;
21255 				goto yy3;
21256 			}
21257 		}
21258 	}
21259 yy1379:
21260 	YYDEBUG(1379, *YYCURSOR);
21261 	yyaccept = 0;
21262 	yych = *(YYMARKER = ++YYCURSOR);
21263 	if (yych <= 'S') {
21264 		if (yych <= '-') {
21265 			if (yych == ')') goto yy174;
21266 			if (yych <= ',') goto yy3;
21267 			goto yy182;
21268 		} else {
21269 			if (yych == '/') goto yy182;
21270 			if (yych <= '@') goto yy3;
21271 			goto yy178;
21272 		}
21273 	} else {
21274 		if (yych <= '_') {
21275 			if (yych <= 'T') goto yy1351;
21276 			if (yych <= 'Z') goto yy178;
21277 			if (yych <= '^') goto yy3;
21278 			goto yy182;
21279 		} else {
21280 			if (yych <= 's') {
21281 				if (yych <= '`') goto yy3;
21282 				goto yy186;
21283 			} else {
21284 				if (yych <= 't') goto yy1380;
21285 				if (yych <= 'z') goto yy186;
21286 				goto yy3;
21287 			}
21288 		}
21289 	}
21290 yy1380:
21291 	YYDEBUG(1380, *YYCURSOR);
21292 	yyaccept = 0;
21293 	yych = *(YYMARKER = ++YYCURSOR);
21294 	if (yych <= '-') {
21295 		if (yych <= ' ') {
21296 			if (yych == '\t') goto yy1206;
21297 			if (yych <= 0x1F) goto yy3;
21298 			goto yy1352;
21299 		} else {
21300 			if (yych == ')') goto yy174;
21301 			if (yych <= ',') goto yy3;
21302 			goto yy182;
21303 		}
21304 	} else {
21305 		if (yych <= 'Z') {
21306 			if (yych == '/') goto yy182;
21307 			if (yych <= '@') goto yy3;
21308 			goto yy179;
21309 		} else {
21310 			if (yych <= '_') {
21311 				if (yych <= '^') goto yy3;
21312 				goto yy182;
21313 			} else {
21314 				if (yych <= '`') goto yy3;
21315 				if (yych <= 'z') goto yy187;
21316 				goto yy3;
21317 			}
21318 		}
21319 	}
21320 yy1381:
21321 	YYDEBUG(1381, *YYCURSOR);
21322 	yyaccept = 5;
21323 	yych = *(YYMARKER = ++YYCURSOR);
21324 	if (yych <= '9') {
21325 		if (yych <= '(') {
21326 			if (yych <= '\t') {
21327 				if (yych <= 0x08) goto yy228;
21328 				goto yy230;
21329 			} else {
21330 				if (yych == ' ') goto yy230;
21331 				goto yy228;
21332 			}
21333 		} else {
21334 			if (yych <= '-') {
21335 				if (yych <= ')') goto yy174;
21336 				if (yych <= ',') goto yy228;
21337 				goto yy346;
21338 			} else {
21339 				if (yych == '/') goto yy182;
21340 				goto yy230;
21341 			}
21342 		}
21343 	} else {
21344 		if (yych <= '^') {
21345 			if (yych <= 'Q') {
21346 				if (yych <= '@') goto yy228;
21347 				goto yy177;
21348 			} else {
21349 				if (yych <= 'R') goto yy1359;
21350 				if (yych <= 'Z') goto yy177;
21351 				goto yy228;
21352 			}
21353 		} else {
21354 			if (yych <= 'q') {
21355 				if (yych <= '_') goto yy182;
21356 				if (yych <= '`') goto yy228;
21357 				goto yy185;
21358 			} else {
21359 				if (yych <= 'r') goto yy1382;
21360 				if (yych <= 'z') goto yy185;
21361 				goto yy228;
21362 			}
21363 		}
21364 	}
21365 yy1382:
21366 	YYDEBUG(1382, *YYCURSOR);
21367 	yyaccept = 0;
21368 	yych = *(YYMARKER = ++YYCURSOR);
21369 	if (yych <= 'T') {
21370 		if (yych <= '-') {
21371 			if (yych == ')') goto yy174;
21372 			if (yych <= ',') goto yy3;
21373 			goto yy182;
21374 		} else {
21375 			if (yych == '/') goto yy182;
21376 			if (yych <= '@') goto yy3;
21377 			goto yy178;
21378 		}
21379 	} else {
21380 		if (yych <= '_') {
21381 			if (yych <= 'U') goto yy1360;
21382 			if (yych <= 'Z') goto yy178;
21383 			if (yych <= '^') goto yy3;
21384 			goto yy182;
21385 		} else {
21386 			if (yych <= 't') {
21387 				if (yych <= '`') goto yy3;
21388 				goto yy186;
21389 			} else {
21390 				if (yych <= 'u') goto yy1383;
21391 				if (yych <= 'z') goto yy186;
21392 				goto yy3;
21393 			}
21394 		}
21395 	}
21396 yy1383:
21397 	YYDEBUG(1383, *YYCURSOR);
21398 	yyaccept = 0;
21399 	yych = *(YYMARKER = ++YYCURSOR);
21400 	if (yych <= '@') {
21401 		if (yych <= ',') {
21402 			if (yych == ')') goto yy174;
21403 			goto yy3;
21404 		} else {
21405 			if (yych == '.') goto yy3;
21406 			if (yych <= '/') goto yy182;
21407 			goto yy3;
21408 		}
21409 	} else {
21410 		if (yych <= '_') {
21411 			if (yych <= 'A') goto yy1361;
21412 			if (yych <= 'Z') goto yy179;
21413 			if (yych <= '^') goto yy3;
21414 			goto yy182;
21415 		} else {
21416 			if (yych <= '`') goto yy3;
21417 			if (yych <= 'a') goto yy1384;
21418 			if (yych <= 'z') goto yy187;
21419 			goto yy3;
21420 		}
21421 	}
21422 yy1384:
21423 	YYDEBUG(1384, *YYCURSOR);
21424 	yyaccept = 0;
21425 	yych = *(YYMARKER = ++YYCURSOR);
21426 	if (yych <= 'Q') {
21427 		if (yych <= ',') {
21428 			if (yych == ')') goto yy174;
21429 			goto yy3;
21430 		} else {
21431 			if (yych == '.') goto yy3;
21432 			if (yych <= '/') goto yy182;
21433 			goto yy3;
21434 		}
21435 	} else {
21436 		if (yych <= '`') {
21437 			if (yych <= 'R') goto yy1362;
21438 			if (yych == '_') goto yy182;
21439 			goto yy3;
21440 		} else {
21441 			if (yych == 'r') goto yy1385;
21442 			if (yych <= 'z') goto yy188;
21443 			goto yy3;
21444 		}
21445 	}
21446 yy1385:
21447 	YYDEBUG(1385, *YYCURSOR);
21448 	yych = *++YYCURSOR;
21449 	if (yych == 'Y') goto yy239;
21450 	if (yych == 'y') goto yy351;
21451 	goto yy189;
21452 yy1386:
21453 	YYDEBUG(1386, *YYCURSOR);
21454 	yych = *++YYCURSOR;
21455 	if (yych <= '/') goto yy55;
21456 	if (yych >= ':') goto yy55;
21457 yy1387:
21458 	YYDEBUG(1387, *YYCURSOR);
21459 	yyaccept = 28;
21460 	YYMARKER = ++YYCURSOR;
21461 	if ((YYLIMIT - YYCURSOR) < 7) YYFILL(7);
21462 	yych = *YYCURSOR;
21463 	YYDEBUG(1388, *YYCURSOR);
21464 	if (yych == '.') goto yy1390;
21465 	if (yych <= '/') goto yy1389;
21466 	if (yych <= '9') goto yy1387;
21467 yy1389:
21468 	YYDEBUG(1389, *YYCURSOR);
21469 #line 1071 "parse_date.re"
21470 	{
21471 		timelib_ull i;
21472 
21473 		TIMELIB_INIT;
21474 		TIMELIB_HAVE_RELATIVE();
21475 		TIMELIB_UNHAVE_DATE();
21476 		TIMELIB_UNHAVE_TIME();
21477 		TIMELIB_HAVE_TZ();
21478 
21479 		i = timelib_get_unsigned_nr((char **) &ptr, 24);
21480 		s->time->y = 1970;
21481 		s->time->m = 1;
21482 		s->time->d = 1;
21483 		s->time->h = s->time->i = s->time->s = 0;
21484 		s->time->us = 0;
21485 		s->time->relative.s += i;
21486 		s->time->is_localtime = 1;
21487 		s->time->zone_type = TIMELIB_ZONETYPE_OFFSET;
21488 		s->time->z = 0;
21489 		s->time->dst = 0;
21490 
21491 		TIMELIB_DEINIT;
21492 		return TIMELIB_RELATIVE;
21493 	}
21494 #line 21492 "<stdout>"
21495 yy1390:
21496 	YYDEBUG(1390, *YYCURSOR);
21497 	yych = *++YYCURSOR;
21498 	if (yych <= '/') goto yy55;
21499 	if (yych >= ':') goto yy55;
21500 	YYDEBUG(1391, *YYCURSOR);
21501 	yych = *++YYCURSOR;
21502 	if (yych <= '/') goto yy55;
21503 	if (yych >= ':') goto yy55;
21504 	YYDEBUG(1392, *YYCURSOR);
21505 	yych = *++YYCURSOR;
21506 	if (yych <= '/') goto yy55;
21507 	if (yych >= ':') goto yy55;
21508 	YYDEBUG(1393, *YYCURSOR);
21509 	yych = *++YYCURSOR;
21510 	if (yych <= '/') goto yy55;
21511 	if (yych >= ':') goto yy55;
21512 	YYDEBUG(1394, *YYCURSOR);
21513 	yych = *++YYCURSOR;
21514 	if (yych <= '/') goto yy55;
21515 	if (yych >= ':') goto yy55;
21516 	YYDEBUG(1395, *YYCURSOR);
21517 	yych = *++YYCURSOR;
21518 	if (yych <= '/') goto yy55;
21519 	if (yych >= ':') goto yy55;
21520 	YYDEBUG(1396, *YYCURSOR);
21521 	++YYCURSOR;
21522 	YYDEBUG(1397, *YYCURSOR);
21523 #line 1097 "parse_date.re"
21524 	{
21525 		timelib_ull i, us;
21526 
21527 		TIMELIB_INIT;
21528 		TIMELIB_HAVE_RELATIVE();
21529 		TIMELIB_UNHAVE_DATE();
21530 		TIMELIB_UNHAVE_TIME();
21531 		TIMELIB_HAVE_TZ();
21532 
21533 		i = timelib_get_unsigned_nr((char **) &ptr, 24);
21534 		us = timelib_get_unsigned_nr((char **) &ptr, 24);
21535 		s->time->y = 1970;
21536 		s->time->m = 1;
21537 		s->time->d = 1;
21538 		s->time->h = s->time->i = s->time->s = 0;
21539 		s->time->us = 0;
21540 		s->time->relative.s += i;
21541 		s->time->relative.us = us;
21542 		s->time->is_localtime = 1;
21543 		s->time->zone_type = TIMELIB_ZONETYPE_OFFSET;
21544 		s->time->z = 0;
21545 		s->time->dst = 0;
21546 
21547 		TIMELIB_DEINIT;
21548 		return TIMELIB_RELATIVE;
21549 	}
21550 #line 21548 "<stdout>"
21551 yy1398:
21552 	YYDEBUG(1398, *YYCURSOR);
21553 	yych = *++YYCURSOR;
21554 	if (yych <= 'N') {
21555 		if (yych <= ')') {
21556 			if (yych <= '(') goto yy3;
21557 			goto yy174;
21558 		} else {
21559 			if (yych <= '@') goto yy3;
21560 			if (yych <= 'M') goto yy176;
21561 			goto yy1439;
21562 		}
21563 	} else {
21564 		if (yych <= 'm') {
21565 			if (yych <= 'Z') goto yy176;
21566 			if (yych <= '`') goto yy3;
21567 			goto yy176;
21568 		} else {
21569 			if (yych <= 'n') goto yy1439;
21570 			if (yych <= 'z') goto yy176;
21571 			goto yy3;
21572 		}
21573 	}
21574 yy1399:
21575 	YYDEBUG(1399, *YYCURSOR);
21576 	yych = *++YYCURSOR;
21577 	if (yych <= 'U') {
21578 		if (yych <= '@') {
21579 			if (yych == ')') goto yy174;
21580 			goto yy3;
21581 		} else {
21582 			if (yych == 'I') goto yy1431;
21583 			if (yych <= 'T') goto yy176;
21584 			goto yy1432;
21585 		}
21586 	} else {
21587 		if (yych <= 'i') {
21588 			if (yych <= 'Z') goto yy176;
21589 			if (yych <= '`') goto yy3;
21590 			if (yych <= 'h') goto yy176;
21591 			goto yy1431;
21592 		} else {
21593 			if (yych == 'u') goto yy1432;
21594 			if (yych <= 'z') goto yy176;
21595 			goto yy3;
21596 		}
21597 	}
21598 yy1400:
21599 	YYDEBUG(1400, *YYCURSOR);
21600 	yych = *++YYCURSOR;
21601 	if (yych <= 'M') {
21602 		if (yych <= '@') {
21603 			if (yych == ')') goto yy174;
21604 			goto yy3;
21605 		} else {
21606 			if (yych == 'D') goto yy1420;
21607 			if (yych <= 'L') goto yy176;
21608 			goto yy1421;
21609 		}
21610 	} else {
21611 		if (yych <= 'd') {
21612 			if (yych <= 'Z') goto yy176;
21613 			if (yych <= '`') goto yy3;
21614 			if (yych <= 'c') goto yy176;
21615 			goto yy1420;
21616 		} else {
21617 			if (yych == 'm') goto yy1421;
21618 			if (yych <= 'z') goto yy176;
21619 			goto yy3;
21620 		}
21621 	}
21622 yy1401:
21623 	YYDEBUG(1401, *YYCURSOR);
21624 	yych = *++YYCURSOR;
21625 	if (yych <= 'E') {
21626 		if (yych <= ')') {
21627 			if (yych <= '(') goto yy3;
21628 			goto yy174;
21629 		} else {
21630 			if (yych <= '@') goto yy3;
21631 			if (yych <= 'D') goto yy176;
21632 			goto yy1416;
21633 		}
21634 	} else {
21635 		if (yych <= 'd') {
21636 			if (yych <= 'Z') goto yy176;
21637 			if (yych <= '`') goto yy3;
21638 			goto yy176;
21639 		} else {
21640 			if (yych <= 'e') goto yy1416;
21641 			if (yych <= 'z') goto yy176;
21642 			goto yy3;
21643 		}
21644 	}
21645 yy1402:
21646 	YYDEBUG(1402, *YYCURSOR);
21647 	yych = *++YYCURSOR;
21648 	if (yych <= 'E') {
21649 		if (yych <= ')') {
21650 			if (yych <= '(') goto yy3;
21651 			goto yy174;
21652 		} else {
21653 			if (yych <= '@') goto yy3;
21654 			if (yych <= 'D') goto yy176;
21655 			goto yy1412;
21656 		}
21657 	} else {
21658 		if (yych <= 'd') {
21659 			if (yych <= 'Z') goto yy176;
21660 			if (yych <= '`') goto yy3;
21661 			goto yy176;
21662 		} else {
21663 			if (yych <= 'e') goto yy1412;
21664 			if (yych <= 'z') goto yy176;
21665 			goto yy3;
21666 		}
21667 	}
21668 yy1403:
21669 	YYDEBUG(1403, *YYCURSOR);
21670 	yych = *++YYCURSOR;
21671 	if (yych <= '/') {
21672 		if (yych == '.') goto yy1039;
21673 		goto yy55;
21674 	} else {
21675 		if (yych <= '9') goto yy1406;
21676 		if (yych <= ':') goto yy1039;
21677 		goto yy55;
21678 	}
21679 yy1404:
21680 	YYDEBUG(1404, *YYCURSOR);
21681 	yych = *++YYCURSOR;
21682 	if (yych <= '/') {
21683 		if (yych == '.') goto yy1039;
21684 		goto yy55;
21685 	} else {
21686 		if (yych <= '4') goto yy1406;
21687 		if (yych == ':') goto yy1039;
21688 		goto yy55;
21689 	}
21690 yy1405:
21691 	YYDEBUG(1405, *YYCURSOR);
21692 	yych = *++YYCURSOR;
21693 	if (yych == '.') goto yy1039;
21694 	if (yych == ':') goto yy1039;
21695 	goto yy55;
21696 yy1406:
21697 	YYDEBUG(1406, *YYCURSOR);
21698 	yych = *++YYCURSOR;
21699 	if (yych <= '/') {
21700 		if (yych == '.') goto yy1039;
21701 		goto yy55;
21702 	} else {
21703 		if (yych <= '5') goto yy1407;
21704 		if (yych == ':') goto yy1039;
21705 		goto yy55;
21706 	}
21707 yy1407:
21708 	YYDEBUG(1407, *YYCURSOR);
21709 	yych = *++YYCURSOR;
21710 	if (yych <= '/') goto yy55;
21711 	if (yych >= ':') goto yy55;
21712 	YYDEBUG(1408, *YYCURSOR);
21713 	yyaccept = 23;
21714 	yych = *(YYMARKER = ++YYCURSOR);
21715 	if (yych <= '/') goto yy1042;
21716 	if (yych <= '5') goto yy1409;
21717 	if (yych <= '6') goto yy1410;
21718 	goto yy1042;
21719 yy1409:
21720 	YYDEBUG(1409, *YYCURSOR);
21721 	yych = *++YYCURSOR;
21722 	if (yych <= '/') goto yy55;
21723 	if (yych <= '9') goto yy1411;
21724 	goto yy55;
21725 yy1410:
21726 	YYDEBUG(1410, *YYCURSOR);
21727 	yych = *++YYCURSOR;
21728 	if (yych != '0') goto yy55;
21729 yy1411:
21730 	YYDEBUG(1411, *YYCURSOR);
21731 	yych = *++YYCURSOR;
21732 	goto yy1050;
21733 yy1412:
21734 	YYDEBUG(1412, *YYCURSOR);
21735 	yych = *++YYCURSOR;
21736 	if (yych <= 'L') {
21737 		if (yych <= ')') {
21738 			if (yych <= '(') goto yy3;
21739 			goto yy174;
21740 		} else {
21741 			if (yych <= '@') goto yy3;
21742 			if (yych <= 'K') goto yy177;
21743 		}
21744 	} else {
21745 		if (yych <= 'k') {
21746 			if (yych <= 'Z') goto yy177;
21747 			if (yych <= '`') goto yy3;
21748 			goto yy177;
21749 		} else {
21750 			if (yych <= 'l') goto yy1413;
21751 			if (yych <= 'z') goto yy177;
21752 			goto yy3;
21753 		}
21754 	}
21755 yy1413:
21756 	YYDEBUG(1413, *YYCURSOR);
21757 	yych = *++YYCURSOR;
21758 	if (yych <= 'F') {
21759 		if (yych <= ')') {
21760 			if (yych <= '(') goto yy3;
21761 			goto yy174;
21762 		} else {
21763 			if (yych <= '@') goto yy3;
21764 			if (yych <= 'E') goto yy178;
21765 		}
21766 	} else {
21767 		if (yych <= 'e') {
21768 			if (yych <= 'Z') goto yy178;
21769 			if (yych <= '`') goto yy3;
21770 			goto yy178;
21771 		} else {
21772 			if (yych <= 'f') goto yy1414;
21773 			if (yych <= 'z') goto yy178;
21774 			goto yy3;
21775 		}
21776 	}
21777 yy1414:
21778 	YYDEBUG(1414, *YYCURSOR);
21779 	yych = *++YYCURSOR;
21780 	if (yych <= 'T') {
21781 		if (yych <= ')') {
21782 			if (yych <= '(') goto yy3;
21783 			goto yy174;
21784 		} else {
21785 			if (yych <= '@') goto yy3;
21786 			if (yych <= 'S') goto yy179;
21787 		}
21788 	} else {
21789 		if (yych <= 's') {
21790 			if (yych <= 'Z') goto yy179;
21791 			if (yych <= '`') goto yy3;
21792 			goto yy179;
21793 		} else {
21794 			if (yych <= 't') goto yy1415;
21795 			if (yych <= 'z') goto yy179;
21796 			goto yy3;
21797 		}
21798 	}
21799 yy1415:
21800 	YYDEBUG(1415, *YYCURSOR);
21801 	yyaccept = 0;
21802 	yych = *(YYMARKER = ++YYCURSOR);
21803 	if (yych <= 'G') {
21804 		if (yych == ')') goto yy174;
21805 		goto yy3;
21806 	} else {
21807 		if (yych <= 'H') goto yy1205;
21808 		if (yych == 'h') goto yy1205;
21809 		goto yy3;
21810 	}
21811 yy1416:
21812 	YYDEBUG(1416, *YYCURSOR);
21813 	yych = *++YYCURSOR;
21814 	if (yych <= 'S') {
21815 		if (yych <= ')') {
21816 			if (yych <= '(') goto yy201;
21817 			goto yy174;
21818 		} else {
21819 			if (yych <= '@') goto yy201;
21820 			if (yych <= 'R') goto yy177;
21821 		}
21822 	} else {
21823 		if (yych <= 'r') {
21824 			if (yych <= 'Z') goto yy177;
21825 			if (yych <= '`') goto yy201;
21826 			goto yy177;
21827 		} else {
21828 			if (yych <= 's') goto yy1417;
21829 			if (yych <= 'z') goto yy177;
21830 			goto yy201;
21831 		}
21832 	}
21833 yy1417:
21834 	YYDEBUG(1417, *YYCURSOR);
21835 	yych = *++YYCURSOR;
21836 	if (yych <= 'D') {
21837 		if (yych <= ')') {
21838 			if (yych <= '(') goto yy3;
21839 			goto yy174;
21840 		} else {
21841 			if (yych <= '@') goto yy3;
21842 			if (yych <= 'C') goto yy178;
21843 		}
21844 	} else {
21845 		if (yych <= 'c') {
21846 			if (yych <= 'Z') goto yy178;
21847 			if (yych <= '`') goto yy3;
21848 			goto yy178;
21849 		} else {
21850 			if (yych <= 'd') goto yy1418;
21851 			if (yych <= 'z') goto yy178;
21852 			goto yy3;
21853 		}
21854 	}
21855 yy1418:
21856 	YYDEBUG(1418, *YYCURSOR);
21857 	yych = *++YYCURSOR;
21858 	if (yych <= 'A') {
21859 		if (yych == ')') goto yy174;
21860 		if (yych <= '@') goto yy3;
21861 	} else {
21862 		if (yych <= '`') {
21863 			if (yych <= 'Z') goto yy179;
21864 			goto yy3;
21865 		} else {
21866 			if (yych <= 'a') goto yy1419;
21867 			if (yych <= 'z') goto yy179;
21868 			goto yy3;
21869 		}
21870 	}
21871 yy1419:
21872 	YYDEBUG(1419, *YYCURSOR);
21873 	yych = *++YYCURSOR;
21874 	if (yych <= 'X') {
21875 		if (yych == ')') goto yy174;
21876 		goto yy3;
21877 	} else {
21878 		if (yych <= 'Y') goto yy207;
21879 		if (yych == 'y') goto yy207;
21880 		goto yy3;
21881 	}
21882 yy1420:
21883 	YYDEBUG(1420, *YYCURSOR);
21884 	yych = *++YYCURSOR;
21885 	if (yych <= 'A') {
21886 		if (yych == ')') goto yy174;
21887 		if (yych <= '@') goto yy3;
21888 		goto yy1428;
21889 	} else {
21890 		if (yych <= '`') {
21891 			if (yych <= 'Z') goto yy177;
21892 			goto yy3;
21893 		} else {
21894 			if (yych <= 'a') goto yy1428;
21895 			if (yych <= 'z') goto yy177;
21896 			goto yy3;
21897 		}
21898 	}
21899 yy1421:
21900 	YYDEBUG(1421, *YYCURSOR);
21901 	yych = *++YYCURSOR;
21902 	if (yych <= 'O') {
21903 		if (yych <= ')') {
21904 			if (yych <= '(') goto yy3;
21905 			goto yy174;
21906 		} else {
21907 			if (yych <= '@') goto yy3;
21908 			if (yych <= 'N') goto yy177;
21909 		}
21910 	} else {
21911 		if (yych <= 'n') {
21912 			if (yych <= 'Z') goto yy177;
21913 			if (yych <= '`') goto yy3;
21914 			goto yy177;
21915 		} else {
21916 			if (yych <= 'o') goto yy1422;
21917 			if (yych <= 'z') goto yy177;
21918 			goto yy3;
21919 		}
21920 	}
21921 yy1422:
21922 	YYDEBUG(1422, *YYCURSOR);
21923 	yych = *++YYCURSOR;
21924 	if (yych <= 'R') {
21925 		if (yych <= ')') {
21926 			if (yych <= '(') goto yy3;
21927 			goto yy174;
21928 		} else {
21929 			if (yych <= '@') goto yy3;
21930 			if (yych <= 'Q') goto yy178;
21931 		}
21932 	} else {
21933 		if (yych <= 'q') {
21934 			if (yych <= 'Z') goto yy178;
21935 			if (yych <= '`') goto yy3;
21936 			goto yy178;
21937 		} else {
21938 			if (yych <= 'r') goto yy1423;
21939 			if (yych <= 'z') goto yy178;
21940 			goto yy3;
21941 		}
21942 	}
21943 yy1423:
21944 	YYDEBUG(1423, *YYCURSOR);
21945 	yych = *++YYCURSOR;
21946 	if (yych <= 'R') {
21947 		if (yych <= ')') {
21948 			if (yych <= '(') goto yy3;
21949 			goto yy174;
21950 		} else {
21951 			if (yych <= '@') goto yy3;
21952 			if (yych <= 'Q') goto yy179;
21953 		}
21954 	} else {
21955 		if (yych <= 'q') {
21956 			if (yych <= 'Z') goto yy179;
21957 			if (yych <= '`') goto yy3;
21958 			goto yy179;
21959 		} else {
21960 			if (yych <= 'r') goto yy1424;
21961 			if (yych <= 'z') goto yy179;
21962 			goto yy3;
21963 		}
21964 	}
21965 yy1424:
21966 	YYDEBUG(1424, *YYCURSOR);
21967 	yyaccept = 0;
21968 	yych = *(YYMARKER = ++YYCURSOR);
21969 	if (yych <= 'N') {
21970 		if (yych == ')') goto yy174;
21971 		goto yy3;
21972 	} else {
21973 		if (yych <= 'O') goto yy1425;
21974 		if (yych != 'o') goto yy3;
21975 	}
21976 yy1425:
21977 	YYDEBUG(1425, *YYCURSOR);
21978 	yych = *++YYCURSOR;
21979 	if (yych == 'W') goto yy1426;
21980 	if (yych != 'w') goto yy55;
21981 yy1426:
21982 	YYDEBUG(1426, *YYCURSOR);
21983 	++YYCURSOR;
21984 yy1427:
21985 	YYDEBUG(1427, *YYCURSOR);
21986 #line 1059 "parse_date.re"
21987 	{
21988 		DEBUG_OUTPUT("tomorrow");
21989 		TIMELIB_INIT;
21990 		TIMELIB_HAVE_RELATIVE();
21991 		TIMELIB_UNHAVE_TIME();
21992 
21993 		s->time->relative.d = 1;
21994 		TIMELIB_DEINIT;
21995 		return TIMELIB_RELATIVE;
21996 	}
21997 #line 21995 "<stdout>"
21998 yy1428:
21999 	YYDEBUG(1428, *YYCURSOR);
22000 	yych = *++YYCURSOR;
22001 	if (yych <= 'Y') {
22002 		if (yych <= ')') {
22003 			if (yych <= '(') goto yy3;
22004 			goto yy174;
22005 		} else {
22006 			if (yych <= '@') goto yy3;
22007 			if (yych <= 'X') goto yy178;
22008 		}
22009 	} else {
22010 		if (yych <= 'x') {
22011 			if (yych <= 'Z') goto yy178;
22012 			if (yych <= '`') goto yy3;
22013 			goto yy178;
22014 		} else {
22015 			if (yych <= 'y') goto yy1429;
22016 			if (yych <= 'z') goto yy178;
22017 			goto yy3;
22018 		}
22019 	}
22020 yy1429:
22021 	YYDEBUG(1429, *YYCURSOR);
22022 	++YYCURSOR;
22023 	if ((yych = *YYCURSOR) <= '@') {
22024 		if (yych == ')') goto yy174;
22025 	} else {
22026 		if (yych <= 'Z') goto yy179;
22027 		if (yych <= '`') goto yy1430;
22028 		if (yych <= 'z') goto yy179;
22029 	}
22030 yy1430:
22031 	YYDEBUG(1430, *YYCURSOR);
22032 #line 1049 "parse_date.re"
22033 	{
22034 		DEBUG_OUTPUT("midnight | today");
22035 		TIMELIB_INIT;
22036 		TIMELIB_UNHAVE_TIME();
22037 
22038 		TIMELIB_DEINIT;
22039 		return TIMELIB_RELATIVE;
22040 	}
22041 #line 22039 "<stdout>"
22042 yy1431:
22043 	YYDEBUG(1431, *YYCURSOR);
22044 	yych = *++YYCURSOR;
22045 	if (yych <= 'S') {
22046 		if (yych <= '@') {
22047 			if (yych == ')') goto yy174;
22048 			goto yy3;
22049 		} else {
22050 			if (yych <= 'Q') goto yy177;
22051 			if (yych <= 'R') goto yy1437;
22052 			goto yy1438;
22053 		}
22054 	} else {
22055 		if (yych <= 'q') {
22056 			if (yych <= 'Z') goto yy177;
22057 			if (yych <= '`') goto yy3;
22058 			goto yy177;
22059 		} else {
22060 			if (yych <= 'r') goto yy1437;
22061 			if (yych <= 's') goto yy1438;
22062 			if (yych <= 'z') goto yy177;
22063 			goto yy3;
22064 		}
22065 	}
22066 yy1432:
22067 	YYDEBUG(1432, *YYCURSOR);
22068 	yych = *++YYCURSOR;
22069 	if (yych <= 'R') {
22070 		if (yych <= ')') {
22071 			if (yych <= '(') goto yy201;
22072 			goto yy174;
22073 		} else {
22074 			if (yych <= '@') goto yy201;
22075 			if (yych <= 'Q') goto yy177;
22076 		}
22077 	} else {
22078 		if (yych <= 'q') {
22079 			if (yych <= 'Z') goto yy177;
22080 			if (yych <= '`') goto yy201;
22081 			goto yy177;
22082 		} else {
22083 			if (yych <= 'r') goto yy1433;
22084 			if (yych <= 'z') goto yy177;
22085 			goto yy201;
22086 		}
22087 	}
22088 yy1433:
22089 	YYDEBUG(1433, *YYCURSOR);
22090 	yych = *++YYCURSOR;
22091 	if (yych <= 'S') {
22092 		if (yych <= ')') {
22093 			if (yych <= '(') goto yy3;
22094 			goto yy174;
22095 		} else {
22096 			if (yych <= '@') goto yy3;
22097 			if (yych <= 'R') goto yy178;
22098 		}
22099 	} else {
22100 		if (yych <= 'r') {
22101 			if (yych <= 'Z') goto yy178;
22102 			if (yych <= '`') goto yy3;
22103 			goto yy178;
22104 		} else {
22105 			if (yych <= 's') goto yy1434;
22106 			if (yych <= 'z') goto yy178;
22107 			goto yy3;
22108 		}
22109 	}
22110 yy1434:
22111 	YYDEBUG(1434, *YYCURSOR);
22112 	yych = *++YYCURSOR;
22113 	if (yych <= 'D') {
22114 		if (yych <= ')') {
22115 			if (yych <= '(') goto yy3;
22116 			goto yy174;
22117 		} else {
22118 			if (yych <= '@') goto yy3;
22119 			if (yych <= 'C') goto yy179;
22120 		}
22121 	} else {
22122 		if (yych <= 'c') {
22123 			if (yych <= 'Z') goto yy179;
22124 			if (yych <= '`') goto yy3;
22125 			goto yy179;
22126 		} else {
22127 			if (yych <= 'd') goto yy1435;
22128 			if (yych <= 'z') goto yy179;
22129 			goto yy3;
22130 		}
22131 	}
22132 yy1435:
22133 	YYDEBUG(1435, *YYCURSOR);
22134 	yyaccept = 0;
22135 	yych = *(YYMARKER = ++YYCURSOR);
22136 	if (yych <= '@') {
22137 		if (yych == ')') goto yy174;
22138 		goto yy3;
22139 	} else {
22140 		if (yych <= 'A') goto yy1436;
22141 		if (yych != 'a') goto yy3;
22142 	}
22143 yy1436:
22144 	YYDEBUG(1436, *YYCURSOR);
22145 	yych = *++YYCURSOR;
22146 	if (yych == 'Y') goto yy207;
22147 	if (yych == 'y') goto yy207;
22148 	goto yy55;
22149 yy1437:
22150 	YYDEBUG(1437, *YYCURSOR);
22151 	yych = *++YYCURSOR;
22152 	if (yych <= 'D') {
22153 		if (yych <= ')') {
22154 			if (yych <= '(') goto yy3;
22155 			goto yy174;
22156 		} else {
22157 			if (yych <= '@') goto yy3;
22158 			if (yych <= 'C') goto yy178;
22159 			goto yy1238;
22160 		}
22161 	} else {
22162 		if (yych <= 'c') {
22163 			if (yych <= 'Z') goto yy178;
22164 			if (yych <= '`') goto yy3;
22165 			goto yy178;
22166 		} else {
22167 			if (yych <= 'd') goto yy1238;
22168 			if (yych <= 'z') goto yy178;
22169 			goto yy3;
22170 		}
22171 	}
22172 yy1438:
22173 	YYDEBUG(1438, *YYCURSOR);
22174 	yyaccept = 0;
22175 	yych = *(YYMARKER = ++YYCURSOR);
22176 	if (yych <= '(') {
22177 		if (yych <= '\t') {
22178 			if (yych <= 0x08) goto yy3;
22179 			goto yy1079;
22180 		} else {
22181 			if (yych == ' ') goto yy1079;
22182 			goto yy3;
22183 		}
22184 	} else {
22185 		if (yych <= 'Z') {
22186 			if (yych <= ')') goto yy174;
22187 			if (yych <= '@') goto yy3;
22188 			goto yy178;
22189 		} else {
22190 			if (yych <= '`') goto yy3;
22191 			if (yych <= 'z') goto yy178;
22192 			goto yy3;
22193 		}
22194 	}
22195 yy1439:
22196 	YYDEBUG(1439, *YYCURSOR);
22197 	yych = *++YYCURSOR;
22198 	if (yych <= 'T') {
22199 		if (yych <= ')') {
22200 			if (yych <= '(') goto yy3;
22201 			goto yy174;
22202 		} else {
22203 			if (yych <= '@') goto yy3;
22204 			if (yych <= 'S') goto yy177;
22205 		}
22206 	} else {
22207 		if (yych <= 's') {
22208 			if (yych <= 'Z') goto yy177;
22209 			if (yych <= '`') goto yy3;
22210 			goto yy177;
22211 		} else {
22212 			if (yych <= 't') goto yy1440;
22213 			if (yych <= 'z') goto yy177;
22214 			goto yy3;
22215 		}
22216 	}
22217 yy1440:
22218 	YYDEBUG(1440, *YYCURSOR);
22219 	yych = *++YYCURSOR;
22220 	if (yych <= 'H') {
22221 		if (yych <= ')') {
22222 			if (yych <= '(') goto yy3;
22223 			goto yy174;
22224 		} else {
22225 			if (yych <= '@') goto yy3;
22226 			if (yych <= 'G') goto yy178;
22227 			goto yy1238;
22228 		}
22229 	} else {
22230 		if (yych <= 'g') {
22231 			if (yych <= 'Z') goto yy178;
22232 			if (yych <= '`') goto yy3;
22233 			goto yy178;
22234 		} else {
22235 			if (yych <= 'h') goto yy1238;
22236 			if (yych <= 'z') goto yy178;
22237 			goto yy3;
22238 		}
22239 	}
22240 yy1441:
22241 	YYDEBUG(1441, *YYCURSOR);
22242 	yyaccept = 0;
22243 	yych = *(YYMARKER = ++YYCURSOR);
22244 	if (yych <= 'M') {
22245 		if (yych <= '-') {
22246 			if (yych == ')') goto yy174;
22247 			if (yych <= ',') goto yy3;
22248 			goto yy182;
22249 		} else {
22250 			if (yych == '/') goto yy182;
22251 			if (yych <= '@') goto yy3;
22252 			goto yy176;
22253 		}
22254 	} else {
22255 		if (yych <= '_') {
22256 			if (yych <= 'N') goto yy1439;
22257 			if (yych <= 'Z') goto yy176;
22258 			if (yych <= '^') goto yy3;
22259 			goto yy182;
22260 		} else {
22261 			if (yych <= 'm') {
22262 				if (yych <= '`') goto yy3;
22263 				goto yy181;
22264 			} else {
22265 				if (yych <= 'n') goto yy1471;
22266 				if (yych <= 'z') goto yy181;
22267 				goto yy3;
22268 			}
22269 		}
22270 	}
22271 yy1442:
22272 	YYDEBUG(1442, *YYCURSOR);
22273 	yyaccept = 0;
22274 	yych = *(YYMARKER = ++YYCURSOR);
22275 	if (yych <= 'T') {
22276 		if (yych <= '.') {
22277 			if (yych <= ')') {
22278 				if (yych <= '(') goto yy3;
22279 				goto yy174;
22280 			} else {
22281 				if (yych == '-') goto yy182;
22282 				goto yy3;
22283 			}
22284 		} else {
22285 			if (yych <= '@') {
22286 				if (yych <= '/') goto yy182;
22287 				goto yy3;
22288 			} else {
22289 				if (yych == 'I') goto yy1431;
22290 				goto yy176;
22291 			}
22292 		}
22293 	} else {
22294 		if (yych <= '`') {
22295 			if (yych <= 'Z') {
22296 				if (yych <= 'U') goto yy1432;
22297 				goto yy176;
22298 			} else {
22299 				if (yych == '_') goto yy182;
22300 				goto yy3;
22301 			}
22302 		} else {
22303 			if (yych <= 't') {
22304 				if (yych == 'i') goto yy1463;
22305 				goto yy181;
22306 			} else {
22307 				if (yych <= 'u') goto yy1464;
22308 				if (yych <= 'z') goto yy181;
22309 				goto yy3;
22310 			}
22311 		}
22312 	}
22313 yy1443:
22314 	YYDEBUG(1443, *YYCURSOR);
22315 	yyaccept = 0;
22316 	yych = *(YYMARKER = ++YYCURSOR);
22317 	if (yych <= 'L') {
22318 		if (yych <= '.') {
22319 			if (yych <= ')') {
22320 				if (yych <= '(') goto yy3;
22321 				goto yy174;
22322 			} else {
22323 				if (yych == '-') goto yy182;
22324 				goto yy3;
22325 			}
22326 		} else {
22327 			if (yych <= '@') {
22328 				if (yych <= '/') goto yy182;
22329 				goto yy3;
22330 			} else {
22331 				if (yych == 'D') goto yy1420;
22332 				goto yy176;
22333 			}
22334 		}
22335 	} else {
22336 		if (yych <= '`') {
22337 			if (yych <= 'Z') {
22338 				if (yych <= 'M') goto yy1421;
22339 				goto yy176;
22340 			} else {
22341 				if (yych == '_') goto yy182;
22342 				goto yy3;
22343 			}
22344 		} else {
22345 			if (yych <= 'l') {
22346 				if (yych == 'd') goto yy1454;
22347 				goto yy181;
22348 			} else {
22349 				if (yych <= 'm') goto yy1455;
22350 				if (yych <= 'z') goto yy181;
22351 				goto yy3;
22352 			}
22353 		}
22354 	}
22355 yy1444:
22356 	YYDEBUG(1444, *YYCURSOR);
22357 	yyaccept = 0;
22358 	yych = *(YYMARKER = ++YYCURSOR);
22359 	if (yych <= 'D') {
22360 		if (yych <= '-') {
22361 			if (yych == ')') goto yy174;
22362 			if (yych <= ',') goto yy3;
22363 			goto yy182;
22364 		} else {
22365 			if (yych == '/') goto yy182;
22366 			if (yych <= '@') goto yy3;
22367 			goto yy176;
22368 		}
22369 	} else {
22370 		if (yych <= '_') {
22371 			if (yych <= 'E') goto yy1416;
22372 			if (yych <= 'Z') goto yy176;
22373 			if (yych <= '^') goto yy3;
22374 			goto yy182;
22375 		} else {
22376 			if (yych <= 'd') {
22377 				if (yych <= '`') goto yy3;
22378 				goto yy181;
22379 			} else {
22380 				if (yych <= 'e') goto yy1450;
22381 				if (yych <= 'z') goto yy181;
22382 				goto yy3;
22383 			}
22384 		}
22385 	}
22386 yy1445:
22387 	YYDEBUG(1445, *YYCURSOR);
22388 	yyaccept = 0;
22389 	yych = *(YYMARKER = ++YYCURSOR);
22390 	if (yych <= 'D') {
22391 		if (yych <= '-') {
22392 			if (yych == ')') goto yy174;
22393 			if (yych <= ',') goto yy3;
22394 			goto yy182;
22395 		} else {
22396 			if (yych == '/') goto yy182;
22397 			if (yych <= '@') goto yy3;
22398 			goto yy176;
22399 		}
22400 	} else {
22401 		if (yych <= '_') {
22402 			if (yych <= 'E') goto yy1412;
22403 			if (yych <= 'Z') goto yy176;
22404 			if (yych <= '^') goto yy3;
22405 			goto yy182;
22406 		} else {
22407 			if (yych <= 'd') {
22408 				if (yych <= '`') goto yy3;
22409 				goto yy181;
22410 			} else {
22411 				if (yych <= 'e') goto yy1446;
22412 				if (yych <= 'z') goto yy181;
22413 				goto yy3;
22414 			}
22415 		}
22416 	}
22417 yy1446:
22418 	YYDEBUG(1446, *YYCURSOR);
22419 	yyaccept = 0;
22420 	yych = *(YYMARKER = ++YYCURSOR);
22421 	if (yych <= 'K') {
22422 		if (yych <= '-') {
22423 			if (yych == ')') goto yy174;
22424 			if (yych <= ',') goto yy3;
22425 			goto yy182;
22426 		} else {
22427 			if (yych == '/') goto yy182;
22428 			if (yych <= '@') goto yy3;
22429 			goto yy177;
22430 		}
22431 	} else {
22432 		if (yych <= '_') {
22433 			if (yych <= 'L') goto yy1413;
22434 			if (yych <= 'Z') goto yy177;
22435 			if (yych <= '^') goto yy3;
22436 			goto yy182;
22437 		} else {
22438 			if (yych <= 'k') {
22439 				if (yych <= '`') goto yy3;
22440 				goto yy185;
22441 			} else {
22442 				if (yych <= 'l') goto yy1447;
22443 				if (yych <= 'z') goto yy185;
22444 				goto yy3;
22445 			}
22446 		}
22447 	}
22448 yy1447:
22449 	YYDEBUG(1447, *YYCURSOR);
22450 	yyaccept = 0;
22451 	yych = *(YYMARKER = ++YYCURSOR);
22452 	if (yych <= 'E') {
22453 		if (yych <= '-') {
22454 			if (yych == ')') goto yy174;
22455 			if (yych <= ',') goto yy3;
22456 			goto yy182;
22457 		} else {
22458 			if (yych == '/') goto yy182;
22459 			if (yych <= '@') goto yy3;
22460 			goto yy178;
22461 		}
22462 	} else {
22463 		if (yych <= '_') {
22464 			if (yych <= 'F') goto yy1414;
22465 			if (yych <= 'Z') goto yy178;
22466 			if (yych <= '^') goto yy3;
22467 			goto yy182;
22468 		} else {
22469 			if (yych <= 'e') {
22470 				if (yych <= '`') goto yy3;
22471 				goto yy186;
22472 			} else {
22473 				if (yych <= 'f') goto yy1448;
22474 				if (yych <= 'z') goto yy186;
22475 				goto yy3;
22476 			}
22477 		}
22478 	}
22479 yy1448:
22480 	YYDEBUG(1448, *YYCURSOR);
22481 	yyaccept = 0;
22482 	yych = *(YYMARKER = ++YYCURSOR);
22483 	if (yych <= 'S') {
22484 		if (yych <= '-') {
22485 			if (yych == ')') goto yy174;
22486 			if (yych <= ',') goto yy3;
22487 			goto yy182;
22488 		} else {
22489 			if (yych == '/') goto yy182;
22490 			if (yych <= '@') goto yy3;
22491 			goto yy179;
22492 		}
22493 	} else {
22494 		if (yych <= '_') {
22495 			if (yych <= 'T') goto yy1415;
22496 			if (yych <= 'Z') goto yy179;
22497 			if (yych <= '^') goto yy3;
22498 			goto yy182;
22499 		} else {
22500 			if (yych <= 's') {
22501 				if (yych <= '`') goto yy3;
22502 				goto yy187;
22503 			} else {
22504 				if (yych <= 't') goto yy1449;
22505 				if (yych <= 'z') goto yy187;
22506 				goto yy3;
22507 			}
22508 		}
22509 	}
22510 yy1449:
22511 	YYDEBUG(1449, *YYCURSOR);
22512 	yyaccept = 0;
22513 	yych = *(YYMARKER = ++YYCURSOR);
22514 	if (yych <= 'G') {
22515 		if (yych <= ',') {
22516 			if (yych == ')') goto yy174;
22517 			goto yy3;
22518 		} else {
22519 			if (yych == '.') goto yy3;
22520 			if (yych <= '/') goto yy182;
22521 			goto yy3;
22522 		}
22523 	} else {
22524 		if (yych <= '`') {
22525 			if (yych <= 'H') goto yy1205;
22526 			if (yych == '_') goto yy182;
22527 			goto yy3;
22528 		} else {
22529 			if (yych == 'h') goto yy1223;
22530 			if (yych <= 'z') goto yy188;
22531 			goto yy3;
22532 		}
22533 	}
22534 yy1450:
22535 	YYDEBUG(1450, *YYCURSOR);
22536 	yyaccept = 4;
22537 	yych = *(YYMARKER = ++YYCURSOR);
22538 	if (yych <= 'R') {
22539 		if (yych <= '-') {
22540 			if (yych == ')') goto yy174;
22541 			if (yych <= ',') goto yy201;
22542 			goto yy182;
22543 		} else {
22544 			if (yych == '/') goto yy182;
22545 			if (yych <= '@') goto yy201;
22546 			goto yy177;
22547 		}
22548 	} else {
22549 		if (yych <= '_') {
22550 			if (yych <= 'S') goto yy1417;
22551 			if (yych <= 'Z') goto yy177;
22552 			if (yych <= '^') goto yy201;
22553 			goto yy182;
22554 		} else {
22555 			if (yych <= 'r') {
22556 				if (yych <= '`') goto yy201;
22557 				goto yy185;
22558 			} else {
22559 				if (yych <= 's') goto yy1451;
22560 				if (yych <= 'z') goto yy185;
22561 				goto yy201;
22562 			}
22563 		}
22564 	}
22565 yy1451:
22566 	YYDEBUG(1451, *YYCURSOR);
22567 	yyaccept = 0;
22568 	yych = *(YYMARKER = ++YYCURSOR);
22569 	if (yych <= 'C') {
22570 		if (yych <= '-') {
22571 			if (yych == ')') goto yy174;
22572 			if (yych <= ',') goto yy3;
22573 			goto yy182;
22574 		} else {
22575 			if (yych == '/') goto yy182;
22576 			if (yych <= '@') goto yy3;
22577 			goto yy178;
22578 		}
22579 	} else {
22580 		if (yych <= '_') {
22581 			if (yych <= 'D') goto yy1418;
22582 			if (yych <= 'Z') goto yy178;
22583 			if (yych <= '^') goto yy3;
22584 			goto yy182;
22585 		} else {
22586 			if (yych <= 'c') {
22587 				if (yych <= '`') goto yy3;
22588 				goto yy186;
22589 			} else {
22590 				if (yych <= 'd') goto yy1452;
22591 				if (yych <= 'z') goto yy186;
22592 				goto yy3;
22593 			}
22594 		}
22595 	}
22596 yy1452:
22597 	YYDEBUG(1452, *YYCURSOR);
22598 	yyaccept = 0;
22599 	yych = *(YYMARKER = ++YYCURSOR);
22600 	if (yych <= '@') {
22601 		if (yych <= ',') {
22602 			if (yych == ')') goto yy174;
22603 			goto yy3;
22604 		} else {
22605 			if (yych == '.') goto yy3;
22606 			if (yych <= '/') goto yy182;
22607 			goto yy3;
22608 		}
22609 	} else {
22610 		if (yych <= '_') {
22611 			if (yych <= 'A') goto yy1419;
22612 			if (yych <= 'Z') goto yy179;
22613 			if (yych <= '^') goto yy3;
22614 			goto yy182;
22615 		} else {
22616 			if (yych <= '`') goto yy3;
22617 			if (yych <= 'a') goto yy1453;
22618 			if (yych <= 'z') goto yy187;
22619 			goto yy3;
22620 		}
22621 	}
22622 yy1453:
22623 	YYDEBUG(1453, *YYCURSOR);
22624 	yyaccept = 0;
22625 	yych = *(YYMARKER = ++YYCURSOR);
22626 	if (yych <= 'X') {
22627 		if (yych <= ',') {
22628 			if (yych == ')') goto yy174;
22629 			goto yy3;
22630 		} else {
22631 			if (yych == '.') goto yy3;
22632 			if (yych <= '/') goto yy182;
22633 			goto yy3;
22634 		}
22635 	} else {
22636 		if (yych <= '`') {
22637 			if (yych <= 'Y') goto yy207;
22638 			if (yych == '_') goto yy182;
22639 			goto yy3;
22640 		} else {
22641 			if (yych == 'y') goto yy220;
22642 			if (yych <= 'z') goto yy188;
22643 			goto yy3;
22644 		}
22645 	}
22646 yy1454:
22647 	YYDEBUG(1454, *YYCURSOR);
22648 	yyaccept = 0;
22649 	yych = *(YYMARKER = ++YYCURSOR);
22650 	if (yych <= '@') {
22651 		if (yych <= ',') {
22652 			if (yych == ')') goto yy174;
22653 			goto yy3;
22654 		} else {
22655 			if (yych == '.') goto yy3;
22656 			if (yych <= '/') goto yy182;
22657 			goto yy3;
22658 		}
22659 	} else {
22660 		if (yych <= '_') {
22661 			if (yych <= 'A') goto yy1428;
22662 			if (yych <= 'Z') goto yy177;
22663 			if (yych <= '^') goto yy3;
22664 			goto yy182;
22665 		} else {
22666 			if (yych <= '`') goto yy3;
22667 			if (yych <= 'a') goto yy1461;
22668 			if (yych <= 'z') goto yy185;
22669 			goto yy3;
22670 		}
22671 	}
22672 yy1455:
22673 	YYDEBUG(1455, *YYCURSOR);
22674 	yyaccept = 0;
22675 	yych = *(YYMARKER = ++YYCURSOR);
22676 	if (yych <= 'N') {
22677 		if (yych <= '-') {
22678 			if (yych == ')') goto yy174;
22679 			if (yych <= ',') goto yy3;
22680 			goto yy182;
22681 		} else {
22682 			if (yych == '/') goto yy182;
22683 			if (yych <= '@') goto yy3;
22684 			goto yy177;
22685 		}
22686 	} else {
22687 		if (yych <= '_') {
22688 			if (yych <= 'O') goto yy1422;
22689 			if (yych <= 'Z') goto yy177;
22690 			if (yych <= '^') goto yy3;
22691 			goto yy182;
22692 		} else {
22693 			if (yych <= 'n') {
22694 				if (yych <= '`') goto yy3;
22695 				goto yy185;
22696 			} else {
22697 				if (yych <= 'o') goto yy1456;
22698 				if (yych <= 'z') goto yy185;
22699 				goto yy3;
22700 			}
22701 		}
22702 	}
22703 yy1456:
22704 	YYDEBUG(1456, *YYCURSOR);
22705 	yyaccept = 0;
22706 	yych = *(YYMARKER = ++YYCURSOR);
22707 	if (yych <= 'Q') {
22708 		if (yych <= '-') {
22709 			if (yych == ')') goto yy174;
22710 			if (yych <= ',') goto yy3;
22711 			goto yy182;
22712 		} else {
22713 			if (yych == '/') goto yy182;
22714 			if (yych <= '@') goto yy3;
22715 			goto yy178;
22716 		}
22717 	} else {
22718 		if (yych <= '_') {
22719 			if (yych <= 'R') goto yy1423;
22720 			if (yych <= 'Z') goto yy178;
22721 			if (yych <= '^') goto yy3;
22722 			goto yy182;
22723 		} else {
22724 			if (yych <= 'q') {
22725 				if (yych <= '`') goto yy3;
22726 				goto yy186;
22727 			} else {
22728 				if (yych <= 'r') goto yy1457;
22729 				if (yych <= 'z') goto yy186;
22730 				goto yy3;
22731 			}
22732 		}
22733 	}
22734 yy1457:
22735 	YYDEBUG(1457, *YYCURSOR);
22736 	yyaccept = 0;
22737 	yych = *(YYMARKER = ++YYCURSOR);
22738 	if (yych <= 'Q') {
22739 		if (yych <= '-') {
22740 			if (yych == ')') goto yy174;
22741 			if (yych <= ',') goto yy3;
22742 			goto yy182;
22743 		} else {
22744 			if (yych == '/') goto yy182;
22745 			if (yych <= '@') goto yy3;
22746 			goto yy179;
22747 		}
22748 	} else {
22749 		if (yych <= '_') {
22750 			if (yych <= 'R') goto yy1424;
22751 			if (yych <= 'Z') goto yy179;
22752 			if (yych <= '^') goto yy3;
22753 			goto yy182;
22754 		} else {
22755 			if (yych <= 'q') {
22756 				if (yych <= '`') goto yy3;
22757 				goto yy187;
22758 			} else {
22759 				if (yych <= 'r') goto yy1458;
22760 				if (yych <= 'z') goto yy187;
22761 				goto yy3;
22762 			}
22763 		}
22764 	}
22765 yy1458:
22766 	YYDEBUG(1458, *YYCURSOR);
22767 	yyaccept = 0;
22768 	yych = *(YYMARKER = ++YYCURSOR);
22769 	if (yych <= 'N') {
22770 		if (yych <= ',') {
22771 			if (yych == ')') goto yy174;
22772 			goto yy3;
22773 		} else {
22774 			if (yych == '.') goto yy3;
22775 			if (yych <= '/') goto yy182;
22776 			goto yy3;
22777 		}
22778 	} else {
22779 		if (yych <= '`') {
22780 			if (yych <= 'O') goto yy1425;
22781 			if (yych == '_') goto yy182;
22782 			goto yy3;
22783 		} else {
22784 			if (yych == 'o') goto yy1459;
22785 			if (yych <= 'z') goto yy188;
22786 			goto yy3;
22787 		}
22788 	}
22789 yy1459:
22790 	YYDEBUG(1459, *YYCURSOR);
22791 	yych = *++YYCURSOR;
22792 	if (yych == 'W') goto yy1426;
22793 	if (yych != 'w') goto yy189;
22794 	YYDEBUG(1460, *YYCURSOR);
22795 	yyaccept = 29;
22796 	yych = *(YYMARKER = ++YYCURSOR);
22797 	if (yybm[0+yych] & 8) {
22798 		goto yy188;
22799 	}
22800 	if (yych <= '.') {
22801 		if (yych == '-') goto yy182;
22802 		goto yy1427;
22803 	} else {
22804 		if (yych <= '/') goto yy182;
22805 		if (yych == '_') goto yy182;
22806 		goto yy1427;
22807 	}
22808 yy1461:
22809 	YYDEBUG(1461, *YYCURSOR);
22810 	yyaccept = 0;
22811 	yych = *(YYMARKER = ++YYCURSOR);
22812 	if (yych <= 'X') {
22813 		if (yych <= '-') {
22814 			if (yych == ')') goto yy174;
22815 			if (yych <= ',') goto yy3;
22816 			goto yy182;
22817 		} else {
22818 			if (yych == '/') goto yy182;
22819 			if (yych <= '@') goto yy3;
22820 			goto yy178;
22821 		}
22822 	} else {
22823 		if (yych <= '_') {
22824 			if (yych <= 'Y') goto yy1429;
22825 			if (yych <= 'Z') goto yy178;
22826 			if (yych <= '^') goto yy3;
22827 			goto yy182;
22828 		} else {
22829 			if (yych <= 'x') {
22830 				if (yych <= '`') goto yy3;
22831 				goto yy186;
22832 			} else {
22833 				if (yych <= 'y') goto yy1462;
22834 				if (yych <= 'z') goto yy186;
22835 				goto yy3;
22836 			}
22837 		}
22838 	}
22839 yy1462:
22840 	YYDEBUG(1462, *YYCURSOR);
22841 	yyaccept = 30;
22842 	yych = *(YYMARKER = ++YYCURSOR);
22843 	if (yych <= '/') {
22844 		if (yych <= ',') {
22845 			if (yych == ')') goto yy174;
22846 			goto yy1430;
22847 		} else {
22848 			if (yych == '.') goto yy1430;
22849 			goto yy182;
22850 		}
22851 	} else {
22852 		if (yych <= '^') {
22853 			if (yych <= '@') goto yy1430;
22854 			if (yych <= 'Z') goto yy179;
22855 			goto yy1430;
22856 		} else {
22857 			if (yych <= '_') goto yy182;
22858 			if (yych <= '`') goto yy1430;
22859 			if (yych <= 'z') goto yy187;
22860 			goto yy1430;
22861 		}
22862 	}
22863 yy1463:
22864 	YYDEBUG(1463, *YYCURSOR);
22865 	yyaccept = 0;
22866 	yych = *(YYMARKER = ++YYCURSOR);
22867 	if (yych <= 'R') {
22868 		if (yych <= '-') {
22869 			if (yych == ')') goto yy174;
22870 			if (yych <= ',') goto yy3;
22871 			goto yy182;
22872 		} else {
22873 			if (yych <= '/') {
22874 				if (yych <= '.') goto yy3;
22875 				goto yy182;
22876 			} else {
22877 				if (yych <= '@') goto yy3;
22878 				if (yych <= 'Q') goto yy177;
22879 				goto yy1437;
22880 			}
22881 		}
22882 	} else {
22883 		if (yych <= '`') {
22884 			if (yych <= 'Z') {
22885 				if (yych <= 'S') goto yy1438;
22886 				goto yy177;
22887 			} else {
22888 				if (yych == '_') goto yy182;
22889 				goto yy3;
22890 			}
22891 		} else {
22892 			if (yych <= 'r') {
22893 				if (yych <= 'q') goto yy185;
22894 				goto yy1469;
22895 			} else {
22896 				if (yych <= 's') goto yy1470;
22897 				if (yych <= 'z') goto yy185;
22898 				goto yy3;
22899 			}
22900 		}
22901 	}
22902 yy1464:
22903 	YYDEBUG(1464, *YYCURSOR);
22904 	yyaccept = 4;
22905 	yych = *(YYMARKER = ++YYCURSOR);
22906 	if (yych <= 'Q') {
22907 		if (yych <= '-') {
22908 			if (yych == ')') goto yy174;
22909 			if (yych <= ',') goto yy201;
22910 			goto yy182;
22911 		} else {
22912 			if (yych == '/') goto yy182;
22913 			if (yych <= '@') goto yy201;
22914 			goto yy177;
22915 		}
22916 	} else {
22917 		if (yych <= '_') {
22918 			if (yych <= 'R') goto yy1433;
22919 			if (yych <= 'Z') goto yy177;
22920 			if (yych <= '^') goto yy201;
22921 			goto yy182;
22922 		} else {
22923 			if (yych <= 'q') {
22924 				if (yych <= '`') goto yy201;
22925 				goto yy185;
22926 			} else {
22927 				if (yych <= 'r') goto yy1465;
22928 				if (yych <= 'z') goto yy185;
22929 				goto yy201;
22930 			}
22931 		}
22932 	}
22933 yy1465:
22934 	YYDEBUG(1465, *YYCURSOR);
22935 	yyaccept = 0;
22936 	yych = *(YYMARKER = ++YYCURSOR);
22937 	if (yych <= 'R') {
22938 		if (yych <= '-') {
22939 			if (yych == ')') goto yy174;
22940 			if (yych <= ',') goto yy3;
22941 			goto yy182;
22942 		} else {
22943 			if (yych == '/') goto yy182;
22944 			if (yych <= '@') goto yy3;
22945 			goto yy178;
22946 		}
22947 	} else {
22948 		if (yych <= '_') {
22949 			if (yych <= 'S') goto yy1434;
22950 			if (yych <= 'Z') goto yy178;
22951 			if (yych <= '^') goto yy3;
22952 			goto yy182;
22953 		} else {
22954 			if (yych <= 'r') {
22955 				if (yych <= '`') goto yy3;
22956 				goto yy186;
22957 			} else {
22958 				if (yych <= 's') goto yy1466;
22959 				if (yych <= 'z') goto yy186;
22960 				goto yy3;
22961 			}
22962 		}
22963 	}
22964 yy1466:
22965 	YYDEBUG(1466, *YYCURSOR);
22966 	yyaccept = 0;
22967 	yych = *(YYMARKER = ++YYCURSOR);
22968 	if (yych <= 'C') {
22969 		if (yych <= '-') {
22970 			if (yych == ')') goto yy174;
22971 			if (yych <= ',') goto yy3;
22972 			goto yy182;
22973 		} else {
22974 			if (yych == '/') goto yy182;
22975 			if (yych <= '@') goto yy3;
22976 			goto yy179;
22977 		}
22978 	} else {
22979 		if (yych <= '_') {
22980 			if (yych <= 'D') goto yy1435;
22981 			if (yych <= 'Z') goto yy179;
22982 			if (yych <= '^') goto yy3;
22983 			goto yy182;
22984 		} else {
22985 			if (yych <= 'c') {
22986 				if (yych <= '`') goto yy3;
22987 				goto yy187;
22988 			} else {
22989 				if (yych <= 'd') goto yy1467;
22990 				if (yych <= 'z') goto yy187;
22991 				goto yy3;
22992 			}
22993 		}
22994 	}
22995 yy1467:
22996 	YYDEBUG(1467, *YYCURSOR);
22997 	yyaccept = 0;
22998 	yych = *(YYMARKER = ++YYCURSOR);
22999 	if (yych <= '@') {
23000 		if (yych <= ',') {
23001 			if (yych == ')') goto yy174;
23002 			goto yy3;
23003 		} else {
23004 			if (yych == '.') goto yy3;
23005 			if (yych <= '/') goto yy182;
23006 			goto yy3;
23007 		}
23008 	} else {
23009 		if (yych <= '_') {
23010 			if (yych <= 'A') goto yy1436;
23011 			if (yych <= '^') goto yy3;
23012 			goto yy182;
23013 		} else {
23014 			if (yych <= '`') goto yy3;
23015 			if (yych <= 'a') goto yy1468;
23016 			if (yych <= 'z') goto yy188;
23017 			goto yy3;
23018 		}
23019 	}
23020 yy1468:
23021 	YYDEBUG(1468, *YYCURSOR);
23022 	yych = *++YYCURSOR;
23023 	if (yych == 'Y') goto yy207;
23024 	if (yych == 'y') goto yy220;
23025 	goto yy189;
23026 yy1469:
23027 	YYDEBUG(1469, *YYCURSOR);
23028 	yyaccept = 0;
23029 	yych = *(YYMARKER = ++YYCURSOR);
23030 	if (yych <= 'C') {
23031 		if (yych <= '-') {
23032 			if (yych == ')') goto yy174;
23033 			if (yych <= ',') goto yy3;
23034 			goto yy182;
23035 		} else {
23036 			if (yych == '/') goto yy182;
23037 			if (yych <= '@') goto yy3;
23038 			goto yy178;
23039 		}
23040 	} else {
23041 		if (yych <= '_') {
23042 			if (yych <= 'D') goto yy1238;
23043 			if (yych <= 'Z') goto yy178;
23044 			if (yych <= '^') goto yy3;
23045 			goto yy182;
23046 		} else {
23047 			if (yych <= 'c') {
23048 				if (yych <= '`') goto yy3;
23049 				goto yy186;
23050 			} else {
23051 				if (yych <= 'd') goto yy1267;
23052 				if (yych <= 'z') goto yy186;
23053 				goto yy3;
23054 			}
23055 		}
23056 	}
23057 yy1470:
23058 	YYDEBUG(1470, *YYCURSOR);
23059 	yyaccept = 0;
23060 	yych = *(YYMARKER = ++YYCURSOR);
23061 	if (yych <= '-') {
23062 		if (yych <= ' ') {
23063 			if (yych == '\t') goto yy1079;
23064 			if (yych <= 0x1F) goto yy3;
23065 			goto yy1079;
23066 		} else {
23067 			if (yych == ')') goto yy174;
23068 			if (yych <= ',') goto yy3;
23069 			goto yy182;
23070 		}
23071 	} else {
23072 		if (yych <= 'Z') {
23073 			if (yych == '/') goto yy182;
23074 			if (yych <= '@') goto yy3;
23075 			goto yy178;
23076 		} else {
23077 			if (yych <= '_') {
23078 				if (yych <= '^') goto yy3;
23079 				goto yy182;
23080 			} else {
23081 				if (yych <= '`') goto yy3;
23082 				if (yych <= 'z') goto yy186;
23083 				goto yy3;
23084 			}
23085 		}
23086 	}
23087 yy1471:
23088 	YYDEBUG(1471, *YYCURSOR);
23089 	yyaccept = 0;
23090 	yych = *(YYMARKER = ++YYCURSOR);
23091 	if (yych <= 'S') {
23092 		if (yych <= '-') {
23093 			if (yych == ')') goto yy174;
23094 			if (yych <= ',') goto yy3;
23095 			goto yy182;
23096 		} else {
23097 			if (yych == '/') goto yy182;
23098 			if (yych <= '@') goto yy3;
23099 			goto yy177;
23100 		}
23101 	} else {
23102 		if (yych <= '_') {
23103 			if (yych <= 'T') goto yy1440;
23104 			if (yych <= 'Z') goto yy177;
23105 			if (yych <= '^') goto yy3;
23106 			goto yy182;
23107 		} else {
23108 			if (yych <= 's') {
23109 				if (yych <= '`') goto yy3;
23110 				goto yy185;
23111 			} else {
23112 				if (yych <= 't') goto yy1472;
23113 				if (yych <= 'z') goto yy185;
23114 				goto yy3;
23115 			}
23116 		}
23117 	}
23118 yy1472:
23119 	YYDEBUG(1472, *YYCURSOR);
23120 	yyaccept = 0;
23121 	yych = *(YYMARKER = ++YYCURSOR);
23122 	if (yych <= 'G') {
23123 		if (yych <= '-') {
23124 			if (yych == ')') goto yy174;
23125 			if (yych <= ',') goto yy3;
23126 			goto yy182;
23127 		} else {
23128 			if (yych == '/') goto yy182;
23129 			if (yych <= '@') goto yy3;
23130 			goto yy178;
23131 		}
23132 	} else {
23133 		if (yych <= '_') {
23134 			if (yych <= 'H') goto yy1238;
23135 			if (yych <= 'Z') goto yy178;
23136 			if (yych <= '^') goto yy3;
23137 			goto yy182;
23138 		} else {
23139 			if (yych <= 'g') {
23140 				if (yych <= '`') goto yy3;
23141 				goto yy186;
23142 			} else {
23143 				if (yych <= 'h') goto yy1267;
23144 				if (yych <= 'z') goto yy186;
23145 				goto yy3;
23146 			}
23147 		}
23148 	}
23149 yy1473:
23150 	YYDEBUG(1473, *YYCURSOR);
23151 	yych = *++YYCURSOR;
23152 	if (yych <= 'Y') {
23153 		if (yych <= '@') {
23154 			if (yych == ')') goto yy174;
23155 			goto yy3;
23156 		} else {
23157 			if (yych == 'R') goto yy1485;
23158 			if (yych <= 'X') goto yy176;
23159 			goto yy1486;
23160 		}
23161 	} else {
23162 		if (yych <= 'r') {
23163 			if (yych <= 'Z') goto yy176;
23164 			if (yych <= '`') goto yy3;
23165 			if (yych <= 'q') goto yy176;
23166 			goto yy1485;
23167 		} else {
23168 			if (yych == 'y') goto yy1486;
23169 			if (yych <= 'z') goto yy176;
23170 			goto yy3;
23171 		}
23172 	}
23173 yy1474:
23174 	YYDEBUG(1474, *YYCURSOR);
23175 	yych = *++YYCURSOR;
23176 	if (yych <= 'D') {
23177 		if (yych <= ')') {
23178 			if (yych <= '(') goto yy3;
23179 			goto yy174;
23180 		} else {
23181 			if (yych <= '@') goto yy3;
23182 			if (yych <= 'C') goto yy176;
23183 			goto yy1479;
23184 		}
23185 	} else {
23186 		if (yych <= 'c') {
23187 			if (yych <= 'Z') goto yy176;
23188 			if (yych <= '`') goto yy3;
23189 			goto yy176;
23190 		} else {
23191 			if (yych <= 'd') goto yy1479;
23192 			if (yych <= 'z') goto yy176;
23193 			goto yy3;
23194 		}
23195 	}
23196 yy1475:
23197 	YYDEBUG(1475, *YYCURSOR);
23198 	yych = *++YYCURSOR;
23199 	if (yych <= 'N') {
23200 		if (yych <= ')') {
23201 			if (yych <= '(') goto yy3;
23202 			goto yy174;
23203 		} else {
23204 			if (yych <= '@') goto yy3;
23205 			if (yych <= 'M') goto yy176;
23206 		}
23207 	} else {
23208 		if (yych <= 'm') {
23209 			if (yych <= 'Z') goto yy176;
23210 			if (yych <= '`') goto yy3;
23211 			goto yy176;
23212 		} else {
23213 			if (yych <= 'n') goto yy1476;
23214 			if (yych <= 'z') goto yy176;
23215 			goto yy3;
23216 		}
23217 	}
23218 yy1476:
23219 	YYDEBUG(1476, *YYCURSOR);
23220 	yych = *++YYCURSOR;
23221 	if (yych <= 'D') {
23222 		if (yych <= ')') {
23223 			if (yych <= '(') goto yy201;
23224 			goto yy174;
23225 		} else {
23226 			if (yych <= '@') goto yy201;
23227 			if (yych <= 'C') goto yy177;
23228 		}
23229 	} else {
23230 		if (yych <= 'c') {
23231 			if (yych <= 'Z') goto yy177;
23232 			if (yych <= '`') goto yy201;
23233 			goto yy177;
23234 		} else {
23235 			if (yych <= 'd') goto yy1477;
23236 			if (yych <= 'z') goto yy177;
23237 			goto yy201;
23238 		}
23239 	}
23240 yy1477:
23241 	YYDEBUG(1477, *YYCURSOR);
23242 	yych = *++YYCURSOR;
23243 	if (yych <= 'A') {
23244 		if (yych == ')') goto yy174;
23245 		if (yych <= '@') goto yy3;
23246 	} else {
23247 		if (yych <= '`') {
23248 			if (yych <= 'Z') goto yy178;
23249 			goto yy3;
23250 		} else {
23251 			if (yych <= 'a') goto yy1478;
23252 			if (yych <= 'z') goto yy178;
23253 			goto yy3;
23254 		}
23255 	}
23256 yy1478:
23257 	YYDEBUG(1478, *YYCURSOR);
23258 	yych = *++YYCURSOR;
23259 	if (yych <= 'Y') {
23260 		if (yych <= ')') {
23261 			if (yych <= '(') goto yy3;
23262 			goto yy174;
23263 		} else {
23264 			if (yych <= '@') goto yy3;
23265 			if (yych <= 'X') goto yy179;
23266 			goto yy1235;
23267 		}
23268 	} else {
23269 		if (yych <= 'x') {
23270 			if (yych <= 'Z') goto yy179;
23271 			if (yych <= '`') goto yy3;
23272 			goto yy179;
23273 		} else {
23274 			if (yych <= 'y') goto yy1235;
23275 			if (yych <= 'z') goto yy179;
23276 			goto yy3;
23277 		}
23278 	}
23279 yy1479:
23280 	YYDEBUG(1479, *YYCURSOR);
23281 	yych = *++YYCURSOR;
23282 	if (yych <= 'N') {
23283 		if (yych <= ')') {
23284 			if (yych <= '(') goto yy3;
23285 			goto yy174;
23286 		} else {
23287 			if (yych <= '@') goto yy3;
23288 			if (yych <= 'M') goto yy177;
23289 		}
23290 	} else {
23291 		if (yych <= 'm') {
23292 			if (yych <= 'Z') goto yy177;
23293 			if (yych <= '`') goto yy3;
23294 			goto yy177;
23295 		} else {
23296 			if (yych <= 'n') goto yy1480;
23297 			if (yych <= 'z') goto yy177;
23298 			goto yy3;
23299 		}
23300 	}
23301 yy1480:
23302 	YYDEBUG(1480, *YYCURSOR);
23303 	yych = *++YYCURSOR;
23304 	if (yych <= 'I') {
23305 		if (yych <= ')') {
23306 			if (yych <= '(') goto yy3;
23307 			goto yy174;
23308 		} else {
23309 			if (yych <= '@') goto yy3;
23310 			if (yych <= 'H') goto yy178;
23311 		}
23312 	} else {
23313 		if (yych <= 'h') {
23314 			if (yych <= 'Z') goto yy178;
23315 			if (yych <= '`') goto yy3;
23316 			goto yy178;
23317 		} else {
23318 			if (yych <= 'i') goto yy1481;
23319 			if (yych <= 'z') goto yy178;
23320 			goto yy3;
23321 		}
23322 	}
23323 yy1481:
23324 	YYDEBUG(1481, *YYCURSOR);
23325 	yych = *++YYCURSOR;
23326 	if (yych <= 'G') {
23327 		if (yych <= ')') {
23328 			if (yych <= '(') goto yy3;
23329 			goto yy174;
23330 		} else {
23331 			if (yych <= '@') goto yy3;
23332 			if (yych <= 'F') goto yy179;
23333 		}
23334 	} else {
23335 		if (yych <= 'f') {
23336 			if (yych <= 'Z') goto yy179;
23337 			if (yych <= '`') goto yy3;
23338 			goto yy179;
23339 		} else {
23340 			if (yych <= 'g') goto yy1482;
23341 			if (yych <= 'z') goto yy179;
23342 			goto yy3;
23343 		}
23344 	}
23345 yy1482:
23346 	YYDEBUG(1482, *YYCURSOR);
23347 	yyaccept = 0;
23348 	yych = *(YYMARKER = ++YYCURSOR);
23349 	if (yych <= 'G') {
23350 		if (yych == ')') goto yy174;
23351 		goto yy3;
23352 	} else {
23353 		if (yych <= 'H') goto yy1483;
23354 		if (yych != 'h') goto yy3;
23355 	}
23356 yy1483:
23357 	YYDEBUG(1483, *YYCURSOR);
23358 	yych = *++YYCURSOR;
23359 	if (yych == 'T') goto yy1484;
23360 	if (yych != 't') goto yy55;
23361 yy1484:
23362 	YYDEBUG(1484, *YYCURSOR);
23363 	yych = *++YYCURSOR;
23364 	goto yy1430;
23365 yy1485:
23366 	YYDEBUG(1485, *YYCURSOR);
23367 	yyaccept = 5;
23368 	yych = *(YYMARKER = ++YYCURSOR);
23369 	if (yych <= '/') {
23370 		if (yych <= '(') {
23371 			if (yych <= '\t') {
23372 				if (yych <= 0x08) goto yy228;
23373 				goto yy230;
23374 			} else {
23375 				if (yych == ' ') goto yy230;
23376 				goto yy228;
23377 			}
23378 		} else {
23379 			if (yych <= ',') {
23380 				if (yych <= ')') goto yy174;
23381 				goto yy228;
23382 			} else {
23383 				if (yych <= '-') goto yy231;
23384 				if (yych <= '.') goto yy230;
23385 				goto yy228;
23386 			}
23387 		}
23388 	} else {
23389 		if (yych <= 'Z') {
23390 			if (yych <= '@') {
23391 				if (yych <= '9') goto yy230;
23392 				goto yy228;
23393 			} else {
23394 				if (yych == 'C') goto yy1487;
23395 				goto yy177;
23396 			}
23397 		} else {
23398 			if (yych <= 'b') {
23399 				if (yych <= '`') goto yy228;
23400 				goto yy177;
23401 			} else {
23402 				if (yych <= 'c') goto yy1487;
23403 				if (yych <= 'z') goto yy177;
23404 				goto yy228;
23405 			}
23406 		}
23407 	}
23408 yy1486:
23409 	YYDEBUG(1486, *YYCURSOR);
23410 	yyaccept = 5;
23411 	yych = *(YYMARKER = ++YYCURSOR);
23412 	if (yych <= '-') {
23413 		if (yych <= ' ') {
23414 			if (yych == '\t') goto yy230;
23415 			if (yych <= 0x1F) goto yy228;
23416 			goto yy230;
23417 		} else {
23418 			if (yych == ')') goto yy174;
23419 			if (yych <= ',') goto yy228;
23420 			goto yy231;
23421 		}
23422 	} else {
23423 		if (yych <= '@') {
23424 			if (yych == '/') goto yy228;
23425 			if (yych <= '9') goto yy230;
23426 			goto yy228;
23427 		} else {
23428 			if (yych <= 'Z') goto yy177;
23429 			if (yych <= '`') goto yy228;
23430 			if (yych <= 'z') goto yy177;
23431 			goto yy228;
23432 		}
23433 	}
23434 yy1487:
23435 	YYDEBUG(1487, *YYCURSOR);
23436 	yych = *++YYCURSOR;
23437 	if (yych <= 'H') {
23438 		if (yych <= ')') {
23439 			if (yych <= '(') goto yy3;
23440 			goto yy174;
23441 		} else {
23442 			if (yych <= '@') goto yy3;
23443 			if (yych <= 'G') goto yy178;
23444 			goto yy370;
23445 		}
23446 	} else {
23447 		if (yych <= 'g') {
23448 			if (yych <= 'Z') goto yy178;
23449 			if (yych <= '`') goto yy3;
23450 			goto yy178;
23451 		} else {
23452 			if (yych <= 'h') goto yy370;
23453 			if (yych <= 'z') goto yy178;
23454 			goto yy3;
23455 		}
23456 	}
23457 yy1488:
23458 	YYDEBUG(1488, *YYCURSOR);
23459 	yyaccept = 0;
23460 	yych = *(YYMARKER = ++YYCURSOR);
23461 	if (yych <= 'X') {
23462 		if (yych <= '.') {
23463 			if (yych <= ')') {
23464 				if (yych <= '(') goto yy3;
23465 				goto yy174;
23466 			} else {
23467 				if (yych == '-') goto yy182;
23468 				goto yy3;
23469 			}
23470 		} else {
23471 			if (yych <= '@') {
23472 				if (yych <= '/') goto yy182;
23473 				goto yy3;
23474 			} else {
23475 				if (yych == 'R') goto yy1485;
23476 				goto yy176;
23477 			}
23478 		}
23479 	} else {
23480 		if (yych <= '`') {
23481 			if (yych <= 'Z') {
23482 				if (yych <= 'Y') goto yy1486;
23483 				goto yy176;
23484 			} else {
23485 				if (yych == '_') goto yy182;
23486 				goto yy3;
23487 			}
23488 		} else {
23489 			if (yych <= 'x') {
23490 				if (yych == 'r') goto yy1500;
23491 				goto yy181;
23492 			} else {
23493 				if (yych <= 'y') goto yy1501;
23494 				if (yych <= 'z') goto yy181;
23495 				goto yy3;
23496 			}
23497 		}
23498 	}
23499 yy1489:
23500 	YYDEBUG(1489, *YYCURSOR);
23501 	yyaccept = 0;
23502 	yych = *(YYMARKER = ++YYCURSOR);
23503 	if (yych <= 'C') {
23504 		if (yych <= '-') {
23505 			if (yych == ')') goto yy174;
23506 			if (yych <= ',') goto yy3;
23507 			goto yy182;
23508 		} else {
23509 			if (yych == '/') goto yy182;
23510 			if (yych <= '@') goto yy3;
23511 			goto yy176;
23512 		}
23513 	} else {
23514 		if (yych <= '_') {
23515 			if (yych <= 'D') goto yy1479;
23516 			if (yych <= 'Z') goto yy176;
23517 			if (yych <= '^') goto yy3;
23518 			goto yy182;
23519 		} else {
23520 			if (yych <= 'c') {
23521 				if (yych <= '`') goto yy3;
23522 				goto yy181;
23523 			} else {
23524 				if (yych <= 'd') goto yy1494;
23525 				if (yych <= 'z') goto yy181;
23526 				goto yy3;
23527 			}
23528 		}
23529 	}
23530 yy1490:
23531 	YYDEBUG(1490, *YYCURSOR);
23532 	yyaccept = 0;
23533 	yych = *(YYMARKER = ++YYCURSOR);
23534 	if (yych <= 'M') {
23535 		if (yych <= '-') {
23536 			if (yych == ')') goto yy174;
23537 			if (yych <= ',') goto yy3;
23538 			goto yy182;
23539 		} else {
23540 			if (yych == '/') goto yy182;
23541 			if (yych <= '@') goto yy3;
23542 			goto yy176;
23543 		}
23544 	} else {
23545 		if (yych <= '_') {
23546 			if (yych <= 'N') goto yy1476;
23547 			if (yych <= 'Z') goto yy176;
23548 			if (yych <= '^') goto yy3;
23549 			goto yy182;
23550 		} else {
23551 			if (yych <= 'm') {
23552 				if (yych <= '`') goto yy3;
23553 				goto yy181;
23554 			} else {
23555 				if (yych <= 'n') goto yy1491;
23556 				if (yych <= 'z') goto yy181;
23557 				goto yy3;
23558 			}
23559 		}
23560 	}
23561 yy1491:
23562 	YYDEBUG(1491, *YYCURSOR);
23563 	yyaccept = 4;
23564 	yych = *(YYMARKER = ++YYCURSOR);
23565 	if (yych <= 'C') {
23566 		if (yych <= '-') {
23567 			if (yych == ')') goto yy174;
23568 			if (yych <= ',') goto yy201;
23569 			goto yy182;
23570 		} else {
23571 			if (yych == '/') goto yy182;
23572 			if (yych <= '@') goto yy201;
23573 			goto yy177;
23574 		}
23575 	} else {
23576 		if (yych <= '_') {
23577 			if (yych <= 'D') goto yy1477;
23578 			if (yych <= 'Z') goto yy177;
23579 			if (yych <= '^') goto yy201;
23580 			goto yy182;
23581 		} else {
23582 			if (yych <= 'c') {
23583 				if (yych <= '`') goto yy201;
23584 				goto yy185;
23585 			} else {
23586 				if (yych <= 'd') goto yy1492;
23587 				if (yych <= 'z') goto yy185;
23588 				goto yy201;
23589 			}
23590 		}
23591 	}
23592 yy1492:
23593 	YYDEBUG(1492, *YYCURSOR);
23594 	yyaccept = 0;
23595 	yych = *(YYMARKER = ++YYCURSOR);
23596 	if (yych <= '@') {
23597 		if (yych <= ',') {
23598 			if (yych == ')') goto yy174;
23599 			goto yy3;
23600 		} else {
23601 			if (yych == '.') goto yy3;
23602 			if (yych <= '/') goto yy182;
23603 			goto yy3;
23604 		}
23605 	} else {
23606 		if (yych <= '_') {
23607 			if (yych <= 'A') goto yy1478;
23608 			if (yych <= 'Z') goto yy178;
23609 			if (yych <= '^') goto yy3;
23610 			goto yy182;
23611 		} else {
23612 			if (yych <= '`') goto yy3;
23613 			if (yych <= 'a') goto yy1493;
23614 			if (yych <= 'z') goto yy186;
23615 			goto yy3;
23616 		}
23617 	}
23618 yy1493:
23619 	YYDEBUG(1493, *YYCURSOR);
23620 	yyaccept = 0;
23621 	yych = *(YYMARKER = ++YYCURSOR);
23622 	if (yych <= 'X') {
23623 		if (yych <= '-') {
23624 			if (yych == ')') goto yy174;
23625 			if (yych <= ',') goto yy3;
23626 			goto yy182;
23627 		} else {
23628 			if (yych == '/') goto yy182;
23629 			if (yych <= '@') goto yy3;
23630 			goto yy179;
23631 		}
23632 	} else {
23633 		if (yych <= '_') {
23634 			if (yych <= 'Y') goto yy1235;
23635 			if (yych <= 'Z') goto yy179;
23636 			if (yych <= '^') goto yy3;
23637 			goto yy182;
23638 		} else {
23639 			if (yych <= 'x') {
23640 				if (yych <= '`') goto yy3;
23641 				goto yy187;
23642 			} else {
23643 				if (yych <= 'y') goto yy1264;
23644 				if (yych <= 'z') goto yy187;
23645 				goto yy3;
23646 			}
23647 		}
23648 	}
23649 yy1494:
23650 	YYDEBUG(1494, *YYCURSOR);
23651 	yyaccept = 0;
23652 	yych = *(YYMARKER = ++YYCURSOR);
23653 	if (yych <= 'M') {
23654 		if (yych <= '-') {
23655 			if (yych == ')') goto yy174;
23656 			if (yych <= ',') goto yy3;
23657 			goto yy182;
23658 		} else {
23659 			if (yych == '/') goto yy182;
23660 			if (yych <= '@') goto yy3;
23661 			goto yy177;
23662 		}
23663 	} else {
23664 		if (yych <= '_') {
23665 			if (yych <= 'N') goto yy1480;
23666 			if (yych <= 'Z') goto yy177;
23667 			if (yych <= '^') goto yy3;
23668 			goto yy182;
23669 		} else {
23670 			if (yych <= 'm') {
23671 				if (yych <= '`') goto yy3;
23672 				goto yy185;
23673 			} else {
23674 				if (yych <= 'n') goto yy1495;
23675 				if (yych <= 'z') goto yy185;
23676 				goto yy3;
23677 			}
23678 		}
23679 	}
23680 yy1495:
23681 	YYDEBUG(1495, *YYCURSOR);
23682 	yyaccept = 0;
23683 	yych = *(YYMARKER = ++YYCURSOR);
23684 	if (yych <= 'H') {
23685 		if (yych <= '-') {
23686 			if (yych == ')') goto yy174;
23687 			if (yych <= ',') goto yy3;
23688 			goto yy182;
23689 		} else {
23690 			if (yych == '/') goto yy182;
23691 			if (yych <= '@') goto yy3;
23692 			goto yy178;
23693 		}
23694 	} else {
23695 		if (yych <= '_') {
23696 			if (yych <= 'I') goto yy1481;
23697 			if (yych <= 'Z') goto yy178;
23698 			if (yych <= '^') goto yy3;
23699 			goto yy182;
23700 		} else {
23701 			if (yych <= 'h') {
23702 				if (yych <= '`') goto yy3;
23703 				goto yy186;
23704 			} else {
23705 				if (yych <= 'i') goto yy1496;
23706 				if (yych <= 'z') goto yy186;
23707 				goto yy3;
23708 			}
23709 		}
23710 	}
23711 yy1496:
23712 	YYDEBUG(1496, *YYCURSOR);
23713 	yyaccept = 0;
23714 	yych = *(YYMARKER = ++YYCURSOR);
23715 	if (yych <= 'F') {
23716 		if (yych <= '-') {
23717 			if (yych == ')') goto yy174;
23718 			if (yych <= ',') goto yy3;
23719 			goto yy182;
23720 		} else {
23721 			if (yych == '/') goto yy182;
23722 			if (yych <= '@') goto yy3;
23723 			goto yy179;
23724 		}
23725 	} else {
23726 		if (yych <= '_') {
23727 			if (yych <= 'G') goto yy1482;
23728 			if (yych <= 'Z') goto yy179;
23729 			if (yych <= '^') goto yy3;
23730 			goto yy182;
23731 		} else {
23732 			if (yych <= 'f') {
23733 				if (yych <= '`') goto yy3;
23734 				goto yy187;
23735 			} else {
23736 				if (yych <= 'g') goto yy1497;
23737 				if (yych <= 'z') goto yy187;
23738 				goto yy3;
23739 			}
23740 		}
23741 	}
23742 yy1497:
23743 	YYDEBUG(1497, *YYCURSOR);
23744 	yyaccept = 0;
23745 	yych = *(YYMARKER = ++YYCURSOR);
23746 	if (yych <= 'G') {
23747 		if (yych <= ',') {
23748 			if (yych == ')') goto yy174;
23749 			goto yy3;
23750 		} else {
23751 			if (yych == '.') goto yy3;
23752 			if (yych <= '/') goto yy182;
23753 			goto yy3;
23754 		}
23755 	} else {
23756 		if (yych <= '`') {
23757 			if (yych <= 'H') goto yy1483;
23758 			if (yych == '_') goto yy182;
23759 			goto yy3;
23760 		} else {
23761 			if (yych == 'h') goto yy1498;
23762 			if (yych <= 'z') goto yy188;
23763 			goto yy3;
23764 		}
23765 	}
23766 yy1498:
23767 	YYDEBUG(1498, *YYCURSOR);
23768 	yych = *++YYCURSOR;
23769 	if (yych == 'T') goto yy1484;
23770 	if (yych != 't') goto yy189;
23771 	YYDEBUG(1499, *YYCURSOR);
23772 	yyaccept = 30;
23773 	yych = *(YYMARKER = ++YYCURSOR);
23774 	if (yybm[0+yych] & 8) {
23775 		goto yy188;
23776 	}
23777 	if (yych <= '.') {
23778 		if (yych == '-') goto yy182;
23779 		goto yy1430;
23780 	} else {
23781 		if (yych <= '/') goto yy182;
23782 		if (yych == '_') goto yy182;
23783 		goto yy1430;
23784 	}
23785 yy1500:
23786 	YYDEBUG(1500, *YYCURSOR);
23787 	yyaccept = 5;
23788 	yych = *(YYMARKER = ++YYCURSOR);
23789 	if (yych <= '9') {
23790 		if (yych <= '(') {
23791 			if (yych <= '\t') {
23792 				if (yych <= 0x08) goto yy228;
23793 				goto yy230;
23794 			} else {
23795 				if (yych == ' ') goto yy230;
23796 				goto yy228;
23797 			}
23798 		} else {
23799 			if (yych <= '-') {
23800 				if (yych <= ')') goto yy174;
23801 				if (yych <= ',') goto yy228;
23802 				goto yy346;
23803 			} else {
23804 				if (yych == '/') goto yy182;
23805 				goto yy230;
23806 			}
23807 		}
23808 	} else {
23809 		if (yych <= '^') {
23810 			if (yych <= 'B') {
23811 				if (yych <= '@') goto yy228;
23812 				goto yy177;
23813 			} else {
23814 				if (yych <= 'C') goto yy1487;
23815 				if (yych <= 'Z') goto yy177;
23816 				goto yy228;
23817 			}
23818 		} else {
23819 			if (yych <= 'b') {
23820 				if (yych <= '_') goto yy182;
23821 				if (yych <= '`') goto yy228;
23822 				goto yy185;
23823 			} else {
23824 				if (yych <= 'c') goto yy1502;
23825 				if (yych <= 'z') goto yy185;
23826 				goto yy228;
23827 			}
23828 		}
23829 	}
23830 yy1501:
23831 	YYDEBUG(1501, *YYCURSOR);
23832 	yyaccept = 5;
23833 	yych = *(YYMARKER = ++YYCURSOR);
23834 	if (yych <= '.') {
23835 		if (yych <= ' ') {
23836 			if (yych == '\t') goto yy230;
23837 			if (yych <= 0x1F) goto yy228;
23838 			goto yy230;
23839 		} else {
23840 			if (yych <= ')') {
23841 				if (yych <= '(') goto yy228;
23842 				goto yy174;
23843 			} else {
23844 				if (yych <= ',') goto yy228;
23845 				if (yych <= '-') goto yy346;
23846 				goto yy230;
23847 			}
23848 		}
23849 	} else {
23850 		if (yych <= 'Z') {
23851 			if (yych <= '/') goto yy182;
23852 			if (yych <= '9') goto yy230;
23853 			if (yych <= '@') goto yy228;
23854 			goto yy177;
23855 		} else {
23856 			if (yych <= '_') {
23857 				if (yych <= '^') goto yy228;
23858 				goto yy182;
23859 			} else {
23860 				if (yych <= '`') goto yy228;
23861 				if (yych <= 'z') goto yy185;
23862 				goto yy228;
23863 			}
23864 		}
23865 	}
23866 yy1502:
23867 	YYDEBUG(1502, *YYCURSOR);
23868 	yyaccept = 0;
23869 	yych = *(YYMARKER = ++YYCURSOR);
23870 	if (yych <= 'G') {
23871 		if (yych <= '-') {
23872 			if (yych == ')') goto yy174;
23873 			if (yych <= ',') goto yy3;
23874 			goto yy182;
23875 		} else {
23876 			if (yych == '/') goto yy182;
23877 			if (yych <= '@') goto yy3;
23878 			goto yy178;
23879 		}
23880 	} else {
23881 		if (yych <= '_') {
23882 			if (yych <= 'H') goto yy370;
23883 			if (yych <= 'Z') goto yy178;
23884 			if (yych <= '^') goto yy3;
23885 			goto yy182;
23886 		} else {
23887 			if (yych <= 'g') {
23888 				if (yych <= '`') goto yy3;
23889 				goto yy186;
23890 			} else {
23891 				if (yych <= 'h') goto yy381;
23892 				if (yych <= 'z') goto yy186;
23893 				goto yy3;
23894 			}
23895 		}
23896 	}
23897 yy1503:
23898 	YYDEBUG(1503, *YYCURSOR);
23899 	yych = *++YYCURSOR;
23900 	if (yych <= 'W') {
23901 		if (yych <= 'N') {
23902 			if (yych == ')') goto yy174;
23903 			if (yych <= '@') goto yy3;
23904 			goto yy176;
23905 		} else {
23906 			if (yych <= 'O') goto yy1511;
23907 			if (yych <= 'U') goto yy176;
23908 			if (yych <= 'V') goto yy1512;
23909 			goto yy1509;
23910 		}
23911 	} else {
23912 		if (yych <= 'o') {
23913 			if (yych <= 'Z') goto yy176;
23914 			if (yych <= '`') goto yy3;
23915 			if (yych <= 'n') goto yy176;
23916 			goto yy1511;
23917 		} else {
23918 			if (yych <= 'v') {
23919 				if (yych <= 'u') goto yy176;
23920 				goto yy1512;
23921 			} else {
23922 				if (yych <= 'w') goto yy1509;
23923 				if (yych <= 'z') goto yy176;
23924 				goto yy3;
23925 			}
23926 		}
23927 	}
23928 yy1504:
23929 	YYDEBUG(1504, *YYCURSOR);
23930 	yych = *++YYCURSOR;
23931 	if (yych <= 'X') {
23932 		if (yych <= ')') {
23933 			if (yych <= '(') goto yy3;
23934 			goto yy174;
23935 		} else {
23936 			if (yych <= '@') goto yy3;
23937 			if (yych <= 'W') goto yy176;
23938 			goto yy1508;
23939 		}
23940 	} else {
23941 		if (yych <= 'w') {
23942 			if (yych <= 'Z') goto yy176;
23943 			if (yych <= '`') goto yy3;
23944 			goto yy176;
23945 		} else {
23946 			if (yych <= 'x') goto yy1508;
23947 			if (yych <= 'z') goto yy176;
23948 			goto yy3;
23949 		}
23950 	}
23951 yy1505:
23952 	YYDEBUG(1505, *YYCURSOR);
23953 	yych = *++YYCURSOR;
23954 	if (yych <= 'N') {
23955 		if (yych <= ')') {
23956 			if (yych <= '(') goto yy3;
23957 			goto yy174;
23958 		} else {
23959 			if (yych <= '@') goto yy3;
23960 			if (yych <= 'M') goto yy176;
23961 		}
23962 	} else {
23963 		if (yych <= 'm') {
23964 			if (yych <= 'Z') goto yy176;
23965 			if (yych <= '`') goto yy3;
23966 			goto yy176;
23967 		} else {
23968 			if (yych <= 'n') goto yy1506;
23969 			if (yych <= 'z') goto yy176;
23970 			goto yy3;
23971 		}
23972 	}
23973 yy1506:
23974 	YYDEBUG(1506, *YYCURSOR);
23975 	yych = *++YYCURSOR;
23976 	if (yych <= 'T') {
23977 		if (yych <= ')') {
23978 			if (yych <= '(') goto yy3;
23979 			goto yy174;
23980 		} else {
23981 			if (yych <= '@') goto yy3;
23982 			if (yych <= 'S') goto yy177;
23983 		}
23984 	} else {
23985 		if (yych <= 's') {
23986 			if (yych <= 'Z') goto yy177;
23987 			if (yych <= '`') goto yy3;
23988 			goto yy177;
23989 		} else {
23990 			if (yych <= 't') goto yy1507;
23991 			if (yych <= 'z') goto yy177;
23992 			goto yy3;
23993 		}
23994 	}
23995 yy1507:
23996 	YYDEBUG(1507, *YYCURSOR);
23997 	yych = *++YYCURSOR;
23998 	if (yych <= 'H') {
23999 		if (yych <= ')') {
24000 			if (yych <= '(') goto yy3;
24001 			goto yy174;
24002 		} else {
24003 			if (yych <= '@') goto yy3;
24004 			if (yych <= 'G') goto yy178;
24005 			goto yy1238;
24006 		}
24007 	} else {
24008 		if (yych <= 'g') {
24009 			if (yych <= 'Z') goto yy178;
24010 			if (yych <= '`') goto yy3;
24011 			goto yy178;
24012 		} else {
24013 			if (yych <= 'h') goto yy1238;
24014 			if (yych <= 'z') goto yy178;
24015 			goto yy3;
24016 		}
24017 	}
24018 yy1508:
24019 	YYDEBUG(1508, *YYCURSOR);
24020 	yych = *++YYCURSOR;
24021 	if (yych <= 'T') {
24022 		if (yych <= ')') {
24023 			if (yych <= '(') goto yy3;
24024 			goto yy174;
24025 		} else {
24026 			if (yych <= '@') goto yy3;
24027 			if (yych <= 'S') goto yy177;
24028 			goto yy1438;
24029 		}
24030 	} else {
24031 		if (yych <= 's') {
24032 			if (yych <= 'Z') goto yy177;
24033 			if (yych <= '`') goto yy3;
24034 			goto yy177;
24035 		} else {
24036 			if (yych <= 't') goto yy1438;
24037 			if (yych <= 'z') goto yy177;
24038 			goto yy3;
24039 		}
24040 	}
24041 yy1509:
24042 	YYDEBUG(1509, *YYCURSOR);
24043 	++YYCURSOR;
24044 	if ((yych = *YYCURSOR) <= '@') {
24045 		if (yych == ')') goto yy174;
24046 	} else {
24047 		if (yych <= 'Z') goto yy177;
24048 		if (yych <= '`') goto yy1510;
24049 		if (yych <= 'z') goto yy177;
24050 	}
24051 yy1510:
24052 	YYDEBUG(1510, *YYCURSOR);
24053 #line 1028 "parse_date.re"
24054 	{
24055 		DEBUG_OUTPUT("now");
24056 		TIMELIB_INIT;
24057 
24058 		TIMELIB_DEINIT;
24059 		return TIMELIB_RELATIVE;
24060 	}
24061 #line 24059 "<stdout>"
24062 yy1511:
24063 	YYDEBUG(1511, *YYCURSOR);
24064 	yych = *++YYCURSOR;
24065 	if (yych <= 'N') {
24066 		if (yych <= ')') {
24067 			if (yych <= '(') goto yy3;
24068 			goto yy174;
24069 		} else {
24070 			if (yych <= '@') goto yy3;
24071 			if (yych <= 'M') goto yy177;
24072 			goto yy1517;
24073 		}
24074 	} else {
24075 		if (yych <= 'm') {
24076 			if (yych <= 'Z') goto yy177;
24077 			if (yych <= '`') goto yy3;
24078 			goto yy177;
24079 		} else {
24080 			if (yych <= 'n') goto yy1517;
24081 			if (yych <= 'z') goto yy177;
24082 			goto yy3;
24083 		}
24084 	}
24085 yy1512:
24086 	YYDEBUG(1512, *YYCURSOR);
24087 	yyaccept = 5;
24088 	yych = *(YYMARKER = ++YYCURSOR);
24089 	if (yych <= '/') {
24090 		if (yych <= '(') {
24091 			if (yych <= '\t') {
24092 				if (yych <= 0x08) goto yy228;
24093 				goto yy230;
24094 			} else {
24095 				if (yych == ' ') goto yy230;
24096 				goto yy228;
24097 			}
24098 		} else {
24099 			if (yych <= ',') {
24100 				if (yych <= ')') goto yy174;
24101 				goto yy228;
24102 			} else {
24103 				if (yych <= '-') goto yy231;
24104 				if (yych <= '.') goto yy230;
24105 				goto yy228;
24106 			}
24107 		}
24108 	} else {
24109 		if (yych <= 'Z') {
24110 			if (yych <= '@') {
24111 				if (yych <= '9') goto yy230;
24112 				goto yy228;
24113 			} else {
24114 				if (yych != 'E') goto yy177;
24115 			}
24116 		} else {
24117 			if (yych <= 'd') {
24118 				if (yych <= '`') goto yy228;
24119 				goto yy177;
24120 			} else {
24121 				if (yych <= 'e') goto yy1513;
24122 				if (yych <= 'z') goto yy177;
24123 				goto yy228;
24124 			}
24125 		}
24126 	}
24127 yy1513:
24128 	YYDEBUG(1513, *YYCURSOR);
24129 	yych = *++YYCURSOR;
24130 	if (yych <= 'M') {
24131 		if (yych <= ')') {
24132 			if (yych <= '(') goto yy3;
24133 			goto yy174;
24134 		} else {
24135 			if (yych <= '@') goto yy3;
24136 			if (yych <= 'L') goto yy178;
24137 		}
24138 	} else {
24139 		if (yych <= 'l') {
24140 			if (yych <= 'Z') goto yy178;
24141 			if (yych <= '`') goto yy3;
24142 			goto yy178;
24143 		} else {
24144 			if (yych <= 'm') goto yy1514;
24145 			if (yych <= 'z') goto yy178;
24146 			goto yy3;
24147 		}
24148 	}
24149 yy1514:
24150 	YYDEBUG(1514, *YYCURSOR);
24151 	yych = *++YYCURSOR;
24152 	if (yych <= 'B') {
24153 		if (yych <= ')') {
24154 			if (yych <= '(') goto yy3;
24155 			goto yy174;
24156 		} else {
24157 			if (yych <= '@') goto yy3;
24158 			if (yych <= 'A') goto yy179;
24159 		}
24160 	} else {
24161 		if (yych <= 'a') {
24162 			if (yych <= 'Z') goto yy179;
24163 			if (yych <= '`') goto yy3;
24164 			goto yy179;
24165 		} else {
24166 			if (yych <= 'b') goto yy1515;
24167 			if (yych <= 'z') goto yy179;
24168 			goto yy3;
24169 		}
24170 	}
24171 yy1515:
24172 	YYDEBUG(1515, *YYCURSOR);
24173 	yyaccept = 0;
24174 	yych = *(YYMARKER = ++YYCURSOR);
24175 	if (yych <= 'D') {
24176 		if (yych == ')') goto yy174;
24177 		goto yy3;
24178 	} else {
24179 		if (yych <= 'E') goto yy1516;
24180 		if (yych != 'e') goto yy3;
24181 	}
24182 yy1516:
24183 	YYDEBUG(1516, *YYCURSOR);
24184 	yych = *++YYCURSOR;
24185 	if (yych == 'R') goto yy239;
24186 	if (yych == 'r') goto yy239;
24187 	goto yy55;
24188 yy1517:
24189 	YYDEBUG(1517, *YYCURSOR);
24190 	++YYCURSOR;
24191 	if ((yych = *YYCURSOR) <= '@') {
24192 		if (yych == ')') goto yy174;
24193 	} else {
24194 		if (yych <= 'Z') goto yy178;
24195 		if (yych <= '`') goto yy1518;
24196 		if (yych <= 'z') goto yy178;
24197 	}
24198 yy1518:
24199 	YYDEBUG(1518, *YYCURSOR);
24200 #line 1037 "parse_date.re"
24201 	{
24202 		DEBUG_OUTPUT("noon");
24203 		TIMELIB_INIT;
24204 		TIMELIB_UNHAVE_TIME();
24205 		TIMELIB_HAVE_TIME();
24206 		s->time->h = 12;
24207 
24208 		TIMELIB_DEINIT;
24209 		return TIMELIB_RELATIVE;
24210 	}
24211 #line 24209 "<stdout>"
24212 yy1519:
24213 	YYDEBUG(1519, *YYCURSOR);
24214 	yyaccept = 0;
24215 	yych = *(YYMARKER = ++YYCURSOR);
24216 	if (yych <= 'V') {
24217 		if (yych <= '.') {
24218 			if (yych <= ')') {
24219 				if (yych <= '(') goto yy3;
24220 				goto yy174;
24221 			} else {
24222 				if (yych == '-') goto yy182;
24223 				goto yy3;
24224 			}
24225 		} else {
24226 			if (yych <= 'N') {
24227 				if (yych <= '/') goto yy182;
24228 				if (yych <= '@') goto yy3;
24229 				goto yy176;
24230 			} else {
24231 				if (yych <= 'O') goto yy1511;
24232 				if (yych <= 'U') goto yy176;
24233 				goto yy1512;
24234 			}
24235 		}
24236 	} else {
24237 		if (yych <= 'n') {
24238 			if (yych <= '^') {
24239 				if (yych <= 'W') goto yy1509;
24240 				if (yych <= 'Z') goto yy176;
24241 				goto yy3;
24242 			} else {
24243 				if (yych <= '_') goto yy182;
24244 				if (yych <= '`') goto yy3;
24245 				goto yy181;
24246 			}
24247 		} else {
24248 			if (yych <= 'v') {
24249 				if (yych <= 'o') goto yy1526;
24250 				if (yych <= 'u') goto yy181;
24251 				goto yy1527;
24252 			} else {
24253 				if (yych <= 'w') goto yy1525;
24254 				if (yych <= 'z') goto yy181;
24255 				goto yy3;
24256 			}
24257 		}
24258 	}
24259 yy1520:
24260 	YYDEBUG(1520, *YYCURSOR);
24261 	yyaccept = 0;
24262 	yych = *(YYMARKER = ++YYCURSOR);
24263 	if (yych <= 'W') {
24264 		if (yych <= '-') {
24265 			if (yych == ')') goto yy174;
24266 			if (yych <= ',') goto yy3;
24267 			goto yy182;
24268 		} else {
24269 			if (yych == '/') goto yy182;
24270 			if (yych <= '@') goto yy3;
24271 			goto yy176;
24272 		}
24273 	} else {
24274 		if (yych <= '_') {
24275 			if (yych <= 'X') goto yy1508;
24276 			if (yych <= 'Z') goto yy176;
24277 			if (yych <= '^') goto yy3;
24278 			goto yy182;
24279 		} else {
24280 			if (yych <= 'w') {
24281 				if (yych <= '`') goto yy3;
24282 				goto yy181;
24283 			} else {
24284 				if (yych <= 'x') goto yy1524;
24285 				if (yych <= 'z') goto yy181;
24286 				goto yy3;
24287 			}
24288 		}
24289 	}
24290 yy1521:
24291 	YYDEBUG(1521, *YYCURSOR);
24292 	yyaccept = 0;
24293 	yych = *(YYMARKER = ++YYCURSOR);
24294 	if (yych <= 'M') {
24295 		if (yych <= '-') {
24296 			if (yych == ')') goto yy174;
24297 			if (yych <= ',') goto yy3;
24298 			goto yy182;
24299 		} else {
24300 			if (yych == '/') goto yy182;
24301 			if (yych <= '@') goto yy3;
24302 			goto yy176;
24303 		}
24304 	} else {
24305 		if (yych <= '_') {
24306 			if (yych <= 'N') goto yy1506;
24307 			if (yych <= 'Z') goto yy176;
24308 			if (yych <= '^') goto yy3;
24309 			goto yy182;
24310 		} else {
24311 			if (yych <= 'm') {
24312 				if (yych <= '`') goto yy3;
24313 				goto yy181;
24314 			} else {
24315 				if (yych <= 'n') goto yy1522;
24316 				if (yych <= 'z') goto yy181;
24317 				goto yy3;
24318 			}
24319 		}
24320 	}
24321 yy1522:
24322 	YYDEBUG(1522, *YYCURSOR);
24323 	yyaccept = 0;
24324 	yych = *(YYMARKER = ++YYCURSOR);
24325 	if (yych <= 'S') {
24326 		if (yych <= '-') {
24327 			if (yych == ')') goto yy174;
24328 			if (yych <= ',') goto yy3;
24329 			goto yy182;
24330 		} else {
24331 			if (yych == '/') goto yy182;
24332 			if (yych <= '@') goto yy3;
24333 			goto yy177;
24334 		}
24335 	} else {
24336 		if (yych <= '_') {
24337 			if (yych <= 'T') goto yy1507;
24338 			if (yych <= 'Z') goto yy177;
24339 			if (yych <= '^') goto yy3;
24340 			goto yy182;
24341 		} else {
24342 			if (yych <= 's') {
24343 				if (yych <= '`') goto yy3;
24344 				goto yy185;
24345 			} else {
24346 				if (yych <= 't') goto yy1523;
24347 				if (yych <= 'z') goto yy185;
24348 				goto yy3;
24349 			}
24350 		}
24351 	}
24352 yy1523:
24353 	YYDEBUG(1523, *YYCURSOR);
24354 	yyaccept = 0;
24355 	yych = *(YYMARKER = ++YYCURSOR);
24356 	if (yych <= 'G') {
24357 		if (yych <= '-') {
24358 			if (yych == ')') goto yy174;
24359 			if (yych <= ',') goto yy3;
24360 			goto yy182;
24361 		} else {
24362 			if (yych == '/') goto yy182;
24363 			if (yych <= '@') goto yy3;
24364 			goto yy178;
24365 		}
24366 	} else {
24367 		if (yych <= '_') {
24368 			if (yych <= 'H') goto yy1238;
24369 			if (yych <= 'Z') goto yy178;
24370 			if (yych <= '^') goto yy3;
24371 			goto yy182;
24372 		} else {
24373 			if (yych <= 'g') {
24374 				if (yych <= '`') goto yy3;
24375 				goto yy186;
24376 			} else {
24377 				if (yych <= 'h') goto yy1267;
24378 				if (yych <= 'z') goto yy186;
24379 				goto yy3;
24380 			}
24381 		}
24382 	}
24383 yy1524:
24384 	YYDEBUG(1524, *YYCURSOR);
24385 	yyaccept = 0;
24386 	yych = *(YYMARKER = ++YYCURSOR);
24387 	if (yych <= 'S') {
24388 		if (yych <= '-') {
24389 			if (yych == ')') goto yy174;
24390 			if (yych <= ',') goto yy3;
24391 			goto yy182;
24392 		} else {
24393 			if (yych == '/') goto yy182;
24394 			if (yych <= '@') goto yy3;
24395 			goto yy177;
24396 		}
24397 	} else {
24398 		if (yych <= '_') {
24399 			if (yych <= 'T') goto yy1438;
24400 			if (yych <= 'Z') goto yy177;
24401 			if (yych <= '^') goto yy3;
24402 			goto yy182;
24403 		} else {
24404 			if (yych <= 's') {
24405 				if (yych <= '`') goto yy3;
24406 				goto yy185;
24407 			} else {
24408 				if (yych <= 't') goto yy1470;
24409 				if (yych <= 'z') goto yy185;
24410 				goto yy3;
24411 			}
24412 		}
24413 	}
24414 yy1525:
24415 	YYDEBUG(1525, *YYCURSOR);
24416 	yyaccept = 31;
24417 	yych = *(YYMARKER = ++YYCURSOR);
24418 	if (yych <= '/') {
24419 		if (yych <= ',') {
24420 			if (yych == ')') goto yy174;
24421 			goto yy1510;
24422 		} else {
24423 			if (yych == '.') goto yy1510;
24424 			goto yy182;
24425 		}
24426 	} else {
24427 		if (yych <= '^') {
24428 			if (yych <= '@') goto yy1510;
24429 			if (yych <= 'Z') goto yy177;
24430 			goto yy1510;
24431 		} else {
24432 			if (yych <= '_') goto yy182;
24433 			if (yych <= '`') goto yy1510;
24434 			if (yych <= 'z') goto yy185;
24435 			goto yy1510;
24436 		}
24437 	}
24438 yy1526:
24439 	YYDEBUG(1526, *YYCURSOR);
24440 	yyaccept = 0;
24441 	yych = *(YYMARKER = ++YYCURSOR);
24442 	if (yych <= 'M') {
24443 		if (yych <= '-') {
24444 			if (yych == ')') goto yy174;
24445 			if (yych <= ',') goto yy3;
24446 			goto yy182;
24447 		} else {
24448 			if (yych == '/') goto yy182;
24449 			if (yych <= '@') goto yy3;
24450 			goto yy177;
24451 		}
24452 	} else {
24453 		if (yych <= '_') {
24454 			if (yych <= 'N') goto yy1517;
24455 			if (yych <= 'Z') goto yy177;
24456 			if (yych <= '^') goto yy3;
24457 			goto yy182;
24458 		} else {
24459 			if (yych <= 'm') {
24460 				if (yych <= '`') goto yy3;
24461 				goto yy185;
24462 			} else {
24463 				if (yych <= 'n') goto yy1532;
24464 				if (yych <= 'z') goto yy185;
24465 				goto yy3;
24466 			}
24467 		}
24468 	}
24469 yy1527:
24470 	YYDEBUG(1527, *YYCURSOR);
24471 	yyaccept = 5;
24472 	yych = *(YYMARKER = ++YYCURSOR);
24473 	if (yych <= '9') {
24474 		if (yych <= '(') {
24475 			if (yych <= '\t') {
24476 				if (yych <= 0x08) goto yy228;
24477 				goto yy230;
24478 			} else {
24479 				if (yych == ' ') goto yy230;
24480 				goto yy228;
24481 			}
24482 		} else {
24483 			if (yych <= '-') {
24484 				if (yych <= ')') goto yy174;
24485 				if (yych <= ',') goto yy228;
24486 				goto yy346;
24487 			} else {
24488 				if (yych == '/') goto yy182;
24489 				goto yy230;
24490 			}
24491 		}
24492 	} else {
24493 		if (yych <= '^') {
24494 			if (yych <= 'D') {
24495 				if (yych <= '@') goto yy228;
24496 				goto yy177;
24497 			} else {
24498 				if (yych <= 'E') goto yy1513;
24499 				if (yych <= 'Z') goto yy177;
24500 				goto yy228;
24501 			}
24502 		} else {
24503 			if (yych <= 'd') {
24504 				if (yych <= '_') goto yy182;
24505 				if (yych <= '`') goto yy228;
24506 				goto yy185;
24507 			} else {
24508 				if (yych <= 'e') goto yy1528;
24509 				if (yych <= 'z') goto yy185;
24510 				goto yy228;
24511 			}
24512 		}
24513 	}
24514 yy1528:
24515 	YYDEBUG(1528, *YYCURSOR);
24516 	yyaccept = 0;
24517 	yych = *(YYMARKER = ++YYCURSOR);
24518 	if (yych <= 'L') {
24519 		if (yych <= '-') {
24520 			if (yych == ')') goto yy174;
24521 			if (yych <= ',') goto yy3;
24522 			goto yy182;
24523 		} else {
24524 			if (yych == '/') goto yy182;
24525 			if (yych <= '@') goto yy3;
24526 			goto yy178;
24527 		}
24528 	} else {
24529 		if (yych <= '_') {
24530 			if (yych <= 'M') goto yy1514;
24531 			if (yych <= 'Z') goto yy178;
24532 			if (yych <= '^') goto yy3;
24533 			goto yy182;
24534 		} else {
24535 			if (yych <= 'l') {
24536 				if (yych <= '`') goto yy3;
24537 				goto yy186;
24538 			} else {
24539 				if (yych <= 'm') goto yy1529;
24540 				if (yych <= 'z') goto yy186;
24541 				goto yy3;
24542 			}
24543 		}
24544 	}
24545 yy1529:
24546 	YYDEBUG(1529, *YYCURSOR);
24547 	yyaccept = 0;
24548 	yych = *(YYMARKER = ++YYCURSOR);
24549 	if (yych <= 'A') {
24550 		if (yych <= '-') {
24551 			if (yych == ')') goto yy174;
24552 			if (yych <= ',') goto yy3;
24553 			goto yy182;
24554 		} else {
24555 			if (yych == '/') goto yy182;
24556 			if (yych <= '@') goto yy3;
24557 			goto yy179;
24558 		}
24559 	} else {
24560 		if (yych <= '_') {
24561 			if (yych <= 'B') goto yy1515;
24562 			if (yych <= 'Z') goto yy179;
24563 			if (yych <= '^') goto yy3;
24564 			goto yy182;
24565 		} else {
24566 			if (yych <= 'a') {
24567 				if (yych <= '`') goto yy3;
24568 				goto yy187;
24569 			} else {
24570 				if (yych <= 'b') goto yy1530;
24571 				if (yych <= 'z') goto yy187;
24572 				goto yy3;
24573 			}
24574 		}
24575 	}
24576 yy1530:
24577 	YYDEBUG(1530, *YYCURSOR);
24578 	yyaccept = 0;
24579 	yych = *(YYMARKER = ++YYCURSOR);
24580 	if (yych <= 'D') {
24581 		if (yych <= ',') {
24582 			if (yych == ')') goto yy174;
24583 			goto yy3;
24584 		} else {
24585 			if (yych == '.') goto yy3;
24586 			if (yych <= '/') goto yy182;
24587 			goto yy3;
24588 		}
24589 	} else {
24590 		if (yych <= '`') {
24591 			if (yych <= 'E') goto yy1516;
24592 			if (yych == '_') goto yy182;
24593 			goto yy3;
24594 		} else {
24595 			if (yych == 'e') goto yy1531;
24596 			if (yych <= 'z') goto yy188;
24597 			goto yy3;
24598 		}
24599 	}
24600 yy1531:
24601 	YYDEBUG(1531, *YYCURSOR);
24602 	yych = *++YYCURSOR;
24603 	if (yych == 'R') goto yy239;
24604 	if (yych == 'r') goto yy351;
24605 	goto yy189;
24606 yy1532:
24607 	YYDEBUG(1532, *YYCURSOR);
24608 	yyaccept = 32;
24609 	yych = *(YYMARKER = ++YYCURSOR);
24610 	if (yych <= '/') {
24611 		if (yych <= ',') {
24612 			if (yych == ')') goto yy174;
24613 			goto yy1518;
24614 		} else {
24615 			if (yych == '.') goto yy1518;
24616 			goto yy182;
24617 		}
24618 	} else {
24619 		if (yych <= '^') {
24620 			if (yych <= '@') goto yy1518;
24621 			if (yych <= 'Z') goto yy178;
24622 			goto yy1518;
24623 		} else {
24624 			if (yych <= '_') goto yy182;
24625 			if (yych <= '`') goto yy1518;
24626 			if (yych <= 'z') goto yy186;
24627 			goto yy1518;
24628 		}
24629 	}
24630 yy1533:
24631 	YYDEBUG(1533, *YYCURSOR);
24632 	yych = *++YYCURSOR;
24633 	if (yych <= 'S') {
24634 		if (yych <= ')') {
24635 			if (yych <= '(') goto yy3;
24636 			goto yy174;
24637 		} else {
24638 			if (yych <= '@') goto yy3;
24639 			if (yych <= 'R') goto yy176;
24640 		}
24641 	} else {
24642 		if (yych <= 'r') {
24643 			if (yych <= 'Z') goto yy176;
24644 			if (yych <= '`') goto yy3;
24645 			goto yy176;
24646 		} else {
24647 			if (yych <= 's') goto yy1534;
24648 			if (yych <= 'z') goto yy176;
24649 			goto yy3;
24650 		}
24651 	}
24652 yy1534:
24653 	YYDEBUG(1534, *YYCURSOR);
24654 	yych = *++YYCURSOR;
24655 	if (yych <= 'T') {
24656 		if (yych <= ')') {
24657 			if (yych <= '(') goto yy3;
24658 			goto yy174;
24659 		} else {
24660 			if (yych <= '@') goto yy3;
24661 			if (yych <= 'S') goto yy177;
24662 		}
24663 	} else {
24664 		if (yych <= 's') {
24665 			if (yych <= 'Z') goto yy177;
24666 			if (yych <= '`') goto yy3;
24667 			goto yy177;
24668 		} else {
24669 			if (yych <= 't') goto yy1535;
24670 			if (yych <= 'z') goto yy177;
24671 			goto yy3;
24672 		}
24673 	}
24674 yy1535:
24675 	YYDEBUG(1535, *YYCURSOR);
24676 	yych = *++YYCURSOR;
24677 	if (yych <= 'E') {
24678 		if (yych <= ')') {
24679 			if (yych <= '(') goto yy3;
24680 			goto yy174;
24681 		} else {
24682 			if (yych <= '@') goto yy3;
24683 			if (yych <= 'D') goto yy178;
24684 		}
24685 	} else {
24686 		if (yych <= 'd') {
24687 			if (yych <= 'Z') goto yy178;
24688 			if (yych <= '`') goto yy3;
24689 			goto yy178;
24690 		} else {
24691 			if (yych <= 'e') goto yy1536;
24692 			if (yych <= 'z') goto yy178;
24693 			goto yy3;
24694 		}
24695 	}
24696 yy1536:
24697 	YYDEBUG(1536, *YYCURSOR);
24698 	yych = *++YYCURSOR;
24699 	if (yych <= 'R') {
24700 		if (yych <= ')') {
24701 			if (yych <= '(') goto yy3;
24702 			goto yy174;
24703 		} else {
24704 			if (yych <= '@') goto yy3;
24705 			if (yych <= 'Q') goto yy179;
24706 		}
24707 	} else {
24708 		if (yych <= 'q') {
24709 			if (yych <= 'Z') goto yy179;
24710 			if (yych <= '`') goto yy3;
24711 			goto yy179;
24712 		} else {
24713 			if (yych <= 'r') goto yy1537;
24714 			if (yych <= 'z') goto yy179;
24715 			goto yy3;
24716 		}
24717 	}
24718 yy1537:
24719 	YYDEBUG(1537, *YYCURSOR);
24720 	yyaccept = 0;
24721 	yych = *(YYMARKER = ++YYCURSOR);
24722 	if (yych <= 'C') {
24723 		if (yych == ')') goto yy174;
24724 		goto yy3;
24725 	} else {
24726 		if (yych <= 'D') goto yy1538;
24727 		if (yych != 'd') goto yy3;
24728 	}
24729 yy1538:
24730 	YYDEBUG(1538, *YYCURSOR);
24731 	yych = *++YYCURSOR;
24732 	if (yych == 'A') goto yy1539;
24733 	if (yych != 'a') goto yy55;
24734 yy1539:
24735 	YYDEBUG(1539, *YYCURSOR);
24736 	yych = *++YYCURSOR;
24737 	if (yych == 'Y') goto yy1540;
24738 	if (yych != 'y') goto yy55;
24739 yy1540:
24740 	YYDEBUG(1540, *YYCURSOR);
24741 	++YYCURSOR;
24742 yy1541:
24743 	YYDEBUG(1541, *YYCURSOR);
24744 #line 1016 "parse_date.re"
24745 	{
24746 		DEBUG_OUTPUT("yesterday");
24747 		TIMELIB_INIT;
24748 		TIMELIB_HAVE_RELATIVE();
24749 		TIMELIB_UNHAVE_TIME();
24750 
24751 		s->time->relative.d = -1;
24752 		TIMELIB_DEINIT;
24753 		return TIMELIB_RELATIVE;
24754 	}
24755 #line 24753 "<stdout>"
24756 yy1542:
24757 	YYDEBUG(1542, *YYCURSOR);
24758 	yyaccept = 0;
24759 	yych = *(YYMARKER = ++YYCURSOR);
24760 	if (yych <= 'R') {
24761 		if (yych <= '-') {
24762 			if (yych == ')') goto yy174;
24763 			if (yych <= ',') goto yy3;
24764 			goto yy182;
24765 		} else {
24766 			if (yych == '/') goto yy182;
24767 			if (yych <= '@') goto yy3;
24768 			goto yy176;
24769 		}
24770 	} else {
24771 		if (yych <= '_') {
24772 			if (yych <= 'S') goto yy1534;
24773 			if (yych <= 'Z') goto yy176;
24774 			if (yych <= '^') goto yy3;
24775 			goto yy182;
24776 		} else {
24777 			if (yych <= 'r') {
24778 				if (yych <= '`') goto yy3;
24779 				goto yy181;
24780 			} else {
24781 				if (yych <= 's') goto yy1543;
24782 				if (yych <= 'z') goto yy181;
24783 				goto yy3;
24784 			}
24785 		}
24786 	}
24787 yy1543:
24788 	YYDEBUG(1543, *YYCURSOR);
24789 	yyaccept = 0;
24790 	yych = *(YYMARKER = ++YYCURSOR);
24791 	if (yych <= 'S') {
24792 		if (yych <= '-') {
24793 			if (yych == ')') goto yy174;
24794 			if (yych <= ',') goto yy3;
24795 			goto yy182;
24796 		} else {
24797 			if (yych == '/') goto yy182;
24798 			if (yych <= '@') goto yy3;
24799 			goto yy177;
24800 		}
24801 	} else {
24802 		if (yych <= '_') {
24803 			if (yych <= 'T') goto yy1535;
24804 			if (yych <= 'Z') goto yy177;
24805 			if (yych <= '^') goto yy3;
24806 			goto yy182;
24807 		} else {
24808 			if (yych <= 's') {
24809 				if (yych <= '`') goto yy3;
24810 				goto yy185;
24811 			} else {
24812 				if (yych <= 't') goto yy1544;
24813 				if (yych <= 'z') goto yy185;
24814 				goto yy3;
24815 			}
24816 		}
24817 	}
24818 yy1544:
24819 	YYDEBUG(1544, *YYCURSOR);
24820 	yyaccept = 0;
24821 	yych = *(YYMARKER = ++YYCURSOR);
24822 	if (yych <= 'D') {
24823 		if (yych <= '-') {
24824 			if (yych == ')') goto yy174;
24825 			if (yych <= ',') goto yy3;
24826 			goto yy182;
24827 		} else {
24828 			if (yych == '/') goto yy182;
24829 			if (yych <= '@') goto yy3;
24830 			goto yy178;
24831 		}
24832 	} else {
24833 		if (yych <= '_') {
24834 			if (yych <= 'E') goto yy1536;
24835 			if (yych <= 'Z') goto yy178;
24836 			if (yych <= '^') goto yy3;
24837 			goto yy182;
24838 		} else {
24839 			if (yych <= 'd') {
24840 				if (yych <= '`') goto yy3;
24841 				goto yy186;
24842 			} else {
24843 				if (yych <= 'e') goto yy1545;
24844 				if (yych <= 'z') goto yy186;
24845 				goto yy3;
24846 			}
24847 		}
24848 	}
24849 yy1545:
24850 	YYDEBUG(1545, *YYCURSOR);
24851 	yyaccept = 0;
24852 	yych = *(YYMARKER = ++YYCURSOR);
24853 	if (yych <= 'Q') {
24854 		if (yych <= '-') {
24855 			if (yych == ')') goto yy174;
24856 			if (yych <= ',') goto yy3;
24857 			goto yy182;
24858 		} else {
24859 			if (yych == '/') goto yy182;
24860 			if (yych <= '@') goto yy3;
24861 			goto yy179;
24862 		}
24863 	} else {
24864 		if (yych <= '_') {
24865 			if (yych <= 'R') goto yy1537;
24866 			if (yych <= 'Z') goto yy179;
24867 			if (yych <= '^') goto yy3;
24868 			goto yy182;
24869 		} else {
24870 			if (yych <= 'q') {
24871 				if (yych <= '`') goto yy3;
24872 				goto yy187;
24873 			} else {
24874 				if (yych <= 'r') goto yy1546;
24875 				if (yych <= 'z') goto yy187;
24876 				goto yy3;
24877 			}
24878 		}
24879 	}
24880 yy1546:
24881 	YYDEBUG(1546, *YYCURSOR);
24882 	yyaccept = 0;
24883 	yych = *(YYMARKER = ++YYCURSOR);
24884 	if (yych <= 'C') {
24885 		if (yych <= ',') {
24886 			if (yych == ')') goto yy174;
24887 			goto yy3;
24888 		} else {
24889 			if (yych == '.') goto yy3;
24890 			if (yych <= '/') goto yy182;
24891 			goto yy3;
24892 		}
24893 	} else {
24894 		if (yych <= '`') {
24895 			if (yych <= 'D') goto yy1538;
24896 			if (yych == '_') goto yy182;
24897 			goto yy3;
24898 		} else {
24899 			if (yych == 'd') goto yy1547;
24900 			if (yych <= 'z') goto yy188;
24901 			goto yy3;
24902 		}
24903 	}
24904 yy1547:
24905 	YYDEBUG(1547, *YYCURSOR);
24906 	yych = *++YYCURSOR;
24907 	if (yych == 'A') goto yy1539;
24908 	if (yych != 'a') goto yy189;
24909 	YYDEBUG(1548, *YYCURSOR);
24910 	yych = *++YYCURSOR;
24911 	if (yych == 'Y') goto yy1540;
24912 	if (yych != 'y') goto yy189;
24913 	YYDEBUG(1549, *YYCURSOR);
24914 	yyaccept = 33;
24915 	yych = *(YYMARKER = ++YYCURSOR);
24916 	if (yybm[0+yych] & 8) {
24917 		goto yy188;
24918 	}
24919 	if (yych <= '.') {
24920 		if (yych == '-') goto yy182;
24921 		goto yy1541;
24922 	} else {
24923 		if (yych <= '/') goto yy182;
24924 		if (yych == '_') goto yy182;
24925 		goto yy1541;
24926 	}
24927 }
24928 #line 1818 "parse_date.re"
24929 
24930 }
24931 
24932 #define YYMAXFILL 33
24933 
timelib_strtotime(char * s,size_t len,timelib_error_container ** errors,const timelib_tzdb * tzdb,timelib_tz_get_wrapper tz_get_wrapper)24934 timelib_time* timelib_strtotime(char *s, size_t len, timelib_error_container **errors, const timelib_tzdb *tzdb, timelib_tz_get_wrapper tz_get_wrapper)
24935 {
24936 	Scanner in;
24937 	int t;
24938 	char *e = s + len - 1;
24939 
24940 	memset(&in, 0, sizeof(in));
24941 	in.errors = timelib_malloc(sizeof(timelib_error_container));
24942 	in.errors->warning_count = 0;
24943 	in.errors->warning_messages = NULL;
24944 	in.errors->error_count = 0;
24945 	in.errors->error_messages = NULL;
24946 
24947 	if (len > 0) {
24948 		while (isspace(*s) && s < e) {
24949 			s++;
24950 		}
24951 		while (isspace(*e) && e > s) {
24952 			e--;
24953 		}
24954 	}
24955 	if (e - s < 0) {
24956 		in.time = timelib_time_ctor();
24957 		add_error(&in, TIMELIB_ERR_EMPTY_STRING, "Empty string");
24958 		if (errors) {
24959 			*errors = in.errors;
24960 		} else {
24961 			timelib_error_container_dtor(in.errors);
24962 		}
24963 		in.time->y = in.time->d = in.time->m = in.time->h = in.time->i = in.time->s = in.time->us = in.time->dst = in.time->z = TIMELIB_UNSET;
24964 		in.time->is_localtime = in.time->zone_type = 0;
24965 		return in.time;
24966 	}
24967 	e++;
24968 
24969 	in.str = timelib_malloc((e - s) + YYMAXFILL);
24970 	memset(in.str, 0, (e - s) + YYMAXFILL);
24971 	memcpy(in.str, s, (e - s));
24972 	in.lim = in.str + (e - s) + YYMAXFILL;
24973 	in.cur = in.str;
24974 	in.time = timelib_time_ctor();
24975 	in.time->y = TIMELIB_UNSET;
24976 	in.time->d = TIMELIB_UNSET;
24977 	in.time->m = TIMELIB_UNSET;
24978 	in.time->h = TIMELIB_UNSET;
24979 	in.time->i = TIMELIB_UNSET;
24980 	in.time->s = TIMELIB_UNSET;
24981 	in.time->us = TIMELIB_UNSET;
24982 	in.time->z = TIMELIB_UNSET;
24983 	in.time->dst = TIMELIB_UNSET;
24984 	in.tzdb = tzdb;
24985 	in.time->is_localtime = 0;
24986 	in.time->zone_type = 0;
24987 	in.time->relative.days = TIMELIB_UNSET;
24988 
24989 	do {
24990 		t = scan(&in, tz_get_wrapper);
24991 #ifdef DEBUG_PARSER
24992 		printf("%d\n", t);
24993 #endif
24994 	} while(t != EOI);
24995 
24996 	/* do funky checking whether the parsed time was valid time */
24997 	if (in.time->have_time && !timelib_valid_time( in.time->h, in.time->i, in.time->s)) {
24998 		add_warning(&in, TIMELIB_WARN_INVALID_TIME, "The parsed time was invalid");
24999 	}
25000 	/* do funky checking whether the parsed date was valid date */
25001 	if (in.time->have_date && !timelib_valid_date( in.time->y, in.time->m, in.time->d)) {
25002 		add_warning(&in, TIMELIB_WARN_INVALID_DATE, "The parsed date was invalid");
25003 	}
25004 
25005 	timelib_free(in.str);
25006 	if (errors) {
25007 		*errors = in.errors;
25008 	} else {
25009 		timelib_error_container_dtor(in.errors);
25010 	}
25011 	return in.time;
25012 }
25013 
25014 #define TIMELIB_CHECK_NUMBER                                           \
25015 		if (strchr("0123456789", *ptr) == NULL)                        \
25016 		{                                                              \
25017 			add_pbf_error(s, TIMELIB_ERR_UNEXPECTED_DATA, "Unexpected data found.", string, begin); \
25018 		}
25019 #define TIMELIB_CHECK_SIGNED_NUMBER                                    \
25020 		if (strchr("-0123456789", *ptr) == NULL)                       \
25021 		{                                                              \
25022 			add_pbf_error(s, TIMELIB_ERR_UNEXPECTED_DATA, "Unexpected data found.", string, begin); \
25023 		}
25024 
timelib_time_reset_fields(timelib_time * time)25025 static void timelib_time_reset_fields(timelib_time *time)
25026 {
25027 	assert(time != NULL);
25028 
25029 	time->y = 1970;
25030 	time->m = 1;
25031 	time->d = 1;
25032 	time->h = time->i = time->s = 0;
25033 	time->us = 0;
25034 	time->tz_info = NULL;
25035 }
25036 
timelib_time_reset_unset_fields(timelib_time * time)25037 static void timelib_time_reset_unset_fields(timelib_time *time)
25038 {
25039 	assert(time != NULL);
25040 
25041 	if (time->y == TIMELIB_UNSET ) time->y = 1970;
25042 	if (time->m == TIMELIB_UNSET ) time->m = 1;
25043 	if (time->d == TIMELIB_UNSET ) time->d = 1;
25044 	if (time->h == TIMELIB_UNSET ) time->h = 0;
25045 	if (time->i == TIMELIB_UNSET ) time->i = 0;
25046 	if (time->s == TIMELIB_UNSET ) time->s = 0;
25047 	if (time->us == TIMELIB_UNSET ) time->us = 0;
25048 }
25049 
25050 static const timelib_format_specifier default_format_map[] = {
25051 	{'+', TIMELIB_FORMAT_ALLOW_EXTRA_CHARACTERS},
25052 	{'#', TIMELIB_FORMAT_ANY_SEPARATOR},
25053 	{'j', TIMELIB_FORMAT_DAY_TWO_DIGIT},
25054 	{'d', TIMELIB_FORMAT_DAY_TWO_DIGIT_PADDED},
25055 	{'z', TIMELIB_FORMAT_DAY_OF_YEAR},
25056 	{'S', TIMELIB_FORMAT_DAY_SUFFIX},
25057 	{'U', TIMELIB_FORMAT_EPOCH_SECONDS},
25058 	{'\\', TIMELIB_FORMAT_ESCAPE},
25059 	{'h', TIMELIB_FORMAT_HOUR_TWO_DIGIT_12_MAX},
25060 	{'g', TIMELIB_FORMAT_HOUR_TWO_DIGIT_12_MAX_PADDED},
25061 	{'H', TIMELIB_FORMAT_HOUR_TWO_DIGIT_24_MAX},
25062 	{'G', TIMELIB_FORMAT_HOUR_TWO_DIGIT_24_MAX_PADDED},
25063 	{'a', TIMELIB_FORMAT_MERIDIAN},
25064 	{'A', TIMELIB_FORMAT_MERIDIAN},
25065 	{'u', TIMELIB_FORMAT_MICROSECOND_SIX_DIGIT},
25066 	{'v', TIMELIB_FORMAT_MILLISECOND_THREE_DIGIT},
25067 	{'i', TIMELIB_FORMAT_MINUTE_TWO_DIGIT},
25068 	{'n', TIMELIB_FORMAT_MONTH_TWO_DIGIT},
25069 	{'m', TIMELIB_FORMAT_MONTH_TWO_DIGIT_PADDED},
25070 	{'?', TIMELIB_FORMAT_RANDOM_CHAR},
25071 	{'!', TIMELIB_FORMAT_RESET_ALL},
25072 	{'|', TIMELIB_FORMAT_RESET_ALL_WHEN_NOT_SET},
25073 	{'s', TIMELIB_FORMAT_SECOND_TWO_DIGIT},
25074 	{';', TIMELIB_FORMAT_SEPARATOR},
25075 	{':', TIMELIB_FORMAT_SEPARATOR},
25076 	{'/', TIMELIB_FORMAT_SEPARATOR},
25077 	{'.', TIMELIB_FORMAT_SEPARATOR},
25078 	{',', TIMELIB_FORMAT_SEPARATOR},
25079 	{'-', TIMELIB_FORMAT_SEPARATOR},
25080 	{'(', TIMELIB_FORMAT_SEPARATOR},
25081 	{')', TIMELIB_FORMAT_SEPARATOR},
25082 	{'*', TIMELIB_FORMAT_SKIP_TO_SEPARATOR},
25083 	{'D', TIMELIB_FORMAT_TEXTUAL_DAY_3_LETTER},
25084 	{'l', TIMELIB_FORMAT_TEXTUAL_DAY_FULL},
25085 	{'M', TIMELIB_FORMAT_TEXTUAL_MONTH_3_LETTER},
25086 	{'F', TIMELIB_FORMAT_TEXTUAL_MONTH_FULL},
25087 	{'e', TIMELIB_FORMAT_TIMEZONE_OFFSET},
25088 	{'P', TIMELIB_FORMAT_TIMEZONE_OFFSET},
25089 	{'T', TIMELIB_FORMAT_TIMEZONE_OFFSET},
25090 	{'O', TIMELIB_FORMAT_TIMEZONE_OFFSET},
25091 	{' ', TIMELIB_FORMAT_WHITESPACE},
25092 	{'y', TIMELIB_FORMAT_YEAR_TWO_DIGIT},
25093 	{'Y', TIMELIB_FORMAT_YEAR_FOUR_DIGIT},
25094 	{'\0', TIMELIB_FORMAT_END}
25095 };
25096 
25097 static const timelib_format_config default_format_config = {
25098 	default_format_map,
25099 	// No prefix required by default.
25100 	'\0'
25101 };
25102 
timelib_lookup_format(char input,const timelib_format_specifier * format_map)25103 static timelib_format_specifier_code timelib_lookup_format(char input, const timelib_format_specifier* format_map)
25104 {
25105 	while (format_map && format_map->specifier != '\0') {
25106 		if (format_map->specifier == input) {
25107 			return format_map->code;
25108 		}
25109 		format_map++;
25110 	}
25111 	return TIMELIB_FORMAT_LITERAL;
25112 }
25113 
timelib_parse_from_format(char * format,char * string,size_t len,timelib_error_container ** errors,const timelib_tzdb * tzdb,timelib_tz_get_wrapper tz_get_wrapper)25114 timelib_time *timelib_parse_from_format(char *format, char *string, size_t len, timelib_error_container **errors, const timelib_tzdb *tzdb, timelib_tz_get_wrapper tz_get_wrapper)
25115 {
25116 	return timelib_parse_from_format_with_map(format, string, len, errors, tzdb, tz_get_wrapper, &default_format_config);
25117 }
25118 
timelib_parse_from_format_with_map(char * format,char * string,size_t len,timelib_error_container ** errors,const timelib_tzdb * tzdb,timelib_tz_get_wrapper tz_get_wrapper,const timelib_format_config * format_config)25119 timelib_time *timelib_parse_from_format_with_map(char *format, char *string, size_t len, timelib_error_container **errors, const timelib_tzdb *tzdb, timelib_tz_get_wrapper tz_get_wrapper, const timelib_format_config* format_config)
25120 {
25121 	char        *fptr = format;
25122 	char        *ptr = string;
25123 	char        *begin;
25124 	timelib_sll  tmp;
25125 	Scanner      in;
25126 	Scanner     *s = &in;
25127 	bool         allow_extra = false;
25128 	bool         prefix_found = false;
25129 	int          iso_year = TIMELIB_UNSET;
25130 	int          iso_week_of_year = TIMELIB_UNSET;
25131 	int          iso_day_of_week = TIMELIB_UNSET;
25132 	char         prefix_char = format_config->prefix_char;
25133 	const timelib_format_specifier *format_map = format_config->format_map;
25134 
25135 	memset(&in, 0, sizeof(in));
25136 	in.errors = timelib_malloc(sizeof(timelib_error_container));
25137 	in.errors->warning_count = 0;
25138 	in.errors->warning_messages = NULL;
25139 	in.errors->error_count = 0;
25140 	in.errors->error_messages = NULL;
25141 
25142 	in.time = timelib_time_ctor();
25143 	in.time->y = TIMELIB_UNSET;
25144 	in.time->d = TIMELIB_UNSET;
25145 	in.time->m = TIMELIB_UNSET;
25146 	in.time->h = TIMELIB_UNSET;
25147 	in.time->i = TIMELIB_UNSET;
25148 	in.time->s = TIMELIB_UNSET;
25149 	in.time->us = TIMELIB_UNSET;
25150 	in.time->z = TIMELIB_UNSET;
25151 	in.time->dst = TIMELIB_UNSET;
25152 	in.tzdb = tzdb;
25153 	in.time->is_localtime = 0;
25154 	in.time->zone_type = 0;
25155 
25156 	/* Loop over the format string */
25157 	while (*fptr && *ptr) {
25158 		begin = ptr;
25159 
25160 		if (prefix_char) {
25161 			/* There are 2 cases where the input string and format string
25162 			 * should match the next literal:
25163 			 *
25164 			 * 1. No prefix has been specified yet in the format, so expect 1:1
25165 			 *    match.
25166 			 * 2. Sequential prefix characters indicating that the second
25167 			 *    prefix is escaped. (e.g. "%%" is expecting literal "%")
25168 			 */
25169 			if ((!prefix_found && *fptr != prefix_char) ||
25170 				(prefix_found && *fptr == prefix_char)) {
25171 				if (*fptr != *ptr) {
25172 					add_pbf_error(s, TIMELIB_ERR_FORMAT_LITERAL_MISMATCH, "Format literal not found", string, begin);
25173 				}
25174 				ptr++;
25175 				fptr++;
25176 				prefix_found = false;
25177 				continue;
25178 			}
25179 
25180 			if (*fptr == prefix_char) {
25181 				fptr++;
25182 				prefix_found = true;
25183 				continue;
25184 			}
25185 
25186 			/* Fall through case is that the prefix has been found and the next
25187 			 * character is the format specifier. */
25188 			prefix_found = false;
25189 		}
25190 
25191 		switch (timelib_lookup_format(*fptr, format_map)) {
25192 			case TIMELIB_FORMAT_TEXTUAL_DAY_3_LETTER: /* three letter day */
25193 			case TIMELIB_FORMAT_TEXTUAL_DAY_FULL: /* full day */
25194 				{
25195 					const timelib_relunit* tmprel = 0;
25196 
25197 					tmprel = timelib_lookup_relunit((char **) &ptr);
25198 					if (!tmprel) {
25199 						add_pbf_error(s, TIMELIB_ERR_NO_TEXTUAL_DAY, "A textual day could not be found", string, begin);
25200 						break;
25201 					} else {
25202 						in.time->have_relative = 1;
25203 						in.time->relative.have_weekday_relative = 1;
25204 						in.time->relative.weekday = tmprel->multiplier;
25205 						in.time->relative.weekday_behavior = 1;
25206 					}
25207 				}
25208 				break;
25209 			case TIMELIB_FORMAT_DAY_TWO_DIGIT: /* two digit day, without leading zero */
25210 			case TIMELIB_FORMAT_DAY_TWO_DIGIT_PADDED: /* two digit day, with leading zero */
25211 				TIMELIB_CHECK_NUMBER;
25212 				if ((s->time->d = timelib_get_nr((char **) &ptr, 2)) == TIMELIB_UNSET) {
25213 					add_pbf_error(s, TIMELIB_ERR_NO_TWO_DIGIT_DAY, "A two digit day could not be found", string, begin);
25214 				}
25215 				break;
25216 			case TIMELIB_FORMAT_DAY_SUFFIX: /* day suffix, ignored, nor checked */
25217 				timelib_skip_day_suffix((char **) &ptr);
25218 				break;
25219 			case TIMELIB_FORMAT_DAY_OF_YEAR: /* day of year - resets month (0 based) - also initializes everything else to !TIMELIB_UNSET */
25220 				TIMELIB_CHECK_NUMBER;
25221 				if ((tmp = timelib_get_nr((char **) &ptr, 3)) == TIMELIB_UNSET) {
25222 					add_pbf_error(s, TIMELIB_ERR_NO_THREE_DIGIT_DAY_OF_YEAR, "A three digit day-of-year could not be found", string, begin);
25223 				} else {
25224 					s->time->m = 1;
25225 					s->time->d = tmp + 1;
25226 					timelib_do_normalize(s->time);
25227 				}
25228 				break;
25229 
25230 			case TIMELIB_FORMAT_MONTH_TWO_DIGIT: /* two digit month, without leading zero */
25231 			case TIMELIB_FORMAT_MONTH_TWO_DIGIT_PADDED: /* two digit month, with leading zero */
25232 				TIMELIB_CHECK_NUMBER;
25233 				if ((s->time->m = timelib_get_nr((char **) &ptr, 2)) == TIMELIB_UNSET) {
25234 					add_pbf_error(s, TIMELIB_ERR_NO_TWO_DIGIT_MONTH, "A two digit month could not be found", string, begin);
25235 				}
25236 				break;
25237 			case TIMELIB_FORMAT_TEXTUAL_MONTH_3_LETTER: /* three letter month */
25238 			case TIMELIB_FORMAT_TEXTUAL_MONTH_FULL: /* full month */
25239 				tmp = timelib_lookup_month((char **) &ptr);
25240 				if (!tmp) {
25241 					add_pbf_error(s, TIMELIB_ERR_NO_TEXTUAL_MONTH, "A textual month could not be found", string, begin);
25242 				} else {
25243 					s->time->m = tmp;
25244 				}
25245 				break;
25246 			case TIMELIB_FORMAT_YEAR_TWO_DIGIT: /* two digit year */
25247 				{
25248 					int length = 0;
25249 					TIMELIB_CHECK_NUMBER;
25250 					if ((s->time->y = timelib_get_nr_ex((char **) &ptr, 2, &length)) == TIMELIB_UNSET) {
25251 						add_pbf_error(s, TIMELIB_ERR_NO_TWO_DIGIT_YEAR, "A two digit year could not be found", string, begin);
25252 					}
25253 					TIMELIB_PROCESS_YEAR(s->time->y, length);
25254 				}
25255 				break;
25256 			case TIMELIB_FORMAT_YEAR_FOUR_DIGIT: /* four digit year */
25257 				TIMELIB_CHECK_NUMBER;
25258 				if ((s->time->y = timelib_get_nr((char **) &ptr, 4)) == TIMELIB_UNSET) {
25259 					add_pbf_error(s, TIMELIB_ERR_NO_FOUR_DIGIT_YEAR, "A four digit year could not be found", string, begin);
25260 				}
25261 				break;
25262 			case TIMELIB_FORMAT_HOUR_TWO_DIGIT_12_MAX: /* two digit hour, without leading zero */
25263 			case TIMELIB_FORMAT_HOUR_TWO_DIGIT_12_MAX_PADDED: /* two digit hour, with leading zero */
25264 				TIMELIB_CHECK_NUMBER;
25265 				if ((s->time->h = timelib_get_nr((char **) &ptr, 2)) == TIMELIB_UNSET) {
25266 					add_pbf_error(s, TIMELIB_ERR_NO_TWO_DIGIT_HOUR, "A two digit hour could not be found", string, begin);
25267 				}
25268 				if (s->time->h > 12) {
25269 					add_pbf_error(s, TIMELIB_ERR_HOUR_LARGER_THAN_12, "Hour can not be higher than 12", string, begin);
25270 				}
25271 				break;
25272 			case TIMELIB_FORMAT_HOUR_TWO_DIGIT_24_MAX_PADDED: /* two digit hour, with leading zero */
25273 			case TIMELIB_FORMAT_HOUR_TWO_DIGIT_24_MAX: /* two digit hour, without leading zero */
25274 				TIMELIB_CHECK_NUMBER;
25275 				if ((s->time->h = timelib_get_nr((char **) &ptr, 2)) == TIMELIB_UNSET) {
25276 					add_pbf_error(s, TIMELIB_ERR_NO_TWO_DIGIT_HOUR, "A two digit hour could not be found", string, begin);
25277 				}
25278 				break;
25279 			case TIMELIB_FORMAT_MERIDIAN: /* am/pm/a.m./p.m. AM/PM/A.M./P.M. */
25280 				if (s->time->h == TIMELIB_UNSET) {
25281 					add_pbf_error(s, TIMELIB_ERR_MERIDIAN_BEFORE_HOUR, "Meridian can only come after an hour has been found", string, begin);
25282 				} else if ((tmp = timelib_meridian_with_check((char **) &ptr, s->time->h)) == TIMELIB_UNSET) {
25283 					add_pbf_error(s, TIMELIB_ERR_NO_MERIDIAN, "A meridian could not be found", string, begin);
25284 				} else {
25285 					s->time->h += tmp;
25286 				}
25287 				break;
25288 			case TIMELIB_FORMAT_MINUTE_TWO_DIGIT: /* two digit minute, with leading zero */
25289 				{
25290 					int length;
25291 					timelib_sll min;
25292 
25293 					TIMELIB_CHECK_NUMBER;
25294 					min = timelib_get_nr_ex((char **) &ptr, 2, &length);
25295 					if (min == TIMELIB_UNSET || length != 2) {
25296 						add_pbf_error(s, TIMELIB_ERR_NO_TWO_DIGIT_MINUTE, "A two digit minute could not be found", string, begin);
25297 					} else {
25298 						s->time->i = min;
25299 					}
25300 				}
25301 				break;
25302 			case TIMELIB_FORMAT_SECOND_TWO_DIGIT: /* two digit second, with leading zero */
25303 				{
25304 					int length;
25305 					timelib_sll sec;
25306 
25307 					TIMELIB_CHECK_NUMBER;
25308 					sec = timelib_get_nr_ex((char **) &ptr, 2, &length);
25309 					if (sec == TIMELIB_UNSET || length != 2) {
25310 						add_pbf_error(s, TIMELIB_ERR_NO_TWO_DIGIT_SECOND, "A two digit second could not be found", string, begin);
25311 					} else {
25312 						s->time->s = sec;
25313 					}
25314 				}
25315 				break;
25316 			case TIMELIB_FORMAT_MICROSECOND_SIX_DIGIT: /* up to six digit microsecond */
25317 				{
25318 					double f;
25319 					char *tptr;
25320 
25321 					TIMELIB_CHECK_NUMBER;
25322 					tptr = ptr;
25323 					if ((f = timelib_get_nr((char **) &ptr, 6)) == TIMELIB_UNSET || (ptr - tptr < 1)) {
25324 						add_pbf_error(s, TIMELIB_ERR_NO_SIX_DIGIT_MICROSECOND, "A six digit microsecond could not be found", string, begin);
25325 					} else {
25326 						s->time->us = (f * pow(10, 6 - (ptr - tptr)));
25327 					}
25328 				}
25329 				break;
25330 			case TIMELIB_FORMAT_MILLISECOND_THREE_DIGIT: /* up to three digit millisecond */
25331 				{
25332 					double f;
25333 					char *tptr;
25334 
25335 					TIMELIB_CHECK_NUMBER;
25336 					tptr = ptr;
25337 					if ((f = timelib_get_nr((char **) &ptr, 3)) == TIMELIB_UNSET || (ptr - tptr < 1)) {
25338 						add_pbf_error(s, TIMELIB_ERR_NO_THREE_DIGIT_MILLISECOND, "A three digit millisecond could not be found", string, begin);
25339 					} else {
25340 						s->time->us = (f * pow(10, 3 - (ptr - tptr)) * 1000);
25341 					}
25342 				}
25343 				break;
25344 			case TIMELIB_FORMAT_WHITESPACE: /* any sort of whitespace (' ' and \t) */
25345 				timelib_eat_spaces((char **) &ptr);
25346 				break;
25347 			case TIMELIB_FORMAT_EPOCH_SECONDS: /* epoch seconds */
25348 				TIMELIB_CHECK_SIGNED_NUMBER;
25349 				TIMELIB_HAVE_RELATIVE();
25350 				tmp = timelib_get_unsigned_nr((char **) &ptr, 24);
25351 				s->time->y = 1970;
25352 				s->time->m = 1;
25353 				s->time->d = 1;
25354 				s->time->h = s->time->i = s->time->s = 0;
25355 				s->time->relative.s += tmp;
25356 				s->time->is_localtime = 1;
25357 				s->time->zone_type = TIMELIB_ZONETYPE_OFFSET;
25358 				s->time->z = 0;
25359 				s->time->dst = 0;
25360 				break;
25361 			case TIMELIB_FORMAT_ANY_SEPARATOR: /* separation symbol */
25362 				if (timelib_lookup_format(*ptr, format_map) == TIMELIB_FORMAT_SEPARATOR) {
25363 					++ptr;
25364 				} else {
25365 					add_pbf_error(s, TIMELIB_ERR_NO_SEP_SYMBOL, "The separation symbol ([;:/.,-]) could not be found", string, begin);
25366 				}
25367 				break;
25368 
25369 			case TIMELIB_FORMAT_SEPARATOR:
25370 				if (*ptr == *fptr) {
25371 					++ptr;
25372 				} else {
25373 					add_pbf_error(s, TIMELIB_ERR_NO_SEP_SYMBOL, "The separation symbol could not be found", string, begin);
25374 				}
25375 				break;
25376 
25377 			case TIMELIB_FORMAT_RESET_ALL: /* reset all fields to default */
25378 				timelib_time_reset_fields(s->time);
25379 				break; /* break intentionally not missing */
25380 
25381 			case TIMELIB_FORMAT_RESET_ALL_WHEN_NOT_SET: /* reset all fields to default when not set */
25382 				timelib_time_reset_unset_fields(s->time);
25383 				break; /* break intentionally not missing */
25384 
25385 			case TIMELIB_FORMAT_RANDOM_CHAR: /* random char */
25386 				++ptr;
25387 				break;
25388 
25389 			case TIMELIB_FORMAT_ESCAPE: /* escaped char */
25390 				if(!fptr[1]) {
25391 					add_pbf_error(s, TIMELIB_ERR_EXPECTED_ESCAPE_CHAR, "Escaped character expected", string, begin);
25392 					break;
25393 				}
25394 				fptr++;
25395 				if (*ptr == *fptr) {
25396 					++ptr;
25397 				} else {
25398 					add_pbf_error(s, TIMELIB_ERR_NO_ESCAPED_CHAR, "The escaped character could not be found", string, begin);
25399 				}
25400 				break;
25401 
25402 			case TIMELIB_FORMAT_SKIP_TO_SEPARATOR: /* random chars until a separator or number ([ \t.,:;/-0123456789]) */
25403 				timelib_eat_until_separator((char **) &ptr);
25404 				break;
25405 
25406 			case TIMELIB_FORMAT_ALLOW_EXTRA_CHARACTERS: /* allow extra chars in the format */
25407 				allow_extra = true;
25408 				break;
25409 			case TIMELIB_FORMAT_YEAR_ISO:
25410 				if ((iso_year = timelib_get_nr((char **) &ptr, 4)) == TIMELIB_UNSET) {
25411 					add_pbf_error(s, TIMELIB_ERR_NO_FOUR_DIGIT_YEAR_ISO, "A four digit ISO year could not be found", string, begin);
25412 				}
25413 				break;
25414 			case TIMELIB_FORMAT_WEEK_OF_YEAR_ISO:
25415 				if ((iso_week_of_year = timelib_get_nr((char **) &ptr, 2)) == TIMELIB_UNSET) {
25416 					add_pbf_error(s, TIMELIB_ERR_NO_TWO_DIGIT_WEEK, "A two digit ISO week could not be found", string, begin);
25417 				}
25418 				/* Range is 1 - 53  for ISO week of year */
25419 				if (iso_week_of_year < 1 || iso_week_of_year > 53) {
25420 					add_pbf_error(s, TIMELIB_ERR_INVALID_WEEK, "ISO Week must be between 1 and 53", string, begin);
25421 				}
25422 				break;
25423 			case TIMELIB_FORMAT_DAY_OF_WEEK_ISO:
25424 				if ((iso_day_of_week = timelib_get_nr((char **) &ptr, 1)) == TIMELIB_UNSET) {
25425 					add_pbf_error(s, TIMELIB_ERR_NO_DAY_OF_WEEK, "A single digit day of week could not be found", string, begin);
25426 				}
25427 				if (iso_day_of_week < 1 || iso_day_of_week > 7) {
25428 					add_pbf_error(s, TIMELIB_ERR_INVALID_DAY_OF_WEEK, "Day of week must be between 1 and 7", string, begin);
25429 				}
25430 				break;
25431 			case TIMELIB_FORMAT_TIMEZONE_OFFSET: /* timezone */
25432 				{
25433 					int tz_not_found;
25434 
25435 					s->time->z = timelib_parse_zone((char **) &ptr, &s->time->dst, s->time, &tz_not_found, s->tzdb, tz_get_wrapper);
25436 					if (tz_not_found) {
25437 						add_pbf_error(s, TIMELIB_ERR_TZID_NOT_FOUND, "The timezone could not be found in the database", string, begin);
25438 					}
25439 				}
25440 				break;
25441 			case TIMELIB_FORMAT_TIMEZONE_OFFSET_MINUTES: /* timezone format +/-mmm */
25442 				s->time->z = timelib_parse_tz_minutes((char **) &ptr, s->time);
25443 				if (s->time->z == TIMELIB_UNSET) {
25444 					add_pbf_error(s, TIMELIB_ERR_INVALID_TZ_OFFSET, "Invalid timezone offset in minutes", string, begin);
25445 				}
25446 				break;
25447 			case TIMELIB_FORMAT_LITERAL:
25448 			default:
25449 				if (*fptr != *ptr) {
25450 					add_pbf_error(s, TIMELIB_ERR_WRONG_FORMAT_SEP, "The format separator does not match", string, begin);
25451 				}
25452 				ptr++;
25453 		}
25454 		fptr++;
25455 	}
25456 	if (*ptr) {
25457 		if (allow_extra) {
25458 			add_pbf_warning(s, TIMELIB_WARN_TRAILING_DATA, "Trailing data", string, ptr);
25459 		} else {
25460 			add_pbf_error(s, TIMELIB_ERR_TRAILING_DATA, "Trailing data", string, ptr);
25461 		}
25462 	}
25463 
25464 	if (*fptr) {
25465 		/* Trailing reset specifiers are valid. */
25466 		int done = 0;
25467 		while (*fptr && !done) {
25468 			switch (timelib_lookup_format(*fptr, format_map)) {
25469 				case TIMELIB_FORMAT_RESET_ALL: /* reset all fields to default */
25470 					timelib_time_reset_fields(s->time);
25471 					break;
25472 
25473 				case TIMELIB_FORMAT_RESET_ALL_WHEN_NOT_SET: /* reset all fields to default when not set */
25474 					timelib_time_reset_unset_fields(s->time);
25475 					break;
25476 				case TIMELIB_FORMAT_ALLOW_EXTRA_CHARACTERS:
25477 					break;
25478 
25479 				default:
25480 					add_pbf_error(s, TIMELIB_ERR_DATA_MISSING, "Data missing", string, ptr);
25481 					done = 1;
25482 			}
25483 			fptr++;
25484 		}
25485 	}
25486 
25487 	/* clean up a bit */
25488 	if (s->time->h != TIMELIB_UNSET || s->time->i != TIMELIB_UNSET || s->time->s != TIMELIB_UNSET || s->time->us != TIMELIB_UNSET) {
25489 		if (s->time->h == TIMELIB_UNSET ) {
25490 			s->time->h = 0;
25491 		}
25492 		if (s->time->i == TIMELIB_UNSET ) {
25493 			s->time->i = 0;
25494 		}
25495 		if (s->time->s == TIMELIB_UNSET ) {
25496 			s->time->s = 0;
25497 		}
25498 		if (s->time->us == TIMELIB_UNSET ) {
25499 			s->time->us = 0;
25500 		}
25501 	}
25502 
25503 	/* Check for mixing of ISO dates with natural dates. */
25504 	if (s->time->y != TIMELIB_UNSET && (iso_week_of_year != TIMELIB_UNSET || iso_year != TIMELIB_UNSET || iso_day_of_week != TIMELIB_UNSET)) {
25505 		add_pbf_error(s, TIMELIB_ERR_MIX_ISO_WITH_NATURAL, "Mixing of ISO dates with natural dates is not allowed", string, ptr);
25506 	}
25507 	if (iso_year != TIMELIB_UNSET && (s->time->y != TIMELIB_UNSET || s->time->m != TIMELIB_UNSET || s->time->d != TIMELIB_UNSET)) {
25508 		add_pbf_error(s, TIMELIB_ERR_MIX_ISO_WITH_NATURAL, "Mixing of ISO dates with natural dates is not allowed", string, ptr);
25509 	}
25510 
25511 	/* Convert ISO values */
25512 	if (iso_year != TIMELIB_UNSET) {
25513 		/* Default week of year and day of week to 1. */
25514 		if (iso_week_of_year == TIMELIB_UNSET) {
25515 			iso_week_of_year = 1;
25516 		}
25517 		if (iso_day_of_week == TIMELIB_UNSET) {
25518 			iso_day_of_week = 1;
25519 		}
25520 		timelib_date_from_isodate(iso_year, iso_week_of_year, iso_day_of_week, &s->time->y, &s->time->m, &s->time->d);
25521 	} else if (iso_week_of_year != TIMELIB_UNSET || iso_day_of_week != TIMELIB_UNSET) {
25522 		add_pbf_warning(s, TIMELIB_WARN_INVALID_DATE, "The parsed date was invalid", string, ptr);
25523 	}
25524 
25525 	/* do funky checking whether the parsed time was valid time */
25526 	if (s->time->h != TIMELIB_UNSET && s->time->i != TIMELIB_UNSET &&
25527 		s->time->s != TIMELIB_UNSET &&
25528 		!timelib_valid_time( s->time->h, s->time->i, s->time->s)) {
25529 		add_pbf_warning(s, TIMELIB_WARN_INVALID_TIME, "The parsed time was invalid", string, ptr);
25530 	}
25531 	/* do funky checking whether the parsed date was valid date */
25532 	if (s->time->y != TIMELIB_UNSET && s->time->m != TIMELIB_UNSET &&
25533 		s->time->d != TIMELIB_UNSET &&
25534 		!timelib_valid_date( s->time->y, s->time->m, s->time->d)) {
25535 		add_pbf_warning(s, TIMELIB_WARN_INVALID_DATE, "The parsed date was invalid", string, ptr);
25536 	}
25537 
25538 	if (errors) {
25539 		*errors = in.errors;
25540 	} else {
25541 		timelib_error_container_dtor(in.errors);
25542 	}
25543 	return in.time;
25544 }
25545 
timelib_fill_holes(timelib_time * parsed,timelib_time * now,int options)25546 void timelib_fill_holes(timelib_time *parsed, timelib_time *now, int options)
25547 {
25548 	if (!(options & TIMELIB_OVERRIDE_TIME) && parsed->have_date && !parsed->have_time) {
25549 		parsed->h = 0;
25550 		parsed->i = 0;
25551 		parsed->s = 0;
25552 		parsed->us = 0;
25553 	}
25554 	if (
25555 		parsed->y != TIMELIB_UNSET || parsed->m != TIMELIB_UNSET || parsed->d != TIMELIB_UNSET ||
25556 		parsed->h != TIMELIB_UNSET || parsed->i != TIMELIB_UNSET || parsed->s != TIMELIB_UNSET
25557 	) {
25558 		if (parsed->us == TIMELIB_UNSET) parsed->us = 0;
25559 	} else {
25560 		if (parsed->us == TIMELIB_UNSET) parsed->us = now->us != TIMELIB_UNSET ? now->us : 0;
25561 	}
25562 	if (parsed->y == TIMELIB_UNSET) parsed->y = now->y != TIMELIB_UNSET ? now->y : 0;
25563 	if (parsed->m == TIMELIB_UNSET) parsed->m = now->m != TIMELIB_UNSET ? now->m : 0;
25564 	if (parsed->d == TIMELIB_UNSET) parsed->d = now->d != TIMELIB_UNSET ? now->d : 0;
25565 	if (parsed->h == TIMELIB_UNSET) parsed->h = now->h != TIMELIB_UNSET ? now->h : 0;
25566 	if (parsed->i == TIMELIB_UNSET) parsed->i = now->i != TIMELIB_UNSET ? now->i : 0;
25567 	if (parsed->s == TIMELIB_UNSET) parsed->s = now->s != TIMELIB_UNSET ? now->s : 0;
25568 	if (parsed->z == TIMELIB_UNSET) parsed->z = now->z != TIMELIB_UNSET ? now->z : 0;
25569 	if (parsed->dst == TIMELIB_UNSET) parsed->dst = now->dst != TIMELIB_UNSET ? now->dst : 0;
25570 
25571 	if (!parsed->tz_abbr) {
25572 		parsed->tz_abbr = now->tz_abbr ? timelib_strdup(now->tz_abbr) : NULL;
25573 	}
25574 	if (!parsed->tz_info) {
25575 		parsed->tz_info = now->tz_info ? (!(options & TIMELIB_NO_CLONE) ? timelib_tzinfo_clone(now->tz_info) : now->tz_info) : NULL;
25576 	}
25577 	if (parsed->zone_type == 0 && now->zone_type != 0) {
25578 		parsed->zone_type = now->zone_type;
25579 /*		parsed->tz_abbr = now->tz_abbr ? timelib_strdup(now->tz_abbr) : NULL;
25580 		parsed->tz_info = now->tz_info ? timelib_tzinfo_clone(now->tz_info) : NULL;
25581 */		parsed->is_localtime = 1;
25582 	}
25583 /*	timelib_dump_date(parsed, 2);
25584 	timelib_dump_date(now, 2);
25585 */
25586 }
25587 
timelib_timezone_id_from_abbr(const char * abbr,timelib_long gmtoffset,int isdst)25588 char *timelib_timezone_id_from_abbr(const char *abbr, timelib_long gmtoffset, int isdst)
25589 {
25590 	const timelib_tz_lookup_table *tp;
25591 
25592 	tp = abbr_search(abbr, gmtoffset, isdst);
25593 	if (tp) {
25594 		return (tp->full_tz_name);
25595 	} else {
25596 		return NULL;
25597 	}
25598 }
25599 
timelib_timezone_abbreviations_list(void)25600 const timelib_tz_lookup_table *timelib_timezone_abbreviations_list(void)
25601 {
25602 	return timelib_timezone_lookup;
25603 }
25604 
25605 #ifdef DEBUG_PARSER_STUB
main(void)25606 int main(void)
25607 {
25608 	timelib_time time = timelib_strtotime("May 12");
25609 
25610 	printf ("%04d-%02d-%02d %02d:%02d:%02d.%-5d %+04d %1d",
25611 		time.y, time.m, time.d, time.h, time.i, time.s, time.f, time.z, time.dst);
25612 	if (time.have_relative) {
25613 		printf ("%3dY %3dM %3dD / %3dH %3dM %3dS",
25614 			time.relative.y, time.relative.m, time.relative.d, time.relative.h, time.relative.i, time.relative.s);
25615 	}
25616 	if (time.have_weekday_relative) {
25617 		printf (" / %d", time.relative.weekday);
25618 	}
25619 	if (time.have_weeknr_day) {
25620 		printf(" / %dW%d", time.relative.weeknr_day.weeknr, time.relative.weeknr_day.dayofweek);
25621 	}
25622 	return 0;
25623 }
25624 #endif
25625 
25626 /*
25627  * vim: syntax=c
25628  */
25629