xref: /PHP-7.3/ext/date/lib/parse_date.c (revision 778902db)
1 /* Generated by re2c 2.0.3 on Mon Aug 31 11:40:58 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 			tmp = sHOUR(strtol(begin, NULL, 10)) + sMIN(strtol(begin + 3, NULL, 10));
770 			return tmp;
771 	}
772 	return 0;
773 }
774 
timelib_parse_tz_minutes(char ** ptr,timelib_time * t)775 static timelib_long timelib_parse_tz_minutes(char **ptr, timelib_time *t)
776 {
777 	timelib_long retval = TIMELIB_UNSET;
778 	char *begin = *ptr;
779 
780 	/* First character must be +/- */
781 	if (**ptr != '+' && **ptr != '-') {
782 		return retval;
783 	}
784 
785 	++*ptr;
786 	while (isdigit(**ptr)) {
787 		++*ptr;
788 	}
789 
790 	if (*begin == '+') {
791 		t->is_localtime = 1;
792 		t->zone_type = TIMELIB_ZONETYPE_OFFSET;
793 		t->dst = 0;
794 
795 		retval = sMIN(strtol(begin + 1, NULL, 10));
796 	} else if (*begin == '-') {
797 		t->is_localtime = 1;
798 		t->zone_type = TIMELIB_ZONETYPE_OFFSET;
799 		t->dst = 0;
800 
801 		retval = -1 * sMIN(strtol(begin + 1, NULL, 10));
802 	}
803 	return retval;
804 }
805 
timelib_parse_zone(char ** ptr,int * dst,timelib_time * t,int * tz_not_found,const timelib_tzdb * tzdb,timelib_tz_get_wrapper tz_wrapper)806 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)
807 {
808 	timelib_tzinfo *res;
809 	timelib_long            retval = 0;
810 
811 	*tz_not_found = 0;
812 
813 	while (**ptr == ' ' || **ptr == '\t' || **ptr == '(') {
814 		++*ptr;
815 	}
816 	if ((*ptr)[0] == 'G' && (*ptr)[1] == 'M' && (*ptr)[2] == 'T' && ((*ptr)[3] == '+' || (*ptr)[3] == '-')) {
817 		*ptr += 3;
818 	}
819 	if (**ptr == '+') {
820 		++*ptr;
821 		t->is_localtime = 1;
822 		t->zone_type = TIMELIB_ZONETYPE_OFFSET;
823 		*tz_not_found = 0;
824 		t->dst = 0;
825 
826 		retval = timelib_parse_tz_cor(ptr);
827 	} else if (**ptr == '-') {
828 		++*ptr;
829 		t->is_localtime = 1;
830 		t->zone_type = TIMELIB_ZONETYPE_OFFSET;
831 		*tz_not_found = 0;
832 		t->dst = 0;
833 
834 		retval = -1 * timelib_parse_tz_cor(ptr);
835 	} else {
836 		int found = 0;
837 		timelib_long offset = 0;
838 		char *tz_abbr;
839 
840 		t->is_localtime = 1;
841 
842 		/* First, we lookup by abbreviation only */
843 		offset = timelib_lookup_abbr(ptr, dst, &tz_abbr, &found);
844 		if (found) {
845 			t->zone_type = TIMELIB_ZONETYPE_ABBR;
846 			timelib_time_tz_abbr_update(t, tz_abbr);
847 		}
848 
849 		/* Otherwise, we look if we have a TimeZone identifier */
850 		if (!found || strcmp("UTC", tz_abbr) == 0) {
851 			int dummy_error_code;
852 
853 			if ((res = tz_wrapper(tz_abbr, tzdb, &dummy_error_code)) != NULL) {
854 				t->tz_info = res;
855 				t->zone_type = TIMELIB_ZONETYPE_ID;
856 				found++;
857 			}
858 		}
859 		timelib_free(tz_abbr);
860 		*tz_not_found = (found == 0);
861 		retval = offset;
862 	}
863 	while (**ptr == ')') {
864 		++*ptr;
865 	}
866 	return retval;
867 }
868 
869 #define timelib_split_free(arg) {       \
870 	int i;                         \
871 	for (i = 0; i < arg.c; i++) {  \
872 		timelib_free(arg.v[i]);    \
873 	}                              \
874 	if (arg.v) {                   \
875 		timelib_free(arg.v);       \
876 	}                              \
877 }
878 
scan(Scanner * s,timelib_tz_get_wrapper tz_get_wrapper)879 static int scan(Scanner *s, timelib_tz_get_wrapper tz_get_wrapper)
880 {
881 	uchar *cursor = s->cur;
882 	char *str, *ptr = NULL;
883 
884 std:
885 	s->tok = cursor;
886 	s->len = 0;
887 #line 1011 "parse_date.re"
888 
889 
890 
891 #line 892 "<stdout>"
892 {
893 	YYCTYPE yych;
894 	unsigned int yyaccept = 0;
895 	static const unsigned char yybm[] = {
896 		  0,   0,   0,   0,   0,   0,   0,   0,
897 		  0,  50,   0,   0,   0,   0,   0,   0,
898 		  0,   0,   0,   0,   0,   0,   0,   0,
899 		  0,   0,   0,   0,   0,   0,   0,   0,
900 		 50,   0,   0,   0,   0,   0,   0,   0,
901 		  0,   0,   0,   4,  32,  20,  48,   0,
902 		  8,   8,   8,   8,   8,   8,   8,   8,
903 		  8,   8,   0,   0,   0,   0,   0,   0,
904 		  0,  64,  64,  64,  64,  64,  64,  64,
905 		 64,  64,  64,  64,  64,  64,  64,  64,
906 		 64,  64,  64,  64,  64,  64,  64,  64,
907 		 64,  64,  64,   0,   0,   0,   0,   0,
908 		  0, 192, 192, 192, 224, 192, 192, 192,
909 		224, 192, 192, 192, 192, 192, 224, 192,
910 		192, 192, 224, 224, 224, 192, 192, 192,
911 		192, 192, 192,   0,   0,   0,   0,   0,
912 		  0,   0,   0,   0,   0,   0,   0,   0,
913 		  0,   0,   0,   0,   0,   0,   0,   0,
914 		  0,   0,   0,   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 	};
929 	YYDEBUG(0, *YYCURSOR);
930 	if ((YYLIMIT - YYCURSOR) < 33) YYFILL(33);
931 	yych = *YYCURSOR;
932 	switch (yych) {
933 	case 0x00:
934 	case '\n':	goto yy2;
935 	case '\t':
936 	case ' ':	goto yy6;
937 	case '(':	goto yy8;
938 	case '+':
939 	case '-':	goto yy9;
940 	case ',':
941 	case '.':	goto yy10;
942 	case '0':	goto yy11;
943 	case '1':	goto yy12;
944 	case '2':	goto yy13;
945 	case '3':	goto yy14;
946 	case '4':
947 	case '5':
948 	case '6':
949 	case '7':
950 	case '8':
951 	case '9':	goto yy15;
952 	case '@':	goto yy16;
953 	case 'A':	goto yy17;
954 	case 'B':	goto yy19;
955 	case 'C':
956 	case 'H':
957 	case 'K':
958 	case 'Q':
959 	case 'R':
960 	case 'U':
961 	case 'Z':	goto yy20;
962 	case 'D':	goto yy21;
963 	case 'E':	goto yy22;
964 	case 'F':	goto yy23;
965 	case 'G':	goto yy24;
966 	case 'I':	goto yy25;
967 	case 'J':	goto yy26;
968 	case 'L':	goto yy27;
969 	case 'M':	goto yy28;
970 	case 'N':	goto yy29;
971 	case 'O':	goto yy30;
972 	case 'P':	goto yy31;
973 	case 'S':	goto yy32;
974 	case 'T':	goto yy33;
975 	case 'V':	goto yy34;
976 	case 'W':	goto yy35;
977 	case 'X':	goto yy36;
978 	case 'Y':	goto yy37;
979 	case 'a':	goto yy38;
980 	case 'b':	goto yy39;
981 	case 'c':
982 	case 'g':
983 	case 'h':
984 	case 'i':
985 	case 'k':
986 	case 'q':
987 	case 'r':
988 	case 'u':
989 	case 'v':
990 	case 'x':
991 	case 'z':	goto yy40;
992 	case 'd':	goto yy41;
993 	case 'e':	goto yy42;
994 	case 'f':	goto yy43;
995 	case 'j':	goto yy44;
996 	case 'l':	goto yy45;
997 	case 'm':	goto yy46;
998 	case 'n':	goto yy47;
999 	case 'o':	goto yy48;
1000 	case 'p':	goto yy49;
1001 	case 's':	goto yy50;
1002 	case 't':	goto yy51;
1003 	case 'w':	goto yy52;
1004 	case 'y':	goto yy53;
1005 	default:	goto yy4;
1006 	}
1007 yy2:
1008 	YYDEBUG(2, *YYCURSOR);
1009 	++YYCURSOR;
1010 	YYDEBUG(3, *YYCURSOR);
1011 #line 1808 "parse_date.re"
1012 	{
1013 		s->pos = cursor; s->line++;
1014 		goto std;
1015 	}
1016 #line 1017 "<stdout>"
1017 yy4:
1018 	YYDEBUG(4, *YYCURSOR);
1019 	++YYCURSOR;
1020 yy5:
1021 	YYDEBUG(5, *YYCURSOR);
1022 #line 1814 "parse_date.re"
1023 	{
1024 		add_error(s, TIMELIB_ERR_UNEXPECTED_CHARACTER, "Unexpected character");
1025 		goto std;
1026 	}
1027 #line 1028 "<stdout>"
1028 yy6:
1029 	YYDEBUG(6, *YYCURSOR);
1030 	yyaccept = 0;
1031 	yych = *(YYMARKER = ++YYCURSOR);
1032 	if (yybm[0+yych] & 2) {
1033 		goto yy54;
1034 	}
1035 	if (yych <= '/') goto yy7;
1036 	if (yych <= '9') goto yy57;
1037 yy7:
1038 	YYDEBUG(7, *YYCURSOR);
1039 #line 1803 "parse_date.re"
1040 	{
1041 		goto std;
1042 	}
1043 #line 1044 "<stdout>"
1044 yy8:
1045 	YYDEBUG(8, *YYCURSOR);
1046 	yych = *++YYCURSOR;
1047 	if (yych <= '@') goto yy5;
1048 	if (yych <= 'Z') goto yy40;
1049 	if (yych <= '`') goto yy5;
1050 	if (yych <= 'z') goto yy40;
1051 	goto yy5;
1052 yy9:
1053 	YYDEBUG(9, *YYCURSOR);
1054 	yyaccept = 1;
1055 	yych = *(YYMARKER = ++YYCURSOR);
1056 	if (yybm[0+yych] & 2) {
1057 		goto yy54;
1058 	}
1059 	switch (yych) {
1060 	case '+':
1061 	case '-':	goto yy58;
1062 	case '0':
1063 	case '1':	goto yy60;
1064 	case '2':	goto yy61;
1065 	case '3':
1066 	case '4':
1067 	case '5':
1068 	case '6':
1069 	case '7':
1070 	case '8':
1071 	case '9':	goto yy62;
1072 	default:	goto yy5;
1073 	}
1074 yy10:
1075 	YYDEBUG(10, *YYCURSOR);
1076 	++YYCURSOR;
1077 	goto yy7;
1078 yy11:
1079 	YYDEBUG(11, *YYCURSOR);
1080 	yyaccept = 1;
1081 	yych = *(YYMARKER = ++YYCURSOR);
1082 	if (yych <= '`') {
1083 		if (yych <= '@') {
1084 			if (yych <= '-') {
1085 				if (yych <= 0x1F) {
1086 					if (yych == '\t') goto yy63;
1087 					goto yy5;
1088 				} else {
1089 					if (yych <= ' ') goto yy65;
1090 					if (yych <= ',') goto yy5;
1091 					goto yy66;
1092 				}
1093 			} else {
1094 				if (yych <= '0') {
1095 					if (yych <= '.') goto yy67;
1096 					if (yych <= '/') goto yy68;
1097 					goto yy69;
1098 				} else {
1099 					if (yych <= '9') goto yy70;
1100 					if (yych <= ':') goto yy71;
1101 					goto yy5;
1102 				}
1103 			}
1104 		} else {
1105 			if (yych <= 'G') {
1106 				if (yych <= 'D') {
1107 					if (yych <= 'A') goto yy65;
1108 					if (yych <= 'C') goto yy5;
1109 					goto yy65;
1110 				} else {
1111 					if (yych == 'F') goto yy65;
1112 					goto yy5;
1113 				}
1114 			} else {
1115 				if (yych <= 'O') {
1116 					if (yych <= 'J') goto yy65;
1117 					if (yych <= 'L') goto yy5;
1118 					goto yy65;
1119 				} else {
1120 					if (yych <= 'R') goto yy5;
1121 					if (yych <= 'Y') goto yy65;
1122 					goto yy5;
1123 				}
1124 			}
1125 		}
1126 	} else {
1127 		if (yych <= 'n') {
1128 			if (yych <= 'g') {
1129 				if (yych <= 'd') {
1130 					if (yych <= 'a') goto yy65;
1131 					if (yych <= 'c') goto yy5;
1132 					goto yy65;
1133 				} else {
1134 					if (yych == 'f') goto yy65;
1135 					goto yy5;
1136 				}
1137 			} else {
1138 				if (yych <= 'j') {
1139 					if (yych == 'i') goto yy5;
1140 					goto yy65;
1141 				} else {
1142 					if (yych <= 'l') goto yy5;
1143 					if (yych <= 'm') goto yy65;
1144 					goto yy89;
1145 				}
1146 			}
1147 		} else {
1148 			if (yych <= 'u') {
1149 				if (yych <= 'r') {
1150 					if (yych <= 'o') goto yy65;
1151 					if (yych <= 'q') goto yy5;
1152 					goto yy90;
1153 				} else {
1154 					if (yych <= 's') goto yy91;
1155 					if (yych <= 't') goto yy92;
1156 					goto yy65;
1157 				}
1158 			} else {
1159 				if (yych <= 'x') {
1160 					if (yych == 'w') goto yy65;
1161 					goto yy5;
1162 				} else {
1163 					if (yych <= 'y') goto yy65;
1164 					if (yych == 0xC2) goto yy65;
1165 					goto yy5;
1166 				}
1167 			}
1168 		}
1169 	}
1170 yy12:
1171 	YYDEBUG(12, *YYCURSOR);
1172 	yyaccept = 1;
1173 	yych = *(YYMARKER = ++YYCURSOR);
1174 	if (yych <= '`') {
1175 		if (yych <= '@') {
1176 			if (yych <= '-') {
1177 				if (yych <= 0x1F) {
1178 					if (yych == '\t') goto yy94;
1179 					goto yy5;
1180 				} else {
1181 					if (yych <= ' ') goto yy96;
1182 					if (yych <= ',') goto yy5;
1183 					goto yy66;
1184 				}
1185 			} else {
1186 				if (yych <= '2') {
1187 					if (yych <= '.') goto yy97;
1188 					if (yych <= '/') goto yy68;
1189 					goto yy70;
1190 				} else {
1191 					if (yych <= '9') goto yy98;
1192 					if (yych <= ':') goto yy99;
1193 					goto yy5;
1194 				}
1195 			}
1196 		} else {
1197 			if (yych <= 'G') {
1198 				if (yych <= 'D') {
1199 					if (yych <= 'A') goto yy96;
1200 					if (yych <= 'C') goto yy5;
1201 					goto yy96;
1202 				} else {
1203 					if (yych == 'F') goto yy96;
1204 					goto yy5;
1205 				}
1206 			} else {
1207 				if (yych <= 'P') {
1208 					if (yych <= 'J') goto yy96;
1209 					if (yych <= 'L') goto yy5;
1210 					goto yy96;
1211 				} else {
1212 					if (yych <= 'R') goto yy5;
1213 					if (yych <= 'Y') goto yy96;
1214 					goto yy5;
1215 				}
1216 			}
1217 		}
1218 	} else {
1219 		if (yych <= 'n') {
1220 			if (yych <= 'g') {
1221 				if (yych <= 'd') {
1222 					if (yych <= 'a') goto yy96;
1223 					if (yych <= 'c') goto yy5;
1224 					goto yy96;
1225 				} else {
1226 					if (yych == 'f') goto yy96;
1227 					goto yy5;
1228 				}
1229 			} else {
1230 				if (yych <= 'j') {
1231 					if (yych == 'i') goto yy5;
1232 					goto yy96;
1233 				} else {
1234 					if (yych <= 'l') goto yy5;
1235 					if (yych <= 'm') goto yy96;
1236 					goto yy89;
1237 				}
1238 			}
1239 		} else {
1240 			if (yych <= 'u') {
1241 				if (yych <= 'r') {
1242 					if (yych <= 'p') goto yy96;
1243 					if (yych <= 'q') goto yy5;
1244 					goto yy90;
1245 				} else {
1246 					if (yych <= 's') goto yy91;
1247 					if (yych <= 't') goto yy92;
1248 					goto yy96;
1249 				}
1250 			} else {
1251 				if (yych <= 'x') {
1252 					if (yych == 'w') goto yy96;
1253 					goto yy5;
1254 				} else {
1255 					if (yych <= 'y') goto yy96;
1256 					if (yych == 0xC2) goto yy96;
1257 					goto yy5;
1258 				}
1259 			}
1260 		}
1261 	}
1262 yy13:
1263 	YYDEBUG(13, *YYCURSOR);
1264 	yyaccept = 1;
1265 	yych = *(YYMARKER = ++YYCURSOR);
1266 	if (yych <= '`') {
1267 		if (yych <= '@') {
1268 			if (yych <= '-') {
1269 				if (yych <= 0x1F) {
1270 					if (yych == '\t') goto yy94;
1271 					goto yy5;
1272 				} else {
1273 					if (yych <= ' ') goto yy96;
1274 					if (yych <= ',') goto yy5;
1275 					goto yy66;
1276 				}
1277 			} else {
1278 				if (yych <= '4') {
1279 					if (yych <= '.') goto yy97;
1280 					if (yych <= '/') goto yy68;
1281 					goto yy98;
1282 				} else {
1283 					if (yych <= '9') goto yy102;
1284 					if (yych <= ':') goto yy99;
1285 					goto yy5;
1286 				}
1287 			}
1288 		} else {
1289 			if (yych <= 'G') {
1290 				if (yych <= 'D') {
1291 					if (yych <= 'A') goto yy96;
1292 					if (yych <= 'C') goto yy5;
1293 					goto yy96;
1294 				} else {
1295 					if (yych == 'F') goto yy96;
1296 					goto yy5;
1297 				}
1298 			} else {
1299 				if (yych <= 'P') {
1300 					if (yych <= 'J') goto yy96;
1301 					if (yych <= 'L') goto yy5;
1302 					goto yy96;
1303 				} else {
1304 					if (yych <= 'R') goto yy5;
1305 					if (yych <= 'Y') goto yy96;
1306 					goto yy5;
1307 				}
1308 			}
1309 		}
1310 	} else {
1311 		if (yych <= 'n') {
1312 			if (yych <= 'g') {
1313 				if (yych <= 'd') {
1314 					if (yych <= 'a') goto yy96;
1315 					if (yych <= 'c') goto yy5;
1316 					goto yy96;
1317 				} else {
1318 					if (yych == 'f') goto yy96;
1319 					goto yy5;
1320 				}
1321 			} else {
1322 				if (yych <= 'j') {
1323 					if (yych == 'i') goto yy5;
1324 					goto yy96;
1325 				} else {
1326 					if (yych <= 'l') goto yy5;
1327 					if (yych <= 'm') goto yy96;
1328 					goto yy89;
1329 				}
1330 			}
1331 		} else {
1332 			if (yych <= 'u') {
1333 				if (yych <= 'r') {
1334 					if (yych <= 'p') goto yy96;
1335 					if (yych <= 'q') goto yy5;
1336 					goto yy90;
1337 				} else {
1338 					if (yych <= 's') goto yy91;
1339 					if (yych <= 't') goto yy92;
1340 					goto yy96;
1341 				}
1342 			} else {
1343 				if (yych <= 'x') {
1344 					if (yych == 'w') goto yy96;
1345 					goto yy5;
1346 				} else {
1347 					if (yych <= 'y') goto yy96;
1348 					if (yych == 0xC2) goto yy96;
1349 					goto yy5;
1350 				}
1351 			}
1352 		}
1353 	}
1354 yy14:
1355 	YYDEBUG(14, *YYCURSOR);
1356 	yyaccept = 1;
1357 	yych = *(YYMARKER = ++YYCURSOR);
1358 	if (yych <= '`') {
1359 		if (yych <= '@') {
1360 			if (yych <= '-') {
1361 				if (yych <= 0x1F) {
1362 					if (yych == '\t') goto yy94;
1363 					goto yy5;
1364 				} else {
1365 					if (yych <= ' ') goto yy96;
1366 					if (yych <= ',') goto yy5;
1367 					goto yy66;
1368 				}
1369 			} else {
1370 				if (yych <= '1') {
1371 					if (yych <= '.') goto yy97;
1372 					if (yych <= '/') goto yy68;
1373 					goto yy102;
1374 				} else {
1375 					if (yych <= '9') goto yy103;
1376 					if (yych <= ':') goto yy99;
1377 					goto yy5;
1378 				}
1379 			}
1380 		} else {
1381 			if (yych <= 'G') {
1382 				if (yych <= 'D') {
1383 					if (yych <= 'A') goto yy96;
1384 					if (yych <= 'C') goto yy5;
1385 					goto yy96;
1386 				} else {
1387 					if (yych == 'F') goto yy96;
1388 					goto yy5;
1389 				}
1390 			} else {
1391 				if (yych <= 'P') {
1392 					if (yych <= 'J') goto yy96;
1393 					if (yych <= 'L') goto yy5;
1394 					goto yy96;
1395 				} else {
1396 					if (yych <= 'R') goto yy5;
1397 					if (yych <= 'Y') goto yy96;
1398 					goto yy5;
1399 				}
1400 			}
1401 		}
1402 	} else {
1403 		if (yych <= 'n') {
1404 			if (yych <= 'g') {
1405 				if (yych <= 'd') {
1406 					if (yych <= 'a') goto yy96;
1407 					if (yych <= 'c') goto yy5;
1408 					goto yy96;
1409 				} else {
1410 					if (yych == 'f') goto yy96;
1411 					goto yy5;
1412 				}
1413 			} else {
1414 				if (yych <= 'j') {
1415 					if (yych == 'i') goto yy5;
1416 					goto yy96;
1417 				} else {
1418 					if (yych <= 'l') goto yy5;
1419 					if (yych <= 'm') goto yy96;
1420 					goto yy89;
1421 				}
1422 			}
1423 		} else {
1424 			if (yych <= 'u') {
1425 				if (yych <= 'r') {
1426 					if (yych <= 'p') goto yy96;
1427 					if (yych <= 'q') goto yy5;
1428 					goto yy90;
1429 				} else {
1430 					if (yych <= 's') goto yy91;
1431 					if (yych <= 't') goto yy92;
1432 					goto yy96;
1433 				}
1434 			} else {
1435 				if (yych <= 'x') {
1436 					if (yych == 'w') goto yy96;
1437 					goto yy5;
1438 				} else {
1439 					if (yych <= 'y') goto yy96;
1440 					if (yych == 0xC2) goto yy96;
1441 					goto yy5;
1442 				}
1443 			}
1444 		}
1445 	}
1446 yy15:
1447 	YYDEBUG(15, *YYCURSOR);
1448 	yyaccept = 1;
1449 	yych = *(YYMARKER = ++YYCURSOR);
1450 	if (yych <= 'a') {
1451 		if (yych <= 'A') {
1452 			if (yych <= '-') {
1453 				if (yych <= 0x1F) {
1454 					if (yych == '\t') goto yy94;
1455 					goto yy5;
1456 				} else {
1457 					if (yych <= ' ') goto yy96;
1458 					if (yych <= ',') goto yy5;
1459 					goto yy66;
1460 				}
1461 			} else {
1462 				if (yych <= '9') {
1463 					if (yych <= '.') goto yy97;
1464 					if (yych <= '/') goto yy68;
1465 					goto yy103;
1466 				} else {
1467 					if (yych <= ':') goto yy99;
1468 					if (yych <= '@') goto yy5;
1469 					goto yy96;
1470 				}
1471 			}
1472 		} else {
1473 			if (yych <= 'J') {
1474 				if (yych <= 'E') {
1475 					if (yych == 'D') goto yy96;
1476 					goto yy5;
1477 				} else {
1478 					if (yych == 'G') goto yy5;
1479 					goto yy96;
1480 				}
1481 			} else {
1482 				if (yych <= 'R') {
1483 					if (yych <= 'L') goto yy5;
1484 					if (yych <= 'P') goto yy96;
1485 					goto yy5;
1486 				} else {
1487 					if (yych <= 'Y') goto yy96;
1488 					if (yych <= '`') goto yy5;
1489 					goto yy96;
1490 				}
1491 			}
1492 		}
1493 	} else {
1494 		if (yych <= 'p') {
1495 			if (yych <= 'h') {
1496 				if (yych <= 'e') {
1497 					if (yych == 'd') goto yy96;
1498 					goto yy5;
1499 				} else {
1500 					if (yych == 'g') goto yy5;
1501 					goto yy96;
1502 				}
1503 			} else {
1504 				if (yych <= 'l') {
1505 					if (yych == 'j') goto yy96;
1506 					goto yy5;
1507 				} else {
1508 					if (yych == 'n') goto yy89;
1509 					goto yy96;
1510 				}
1511 			}
1512 		} else {
1513 			if (yych <= 'v') {
1514 				if (yych <= 's') {
1515 					if (yych <= 'q') goto yy5;
1516 					if (yych <= 'r') goto yy90;
1517 					goto yy91;
1518 				} else {
1519 					if (yych <= 't') goto yy92;
1520 					if (yych <= 'u') goto yy96;
1521 					goto yy5;
1522 				}
1523 			} else {
1524 				if (yych <= 'y') {
1525 					if (yych == 'x') goto yy5;
1526 					goto yy96;
1527 				} else {
1528 					if (yych == 0xC2) goto yy96;
1529 					goto yy5;
1530 				}
1531 			}
1532 		}
1533 	}
1534 yy16:
1535 	YYDEBUG(16, *YYCURSOR);
1536 	yyaccept = 1;
1537 	yych = *(YYMARKER = ++YYCURSOR);
1538 	if (yybm[0+yych] & 8) {
1539 		goto yy105;
1540 	}
1541 	if (yych == '-') goto yy104;
1542 	goto yy5;
1543 yy17:
1544 	YYDEBUG(17, *YYCURSOR);
1545 	yych = *++YYCURSOR;
1546 	if (yych <= 'U') {
1547 		if (yych <= 'F') {
1548 			if (yych == ')') goto yy108;
1549 			if (yych >= 'A') goto yy109;
1550 		} else {
1551 			if (yych <= 'O') {
1552 				if (yych <= 'G') goto yy110;
1553 				goto yy109;
1554 			} else {
1555 				if (yych <= 'P') goto yy111;
1556 				if (yych <= 'T') goto yy109;
1557 				goto yy112;
1558 			}
1559 		}
1560 	} else {
1561 		if (yych <= 'o') {
1562 			if (yych <= '`') {
1563 				if (yych <= 'Z') goto yy109;
1564 			} else {
1565 				if (yych == 'g') goto yy114;
1566 				goto yy113;
1567 			}
1568 		} else {
1569 			if (yych <= 't') {
1570 				if (yych <= 'p') goto yy115;
1571 				goto yy113;
1572 			} else {
1573 				if (yych <= 'u') goto yy116;
1574 				if (yych <= 'z') goto yy113;
1575 			}
1576 		}
1577 	}
1578 yy18:
1579 	YYDEBUG(18, *YYCURSOR);
1580 #line 1719 "parse_date.re"
1581 	{
1582 		int tz_not_found;
1583 		DEBUG_OUTPUT("tzcorrection | tz");
1584 		TIMELIB_INIT;
1585 		TIMELIB_HAVE_TZ();
1586 		s->time->z = timelib_parse_zone((char **) &ptr, &s->time->dst, s->time, &tz_not_found, s->tzdb, tz_get_wrapper);
1587 		if (tz_not_found) {
1588 			add_error(s, TIMELIB_ERR_TZID_NOT_FOUND, "The timezone could not be found in the database");
1589 		}
1590 		TIMELIB_DEINIT;
1591 		return TIMELIB_TIMEZONE;
1592 	}
1593 #line 1594 "<stdout>"
1594 yy19:
1595 	YYDEBUG(19, *YYCURSOR);
1596 	yych = *++YYCURSOR;
1597 	if (yych <= 'A') {
1598 		if (yych == ')') goto yy108;
1599 		if (yych <= '@') goto yy18;
1600 		goto yy117;
1601 	} else {
1602 		if (yych <= '`') {
1603 			if (yych <= 'Z') goto yy109;
1604 			goto yy18;
1605 		} else {
1606 			if (yych <= 'a') goto yy118;
1607 			if (yych <= 'z') goto yy113;
1608 			goto yy18;
1609 		}
1610 	}
1611 yy20:
1612 	YYDEBUG(20, *YYCURSOR);
1613 	yych = *++YYCURSOR;
1614 	if (yych <= '@') {
1615 		if (yych == ')') goto yy108;
1616 		goto yy18;
1617 	} else {
1618 		if (yych <= 'Z') goto yy109;
1619 		if (yych <= '`') goto yy18;
1620 		if (yych <= 'z') goto yy113;
1621 		goto yy18;
1622 	}
1623 yy21:
1624 	YYDEBUG(21, *YYCURSOR);
1625 	yych = *++YYCURSOR;
1626 	if (yych <= 'E') {
1627 		if (yych <= ')') {
1628 			if (yych <= '(') goto yy18;
1629 			goto yy108;
1630 		} else {
1631 			if (yych <= '@') goto yy18;
1632 			if (yych <= 'D') goto yy109;
1633 			goto yy119;
1634 		}
1635 	} else {
1636 		if (yych <= 'd') {
1637 			if (yych <= 'Z') goto yy109;
1638 			if (yych <= '`') goto yy18;
1639 			goto yy113;
1640 		} else {
1641 			if (yych <= 'e') goto yy120;
1642 			if (yych <= 'z') goto yy113;
1643 			goto yy18;
1644 		}
1645 	}
1646 yy22:
1647 	YYDEBUG(22, *YYCURSOR);
1648 	yych = *++YYCURSOR;
1649 	if (yych <= 'L') {
1650 		if (yych <= '@') {
1651 			if (yych == ')') goto yy108;
1652 			goto yy18;
1653 		} else {
1654 			if (yych == 'I') goto yy121;
1655 			if (yych <= 'K') goto yy109;
1656 			goto yy122;
1657 		}
1658 	} else {
1659 		if (yych <= 'i') {
1660 			if (yych <= 'Z') goto yy109;
1661 			if (yych <= '`') goto yy18;
1662 			if (yych <= 'h') goto yy113;
1663 			goto yy123;
1664 		} else {
1665 			if (yych == 'l') goto yy124;
1666 			if (yych <= 'z') goto yy113;
1667 			goto yy18;
1668 		}
1669 	}
1670 yy23:
1671 	YYDEBUG(23, *YYCURSOR);
1672 	yych = *++YYCURSOR;
1673 	if (yych <= 'R') {
1674 		if (yych <= 'E') {
1675 			if (yych <= ')') {
1676 				if (yych <= '(') goto yy18;
1677 				goto yy108;
1678 			} else {
1679 				if (yych <= '@') goto yy18;
1680 				if (yych <= 'D') goto yy109;
1681 				goto yy125;
1682 			}
1683 		} else {
1684 			if (yych <= 'N') {
1685 				if (yych == 'I') goto yy126;
1686 				goto yy109;
1687 			} else {
1688 				if (yych <= 'O') goto yy127;
1689 				if (yych <= 'Q') goto yy109;
1690 				goto yy128;
1691 			}
1692 		}
1693 	} else {
1694 		if (yych <= 'i') {
1695 			if (yych <= 'd') {
1696 				if (yych <= 'Z') goto yy109;
1697 				if (yych <= '`') goto yy18;
1698 				goto yy113;
1699 			} else {
1700 				if (yych <= 'e') goto yy129;
1701 				if (yych <= 'h') goto yy113;
1702 				goto yy130;
1703 			}
1704 		} else {
1705 			if (yych <= 'q') {
1706 				if (yych == 'o') goto yy131;
1707 				goto yy113;
1708 			} else {
1709 				if (yych <= 'r') goto yy132;
1710 				if (yych <= 'z') goto yy113;
1711 				goto yy18;
1712 			}
1713 		}
1714 	}
1715 yy24:
1716 	YYDEBUG(24, *YYCURSOR);
1717 	yych = *++YYCURSOR;
1718 	if (yych <= 'L') {
1719 		if (yych == ')') goto yy108;
1720 		if (yych <= '@') goto yy18;
1721 		goto yy109;
1722 	} else {
1723 		if (yych <= 'Z') {
1724 			if (yych <= 'M') goto yy133;
1725 			goto yy109;
1726 		} else {
1727 			if (yych <= '`') goto yy18;
1728 			if (yych <= 'z') goto yy113;
1729 			goto yy18;
1730 		}
1731 	}
1732 yy25:
1733 	YYDEBUG(25, *YYCURSOR);
1734 	yyaccept = 2;
1735 	yych = *(YYMARKER = ++YYCURSOR);
1736 	if (yych <= '9') {
1737 		if (yych <= '(') {
1738 			if (yych <= '\t') {
1739 				if (yych <= 0x08) goto yy18;
1740 				goto yy135;
1741 			} else {
1742 				if (yych == ' ') goto yy135;
1743 				goto yy18;
1744 			}
1745 		} else {
1746 			if (yych <= ',') {
1747 				if (yych <= ')') goto yy108;
1748 				goto yy18;
1749 			} else {
1750 				if (yych == '/') goto yy18;
1751 				goto yy135;
1752 			}
1753 		}
1754 	} else {
1755 		if (yych <= 'V') {
1756 			if (yych <= 'H') {
1757 				if (yych <= '@') goto yy18;
1758 				goto yy109;
1759 			} else {
1760 				if (yych <= 'I') goto yy139;
1761 				if (yych <= 'U') goto yy109;
1762 				goto yy140;
1763 			}
1764 		} else {
1765 			if (yych <= 'Z') {
1766 				if (yych == 'X') goto yy140;
1767 				goto yy109;
1768 			} else {
1769 				if (yych <= '`') goto yy18;
1770 				if (yych <= 'z') goto yy113;
1771 				goto yy18;
1772 			}
1773 		}
1774 	}
1775 yy26:
1776 	YYDEBUG(26, *YYCURSOR);
1777 	yych = *++YYCURSOR;
1778 	if (yych <= 'U') {
1779 		if (yych <= '@') {
1780 			if (yych == ')') goto yy108;
1781 			goto yy18;
1782 		} else {
1783 			if (yych <= 'A') goto yy141;
1784 			if (yych <= 'T') goto yy109;
1785 			goto yy142;
1786 		}
1787 	} else {
1788 		if (yych <= 'a') {
1789 			if (yych <= 'Z') goto yy109;
1790 			if (yych <= '`') goto yy18;
1791 			goto yy143;
1792 		} else {
1793 			if (yych == 'u') goto yy144;
1794 			if (yych <= 'z') goto yy113;
1795 			goto yy18;
1796 		}
1797 	}
1798 yy27:
1799 	YYDEBUG(27, *YYCURSOR);
1800 	yych = *++YYCURSOR;
1801 	if (yych <= 'A') {
1802 		if (yych == ')') goto yy108;
1803 		if (yych <= '@') goto yy18;
1804 		goto yy145;
1805 	} else {
1806 		if (yych <= '`') {
1807 			if (yych <= 'Z') goto yy109;
1808 			goto yy18;
1809 		} else {
1810 			if (yych <= 'a') goto yy146;
1811 			if (yych <= 'z') goto yy113;
1812 			goto yy18;
1813 		}
1814 	}
1815 yy28:
1816 	YYDEBUG(28, *YYCURSOR);
1817 	yych = *++YYCURSOR;
1818 	if (yych <= 'O') {
1819 		if (yych <= 'A') {
1820 			if (yych == ')') goto yy108;
1821 			if (yych <= '@') goto yy18;
1822 			goto yy147;
1823 		} else {
1824 			if (yych == 'I') goto yy148;
1825 			if (yych <= 'N') goto yy109;
1826 			goto yy149;
1827 		}
1828 	} else {
1829 		if (yych <= 'h') {
1830 			if (yych <= 'Z') goto yy109;
1831 			if (yych <= '`') goto yy18;
1832 			if (yych <= 'a') goto yy150;
1833 			goto yy113;
1834 		} else {
1835 			if (yych <= 'n') {
1836 				if (yych <= 'i') goto yy151;
1837 				goto yy113;
1838 			} else {
1839 				if (yych <= 'o') goto yy152;
1840 				if (yych <= 'z') goto yy113;
1841 				goto yy18;
1842 			}
1843 		}
1844 	}
1845 yy29:
1846 	YYDEBUG(29, *YYCURSOR);
1847 	yych = *++YYCURSOR;
1848 	if (yych <= 'O') {
1849 		if (yych <= 'D') {
1850 			if (yych == ')') goto yy108;
1851 			if (yych <= '@') goto yy18;
1852 			goto yy109;
1853 		} else {
1854 			if (yych <= 'H') {
1855 				if (yych <= 'E') goto yy153;
1856 				goto yy109;
1857 			} else {
1858 				if (yych <= 'I') goto yy154;
1859 				if (yych <= 'N') goto yy109;
1860 				goto yy155;
1861 			}
1862 		}
1863 	} else {
1864 		if (yych <= 'h') {
1865 			if (yych <= '`') {
1866 				if (yych <= 'Z') goto yy109;
1867 				goto yy18;
1868 			} else {
1869 				if (yych == 'e') goto yy156;
1870 				goto yy113;
1871 			}
1872 		} else {
1873 			if (yych <= 'n') {
1874 				if (yych <= 'i') goto yy157;
1875 				goto yy113;
1876 			} else {
1877 				if (yych <= 'o') goto yy158;
1878 				if (yych <= 'z') goto yy113;
1879 				goto yy18;
1880 			}
1881 		}
1882 	}
1883 yy30:
1884 	YYDEBUG(30, *YYCURSOR);
1885 	yych = *++YYCURSOR;
1886 	if (yych <= 'C') {
1887 		if (yych <= ')') {
1888 			if (yych <= '(') goto yy18;
1889 			goto yy108;
1890 		} else {
1891 			if (yych <= '@') goto yy18;
1892 			if (yych <= 'B') goto yy109;
1893 			goto yy159;
1894 		}
1895 	} else {
1896 		if (yych <= 'b') {
1897 			if (yych <= 'Z') goto yy109;
1898 			if (yych <= '`') goto yy18;
1899 			goto yy113;
1900 		} else {
1901 			if (yych <= 'c') goto yy160;
1902 			if (yych <= 'z') goto yy113;
1903 			goto yy18;
1904 		}
1905 	}
1906 yy31:
1907 	YYDEBUG(31, *YYCURSOR);
1908 	yych = *++YYCURSOR;
1909 	if (yych <= 'R') {
1910 		if (yych <= ')') {
1911 			if (yych <= '(') goto yy18;
1912 			goto yy108;
1913 		} else {
1914 			if (yych <= '@') goto yy18;
1915 			if (yych <= 'Q') goto yy109;
1916 			goto yy161;
1917 		}
1918 	} else {
1919 		if (yych <= 'q') {
1920 			if (yych <= 'Z') goto yy109;
1921 			if (yych <= '`') goto yy18;
1922 			goto yy113;
1923 		} else {
1924 			if (yych <= 'r') goto yy162;
1925 			if (yych <= 'z') goto yy113;
1926 			goto yy18;
1927 		}
1928 	}
1929 yy32:
1930 	YYDEBUG(32, *YYCURSOR);
1931 	yych = *++YYCURSOR;
1932 	if (yych <= 'U') {
1933 		if (yych <= 'D') {
1934 			if (yych <= ')') {
1935 				if (yych <= '(') goto yy18;
1936 				goto yy108;
1937 			} else {
1938 				if (yych <= '@') goto yy18;
1939 				if (yych <= 'A') goto yy163;
1940 				goto yy109;
1941 			}
1942 		} else {
1943 			if (yych <= 'H') {
1944 				if (yych <= 'E') goto yy164;
1945 				goto yy109;
1946 			} else {
1947 				if (yych <= 'I') goto yy165;
1948 				if (yych <= 'T') goto yy109;
1949 				goto yy149;
1950 			}
1951 		}
1952 	} else {
1953 		if (yych <= 'e') {
1954 			if (yych <= '`') {
1955 				if (yych <= 'Z') goto yy109;
1956 				goto yy18;
1957 			} else {
1958 				if (yych <= 'a') goto yy166;
1959 				if (yych <= 'd') goto yy113;
1960 				goto yy167;
1961 			}
1962 		} else {
1963 			if (yych <= 't') {
1964 				if (yych == 'i') goto yy168;
1965 				goto yy113;
1966 			} else {
1967 				if (yych <= 'u') goto yy152;
1968 				if (yych <= 'z') goto yy113;
1969 				goto yy18;
1970 			}
1971 		}
1972 	}
1973 yy33:
1974 	YYDEBUG(33, *YYCURSOR);
1975 	yyaccept = 2;
1976 	yych = *(YYMARKER = ++YYCURSOR);
1977 	switch (yych) {
1978 	case ')':	goto yy108;
1979 	case '0':
1980 	case '1':	goto yy169;
1981 	case '2':	goto yy170;
1982 	case '3':
1983 	case '4':
1984 	case '5':
1985 	case '6':
1986 	case '7':
1987 	case '8':
1988 	case '9':	goto yy171;
1989 	case 'A':
1990 	case 'B':
1991 	case 'C':
1992 	case 'D':
1993 	case 'F':
1994 	case 'G':
1995 	case 'I':
1996 	case 'J':
1997 	case 'K':
1998 	case 'L':
1999 	case 'M':
2000 	case 'N':
2001 	case 'P':
2002 	case 'Q':
2003 	case 'R':
2004 	case 'S':
2005 	case 'T':
2006 	case 'V':
2007 	case 'X':
2008 	case 'Y':
2009 	case 'Z':	goto yy109;
2010 	case 'E':	goto yy154;
2011 	case 'H':	goto yy172;
2012 	case 'O':	goto yy173;
2013 	case 'U':	goto yy174;
2014 	case 'W':	goto yy175;
2015 	case 'a':
2016 	case 'b':
2017 	case 'c':
2018 	case 'd':
2019 	case 'f':
2020 	case 'g':
2021 	case 'i':
2022 	case 'j':
2023 	case 'k':
2024 	case 'l':
2025 	case 'm':
2026 	case 'n':
2027 	case 'p':
2028 	case 'q':
2029 	case 'r':
2030 	case 's':
2031 	case 't':
2032 	case 'v':
2033 	case 'x':
2034 	case 'y':
2035 	case 'z':	goto yy113;
2036 	case 'e':	goto yy157;
2037 	case 'h':	goto yy176;
2038 	case 'o':	goto yy177;
2039 	case 'u':	goto yy178;
2040 	case 'w':	goto yy179;
2041 	default:	goto yy18;
2042 	}
2043 yy34:
2044 	YYDEBUG(34, *YYCURSOR);
2045 	yyaccept = 2;
2046 	yych = *(YYMARKER = ++YYCURSOR);
2047 	if (yych <= '.') {
2048 		if (yych <= ' ') {
2049 			if (yych == '\t') goto yy135;
2050 			if (yych <= 0x1F) goto yy18;
2051 			goto yy135;
2052 		} else {
2053 			if (yych == ')') goto yy108;
2054 			if (yych <= ',') goto yy18;
2055 			goto yy135;
2056 		}
2057 	} else {
2058 		if (yych <= 'H') {
2059 			if (yych <= '/') goto yy18;
2060 			if (yych <= '9') goto yy135;
2061 			if (yych <= '@') goto yy18;
2062 			goto yy109;
2063 		} else {
2064 			if (yych <= 'Z') {
2065 				if (yych <= 'I') goto yy180;
2066 				goto yy109;
2067 			} else {
2068 				if (yych <= '`') goto yy18;
2069 				if (yych <= 'z') goto yy113;
2070 				goto yy18;
2071 			}
2072 		}
2073 	}
2074 yy35:
2075 	YYDEBUG(35, *YYCURSOR);
2076 	yych = *++YYCURSOR;
2077 	if (yych <= 'E') {
2078 		if (yych <= ')') {
2079 			if (yych <= '(') goto yy18;
2080 			goto yy108;
2081 		} else {
2082 			if (yych <= '@') goto yy18;
2083 			if (yych <= 'D') goto yy109;
2084 			goto yy181;
2085 		}
2086 	} else {
2087 		if (yych <= 'd') {
2088 			if (yych <= 'Z') goto yy109;
2089 			if (yych <= '`') goto yy18;
2090 			goto yy113;
2091 		} else {
2092 			if (yych <= 'e') goto yy182;
2093 			if (yych <= 'z') goto yy113;
2094 			goto yy18;
2095 		}
2096 	}
2097 yy36:
2098 	YYDEBUG(36, *YYCURSOR);
2099 	yyaccept = 2;
2100 	yych = *(YYMARKER = ++YYCURSOR);
2101 	if (yych <= '.') {
2102 		if (yych <= ' ') {
2103 			if (yych == '\t') goto yy135;
2104 			if (yych <= 0x1F) goto yy18;
2105 			goto yy135;
2106 		} else {
2107 			if (yych == ')') goto yy108;
2108 			if (yych <= ',') goto yy18;
2109 			goto yy135;
2110 		}
2111 	} else {
2112 		if (yych <= 'H') {
2113 			if (yych <= '/') goto yy18;
2114 			if (yych <= '9') goto yy135;
2115 			if (yych <= '@') goto yy18;
2116 			goto yy109;
2117 		} else {
2118 			if (yych <= 'Z') {
2119 				if (yych <= 'I') goto yy139;
2120 				goto yy109;
2121 			} else {
2122 				if (yych <= '`') goto yy18;
2123 				if (yych <= 'z') goto yy113;
2124 				goto yy18;
2125 			}
2126 		}
2127 	}
2128 yy37:
2129 	YYDEBUG(37, *YYCURSOR);
2130 	yych = *++YYCURSOR;
2131 	if (yych <= 'E') {
2132 		if (yych <= ')') {
2133 			if (yych <= '(') goto yy18;
2134 			goto yy108;
2135 		} else {
2136 			if (yych <= '@') goto yy18;
2137 			if (yych <= 'D') goto yy109;
2138 			goto yy183;
2139 		}
2140 	} else {
2141 		if (yych <= 'd') {
2142 			if (yych <= 'Z') goto yy109;
2143 			if (yych <= '`') goto yy18;
2144 			goto yy113;
2145 		} else {
2146 			if (yych <= 'e') goto yy184;
2147 			if (yych <= 'z') goto yy113;
2148 			goto yy18;
2149 		}
2150 	}
2151 yy38:
2152 	YYDEBUG(38, *YYCURSOR);
2153 	yych = *++YYCURSOR;
2154 	if (yych <= 'U') {
2155 		if (yych <= 'F') {
2156 			if (yych == ')') goto yy108;
2157 			if (yych <= '@') goto yy18;
2158 			goto yy109;
2159 		} else {
2160 			if (yych <= 'O') {
2161 				if (yych <= 'G') goto yy110;
2162 				goto yy109;
2163 			} else {
2164 				if (yych <= 'P') goto yy111;
2165 				if (yych <= 'T') goto yy109;
2166 				goto yy112;
2167 			}
2168 		}
2169 	} else {
2170 		if (yych <= 'o') {
2171 			if (yych <= '`') {
2172 				if (yych <= 'Z') goto yy109;
2173 				goto yy18;
2174 			} else {
2175 				if (yych == 'g') goto yy110;
2176 				goto yy109;
2177 			}
2178 		} else {
2179 			if (yych <= 't') {
2180 				if (yych <= 'p') goto yy111;
2181 				goto yy109;
2182 			} else {
2183 				if (yych <= 'u') goto yy112;
2184 				if (yych <= 'z') goto yy109;
2185 				goto yy18;
2186 			}
2187 		}
2188 	}
2189 yy39:
2190 	YYDEBUG(39, *YYCURSOR);
2191 	yych = *++YYCURSOR;
2192 	if (yych <= 'A') {
2193 		if (yych == ')') goto yy108;
2194 		if (yych <= '@') goto yy18;
2195 		goto yy117;
2196 	} else {
2197 		if (yych <= '`') {
2198 			if (yych <= 'Z') goto yy109;
2199 			goto yy18;
2200 		} else {
2201 			if (yych <= 'a') goto yy117;
2202 			if (yych <= 'z') goto yy109;
2203 			goto yy18;
2204 		}
2205 	}
2206 yy40:
2207 	YYDEBUG(40, *YYCURSOR);
2208 	yych = *++YYCURSOR;
2209 	if (yych <= '@') {
2210 		if (yych == ')') goto yy108;
2211 		goto yy18;
2212 	} else {
2213 		if (yych <= 'Z') goto yy109;
2214 		if (yych <= '`') goto yy18;
2215 		if (yych <= 'z') goto yy109;
2216 		goto yy18;
2217 	}
2218 yy41:
2219 	YYDEBUG(41, *YYCURSOR);
2220 	yych = *++YYCURSOR;
2221 	if (yych <= 'E') {
2222 		if (yych <= ')') {
2223 			if (yych <= '(') goto yy18;
2224 			goto yy108;
2225 		} else {
2226 			if (yych <= '@') goto yy18;
2227 			if (yych <= 'D') goto yy109;
2228 			goto yy119;
2229 		}
2230 	} else {
2231 		if (yych <= 'd') {
2232 			if (yych <= 'Z') goto yy109;
2233 			if (yych <= '`') goto yy18;
2234 			goto yy109;
2235 		} else {
2236 			if (yych <= 'e') goto yy119;
2237 			if (yych <= 'z') goto yy109;
2238 			goto yy18;
2239 		}
2240 	}
2241 yy42:
2242 	YYDEBUG(42, *YYCURSOR);
2243 	yych = *++YYCURSOR;
2244 	if (yych <= 'L') {
2245 		if (yych <= '@') {
2246 			if (yych == ')') goto yy108;
2247 			goto yy18;
2248 		} else {
2249 			if (yych == 'I') goto yy121;
2250 			if (yych <= 'K') goto yy109;
2251 			goto yy122;
2252 		}
2253 	} else {
2254 		if (yych <= 'i') {
2255 			if (yych <= 'Z') goto yy109;
2256 			if (yych <= '`') goto yy18;
2257 			if (yych <= 'h') goto yy109;
2258 			goto yy121;
2259 		} else {
2260 			if (yych == 'l') goto yy122;
2261 			if (yych <= 'z') goto yy109;
2262 			goto yy18;
2263 		}
2264 	}
2265 yy43:
2266 	YYDEBUG(43, *YYCURSOR);
2267 	yych = *++YYCURSOR;
2268 	if (yych <= 'R') {
2269 		if (yych <= 'E') {
2270 			if (yych <= ')') {
2271 				if (yych <= '(') goto yy18;
2272 				goto yy108;
2273 			} else {
2274 				if (yych <= '@') goto yy18;
2275 				if (yych <= 'D') goto yy109;
2276 				goto yy125;
2277 			}
2278 		} else {
2279 			if (yych <= 'N') {
2280 				if (yych == 'I') goto yy126;
2281 				goto yy109;
2282 			} else {
2283 				if (yych <= 'O') goto yy127;
2284 				if (yych <= 'Q') goto yy109;
2285 				goto yy128;
2286 			}
2287 		}
2288 	} else {
2289 		if (yych <= 'i') {
2290 			if (yych <= 'd') {
2291 				if (yych <= 'Z') goto yy109;
2292 				if (yych <= '`') goto yy18;
2293 				goto yy109;
2294 			} else {
2295 				if (yych <= 'e') goto yy125;
2296 				if (yych <= 'h') goto yy109;
2297 				goto yy126;
2298 			}
2299 		} else {
2300 			if (yych <= 'q') {
2301 				if (yych == 'o') goto yy127;
2302 				goto yy109;
2303 			} else {
2304 				if (yych <= 'r') goto yy128;
2305 				if (yych <= 'z') goto yy109;
2306 				goto yy18;
2307 			}
2308 		}
2309 	}
2310 yy44:
2311 	YYDEBUG(44, *YYCURSOR);
2312 	yych = *++YYCURSOR;
2313 	if (yych <= 'U') {
2314 		if (yych <= '@') {
2315 			if (yych == ')') goto yy108;
2316 			goto yy18;
2317 		} else {
2318 			if (yych <= 'A') goto yy141;
2319 			if (yych <= 'T') goto yy109;
2320 			goto yy142;
2321 		}
2322 	} else {
2323 		if (yych <= 'a') {
2324 			if (yych <= 'Z') goto yy109;
2325 			if (yych <= '`') goto yy18;
2326 			goto yy141;
2327 		} else {
2328 			if (yych == 'u') goto yy142;
2329 			if (yych <= 'z') goto yy109;
2330 			goto yy18;
2331 		}
2332 	}
2333 yy45:
2334 	YYDEBUG(45, *YYCURSOR);
2335 	yych = *++YYCURSOR;
2336 	if (yych <= 'A') {
2337 		if (yych == ')') goto yy108;
2338 		if (yych <= '@') goto yy18;
2339 		goto yy145;
2340 	} else {
2341 		if (yych <= '`') {
2342 			if (yych <= 'Z') goto yy109;
2343 			goto yy18;
2344 		} else {
2345 			if (yych <= 'a') goto yy145;
2346 			if (yych <= 'z') goto yy109;
2347 			goto yy18;
2348 		}
2349 	}
2350 yy46:
2351 	YYDEBUG(46, *YYCURSOR);
2352 	yych = *++YYCURSOR;
2353 	if (yych <= 'O') {
2354 		if (yych <= 'A') {
2355 			if (yych == ')') goto yy108;
2356 			if (yych <= '@') goto yy18;
2357 			goto yy147;
2358 		} else {
2359 			if (yych == 'I') goto yy148;
2360 			if (yych <= 'N') goto yy109;
2361 			goto yy149;
2362 		}
2363 	} else {
2364 		if (yych <= 'h') {
2365 			if (yych <= 'Z') goto yy109;
2366 			if (yych <= '`') goto yy18;
2367 			if (yych <= 'a') goto yy147;
2368 			goto yy109;
2369 		} else {
2370 			if (yych <= 'n') {
2371 				if (yych <= 'i') goto yy148;
2372 				goto yy109;
2373 			} else {
2374 				if (yych <= 'o') goto yy149;
2375 				if (yych <= 'z') goto yy109;
2376 				goto yy18;
2377 			}
2378 		}
2379 	}
2380 yy47:
2381 	YYDEBUG(47, *YYCURSOR);
2382 	yych = *++YYCURSOR;
2383 	if (yych <= 'O') {
2384 		if (yych <= 'D') {
2385 			if (yych == ')') goto yy108;
2386 			if (yych <= '@') goto yy18;
2387 			goto yy109;
2388 		} else {
2389 			if (yych <= 'H') {
2390 				if (yych <= 'E') goto yy153;
2391 				goto yy109;
2392 			} else {
2393 				if (yych <= 'I') goto yy154;
2394 				if (yych <= 'N') goto yy109;
2395 				goto yy155;
2396 			}
2397 		}
2398 	} else {
2399 		if (yych <= 'h') {
2400 			if (yych <= '`') {
2401 				if (yych <= 'Z') goto yy109;
2402 				goto yy18;
2403 			} else {
2404 				if (yych == 'e') goto yy153;
2405 				goto yy109;
2406 			}
2407 		} else {
2408 			if (yych <= 'n') {
2409 				if (yych <= 'i') goto yy154;
2410 				goto yy109;
2411 			} else {
2412 				if (yych <= 'o') goto yy155;
2413 				if (yych <= 'z') goto yy109;
2414 				goto yy18;
2415 			}
2416 		}
2417 	}
2418 yy48:
2419 	YYDEBUG(48, *YYCURSOR);
2420 	yych = *++YYCURSOR;
2421 	if (yych <= 'C') {
2422 		if (yych <= ')') {
2423 			if (yych <= '(') goto yy18;
2424 			goto yy108;
2425 		} else {
2426 			if (yych <= '@') goto yy18;
2427 			if (yych <= 'B') goto yy109;
2428 			goto yy159;
2429 		}
2430 	} else {
2431 		if (yych <= 'b') {
2432 			if (yych <= 'Z') goto yy109;
2433 			if (yych <= '`') goto yy18;
2434 			goto yy109;
2435 		} else {
2436 			if (yych <= 'c') goto yy159;
2437 			if (yych <= 'z') goto yy109;
2438 			goto yy18;
2439 		}
2440 	}
2441 yy49:
2442 	YYDEBUG(49, *YYCURSOR);
2443 	yych = *++YYCURSOR;
2444 	if (yych <= 'R') {
2445 		if (yych <= ')') {
2446 			if (yych <= '(') goto yy18;
2447 			goto yy108;
2448 		} else {
2449 			if (yych <= '@') goto yy18;
2450 			if (yych <= 'Q') goto yy109;
2451 			goto yy161;
2452 		}
2453 	} else {
2454 		if (yych <= 'q') {
2455 			if (yych <= 'Z') goto yy109;
2456 			if (yych <= '`') goto yy18;
2457 			goto yy109;
2458 		} else {
2459 			if (yych <= 'r') goto yy161;
2460 			if (yych <= 'z') goto yy109;
2461 			goto yy18;
2462 		}
2463 	}
2464 yy50:
2465 	YYDEBUG(50, *YYCURSOR);
2466 	yych = *++YYCURSOR;
2467 	if (yych <= 'U') {
2468 		if (yych <= 'D') {
2469 			if (yych <= ')') {
2470 				if (yych <= '(') goto yy18;
2471 				goto yy108;
2472 			} else {
2473 				if (yych <= '@') goto yy18;
2474 				if (yych <= 'A') goto yy163;
2475 				goto yy109;
2476 			}
2477 		} else {
2478 			if (yych <= 'H') {
2479 				if (yych <= 'E') goto yy164;
2480 				goto yy109;
2481 			} else {
2482 				if (yych <= 'I') goto yy165;
2483 				if (yych <= 'T') goto yy109;
2484 				goto yy149;
2485 			}
2486 		}
2487 	} else {
2488 		if (yych <= 'e') {
2489 			if (yych <= '`') {
2490 				if (yych <= 'Z') goto yy109;
2491 				goto yy18;
2492 			} else {
2493 				if (yych <= 'a') goto yy163;
2494 				if (yych <= 'd') goto yy109;
2495 				goto yy164;
2496 			}
2497 		} else {
2498 			if (yych <= 't') {
2499 				if (yych == 'i') goto yy165;
2500 				goto yy109;
2501 			} else {
2502 				if (yych <= 'u') goto yy149;
2503 				if (yych <= 'z') goto yy109;
2504 				goto yy18;
2505 			}
2506 		}
2507 	}
2508 yy51:
2509 	YYDEBUG(51, *YYCURSOR);
2510 	yyaccept = 2;
2511 	yych = *(YYMARKER = ++YYCURSOR);
2512 	switch (yych) {
2513 	case ')':	goto yy108;
2514 	case '0':
2515 	case '1':	goto yy169;
2516 	case '2':	goto yy170;
2517 	case '3':
2518 	case '4':
2519 	case '5':
2520 	case '6':
2521 	case '7':
2522 	case '8':
2523 	case '9':	goto yy171;
2524 	case 'A':
2525 	case 'B':
2526 	case 'C':
2527 	case 'D':
2528 	case 'F':
2529 	case 'G':
2530 	case 'I':
2531 	case 'J':
2532 	case 'K':
2533 	case 'L':
2534 	case 'M':
2535 	case 'N':
2536 	case 'P':
2537 	case 'Q':
2538 	case 'R':
2539 	case 'S':
2540 	case 'T':
2541 	case 'V':
2542 	case 'X':
2543 	case 'Y':
2544 	case 'Z':
2545 	case 'a':
2546 	case 'b':
2547 	case 'c':
2548 	case 'd':
2549 	case 'f':
2550 	case 'g':
2551 	case 'i':
2552 	case 'j':
2553 	case 'k':
2554 	case 'l':
2555 	case 'm':
2556 	case 'n':
2557 	case 'p':
2558 	case 'q':
2559 	case 'r':
2560 	case 's':
2561 	case 't':
2562 	case 'v':
2563 	case 'x':
2564 	case 'y':
2565 	case 'z':	goto yy109;
2566 	case 'E':
2567 	case 'e':	goto yy154;
2568 	case 'H':
2569 	case 'h':	goto yy172;
2570 	case 'O':
2571 	case 'o':	goto yy173;
2572 	case 'U':
2573 	case 'u':	goto yy174;
2574 	case 'W':
2575 	case 'w':	goto yy175;
2576 	default:	goto yy18;
2577 	}
2578 yy52:
2579 	YYDEBUG(52, *YYCURSOR);
2580 	yych = *++YYCURSOR;
2581 	if (yych <= 'E') {
2582 		if (yych <= ')') {
2583 			if (yych <= '(') goto yy18;
2584 			goto yy108;
2585 		} else {
2586 			if (yych <= '@') goto yy18;
2587 			if (yych <= 'D') goto yy109;
2588 			goto yy181;
2589 		}
2590 	} else {
2591 		if (yych <= 'd') {
2592 			if (yych <= 'Z') goto yy109;
2593 			if (yych <= '`') goto yy18;
2594 			goto yy109;
2595 		} else {
2596 			if (yych <= 'e') goto yy181;
2597 			if (yych <= 'z') goto yy109;
2598 			goto yy18;
2599 		}
2600 	}
2601 yy53:
2602 	YYDEBUG(53, *YYCURSOR);
2603 	yych = *++YYCURSOR;
2604 	if (yych <= 'E') {
2605 		if (yych <= ')') {
2606 			if (yych <= '(') goto yy18;
2607 			goto yy108;
2608 		} else {
2609 			if (yych <= '@') goto yy18;
2610 			if (yych <= 'D') goto yy109;
2611 			goto yy183;
2612 		}
2613 	} else {
2614 		if (yych <= 'd') {
2615 			if (yych <= 'Z') goto yy109;
2616 			if (yych <= '`') goto yy18;
2617 			goto yy109;
2618 		} else {
2619 			if (yych <= 'e') goto yy183;
2620 			if (yych <= 'z') goto yy109;
2621 			goto yy18;
2622 		}
2623 	}
2624 yy54:
2625 	YYDEBUG(54, *YYCURSOR);
2626 	++YYCURSOR;
2627 	if ((YYLIMIT - YYCURSOR) < 24) YYFILL(24);
2628 	yych = *YYCURSOR;
2629 	YYDEBUG(55, *YYCURSOR);
2630 	if (yybm[0+yych] & 2) {
2631 		goto yy54;
2632 	}
2633 	if (yych <= '/') goto yy56;
2634 	if (yych <= '9') goto yy57;
2635 yy56:
2636 	YYDEBUG(56, *YYCURSOR);
2637 	YYCURSOR = YYMARKER;
2638 	if (yyaccept <= 16) {
2639 		if (yyaccept <= 8) {
2640 			if (yyaccept <= 4) {
2641 				if (yyaccept <= 2) {
2642 					if (yyaccept <= 1) {
2643 						if (yyaccept == 0) {
2644 							goto yy7;
2645 						} else {
2646 							goto yy5;
2647 						}
2648 					} else {
2649 						goto yy18;
2650 					}
2651 				} else {
2652 					if (yyaccept == 3) {
2653 						goto yy77;
2654 					} else {
2655 						goto yy107;
2656 					}
2657 				}
2658 			} else {
2659 				if (yyaccept <= 6) {
2660 					if (yyaccept == 5) {
2661 						goto yy209;
2662 					} else {
2663 						goto yy214;
2664 					}
2665 				} else {
2666 					if (yyaccept == 7) {
2667 						goto yy250;
2668 					} else {
2669 						goto yy280;
2670 					}
2671 				}
2672 			}
2673 		} else {
2674 			if (yyaccept <= 12) {
2675 				if (yyaccept <= 10) {
2676 					if (yyaccept == 9) {
2677 						goto yy278;
2678 					} else {
2679 						goto yy300;
2680 					}
2681 				} else {
2682 					if (yyaccept == 11) {
2683 						goto yy310;
2684 					} else {
2685 						goto yy336;
2686 					}
2687 				}
2688 			} else {
2689 				if (yyaccept <= 14) {
2690 					if (yyaccept == 13) {
2691 						goto yy402;
2692 					} else {
2693 						goto yy404;
2694 					}
2695 				} else {
2696 					if (yyaccept == 15) {
2697 						goto yy506;
2698 					} else {
2699 						goto yy547;
2700 					}
2701 				}
2702 			}
2703 		}
2704 	} else {
2705 		if (yyaccept <= 25) {
2706 			if (yyaccept <= 21) {
2707 				if (yyaccept <= 19) {
2708 					if (yyaccept <= 18) {
2709 						if (yyaccept == 17) {
2710 							goto yy699;
2711 						} else {
2712 							goto yy714;
2713 						}
2714 					} else {
2715 						goto yy727;
2716 					}
2717 				} else {
2718 					if (yyaccept == 20) {
2719 						goto yy750;
2720 					} else {
2721 						goto yy818;
2722 					}
2723 				}
2724 			} else {
2725 				if (yyaccept <= 23) {
2726 					if (yyaccept == 22) {
2727 						goto yy890;
2728 					} else {
2729 						goto yy580;
2730 					}
2731 				} else {
2732 					if (yyaccept == 24) {
2733 						goto yy906;
2734 					} else {
2735 						goto yy940;
2736 					}
2737 				}
2738 			}
2739 		} else {
2740 			if (yyaccept <= 29) {
2741 				if (yyaccept <= 27) {
2742 					if (yyaccept == 26) {
2743 						goto yy978;
2744 					} else {
2745 						goto yy996;
2746 					}
2747 				} else {
2748 					if (yyaccept == 28) {
2749 						goto yy1001;
2750 					} else {
2751 						goto yy1055;
2752 					}
2753 				}
2754 			} else {
2755 				if (yyaccept <= 31) {
2756 					if (yyaccept == 30) {
2757 						goto yy1092;
2758 					} else {
2759 						goto yy1115;
2760 					}
2761 				} else {
2762 					if (yyaccept == 32) {
2763 						goto yy1118;
2764 					} else {
2765 						goto yy1238;
2766 					}
2767 				}
2768 			}
2769 		}
2770 	}
2771 yy57:
2772 	YYDEBUG(57, *YYCURSOR);
2773 	yych = *++YYCURSOR;
2774 	if (yych <= '/') goto yy186;
2775 	if (yych <= '9') goto yy187;
2776 	goto yy186;
2777 yy58:
2778 	YYDEBUG(58, *YYCURSOR);
2779 	++YYCURSOR;
2780 	if ((YYLIMIT - YYCURSOR) < 24) YYFILL(24);
2781 	yych = *YYCURSOR;
2782 	YYDEBUG(59, *YYCURSOR);
2783 	if (yybm[0+yych] & 2) {
2784 		goto yy54;
2785 	}
2786 	if (yych <= ',') {
2787 		if (yych == '+') goto yy58;
2788 		goto yy56;
2789 	} else {
2790 		if (yych <= '-') goto yy58;
2791 		if (yych <= '/') goto yy56;
2792 		if (yych <= '9') goto yy57;
2793 		goto yy56;
2794 	}
2795 yy60:
2796 	YYDEBUG(60, *YYCURSOR);
2797 	yyaccept = 2;
2798 	yych = *(YYMARKER = ++YYCURSOR);
2799 	if (yych <= 'W') {
2800 		if (yych <= 'D') {
2801 			if (yych <= ' ') {
2802 				if (yych == '\t') goto yy186;
2803 				if (yych <= 0x1F) goto yy18;
2804 				goto yy186;
2805 			} else {
2806 				if (yych <= '9') {
2807 					if (yych <= '/') goto yy18;
2808 					goto yy192;
2809 				} else {
2810 					if (yych <= ':') goto yy193;
2811 					if (yych <= 'C') goto yy18;
2812 					goto yy186;
2813 				}
2814 			}
2815 		} else {
2816 			if (yych <= 'L') {
2817 				if (yych <= 'F') {
2818 					if (yych <= 'E') goto yy18;
2819 					goto yy186;
2820 				} else {
2821 					if (yych == 'H') goto yy186;
2822 					goto yy18;
2823 				}
2824 			} else {
2825 				if (yych <= 'R') {
2826 					if (yych <= 'M') goto yy186;
2827 					goto yy18;
2828 				} else {
2829 					if (yych == 'V') goto yy18;
2830 					goto yy186;
2831 				}
2832 			}
2833 		}
2834 	} else {
2835 		if (yych <= 'l') {
2836 			if (yych <= 'd') {
2837 				if (yych == 'Y') goto yy186;
2838 				if (yych <= 'c') goto yy18;
2839 				goto yy186;
2840 			} else {
2841 				if (yych <= 'f') {
2842 					if (yych <= 'e') goto yy18;
2843 					goto yy186;
2844 				} else {
2845 					if (yych == 'h') goto yy186;
2846 					goto yy18;
2847 				}
2848 			}
2849 		} else {
2850 			if (yych <= 'w') {
2851 				if (yych <= 'r') {
2852 					if (yych <= 'm') goto yy186;
2853 					goto yy18;
2854 				} else {
2855 					if (yych == 'v') goto yy18;
2856 					goto yy186;
2857 				}
2858 			} else {
2859 				if (yych <= 'y') {
2860 					if (yych <= 'x') goto yy18;
2861 					goto yy186;
2862 				} else {
2863 					if (yych == 0xC2) goto yy186;
2864 					goto yy18;
2865 				}
2866 			}
2867 		}
2868 	}
2869 yy61:
2870 	YYDEBUG(61, *YYCURSOR);
2871 	yyaccept = 2;
2872 	yych = *(YYMARKER = ++YYCURSOR);
2873 	if (yych <= 'V') {
2874 		if (yych <= 'C') {
2875 			if (yych <= '/') {
2876 				if (yych <= '\t') {
2877 					if (yych <= 0x08) goto yy18;
2878 					goto yy186;
2879 				} else {
2880 					if (yych == ' ') goto yy186;
2881 					goto yy18;
2882 				}
2883 			} else {
2884 				if (yych <= '5') {
2885 					if (yych <= '4') goto yy192;
2886 					goto yy194;
2887 				} else {
2888 					if (yych <= '9') goto yy195;
2889 					if (yych <= ':') goto yy193;
2890 					goto yy18;
2891 				}
2892 			}
2893 		} else {
2894 			if (yych <= 'H') {
2895 				if (yych <= 'E') {
2896 					if (yych <= 'D') goto yy186;
2897 					goto yy18;
2898 				} else {
2899 					if (yych == 'G') goto yy18;
2900 					goto yy186;
2901 				}
2902 			} else {
2903 				if (yych <= 'M') {
2904 					if (yych <= 'L') goto yy18;
2905 					goto yy186;
2906 				} else {
2907 					if (yych <= 'R') goto yy18;
2908 					if (yych <= 'U') goto yy186;
2909 					goto yy18;
2910 				}
2911 			}
2912 		}
2913 	} else {
2914 		if (yych <= 'l') {
2915 			if (yych <= 'd') {
2916 				if (yych <= 'X') {
2917 					if (yych <= 'W') goto yy186;
2918 					goto yy18;
2919 				} else {
2920 					if (yych <= 'Y') goto yy186;
2921 					if (yych <= 'c') goto yy18;
2922 					goto yy186;
2923 				}
2924 			} else {
2925 				if (yych <= 'f') {
2926 					if (yych <= 'e') goto yy18;
2927 					goto yy186;
2928 				} else {
2929 					if (yych == 'h') goto yy186;
2930 					goto yy18;
2931 				}
2932 			}
2933 		} else {
2934 			if (yych <= 'w') {
2935 				if (yych <= 'r') {
2936 					if (yych <= 'm') goto yy186;
2937 					goto yy18;
2938 				} else {
2939 					if (yych == 'v') goto yy18;
2940 					goto yy186;
2941 				}
2942 			} else {
2943 				if (yych <= 'y') {
2944 					if (yych <= 'x') goto yy18;
2945 					goto yy186;
2946 				} else {
2947 					if (yych == 0xC2) goto yy186;
2948 					goto yy18;
2949 				}
2950 			}
2951 		}
2952 	}
2953 yy62:
2954 	YYDEBUG(62, *YYCURSOR);
2955 	yyaccept = 2;
2956 	yych = *(YYMARKER = ++YYCURSOR);
2957 	if (yych <= 'V') {
2958 		if (yych <= 'C') {
2959 			if (yych <= ' ') {
2960 				if (yych == '\t') goto yy186;
2961 				if (yych <= 0x1F) goto yy18;
2962 				goto yy186;
2963 			} else {
2964 				if (yych <= '5') {
2965 					if (yych <= '/') goto yy18;
2966 					goto yy194;
2967 				} else {
2968 					if (yych <= '9') goto yy195;
2969 					if (yych <= ':') goto yy193;
2970 					goto yy18;
2971 				}
2972 			}
2973 		} else {
2974 			if (yych <= 'H') {
2975 				if (yych <= 'E') {
2976 					if (yych <= 'D') goto yy186;
2977 					goto yy18;
2978 				} else {
2979 					if (yych == 'G') goto yy18;
2980 					goto yy186;
2981 				}
2982 			} else {
2983 				if (yych <= 'M') {
2984 					if (yych <= 'L') goto yy18;
2985 					goto yy186;
2986 				} else {
2987 					if (yych <= 'R') goto yy18;
2988 					if (yych <= 'U') goto yy186;
2989 					goto yy18;
2990 				}
2991 			}
2992 		}
2993 	} else {
2994 		if (yych <= 'l') {
2995 			if (yych <= 'd') {
2996 				if (yych <= 'X') {
2997 					if (yych <= 'W') goto yy186;
2998 					goto yy18;
2999 				} else {
3000 					if (yych <= 'Y') goto yy186;
3001 					if (yych <= 'c') goto yy18;
3002 					goto yy186;
3003 				}
3004 			} else {
3005 				if (yych <= 'f') {
3006 					if (yych <= 'e') goto yy18;
3007 					goto yy186;
3008 				} else {
3009 					if (yych == 'h') goto yy186;
3010 					goto yy18;
3011 				}
3012 			}
3013 		} else {
3014 			if (yych <= 'w') {
3015 				if (yych <= 'r') {
3016 					if (yych <= 'm') goto yy186;
3017 					goto yy18;
3018 				} else {
3019 					if (yych == 'v') goto yy18;
3020 					goto yy186;
3021 				}
3022 			} else {
3023 				if (yych <= 'y') {
3024 					if (yych <= 'x') goto yy18;
3025 					goto yy186;
3026 				} else {
3027 					if (yych == 0xC2) goto yy186;
3028 					goto yy18;
3029 				}
3030 			}
3031 		}
3032 	}
3033 yy63:
3034 	YYDEBUG(63, *YYCURSOR);
3035 	yych = *++YYCURSOR;
3036 	if (yych <= '/') goto yy65;
3037 	if (yych <= '0') goto yy198;
3038 	if (yych <= '1') goto yy199;
3039 	if (yych <= '9') goto yy200;
3040 	goto yy65;
3041 yy64:
3042 	YYDEBUG(64, *YYCURSOR);
3043 	++YYCURSOR;
3044 	if ((YYLIMIT - YYCURSOR) < 13) YYFILL(13);
3045 	yych = *YYCURSOR;
3046 yy65:
3047 	YYDEBUG(65, *YYCURSOR);
3048 	if (yych <= 'W') {
3049 		if (yych <= 'G') {
3050 			if (yych <= '.') {
3051 				if (yych <= 0x1F) {
3052 					if (yych == '\t') goto yy64;
3053 					goto yy56;
3054 				} else {
3055 					if (yych <= ' ') goto yy64;
3056 					if (yych <= ',') goto yy56;
3057 					goto yy196;
3058 				}
3059 			} else {
3060 				if (yych <= 'C') {
3061 					if (yych == 'A') goto yy72;
3062 					goto yy56;
3063 				} else {
3064 					if (yych <= 'D') goto yy73;
3065 					if (yych == 'F') goto yy74;
3066 					goto yy56;
3067 				}
3068 			}
3069 		} else {
3070 			if (yych <= 'N') {
3071 				if (yych <= 'J') {
3072 					if (yych <= 'H') goto yy75;
3073 					if (yych <= 'I') goto yy76;
3074 					goto yy78;
3075 				} else {
3076 					if (yych <= 'L') goto yy56;
3077 					if (yych <= 'M') goto yy79;
3078 					goto yy80;
3079 				}
3080 			} else {
3081 				if (yych <= 'S') {
3082 					if (yych <= 'O') goto yy81;
3083 					if (yych <= 'R') goto yy56;
3084 					goto yy82;
3085 				} else {
3086 					if (yych <= 'T') goto yy83;
3087 					if (yych <= 'U') goto yy84;
3088 					if (yych <= 'V') goto yy85;
3089 					goto yy86;
3090 				}
3091 			}
3092 		}
3093 	} else {
3094 		if (yych <= 'l') {
3095 			if (yych <= 'd') {
3096 				if (yych <= '`') {
3097 					if (yych <= 'X') goto yy87;
3098 					if (yych <= 'Y') goto yy88;
3099 					goto yy56;
3100 				} else {
3101 					if (yych <= 'a') goto yy72;
3102 					if (yych <= 'c') goto yy56;
3103 					goto yy73;
3104 				}
3105 			} else {
3106 				if (yych <= 'g') {
3107 					if (yych == 'f') goto yy74;
3108 					goto yy56;
3109 				} else {
3110 					if (yych <= 'h') goto yy75;
3111 					if (yych == 'j') goto yy78;
3112 					goto yy56;
3113 				}
3114 			}
3115 		} else {
3116 			if (yych <= 'u') {
3117 				if (yych <= 'o') {
3118 					if (yych <= 'm') goto yy79;
3119 					if (yych <= 'n') goto yy80;
3120 					goto yy81;
3121 				} else {
3122 					if (yych <= 'r') goto yy56;
3123 					if (yych <= 's') goto yy82;
3124 					if (yych <= 't') goto yy83;
3125 					goto yy84;
3126 				}
3127 			} else {
3128 				if (yych <= 'x') {
3129 					if (yych == 'w') goto yy86;
3130 					goto yy56;
3131 				} else {
3132 					if (yych <= 'y') goto yy88;
3133 					if (yych == 0xC2) goto yy93;
3134 					goto yy56;
3135 				}
3136 			}
3137 		}
3138 	}
3139 yy66:
3140 	YYDEBUG(66, *YYCURSOR);
3141 	yych = *++YYCURSOR;
3142 	if (yych <= '/') goto yy197;
3143 	if (yych <= '0') goto yy201;
3144 	if (yych <= '1') goto yy202;
3145 	if (yych <= '9') goto yy203;
3146 	goto yy197;
3147 yy67:
3148 	YYDEBUG(67, *YYCURSOR);
3149 	yych = *++YYCURSOR;
3150 	if (yych <= '1') {
3151 		if (yych <= '/') goto yy197;
3152 		if (yych <= '0') goto yy208;
3153 		goto yy210;
3154 	} else {
3155 		if (yych <= '5') goto yy211;
3156 		if (yych <= '9') goto yy212;
3157 		goto yy197;
3158 	}
3159 yy68:
3160 	YYDEBUG(68, *YYCURSOR);
3161 	yych = *++YYCURSOR;
3162 	switch (yych) {
3163 	case '0':
3164 	case '1':
3165 	case '2':	goto yy213;
3166 	case '3':	goto yy215;
3167 	case '4':
3168 	case '5':
3169 	case '6':
3170 	case '7':
3171 	case '8':
3172 	case '9':	goto yy216;
3173 	case 'A':
3174 	case 'a':	goto yy217;
3175 	case 'D':
3176 	case 'd':	goto yy218;
3177 	case 'F':
3178 	case 'f':	goto yy219;
3179 	case 'J':
3180 	case 'j':	goto yy220;
3181 	case 'M':
3182 	case 'm':	goto yy221;
3183 	case 'N':
3184 	case 'n':	goto yy222;
3185 	case 'O':
3186 	case 'o':	goto yy223;
3187 	case 'S':
3188 	case 's':	goto yy224;
3189 	default:	goto yy56;
3190 	}
3191 yy69:
3192 	YYDEBUG(69, *YYCURSOR);
3193 	yych = *++YYCURSOR;
3194 	if (yych <= '9') {
3195 		if (yych <= '-') {
3196 			if (yych == '\t') goto yy63;
3197 			if (yych <= ',') goto yy65;
3198 			goto yy225;
3199 		} else {
3200 			if (yych <= '.') goto yy67;
3201 			if (yych <= '/') goto yy68;
3202 			if (yych <= '5') goto yy226;
3203 			goto yy227;
3204 		}
3205 	} else {
3206 		if (yych <= 'q') {
3207 			if (yych <= ':') goto yy71;
3208 			if (yych == 'n') goto yy89;
3209 			goto yy65;
3210 		} else {
3211 			if (yych <= 'r') goto yy90;
3212 			if (yych <= 's') goto yy91;
3213 			if (yych <= 't') goto yy92;
3214 			goto yy65;
3215 		}
3216 	}
3217 yy70:
3218 	YYDEBUG(70, *YYCURSOR);
3219 	yych = *++YYCURSOR;
3220 	if (yych <= '9') {
3221 		if (yych <= '-') {
3222 			if (yych == '\t') goto yy94;
3223 			if (yych <= ',') goto yy96;
3224 			goto yy225;
3225 		} else {
3226 			if (yych <= '.') goto yy97;
3227 			if (yych <= '/') goto yy68;
3228 			if (yych <= '5') goto yy226;
3229 			goto yy227;
3230 		}
3231 	} else {
3232 		if (yych <= 'q') {
3233 			if (yych <= ':') goto yy99;
3234 			if (yych == 'n') goto yy89;
3235 			goto yy96;
3236 		} else {
3237 			if (yych <= 'r') goto yy90;
3238 			if (yych <= 's') goto yy91;
3239 			if (yych <= 't') goto yy92;
3240 			goto yy96;
3241 		}
3242 	}
3243 yy71:
3244 	YYDEBUG(71, *YYCURSOR);
3245 	yych = *++YYCURSOR;
3246 	if (yych <= '/') goto yy56;
3247 	if (yych <= '5') goto yy228;
3248 	if (yych <= '9') goto yy229;
3249 	goto yy56;
3250 yy72:
3251 	YYDEBUG(72, *YYCURSOR);
3252 	yych = *++YYCURSOR;
3253 	if (yych <= 'U') {
3254 		if (yych == 'P') goto yy230;
3255 		if (yych <= 'T') goto yy56;
3256 		goto yy231;
3257 	} else {
3258 		if (yych <= 'p') {
3259 			if (yych <= 'o') goto yy56;
3260 			goto yy230;
3261 		} else {
3262 			if (yych == 'u') goto yy231;
3263 			goto yy56;
3264 		}
3265 	}
3266 yy73:
3267 	YYDEBUG(73, *YYCURSOR);
3268 	yych = *++YYCURSOR;
3269 	if (yych <= 'E') {
3270 		if (yych == 'A') goto yy232;
3271 		if (yych <= 'D') goto yy56;
3272 		goto yy233;
3273 	} else {
3274 		if (yych <= 'a') {
3275 			if (yych <= '`') goto yy56;
3276 			goto yy232;
3277 		} else {
3278 			if (yych == 'e') goto yy233;
3279 			goto yy56;
3280 		}
3281 	}
3282 yy74:
3283 	YYDEBUG(74, *YYCURSOR);
3284 	yych = *++YYCURSOR;
3285 	if (yych <= 'R') {
3286 		if (yych <= 'N') {
3287 			if (yych == 'E') goto yy234;
3288 			goto yy56;
3289 		} else {
3290 			if (yych <= 'O') goto yy235;
3291 			if (yych <= 'Q') goto yy56;
3292 			goto yy236;
3293 		}
3294 	} else {
3295 		if (yych <= 'n') {
3296 			if (yych == 'e') goto yy234;
3297 			goto yy56;
3298 		} else {
3299 			if (yych <= 'o') goto yy235;
3300 			if (yych == 'r') goto yy236;
3301 			goto yy56;
3302 		}
3303 	}
3304 yy75:
3305 	YYDEBUG(75, *YYCURSOR);
3306 	yych = *++YYCURSOR;
3307 	if (yych == 'O') goto yy237;
3308 	if (yych == 'o') goto yy237;
3309 	goto yy56;
3310 yy76:
3311 	YYDEBUG(76, *YYCURSOR);
3312 	yyaccept = 3;
3313 	yych = *(YYMARKER = ++YYCURSOR);
3314 	if (yych <= '/') {
3315 		if (yych <= 0x1F) {
3316 			if (yych == '\t') goto yy238;
3317 		} else {
3318 			if (yych <= ' ') goto yy238;
3319 			if (yych <= ',') goto yy77;
3320 			if (yych <= '.') goto yy238;
3321 		}
3322 	} else {
3323 		if (yych <= 'U') {
3324 			if (yych <= '9') goto yy240;
3325 			if (yych == 'I') goto yy242;
3326 		} else {
3327 			if (yych == 'W') goto yy77;
3328 			if (yych <= 'X') goto yy243;
3329 		}
3330 	}
3331 yy77:
3332 	YYDEBUG(77, *YYCURSOR);
3333 #line 1469 "parse_date.re"
3334 	{
3335 		DEBUG_OUTPUT("datenoyearrev");
3336 		TIMELIB_INIT;
3337 		TIMELIB_HAVE_DATE();
3338 		s->time->d = timelib_get_nr((char **) &ptr, 2);
3339 		timelib_skip_day_suffix((char **) &ptr);
3340 		s->time->m = timelib_get_month((char **) &ptr);
3341 		TIMELIB_DEINIT;
3342 		return TIMELIB_DATE_TEXT;
3343 	}
3344 #line 3345 "<stdout>"
3345 yy78:
3346 	YYDEBUG(78, *YYCURSOR);
3347 	yych = *++YYCURSOR;
3348 	if (yych <= 'U') {
3349 		if (yych == 'A') goto yy244;
3350 		if (yych <= 'T') goto yy56;
3351 		goto yy245;
3352 	} else {
3353 		if (yych <= 'a') {
3354 			if (yych <= '`') goto yy56;
3355 			goto yy244;
3356 		} else {
3357 			if (yych == 'u') goto yy245;
3358 			goto yy56;
3359 		}
3360 	}
3361 yy79:
3362 	YYDEBUG(79, *YYCURSOR);
3363 	yych = *++YYCURSOR;
3364 	if (yych <= 'S') {
3365 		if (yych <= 'I') {
3366 			if (yych == 'A') goto yy246;
3367 			if (yych <= 'H') goto yy56;
3368 			goto yy247;
3369 		} else {
3370 			if (yych == 'O') goto yy248;
3371 			if (yych <= 'R') goto yy56;
3372 			goto yy249;
3373 		}
3374 	} else {
3375 		if (yych <= 'i') {
3376 			if (yych == 'a') goto yy246;
3377 			if (yych <= 'h') goto yy56;
3378 			goto yy247;
3379 		} else {
3380 			if (yych <= 'o') {
3381 				if (yych <= 'n') goto yy56;
3382 				goto yy248;
3383 			} else {
3384 				if (yych == 's') goto yy249;
3385 				goto yy56;
3386 			}
3387 		}
3388 	}
3389 yy80:
3390 	YYDEBUG(80, *YYCURSOR);
3391 	yych = *++YYCURSOR;
3392 	if (yych == 'O') goto yy251;
3393 	if (yych == 'o') goto yy251;
3394 	goto yy56;
3395 yy81:
3396 	YYDEBUG(81, *YYCURSOR);
3397 	yych = *++YYCURSOR;
3398 	if (yych == 'C') goto yy252;
3399 	if (yych == 'c') goto yy252;
3400 	goto yy56;
3401 yy82:
3402 	YYDEBUG(82, *YYCURSOR);
3403 	yych = *++YYCURSOR;
3404 	if (yych <= 'U') {
3405 		if (yych <= 'D') {
3406 			if (yych == 'A') goto yy253;
3407 			goto yy56;
3408 		} else {
3409 			if (yych <= 'E') goto yy254;
3410 			if (yych <= 'T') goto yy56;
3411 			goto yy255;
3412 		}
3413 	} else {
3414 		if (yych <= 'd') {
3415 			if (yych == 'a') goto yy253;
3416 			goto yy56;
3417 		} else {
3418 			if (yych <= 'e') goto yy254;
3419 			if (yych == 'u') goto yy255;
3420 			goto yy56;
3421 		}
3422 	}
3423 yy83:
3424 	YYDEBUG(83, *YYCURSOR);
3425 	yych = *++YYCURSOR;
3426 	if (yych <= 'U') {
3427 		if (yych == 'H') goto yy256;
3428 		if (yych <= 'T') goto yy56;
3429 		goto yy257;
3430 	} else {
3431 		if (yych <= 'h') {
3432 			if (yych <= 'g') goto yy56;
3433 			goto yy256;
3434 		} else {
3435 			if (yych == 'u') goto yy257;
3436 			goto yy56;
3437 		}
3438 	}
3439 yy84:
3440 	YYDEBUG(84, *YYCURSOR);
3441 	yych = *++YYCURSOR;
3442 	if (yych == 'S') goto yy258;
3443 	if (yych == 's') goto yy258;
3444 	goto yy56;
3445 yy85:
3446 	YYDEBUG(85, *YYCURSOR);
3447 	yyaccept = 3;
3448 	yych = *(YYMARKER = ++YYCURSOR);
3449 	if (yych <= ',') {
3450 		if (yych <= '\t') {
3451 			if (yych <= 0x08) goto yy77;
3452 			goto yy238;
3453 		} else {
3454 			if (yych == ' ') goto yy238;
3455 			goto yy77;
3456 		}
3457 	} else {
3458 		if (yych <= '9') {
3459 			if (yych <= '.') goto yy238;
3460 			if (yych <= '/') goto yy77;
3461 			goto yy240;
3462 		} else {
3463 			if (yych == 'I') goto yy87;
3464 			goto yy77;
3465 		}
3466 	}
3467 yy86:
3468 	YYDEBUG(86, *YYCURSOR);
3469 	yych = *++YYCURSOR;
3470 	if (yych == 'E') goto yy259;
3471 	if (yych == 'e') goto yy259;
3472 	goto yy56;
3473 yy87:
3474 	YYDEBUG(87, *YYCURSOR);
3475 	yyaccept = 3;
3476 	yych = *(YYMARKER = ++YYCURSOR);
3477 	if (yych <= ',') {
3478 		if (yych <= '\t') {
3479 			if (yych <= 0x08) goto yy77;
3480 			goto yy238;
3481 		} else {
3482 			if (yych == ' ') goto yy238;
3483 			goto yy77;
3484 		}
3485 	} else {
3486 		if (yych <= '9') {
3487 			if (yych <= '.') goto yy238;
3488 			if (yych <= '/') goto yy77;
3489 			goto yy240;
3490 		} else {
3491 			if (yych == 'I') goto yy242;
3492 			goto yy77;
3493 		}
3494 	}
3495 yy88:
3496 	YYDEBUG(88, *YYCURSOR);
3497 	yych = *++YYCURSOR;
3498 	if (yych == 'E') goto yy260;
3499 	if (yych == 'e') goto yy260;
3500 	goto yy56;
3501 yy89:
3502 	YYDEBUG(89, *YYCURSOR);
3503 	yych = *++YYCURSOR;
3504 	if (yych <= 'c') {
3505 		if (yych == 'O') goto yy251;
3506 		goto yy56;
3507 	} else {
3508 		if (yych <= 'd') goto yy261;
3509 		if (yych == 'o') goto yy251;
3510 		goto yy56;
3511 	}
3512 yy90:
3513 	YYDEBUG(90, *YYCURSOR);
3514 	yych = *++YYCURSOR;
3515 	if (yych == 'd') goto yy261;
3516 	goto yy56;
3517 yy91:
3518 	YYDEBUG(91, *YYCURSOR);
3519 	yych = *++YYCURSOR;
3520 	if (yych <= '`') {
3521 		if (yych <= 'D') {
3522 			if (yych == 'A') goto yy253;
3523 			goto yy56;
3524 		} else {
3525 			if (yych <= 'E') goto yy254;
3526 			if (yych == 'U') goto yy255;
3527 			goto yy56;
3528 		}
3529 	} else {
3530 		if (yych <= 'e') {
3531 			if (yych <= 'a') goto yy253;
3532 			if (yych <= 'd') goto yy56;
3533 			goto yy254;
3534 		} else {
3535 			if (yych <= 's') goto yy56;
3536 			if (yych <= 't') goto yy261;
3537 			if (yych <= 'u') goto yy255;
3538 			goto yy56;
3539 		}
3540 	}
3541 yy92:
3542 	YYDEBUG(92, *YYCURSOR);
3543 	yych = *++YYCURSOR;
3544 	if (yych <= 'U') {
3545 		if (yych == 'H') goto yy256;
3546 		if (yych <= 'T') goto yy56;
3547 		goto yy257;
3548 	} else {
3549 		if (yych <= 'h') {
3550 			if (yych <= 'g') goto yy56;
3551 			goto yy262;
3552 		} else {
3553 			if (yych == 'u') goto yy257;
3554 			goto yy56;
3555 		}
3556 	}
3557 yy93:
3558 	YYDEBUG(93, *YYCURSOR);
3559 	yych = *++YYCURSOR;
3560 	if (yych == 0xB5) goto yy263;
3561 	goto yy56;
3562 yy94:
3563 	YYDEBUG(94, *YYCURSOR);
3564 	yych = *++YYCURSOR;
3565 	if (yych <= '/') goto yy96;
3566 	if (yych <= '0') goto yy198;
3567 	if (yych <= '1') goto yy199;
3568 	if (yych <= '9') goto yy200;
3569 	goto yy96;
3570 yy95:
3571 	YYDEBUG(95, *YYCURSOR);
3572 	++YYCURSOR;
3573 	if ((YYLIMIT - YYCURSOR) < 13) YYFILL(13);
3574 	yych = *YYCURSOR;
3575 yy96:
3576 	YYDEBUG(96, *YYCURSOR);
3577 	if (yych <= 'W') {
3578 		if (yych <= 'G') {
3579 			if (yych <= '.') {
3580 				if (yych <= 0x1F) {
3581 					if (yych == '\t') goto yy95;
3582 					goto yy56;
3583 				} else {
3584 					if (yych <= ' ') goto yy95;
3585 					if (yych <= ',') goto yy56;
3586 					goto yy196;
3587 				}
3588 			} else {
3589 				if (yych <= 'C') {
3590 					if (yych == 'A') goto yy100;
3591 					goto yy56;
3592 				} else {
3593 					if (yych <= 'D') goto yy73;
3594 					if (yych == 'F') goto yy74;
3595 					goto yy56;
3596 				}
3597 			}
3598 		} else {
3599 			if (yych <= 'O') {
3600 				if (yych <= 'J') {
3601 					if (yych <= 'H') goto yy75;
3602 					if (yych <= 'I') goto yy76;
3603 					goto yy78;
3604 				} else {
3605 					if (yych <= 'L') goto yy56;
3606 					if (yych <= 'M') goto yy79;
3607 					if (yych <= 'N') goto yy80;
3608 					goto yy81;
3609 				}
3610 			} else {
3611 				if (yych <= 'S') {
3612 					if (yych <= 'P') goto yy101;
3613 					if (yych <= 'R') goto yy56;
3614 					goto yy82;
3615 				} else {
3616 					if (yych <= 'T') goto yy83;
3617 					if (yych <= 'U') goto yy84;
3618 					if (yych <= 'V') goto yy85;
3619 					goto yy86;
3620 				}
3621 			}
3622 		}
3623 	} else {
3624 		if (yych <= 'm') {
3625 			if (yych <= 'e') {
3626 				if (yych <= '`') {
3627 					if (yych <= 'X') goto yy87;
3628 					if (yych <= 'Y') goto yy88;
3629 					goto yy56;
3630 				} else {
3631 					if (yych <= 'a') goto yy100;
3632 					if (yych == 'd') goto yy73;
3633 					goto yy56;
3634 				}
3635 			} else {
3636 				if (yych <= 'h') {
3637 					if (yych <= 'f') goto yy74;
3638 					if (yych <= 'g') goto yy56;
3639 					goto yy75;
3640 				} else {
3641 					if (yych == 'j') goto yy78;
3642 					if (yych <= 'l') goto yy56;
3643 					goto yy79;
3644 				}
3645 			}
3646 		} else {
3647 			if (yych <= 'u') {
3648 				if (yych <= 'p') {
3649 					if (yych <= 'n') goto yy80;
3650 					if (yych <= 'o') goto yy81;
3651 					goto yy101;
3652 				} else {
3653 					if (yych <= 'r') goto yy56;
3654 					if (yych <= 's') goto yy82;
3655 					if (yych <= 't') goto yy83;
3656 					goto yy84;
3657 				}
3658 			} else {
3659 				if (yych <= 'x') {
3660 					if (yych == 'w') goto yy86;
3661 					goto yy56;
3662 				} else {
3663 					if (yych <= 'y') goto yy88;
3664 					if (yych == 0xC2) goto yy93;
3665 					goto yy56;
3666 				}
3667 			}
3668 		}
3669 	}
3670 yy97:
3671 	YYDEBUG(97, *YYCURSOR);
3672 	yych = *++YYCURSOR;
3673 	if (yych <= '1') {
3674 		if (yych <= '/') goto yy197;
3675 		if (yych <= '0') goto yy264;
3676 		goto yy265;
3677 	} else {
3678 		if (yych <= '5') goto yy266;
3679 		if (yych <= '9') goto yy267;
3680 		goto yy197;
3681 	}
3682 yy98:
3683 	YYDEBUG(98, *YYCURSOR);
3684 	yych = *++YYCURSOR;
3685 	if (yych <= '9') {
3686 		if (yych <= '-') {
3687 			if (yych == '\t') goto yy63;
3688 			if (yych <= ',') goto yy65;
3689 			goto yy225;
3690 		} else {
3691 			if (yych <= '.') goto yy67;
3692 			if (yych <= '/') goto yy268;
3693 			if (yych <= '5') goto yy226;
3694 			goto yy227;
3695 		}
3696 	} else {
3697 		if (yych <= 'q') {
3698 			if (yych <= ':') goto yy71;
3699 			if (yych == 'n') goto yy89;
3700 			goto yy65;
3701 		} else {
3702 			if (yych <= 'r') goto yy90;
3703 			if (yych <= 's') goto yy91;
3704 			if (yych <= 't') goto yy92;
3705 			goto yy65;
3706 		}
3707 	}
3708 yy99:
3709 	YYDEBUG(99, *YYCURSOR);
3710 	yych = *++YYCURSOR;
3711 	if (yych <= '/') goto yy56;
3712 	if (yych <= '5') goto yy269;
3713 	if (yych <= '9') goto yy270;
3714 	goto yy56;
3715 yy100:
3716 	YYDEBUG(100, *YYCURSOR);
3717 	yych = *++YYCURSOR;
3718 	if (yych <= 'T') {
3719 		if (yych <= 'L') {
3720 			if (yych == '.') goto yy271;
3721 			goto yy56;
3722 		} else {
3723 			if (yych <= 'M') goto yy272;
3724 			if (yych == 'P') goto yy230;
3725 			goto yy56;
3726 		}
3727 	} else {
3728 		if (yych <= 'o') {
3729 			if (yych <= 'U') goto yy231;
3730 			if (yych == 'm') goto yy272;
3731 			goto yy56;
3732 		} else {
3733 			if (yych <= 'p') goto yy230;
3734 			if (yych == 'u') goto yy231;
3735 			goto yy56;
3736 		}
3737 	}
3738 yy101:
3739 	YYDEBUG(101, *YYCURSOR);
3740 	yych = *++YYCURSOR;
3741 	if (yych <= 'L') {
3742 		if (yych == '.') goto yy271;
3743 		goto yy56;
3744 	} else {
3745 		if (yych <= 'M') goto yy272;
3746 		if (yych == 'm') goto yy272;
3747 		goto yy56;
3748 	}
3749 yy102:
3750 	YYDEBUG(102, *YYCURSOR);
3751 	yych = *++YYCURSOR;
3752 	if (yych <= '9') {
3753 		if (yych <= ',') {
3754 			if (yych == '\t') goto yy63;
3755 			goto yy65;
3756 		} else {
3757 			if (yych <= '-') goto yy225;
3758 			if (yych <= '.') goto yy273;
3759 			if (yych <= '/') goto yy268;
3760 			goto yy227;
3761 		}
3762 	} else {
3763 		if (yych <= 'q') {
3764 			if (yych == 'n') goto yy89;
3765 			goto yy65;
3766 		} else {
3767 			if (yych <= 'r') goto yy90;
3768 			if (yych <= 's') goto yy91;
3769 			if (yych <= 't') goto yy92;
3770 			goto yy65;
3771 		}
3772 	}
3773 yy103:
3774 	YYDEBUG(103, *YYCURSOR);
3775 	yych = *++YYCURSOR;
3776 	if (yych == '-') goto yy274;
3777 	if (yych <= '/') goto yy186;
3778 	if (yych <= '9') goto yy227;
3779 	goto yy186;
3780 yy104:
3781 	YYDEBUG(104, *YYCURSOR);
3782 	yych = *++YYCURSOR;
3783 	if (yybm[0+yych] & 8) {
3784 		goto yy105;
3785 	}
3786 	goto yy56;
3787 yy105:
3788 	YYDEBUG(105, *YYCURSOR);
3789 	yyaccept = 4;
3790 	YYMARKER = ++YYCURSOR;
3791 	if ((YYLIMIT - YYCURSOR) < 7) YYFILL(7);
3792 	yych = *YYCURSOR;
3793 	YYDEBUG(106, *YYCURSOR);
3794 	if (yybm[0+yych] & 8) {
3795 		goto yy105;
3796 	}
3797 	if (yych == '.') goto yy275;
3798 yy107:
3799 	YYDEBUG(107, *YYCURSOR);
3800 #line 1071 "parse_date.re"
3801 	{
3802 		timelib_ull i;
3803 
3804 		TIMELIB_INIT;
3805 		TIMELIB_HAVE_RELATIVE();
3806 		TIMELIB_UNHAVE_DATE();
3807 		TIMELIB_UNHAVE_TIME();
3808 		TIMELIB_HAVE_TZ();
3809 
3810 		i = timelib_get_unsigned_nr((char **) &ptr, 24);
3811 		s->time->y = 1970;
3812 		s->time->m = 1;
3813 		s->time->d = 1;
3814 		s->time->h = s->time->i = s->time->s = 0;
3815 		s->time->us = 0;
3816 		s->time->relative.s += i;
3817 		s->time->is_localtime = 1;
3818 		s->time->zone_type = TIMELIB_ZONETYPE_OFFSET;
3819 		s->time->z = 0;
3820 		s->time->dst = 0;
3821 
3822 		TIMELIB_DEINIT;
3823 		return TIMELIB_RELATIVE;
3824 	}
3825 #line 3826 "<stdout>"
3826 yy108:
3827 	YYDEBUG(108, *YYCURSOR);
3828 	++YYCURSOR;
3829 	goto yy18;
3830 yy109:
3831 	YYDEBUG(109, *YYCURSOR);
3832 	yych = *++YYCURSOR;
3833 	if (yych <= '@') {
3834 		if (yych == ')') goto yy108;
3835 		goto yy18;
3836 	} else {
3837 		if (yych <= 'Z') goto yy276;
3838 		if (yych <= '`') goto yy18;
3839 		if (yych <= 'z') goto yy276;
3840 		goto yy18;
3841 	}
3842 yy110:
3843 	YYDEBUG(110, *YYCURSOR);
3844 	yych = *++YYCURSOR;
3845 	if (yych <= 'O') {
3846 		if (yych <= ')') {
3847 			if (yych <= '(') goto yy18;
3848 			goto yy108;
3849 		} else {
3850 			if (yych <= '@') goto yy18;
3851 			if (yych <= 'N') goto yy276;
3852 			goto yy277;
3853 		}
3854 	} else {
3855 		if (yych <= 'n') {
3856 			if (yych <= 'Z') goto yy276;
3857 			if (yych <= '`') goto yy18;
3858 			goto yy276;
3859 		} else {
3860 			if (yych <= 'o') goto yy277;
3861 			if (yych <= 'z') goto yy276;
3862 			goto yy18;
3863 		}
3864 	}
3865 yy111:
3866 	YYDEBUG(111, *YYCURSOR);
3867 	yych = *++YYCURSOR;
3868 	if (yych <= 'R') {
3869 		if (yych <= ')') {
3870 			if (yych <= '(') goto yy18;
3871 			goto yy108;
3872 		} else {
3873 			if (yych <= '@') goto yy18;
3874 			if (yych <= 'Q') goto yy276;
3875 			goto yy279;
3876 		}
3877 	} else {
3878 		if (yych <= 'q') {
3879 			if (yych <= 'Z') goto yy276;
3880 			if (yych <= '`') goto yy18;
3881 			goto yy276;
3882 		} else {
3883 			if (yych <= 'r') goto yy279;
3884 			if (yych <= 'z') goto yy276;
3885 			goto yy18;
3886 		}
3887 	}
3888 yy112:
3889 	YYDEBUG(112, *YYCURSOR);
3890 	yych = *++YYCURSOR;
3891 	if (yych <= 'G') {
3892 		if (yych <= ')') {
3893 			if (yych <= '(') goto yy18;
3894 			goto yy108;
3895 		} else {
3896 			if (yych <= '@') goto yy18;
3897 			if (yych <= 'F') goto yy276;
3898 			goto yy281;
3899 		}
3900 	} else {
3901 		if (yych <= 'f') {
3902 			if (yych <= 'Z') goto yy276;
3903 			if (yych <= '`') goto yy18;
3904 			goto yy276;
3905 		} else {
3906 			if (yych <= 'g') goto yy281;
3907 			if (yych <= 'z') goto yy276;
3908 			goto yy18;
3909 		}
3910 	}
3911 yy113:
3912 	YYDEBUG(113, *YYCURSOR);
3913 	yyaccept = 2;
3914 	yych = *(YYMARKER = ++YYCURSOR);
3915 	if (yych <= '/') {
3916 		if (yych <= ',') {
3917 			if (yych == ')') goto yy108;
3918 			goto yy18;
3919 		} else {
3920 			if (yych == '.') goto yy18;
3921 			goto yy282;
3922 		}
3923 	} else {
3924 		if (yych <= '^') {
3925 			if (yych <= '@') goto yy18;
3926 			if (yych <= 'Z') goto yy276;
3927 			goto yy18;
3928 		} else {
3929 			if (yych <= '_') goto yy282;
3930 			if (yych <= '`') goto yy18;
3931 			if (yych <= 'z') goto yy283;
3932 			goto yy18;
3933 		}
3934 	}
3935 yy114:
3936 	YYDEBUG(114, *YYCURSOR);
3937 	yyaccept = 2;
3938 	yych = *(YYMARKER = ++YYCURSOR);
3939 	if (yych <= 'N') {
3940 		if (yych <= '-') {
3941 			if (yych == ')') goto yy108;
3942 			if (yych <= ',') goto yy18;
3943 			goto yy282;
3944 		} else {
3945 			if (yych == '/') goto yy282;
3946 			if (yych <= '@') goto yy18;
3947 			goto yy276;
3948 		}
3949 	} else {
3950 		if (yych <= '_') {
3951 			if (yych <= 'O') goto yy277;
3952 			if (yych <= 'Z') goto yy276;
3953 			if (yych <= '^') goto yy18;
3954 			goto yy282;
3955 		} else {
3956 			if (yych <= 'n') {
3957 				if (yych <= '`') goto yy18;
3958 				goto yy283;
3959 			} else {
3960 				if (yych <= 'o') goto yy284;
3961 				if (yych <= 'z') goto yy283;
3962 				goto yy18;
3963 			}
3964 		}
3965 	}
3966 yy115:
3967 	YYDEBUG(115, *YYCURSOR);
3968 	yyaccept = 2;
3969 	yych = *(YYMARKER = ++YYCURSOR);
3970 	if (yych <= 'Q') {
3971 		if (yych <= '-') {
3972 			if (yych == ')') goto yy108;
3973 			if (yych <= ',') goto yy18;
3974 			goto yy282;
3975 		} else {
3976 			if (yych == '/') goto yy282;
3977 			if (yych <= '@') goto yy18;
3978 			goto yy276;
3979 		}
3980 	} else {
3981 		if (yych <= '_') {
3982 			if (yych <= 'R') goto yy279;
3983 			if (yych <= 'Z') goto yy276;
3984 			if (yych <= '^') goto yy18;
3985 			goto yy282;
3986 		} else {
3987 			if (yych <= 'q') {
3988 				if (yych <= '`') goto yy18;
3989 				goto yy283;
3990 			} else {
3991 				if (yych <= 'r') goto yy285;
3992 				if (yych <= 'z') goto yy283;
3993 				goto yy18;
3994 			}
3995 		}
3996 	}
3997 yy116:
3998 	YYDEBUG(116, *YYCURSOR);
3999 	yyaccept = 2;
4000 	yych = *(YYMARKER = ++YYCURSOR);
4001 	if (yych <= 'F') {
4002 		if (yych <= '-') {
4003 			if (yych == ')') goto yy108;
4004 			if (yych <= ',') goto yy18;
4005 			goto yy282;
4006 		} else {
4007 			if (yych == '/') goto yy282;
4008 			if (yych <= '@') goto yy18;
4009 			goto yy276;
4010 		}
4011 	} else {
4012 		if (yych <= '_') {
4013 			if (yych <= 'G') goto yy281;
4014 			if (yych <= 'Z') goto yy276;
4015 			if (yych <= '^') goto yy18;
4016 			goto yy282;
4017 		} else {
4018 			if (yych <= 'f') {
4019 				if (yych <= '`') goto yy18;
4020 				goto yy283;
4021 			} else {
4022 				if (yych <= 'g') goto yy286;
4023 				if (yych <= 'z') goto yy283;
4024 				goto yy18;
4025 			}
4026 		}
4027 	}
4028 yy117:
4029 	YYDEBUG(117, *YYCURSOR);
4030 	yych = *++YYCURSOR;
4031 	if (yych <= 'C') {
4032 		if (yych <= ')') {
4033 			if (yych <= '(') goto yy18;
4034 			goto yy108;
4035 		} else {
4036 			if (yych <= '@') goto yy18;
4037 			if (yych <= 'B') goto yy276;
4038 			goto yy287;
4039 		}
4040 	} else {
4041 		if (yych <= 'b') {
4042 			if (yych <= 'Z') goto yy276;
4043 			if (yych <= '`') goto yy18;
4044 			goto yy276;
4045 		} else {
4046 			if (yych <= 'c') goto yy287;
4047 			if (yych <= 'z') goto yy276;
4048 			goto yy18;
4049 		}
4050 	}
4051 yy118:
4052 	YYDEBUG(118, *YYCURSOR);
4053 	yyaccept = 2;
4054 	yych = *(YYMARKER = ++YYCURSOR);
4055 	if (yych <= 'B') {
4056 		if (yych <= '-') {
4057 			if (yych == ')') goto yy108;
4058 			if (yych <= ',') goto yy18;
4059 			goto yy282;
4060 		} else {
4061 			if (yych == '/') goto yy282;
4062 			if (yych <= '@') goto yy18;
4063 			goto yy276;
4064 		}
4065 	} else {
4066 		if (yych <= '_') {
4067 			if (yych <= 'C') goto yy287;
4068 			if (yych <= 'Z') goto yy276;
4069 			if (yych <= '^') goto yy18;
4070 			goto yy282;
4071 		} else {
4072 			if (yych <= 'b') {
4073 				if (yych <= '`') goto yy18;
4074 				goto yy283;
4075 			} else {
4076 				if (yych <= 'c') goto yy288;
4077 				if (yych <= 'z') goto yy283;
4078 				goto yy18;
4079 			}
4080 		}
4081 	}
4082 yy119:
4083 	YYDEBUG(119, *YYCURSOR);
4084 	yych = *++YYCURSOR;
4085 	if (yych <= 'C') {
4086 		if (yych <= ')') {
4087 			if (yych <= '(') goto yy18;
4088 			goto yy108;
4089 		} else {
4090 			if (yych <= '@') goto yy18;
4091 			if (yych <= 'B') goto yy276;
4092 			goto yy289;
4093 		}
4094 	} else {
4095 		if (yych <= 'b') {
4096 			if (yych <= 'Z') goto yy276;
4097 			if (yych <= '`') goto yy18;
4098 			goto yy276;
4099 		} else {
4100 			if (yych <= 'c') goto yy289;
4101 			if (yych <= 'z') goto yy276;
4102 			goto yy18;
4103 		}
4104 	}
4105 yy120:
4106 	YYDEBUG(120, *YYCURSOR);
4107 	yyaccept = 2;
4108 	yych = *(YYMARKER = ++YYCURSOR);
4109 	if (yych <= 'B') {
4110 		if (yych <= '-') {
4111 			if (yych == ')') goto yy108;
4112 			if (yych <= ',') goto yy18;
4113 			goto yy282;
4114 		} else {
4115 			if (yych == '/') goto yy282;
4116 			if (yych <= '@') goto yy18;
4117 			goto yy276;
4118 		}
4119 	} else {
4120 		if (yych <= '_') {
4121 			if (yych <= 'C') goto yy289;
4122 			if (yych <= 'Z') goto yy276;
4123 			if (yych <= '^') goto yy18;
4124 			goto yy282;
4125 		} else {
4126 			if (yych <= 'b') {
4127 				if (yych <= '`') goto yy18;
4128 				goto yy283;
4129 			} else {
4130 				if (yych <= 'c') goto yy290;
4131 				if (yych <= 'z') goto yy283;
4132 				goto yy18;
4133 			}
4134 		}
4135 	}
4136 yy121:
4137 	YYDEBUG(121, *YYCURSOR);
4138 	yych = *++YYCURSOR;
4139 	if (yych <= 'G') {
4140 		if (yych <= ')') {
4141 			if (yych <= '(') goto yy18;
4142 			goto yy108;
4143 		} else {
4144 			if (yych <= '@') goto yy18;
4145 			if (yych <= 'F') goto yy276;
4146 			goto yy291;
4147 		}
4148 	} else {
4149 		if (yych <= 'f') {
4150 			if (yych <= 'Z') goto yy276;
4151 			if (yych <= '`') goto yy18;
4152 			goto yy276;
4153 		} else {
4154 			if (yych <= 'g') goto yy291;
4155 			if (yych <= 'z') goto yy276;
4156 			goto yy18;
4157 		}
4158 	}
4159 yy122:
4160 	YYDEBUG(122, *YYCURSOR);
4161 	yych = *++YYCURSOR;
4162 	if (yych <= 'E') {
4163 		if (yych <= ')') {
4164 			if (yych <= '(') goto yy18;
4165 			goto yy108;
4166 		} else {
4167 			if (yych <= '@') goto yy18;
4168 			if (yych <= 'D') goto yy276;
4169 			goto yy292;
4170 		}
4171 	} else {
4172 		if (yych <= 'd') {
4173 			if (yych <= 'Z') goto yy276;
4174 			if (yych <= '`') goto yy18;
4175 			goto yy276;
4176 		} else {
4177 			if (yych <= 'e') goto yy292;
4178 			if (yych <= 'z') goto yy276;
4179 			goto yy18;
4180 		}
4181 	}
4182 yy123:
4183 	YYDEBUG(123, *YYCURSOR);
4184 	yyaccept = 2;
4185 	yych = *(YYMARKER = ++YYCURSOR);
4186 	if (yych <= 'F') {
4187 		if (yych <= '-') {
4188 			if (yych == ')') goto yy108;
4189 			if (yych <= ',') goto yy18;
4190 			goto yy282;
4191 		} else {
4192 			if (yych == '/') goto yy282;
4193 			if (yych <= '@') goto yy18;
4194 			goto yy276;
4195 		}
4196 	} else {
4197 		if (yych <= '_') {
4198 			if (yych <= 'G') goto yy291;
4199 			if (yych <= 'Z') goto yy276;
4200 			if (yych <= '^') goto yy18;
4201 			goto yy282;
4202 		} else {
4203 			if (yych <= 'f') {
4204 				if (yych <= '`') goto yy18;
4205 				goto yy283;
4206 			} else {
4207 				if (yych <= 'g') goto yy293;
4208 				if (yych <= 'z') goto yy283;
4209 				goto yy18;
4210 			}
4211 		}
4212 	}
4213 yy124:
4214 	YYDEBUG(124, *YYCURSOR);
4215 	yyaccept = 2;
4216 	yych = *(YYMARKER = ++YYCURSOR);
4217 	if (yych <= 'D') {
4218 		if (yych <= '-') {
4219 			if (yych == ')') goto yy108;
4220 			if (yych <= ',') goto yy18;
4221 			goto yy282;
4222 		} else {
4223 			if (yych == '/') goto yy282;
4224 			if (yych <= '@') goto yy18;
4225 			goto yy276;
4226 		}
4227 	} else {
4228 		if (yych <= '_') {
4229 			if (yych <= 'E') goto yy292;
4230 			if (yych <= 'Z') goto yy276;
4231 			if (yych <= '^') goto yy18;
4232 			goto yy282;
4233 		} else {
4234 			if (yych <= 'd') {
4235 				if (yych <= '`') goto yy18;
4236 				goto yy283;
4237 			} else {
4238 				if (yych <= 'e') goto yy294;
4239 				if (yych <= 'z') goto yy283;
4240 				goto yy18;
4241 			}
4242 		}
4243 	}
4244 yy125:
4245 	YYDEBUG(125, *YYCURSOR);
4246 	yych = *++YYCURSOR;
4247 	if (yych <= 'B') {
4248 		if (yych <= ')') {
4249 			if (yych <= '(') goto yy18;
4250 			goto yy108;
4251 		} else {
4252 			if (yych <= '@') goto yy18;
4253 			if (yych <= 'A') goto yy276;
4254 			goto yy295;
4255 		}
4256 	} else {
4257 		if (yych <= 'a') {
4258 			if (yych <= 'Z') goto yy276;
4259 			if (yych <= '`') goto yy18;
4260 			goto yy276;
4261 		} else {
4262 			if (yych <= 'b') goto yy295;
4263 			if (yych <= 'z') goto yy276;
4264 			goto yy18;
4265 		}
4266 	}
4267 yy126:
4268 	YYDEBUG(126, *YYCURSOR);
4269 	yych = *++YYCURSOR;
4270 	if (yych <= 'R') {
4271 		if (yych <= '@') {
4272 			if (yych == ')') goto yy108;
4273 			goto yy18;
4274 		} else {
4275 			if (yych == 'F') goto yy296;
4276 			if (yych <= 'Q') goto yy276;
4277 			goto yy297;
4278 		}
4279 	} else {
4280 		if (yych <= 'f') {
4281 			if (yych <= 'Z') goto yy276;
4282 			if (yych <= '`') goto yy18;
4283 			if (yych <= 'e') goto yy276;
4284 			goto yy296;
4285 		} else {
4286 			if (yych == 'r') goto yy297;
4287 			if (yych <= 'z') goto yy276;
4288 			goto yy18;
4289 		}
4290 	}
4291 yy127:
4292 	YYDEBUG(127, *YYCURSOR);
4293 	yych = *++YYCURSOR;
4294 	if (yych <= 'U') {
4295 		if (yych <= ')') {
4296 			if (yych <= '(') goto yy18;
4297 			goto yy108;
4298 		} else {
4299 			if (yych <= '@') goto yy18;
4300 			if (yych <= 'T') goto yy276;
4301 			goto yy298;
4302 		}
4303 	} else {
4304 		if (yych <= 't') {
4305 			if (yych <= 'Z') goto yy276;
4306 			if (yych <= '`') goto yy18;
4307 			goto yy276;
4308 		} else {
4309 			if (yych <= 'u') goto yy298;
4310 			if (yych <= 'z') goto yy276;
4311 			goto yy18;
4312 		}
4313 	}
4314 yy128:
4315 	YYDEBUG(128, *YYCURSOR);
4316 	yych = *++YYCURSOR;
4317 	if (yych <= 'O') {
4318 		if (yych <= '@') {
4319 			if (yych == ')') goto yy108;
4320 			goto yy18;
4321 		} else {
4322 			if (yych == 'I') goto yy299;
4323 			if (yych <= 'N') goto yy276;
4324 			goto yy301;
4325 		}
4326 	} else {
4327 		if (yych <= 'i') {
4328 			if (yych <= 'Z') goto yy276;
4329 			if (yych <= '`') goto yy18;
4330 			if (yych <= 'h') goto yy276;
4331 			goto yy299;
4332 		} else {
4333 			if (yych == 'o') goto yy301;
4334 			if (yych <= 'z') goto yy276;
4335 			goto yy18;
4336 		}
4337 	}
4338 yy129:
4339 	YYDEBUG(129, *YYCURSOR);
4340 	yyaccept = 2;
4341 	yych = *(YYMARKER = ++YYCURSOR);
4342 	if (yych <= 'A') {
4343 		if (yych <= '-') {
4344 			if (yych == ')') goto yy108;
4345 			if (yych <= ',') goto yy18;
4346 			goto yy282;
4347 		} else {
4348 			if (yych == '/') goto yy282;
4349 			if (yych <= '@') goto yy18;
4350 			goto yy276;
4351 		}
4352 	} else {
4353 		if (yych <= '_') {
4354 			if (yych <= 'B') goto yy295;
4355 			if (yych <= 'Z') goto yy276;
4356 			if (yych <= '^') goto yy18;
4357 			goto yy282;
4358 		} else {
4359 			if (yych <= 'a') {
4360 				if (yych <= '`') goto yy18;
4361 				goto yy283;
4362 			} else {
4363 				if (yych <= 'b') goto yy302;
4364 				if (yych <= 'z') goto yy283;
4365 				goto yy18;
4366 			}
4367 		}
4368 	}
4369 yy130:
4370 	YYDEBUG(130, *YYCURSOR);
4371 	yyaccept = 2;
4372 	yych = *(YYMARKER = ++YYCURSOR);
4373 	if (yych <= 'Q') {
4374 		if (yych <= '.') {
4375 			if (yych <= ')') {
4376 				if (yych <= '(') goto yy18;
4377 				goto yy108;
4378 			} else {
4379 				if (yych == '-') goto yy282;
4380 				goto yy18;
4381 			}
4382 		} else {
4383 			if (yych <= '@') {
4384 				if (yych <= '/') goto yy282;
4385 				goto yy18;
4386 			} else {
4387 				if (yych == 'F') goto yy296;
4388 				goto yy276;
4389 			}
4390 		}
4391 	} else {
4392 		if (yych <= '`') {
4393 			if (yych <= 'Z') {
4394 				if (yych <= 'R') goto yy297;
4395 				goto yy276;
4396 			} else {
4397 				if (yych == '_') goto yy282;
4398 				goto yy18;
4399 			}
4400 		} else {
4401 			if (yych <= 'q') {
4402 				if (yych == 'f') goto yy303;
4403 				goto yy283;
4404 			} else {
4405 				if (yych <= 'r') goto yy304;
4406 				if (yych <= 'z') goto yy283;
4407 				goto yy18;
4408 			}
4409 		}
4410 	}
4411 yy131:
4412 	YYDEBUG(131, *YYCURSOR);
4413 	yyaccept = 2;
4414 	yych = *(YYMARKER = ++YYCURSOR);
4415 	if (yych <= 'T') {
4416 		if (yych <= '-') {
4417 			if (yych == ')') goto yy108;
4418 			if (yych <= ',') goto yy18;
4419 			goto yy282;
4420 		} else {
4421 			if (yych == '/') goto yy282;
4422 			if (yych <= '@') goto yy18;
4423 			goto yy276;
4424 		}
4425 	} else {
4426 		if (yych <= '_') {
4427 			if (yych <= 'U') goto yy298;
4428 			if (yych <= 'Z') goto yy276;
4429 			if (yych <= '^') goto yy18;
4430 			goto yy282;
4431 		} else {
4432 			if (yych <= 't') {
4433 				if (yych <= '`') goto yy18;
4434 				goto yy283;
4435 			} else {
4436 				if (yych <= 'u') goto yy305;
4437 				if (yych <= 'z') goto yy283;
4438 				goto yy18;
4439 			}
4440 		}
4441 	}
4442 yy132:
4443 	YYDEBUG(132, *YYCURSOR);
4444 	yyaccept = 2;
4445 	yych = *(YYMARKER = ++YYCURSOR);
4446 	if (yych <= 'N') {
4447 		if (yych <= '.') {
4448 			if (yych <= ')') {
4449 				if (yych <= '(') goto yy18;
4450 				goto yy108;
4451 			} else {
4452 				if (yych == '-') goto yy282;
4453 				goto yy18;
4454 			}
4455 		} else {
4456 			if (yych <= '@') {
4457 				if (yych <= '/') goto yy282;
4458 				goto yy18;
4459 			} else {
4460 				if (yych == 'I') goto yy299;
4461 				goto yy276;
4462 			}
4463 		}
4464 	} else {
4465 		if (yych <= '`') {
4466 			if (yych <= 'Z') {
4467 				if (yych <= 'O') goto yy301;
4468 				goto yy276;
4469 			} else {
4470 				if (yych == '_') goto yy282;
4471 				goto yy18;
4472 			}
4473 		} else {
4474 			if (yych <= 'n') {
4475 				if (yych == 'i') goto yy306;
4476 				goto yy283;
4477 			} else {
4478 				if (yych <= 'o') goto yy307;
4479 				if (yych <= 'z') goto yy283;
4480 				goto yy18;
4481 			}
4482 		}
4483 	}
4484 yy133:
4485 	YYDEBUG(133, *YYCURSOR);
4486 	yych = *++YYCURSOR;
4487 	if (yych <= 'S') {
4488 		if (yych == ')') goto yy108;
4489 		if (yych <= '@') goto yy18;
4490 		goto yy276;
4491 	} else {
4492 		if (yych <= 'Z') {
4493 			if (yych <= 'T') goto yy308;
4494 			goto yy276;
4495 		} else {
4496 			if (yych <= '`') goto yy18;
4497 			if (yych <= 'z') goto yy276;
4498 			goto yy18;
4499 		}
4500 	}
4501 yy134:
4502 	YYDEBUG(134, *YYCURSOR);
4503 	++YYCURSOR;
4504 	if ((YYLIMIT - YYCURSOR) < 23) YYFILL(23);
4505 	yych = *YYCURSOR;
4506 yy135:
4507 	YYDEBUG(135, *YYCURSOR);
4508 	if (yybm[0+yych] & 16) {
4509 		goto yy134;
4510 	}
4511 	if (yych <= '/') goto yy56;
4512 	if (yych <= '2') goto yy136;
4513 	if (yych <= '3') goto yy137;
4514 	if (yych <= '9') goto yy138;
4515 	goto yy56;
4516 yy136:
4517 	YYDEBUG(136, *YYCURSOR);
4518 	yych = *++YYCURSOR;
4519 	if (yych <= '9') {
4520 		if (yych <= ' ') {
4521 			if (yych <= 0x08) {
4522 				if (yych <= 0x00) goto yy309;
4523 				goto yy56;
4524 			} else {
4525 				if (yych <= '\t') goto yy311;
4526 				if (yych <= 0x1F) goto yy56;
4527 				goto yy311;
4528 			}
4529 		} else {
4530 			if (yych <= '-') {
4531 				if (yych == ',') goto yy311;
4532 				goto yy56;
4533 			} else {
4534 				if (yych <= '.') goto yy311;
4535 				if (yych <= '/') goto yy56;
4536 				goto yy313;
4537 			}
4538 		}
4539 	} else {
4540 		if (yych <= 'm') {
4541 			if (yych <= 'd') {
4542 				if (yych <= 'c') goto yy56;
4543 				goto yy311;
4544 			} else {
4545 				if (yych == 'h') goto yy311;
4546 				goto yy56;
4547 			}
4548 		} else {
4549 			if (yych <= 'r') {
4550 				if (yych <= 'n') goto yy314;
4551 				if (yych <= 'q') goto yy56;
4552 				goto yy314;
4553 			} else {
4554 				if (yych <= 's') goto yy315;
4555 				if (yych <= 't') goto yy316;
4556 				goto yy56;
4557 			}
4558 		}
4559 	}
4560 yy137:
4561 	YYDEBUG(137, *YYCURSOR);
4562 	yych = *++YYCURSOR;
4563 	if (yych <= '1') {
4564 		if (yych <= ' ') {
4565 			if (yych <= 0x08) {
4566 				if (yych <= 0x00) goto yy309;
4567 				goto yy56;
4568 			} else {
4569 				if (yych <= '\t') goto yy311;
4570 				if (yych <= 0x1F) goto yy56;
4571 				goto yy311;
4572 			}
4573 		} else {
4574 			if (yych <= '-') {
4575 				if (yych == ',') goto yy311;
4576 				goto yy56;
4577 			} else {
4578 				if (yych <= '.') goto yy311;
4579 				if (yych <= '/') goto yy56;
4580 				goto yy313;
4581 			}
4582 		}
4583 	} else {
4584 		if (yych <= 'm') {
4585 			if (yych <= 'd') {
4586 				if (yych <= '9') goto yy317;
4587 				if (yych <= 'c') goto yy56;
4588 				goto yy311;
4589 			} else {
4590 				if (yych == 'h') goto yy311;
4591 				goto yy56;
4592 			}
4593 		} else {
4594 			if (yych <= 'r') {
4595 				if (yych <= 'n') goto yy314;
4596 				if (yych <= 'q') goto yy56;
4597 				goto yy314;
4598 			} else {
4599 				if (yych <= 's') goto yy315;
4600 				if (yych <= 't') goto yy316;
4601 				goto yy56;
4602 			}
4603 		}
4604 	}
4605 yy138:
4606 	YYDEBUG(138, *YYCURSOR);
4607 	yych = *++YYCURSOR;
4608 	if (yych <= '9') {
4609 		if (yych <= ' ') {
4610 			if (yych <= 0x08) {
4611 				if (yych <= 0x00) goto yy309;
4612 				goto yy56;
4613 			} else {
4614 				if (yych <= '\t') goto yy311;
4615 				if (yych <= 0x1F) goto yy56;
4616 				goto yy311;
4617 			}
4618 		} else {
4619 			if (yych <= '-') {
4620 				if (yych == ',') goto yy311;
4621 				goto yy56;
4622 			} else {
4623 				if (yych <= '.') goto yy311;
4624 				if (yych <= '/') goto yy56;
4625 				goto yy317;
4626 			}
4627 		}
4628 	} else {
4629 		if (yych <= 'm') {
4630 			if (yych <= 'd') {
4631 				if (yych <= 'c') goto yy56;
4632 				goto yy311;
4633 			} else {
4634 				if (yych == 'h') goto yy311;
4635 				goto yy56;
4636 			}
4637 		} else {
4638 			if (yych <= 'r') {
4639 				if (yych <= 'n') goto yy314;
4640 				if (yych <= 'q') goto yy56;
4641 				goto yy314;
4642 			} else {
4643 				if (yych <= 's') goto yy315;
4644 				if (yych <= 't') goto yy316;
4645 				goto yy56;
4646 			}
4647 		}
4648 	}
4649 yy139:
4650 	YYDEBUG(139, *YYCURSOR);
4651 	yyaccept = 2;
4652 	yych = *(YYMARKER = ++YYCURSOR);
4653 	if (yych <= '.') {
4654 		if (yych <= ' ') {
4655 			if (yych == '\t') goto yy135;
4656 			if (yych <= 0x1F) goto yy18;
4657 			goto yy135;
4658 		} else {
4659 			if (yych == ')') goto yy108;
4660 			if (yych <= ',') goto yy18;
4661 			goto yy135;
4662 		}
4663 	} else {
4664 		if (yych <= 'H') {
4665 			if (yych <= '/') goto yy18;
4666 			if (yych <= '9') goto yy135;
4667 			if (yych <= '@') goto yy18;
4668 			goto yy276;
4669 		} else {
4670 			if (yych <= 'Z') {
4671 				if (yych <= 'I') goto yy318;
4672 				goto yy276;
4673 			} else {
4674 				if (yych <= '`') goto yy18;
4675 				if (yych <= 'z') goto yy276;
4676 				goto yy18;
4677 			}
4678 		}
4679 	}
4680 yy140:
4681 	YYDEBUG(140, *YYCURSOR);
4682 	yyaccept = 2;
4683 	yych = *(YYMARKER = ++YYCURSOR);
4684 	if (yych <= ',') {
4685 		if (yych <= 0x1F) {
4686 			if (yych == '\t') goto yy135;
4687 			goto yy18;
4688 		} else {
4689 			if (yych <= ' ') goto yy135;
4690 			if (yych == ')') goto yy108;
4691 			goto yy18;
4692 		}
4693 	} else {
4694 		if (yych <= '@') {
4695 			if (yych == '/') goto yy18;
4696 			if (yych <= '9') goto yy135;
4697 			goto yy18;
4698 		} else {
4699 			if (yych <= 'Z') goto yy276;
4700 			if (yych <= '`') goto yy18;
4701 			if (yych <= 'z') goto yy276;
4702 			goto yy18;
4703 		}
4704 	}
4705 yy141:
4706 	YYDEBUG(141, *YYCURSOR);
4707 	yych = *++YYCURSOR;
4708 	if (yych <= 'N') {
4709 		if (yych <= ')') {
4710 			if (yych <= '(') goto yy18;
4711 			goto yy108;
4712 		} else {
4713 			if (yych <= '@') goto yy18;
4714 			if (yych <= 'M') goto yy276;
4715 			goto yy319;
4716 		}
4717 	} else {
4718 		if (yych <= 'm') {
4719 			if (yych <= 'Z') goto yy276;
4720 			if (yych <= '`') goto yy18;
4721 			goto yy276;
4722 		} else {
4723 			if (yych <= 'n') goto yy319;
4724 			if (yych <= 'z') goto yy276;
4725 			goto yy18;
4726 		}
4727 	}
4728 yy142:
4729 	YYDEBUG(142, *YYCURSOR);
4730 	yych = *++YYCURSOR;
4731 	if (yych <= 'N') {
4732 		if (yych <= '@') {
4733 			if (yych == ')') goto yy108;
4734 			goto yy18;
4735 		} else {
4736 			if (yych == 'L') goto yy320;
4737 			if (yych <= 'M') goto yy276;
4738 			goto yy321;
4739 		}
4740 	} else {
4741 		if (yych <= 'l') {
4742 			if (yych <= 'Z') goto yy276;
4743 			if (yych <= '`') goto yy18;
4744 			if (yych <= 'k') goto yy276;
4745 			goto yy320;
4746 		} else {
4747 			if (yych == 'n') goto yy321;
4748 			if (yych <= 'z') goto yy276;
4749 			goto yy18;
4750 		}
4751 	}
4752 yy143:
4753 	YYDEBUG(143, *YYCURSOR);
4754 	yyaccept = 2;
4755 	yych = *(YYMARKER = ++YYCURSOR);
4756 	if (yych <= 'M') {
4757 		if (yych <= '-') {
4758 			if (yych == ')') goto yy108;
4759 			if (yych <= ',') goto yy18;
4760 			goto yy282;
4761 		} else {
4762 			if (yych == '/') goto yy282;
4763 			if (yych <= '@') goto yy18;
4764 			goto yy276;
4765 		}
4766 	} else {
4767 		if (yych <= '_') {
4768 			if (yych <= 'N') goto yy319;
4769 			if (yych <= 'Z') goto yy276;
4770 			if (yych <= '^') goto yy18;
4771 			goto yy282;
4772 		} else {
4773 			if (yych <= 'm') {
4774 				if (yych <= '`') goto yy18;
4775 				goto yy283;
4776 			} else {
4777 				if (yych <= 'n') goto yy322;
4778 				if (yych <= 'z') goto yy283;
4779 				goto yy18;
4780 			}
4781 		}
4782 	}
4783 yy144:
4784 	YYDEBUG(144, *YYCURSOR);
4785 	yyaccept = 2;
4786 	yych = *(YYMARKER = ++YYCURSOR);
4787 	if (yych <= 'M') {
4788 		if (yych <= '.') {
4789 			if (yych <= ')') {
4790 				if (yych <= '(') goto yy18;
4791 				goto yy108;
4792 			} else {
4793 				if (yych == '-') goto yy282;
4794 				goto yy18;
4795 			}
4796 		} else {
4797 			if (yych <= '@') {
4798 				if (yych <= '/') goto yy282;
4799 				goto yy18;
4800 			} else {
4801 				if (yych == 'L') goto yy320;
4802 				goto yy276;
4803 			}
4804 		}
4805 	} else {
4806 		if (yych <= '`') {
4807 			if (yych <= 'Z') {
4808 				if (yych <= 'N') goto yy321;
4809 				goto yy276;
4810 			} else {
4811 				if (yych == '_') goto yy282;
4812 				goto yy18;
4813 			}
4814 		} else {
4815 			if (yych <= 'm') {
4816 				if (yych == 'l') goto yy323;
4817 				goto yy283;
4818 			} else {
4819 				if (yych <= 'n') goto yy324;
4820 				if (yych <= 'z') goto yy283;
4821 				goto yy18;
4822 			}
4823 		}
4824 	}
4825 yy145:
4826 	YYDEBUG(145, *YYCURSOR);
4827 	yych = *++YYCURSOR;
4828 	if (yych <= 'S') {
4829 		if (yych <= ')') {
4830 			if (yych <= '(') goto yy18;
4831 			goto yy108;
4832 		} else {
4833 			if (yych <= '@') goto yy18;
4834 			if (yych <= 'R') goto yy276;
4835 			goto yy325;
4836 		}
4837 	} else {
4838 		if (yych <= 'r') {
4839 			if (yych <= 'Z') goto yy276;
4840 			if (yych <= '`') goto yy18;
4841 			goto yy276;
4842 		} else {
4843 			if (yych <= 's') goto yy325;
4844 			if (yych <= 'z') goto yy276;
4845 			goto yy18;
4846 		}
4847 	}
4848 yy146:
4849 	YYDEBUG(146, *YYCURSOR);
4850 	yyaccept = 2;
4851 	yych = *(YYMARKER = ++YYCURSOR);
4852 	if (yych <= 'R') {
4853 		if (yych <= '-') {
4854 			if (yych == ')') goto yy108;
4855 			if (yych <= ',') goto yy18;
4856 			goto yy282;
4857 		} else {
4858 			if (yych == '/') goto yy282;
4859 			if (yych <= '@') goto yy18;
4860 			goto yy276;
4861 		}
4862 	} else {
4863 		if (yych <= '_') {
4864 			if (yych <= 'S') goto yy325;
4865 			if (yych <= 'Z') goto yy276;
4866 			if (yych <= '^') goto yy18;
4867 			goto yy282;
4868 		} else {
4869 			if (yych <= 'r') {
4870 				if (yych <= '`') goto yy18;
4871 				goto yy283;
4872 			} else {
4873 				if (yych <= 's') goto yy326;
4874 				if (yych <= 'z') goto yy283;
4875 				goto yy18;
4876 			}
4877 		}
4878 	}
4879 yy147:
4880 	YYDEBUG(147, *YYCURSOR);
4881 	yych = *++YYCURSOR;
4882 	if (yych <= 'Y') {
4883 		if (yych <= '@') {
4884 			if (yych == ')') goto yy108;
4885 			goto yy18;
4886 		} else {
4887 			if (yych == 'R') goto yy327;
4888 			if (yych <= 'X') goto yy276;
4889 			goto yy328;
4890 		}
4891 	} else {
4892 		if (yych <= 'r') {
4893 			if (yych <= 'Z') goto yy276;
4894 			if (yych <= '`') goto yy18;
4895 			if (yych <= 'q') goto yy276;
4896 			goto yy327;
4897 		} else {
4898 			if (yych == 'y') goto yy328;
4899 			if (yych <= 'z') goto yy276;
4900 			goto yy18;
4901 		}
4902 	}
4903 yy148:
4904 	YYDEBUG(148, *YYCURSOR);
4905 	yych = *++YYCURSOR;
4906 	if (yych <= 'D') {
4907 		if (yych <= ')') {
4908 			if (yych <= '(') goto yy18;
4909 			goto yy108;
4910 		} else {
4911 			if (yych <= '@') goto yy18;
4912 			if (yych <= 'C') goto yy276;
4913 			goto yy329;
4914 		}
4915 	} else {
4916 		if (yych <= 'c') {
4917 			if (yych <= 'Z') goto yy276;
4918 			if (yych <= '`') goto yy18;
4919 			goto yy276;
4920 		} else {
4921 			if (yych <= 'd') goto yy329;
4922 			if (yych <= 'z') goto yy276;
4923 			goto yy18;
4924 		}
4925 	}
4926 yy149:
4927 	YYDEBUG(149, *YYCURSOR);
4928 	yych = *++YYCURSOR;
4929 	if (yych <= 'N') {
4930 		if (yych <= ')') {
4931 			if (yych <= '(') goto yy18;
4932 			goto yy108;
4933 		} else {
4934 			if (yych <= '@') goto yy18;
4935 			if (yych <= 'M') goto yy276;
4936 			goto yy299;
4937 		}
4938 	} else {
4939 		if (yych <= 'm') {
4940 			if (yych <= 'Z') goto yy276;
4941 			if (yych <= '`') goto yy18;
4942 			goto yy276;
4943 		} else {
4944 			if (yych <= 'n') goto yy299;
4945 			if (yych <= 'z') goto yy276;
4946 			goto yy18;
4947 		}
4948 	}
4949 yy150:
4950 	YYDEBUG(150, *YYCURSOR);
4951 	yyaccept = 2;
4952 	yych = *(YYMARKER = ++YYCURSOR);
4953 	if (yych <= 'X') {
4954 		if (yych <= '.') {
4955 			if (yych <= ')') {
4956 				if (yych <= '(') goto yy18;
4957 				goto yy108;
4958 			} else {
4959 				if (yych == '-') goto yy282;
4960 				goto yy18;
4961 			}
4962 		} else {
4963 			if (yych <= '@') {
4964 				if (yych <= '/') goto yy282;
4965 				goto yy18;
4966 			} else {
4967 				if (yych == 'R') goto yy327;
4968 				goto yy276;
4969 			}
4970 		}
4971 	} else {
4972 		if (yych <= '`') {
4973 			if (yych <= 'Z') {
4974 				if (yych <= 'Y') goto yy328;
4975 				goto yy276;
4976 			} else {
4977 				if (yych == '_') goto yy282;
4978 				goto yy18;
4979 			}
4980 		} else {
4981 			if (yych <= 'x') {
4982 				if (yych == 'r') goto yy330;
4983 				goto yy283;
4984 			} else {
4985 				if (yych <= 'y') goto yy331;
4986 				if (yych <= 'z') goto yy283;
4987 				goto yy18;
4988 			}
4989 		}
4990 	}
4991 yy151:
4992 	YYDEBUG(151, *YYCURSOR);
4993 	yyaccept = 2;
4994 	yych = *(YYMARKER = ++YYCURSOR);
4995 	if (yych <= 'C') {
4996 		if (yych <= '-') {
4997 			if (yych == ')') goto yy108;
4998 			if (yych <= ',') goto yy18;
4999 			goto yy282;
5000 		} else {
5001 			if (yych == '/') goto yy282;
5002 			if (yych <= '@') goto yy18;
5003 			goto yy276;
5004 		}
5005 	} else {
5006 		if (yych <= '_') {
5007 			if (yych <= 'D') goto yy329;
5008 			if (yych <= 'Z') goto yy276;
5009 			if (yych <= '^') goto yy18;
5010 			goto yy282;
5011 		} else {
5012 			if (yych <= 'c') {
5013 				if (yych <= '`') goto yy18;
5014 				goto yy283;
5015 			} else {
5016 				if (yych <= 'd') goto yy332;
5017 				if (yych <= 'z') goto yy283;
5018 				goto yy18;
5019 			}
5020 		}
5021 	}
5022 yy152:
5023 	YYDEBUG(152, *YYCURSOR);
5024 	yyaccept = 2;
5025 	yych = *(YYMARKER = ++YYCURSOR);
5026 	if (yych <= 'M') {
5027 		if (yych <= '-') {
5028 			if (yych == ')') goto yy108;
5029 			if (yych <= ',') goto yy18;
5030 			goto yy282;
5031 		} else {
5032 			if (yych == '/') goto yy282;
5033 			if (yych <= '@') goto yy18;
5034 			goto yy276;
5035 		}
5036 	} else {
5037 		if (yych <= '_') {
5038 			if (yych <= 'N') goto yy299;
5039 			if (yych <= 'Z') goto yy276;
5040 			if (yych <= '^') goto yy18;
5041 			goto yy282;
5042 		} else {
5043 			if (yych <= 'm') {
5044 				if (yych <= '`') goto yy18;
5045 				goto yy283;
5046 			} else {
5047 				if (yych <= 'n') goto yy306;
5048 				if (yych <= 'z') goto yy283;
5049 				goto yy18;
5050 			}
5051 		}
5052 	}
5053 yy153:
5054 	YYDEBUG(153, *YYCURSOR);
5055 	yych = *++YYCURSOR;
5056 	if (yych <= 'X') {
5057 		if (yych <= ')') {
5058 			if (yych <= '(') goto yy18;
5059 			goto yy108;
5060 		} else {
5061 			if (yych <= '@') goto yy18;
5062 			if (yych <= 'W') goto yy276;
5063 			goto yy333;
5064 		}
5065 	} else {
5066 		if (yych <= 'w') {
5067 			if (yych <= 'Z') goto yy276;
5068 			if (yych <= '`') goto yy18;
5069 			goto yy276;
5070 		} else {
5071 			if (yych <= 'x') goto yy333;
5072 			if (yych <= 'z') goto yy276;
5073 			goto yy18;
5074 		}
5075 	}
5076 yy154:
5077 	YYDEBUG(154, *YYCURSOR);
5078 	yych = *++YYCURSOR;
5079 	if (yych <= 'N') {
5080 		if (yych <= ')') {
5081 			if (yych <= '(') goto yy18;
5082 			goto yy108;
5083 		} else {
5084 			if (yych <= '@') goto yy18;
5085 			if (yych <= 'M') goto yy276;
5086 			goto yy296;
5087 		}
5088 	} else {
5089 		if (yych <= 'm') {
5090 			if (yych <= 'Z') goto yy276;
5091 			if (yych <= '`') goto yy18;
5092 			goto yy276;
5093 		} else {
5094 			if (yych <= 'n') goto yy296;
5095 			if (yych <= 'z') goto yy276;
5096 			goto yy18;
5097 		}
5098 	}
5099 yy155:
5100 	YYDEBUG(155, *YYCURSOR);
5101 	yych = *++YYCURSOR;
5102 	if (yych <= 'W') {
5103 		if (yych <= 'N') {
5104 			if (yych == ')') goto yy108;
5105 			if (yych <= '@') goto yy18;
5106 			goto yy276;
5107 		} else {
5108 			if (yych <= 'O') goto yy334;
5109 			if (yych <= 'U') goto yy276;
5110 			if (yych <= 'V') goto yy289;
5111 			goto yy335;
5112 		}
5113 	} else {
5114 		if (yych <= 'o') {
5115 			if (yych <= 'Z') goto yy276;
5116 			if (yych <= '`') goto yy18;
5117 			if (yych <= 'n') goto yy276;
5118 			goto yy334;
5119 		} else {
5120 			if (yych <= 'v') {
5121 				if (yych <= 'u') goto yy276;
5122 				goto yy289;
5123 			} else {
5124 				if (yych <= 'w') goto yy335;
5125 				if (yych <= 'z') goto yy276;
5126 				goto yy18;
5127 			}
5128 		}
5129 	}
5130 yy156:
5131 	YYDEBUG(156, *YYCURSOR);
5132 	yyaccept = 2;
5133 	yych = *(YYMARKER = ++YYCURSOR);
5134 	if (yych <= 'W') {
5135 		if (yych <= '-') {
5136 			if (yych == ')') goto yy108;
5137 			if (yych <= ',') goto yy18;
5138 			goto yy282;
5139 		} else {
5140 			if (yych == '/') goto yy282;
5141 			if (yych <= '@') goto yy18;
5142 			goto yy276;
5143 		}
5144 	} else {
5145 		if (yych <= '_') {
5146 			if (yych <= 'X') goto yy333;
5147 			if (yych <= 'Z') goto yy276;
5148 			if (yych <= '^') goto yy18;
5149 			goto yy282;
5150 		} else {
5151 			if (yych <= 'w') {
5152 				if (yych <= '`') goto yy18;
5153 				goto yy283;
5154 			} else {
5155 				if (yych <= 'x') goto yy337;
5156 				if (yych <= 'z') goto yy283;
5157 				goto yy18;
5158 			}
5159 		}
5160 	}
5161 yy157:
5162 	YYDEBUG(157, *YYCURSOR);
5163 	yyaccept = 2;
5164 	yych = *(YYMARKER = ++YYCURSOR);
5165 	if (yych <= 'M') {
5166 		if (yych <= '-') {
5167 			if (yych == ')') goto yy108;
5168 			if (yych <= ',') goto yy18;
5169 			goto yy282;
5170 		} else {
5171 			if (yych == '/') goto yy282;
5172 			if (yych <= '@') goto yy18;
5173 			goto yy276;
5174 		}
5175 	} else {
5176 		if (yych <= '_') {
5177 			if (yych <= 'N') goto yy296;
5178 			if (yych <= 'Z') goto yy276;
5179 			if (yych <= '^') goto yy18;
5180 			goto yy282;
5181 		} else {
5182 			if (yych <= 'm') {
5183 				if (yych <= '`') goto yy18;
5184 				goto yy283;
5185 			} else {
5186 				if (yych <= 'n') goto yy303;
5187 				if (yych <= 'z') goto yy283;
5188 				goto yy18;
5189 			}
5190 		}
5191 	}
5192 yy158:
5193 	YYDEBUG(158, *YYCURSOR);
5194 	yyaccept = 2;
5195 	yych = *(YYMARKER = ++YYCURSOR);
5196 	if (yych <= 'V') {
5197 		if (yych <= '.') {
5198 			if (yych <= ')') {
5199 				if (yych <= '(') goto yy18;
5200 				goto yy108;
5201 			} else {
5202 				if (yych == '-') goto yy282;
5203 				goto yy18;
5204 			}
5205 		} else {
5206 			if (yych <= 'N') {
5207 				if (yych <= '/') goto yy282;
5208 				if (yych <= '@') goto yy18;
5209 				goto yy276;
5210 			} else {
5211 				if (yych <= 'O') goto yy334;
5212 				if (yych <= 'U') goto yy276;
5213 				goto yy289;
5214 			}
5215 		}
5216 	} else {
5217 		if (yych <= 'n') {
5218 			if (yych <= '^') {
5219 				if (yych <= 'W') goto yy335;
5220 				if (yych <= 'Z') goto yy276;
5221 				goto yy18;
5222 			} else {
5223 				if (yych <= '_') goto yy282;
5224 				if (yych <= '`') goto yy18;
5225 				goto yy283;
5226 			}
5227 		} else {
5228 			if (yych <= 'v') {
5229 				if (yych <= 'o') goto yy338;
5230 				if (yych <= 'u') goto yy283;
5231 				goto yy290;
5232 			} else {
5233 				if (yych <= 'w') goto yy339;
5234 				if (yych <= 'z') goto yy283;
5235 				goto yy18;
5236 			}
5237 		}
5238 	}
5239 yy159:
5240 	YYDEBUG(159, *YYCURSOR);
5241 	yych = *++YYCURSOR;
5242 	if (yych <= 'T') {
5243 		if (yych <= ')') {
5244 			if (yych <= '(') goto yy18;
5245 			goto yy108;
5246 		} else {
5247 			if (yych <= '@') goto yy18;
5248 			if (yych <= 'S') goto yy276;
5249 			goto yy340;
5250 		}
5251 	} else {
5252 		if (yych <= 's') {
5253 			if (yych <= 'Z') goto yy276;
5254 			if (yych <= '`') goto yy18;
5255 			goto yy276;
5256 		} else {
5257 			if (yych <= 't') goto yy340;
5258 			if (yych <= 'z') goto yy276;
5259 			goto yy18;
5260 		}
5261 	}
5262 yy160:
5263 	YYDEBUG(160, *YYCURSOR);
5264 	yyaccept = 2;
5265 	yych = *(YYMARKER = ++YYCURSOR);
5266 	if (yych <= 'S') {
5267 		if (yych <= '-') {
5268 			if (yych == ')') goto yy108;
5269 			if (yych <= ',') goto yy18;
5270 			goto yy282;
5271 		} else {
5272 			if (yych == '/') goto yy282;
5273 			if (yych <= '@') goto yy18;
5274 			goto yy276;
5275 		}
5276 	} else {
5277 		if (yych <= '_') {
5278 			if (yych <= 'T') goto yy340;
5279 			if (yych <= 'Z') goto yy276;
5280 			if (yych <= '^') goto yy18;
5281 			goto yy282;
5282 		} else {
5283 			if (yych <= 's') {
5284 				if (yych <= '`') goto yy18;
5285 				goto yy283;
5286 			} else {
5287 				if (yych <= 't') goto yy341;
5288 				if (yych <= 'z') goto yy283;
5289 				goto yy18;
5290 			}
5291 		}
5292 	}
5293 yy161:
5294 	YYDEBUG(161, *YYCURSOR);
5295 	yych = *++YYCURSOR;
5296 	if (yych <= 'E') {
5297 		if (yych <= ')') {
5298 			if (yych <= '(') goto yy18;
5299 			goto yy108;
5300 		} else {
5301 			if (yych <= '@') goto yy18;
5302 			if (yych <= 'D') goto yy276;
5303 			goto yy342;
5304 		}
5305 	} else {
5306 		if (yych <= 'd') {
5307 			if (yych <= 'Z') goto yy276;
5308 			if (yych <= '`') goto yy18;
5309 			goto yy276;
5310 		} else {
5311 			if (yych <= 'e') goto yy342;
5312 			if (yych <= 'z') goto yy276;
5313 			goto yy18;
5314 		}
5315 	}
5316 yy162:
5317 	YYDEBUG(162, *YYCURSOR);
5318 	yyaccept = 2;
5319 	yych = *(YYMARKER = ++YYCURSOR);
5320 	if (yych <= 'D') {
5321 		if (yych <= '-') {
5322 			if (yych == ')') goto yy108;
5323 			if (yych <= ',') goto yy18;
5324 			goto yy282;
5325 		} else {
5326 			if (yych == '/') goto yy282;
5327 			if (yych <= '@') goto yy18;
5328 			goto yy276;
5329 		}
5330 	} else {
5331 		if (yych <= '_') {
5332 			if (yych <= 'E') goto yy342;
5333 			if (yych <= 'Z') goto yy276;
5334 			if (yych <= '^') goto yy18;
5335 			goto yy282;
5336 		} else {
5337 			if (yych <= 'd') {
5338 				if (yych <= '`') goto yy18;
5339 				goto yy283;
5340 			} else {
5341 				if (yych <= 'e') goto yy343;
5342 				if (yych <= 'z') goto yy283;
5343 				goto yy18;
5344 			}
5345 		}
5346 	}
5347 yy163:
5348 	YYDEBUG(163, *YYCURSOR);
5349 	yych = *++YYCURSOR;
5350 	if (yych <= 'T') {
5351 		if (yych <= ')') {
5352 			if (yych <= '(') goto yy18;
5353 			goto yy108;
5354 		} else {
5355 			if (yych <= '@') goto yy18;
5356 			if (yych <= 'S') goto yy276;
5357 			goto yy344;
5358 		}
5359 	} else {
5360 		if (yych <= 's') {
5361 			if (yych <= 'Z') goto yy276;
5362 			if (yych <= '`') goto yy18;
5363 			goto yy276;
5364 		} else {
5365 			if (yych <= 't') goto yy344;
5366 			if (yych <= 'z') goto yy276;
5367 			goto yy18;
5368 		}
5369 	}
5370 yy164:
5371 	YYDEBUG(164, *YYCURSOR);
5372 	yych = *++YYCURSOR;
5373 	if (yych <= 'V') {
5374 		if (yych <= 'B') {
5375 			if (yych == ')') goto yy108;
5376 			if (yych <= '@') goto yy18;
5377 			goto yy276;
5378 		} else {
5379 			if (yych <= 'O') {
5380 				if (yych <= 'C') goto yy345;
5381 				goto yy276;
5382 			} else {
5383 				if (yych <= 'P') goto yy346;
5384 				if (yych <= 'U') goto yy276;
5385 				goto yy347;
5386 			}
5387 		}
5388 	} else {
5389 		if (yych <= 'o') {
5390 			if (yych <= '`') {
5391 				if (yych <= 'Z') goto yy276;
5392 				goto yy18;
5393 			} else {
5394 				if (yych == 'c') goto yy345;
5395 				goto yy276;
5396 			}
5397 		} else {
5398 			if (yych <= 'u') {
5399 				if (yych <= 'p') goto yy346;
5400 				goto yy276;
5401 			} else {
5402 				if (yych <= 'v') goto yy347;
5403 				if (yych <= 'z') goto yy276;
5404 				goto yy18;
5405 			}
5406 		}
5407 	}
5408 yy165:
5409 	YYDEBUG(165, *YYCURSOR);
5410 	yych = *++YYCURSOR;
5411 	if (yych <= 'X') {
5412 		if (yych <= ')') {
5413 			if (yych <= '(') goto yy18;
5414 			goto yy108;
5415 		} else {
5416 			if (yych <= '@') goto yy18;
5417 			if (yych <= 'W') goto yy276;
5418 			goto yy296;
5419 		}
5420 	} else {
5421 		if (yych <= 'w') {
5422 			if (yych <= 'Z') goto yy276;
5423 			if (yych <= '`') goto yy18;
5424 			goto yy276;
5425 		} else {
5426 			if (yych <= 'x') goto yy296;
5427 			if (yych <= 'z') goto yy276;
5428 			goto yy18;
5429 		}
5430 	}
5431 yy166:
5432 	YYDEBUG(166, *YYCURSOR);
5433 	yyaccept = 2;
5434 	yych = *(YYMARKER = ++YYCURSOR);
5435 	if (yych <= 'S') {
5436 		if (yych <= '-') {
5437 			if (yych == ')') goto yy108;
5438 			if (yych <= ',') goto yy18;
5439 			goto yy282;
5440 		} else {
5441 			if (yych == '/') goto yy282;
5442 			if (yych <= '@') goto yy18;
5443 			goto yy276;
5444 		}
5445 	} else {
5446 		if (yych <= '_') {
5447 			if (yych <= 'T') goto yy344;
5448 			if (yych <= 'Z') goto yy276;
5449 			if (yych <= '^') goto yy18;
5450 			goto yy282;
5451 		} else {
5452 			if (yych <= 's') {
5453 				if (yych <= '`') goto yy18;
5454 				goto yy283;
5455 			} else {
5456 				if (yych <= 't') goto yy348;
5457 				if (yych <= 'z') goto yy283;
5458 				goto yy18;
5459 			}
5460 		}
5461 	}
5462 yy167:
5463 	YYDEBUG(167, *YYCURSOR);
5464 	yyaccept = 2;
5465 	yych = *(YYMARKER = ++YYCURSOR);
5466 	if (yych <= 'U') {
5467 		if (yych <= '/') {
5468 			if (yych <= ',') {
5469 				if (yych == ')') goto yy108;
5470 				goto yy18;
5471 			} else {
5472 				if (yych == '.') goto yy18;
5473 				goto yy282;
5474 			}
5475 		} else {
5476 			if (yych <= 'C') {
5477 				if (yych <= '@') goto yy18;
5478 				if (yych <= 'B') goto yy276;
5479 				goto yy345;
5480 			} else {
5481 				if (yych == 'P') goto yy346;
5482 				goto yy276;
5483 			}
5484 		}
5485 	} else {
5486 		if (yych <= 'b') {
5487 			if (yych <= '^') {
5488 				if (yych <= 'V') goto yy347;
5489 				if (yych <= 'Z') goto yy276;
5490 				goto yy18;
5491 			} else {
5492 				if (yych <= '_') goto yy282;
5493 				if (yych <= '`') goto yy18;
5494 				goto yy283;
5495 			}
5496 		} else {
5497 			if (yych <= 'p') {
5498 				if (yych <= 'c') goto yy349;
5499 				if (yych <= 'o') goto yy283;
5500 				goto yy350;
5501 			} else {
5502 				if (yych == 'v') goto yy351;
5503 				if (yych <= 'z') goto yy283;
5504 				goto yy18;
5505 			}
5506 		}
5507 	}
5508 yy168:
5509 	YYDEBUG(168, *YYCURSOR);
5510 	yyaccept = 2;
5511 	yych = *(YYMARKER = ++YYCURSOR);
5512 	if (yych <= 'W') {
5513 		if (yych <= '-') {
5514 			if (yych == ')') goto yy108;
5515 			if (yych <= ',') goto yy18;
5516 			goto yy282;
5517 		} else {
5518 			if (yych == '/') goto yy282;
5519 			if (yych <= '@') goto yy18;
5520 			goto yy276;
5521 		}
5522 	} else {
5523 		if (yych <= '_') {
5524 			if (yych <= 'X') goto yy296;
5525 			if (yych <= 'Z') goto yy276;
5526 			if (yych <= '^') goto yy18;
5527 			goto yy282;
5528 		} else {
5529 			if (yych <= 'w') {
5530 				if (yych <= '`') goto yy18;
5531 				goto yy283;
5532 			} else {
5533 				if (yych <= 'x') goto yy303;
5534 				if (yych <= 'z') goto yy283;
5535 				goto yy18;
5536 			}
5537 		}
5538 	}
5539 yy169:
5540 	YYDEBUG(169, *YYCURSOR);
5541 	yych = *++YYCURSOR;
5542 	if (yych <= '/') {
5543 		if (yych == '.') goto yy71;
5544 		goto yy56;
5545 	} else {
5546 		if (yych <= '9') goto yy352;
5547 		if (yych <= ':') goto yy71;
5548 		goto yy56;
5549 	}
5550 yy170:
5551 	YYDEBUG(170, *YYCURSOR);
5552 	yych = *++YYCURSOR;
5553 	if (yych <= '/') {
5554 		if (yych == '.') goto yy71;
5555 		goto yy56;
5556 	} else {
5557 		if (yych <= '4') goto yy352;
5558 		if (yych == ':') goto yy71;
5559 		goto yy56;
5560 	}
5561 yy171:
5562 	YYDEBUG(171, *YYCURSOR);
5563 	yych = *++YYCURSOR;
5564 	if (yych == '.') goto yy71;
5565 	if (yych == ':') goto yy71;
5566 	goto yy56;
5567 yy172:
5568 	YYDEBUG(172, *YYCURSOR);
5569 	yych = *++YYCURSOR;
5570 	if (yych <= 'U') {
5571 		if (yych <= '@') {
5572 			if (yych == ')') goto yy108;
5573 			goto yy18;
5574 		} else {
5575 			if (yych == 'I') goto yy353;
5576 			if (yych <= 'T') goto yy276;
5577 			goto yy354;
5578 		}
5579 	} else {
5580 		if (yych <= 'i') {
5581 			if (yych <= 'Z') goto yy276;
5582 			if (yych <= '`') goto yy18;
5583 			if (yych <= 'h') goto yy276;
5584 			goto yy353;
5585 		} else {
5586 			if (yych == 'u') goto yy354;
5587 			if (yych <= 'z') goto yy276;
5588 			goto yy18;
5589 		}
5590 	}
5591 yy173:
5592 	YYDEBUG(173, *YYCURSOR);
5593 	yych = *++YYCURSOR;
5594 	if (yych <= 'M') {
5595 		if (yych <= '@') {
5596 			if (yych == ')') goto yy108;
5597 			goto yy18;
5598 		} else {
5599 			if (yych == 'D') goto yy355;
5600 			if (yych <= 'L') goto yy276;
5601 			goto yy356;
5602 		}
5603 	} else {
5604 		if (yych <= 'd') {
5605 			if (yych <= 'Z') goto yy276;
5606 			if (yych <= '`') goto yy18;
5607 			if (yych <= 'c') goto yy276;
5608 			goto yy355;
5609 		} else {
5610 			if (yych == 'm') goto yy356;
5611 			if (yych <= 'z') goto yy276;
5612 			goto yy18;
5613 		}
5614 	}
5615 yy174:
5616 	YYDEBUG(174, *YYCURSOR);
5617 	yych = *++YYCURSOR;
5618 	if (yych <= 'E') {
5619 		if (yych <= ')') {
5620 			if (yych <= '(') goto yy18;
5621 			goto yy108;
5622 		} else {
5623 			if (yych <= '@') goto yy18;
5624 			if (yych <= 'D') goto yy276;
5625 			goto yy357;
5626 		}
5627 	} else {
5628 		if (yych <= 'd') {
5629 			if (yych <= 'Z') goto yy276;
5630 			if (yych <= '`') goto yy18;
5631 			goto yy276;
5632 		} else {
5633 			if (yych <= 'e') goto yy357;
5634 			if (yych <= 'z') goto yy276;
5635 			goto yy18;
5636 		}
5637 	}
5638 yy175:
5639 	YYDEBUG(175, *YYCURSOR);
5640 	yych = *++YYCURSOR;
5641 	if (yych <= 'E') {
5642 		if (yych <= ')') {
5643 			if (yych <= '(') goto yy18;
5644 			goto yy108;
5645 		} else {
5646 			if (yych <= '@') goto yy18;
5647 			if (yych <= 'D') goto yy276;
5648 			goto yy358;
5649 		}
5650 	} else {
5651 		if (yych <= 'd') {
5652 			if (yych <= 'Z') goto yy276;
5653 			if (yych <= '`') goto yy18;
5654 			goto yy276;
5655 		} else {
5656 			if (yych <= 'e') goto yy358;
5657 			if (yych <= 'z') goto yy276;
5658 			goto yy18;
5659 		}
5660 	}
5661 yy176:
5662 	YYDEBUG(176, *YYCURSOR);
5663 	yyaccept = 2;
5664 	yych = *(YYMARKER = ++YYCURSOR);
5665 	if (yych <= 'T') {
5666 		if (yych <= '.') {
5667 			if (yych <= ')') {
5668 				if (yych <= '(') goto yy18;
5669 				goto yy108;
5670 			} else {
5671 				if (yych == '-') goto yy282;
5672 				goto yy18;
5673 			}
5674 		} else {
5675 			if (yych <= '@') {
5676 				if (yych <= '/') goto yy282;
5677 				goto yy18;
5678 			} else {
5679 				if (yych == 'I') goto yy353;
5680 				goto yy276;
5681 			}
5682 		}
5683 	} else {
5684 		if (yych <= '`') {
5685 			if (yych <= 'Z') {
5686 				if (yych <= 'U') goto yy354;
5687 				goto yy276;
5688 			} else {
5689 				if (yych == '_') goto yy282;
5690 				goto yy18;
5691 			}
5692 		} else {
5693 			if (yych <= 't') {
5694 				if (yych == 'i') goto yy359;
5695 				goto yy283;
5696 			} else {
5697 				if (yych <= 'u') goto yy360;
5698 				if (yych <= 'z') goto yy283;
5699 				goto yy18;
5700 			}
5701 		}
5702 	}
5703 yy177:
5704 	YYDEBUG(177, *YYCURSOR);
5705 	yyaccept = 2;
5706 	yych = *(YYMARKER = ++YYCURSOR);
5707 	if (yych <= 'L') {
5708 		if (yych <= '.') {
5709 			if (yych <= ')') {
5710 				if (yych <= '(') goto yy18;
5711 				goto yy108;
5712 			} else {
5713 				if (yych == '-') goto yy282;
5714 				goto yy18;
5715 			}
5716 		} else {
5717 			if (yych <= '@') {
5718 				if (yych <= '/') goto yy282;
5719 				goto yy18;
5720 			} else {
5721 				if (yych == 'D') goto yy355;
5722 				goto yy276;
5723 			}
5724 		}
5725 	} else {
5726 		if (yych <= '`') {
5727 			if (yych <= 'Z') {
5728 				if (yych <= 'M') goto yy356;
5729 				goto yy276;
5730 			} else {
5731 				if (yych == '_') goto yy282;
5732 				goto yy18;
5733 			}
5734 		} else {
5735 			if (yych <= 'l') {
5736 				if (yych == 'd') goto yy361;
5737 				goto yy283;
5738 			} else {
5739 				if (yych <= 'm') goto yy362;
5740 				if (yych <= 'z') goto yy283;
5741 				goto yy18;
5742 			}
5743 		}
5744 	}
5745 yy178:
5746 	YYDEBUG(178, *YYCURSOR);
5747 	yyaccept = 2;
5748 	yych = *(YYMARKER = ++YYCURSOR);
5749 	if (yych <= 'D') {
5750 		if (yych <= '-') {
5751 			if (yych == ')') goto yy108;
5752 			if (yych <= ',') goto yy18;
5753 			goto yy282;
5754 		} else {
5755 			if (yych == '/') goto yy282;
5756 			if (yych <= '@') goto yy18;
5757 			goto yy276;
5758 		}
5759 	} else {
5760 		if (yych <= '_') {
5761 			if (yych <= 'E') goto yy357;
5762 			if (yych <= 'Z') goto yy276;
5763 			if (yych <= '^') goto yy18;
5764 			goto yy282;
5765 		} else {
5766 			if (yych <= 'd') {
5767 				if (yych <= '`') goto yy18;
5768 				goto yy283;
5769 			} else {
5770 				if (yych <= 'e') goto yy363;
5771 				if (yych <= 'z') goto yy283;
5772 				goto yy18;
5773 			}
5774 		}
5775 	}
5776 yy179:
5777 	YYDEBUG(179, *YYCURSOR);
5778 	yyaccept = 2;
5779 	yych = *(YYMARKER = ++YYCURSOR);
5780 	if (yych <= 'D') {
5781 		if (yych <= '-') {
5782 			if (yych == ')') goto yy108;
5783 			if (yych <= ',') goto yy18;
5784 			goto yy282;
5785 		} else {
5786 			if (yych == '/') goto yy282;
5787 			if (yych <= '@') goto yy18;
5788 			goto yy276;
5789 		}
5790 	} else {
5791 		if (yych <= '_') {
5792 			if (yych <= 'E') goto yy358;
5793 			if (yych <= 'Z') goto yy276;
5794 			if (yych <= '^') goto yy18;
5795 			goto yy282;
5796 		} else {
5797 			if (yych <= 'd') {
5798 				if (yych <= '`') goto yy18;
5799 				goto yy283;
5800 			} else {
5801 				if (yych <= 'e') goto yy364;
5802 				if (yych <= 'z') goto yy283;
5803 				goto yy18;
5804 			}
5805 		}
5806 	}
5807 yy180:
5808 	YYDEBUG(180, *YYCURSOR);
5809 	yyaccept = 2;
5810 	yych = *(YYMARKER = ++YYCURSOR);
5811 	if (yych <= '.') {
5812 		if (yych <= ' ') {
5813 			if (yych == '\t') goto yy135;
5814 			if (yych <= 0x1F) goto yy18;
5815 			goto yy135;
5816 		} else {
5817 			if (yych == ')') goto yy108;
5818 			if (yych <= ',') goto yy18;
5819 			goto yy135;
5820 		}
5821 	} else {
5822 		if (yych <= 'H') {
5823 			if (yych <= '/') goto yy18;
5824 			if (yych <= '9') goto yy135;
5825 			if (yych <= '@') goto yy18;
5826 			goto yy276;
5827 		} else {
5828 			if (yych <= 'Z') {
5829 				if (yych <= 'I') goto yy365;
5830 				goto yy276;
5831 			} else {
5832 				if (yych <= '`') goto yy18;
5833 				if (yych <= 'z') goto yy276;
5834 				goto yy18;
5835 			}
5836 		}
5837 	}
5838 yy181:
5839 	YYDEBUG(181, *YYCURSOR);
5840 	yych = *++YYCURSOR;
5841 	if (yych <= 'E') {
5842 		if (yych <= '@') {
5843 			if (yych == ')') goto yy108;
5844 			goto yy18;
5845 		} else {
5846 			if (yych <= 'C') goto yy276;
5847 			if (yych <= 'D') goto yy366;
5848 			goto yy367;
5849 		}
5850 	} else {
5851 		if (yych <= 'c') {
5852 			if (yych <= 'Z') goto yy276;
5853 			if (yych <= '`') goto yy18;
5854 			goto yy276;
5855 		} else {
5856 			if (yych <= 'd') goto yy366;
5857 			if (yych <= 'e') goto yy367;
5858 			if (yych <= 'z') goto yy276;
5859 			goto yy18;
5860 		}
5861 	}
5862 yy182:
5863 	YYDEBUG(182, *YYCURSOR);
5864 	yyaccept = 2;
5865 	yych = *(YYMARKER = ++YYCURSOR);
5866 	if (yych <= 'D') {
5867 		if (yych <= '-') {
5868 			if (yych == ')') goto yy108;
5869 			if (yych <= ',') goto yy18;
5870 			goto yy282;
5871 		} else {
5872 			if (yych <= '/') {
5873 				if (yych <= '.') goto yy18;
5874 				goto yy282;
5875 			} else {
5876 				if (yych <= '@') goto yy18;
5877 				if (yych <= 'C') goto yy276;
5878 				goto yy366;
5879 			}
5880 		}
5881 	} else {
5882 		if (yych <= '`') {
5883 			if (yych <= 'Z') {
5884 				if (yych <= 'E') goto yy367;
5885 				goto yy276;
5886 			} else {
5887 				if (yych == '_') goto yy282;
5888 				goto yy18;
5889 			}
5890 		} else {
5891 			if (yych <= 'd') {
5892 				if (yych <= 'c') goto yy283;
5893 				goto yy368;
5894 			} else {
5895 				if (yych <= 'e') goto yy369;
5896 				if (yych <= 'z') goto yy283;
5897 				goto yy18;
5898 			}
5899 		}
5900 	}
5901 yy183:
5902 	YYDEBUG(183, *YYCURSOR);
5903 	yych = *++YYCURSOR;
5904 	if (yych <= 'S') {
5905 		if (yych <= ')') {
5906 			if (yych <= '(') goto yy18;
5907 			goto yy108;
5908 		} else {
5909 			if (yych <= '@') goto yy18;
5910 			if (yych <= 'R') goto yy276;
5911 			goto yy370;
5912 		}
5913 	} else {
5914 		if (yych <= 'r') {
5915 			if (yych <= 'Z') goto yy276;
5916 			if (yych <= '`') goto yy18;
5917 			goto yy276;
5918 		} else {
5919 			if (yych <= 's') goto yy370;
5920 			if (yych <= 'z') goto yy276;
5921 			goto yy18;
5922 		}
5923 	}
5924 yy184:
5925 	YYDEBUG(184, *YYCURSOR);
5926 	yyaccept = 2;
5927 	yych = *(YYMARKER = ++YYCURSOR);
5928 	if (yych <= 'R') {
5929 		if (yych <= '-') {
5930 			if (yych == ')') goto yy108;
5931 			if (yych <= ',') goto yy18;
5932 			goto yy282;
5933 		} else {
5934 			if (yych == '/') goto yy282;
5935 			if (yych <= '@') goto yy18;
5936 			goto yy276;
5937 		}
5938 	} else {
5939 		if (yych <= '_') {
5940 			if (yych <= 'S') goto yy370;
5941 			if (yych <= 'Z') goto yy276;
5942 			if (yych <= '^') goto yy18;
5943 			goto yy282;
5944 		} else {
5945 			if (yych <= 'r') {
5946 				if (yych <= '`') goto yy18;
5947 				goto yy283;
5948 			} else {
5949 				if (yych <= 's') goto yy371;
5950 				if (yych <= 'z') goto yy283;
5951 				goto yy18;
5952 			}
5953 		}
5954 	}
5955 yy185:
5956 	YYDEBUG(185, *YYCURSOR);
5957 	++YYCURSOR;
5958 	if ((YYLIMIT - YYCURSOR) < 12) YYFILL(12);
5959 	yych = *YYCURSOR;
5960 yy186:
5961 	YYDEBUG(186, *YYCURSOR);
5962 	if (yych <= 'X') {
5963 		if (yych <= 'G') {
5964 			if (yych <= ' ') {
5965 				if (yych == '\t') goto yy185;
5966 				if (yych <= 0x1F) goto yy56;
5967 				goto yy185;
5968 			} else {
5969 				if (yych <= 'D') {
5970 					if (yych <= 'C') goto yy56;
5971 					goto yy188;
5972 				} else {
5973 					if (yych == 'F') goto yy189;
5974 					goto yy56;
5975 				}
5976 			}
5977 		} else {
5978 			if (yych <= 'S') {
5979 				if (yych <= 'L') {
5980 					if (yych <= 'H') goto yy75;
5981 					goto yy56;
5982 				} else {
5983 					if (yych <= 'M') goto yy190;
5984 					if (yych <= 'R') goto yy56;
5985 					goto yy191;
5986 				}
5987 			} else {
5988 				if (yych <= 'U') {
5989 					if (yych <= 'T') goto yy83;
5990 					goto yy84;
5991 				} else {
5992 					if (yych == 'W') goto yy86;
5993 					goto yy56;
5994 				}
5995 			}
5996 		}
5997 	} else {
5998 		if (yych <= 'r') {
5999 			if (yych <= 'f') {
6000 				if (yych <= 'c') {
6001 					if (yych <= 'Y') goto yy88;
6002 					goto yy56;
6003 				} else {
6004 					if (yych <= 'd') goto yy188;
6005 					if (yych <= 'e') goto yy56;
6006 					goto yy189;
6007 				}
6008 			} else {
6009 				if (yych <= 'h') {
6010 					if (yych <= 'g') goto yy56;
6011 					goto yy75;
6012 				} else {
6013 					if (yych == 'm') goto yy190;
6014 					goto yy56;
6015 				}
6016 			}
6017 		} else {
6018 			if (yych <= 'w') {
6019 				if (yych <= 't') {
6020 					if (yych <= 's') goto yy191;
6021 					goto yy83;
6022 				} else {
6023 					if (yych <= 'u') goto yy84;
6024 					if (yych <= 'v') goto yy56;
6025 					goto yy86;
6026 				}
6027 			} else {
6028 				if (yych <= 'y') {
6029 					if (yych <= 'x') goto yy56;
6030 					goto yy88;
6031 				} else {
6032 					if (yych == 0xC2) goto yy93;
6033 					goto yy56;
6034 				}
6035 			}
6036 		}
6037 	}
6038 yy187:
6039 	YYDEBUG(187, *YYCURSOR);
6040 	yych = *++YYCURSOR;
6041 	if (yych <= '/') goto yy186;
6042 	if (yych <= '9') goto yy372;
6043 	goto yy186;
6044 yy188:
6045 	YYDEBUG(188, *YYCURSOR);
6046 	yych = *++YYCURSOR;
6047 	if (yych == 'A') goto yy232;
6048 	if (yych == 'a') goto yy232;
6049 	goto yy56;
6050 yy189:
6051 	YYDEBUG(189, *YYCURSOR);
6052 	yych = *++YYCURSOR;
6053 	if (yych <= 'R') {
6054 		if (yych == 'O') goto yy235;
6055 		if (yych <= 'Q') goto yy56;
6056 		goto yy236;
6057 	} else {
6058 		if (yych <= 'o') {
6059 			if (yych <= 'n') goto yy56;
6060 			goto yy235;
6061 		} else {
6062 			if (yych == 'r') goto yy236;
6063 			goto yy56;
6064 		}
6065 	}
6066 yy190:
6067 	YYDEBUG(190, *YYCURSOR);
6068 	yych = *++YYCURSOR;
6069 	if (yych <= 'S') {
6070 		if (yych <= 'N') {
6071 			if (yych == 'I') goto yy247;
6072 			goto yy56;
6073 		} else {
6074 			if (yych <= 'O') goto yy248;
6075 			if (yych <= 'R') goto yy56;
6076 			goto yy249;
6077 		}
6078 	} else {
6079 		if (yych <= 'n') {
6080 			if (yych == 'i') goto yy247;
6081 			goto yy56;
6082 		} else {
6083 			if (yych <= 'o') goto yy248;
6084 			if (yych == 's') goto yy249;
6085 			goto yy56;
6086 		}
6087 	}
6088 yy191:
6089 	YYDEBUG(191, *YYCURSOR);
6090 	yych = *++YYCURSOR;
6091 	if (yych <= 'U') {
6092 		if (yych <= 'D') {
6093 			if (yych == 'A') goto yy253;
6094 			goto yy56;
6095 		} else {
6096 			if (yych <= 'E') goto yy373;
6097 			if (yych <= 'T') goto yy56;
6098 			goto yy255;
6099 		}
6100 	} else {
6101 		if (yych <= 'd') {
6102 			if (yych == 'a') goto yy253;
6103 			goto yy56;
6104 		} else {
6105 			if (yych <= 'e') goto yy373;
6106 			if (yych == 'u') goto yy255;
6107 			goto yy56;
6108 		}
6109 	}
6110 yy192:
6111 	YYDEBUG(192, *YYCURSOR);
6112 	yyaccept = 2;
6113 	yych = *(YYMARKER = ++YYCURSOR);
6114 	if (yych <= 'V') {
6115 		if (yych <= 'C') {
6116 			if (yych <= ' ') {
6117 				if (yych == '\t') goto yy186;
6118 				if (yych <= 0x1F) goto yy18;
6119 				goto yy186;
6120 			} else {
6121 				if (yych <= '5') {
6122 					if (yych <= '/') goto yy18;
6123 					goto yy374;
6124 				} else {
6125 					if (yych <= '9') goto yy375;
6126 					if (yych >= ';') goto yy18;
6127 				}
6128 			}
6129 		} else {
6130 			if (yych <= 'H') {
6131 				if (yych <= 'E') {
6132 					if (yych <= 'D') goto yy186;
6133 					goto yy18;
6134 				} else {
6135 					if (yych == 'G') goto yy18;
6136 					goto yy186;
6137 				}
6138 			} else {
6139 				if (yych <= 'M') {
6140 					if (yych <= 'L') goto yy18;
6141 					goto yy186;
6142 				} else {
6143 					if (yych <= 'R') goto yy18;
6144 					if (yych <= 'U') goto yy186;
6145 					goto yy18;
6146 				}
6147 			}
6148 		}
6149 	} else {
6150 		if (yych <= 'l') {
6151 			if (yych <= 'd') {
6152 				if (yych <= 'X') {
6153 					if (yych <= 'W') goto yy186;
6154 					goto yy18;
6155 				} else {
6156 					if (yych <= 'Y') goto yy186;
6157 					if (yych <= 'c') goto yy18;
6158 					goto yy186;
6159 				}
6160 			} else {
6161 				if (yych <= 'f') {
6162 					if (yych <= 'e') goto yy18;
6163 					goto yy186;
6164 				} else {
6165 					if (yych == 'h') goto yy186;
6166 					goto yy18;
6167 				}
6168 			}
6169 		} else {
6170 			if (yych <= 'w') {
6171 				if (yych <= 'r') {
6172 					if (yych <= 'm') goto yy186;
6173 					goto yy18;
6174 				} else {
6175 					if (yych == 'v') goto yy18;
6176 					goto yy186;
6177 				}
6178 			} else {
6179 				if (yych <= 'y') {
6180 					if (yych <= 'x') goto yy18;
6181 					goto yy186;
6182 				} else {
6183 					if (yych == 0xC2) goto yy186;
6184 					goto yy18;
6185 				}
6186 			}
6187 		}
6188 	}
6189 yy193:
6190 	YYDEBUG(193, *YYCURSOR);
6191 	yych = *++YYCURSOR;
6192 	if (yych <= '/') goto yy18;
6193 	if (yych <= '5') goto yy376;
6194 	if (yych <= '9') goto yy108;
6195 	goto yy18;
6196 yy194:
6197 	YYDEBUG(194, *YYCURSOR);
6198 	yyaccept = 2;
6199 	yych = *(YYMARKER = ++YYCURSOR);
6200 	if (yych <= 'W') {
6201 		if (yych <= 'E') {
6202 			if (yych <= ' ') {
6203 				if (yych == '\t') goto yy186;
6204 				if (yych <= 0x1F) goto yy18;
6205 				goto yy186;
6206 			} else {
6207 				if (yych <= '9') {
6208 					if (yych <= '/') goto yy18;
6209 					goto yy375;
6210 				} else {
6211 					if (yych == 'D') goto yy186;
6212 					goto yy18;
6213 				}
6214 			}
6215 		} else {
6216 			if (yych <= 'L') {
6217 				if (yych == 'G') goto yy18;
6218 				if (yych <= 'H') goto yy186;
6219 				goto yy18;
6220 			} else {
6221 				if (yych <= 'R') {
6222 					if (yych <= 'M') goto yy186;
6223 					goto yy18;
6224 				} else {
6225 					if (yych == 'V') goto yy18;
6226 					goto yy186;
6227 				}
6228 			}
6229 		}
6230 	} else {
6231 		if (yych <= 'l') {
6232 			if (yych <= 'd') {
6233 				if (yych == 'Y') goto yy186;
6234 				if (yych <= 'c') goto yy18;
6235 				goto yy186;
6236 			} else {
6237 				if (yych <= 'f') {
6238 					if (yych <= 'e') goto yy18;
6239 					goto yy186;
6240 				} else {
6241 					if (yych == 'h') goto yy186;
6242 					goto yy18;
6243 				}
6244 			}
6245 		} else {
6246 			if (yych <= 'w') {
6247 				if (yych <= 'r') {
6248 					if (yych <= 'm') goto yy186;
6249 					goto yy18;
6250 				} else {
6251 					if (yych == 'v') goto yy18;
6252 					goto yy186;
6253 				}
6254 			} else {
6255 				if (yych <= 'y') {
6256 					if (yych <= 'x') goto yy18;
6257 					goto yy186;
6258 				} else {
6259 					if (yych == 0xC2) goto yy186;
6260 					goto yy18;
6261 				}
6262 			}
6263 		}
6264 	}
6265 yy195:
6266 	YYDEBUG(195, *YYCURSOR);
6267 	yyaccept = 2;
6268 	yych = *(YYMARKER = ++YYCURSOR);
6269 	if (yych <= 'W') {
6270 		if (yych <= 'E') {
6271 			if (yych <= ' ') {
6272 				if (yych == '\t') goto yy186;
6273 				if (yych <= 0x1F) goto yy18;
6274 				goto yy186;
6275 			} else {
6276 				if (yych <= '9') {
6277 					if (yych <= '/') goto yy18;
6278 					goto yy377;
6279 				} else {
6280 					if (yych == 'D') goto yy186;
6281 					goto yy18;
6282 				}
6283 			}
6284 		} else {
6285 			if (yych <= 'L') {
6286 				if (yych == 'G') goto yy18;
6287 				if (yych <= 'H') goto yy186;
6288 				goto yy18;
6289 			} else {
6290 				if (yych <= 'R') {
6291 					if (yych <= 'M') goto yy186;
6292 					goto yy18;
6293 				} else {
6294 					if (yych == 'V') goto yy18;
6295 					goto yy186;
6296 				}
6297 			}
6298 		}
6299 	} else {
6300 		if (yych <= 'l') {
6301 			if (yych <= 'd') {
6302 				if (yych == 'Y') goto yy186;
6303 				if (yych <= 'c') goto yy18;
6304 				goto yy186;
6305 			} else {
6306 				if (yych <= 'f') {
6307 					if (yych <= 'e') goto yy18;
6308 					goto yy186;
6309 				} else {
6310 					if (yych == 'h') goto yy186;
6311 					goto yy18;
6312 				}
6313 			}
6314 		} else {
6315 			if (yych <= 'w') {
6316 				if (yych <= 'r') {
6317 					if (yych <= 'm') goto yy186;
6318 					goto yy18;
6319 				} else {
6320 					if (yych == 'v') goto yy18;
6321 					goto yy186;
6322 				}
6323 			} else {
6324 				if (yych <= 'y') {
6325 					if (yych <= 'x') goto yy18;
6326 					goto yy186;
6327 				} else {
6328 					if (yych == 0xC2) goto yy186;
6329 					goto yy18;
6330 				}
6331 			}
6332 		}
6333 	}
6334 yy196:
6335 	YYDEBUG(196, *YYCURSOR);
6336 	++YYCURSOR;
6337 	if ((YYLIMIT - YYCURSOR) < 13) YYFILL(13);
6338 	yych = *YYCURSOR;
6339 yy197:
6340 	YYDEBUG(197, *YYCURSOR);
6341 	switch (yych) {
6342 	case '\t':
6343 	case ' ':
6344 	case '-':
6345 	case '.':	goto yy196;
6346 	case 'A':
6347 	case 'a':	goto yy72;
6348 	case 'D':
6349 	case 'd':	goto yy204;
6350 	case 'F':
6351 	case 'f':	goto yy205;
6352 	case 'I':	goto yy76;
6353 	case 'J':
6354 	case 'j':	goto yy78;
6355 	case 'M':
6356 	case 'm':	goto yy206;
6357 	case 'N':
6358 	case 'n':	goto yy80;
6359 	case 'O':
6360 	case 'o':	goto yy81;
6361 	case 'S':
6362 	case 's':	goto yy207;
6363 	case 'V':	goto yy85;
6364 	case 'X':	goto yy87;
6365 	default:	goto yy56;
6366 	}
6367 yy198:
6368 	YYDEBUG(198, *YYCURSOR);
6369 	yych = *++YYCURSOR;
6370 	if (yych <= '.') {
6371 		if (yych <= ',') goto yy56;
6372 		if (yych <= '-') goto yy378;
6373 		goto yy379;
6374 	} else {
6375 		if (yych <= '/') goto yy56;
6376 		if (yych <= '9') goto yy200;
6377 		goto yy56;
6378 	}
6379 yy199:
6380 	YYDEBUG(199, *YYCURSOR);
6381 	yych = *++YYCURSOR;
6382 	if (yych <= '.') {
6383 		if (yych <= ',') goto yy56;
6384 		if (yych <= '-') goto yy378;
6385 		goto yy379;
6386 	} else {
6387 		if (yych <= '/') goto yy56;
6388 		if (yych >= '3') goto yy56;
6389 	}
6390 yy200:
6391 	YYDEBUG(200, *YYCURSOR);
6392 	yych = *++YYCURSOR;
6393 	if (yych <= ',') goto yy56;
6394 	if (yych <= '-') goto yy378;
6395 	if (yych <= '.') goto yy379;
6396 	goto yy56;
6397 yy201:
6398 	YYDEBUG(201, *YYCURSOR);
6399 	yych = *++YYCURSOR;
6400 	if (yych <= '.') {
6401 		if (yych <= ',') goto yy56;
6402 		if (yych <= '-') goto yy380;
6403 		goto yy378;
6404 	} else {
6405 		if (yych <= '/') goto yy56;
6406 		if (yych <= '9') goto yy203;
6407 		goto yy56;
6408 	}
6409 yy202:
6410 	YYDEBUG(202, *YYCURSOR);
6411 	yych = *++YYCURSOR;
6412 	if (yych <= '.') {
6413 		if (yych <= ',') goto yy56;
6414 		if (yych <= '-') goto yy380;
6415 		goto yy378;
6416 	} else {
6417 		if (yych <= '/') goto yy56;
6418 		if (yych >= '3') goto yy56;
6419 	}
6420 yy203:
6421 	YYDEBUG(203, *YYCURSOR);
6422 	yych = *++YYCURSOR;
6423 	if (yych <= ',') goto yy56;
6424 	if (yych <= '-') goto yy380;
6425 	if (yych <= '.') goto yy378;
6426 	goto yy56;
6427 yy204:
6428 	YYDEBUG(204, *YYCURSOR);
6429 	yych = *++YYCURSOR;
6430 	if (yych == 'E') goto yy233;
6431 	if (yych == 'e') goto yy233;
6432 	goto yy56;
6433 yy205:
6434 	YYDEBUG(205, *YYCURSOR);
6435 	yych = *++YYCURSOR;
6436 	if (yych == 'E') goto yy234;
6437 	if (yych == 'e') goto yy234;
6438 	goto yy56;
6439 yy206:
6440 	YYDEBUG(206, *YYCURSOR);
6441 	yych = *++YYCURSOR;
6442 	if (yych == 'A') goto yy246;
6443 	if (yych == 'a') goto yy246;
6444 	goto yy56;
6445 yy207:
6446 	YYDEBUG(207, *YYCURSOR);
6447 	yych = *++YYCURSOR;
6448 	if (yych == 'E') goto yy381;
6449 	if (yych == 'e') goto yy381;
6450 	goto yy56;
6451 yy208:
6452 	YYDEBUG(208, *YYCURSOR);
6453 	yyaccept = 5;
6454 	yych = *(YYMARKER = ++YYCURSOR);
6455 	if (yych <= '.') {
6456 		if (yych <= ',') goto yy209;
6457 		if (yych <= '-') goto yy378;
6458 		goto yy382;
6459 	} else {
6460 		if (yych <= '/') goto yy209;
6461 		if (yych <= '9') goto yy212;
6462 		if (yych <= ':') goto yy383;
6463 	}
6464 yy209:
6465 	YYDEBUG(209, *YYCURSOR);
6466 #line 1224 "parse_date.re"
6467 	{
6468 		int tz_not_found;
6469 		DEBUG_OUTPUT("timeshort24 | timelong24 | iso8601long");
6470 		TIMELIB_INIT;
6471 		TIMELIB_HAVE_TIME();
6472 		s->time->h = timelib_get_nr((char **) &ptr, 2);
6473 		s->time->i = timelib_get_nr((char **) &ptr, 2);
6474 		if (*ptr == ':' || *ptr == '.') {
6475 			s->time->s = timelib_get_nr((char **) &ptr, 2);
6476 
6477 			if (*ptr == '.') {
6478 				s->time->us = timelib_get_frac_nr((char **) &ptr, 8);
6479 			}
6480 		}
6481 
6482 		if (*ptr != '\0') {
6483 			s->time->z = timelib_parse_zone((char **) &ptr, &s->time->dst, s->time, &tz_not_found, s->tzdb, tz_get_wrapper);
6484 			if (tz_not_found) {
6485 				add_error(s, TIMELIB_ERR_TZID_NOT_FOUND, "The timezone could not be found in the database");
6486 			}
6487 		}
6488 		TIMELIB_DEINIT;
6489 		return TIMELIB_TIME24_WITH_ZONE;
6490 	}
6491 #line 6492 "<stdout>"
6492 yy210:
6493 	YYDEBUG(210, *YYCURSOR);
6494 	yyaccept = 5;
6495 	yych = *(YYMARKER = ++YYCURSOR);
6496 	if (yych <= '/') {
6497 		if (yych <= ',') goto yy209;
6498 		if (yych <= '-') goto yy378;
6499 		if (yych <= '.') goto yy382;
6500 		goto yy209;
6501 	} else {
6502 		if (yych <= '2') goto yy212;
6503 		if (yych <= '9') goto yy229;
6504 		if (yych <= ':') goto yy383;
6505 		goto yy209;
6506 	}
6507 yy211:
6508 	YYDEBUG(211, *YYCURSOR);
6509 	yyaccept = 5;
6510 	yych = *(YYMARKER = ++YYCURSOR);
6511 	if (yych <= '.') {
6512 		if (yych <= ',') goto yy209;
6513 		if (yych <= '-') goto yy378;
6514 		goto yy382;
6515 	} else {
6516 		if (yych <= '/') goto yy209;
6517 		if (yych <= '9') goto yy229;
6518 		if (yych <= ':') goto yy383;
6519 		goto yy209;
6520 	}
6521 yy212:
6522 	YYDEBUG(212, *YYCURSOR);
6523 	yyaccept = 5;
6524 	yych = *(YYMARKER = ++YYCURSOR);
6525 	if (yych <= '.') {
6526 		if (yych <= ',') goto yy209;
6527 		if (yych <= '-') goto yy378;
6528 		goto yy382;
6529 	} else {
6530 		if (yych == ':') goto yy383;
6531 		goto yy209;
6532 	}
6533 yy213:
6534 	YYDEBUG(213, *YYCURSOR);
6535 	yyaccept = 6;
6536 	yych = *(YYMARKER = ++YYCURSOR);
6537 	if (yych <= 'n') {
6538 		if (yych <= '/') {
6539 			if (yych >= '/') goto yy384;
6540 		} else {
6541 			if (yych <= '9') goto yy216;
6542 			if (yych >= 'n') goto yy385;
6543 		}
6544 	} else {
6545 		if (yych <= 'r') {
6546 			if (yych >= 'r') goto yy385;
6547 		} else {
6548 			if (yych <= 's') goto yy386;
6549 			if (yych <= 't') goto yy387;
6550 		}
6551 	}
6552 yy214:
6553 	YYDEBUG(214, *YYCURSOR);
6554 #line 1316 "parse_date.re"
6555 	{
6556 		int length = 0;
6557 		DEBUG_OUTPUT("americanshort | american");
6558 		TIMELIB_INIT;
6559 		TIMELIB_HAVE_DATE();
6560 		s->time->m = timelib_get_nr((char **) &ptr, 2);
6561 		s->time->d = timelib_get_nr((char **) &ptr, 2);
6562 		if (*ptr == '/') {
6563 			s->time->y = timelib_get_nr_ex((char **) &ptr, 4, &length);
6564 			TIMELIB_PROCESS_YEAR(s->time->y, length);
6565 		}
6566 		TIMELIB_DEINIT;
6567 		return TIMELIB_AMERICAN;
6568 	}
6569 #line 6570 "<stdout>"
6570 yy215:
6571 	YYDEBUG(215, *YYCURSOR);
6572 	yyaccept = 6;
6573 	yych = *(YYMARKER = ++YYCURSOR);
6574 	if (yych <= 'n') {
6575 		if (yych <= '/') {
6576 			if (yych <= '.') goto yy214;
6577 			goto yy384;
6578 		} else {
6579 			if (yych <= '1') goto yy216;
6580 			if (yych <= 'm') goto yy214;
6581 			goto yy385;
6582 		}
6583 	} else {
6584 		if (yych <= 'r') {
6585 			if (yych <= 'q') goto yy214;
6586 			goto yy385;
6587 		} else {
6588 			if (yych <= 's') goto yy386;
6589 			if (yych <= 't') goto yy387;
6590 			goto yy214;
6591 		}
6592 	}
6593 yy216:
6594 	YYDEBUG(216, *YYCURSOR);
6595 	yyaccept = 6;
6596 	yych = *(YYMARKER = ++YYCURSOR);
6597 	if (yych <= 'n') {
6598 		if (yych == '/') goto yy384;
6599 		if (yych <= 'm') goto yy214;
6600 		goto yy385;
6601 	} else {
6602 		if (yych <= 'r') {
6603 			if (yych <= 'q') goto yy214;
6604 			goto yy385;
6605 		} else {
6606 			if (yych <= 's') goto yy386;
6607 			if (yych <= 't') goto yy387;
6608 			goto yy214;
6609 		}
6610 	}
6611 yy217:
6612 	YYDEBUG(217, *YYCURSOR);
6613 	yych = *++YYCURSOR;
6614 	if (yych <= 'U') {
6615 		if (yych == 'P') goto yy388;
6616 		if (yych <= 'T') goto yy56;
6617 		goto yy389;
6618 	} else {
6619 		if (yych <= 'p') {
6620 			if (yych <= 'o') goto yy56;
6621 			goto yy388;
6622 		} else {
6623 			if (yych == 'u') goto yy389;
6624 			goto yy56;
6625 		}
6626 	}
6627 yy218:
6628 	YYDEBUG(218, *YYCURSOR);
6629 	yych = *++YYCURSOR;
6630 	if (yych == 'E') goto yy390;
6631 	if (yych == 'e') goto yy390;
6632 	goto yy56;
6633 yy219:
6634 	YYDEBUG(219, *YYCURSOR);
6635 	yych = *++YYCURSOR;
6636 	if (yych == 'E') goto yy391;
6637 	if (yych == 'e') goto yy391;
6638 	goto yy56;
6639 yy220:
6640 	YYDEBUG(220, *YYCURSOR);
6641 	yych = *++YYCURSOR;
6642 	if (yych <= 'U') {
6643 		if (yych == 'A') goto yy392;
6644 		if (yych <= 'T') goto yy56;
6645 		goto yy393;
6646 	} else {
6647 		if (yych <= 'a') {
6648 			if (yych <= '`') goto yy56;
6649 			goto yy392;
6650 		} else {
6651 			if (yych == 'u') goto yy393;
6652 			goto yy56;
6653 		}
6654 	}
6655 yy221:
6656 	YYDEBUG(221, *YYCURSOR);
6657 	yych = *++YYCURSOR;
6658 	if (yych == 'A') goto yy394;
6659 	if (yych == 'a') goto yy394;
6660 	goto yy56;
6661 yy222:
6662 	YYDEBUG(222, *YYCURSOR);
6663 	yych = *++YYCURSOR;
6664 	if (yych == 'O') goto yy395;
6665 	if (yych == 'o') goto yy395;
6666 	goto yy56;
6667 yy223:
6668 	YYDEBUG(223, *YYCURSOR);
6669 	yych = *++YYCURSOR;
6670 	if (yych == 'C') goto yy396;
6671 	if (yych == 'c') goto yy396;
6672 	goto yy56;
6673 yy224:
6674 	YYDEBUG(224, *YYCURSOR);
6675 	yych = *++YYCURSOR;
6676 	if (yych == 'E') goto yy397;
6677 	if (yych == 'e') goto yy397;
6678 	goto yy56;
6679 yy225:
6680 	YYDEBUG(225, *YYCURSOR);
6681 	yych = *++YYCURSOR;
6682 	if (yych <= '/') goto yy197;
6683 	if (yych <= '0') goto yy398;
6684 	if (yych <= '1') goto yy399;
6685 	if (yych <= '9') goto yy203;
6686 	goto yy197;
6687 yy226:
6688 	YYDEBUG(226, *YYCURSOR);
6689 	yych = *++YYCURSOR;
6690 	if (yych == '-') goto yy400;
6691 	if (yych <= '/') goto yy186;
6692 	if (yych <= '9') goto yy401;
6693 	goto yy186;
6694 yy227:
6695 	YYDEBUG(227, *YYCURSOR);
6696 	yych = *++YYCURSOR;
6697 	if (yych == '-') goto yy400;
6698 	if (yych <= '/') goto yy186;
6699 	if (yych <= '9') goto yy403;
6700 	goto yy186;
6701 yy228:
6702 	YYDEBUG(228, *YYCURSOR);
6703 	yyaccept = 5;
6704 	yych = *(YYMARKER = ++YYCURSOR);
6705 	if (yych <= '/') {
6706 		if (yych == '.') goto yy383;
6707 		goto yy209;
6708 	} else {
6709 		if (yych <= '9') goto yy229;
6710 		if (yych <= ':') goto yy383;
6711 		goto yy209;
6712 	}
6713 yy229:
6714 	YYDEBUG(229, *YYCURSOR);
6715 	yyaccept = 5;
6716 	yych = *(YYMARKER = ++YYCURSOR);
6717 	if (yych == '.') goto yy383;
6718 	if (yych == ':') goto yy383;
6719 	goto yy209;
6720 yy230:
6721 	YYDEBUG(230, *YYCURSOR);
6722 	yych = *++YYCURSOR;
6723 	if (yych == 'R') goto yy405;
6724 	if (yych == 'r') goto yy405;
6725 	goto yy56;
6726 yy231:
6727 	YYDEBUG(231, *YYCURSOR);
6728 	yych = *++YYCURSOR;
6729 	if (yych == 'G') goto yy406;
6730 	if (yych == 'g') goto yy406;
6731 	goto yy56;
6732 yy232:
6733 	YYDEBUG(232, *YYCURSOR);
6734 	yych = *++YYCURSOR;
6735 	if (yych == 'Y') goto yy407;
6736 	if (yych == 'y') goto yy407;
6737 	goto yy56;
6738 yy233:
6739 	YYDEBUG(233, *YYCURSOR);
6740 	yych = *++YYCURSOR;
6741 	if (yych == 'C') goto yy408;
6742 	if (yych == 'c') goto yy408;
6743 	goto yy56;
6744 yy234:
6745 	YYDEBUG(234, *YYCURSOR);
6746 	yych = *++YYCURSOR;
6747 	if (yych == 'B') goto yy409;
6748 	if (yych == 'b') goto yy409;
6749 	goto yy56;
6750 yy235:
6751 	YYDEBUG(235, *YYCURSOR);
6752 	yych = *++YYCURSOR;
6753 	if (yych == 'R') goto yy410;
6754 	if (yych == 'r') goto yy410;
6755 	goto yy56;
6756 yy236:
6757 	YYDEBUG(236, *YYCURSOR);
6758 	yych = *++YYCURSOR;
6759 	if (yych == 'I') goto yy411;
6760 	if (yych == 'i') goto yy411;
6761 	goto yy56;
6762 yy237:
6763 	YYDEBUG(237, *YYCURSOR);
6764 	yych = *++YYCURSOR;
6765 	if (yych == 'U') goto yy412;
6766 	if (yych == 'u') goto yy412;
6767 	goto yy56;
6768 yy238:
6769 	YYDEBUG(238, *YYCURSOR);
6770 	++YYCURSOR;
6771 	if ((YYLIMIT - YYCURSOR) < 4) YYFILL(4);
6772 	yych = *YYCURSOR;
6773 	YYDEBUG(239, *YYCURSOR);
6774 	if (yych <= ' ') {
6775 		if (yych == '\t') goto yy238;
6776 		if (yych <= 0x1F) goto yy56;
6777 		goto yy238;
6778 	} else {
6779 		if (yych <= '.') {
6780 			if (yych <= ',') goto yy56;
6781 			goto yy238;
6782 		} else {
6783 			if (yych <= '/') goto yy56;
6784 			if (yych >= ':') goto yy56;
6785 		}
6786 	}
6787 yy240:
6788 	YYDEBUG(240, *YYCURSOR);
6789 	yych = *++YYCURSOR;
6790 	if (yych <= '/') goto yy241;
6791 	if (yych <= '9') goto yy413;
6792 yy241:
6793 	YYDEBUG(241, *YYCURSOR);
6794 #line 1386 "parse_date.re"
6795 	{
6796 		int length = 0;
6797 		DEBUG_OUTPUT("datefull");
6798 		TIMELIB_INIT;
6799 		TIMELIB_HAVE_DATE();
6800 		s->time->d = timelib_get_nr((char **) &ptr, 2);
6801 		timelib_skip_day_suffix((char **) &ptr);
6802 		s->time->m = timelib_get_month((char **) &ptr);
6803 		s->time->y = timelib_get_nr_ex((char **) &ptr, 4, &length);
6804 		TIMELIB_PROCESS_YEAR(s->time->y, length);
6805 		TIMELIB_DEINIT;
6806 		return TIMELIB_DATE_FULL;
6807 	}
6808 #line 6809 "<stdout>"
6809 yy242:
6810 	YYDEBUG(242, *YYCURSOR);
6811 	yyaccept = 3;
6812 	yych = *(YYMARKER = ++YYCURSOR);
6813 	if (yych <= ',') {
6814 		if (yych <= '\t') {
6815 			if (yych <= 0x08) goto yy77;
6816 			goto yy238;
6817 		} else {
6818 			if (yych == ' ') goto yy238;
6819 			goto yy77;
6820 		}
6821 	} else {
6822 		if (yych <= '9') {
6823 			if (yych <= '.') goto yy238;
6824 			if (yych <= '/') goto yy77;
6825 			goto yy240;
6826 		} else {
6827 			if (yych != 'I') goto yy77;
6828 		}
6829 	}
6830 yy243:
6831 	YYDEBUG(243, *YYCURSOR);
6832 	yyaccept = 3;
6833 	yych = *(YYMARKER = ++YYCURSOR);
6834 	if (yych <= ' ') {
6835 		if (yych == '\t') goto yy238;
6836 		if (yych <= 0x1F) goto yy77;
6837 		goto yy238;
6838 	} else {
6839 		if (yych <= '.') {
6840 			if (yych <= ',') goto yy77;
6841 			goto yy238;
6842 		} else {
6843 			if (yych <= '/') goto yy77;
6844 			if (yych <= '9') goto yy240;
6845 			goto yy77;
6846 		}
6847 	}
6848 yy244:
6849 	YYDEBUG(244, *YYCURSOR);
6850 	yych = *++YYCURSOR;
6851 	if (yych == 'N') goto yy414;
6852 	if (yych == 'n') goto yy414;
6853 	goto yy56;
6854 yy245:
6855 	YYDEBUG(245, *YYCURSOR);
6856 	yych = *++YYCURSOR;
6857 	if (yych <= 'N') {
6858 		if (yych == 'L') goto yy415;
6859 		if (yych <= 'M') goto yy56;
6860 		goto yy416;
6861 	} else {
6862 		if (yych <= 'l') {
6863 			if (yych <= 'k') goto yy56;
6864 			goto yy415;
6865 		} else {
6866 			if (yych == 'n') goto yy416;
6867 			goto yy56;
6868 		}
6869 	}
6870 yy246:
6871 	YYDEBUG(246, *YYCURSOR);
6872 	yych = *++YYCURSOR;
6873 	if (yych <= 'Y') {
6874 		if (yych == 'R') goto yy417;
6875 		if (yych <= 'X') goto yy56;
6876 		goto yy243;
6877 	} else {
6878 		if (yych <= 'r') {
6879 			if (yych <= 'q') goto yy56;
6880 			goto yy417;
6881 		} else {
6882 			if (yych == 'y') goto yy243;
6883 			goto yy56;
6884 		}
6885 	}
6886 yy247:
6887 	YYDEBUG(247, *YYCURSOR);
6888 	yych = *++YYCURSOR;
6889 	if (yych <= 'N') {
6890 		if (yych <= 'K') {
6891 			if (yych == 'C') goto yy418;
6892 			goto yy56;
6893 		} else {
6894 			if (yych <= 'L') goto yy419;
6895 			if (yych <= 'M') goto yy56;
6896 			goto yy420;
6897 		}
6898 	} else {
6899 		if (yych <= 'k') {
6900 			if (yych == 'c') goto yy418;
6901 			goto yy56;
6902 		} else {
6903 			if (yych <= 'l') goto yy419;
6904 			if (yych == 'n') goto yy420;
6905 			goto yy56;
6906 		}
6907 	}
6908 yy248:
6909 	YYDEBUG(248, *YYCURSOR);
6910 	yych = *++YYCURSOR;
6911 	if (yych == 'N') goto yy421;
6912 	if (yych == 'n') goto yy421;
6913 	goto yy56;
6914 yy249:
6915 	YYDEBUG(249, *YYCURSOR);
6916 	yyaccept = 7;
6917 	yych = *(YYMARKER = ++YYCURSOR);
6918 	if (yych == 'E') goto yy422;
6919 	if (yych == 'e') goto yy422;
6920 yy250:
6921 	YYDEBUG(250, *YYCURSOR);
6922 #line 1787 "parse_date.re"
6923 	{
6924 		timelib_ull i;
6925 		DEBUG_OUTPUT("relative");
6926 		TIMELIB_INIT;
6927 		TIMELIB_HAVE_RELATIVE();
6928 
6929 		while(*ptr) {
6930 			i = timelib_get_unsigned_nr((char **) &ptr, 24);
6931 			timelib_eat_spaces((char **) &ptr);
6932 			timelib_set_relative((char **) &ptr, i, 1, s);
6933 		}
6934 		TIMELIB_DEINIT;
6935 		return TIMELIB_RELATIVE;
6936 	}
6937 #line 6938 "<stdout>"
6938 yy251:
6939 	YYDEBUG(251, *YYCURSOR);
6940 	yych = *++YYCURSOR;
6941 	if (yych == 'V') goto yy408;
6942 	if (yych == 'v') goto yy408;
6943 	goto yy56;
6944 yy252:
6945 	YYDEBUG(252, *YYCURSOR);
6946 	yych = *++YYCURSOR;
6947 	if (yych == 'T') goto yy423;
6948 	if (yych == 't') goto yy423;
6949 	goto yy56;
6950 yy253:
6951 	YYDEBUG(253, *YYCURSOR);
6952 	yych = *++YYCURSOR;
6953 	if (yych == 'T') goto yy424;
6954 	if (yych == 't') goto yy424;
6955 	goto yy56;
6956 yy254:
6957 	YYDEBUG(254, *YYCURSOR);
6958 	yych = *++YYCURSOR;
6959 	if (yych <= 'P') {
6960 		if (yych == 'C') goto yy425;
6961 		if (yych <= 'O') goto yy56;
6962 		goto yy426;
6963 	} else {
6964 		if (yych <= 'c') {
6965 			if (yych <= 'b') goto yy56;
6966 			goto yy425;
6967 		} else {
6968 			if (yych == 'p') goto yy426;
6969 			goto yy56;
6970 		}
6971 	}
6972 yy255:
6973 	YYDEBUG(255, *YYCURSOR);
6974 	yych = *++YYCURSOR;
6975 	if (yych == 'N') goto yy411;
6976 	if (yych == 'n') goto yy411;
6977 	goto yy56;
6978 yy256:
6979 	YYDEBUG(256, *YYCURSOR);
6980 	yych = *++YYCURSOR;
6981 	if (yych == 'U') goto yy427;
6982 	if (yych == 'u') goto yy427;
6983 	goto yy56;
6984 yy257:
6985 	YYDEBUG(257, *YYCURSOR);
6986 	yych = *++YYCURSOR;
6987 	if (yych == 'E') goto yy428;
6988 	if (yych == 'e') goto yy428;
6989 	goto yy56;
6990 yy258:
6991 	YYDEBUG(258, *YYCURSOR);
6992 	yych = *++YYCURSOR;
6993 	if (yych == 'E') goto yy422;
6994 	if (yych == 'e') goto yy422;
6995 	goto yy56;
6996 yy259:
6997 	YYDEBUG(259, *YYCURSOR);
6998 	yych = *++YYCURSOR;
6999 	if (yych <= 'E') {
7000 		if (yych <= 'C') goto yy56;
7001 		if (yych <= 'D') goto yy429;
7002 		goto yy430;
7003 	} else {
7004 		if (yych <= 'c') goto yy56;
7005 		if (yych <= 'd') goto yy429;
7006 		if (yych <= 'e') goto yy430;
7007 		goto yy56;
7008 	}
7009 yy260:
7010 	YYDEBUG(260, *YYCURSOR);
7011 	yych = *++YYCURSOR;
7012 	if (yych == 'A') goto yy412;
7013 	if (yych == 'a') goto yy412;
7014 	goto yy56;
7015 yy261:
7016 	YYDEBUG(261, *YYCURSOR);
7017 	yych = *++YYCURSOR;
7018 	if (yych <= ',') {
7019 		if (yych == '\t') goto yy273;
7020 		goto yy197;
7021 	} else {
7022 		if (yych <= '-') goto yy431;
7023 		if (yych <= '.') goto yy273;
7024 		if (yych <= '/') goto yy268;
7025 		goto yy197;
7026 	}
7027 yy262:
7028 	YYDEBUG(262, *YYCURSOR);
7029 	yych = *++YYCURSOR;
7030 	if (yych <= '.') {
7031 		if (yych <= '\t') {
7032 			if (yych <= 0x08) goto yy197;
7033 			goto yy273;
7034 		} else {
7035 			if (yych <= ',') goto yy197;
7036 			if (yych <= '-') goto yy431;
7037 			goto yy273;
7038 		}
7039 	} else {
7040 		if (yych <= 'U') {
7041 			if (yych <= '/') goto yy268;
7042 			if (yych <= 'T') goto yy197;
7043 			goto yy427;
7044 		} else {
7045 			if (yych == 'u') goto yy427;
7046 			goto yy197;
7047 		}
7048 	}
7049 yy263:
7050 	YYDEBUG(263, *YYCURSOR);
7051 	yych = *++YYCURSOR;
7052 	if (yych == 'S') goto yy249;
7053 	if (yych == 's') goto yy249;
7054 	goto yy56;
7055 yy264:
7056 	YYDEBUG(264, *YYCURSOR);
7057 	yyaccept = 5;
7058 	yych = *(YYMARKER = ++YYCURSOR);
7059 	if (yych <= '.') {
7060 		if (yych <= ',') goto yy209;
7061 		if (yych <= '-') goto yy378;
7062 		goto yy432;
7063 	} else {
7064 		if (yych <= '/') goto yy209;
7065 		if (yych <= '9') goto yy433;
7066 		if (yych <= ':') goto yy434;
7067 		goto yy209;
7068 	}
7069 yy265:
7070 	YYDEBUG(265, *YYCURSOR);
7071 	yyaccept = 5;
7072 	yych = *(YYMARKER = ++YYCURSOR);
7073 	if (yych <= '/') {
7074 		if (yych <= ',') goto yy209;
7075 		if (yych <= '-') goto yy378;
7076 		if (yych <= '.') goto yy432;
7077 		goto yy209;
7078 	} else {
7079 		if (yych <= '2') goto yy433;
7080 		if (yych <= '9') goto yy435;
7081 		if (yych <= ':') goto yy434;
7082 		goto yy209;
7083 	}
7084 yy266:
7085 	YYDEBUG(266, *YYCURSOR);
7086 	yyaccept = 5;
7087 	yych = *(YYMARKER = ++YYCURSOR);
7088 	if (yych <= '.') {
7089 		if (yych <= ',') goto yy209;
7090 		if (yych <= '-') goto yy378;
7091 		goto yy432;
7092 	} else {
7093 		if (yych <= '/') goto yy209;
7094 		if (yych <= '9') goto yy435;
7095 		if (yych <= ':') goto yy434;
7096 		goto yy209;
7097 	}
7098 yy267:
7099 	YYDEBUG(267, *YYCURSOR);
7100 	yyaccept = 5;
7101 	yych = *(YYMARKER = ++YYCURSOR);
7102 	if (yych <= '.') {
7103 		if (yych <= ',') goto yy209;
7104 		if (yych <= '-') goto yy378;
7105 		goto yy432;
7106 	} else {
7107 		if (yych == ':') goto yy434;
7108 		goto yy209;
7109 	}
7110 yy268:
7111 	YYDEBUG(268, *YYCURSOR);
7112 	yych = *++YYCURSOR;
7113 	switch (yych) {
7114 	case 'A':
7115 	case 'a':	goto yy217;
7116 	case 'D':
7117 	case 'd':	goto yy218;
7118 	case 'F':
7119 	case 'f':	goto yy219;
7120 	case 'J':
7121 	case 'j':	goto yy220;
7122 	case 'M':
7123 	case 'm':	goto yy221;
7124 	case 'N':
7125 	case 'n':	goto yy222;
7126 	case 'O':
7127 	case 'o':	goto yy223;
7128 	case 'S':
7129 	case 's':	goto yy224;
7130 	default:	goto yy56;
7131 	}
7132 yy269:
7133 	YYDEBUG(269, *YYCURSOR);
7134 	yyaccept = 5;
7135 	yych = *(YYMARKER = ++YYCURSOR);
7136 	if (yych <= '/') {
7137 		if (yych == '.') goto yy434;
7138 		goto yy209;
7139 	} else {
7140 		if (yych <= '9') goto yy436;
7141 		if (yych <= ':') goto yy434;
7142 		goto yy209;
7143 	}
7144 yy270:
7145 	YYDEBUG(270, *YYCURSOR);
7146 	yyaccept = 5;
7147 	yych = *(YYMARKER = ++YYCURSOR);
7148 	if (yych == '.') goto yy434;
7149 	if (yych == ':') goto yy434;
7150 	goto yy209;
7151 yy271:
7152 	YYDEBUG(271, *YYCURSOR);
7153 	yych = *++YYCURSOR;
7154 	if (yych == 'M') goto yy272;
7155 	if (yych != 'm') goto yy56;
7156 yy272:
7157 	YYDEBUG(272, *YYCURSOR);
7158 	yych = *++YYCURSOR;
7159 	if (yych <= 0x1F) {
7160 		if (yych <= 0x00) goto yy437;
7161 		if (yych == '\t') goto yy437;
7162 		goto yy56;
7163 	} else {
7164 		if (yych <= ' ') goto yy437;
7165 		if (yych == '.') goto yy439;
7166 		goto yy56;
7167 	}
7168 yy273:
7169 	YYDEBUG(273, *YYCURSOR);
7170 	yych = *++YYCURSOR;
7171 	if (yych <= '/') goto yy197;
7172 	if (yych <= '0') goto yy198;
7173 	if (yych <= '1') goto yy199;
7174 	if (yych <= '9') goto yy200;
7175 	goto yy197;
7176 yy274:
7177 	YYDEBUG(274, *YYCURSOR);
7178 	yych = *++YYCURSOR;
7179 	switch (yych) {
7180 	case '0':	goto yy440;
7181 	case '1':	goto yy441;
7182 	case '2':
7183 	case '3':
7184 	case '4':
7185 	case '5':
7186 	case '6':
7187 	case '7':
7188 	case '8':
7189 	case '9':	goto yy442;
7190 	case 'A':
7191 	case 'a':	goto yy443;
7192 	case 'D':
7193 	case 'd':	goto yy444;
7194 	case 'F':
7195 	case 'f':	goto yy445;
7196 	case 'J':
7197 	case 'j':	goto yy446;
7198 	case 'M':
7199 	case 'm':	goto yy447;
7200 	case 'N':
7201 	case 'n':	goto yy448;
7202 	case 'O':
7203 	case 'o':	goto yy449;
7204 	case 'S':
7205 	case 's':	goto yy450;
7206 	default:	goto yy56;
7207 	}
7208 yy275:
7209 	YYDEBUG(275, *YYCURSOR);
7210 	yych = *++YYCURSOR;
7211 	if (yych <= '/') goto yy56;
7212 	if (yych <= '9') goto yy451;
7213 	goto yy56;
7214 yy276:
7215 	YYDEBUG(276, *YYCURSOR);
7216 	yych = *++YYCURSOR;
7217 	if (yych <= '@') {
7218 		if (yych == ')') goto yy108;
7219 		goto yy18;
7220 	} else {
7221 		if (yych <= 'Z') goto yy452;
7222 		if (yych <= '`') goto yy18;
7223 		if (yych <= 'z') goto yy452;
7224 		goto yy18;
7225 	}
7226 yy277:
7227 	YYDEBUG(277, *YYCURSOR);
7228 	yych = *++YYCURSOR;
7229 	if (yych <= '@') {
7230 		if (yych == ')') goto yy108;
7231 	} else {
7232 		if (yych <= 'Z') goto yy452;
7233 		if (yych <= '`') goto yy278;
7234 		if (yych <= 'z') goto yy452;
7235 	}
7236 yy278:
7237 	YYDEBUG(278, *YYCURSOR);
7238 #line 1629 "parse_date.re"
7239 	{
7240 		DEBUG_OUTPUT("ago");
7241 		TIMELIB_INIT;
7242 		s->time->relative.y = 0 - s->time->relative.y;
7243 		s->time->relative.m = 0 - s->time->relative.m;
7244 		s->time->relative.d = 0 - s->time->relative.d;
7245 		s->time->relative.h = 0 - s->time->relative.h;
7246 		s->time->relative.i = 0 - s->time->relative.i;
7247 		s->time->relative.s = 0 - s->time->relative.s;
7248 		s->time->relative.weekday = 0 - s->time->relative.weekday;
7249 		if (s->time->relative.weekday == 0) {
7250 			s->time->relative.weekday = -7;
7251 		}
7252 		if (s->time->relative.have_special_relative && s->time->relative.special.type == TIMELIB_SPECIAL_WEEKDAY) {
7253 			s->time->relative.special.amount = 0 - s->time->relative.special.amount;
7254 		}
7255 		TIMELIB_DEINIT;
7256 		return TIMELIB_AGO;
7257 	}
7258 #line 7259 "<stdout>"
7259 yy279:
7260 	YYDEBUG(279, *YYCURSOR);
7261 	yyaccept = 8;
7262 	yych = *(YYMARKER = ++YYCURSOR);
7263 	if (yych <= '/') {
7264 		if (yych <= '(') {
7265 			if (yych <= '\t') {
7266 				if (yych >= '\t') goto yy135;
7267 			} else {
7268 				if (yych == ' ') goto yy135;
7269 			}
7270 		} else {
7271 			if (yych <= ',') {
7272 				if (yych <= ')') goto yy108;
7273 			} else {
7274 				if (yych <= '-') goto yy453;
7275 				if (yych <= '.') goto yy135;
7276 			}
7277 		}
7278 	} else {
7279 		if (yych <= 'Z') {
7280 			if (yych <= '@') {
7281 				if (yych <= '9') goto yy135;
7282 			} else {
7283 				if (yych == 'I') goto yy454;
7284 				goto yy452;
7285 			}
7286 		} else {
7287 			if (yych <= 'h') {
7288 				if (yych >= 'a') goto yy452;
7289 			} else {
7290 				if (yych <= 'i') goto yy454;
7291 				if (yych <= 'z') goto yy452;
7292 			}
7293 		}
7294 	}
7295 yy280:
7296 	YYDEBUG(280, *YYCURSOR);
7297 #line 1709 "parse_date.re"
7298 	{
7299 		DEBUG_OUTPUT("monthtext");
7300 		TIMELIB_INIT;
7301 		TIMELIB_HAVE_DATE();
7302 		s->time->m = timelib_lookup_month((char **) &ptr);
7303 		TIMELIB_DEINIT;
7304 		return TIMELIB_DATE_TEXT;
7305 	}
7306 #line 7307 "<stdout>"
7307 yy281:
7308 	YYDEBUG(281, *YYCURSOR);
7309 	yyaccept = 8;
7310 	yych = *(YYMARKER = ++YYCURSOR);
7311 	if (yych <= '/') {
7312 		if (yych <= '(') {
7313 			if (yych <= '\t') {
7314 				if (yych <= 0x08) goto yy280;
7315 				goto yy135;
7316 			} else {
7317 				if (yych == ' ') goto yy135;
7318 				goto yy280;
7319 			}
7320 		} else {
7321 			if (yych <= ',') {
7322 				if (yych <= ')') goto yy108;
7323 				goto yy280;
7324 			} else {
7325 				if (yych <= '-') goto yy453;
7326 				if (yych <= '.') goto yy135;
7327 				goto yy280;
7328 			}
7329 		}
7330 	} else {
7331 		if (yych <= 'Z') {
7332 			if (yych <= '@') {
7333 				if (yych <= '9') goto yy135;
7334 				goto yy280;
7335 			} else {
7336 				if (yych == 'U') goto yy455;
7337 				goto yy452;
7338 			}
7339 		} else {
7340 			if (yych <= 't') {
7341 				if (yych <= '`') goto yy280;
7342 				goto yy452;
7343 			} else {
7344 				if (yych <= 'u') goto yy455;
7345 				if (yych <= 'z') goto yy452;
7346 				goto yy280;
7347 			}
7348 		}
7349 	}
7350 yy282:
7351 	YYDEBUG(282, *YYCURSOR);
7352 	++YYCURSOR;
7353 	if (YYLIMIT <= YYCURSOR) YYFILL(1);
7354 	yych = *YYCURSOR;
7355 	if (yybm[0+yych] & 64) {
7356 		goto yy456;
7357 	}
7358 	goto yy56;
7359 yy283:
7360 	YYDEBUG(283, *YYCURSOR);
7361 	yyaccept = 2;
7362 	yych = *(YYMARKER = ++YYCURSOR);
7363 	if (yych <= '/') {
7364 		if (yych <= ',') {
7365 			if (yych == ')') goto yy108;
7366 			goto yy18;
7367 		} else {
7368 			if (yych == '.') goto yy18;
7369 			goto yy282;
7370 		}
7371 	} else {
7372 		if (yych <= '^') {
7373 			if (yych <= '@') goto yy18;
7374 			if (yych <= 'Z') goto yy452;
7375 			goto yy18;
7376 		} else {
7377 			if (yych <= '_') goto yy282;
7378 			if (yych <= '`') goto yy18;
7379 			if (yych <= 'z') goto yy458;
7380 			goto yy18;
7381 		}
7382 	}
7383 yy284:
7384 	YYDEBUG(284, *YYCURSOR);
7385 	yyaccept = 9;
7386 	yych = *(YYMARKER = ++YYCURSOR);
7387 	if (yych <= '/') {
7388 		if (yych <= ',') {
7389 			if (yych == ')') goto yy108;
7390 			goto yy278;
7391 		} else {
7392 			if (yych == '.') goto yy278;
7393 			goto yy282;
7394 		}
7395 	} else {
7396 		if (yych <= '^') {
7397 			if (yych <= '@') goto yy278;
7398 			if (yych <= 'Z') goto yy452;
7399 			goto yy278;
7400 		} else {
7401 			if (yych <= '_') goto yy282;
7402 			if (yych <= '`') goto yy278;
7403 			if (yych <= 'z') goto yy458;
7404 			goto yy278;
7405 		}
7406 	}
7407 yy285:
7408 	YYDEBUG(285, *YYCURSOR);
7409 	yyaccept = 8;
7410 	yych = *(YYMARKER = ++YYCURSOR);
7411 	if (yych <= '9') {
7412 		if (yych <= '(') {
7413 			if (yych <= '\t') {
7414 				if (yych <= 0x08) goto yy280;
7415 				goto yy135;
7416 			} else {
7417 				if (yych == ' ') goto yy135;
7418 				goto yy280;
7419 			}
7420 		} else {
7421 			if (yych <= '-') {
7422 				if (yych <= ')') goto yy108;
7423 				if (yych <= ',') goto yy280;
7424 				goto yy459;
7425 			} else {
7426 				if (yych == '/') goto yy282;
7427 				goto yy135;
7428 			}
7429 		}
7430 	} else {
7431 		if (yych <= '^') {
7432 			if (yych <= 'H') {
7433 				if (yych <= '@') goto yy280;
7434 				goto yy452;
7435 			} else {
7436 				if (yych <= 'I') goto yy454;
7437 				if (yych <= 'Z') goto yy452;
7438 				goto yy280;
7439 			}
7440 		} else {
7441 			if (yych <= 'h') {
7442 				if (yych <= '_') goto yy282;
7443 				if (yych <= '`') goto yy280;
7444 				goto yy458;
7445 			} else {
7446 				if (yych <= 'i') goto yy460;
7447 				if (yych <= 'z') goto yy458;
7448 				goto yy280;
7449 			}
7450 		}
7451 	}
7452 yy286:
7453 	YYDEBUG(286, *YYCURSOR);
7454 	yyaccept = 8;
7455 	yych = *(YYMARKER = ++YYCURSOR);
7456 	if (yych <= '9') {
7457 		if (yych <= '(') {
7458 			if (yych <= '\t') {
7459 				if (yych <= 0x08) goto yy280;
7460 				goto yy135;
7461 			} else {
7462 				if (yych == ' ') goto yy135;
7463 				goto yy280;
7464 			}
7465 		} else {
7466 			if (yych <= '-') {
7467 				if (yych <= ')') goto yy108;
7468 				if (yych <= ',') goto yy280;
7469 				goto yy459;
7470 			} else {
7471 				if (yych == '/') goto yy282;
7472 				goto yy135;
7473 			}
7474 		}
7475 	} else {
7476 		if (yych <= '^') {
7477 			if (yych <= 'T') {
7478 				if (yych <= '@') goto yy280;
7479 				goto yy452;
7480 			} else {
7481 				if (yych <= 'U') goto yy455;
7482 				if (yych <= 'Z') goto yy452;
7483 				goto yy280;
7484 			}
7485 		} else {
7486 			if (yych <= 't') {
7487 				if (yych <= '_') goto yy282;
7488 				if (yych <= '`') goto yy280;
7489 				goto yy458;
7490 			} else {
7491 				if (yych <= 'u') goto yy461;
7492 				if (yych <= 'z') goto yy458;
7493 				goto yy280;
7494 			}
7495 		}
7496 	}
7497 yy287:
7498 	YYDEBUG(287, *YYCURSOR);
7499 	yych = *++YYCURSOR;
7500 	if (yych <= 'K') {
7501 		if (yych <= ')') {
7502 			if (yych <= '(') goto yy18;
7503 			goto yy108;
7504 		} else {
7505 			if (yych <= '@') goto yy18;
7506 			if (yych <= 'J') goto yy452;
7507 			goto yy462;
7508 		}
7509 	} else {
7510 		if (yych <= 'j') {
7511 			if (yych <= 'Z') goto yy452;
7512 			if (yych <= '`') goto yy18;
7513 			goto yy452;
7514 		} else {
7515 			if (yych <= 'k') goto yy462;
7516 			if (yych <= 'z') goto yy452;
7517 			goto yy18;
7518 		}
7519 	}
7520 yy288:
7521 	YYDEBUG(288, *YYCURSOR);
7522 	yyaccept = 2;
7523 	yych = *(YYMARKER = ++YYCURSOR);
7524 	if (yych <= 'J') {
7525 		if (yych <= '-') {
7526 			if (yych == ')') goto yy108;
7527 			if (yych <= ',') goto yy18;
7528 			goto yy282;
7529 		} else {
7530 			if (yych == '/') goto yy282;
7531 			if (yych <= '@') goto yy18;
7532 			goto yy452;
7533 		}
7534 	} else {
7535 		if (yych <= '_') {
7536 			if (yych <= 'K') goto yy462;
7537 			if (yych <= 'Z') goto yy452;
7538 			if (yych <= '^') goto yy18;
7539 			goto yy282;
7540 		} else {
7541 			if (yych <= 'j') {
7542 				if (yych <= '`') goto yy18;
7543 				goto yy458;
7544 			} else {
7545 				if (yych <= 'k') goto yy463;
7546 				if (yych <= 'z') goto yy458;
7547 				goto yy18;
7548 			}
7549 		}
7550 	}
7551 yy289:
7552 	YYDEBUG(289, *YYCURSOR);
7553 	yyaccept = 8;
7554 	yych = *(YYMARKER = ++YYCURSOR);
7555 	if (yych <= '/') {
7556 		if (yych <= '(') {
7557 			if (yych <= '\t') {
7558 				if (yych <= 0x08) goto yy280;
7559 				goto yy135;
7560 			} else {
7561 				if (yych == ' ') goto yy135;
7562 				goto yy280;
7563 			}
7564 		} else {
7565 			if (yych <= ',') {
7566 				if (yych <= ')') goto yy108;
7567 				goto yy280;
7568 			} else {
7569 				if (yych <= '-') goto yy453;
7570 				if (yych <= '.') goto yy135;
7571 				goto yy280;
7572 			}
7573 		}
7574 	} else {
7575 		if (yych <= 'Z') {
7576 			if (yych <= '@') {
7577 				if (yych <= '9') goto yy135;
7578 				goto yy280;
7579 			} else {
7580 				if (yych == 'E') goto yy464;
7581 				goto yy452;
7582 			}
7583 		} else {
7584 			if (yych <= 'd') {
7585 				if (yych <= '`') goto yy280;
7586 				goto yy452;
7587 			} else {
7588 				if (yych <= 'e') goto yy464;
7589 				if (yych <= 'z') goto yy452;
7590 				goto yy280;
7591 			}
7592 		}
7593 	}
7594 yy290:
7595 	YYDEBUG(290, *YYCURSOR);
7596 	yyaccept = 8;
7597 	yych = *(YYMARKER = ++YYCURSOR);
7598 	if (yych <= '9') {
7599 		if (yych <= '(') {
7600 			if (yych <= '\t') {
7601 				if (yych <= 0x08) goto yy280;
7602 				goto yy135;
7603 			} else {
7604 				if (yych == ' ') goto yy135;
7605 				goto yy280;
7606 			}
7607 		} else {
7608 			if (yych <= '-') {
7609 				if (yych <= ')') goto yy108;
7610 				if (yych <= ',') goto yy280;
7611 				goto yy459;
7612 			} else {
7613 				if (yych == '/') goto yy282;
7614 				goto yy135;
7615 			}
7616 		}
7617 	} else {
7618 		if (yych <= '^') {
7619 			if (yych <= 'D') {
7620 				if (yych <= '@') goto yy280;
7621 				goto yy452;
7622 			} else {
7623 				if (yych <= 'E') goto yy464;
7624 				if (yych <= 'Z') goto yy452;
7625 				goto yy280;
7626 			}
7627 		} else {
7628 			if (yych <= 'd') {
7629 				if (yych <= '_') goto yy282;
7630 				if (yych <= '`') goto yy280;
7631 				goto yy458;
7632 			} else {
7633 				if (yych <= 'e') goto yy465;
7634 				if (yych <= 'z') goto yy458;
7635 				goto yy280;
7636 			}
7637 		}
7638 	}
7639 yy291:
7640 	YYDEBUG(291, *YYCURSOR);
7641 	yych = *++YYCURSOR;
7642 	if (yych <= 'H') {
7643 		if (yych <= ')') {
7644 			if (yych <= '(') goto yy18;
7645 			goto yy108;
7646 		} else {
7647 			if (yych <= '@') goto yy18;
7648 			if (yych <= 'G') goto yy452;
7649 			goto yy466;
7650 		}
7651 	} else {
7652 		if (yych <= 'g') {
7653 			if (yych <= 'Z') goto yy452;
7654 			if (yych <= '`') goto yy18;
7655 			goto yy452;
7656 		} else {
7657 			if (yych <= 'h') goto yy466;
7658 			if (yych <= 'z') goto yy452;
7659 			goto yy18;
7660 		}
7661 	}
7662 yy292:
7663 	YYDEBUG(292, *YYCURSOR);
7664 	yych = *++YYCURSOR;
7665 	if (yych <= 'V') {
7666 		if (yych <= ')') {
7667 			if (yych <= '(') goto yy18;
7668 			goto yy108;
7669 		} else {
7670 			if (yych <= '@') goto yy18;
7671 			if (yych <= 'U') goto yy452;
7672 			goto yy467;
7673 		}
7674 	} else {
7675 		if (yych <= 'u') {
7676 			if (yych <= 'Z') goto yy452;
7677 			if (yych <= '`') goto yy18;
7678 			goto yy452;
7679 		} else {
7680 			if (yych <= 'v') goto yy467;
7681 			if (yych <= 'z') goto yy452;
7682 			goto yy18;
7683 		}
7684 	}
7685 yy293:
7686 	YYDEBUG(293, *YYCURSOR);
7687 	yyaccept = 2;
7688 	yych = *(YYMARKER = ++YYCURSOR);
7689 	if (yych <= 'G') {
7690 		if (yych <= '-') {
7691 			if (yych == ')') goto yy108;
7692 			if (yych <= ',') goto yy18;
7693 			goto yy282;
7694 		} else {
7695 			if (yych == '/') goto yy282;
7696 			if (yych <= '@') goto yy18;
7697 			goto yy452;
7698 		}
7699 	} else {
7700 		if (yych <= '_') {
7701 			if (yych <= 'H') goto yy466;
7702 			if (yych <= 'Z') goto yy452;
7703 			if (yych <= '^') goto yy18;
7704 			goto yy282;
7705 		} else {
7706 			if (yych <= 'g') {
7707 				if (yych <= '`') goto yy18;
7708 				goto yy458;
7709 			} else {
7710 				if (yych <= 'h') goto yy468;
7711 				if (yych <= 'z') goto yy458;
7712 				goto yy18;
7713 			}
7714 		}
7715 	}
7716 yy294:
7717 	YYDEBUG(294, *YYCURSOR);
7718 	yyaccept = 2;
7719 	yych = *(YYMARKER = ++YYCURSOR);
7720 	if (yych <= 'U') {
7721 		if (yych <= '-') {
7722 			if (yych == ')') goto yy108;
7723 			if (yych <= ',') goto yy18;
7724 			goto yy282;
7725 		} else {
7726 			if (yych == '/') goto yy282;
7727 			if (yych <= '@') goto yy18;
7728 			goto yy452;
7729 		}
7730 	} else {
7731 		if (yych <= '_') {
7732 			if (yych <= 'V') goto yy467;
7733 			if (yych <= 'Z') goto yy452;
7734 			if (yych <= '^') goto yy18;
7735 			goto yy282;
7736 		} else {
7737 			if (yych <= 'u') {
7738 				if (yych <= '`') goto yy18;
7739 				goto yy458;
7740 			} else {
7741 				if (yych <= 'v') goto yy469;
7742 				if (yych <= 'z') goto yy458;
7743 				goto yy18;
7744 			}
7745 		}
7746 	}
7747 yy295:
7748 	YYDEBUG(295, *YYCURSOR);
7749 	yyaccept = 8;
7750 	yych = *(YYMARKER = ++YYCURSOR);
7751 	if (yych <= '/') {
7752 		if (yych <= '(') {
7753 			if (yych <= '\t') {
7754 				if (yych <= 0x08) goto yy280;
7755 				goto yy135;
7756 			} else {
7757 				if (yych == ' ') goto yy135;
7758 				goto yy280;
7759 			}
7760 		} else {
7761 			if (yych <= ',') {
7762 				if (yych <= ')') goto yy108;
7763 				goto yy280;
7764 			} else {
7765 				if (yych <= '-') goto yy453;
7766 				if (yych <= '.') goto yy135;
7767 				goto yy280;
7768 			}
7769 		}
7770 	} else {
7771 		if (yych <= 'Z') {
7772 			if (yych <= '@') {
7773 				if (yych <= '9') goto yy135;
7774 				goto yy280;
7775 			} else {
7776 				if (yych == 'R') goto yy470;
7777 				goto yy452;
7778 			}
7779 		} else {
7780 			if (yych <= 'q') {
7781 				if (yych <= '`') goto yy280;
7782 				goto yy452;
7783 			} else {
7784 				if (yych <= 'r') goto yy470;
7785 				if (yych <= 'z') goto yy452;
7786 				goto yy280;
7787 			}
7788 		}
7789 	}
7790 yy296:
7791 	YYDEBUG(296, *YYCURSOR);
7792 	yych = *++YYCURSOR;
7793 	if (yych <= 'T') {
7794 		if (yych <= ')') {
7795 			if (yych <= '(') goto yy18;
7796 			goto yy108;
7797 		} else {
7798 			if (yych <= '@') goto yy18;
7799 			if (yych <= 'S') goto yy452;
7800 			goto yy471;
7801 		}
7802 	} else {
7803 		if (yych <= 's') {
7804 			if (yych <= 'Z') goto yy452;
7805 			if (yych <= '`') goto yy18;
7806 			goto yy452;
7807 		} else {
7808 			if (yych <= 't') goto yy471;
7809 			if (yych <= 'z') goto yy452;
7810 			goto yy18;
7811 		}
7812 	}
7813 yy297:
7814 	YYDEBUG(297, *YYCURSOR);
7815 	yych = *++YYCURSOR;
7816 	if (yych <= 'S') {
7817 		if (yych <= ')') {
7818 			if (yych <= '(') goto yy18;
7819 			goto yy108;
7820 		} else {
7821 			if (yych <= '@') goto yy18;
7822 			if (yych <= 'R') goto yy452;
7823 			goto yy472;
7824 		}
7825 	} else {
7826 		if (yych <= 'r') {
7827 			if (yych <= 'Z') goto yy452;
7828 			if (yych <= '`') goto yy18;
7829 			goto yy452;
7830 		} else {
7831 			if (yych <= 's') goto yy472;
7832 			if (yych <= 'z') goto yy452;
7833 			goto yy18;
7834 		}
7835 	}
7836 yy298:
7837 	YYDEBUG(298, *YYCURSOR);
7838 	yych = *++YYCURSOR;
7839 	if (yych <= 'R') {
7840 		if (yych <= ')') {
7841 			if (yych <= '(') goto yy18;
7842 			goto yy108;
7843 		} else {
7844 			if (yych <= '@') goto yy18;
7845 			if (yych <= 'Q') goto yy452;
7846 			goto yy473;
7847 		}
7848 	} else {
7849 		if (yych <= 'q') {
7850 			if (yych <= 'Z') goto yy452;
7851 			if (yych <= '`') goto yy18;
7852 			goto yy452;
7853 		} else {
7854 			if (yych <= 'r') goto yy473;
7855 			if (yych <= 'z') goto yy452;
7856 			goto yy18;
7857 		}
7858 	}
7859 yy299:
7860 	YYDEBUG(299, *YYCURSOR);
7861 	yych = *++YYCURSOR;
7862 	if (yych <= 'D') {
7863 		if (yych <= ')') {
7864 			if (yych >= ')') goto yy108;
7865 		} else {
7866 			if (yych <= '@') goto yy300;
7867 			if (yych <= 'C') goto yy452;
7868 			goto yy474;
7869 		}
7870 	} else {
7871 		if (yych <= 'c') {
7872 			if (yych <= 'Z') goto yy452;
7873 			if (yych >= 'a') goto yy452;
7874 		} else {
7875 			if (yych <= 'd') goto yy474;
7876 			if (yych <= 'z') goto yy452;
7877 		}
7878 	}
7879 yy300:
7880 	YYDEBUG(300, *YYCURSOR);
7881 #line 1650 "parse_date.re"
7882 	{
7883 		const timelib_relunit* relunit;
7884 		DEBUG_OUTPUT("daytext");
7885 		TIMELIB_INIT;
7886 		TIMELIB_HAVE_RELATIVE();
7887 		TIMELIB_HAVE_WEEKDAY_RELATIVE();
7888 		TIMELIB_UNHAVE_TIME();
7889 		relunit = timelib_lookup_relunit((char**) &ptr);
7890 		s->time->relative.weekday = relunit->multiplier;
7891 		if (s->time->relative.weekday_behavior != 2) {
7892 			s->time->relative.weekday_behavior = 1;
7893 		}
7894 
7895 		TIMELIB_DEINIT;
7896 		return TIMELIB_WEEKDAY;
7897 	}
7898 #line 7899 "<stdout>"
7899 yy301:
7900 	YYDEBUG(301, *YYCURSOR);
7901 	yych = *++YYCURSOR;
7902 	if (yych <= 'N') {
7903 		if (yych <= ')') {
7904 			if (yych <= '(') goto yy18;
7905 			goto yy108;
7906 		} else {
7907 			if (yych <= '@') goto yy18;
7908 			if (yych <= 'M') goto yy452;
7909 			goto yy475;
7910 		}
7911 	} else {
7912 		if (yych <= 'm') {
7913 			if (yych <= 'Z') goto yy452;
7914 			if (yych <= '`') goto yy18;
7915 			goto yy452;
7916 		} else {
7917 			if (yych <= 'n') goto yy475;
7918 			if (yych <= 'z') goto yy452;
7919 			goto yy18;
7920 		}
7921 	}
7922 yy302:
7923 	YYDEBUG(302, *YYCURSOR);
7924 	yyaccept = 8;
7925 	yych = *(YYMARKER = ++YYCURSOR);
7926 	if (yych <= '9') {
7927 		if (yych <= '(') {
7928 			if (yych <= '\t') {
7929 				if (yych <= 0x08) goto yy280;
7930 				goto yy135;
7931 			} else {
7932 				if (yych == ' ') goto yy135;
7933 				goto yy280;
7934 			}
7935 		} else {
7936 			if (yych <= '-') {
7937 				if (yych <= ')') goto yy108;
7938 				if (yych <= ',') goto yy280;
7939 				goto yy459;
7940 			} else {
7941 				if (yych == '/') goto yy282;
7942 				goto yy135;
7943 			}
7944 		}
7945 	} else {
7946 		if (yych <= '^') {
7947 			if (yych <= 'Q') {
7948 				if (yych <= '@') goto yy280;
7949 				goto yy452;
7950 			} else {
7951 				if (yych <= 'R') goto yy470;
7952 				if (yych <= 'Z') goto yy452;
7953 				goto yy280;
7954 			}
7955 		} else {
7956 			if (yych <= 'q') {
7957 				if (yych <= '_') goto yy282;
7958 				if (yych <= '`') goto yy280;
7959 				goto yy458;
7960 			} else {
7961 				if (yych <= 'r') goto yy476;
7962 				if (yych <= 'z') goto yy458;
7963 				goto yy280;
7964 			}
7965 		}
7966 	}
7967 yy303:
7968 	YYDEBUG(303, *YYCURSOR);
7969 	yyaccept = 2;
7970 	yych = *(YYMARKER = ++YYCURSOR);
7971 	if (yych <= 'S') {
7972 		if (yych <= '-') {
7973 			if (yych == ')') goto yy108;
7974 			if (yych <= ',') goto yy18;
7975 			goto yy282;
7976 		} else {
7977 			if (yych == '/') goto yy282;
7978 			if (yych <= '@') goto yy18;
7979 			goto yy452;
7980 		}
7981 	} else {
7982 		if (yych <= '_') {
7983 			if (yych <= 'T') goto yy471;
7984 			if (yych <= 'Z') goto yy452;
7985 			if (yych <= '^') goto yy18;
7986 			goto yy282;
7987 		} else {
7988 			if (yych <= 's') {
7989 				if (yych <= '`') goto yy18;
7990 				goto yy458;
7991 			} else {
7992 				if (yych <= 't') goto yy477;
7993 				if (yych <= 'z') goto yy458;
7994 				goto yy18;
7995 			}
7996 		}
7997 	}
7998 yy304:
7999 	YYDEBUG(304, *YYCURSOR);
8000 	yyaccept = 2;
8001 	yych = *(YYMARKER = ++YYCURSOR);
8002 	if (yych <= 'R') {
8003 		if (yych <= '-') {
8004 			if (yych == ')') goto yy108;
8005 			if (yych <= ',') goto yy18;
8006 			goto yy282;
8007 		} else {
8008 			if (yych == '/') goto yy282;
8009 			if (yych <= '@') goto yy18;
8010 			goto yy452;
8011 		}
8012 	} else {
8013 		if (yych <= '_') {
8014 			if (yych <= 'S') goto yy472;
8015 			if (yych <= 'Z') goto yy452;
8016 			if (yych <= '^') goto yy18;
8017 			goto yy282;
8018 		} else {
8019 			if (yych <= 'r') {
8020 				if (yych <= '`') goto yy18;
8021 				goto yy458;
8022 			} else {
8023 				if (yych <= 's') goto yy478;
8024 				if (yych <= 'z') goto yy458;
8025 				goto yy18;
8026 			}
8027 		}
8028 	}
8029 yy305:
8030 	YYDEBUG(305, *YYCURSOR);
8031 	yyaccept = 2;
8032 	yych = *(YYMARKER = ++YYCURSOR);
8033 	if (yych <= 'Q') {
8034 		if (yych <= '-') {
8035 			if (yych == ')') goto yy108;
8036 			if (yych <= ',') goto yy18;
8037 			goto yy282;
8038 		} else {
8039 			if (yych == '/') goto yy282;
8040 			if (yych <= '@') goto yy18;
8041 			goto yy452;
8042 		}
8043 	} else {
8044 		if (yych <= '_') {
8045 			if (yych <= 'R') goto yy473;
8046 			if (yych <= 'Z') goto yy452;
8047 			if (yych <= '^') goto yy18;
8048 			goto yy282;
8049 		} else {
8050 			if (yych <= 'q') {
8051 				if (yych <= '`') goto yy18;
8052 				goto yy458;
8053 			} else {
8054 				if (yych <= 'r') goto yy479;
8055 				if (yych <= 'z') goto yy458;
8056 				goto yy18;
8057 			}
8058 		}
8059 	}
8060 yy306:
8061 	YYDEBUG(306, *YYCURSOR);
8062 	yyaccept = 10;
8063 	yych = *(YYMARKER = ++YYCURSOR);
8064 	if (yych <= 'C') {
8065 		if (yych <= '-') {
8066 			if (yych == ')') goto yy108;
8067 			if (yych <= ',') goto yy300;
8068 			goto yy282;
8069 		} else {
8070 			if (yych == '/') goto yy282;
8071 			if (yych <= '@') goto yy300;
8072 			goto yy452;
8073 		}
8074 	} else {
8075 		if (yych <= '_') {
8076 			if (yych <= 'D') goto yy474;
8077 			if (yych <= 'Z') goto yy452;
8078 			if (yych <= '^') goto yy300;
8079 			goto yy282;
8080 		} else {
8081 			if (yych <= 'c') {
8082 				if (yych <= '`') goto yy300;
8083 				goto yy458;
8084 			} else {
8085 				if (yych <= 'd') goto yy480;
8086 				if (yych <= 'z') goto yy458;
8087 				goto yy300;
8088 			}
8089 		}
8090 	}
8091 yy307:
8092 	YYDEBUG(307, *YYCURSOR);
8093 	yyaccept = 2;
8094 	yych = *(YYMARKER = ++YYCURSOR);
8095 	if (yych <= 'M') {
8096 		if (yych <= '-') {
8097 			if (yych == ')') goto yy108;
8098 			if (yych <= ',') goto yy18;
8099 			goto yy282;
8100 		} else {
8101 			if (yych == '/') goto yy282;
8102 			if (yych <= '@') goto yy18;
8103 			goto yy452;
8104 		}
8105 	} else {
8106 		if (yych <= '_') {
8107 			if (yych <= 'N') goto yy475;
8108 			if (yych <= 'Z') goto yy452;
8109 			if (yych <= '^') goto yy18;
8110 			goto yy282;
8111 		} else {
8112 			if (yych <= 'm') {
8113 				if (yych <= '`') goto yy18;
8114 				goto yy458;
8115 			} else {
8116 				if (yych <= 'n') goto yy481;
8117 				if (yych <= 'z') goto yy458;
8118 				goto yy18;
8119 			}
8120 		}
8121 	}
8122 yy308:
8123 	YYDEBUG(308, *YYCURSOR);
8124 	yyaccept = 2;
8125 	yych = *(YYMARKER = ++YYCURSOR);
8126 	if (yych <= ',') {
8127 		if (yych <= ')') {
8128 			if (yych <= '(') goto yy18;
8129 			goto yy108;
8130 		} else {
8131 			if (yych == '+') goto yy482;
8132 			goto yy18;
8133 		}
8134 	} else {
8135 		if (yych <= 'Z') {
8136 			if (yych <= '-') goto yy482;
8137 			if (yych <= '@') goto yy18;
8138 			goto yy452;
8139 		} else {
8140 			if (yych <= '`') goto yy18;
8141 			if (yych <= 'z') goto yy452;
8142 			goto yy18;
8143 		}
8144 	}
8145 yy309:
8146 	YYDEBUG(309, *YYCURSOR);
8147 	yyaccept = 11;
8148 	yych = *(YYMARKER = ++YYCURSOR);
8149 	if (yych <= '9') {
8150 		if (yych <= '0') {
8151 			if (yych >= '0') goto yy483;
8152 		} else {
8153 			if (yych <= '1') goto yy484;
8154 			if (yych <= '2') goto yy485;
8155 			goto yy486;
8156 		}
8157 	} else {
8158 		if (yych <= 'T') {
8159 			if (yych >= 'T') goto yy487;
8160 		} else {
8161 			if (yych == 't') goto yy487;
8162 		}
8163 	}
8164 yy310:
8165 	YYDEBUG(310, *YYCURSOR);
8166 #line 1455 "parse_date.re"
8167 	{
8168 		int length = 0;
8169 		DEBUG_OUTPUT("datetextual | datenoyear");
8170 		TIMELIB_INIT;
8171 		TIMELIB_HAVE_DATE();
8172 		s->time->m = timelib_get_month((char **) &ptr);
8173 		s->time->d = timelib_get_nr((char **) &ptr, 2);
8174 		s->time->y = timelib_get_nr_ex((char **) &ptr, 4, &length);
8175 		TIMELIB_PROCESS_YEAR(s->time->y, length);
8176 		TIMELIB_DEINIT;
8177 		return TIMELIB_DATE_TEXT;
8178 	}
8179 #line 8180 "<stdout>"
8180 yy311:
8181 	YYDEBUG(311, *YYCURSOR);
8182 	yyaccept = 11;
8183 	YYMARKER = ++YYCURSOR;
8184 	if ((YYLIMIT - YYCURSOR) < 18) YYFILL(18);
8185 	yych = *YYCURSOR;
8186 yy312:
8187 	YYDEBUG(312, *YYCURSOR);
8188 	if (yybm[0+yych] & 32) {
8189 		goto yy311;
8190 	}
8191 	if (yych <= '2') {
8192 		if (yych <= '/') goto yy310;
8193 		if (yych <= '0') goto yy488;
8194 		if (yych <= '1') goto yy489;
8195 		goto yy490;
8196 	} else {
8197 		if (yych <= '9') goto yy491;
8198 		if (yych == 'T') goto yy487;
8199 		goto yy310;
8200 	}
8201 yy313:
8202 	YYDEBUG(313, *YYCURSOR);
8203 	yych = *++YYCURSOR;
8204 	if (yych <= '9') {
8205 		if (yych <= ' ') {
8206 			if (yych <= 0x08) {
8207 				if (yych <= 0x00) goto yy309;
8208 				goto yy56;
8209 			} else {
8210 				if (yych <= '\t') goto yy311;
8211 				if (yych <= 0x1F) goto yy56;
8212 				goto yy311;
8213 			}
8214 		} else {
8215 			if (yych <= '-') {
8216 				if (yych == ',') goto yy311;
8217 				goto yy56;
8218 			} else {
8219 				if (yych <= '.') goto yy311;
8220 				if (yych <= '/') goto yy56;
8221 				goto yy492;
8222 			}
8223 		}
8224 	} else {
8225 		if (yych <= 'm') {
8226 			if (yych <= 'd') {
8227 				if (yych <= 'c') goto yy56;
8228 				goto yy311;
8229 			} else {
8230 				if (yych == 'h') goto yy311;
8231 				goto yy56;
8232 			}
8233 		} else {
8234 			if (yych <= 'r') {
8235 				if (yych <= 'n') goto yy314;
8236 				if (yych <= 'q') goto yy56;
8237 			} else {
8238 				if (yych <= 's') goto yy315;
8239 				if (yych <= 't') goto yy316;
8240 				goto yy56;
8241 			}
8242 		}
8243 	}
8244 yy314:
8245 	YYDEBUG(314, *YYCURSOR);
8246 	yyaccept = 11;
8247 	yych = *(YYMARKER = ++YYCURSOR);
8248 	if (yych == 'd') goto yy493;
8249 	goto yy312;
8250 yy315:
8251 	YYDEBUG(315, *YYCURSOR);
8252 	yyaccept = 11;
8253 	yych = *(YYMARKER = ++YYCURSOR);
8254 	if (yych == 't') goto yy493;
8255 	goto yy312;
8256 yy316:
8257 	YYDEBUG(316, *YYCURSOR);
8258 	yyaccept = 11;
8259 	yych = *(YYMARKER = ++YYCURSOR);
8260 	if (yych == 'h') goto yy493;
8261 	goto yy312;
8262 yy317:
8263 	YYDEBUG(317, *YYCURSOR);
8264 	yych = *++YYCURSOR;
8265 	if (yych <= '/') goto yy56;
8266 	if (yych <= '9') goto yy492;
8267 	goto yy56;
8268 yy318:
8269 	YYDEBUG(318, *YYCURSOR);
8270 	yyaccept = 2;
8271 	yych = *(YYMARKER = ++YYCURSOR);
8272 	if (yych <= ',') {
8273 		if (yych <= 0x1F) {
8274 			if (yych == '\t') goto yy135;
8275 			goto yy18;
8276 		} else {
8277 			if (yych <= ' ') goto yy135;
8278 			if (yych == ')') goto yy108;
8279 			goto yy18;
8280 		}
8281 	} else {
8282 		if (yych <= '@') {
8283 			if (yych == '/') goto yy18;
8284 			if (yych <= '9') goto yy135;
8285 			goto yy18;
8286 		} else {
8287 			if (yych <= 'Z') goto yy452;
8288 			if (yych <= '`') goto yy18;
8289 			if (yych <= 'z') goto yy452;
8290 			goto yy18;
8291 		}
8292 	}
8293 yy319:
8294 	YYDEBUG(319, *YYCURSOR);
8295 	yyaccept = 8;
8296 	yych = *(YYMARKER = ++YYCURSOR);
8297 	if (yych <= '/') {
8298 		if (yych <= '(') {
8299 			if (yych <= '\t') {
8300 				if (yych <= 0x08) goto yy280;
8301 				goto yy135;
8302 			} else {
8303 				if (yych == ' ') goto yy135;
8304 				goto yy280;
8305 			}
8306 		} else {
8307 			if (yych <= ',') {
8308 				if (yych <= ')') goto yy108;
8309 				goto yy280;
8310 			} else {
8311 				if (yych <= '-') goto yy453;
8312 				if (yych <= '.') goto yy135;
8313 				goto yy280;
8314 			}
8315 		}
8316 	} else {
8317 		if (yych <= 'Z') {
8318 			if (yych <= '@') {
8319 				if (yych <= '9') goto yy135;
8320 				goto yy280;
8321 			} else {
8322 				if (yych == 'U') goto yy494;
8323 				goto yy452;
8324 			}
8325 		} else {
8326 			if (yych <= 't') {
8327 				if (yych <= '`') goto yy280;
8328 				goto yy452;
8329 			} else {
8330 				if (yych <= 'u') goto yy494;
8331 				if (yych <= 'z') goto yy452;
8332 				goto yy280;
8333 			}
8334 		}
8335 	}
8336 yy320:
8337 	YYDEBUG(320, *YYCURSOR);
8338 	yyaccept = 8;
8339 	yych = *(YYMARKER = ++YYCURSOR);
8340 	if (yych <= '/') {
8341 		if (yych <= '(') {
8342 			if (yych <= '\t') {
8343 				if (yych <= 0x08) goto yy280;
8344 				goto yy135;
8345 			} else {
8346 				if (yych == ' ') goto yy135;
8347 				goto yy280;
8348 			}
8349 		} else {
8350 			if (yych <= ',') {
8351 				if (yych <= ')') goto yy108;
8352 				goto yy280;
8353 			} else {
8354 				if (yych <= '-') goto yy453;
8355 				if (yych <= '.') goto yy135;
8356 				goto yy280;
8357 			}
8358 		}
8359 	} else {
8360 		if (yych <= 'Z') {
8361 			if (yych <= '@') {
8362 				if (yych <= '9') goto yy135;
8363 				goto yy280;
8364 			} else {
8365 				if (yych == 'Y') goto yy495;
8366 				goto yy452;
8367 			}
8368 		} else {
8369 			if (yych <= 'x') {
8370 				if (yych <= '`') goto yy280;
8371 				goto yy452;
8372 			} else {
8373 				if (yych <= 'y') goto yy495;
8374 				if (yych <= 'z') goto yy452;
8375 				goto yy280;
8376 			}
8377 		}
8378 	}
8379 yy321:
8380 	YYDEBUG(321, *YYCURSOR);
8381 	yyaccept = 8;
8382 	yych = *(YYMARKER = ++YYCURSOR);
8383 	if (yych <= '/') {
8384 		if (yych <= '(') {
8385 			if (yych <= '\t') {
8386 				if (yych <= 0x08) goto yy280;
8387 				goto yy135;
8388 			} else {
8389 				if (yych == ' ') goto yy135;
8390 				goto yy280;
8391 			}
8392 		} else {
8393 			if (yych <= ',') {
8394 				if (yych <= ')') goto yy108;
8395 				goto yy280;
8396 			} else {
8397 				if (yych <= '-') goto yy453;
8398 				if (yych <= '.') goto yy135;
8399 				goto yy280;
8400 			}
8401 		}
8402 	} else {
8403 		if (yych <= 'Z') {
8404 			if (yych <= '@') {
8405 				if (yych <= '9') goto yy135;
8406 				goto yy280;
8407 			} else {
8408 				if (yych == 'E') goto yy495;
8409 				goto yy452;
8410 			}
8411 		} else {
8412 			if (yych <= 'd') {
8413 				if (yych <= '`') goto yy280;
8414 				goto yy452;
8415 			} else {
8416 				if (yych <= 'e') goto yy495;
8417 				if (yych <= 'z') goto yy452;
8418 				goto yy280;
8419 			}
8420 		}
8421 	}
8422 yy322:
8423 	YYDEBUG(322, *YYCURSOR);
8424 	yyaccept = 8;
8425 	yych = *(YYMARKER = ++YYCURSOR);
8426 	if (yych <= '9') {
8427 		if (yych <= '(') {
8428 			if (yych <= '\t') {
8429 				if (yych <= 0x08) goto yy280;
8430 				goto yy135;
8431 			} else {
8432 				if (yych == ' ') goto yy135;
8433 				goto yy280;
8434 			}
8435 		} else {
8436 			if (yych <= '-') {
8437 				if (yych <= ')') goto yy108;
8438 				if (yych <= ',') goto yy280;
8439 				goto yy459;
8440 			} else {
8441 				if (yych == '/') goto yy282;
8442 				goto yy135;
8443 			}
8444 		}
8445 	} else {
8446 		if (yych <= '^') {
8447 			if (yych <= 'T') {
8448 				if (yych <= '@') goto yy280;
8449 				goto yy452;
8450 			} else {
8451 				if (yych <= 'U') goto yy494;
8452 				if (yych <= 'Z') goto yy452;
8453 				goto yy280;
8454 			}
8455 		} else {
8456 			if (yych <= 't') {
8457 				if (yych <= '_') goto yy282;
8458 				if (yych <= '`') goto yy280;
8459 				goto yy458;
8460 			} else {
8461 				if (yych <= 'u') goto yy496;
8462 				if (yych <= 'z') goto yy458;
8463 				goto yy280;
8464 			}
8465 		}
8466 	}
8467 yy323:
8468 	YYDEBUG(323, *YYCURSOR);
8469 	yyaccept = 8;
8470 	yych = *(YYMARKER = ++YYCURSOR);
8471 	if (yych <= '9') {
8472 		if (yych <= '(') {
8473 			if (yych <= '\t') {
8474 				if (yych <= 0x08) goto yy280;
8475 				goto yy135;
8476 			} else {
8477 				if (yych == ' ') goto yy135;
8478 				goto yy280;
8479 			}
8480 		} else {
8481 			if (yych <= '-') {
8482 				if (yych <= ')') goto yy108;
8483 				if (yych <= ',') goto yy280;
8484 				goto yy459;
8485 			} else {
8486 				if (yych == '/') goto yy282;
8487 				goto yy135;
8488 			}
8489 		}
8490 	} else {
8491 		if (yych <= '^') {
8492 			if (yych <= 'X') {
8493 				if (yych <= '@') goto yy280;
8494 				goto yy452;
8495 			} else {
8496 				if (yych <= 'Y') goto yy495;
8497 				if (yych <= 'Z') goto yy452;
8498 				goto yy280;
8499 			}
8500 		} else {
8501 			if (yych <= 'x') {
8502 				if (yych <= '_') goto yy282;
8503 				if (yych <= '`') goto yy280;
8504 				goto yy458;
8505 			} else {
8506 				if (yych <= 'y') goto yy497;
8507 				if (yych <= 'z') goto yy458;
8508 				goto yy280;
8509 			}
8510 		}
8511 	}
8512 yy324:
8513 	YYDEBUG(324, *YYCURSOR);
8514 	yyaccept = 8;
8515 	yych = *(YYMARKER = ++YYCURSOR);
8516 	if (yych <= '9') {
8517 		if (yych <= '(') {
8518 			if (yych <= '\t') {
8519 				if (yych <= 0x08) goto yy280;
8520 				goto yy135;
8521 			} else {
8522 				if (yych == ' ') goto yy135;
8523 				goto yy280;
8524 			}
8525 		} else {
8526 			if (yych <= '-') {
8527 				if (yych <= ')') goto yy108;
8528 				if (yych <= ',') goto yy280;
8529 				goto yy459;
8530 			} else {
8531 				if (yych == '/') goto yy282;
8532 				goto yy135;
8533 			}
8534 		}
8535 	} else {
8536 		if (yych <= '^') {
8537 			if (yych <= 'D') {
8538 				if (yych <= '@') goto yy280;
8539 				goto yy452;
8540 			} else {
8541 				if (yych <= 'E') goto yy495;
8542 				if (yych <= 'Z') goto yy452;
8543 				goto yy280;
8544 			}
8545 		} else {
8546 			if (yych <= 'd') {
8547 				if (yych <= '_') goto yy282;
8548 				if (yych <= '`') goto yy280;
8549 				goto yy458;
8550 			} else {
8551 				if (yych <= 'e') goto yy497;
8552 				if (yych <= 'z') goto yy458;
8553 				goto yy280;
8554 			}
8555 		}
8556 	}
8557 yy325:
8558 	YYDEBUG(325, *YYCURSOR);
8559 	yych = *++YYCURSOR;
8560 	if (yych <= 'T') {
8561 		if (yych <= ')') {
8562 			if (yych <= '(') goto yy18;
8563 			goto yy108;
8564 		} else {
8565 			if (yych <= '@') goto yy18;
8566 			if (yych <= 'S') goto yy452;
8567 			goto yy498;
8568 		}
8569 	} else {
8570 		if (yych <= 's') {
8571 			if (yych <= 'Z') goto yy452;
8572 			if (yych <= '`') goto yy18;
8573 			goto yy452;
8574 		} else {
8575 			if (yych <= 't') goto yy498;
8576 			if (yych <= 'z') goto yy452;
8577 			goto yy18;
8578 		}
8579 	}
8580 yy326:
8581 	YYDEBUG(326, *YYCURSOR);
8582 	yyaccept = 2;
8583 	yych = *(YYMARKER = ++YYCURSOR);
8584 	if (yych <= 'S') {
8585 		if (yych <= '-') {
8586 			if (yych == ')') goto yy108;
8587 			if (yych <= ',') goto yy18;
8588 			goto yy282;
8589 		} else {
8590 			if (yych == '/') goto yy282;
8591 			if (yych <= '@') goto yy18;
8592 			goto yy452;
8593 		}
8594 	} else {
8595 		if (yych <= '_') {
8596 			if (yych <= 'T') goto yy498;
8597 			if (yych <= 'Z') goto yy452;
8598 			if (yych <= '^') goto yy18;
8599 			goto yy282;
8600 		} else {
8601 			if (yych <= 's') {
8602 				if (yych <= '`') goto yy18;
8603 				goto yy458;
8604 			} else {
8605 				if (yych <= 't') goto yy499;
8606 				if (yych <= 'z') goto yy458;
8607 				goto yy18;
8608 			}
8609 		}
8610 	}
8611 yy327:
8612 	YYDEBUG(327, *YYCURSOR);
8613 	yyaccept = 8;
8614 	yych = *(YYMARKER = ++YYCURSOR);
8615 	if (yych <= '/') {
8616 		if (yych <= '(') {
8617 			if (yych <= '\t') {
8618 				if (yych <= 0x08) goto yy280;
8619 				goto yy135;
8620 			} else {
8621 				if (yych == ' ') goto yy135;
8622 				goto yy280;
8623 			}
8624 		} else {
8625 			if (yych <= ',') {
8626 				if (yych <= ')') goto yy108;
8627 				goto yy280;
8628 			} else {
8629 				if (yych <= '-') goto yy453;
8630 				if (yych <= '.') goto yy135;
8631 				goto yy280;
8632 			}
8633 		}
8634 	} else {
8635 		if (yych <= 'Z') {
8636 			if (yych <= '@') {
8637 				if (yych <= '9') goto yy135;
8638 				goto yy280;
8639 			} else {
8640 				if (yych == 'C') goto yy500;
8641 				goto yy452;
8642 			}
8643 		} else {
8644 			if (yych <= 'b') {
8645 				if (yych <= '`') goto yy280;
8646 				goto yy452;
8647 			} else {
8648 				if (yych <= 'c') goto yy500;
8649 				if (yych <= 'z') goto yy452;
8650 				goto yy280;
8651 			}
8652 		}
8653 	}
8654 yy328:
8655 	YYDEBUG(328, *YYCURSOR);
8656 	yyaccept = 8;
8657 	yych = *(YYMARKER = ++YYCURSOR);
8658 	if (yych <= '-') {
8659 		if (yych <= ' ') {
8660 			if (yych == '\t') goto yy135;
8661 			if (yych <= 0x1F) goto yy280;
8662 			goto yy135;
8663 		} else {
8664 			if (yych == ')') goto yy108;
8665 			if (yych <= ',') goto yy280;
8666 			goto yy453;
8667 		}
8668 	} else {
8669 		if (yych <= '@') {
8670 			if (yych == '/') goto yy280;
8671 			if (yych <= '9') goto yy135;
8672 			goto yy280;
8673 		} else {
8674 			if (yych <= 'Z') goto yy452;
8675 			if (yych <= '`') goto yy280;
8676 			if (yych <= 'z') goto yy452;
8677 			goto yy280;
8678 		}
8679 	}
8680 yy329:
8681 	YYDEBUG(329, *YYCURSOR);
8682 	yych = *++YYCURSOR;
8683 	if (yych <= 'N') {
8684 		if (yych <= ')') {
8685 			if (yych <= '(') goto yy18;
8686 			goto yy108;
8687 		} else {
8688 			if (yych <= '@') goto yy18;
8689 			if (yych <= 'M') goto yy452;
8690 			goto yy501;
8691 		}
8692 	} else {
8693 		if (yych <= 'm') {
8694 			if (yych <= 'Z') goto yy452;
8695 			if (yych <= '`') goto yy18;
8696 			goto yy452;
8697 		} else {
8698 			if (yych <= 'n') goto yy501;
8699 			if (yych <= 'z') goto yy452;
8700 			goto yy18;
8701 		}
8702 	}
8703 yy330:
8704 	YYDEBUG(330, *YYCURSOR);
8705 	yyaccept = 8;
8706 	yych = *(YYMARKER = ++YYCURSOR);
8707 	if (yych <= '9') {
8708 		if (yych <= '(') {
8709 			if (yych <= '\t') {
8710 				if (yych <= 0x08) goto yy280;
8711 				goto yy135;
8712 			} else {
8713 				if (yych == ' ') goto yy135;
8714 				goto yy280;
8715 			}
8716 		} else {
8717 			if (yych <= '-') {
8718 				if (yych <= ')') goto yy108;
8719 				if (yych <= ',') goto yy280;
8720 				goto yy459;
8721 			} else {
8722 				if (yych == '/') goto yy282;
8723 				goto yy135;
8724 			}
8725 		}
8726 	} else {
8727 		if (yych <= '^') {
8728 			if (yych <= 'B') {
8729 				if (yych <= '@') goto yy280;
8730 				goto yy452;
8731 			} else {
8732 				if (yych <= 'C') goto yy500;
8733 				if (yych <= 'Z') goto yy452;
8734 				goto yy280;
8735 			}
8736 		} else {
8737 			if (yych <= 'b') {
8738 				if (yych <= '_') goto yy282;
8739 				if (yych <= '`') goto yy280;
8740 				goto yy458;
8741 			} else {
8742 				if (yych <= 'c') goto yy502;
8743 				if (yych <= 'z') goto yy458;
8744 				goto yy280;
8745 			}
8746 		}
8747 	}
8748 yy331:
8749 	YYDEBUG(331, *YYCURSOR);
8750 	yyaccept = 8;
8751 	yych = *(YYMARKER = ++YYCURSOR);
8752 	if (yych <= '.') {
8753 		if (yych <= ' ') {
8754 			if (yych == '\t') goto yy135;
8755 			if (yych <= 0x1F) goto yy280;
8756 			goto yy135;
8757 		} else {
8758 			if (yych <= ')') {
8759 				if (yych <= '(') goto yy280;
8760 				goto yy108;
8761 			} else {
8762 				if (yych <= ',') goto yy280;
8763 				if (yych <= '-') goto yy459;
8764 				goto yy135;
8765 			}
8766 		}
8767 	} else {
8768 		if (yych <= 'Z') {
8769 			if (yych <= '/') goto yy282;
8770 			if (yych <= '9') goto yy135;
8771 			if (yych <= '@') goto yy280;
8772 			goto yy452;
8773 		} else {
8774 			if (yych <= '_') {
8775 				if (yych <= '^') goto yy280;
8776 				goto yy282;
8777 			} else {
8778 				if (yych <= '`') goto yy280;
8779 				if (yych <= 'z') goto yy458;
8780 				goto yy280;
8781 			}
8782 		}
8783 	}
8784 yy332:
8785 	YYDEBUG(332, *YYCURSOR);
8786 	yyaccept = 2;
8787 	yych = *(YYMARKER = ++YYCURSOR);
8788 	if (yych <= 'M') {
8789 		if (yych <= '-') {
8790 			if (yych == ')') goto yy108;
8791 			if (yych <= ',') goto yy18;
8792 			goto yy282;
8793 		} else {
8794 			if (yych == '/') goto yy282;
8795 			if (yych <= '@') goto yy18;
8796 			goto yy452;
8797 		}
8798 	} else {
8799 		if (yych <= '_') {
8800 			if (yych <= 'N') goto yy501;
8801 			if (yych <= 'Z') goto yy452;
8802 			if (yych <= '^') goto yy18;
8803 			goto yy282;
8804 		} else {
8805 			if (yych <= 'm') {
8806 				if (yych <= '`') goto yy18;
8807 				goto yy458;
8808 			} else {
8809 				if (yych <= 'n') goto yy503;
8810 				if (yych <= 'z') goto yy458;
8811 				goto yy18;
8812 			}
8813 		}
8814 	}
8815 yy333:
8816 	YYDEBUG(333, *YYCURSOR);
8817 	yych = *++YYCURSOR;
8818 	if (yych <= 'T') {
8819 		if (yych <= ')') {
8820 			if (yych <= '(') goto yy18;
8821 			goto yy108;
8822 		} else {
8823 			if (yych <= '@') goto yy18;
8824 			if (yych <= 'S') goto yy452;
8825 			goto yy504;
8826 		}
8827 	} else {
8828 		if (yych <= 's') {
8829 			if (yych <= 'Z') goto yy452;
8830 			if (yych <= '`') goto yy18;
8831 			goto yy452;
8832 		} else {
8833 			if (yych <= 't') goto yy504;
8834 			if (yych <= 'z') goto yy452;
8835 			goto yy18;
8836 		}
8837 	}
8838 yy334:
8839 	YYDEBUG(334, *YYCURSOR);
8840 	yych = *++YYCURSOR;
8841 	if (yych <= 'N') {
8842 		if (yych <= ')') {
8843 			if (yych <= '(') goto yy18;
8844 			goto yy108;
8845 		} else {
8846 			if (yych <= '@') goto yy18;
8847 			if (yych <= 'M') goto yy452;
8848 			goto yy505;
8849 		}
8850 	} else {
8851 		if (yych <= 'm') {
8852 			if (yych <= 'Z') goto yy452;
8853 			if (yych <= '`') goto yy18;
8854 			goto yy452;
8855 		} else {
8856 			if (yych <= 'n') goto yy505;
8857 			if (yych <= 'z') goto yy452;
8858 			goto yy18;
8859 		}
8860 	}
8861 yy335:
8862 	YYDEBUG(335, *YYCURSOR);
8863 	yych = *++YYCURSOR;
8864 	if (yych <= '@') {
8865 		if (yych == ')') goto yy108;
8866 	} else {
8867 		if (yych <= 'Z') goto yy452;
8868 		if (yych <= '`') goto yy336;
8869 		if (yych <= 'z') goto yy452;
8870 	}
8871 yy336:
8872 	YYDEBUG(336, *YYCURSOR);
8873 #line 1028 "parse_date.re"
8874 	{
8875 		DEBUG_OUTPUT("now");
8876 		TIMELIB_INIT;
8877 
8878 		TIMELIB_DEINIT;
8879 		return TIMELIB_RELATIVE;
8880 	}
8881 #line 8882 "<stdout>"
8882 yy337:
8883 	YYDEBUG(337, *YYCURSOR);
8884 	yyaccept = 2;
8885 	yych = *(YYMARKER = ++YYCURSOR);
8886 	if (yych <= 'S') {
8887 		if (yych <= '-') {
8888 			if (yych == ')') goto yy108;
8889 			if (yych <= ',') goto yy18;
8890 			goto yy282;
8891 		} else {
8892 			if (yych == '/') goto yy282;
8893 			if (yych <= '@') goto yy18;
8894 			goto yy452;
8895 		}
8896 	} else {
8897 		if (yych <= '_') {
8898 			if (yych <= 'T') goto yy504;
8899 			if (yych <= 'Z') goto yy452;
8900 			if (yych <= '^') goto yy18;
8901 			goto yy282;
8902 		} else {
8903 			if (yych <= 's') {
8904 				if (yych <= '`') goto yy18;
8905 				goto yy458;
8906 			} else {
8907 				if (yych <= 't') goto yy507;
8908 				if (yych <= 'z') goto yy458;
8909 				goto yy18;
8910 			}
8911 		}
8912 	}
8913 yy338:
8914 	YYDEBUG(338, *YYCURSOR);
8915 	yyaccept = 2;
8916 	yych = *(YYMARKER = ++YYCURSOR);
8917 	if (yych <= 'M') {
8918 		if (yych <= '-') {
8919 			if (yych == ')') goto yy108;
8920 			if (yych <= ',') goto yy18;
8921 			goto yy282;
8922 		} else {
8923 			if (yych == '/') goto yy282;
8924 			if (yych <= '@') goto yy18;
8925 			goto yy452;
8926 		}
8927 	} else {
8928 		if (yych <= '_') {
8929 			if (yych <= 'N') goto yy505;
8930 			if (yych <= 'Z') goto yy452;
8931 			if (yych <= '^') goto yy18;
8932 			goto yy282;
8933 		} else {
8934 			if (yych <= 'm') {
8935 				if (yych <= '`') goto yy18;
8936 				goto yy458;
8937 			} else {
8938 				if (yych <= 'n') goto yy508;
8939 				if (yych <= 'z') goto yy458;
8940 				goto yy18;
8941 			}
8942 		}
8943 	}
8944 yy339:
8945 	YYDEBUG(339, *YYCURSOR);
8946 	yyaccept = 12;
8947 	yych = *(YYMARKER = ++YYCURSOR);
8948 	if (yych <= '/') {
8949 		if (yych <= ',') {
8950 			if (yych == ')') goto yy108;
8951 			goto yy336;
8952 		} else {
8953 			if (yych == '.') goto yy336;
8954 			goto yy282;
8955 		}
8956 	} else {
8957 		if (yych <= '^') {
8958 			if (yych <= '@') goto yy336;
8959 			if (yych <= 'Z') goto yy452;
8960 			goto yy336;
8961 		} else {
8962 			if (yych <= '_') goto yy282;
8963 			if (yych <= '`') goto yy336;
8964 			if (yych <= 'z') goto yy458;
8965 			goto yy336;
8966 		}
8967 	}
8968 yy340:
8969 	YYDEBUG(340, *YYCURSOR);
8970 	yyaccept = 8;
8971 	yych = *(YYMARKER = ++YYCURSOR);
8972 	if (yych <= '/') {
8973 		if (yych <= '(') {
8974 			if (yych <= '\t') {
8975 				if (yych <= 0x08) goto yy280;
8976 				goto yy135;
8977 			} else {
8978 				if (yych == ' ') goto yy135;
8979 				goto yy280;
8980 			}
8981 		} else {
8982 			if (yych <= ',') {
8983 				if (yych <= ')') goto yy108;
8984 				goto yy280;
8985 			} else {
8986 				if (yych <= '-') goto yy453;
8987 				if (yych <= '.') goto yy135;
8988 				goto yy280;
8989 			}
8990 		}
8991 	} else {
8992 		if (yych <= 'Z') {
8993 			if (yych <= '@') {
8994 				if (yych <= '9') goto yy135;
8995 				goto yy280;
8996 			} else {
8997 				if (yych == 'O') goto yy509;
8998 				goto yy452;
8999 			}
9000 		} else {
9001 			if (yych <= 'n') {
9002 				if (yych <= '`') goto yy280;
9003 				goto yy452;
9004 			} else {
9005 				if (yych <= 'o') goto yy509;
9006 				if (yych <= 'z') goto yy452;
9007 				goto yy280;
9008 			}
9009 		}
9010 	}
9011 yy341:
9012 	YYDEBUG(341, *YYCURSOR);
9013 	yyaccept = 8;
9014 	yych = *(YYMARKER = ++YYCURSOR);
9015 	if (yych <= '9') {
9016 		if (yych <= '(') {
9017 			if (yych <= '\t') {
9018 				if (yych <= 0x08) goto yy280;
9019 				goto yy135;
9020 			} else {
9021 				if (yych == ' ') goto yy135;
9022 				goto yy280;
9023 			}
9024 		} else {
9025 			if (yych <= '-') {
9026 				if (yych <= ')') goto yy108;
9027 				if (yych <= ',') goto yy280;
9028 				goto yy459;
9029 			} else {
9030 				if (yych == '/') goto yy282;
9031 				goto yy135;
9032 			}
9033 		}
9034 	} else {
9035 		if (yych <= '^') {
9036 			if (yych <= 'N') {
9037 				if (yych <= '@') goto yy280;
9038 				goto yy452;
9039 			} else {
9040 				if (yych <= 'O') goto yy509;
9041 				if (yych <= 'Z') goto yy452;
9042 				goto yy280;
9043 			}
9044 		} else {
9045 			if (yych <= 'n') {
9046 				if (yych <= '_') goto yy282;
9047 				if (yych <= '`') goto yy280;
9048 				goto yy458;
9049 			} else {
9050 				if (yych <= 'o') goto yy510;
9051 				if (yych <= 'z') goto yy458;
9052 				goto yy280;
9053 			}
9054 		}
9055 	}
9056 yy342:
9057 	YYDEBUG(342, *YYCURSOR);
9058 	yych = *++YYCURSOR;
9059 	if (yych <= 'V') {
9060 		if (yych <= ')') {
9061 			if (yych <= '(') goto yy18;
9062 			goto yy108;
9063 		} else {
9064 			if (yych <= '@') goto yy18;
9065 			if (yych <= 'U') goto yy452;
9066 			goto yy511;
9067 		}
9068 	} else {
9069 		if (yych <= 'u') {
9070 			if (yych <= 'Z') goto yy452;
9071 			if (yych <= '`') goto yy18;
9072 			goto yy452;
9073 		} else {
9074 			if (yych <= 'v') goto yy511;
9075 			if (yych <= 'z') goto yy452;
9076 			goto yy18;
9077 		}
9078 	}
9079 yy343:
9080 	YYDEBUG(343, *YYCURSOR);
9081 	yyaccept = 2;
9082 	yych = *(YYMARKER = ++YYCURSOR);
9083 	if (yych <= 'U') {
9084 		if (yych <= '-') {
9085 			if (yych == ')') goto yy108;
9086 			if (yych <= ',') goto yy18;
9087 			goto yy282;
9088 		} else {
9089 			if (yych == '/') goto yy282;
9090 			if (yych <= '@') goto yy18;
9091 			goto yy452;
9092 		}
9093 	} else {
9094 		if (yych <= '_') {
9095 			if (yych <= 'V') goto yy511;
9096 			if (yych <= 'Z') goto yy452;
9097 			if (yych <= '^') goto yy18;
9098 			goto yy282;
9099 		} else {
9100 			if (yych <= 'u') {
9101 				if (yych <= '`') goto yy18;
9102 				goto yy458;
9103 			} else {
9104 				if (yych <= 'v') goto yy512;
9105 				if (yych <= 'z') goto yy458;
9106 				goto yy18;
9107 			}
9108 		}
9109 	}
9110 yy344:
9111 	YYDEBUG(344, *YYCURSOR);
9112 	yych = *++YYCURSOR;
9113 	if (yych <= 'U') {
9114 		if (yych <= ')') {
9115 			if (yych <= '(') goto yy300;
9116 			goto yy108;
9117 		} else {
9118 			if (yych <= '@') goto yy300;
9119 			if (yych <= 'T') goto yy452;
9120 			goto yy513;
9121 		}
9122 	} else {
9123 		if (yych <= 't') {
9124 			if (yych <= 'Z') goto yy452;
9125 			if (yych <= '`') goto yy300;
9126 			goto yy452;
9127 		} else {
9128 			if (yych <= 'u') goto yy513;
9129 			if (yych <= 'z') goto yy452;
9130 			goto yy300;
9131 		}
9132 	}
9133 yy345:
9134 	YYDEBUG(345, *YYCURSOR);
9135 	yych = *++YYCURSOR;
9136 	if (yych <= 'O') {
9137 		if (yych <= ')') {
9138 			if (yych <= '(') goto yy18;
9139 			goto yy108;
9140 		} else {
9141 			if (yych <= '@') goto yy18;
9142 			if (yych <= 'N') goto yy452;
9143 			goto yy514;
9144 		}
9145 	} else {
9146 		if (yych <= 'n') {
9147 			if (yych <= 'Z') goto yy452;
9148 			if (yych <= '`') goto yy18;
9149 			goto yy452;
9150 		} else {
9151 			if (yych <= 'o') goto yy514;
9152 			if (yych <= 'z') goto yy452;
9153 			goto yy18;
9154 		}
9155 	}
9156 yy346:
9157 	YYDEBUG(346, *YYCURSOR);
9158 	yyaccept = 8;
9159 	yych = *(YYMARKER = ++YYCURSOR);
9160 	if (yych <= '/') {
9161 		if (yych <= '(') {
9162 			if (yych <= '\t') {
9163 				if (yych <= 0x08) goto yy280;
9164 				goto yy135;
9165 			} else {
9166 				if (yych == ' ') goto yy135;
9167 				goto yy280;
9168 			}
9169 		} else {
9170 			if (yych <= ',') {
9171 				if (yych <= ')') goto yy108;
9172 				goto yy280;
9173 			} else {
9174 				if (yych <= '-') goto yy453;
9175 				if (yych <= '.') goto yy135;
9176 				goto yy280;
9177 			}
9178 		}
9179 	} else {
9180 		if (yych <= 'Z') {
9181 			if (yych <= '@') {
9182 				if (yych <= '9') goto yy135;
9183 				goto yy280;
9184 			} else {
9185 				if (yych == 'T') goto yy515;
9186 				goto yy452;
9187 			}
9188 		} else {
9189 			if (yych <= 's') {
9190 				if (yych <= '`') goto yy280;
9191 				goto yy452;
9192 			} else {
9193 				if (yych <= 't') goto yy515;
9194 				if (yych <= 'z') goto yy452;
9195 				goto yy280;
9196 			}
9197 		}
9198 	}
9199 yy347:
9200 	YYDEBUG(347, *YYCURSOR);
9201 	yych = *++YYCURSOR;
9202 	if (yych <= 'E') {
9203 		if (yych <= ')') {
9204 			if (yych <= '(') goto yy18;
9205 			goto yy108;
9206 		} else {
9207 			if (yych <= '@') goto yy18;
9208 			if (yych <= 'D') goto yy452;
9209 			goto yy516;
9210 		}
9211 	} else {
9212 		if (yych <= 'd') {
9213 			if (yych <= 'Z') goto yy452;
9214 			if (yych <= '`') goto yy18;
9215 			goto yy452;
9216 		} else {
9217 			if (yych <= 'e') goto yy516;
9218 			if (yych <= 'z') goto yy452;
9219 			goto yy18;
9220 		}
9221 	}
9222 yy348:
9223 	YYDEBUG(348, *YYCURSOR);
9224 	yyaccept = 10;
9225 	yych = *(YYMARKER = ++YYCURSOR);
9226 	if (yych <= 'T') {
9227 		if (yych <= '-') {
9228 			if (yych == ')') goto yy108;
9229 			if (yych <= ',') goto yy300;
9230 			goto yy282;
9231 		} else {
9232 			if (yych == '/') goto yy282;
9233 			if (yych <= '@') goto yy300;
9234 			goto yy452;
9235 		}
9236 	} else {
9237 		if (yych <= '_') {
9238 			if (yych <= 'U') goto yy513;
9239 			if (yych <= 'Z') goto yy452;
9240 			if (yych <= '^') goto yy300;
9241 			goto yy282;
9242 		} else {
9243 			if (yych <= 't') {
9244 				if (yych <= '`') goto yy300;
9245 				goto yy458;
9246 			} else {
9247 				if (yych <= 'u') goto yy517;
9248 				if (yych <= 'z') goto yy458;
9249 				goto yy300;
9250 			}
9251 		}
9252 	}
9253 yy349:
9254 	YYDEBUG(349, *YYCURSOR);
9255 	yyaccept = 2;
9256 	yych = *(YYMARKER = ++YYCURSOR);
9257 	if (yych <= 'N') {
9258 		if (yych <= '-') {
9259 			if (yych == ')') goto yy108;
9260 			if (yych <= ',') goto yy18;
9261 			goto yy282;
9262 		} else {
9263 			if (yych == '/') goto yy282;
9264 			if (yych <= '@') goto yy18;
9265 			goto yy452;
9266 		}
9267 	} else {
9268 		if (yych <= '_') {
9269 			if (yych <= 'O') goto yy514;
9270 			if (yych <= 'Z') goto yy452;
9271 			if (yych <= '^') goto yy18;
9272 			goto yy282;
9273 		} else {
9274 			if (yych <= 'n') {
9275 				if (yych <= '`') goto yy18;
9276 				goto yy458;
9277 			} else {
9278 				if (yych <= 'o') goto yy518;
9279 				if (yych <= 'z') goto yy458;
9280 				goto yy18;
9281 			}
9282 		}
9283 	}
9284 yy350:
9285 	YYDEBUG(350, *YYCURSOR);
9286 	yyaccept = 8;
9287 	yych = *(YYMARKER = ++YYCURSOR);
9288 	if (yych <= '9') {
9289 		if (yych <= '(') {
9290 			if (yych <= '\t') {
9291 				if (yych <= 0x08) goto yy280;
9292 				goto yy135;
9293 			} else {
9294 				if (yych == ' ') goto yy135;
9295 				goto yy280;
9296 			}
9297 		} else {
9298 			if (yych <= '-') {
9299 				if (yych <= ')') goto yy108;
9300 				if (yych <= ',') goto yy280;
9301 				goto yy459;
9302 			} else {
9303 				if (yych == '/') goto yy282;
9304 				goto yy135;
9305 			}
9306 		}
9307 	} else {
9308 		if (yych <= '^') {
9309 			if (yych <= 'S') {
9310 				if (yych <= '@') goto yy280;
9311 				goto yy452;
9312 			} else {
9313 				if (yych <= 'T') goto yy515;
9314 				if (yych <= 'Z') goto yy452;
9315 				goto yy280;
9316 			}
9317 		} else {
9318 			if (yych <= 's') {
9319 				if (yych <= '_') goto yy282;
9320 				if (yych <= '`') goto yy280;
9321 				goto yy458;
9322 			} else {
9323 				if (yych <= 't') goto yy519;
9324 				if (yych <= 'z') goto yy458;
9325 				goto yy280;
9326 			}
9327 		}
9328 	}
9329 yy351:
9330 	YYDEBUG(351, *YYCURSOR);
9331 	yyaccept = 2;
9332 	yych = *(YYMARKER = ++YYCURSOR);
9333 	if (yych <= 'D') {
9334 		if (yych <= '-') {
9335 			if (yych == ')') goto yy108;
9336 			if (yych <= ',') goto yy18;
9337 			goto yy282;
9338 		} else {
9339 			if (yych == '/') goto yy282;
9340 			if (yych <= '@') goto yy18;
9341 			goto yy452;
9342 		}
9343 	} else {
9344 		if (yych <= '_') {
9345 			if (yych <= 'E') goto yy516;
9346 			if (yych <= 'Z') goto yy452;
9347 			if (yych <= '^') goto yy18;
9348 			goto yy282;
9349 		} else {
9350 			if (yych <= 'd') {
9351 				if (yych <= '`') goto yy18;
9352 				goto yy458;
9353 			} else {
9354 				if (yych <= 'e') goto yy520;
9355 				if (yych <= 'z') goto yy458;
9356 				goto yy18;
9357 			}
9358 		}
9359 	}
9360 yy352:
9361 	YYDEBUG(352, *YYCURSOR);
9362 	yych = *++YYCURSOR;
9363 	if (yych <= '/') {
9364 		if (yych == '.') goto yy71;
9365 		goto yy56;
9366 	} else {
9367 		if (yych <= '5') goto yy521;
9368 		if (yych == ':') goto yy71;
9369 		goto yy56;
9370 	}
9371 yy353:
9372 	YYDEBUG(353, *YYCURSOR);
9373 	yych = *++YYCURSOR;
9374 	if (yych <= 'S') {
9375 		if (yych <= '@') {
9376 			if (yych == ')') goto yy108;
9377 			goto yy18;
9378 		} else {
9379 			if (yych <= 'Q') goto yy452;
9380 			if (yych <= 'R') goto yy522;
9381 			goto yy504;
9382 		}
9383 	} else {
9384 		if (yych <= 'q') {
9385 			if (yych <= 'Z') goto yy452;
9386 			if (yych <= '`') goto yy18;
9387 			goto yy452;
9388 		} else {
9389 			if (yych <= 'r') goto yy522;
9390 			if (yych <= 's') goto yy504;
9391 			if (yych <= 'z') goto yy452;
9392 			goto yy18;
9393 		}
9394 	}
9395 yy354:
9396 	YYDEBUG(354, *YYCURSOR);
9397 	yych = *++YYCURSOR;
9398 	if (yych <= 'R') {
9399 		if (yych <= ')') {
9400 			if (yych <= '(') goto yy300;
9401 			goto yy108;
9402 		} else {
9403 			if (yych <= '@') goto yy300;
9404 			if (yych <= 'Q') goto yy452;
9405 			goto yy523;
9406 		}
9407 	} else {
9408 		if (yych <= 'q') {
9409 			if (yych <= 'Z') goto yy452;
9410 			if (yych <= '`') goto yy300;
9411 			goto yy452;
9412 		} else {
9413 			if (yych <= 'r') goto yy523;
9414 			if (yych <= 'z') goto yy452;
9415 			goto yy300;
9416 		}
9417 	}
9418 yy355:
9419 	YYDEBUG(355, *YYCURSOR);
9420 	yych = *++YYCURSOR;
9421 	if (yych <= 'A') {
9422 		if (yych == ')') goto yy108;
9423 		if (yych <= '@') goto yy18;
9424 		goto yy524;
9425 	} else {
9426 		if (yych <= '`') {
9427 			if (yych <= 'Z') goto yy452;
9428 			goto yy18;
9429 		} else {
9430 			if (yych <= 'a') goto yy524;
9431 			if (yych <= 'z') goto yy452;
9432 			goto yy18;
9433 		}
9434 	}
9435 yy356:
9436 	YYDEBUG(356, *YYCURSOR);
9437 	yych = *++YYCURSOR;
9438 	if (yych <= 'O') {
9439 		if (yych <= ')') {
9440 			if (yych <= '(') goto yy18;
9441 			goto yy108;
9442 		} else {
9443 			if (yych <= '@') goto yy18;
9444 			if (yych <= 'N') goto yy452;
9445 			goto yy525;
9446 		}
9447 	} else {
9448 		if (yych <= 'n') {
9449 			if (yych <= 'Z') goto yy452;
9450 			if (yych <= '`') goto yy18;
9451 			goto yy452;
9452 		} else {
9453 			if (yych <= 'o') goto yy525;
9454 			if (yych <= 'z') goto yy452;
9455 			goto yy18;
9456 		}
9457 	}
9458 yy357:
9459 	YYDEBUG(357, *YYCURSOR);
9460 	yych = *++YYCURSOR;
9461 	if (yych <= 'S') {
9462 		if (yych <= ')') {
9463 			if (yych <= '(') goto yy300;
9464 			goto yy108;
9465 		} else {
9466 			if (yych <= '@') goto yy300;
9467 			if (yych <= 'R') goto yy452;
9468 			goto yy526;
9469 		}
9470 	} else {
9471 		if (yych <= 'r') {
9472 			if (yych <= 'Z') goto yy452;
9473 			if (yych <= '`') goto yy300;
9474 			goto yy452;
9475 		} else {
9476 			if (yych <= 's') goto yy526;
9477 			if (yych <= 'z') goto yy452;
9478 			goto yy300;
9479 		}
9480 	}
9481 yy358:
9482 	YYDEBUG(358, *YYCURSOR);
9483 	yych = *++YYCURSOR;
9484 	if (yych <= 'L') {
9485 		if (yych <= ')') {
9486 			if (yych <= '(') goto yy18;
9487 			goto yy108;
9488 		} else {
9489 			if (yych <= '@') goto yy18;
9490 			if (yych <= 'K') goto yy452;
9491 			goto yy527;
9492 		}
9493 	} else {
9494 		if (yych <= 'k') {
9495 			if (yych <= 'Z') goto yy452;
9496 			if (yych <= '`') goto yy18;
9497 			goto yy452;
9498 		} else {
9499 			if (yych <= 'l') goto yy527;
9500 			if (yych <= 'z') goto yy452;
9501 			goto yy18;
9502 		}
9503 	}
9504 yy359:
9505 	YYDEBUG(359, *YYCURSOR);
9506 	yyaccept = 2;
9507 	yych = *(YYMARKER = ++YYCURSOR);
9508 	if (yych <= 'R') {
9509 		if (yych <= '-') {
9510 			if (yych == ')') goto yy108;
9511 			if (yych <= ',') goto yy18;
9512 			goto yy282;
9513 		} else {
9514 			if (yych <= '/') {
9515 				if (yych <= '.') goto yy18;
9516 				goto yy282;
9517 			} else {
9518 				if (yych <= '@') goto yy18;
9519 				if (yych <= 'Q') goto yy452;
9520 				goto yy522;
9521 			}
9522 		}
9523 	} else {
9524 		if (yych <= '`') {
9525 			if (yych <= 'Z') {
9526 				if (yych <= 'S') goto yy504;
9527 				goto yy452;
9528 			} else {
9529 				if (yych == '_') goto yy282;
9530 				goto yy18;
9531 			}
9532 		} else {
9533 			if (yych <= 'r') {
9534 				if (yych <= 'q') goto yy458;
9535 				goto yy528;
9536 			} else {
9537 				if (yych <= 's') goto yy507;
9538 				if (yych <= 'z') goto yy458;
9539 				goto yy18;
9540 			}
9541 		}
9542 	}
9543 yy360:
9544 	YYDEBUG(360, *YYCURSOR);
9545 	yyaccept = 10;
9546 	yych = *(YYMARKER = ++YYCURSOR);
9547 	if (yych <= 'Q') {
9548 		if (yych <= '-') {
9549 			if (yych == ')') goto yy108;
9550 			if (yych <= ',') goto yy300;
9551 			goto yy282;
9552 		} else {
9553 			if (yych == '/') goto yy282;
9554 			if (yych <= '@') goto yy300;
9555 			goto yy452;
9556 		}
9557 	} else {
9558 		if (yych <= '_') {
9559 			if (yych <= 'R') goto yy523;
9560 			if (yych <= 'Z') goto yy452;
9561 			if (yych <= '^') goto yy300;
9562 			goto yy282;
9563 		} else {
9564 			if (yych <= 'q') {
9565 				if (yych <= '`') goto yy300;
9566 				goto yy458;
9567 			} else {
9568 				if (yych <= 'r') goto yy529;
9569 				if (yych <= 'z') goto yy458;
9570 				goto yy300;
9571 			}
9572 		}
9573 	}
9574 yy361:
9575 	YYDEBUG(361, *YYCURSOR);
9576 	yyaccept = 2;
9577 	yych = *(YYMARKER = ++YYCURSOR);
9578 	if (yych <= '@') {
9579 		if (yych <= ',') {
9580 			if (yych == ')') goto yy108;
9581 			goto yy18;
9582 		} else {
9583 			if (yych == '.') goto yy18;
9584 			if (yych <= '/') goto yy282;
9585 			goto yy18;
9586 		}
9587 	} else {
9588 		if (yych <= '_') {
9589 			if (yych <= 'A') goto yy524;
9590 			if (yych <= 'Z') goto yy452;
9591 			if (yych <= '^') goto yy18;
9592 			goto yy282;
9593 		} else {
9594 			if (yych <= '`') goto yy18;
9595 			if (yych <= 'a') goto yy530;
9596 			if (yych <= 'z') goto yy458;
9597 			goto yy18;
9598 		}
9599 	}
9600 yy362:
9601 	YYDEBUG(362, *YYCURSOR);
9602 	yyaccept = 2;
9603 	yych = *(YYMARKER = ++YYCURSOR);
9604 	if (yych <= 'N') {
9605 		if (yych <= '-') {
9606 			if (yych == ')') goto yy108;
9607 			if (yych <= ',') goto yy18;
9608 			goto yy282;
9609 		} else {
9610 			if (yych == '/') goto yy282;
9611 			if (yych <= '@') goto yy18;
9612 			goto yy452;
9613 		}
9614 	} else {
9615 		if (yych <= '_') {
9616 			if (yych <= 'O') goto yy525;
9617 			if (yych <= 'Z') goto yy452;
9618 			if (yych <= '^') goto yy18;
9619 			goto yy282;
9620 		} else {
9621 			if (yych <= 'n') {
9622 				if (yych <= '`') goto yy18;
9623 				goto yy458;
9624 			} else {
9625 				if (yych <= 'o') goto yy531;
9626 				if (yych <= 'z') goto yy458;
9627 				goto yy18;
9628 			}
9629 		}
9630 	}
9631 yy363:
9632 	YYDEBUG(363, *YYCURSOR);
9633 	yyaccept = 10;
9634 	yych = *(YYMARKER = ++YYCURSOR);
9635 	if (yych <= 'R') {
9636 		if (yych <= '-') {
9637 			if (yych == ')') goto yy108;
9638 			if (yych <= ',') goto yy300;
9639 			goto yy282;
9640 		} else {
9641 			if (yych == '/') goto yy282;
9642 			if (yych <= '@') goto yy300;
9643 			goto yy452;
9644 		}
9645 	} else {
9646 		if (yych <= '_') {
9647 			if (yych <= 'S') goto yy526;
9648 			if (yych <= 'Z') goto yy452;
9649 			if (yych <= '^') goto yy300;
9650 			goto yy282;
9651 		} else {
9652 			if (yych <= 'r') {
9653 				if (yych <= '`') goto yy300;
9654 				goto yy458;
9655 			} else {
9656 				if (yych <= 's') goto yy532;
9657 				if (yych <= 'z') goto yy458;
9658 				goto yy300;
9659 			}
9660 		}
9661 	}
9662 yy364:
9663 	YYDEBUG(364, *YYCURSOR);
9664 	yyaccept = 2;
9665 	yych = *(YYMARKER = ++YYCURSOR);
9666 	if (yych <= 'K') {
9667 		if (yych <= '-') {
9668 			if (yych == ')') goto yy108;
9669 			if (yych <= ',') goto yy18;
9670 			goto yy282;
9671 		} else {
9672 			if (yych == '/') goto yy282;
9673 			if (yych <= '@') goto yy18;
9674 			goto yy452;
9675 		}
9676 	} else {
9677 		if (yych <= '_') {
9678 			if (yych <= 'L') goto yy527;
9679 			if (yych <= 'Z') goto yy452;
9680 			if (yych <= '^') goto yy18;
9681 			goto yy282;
9682 		} else {
9683 			if (yych <= 'k') {
9684 				if (yych <= '`') goto yy18;
9685 				goto yy458;
9686 			} else {
9687 				if (yych <= 'l') goto yy533;
9688 				if (yych <= 'z') goto yy458;
9689 				goto yy18;
9690 			}
9691 		}
9692 	}
9693 yy365:
9694 	YYDEBUG(365, *YYCURSOR);
9695 	yyaccept = 2;
9696 	yych = *(YYMARKER = ++YYCURSOR);
9697 	if (yych <= '.') {
9698 		if (yych <= ' ') {
9699 			if (yych == '\t') goto yy135;
9700 			if (yych <= 0x1F) goto yy18;
9701 			goto yy135;
9702 		} else {
9703 			if (yych == ')') goto yy108;
9704 			if (yych <= ',') goto yy18;
9705 			goto yy135;
9706 		}
9707 	} else {
9708 		if (yych <= 'H') {
9709 			if (yych <= '/') goto yy18;
9710 			if (yych <= '9') goto yy135;
9711 			if (yych <= '@') goto yy18;
9712 			goto yy452;
9713 		} else {
9714 			if (yych <= 'Z') {
9715 				if (yych <= 'I') goto yy534;
9716 				goto yy452;
9717 			} else {
9718 				if (yych <= '`') goto yy18;
9719 				if (yych <= 'z') goto yy452;
9720 				goto yy18;
9721 			}
9722 		}
9723 	}
9724 yy366:
9725 	YYDEBUG(366, *YYCURSOR);
9726 	yych = *++YYCURSOR;
9727 	if (yych <= 'N') {
9728 		if (yych <= ')') {
9729 			if (yych <= '(') goto yy300;
9730 			goto yy108;
9731 		} else {
9732 			if (yych <= '@') goto yy300;
9733 			if (yych <= 'M') goto yy452;
9734 			goto yy535;
9735 		}
9736 	} else {
9737 		if (yych <= 'm') {
9738 			if (yych <= 'Z') goto yy452;
9739 			if (yych <= '`') goto yy300;
9740 			goto yy452;
9741 		} else {
9742 			if (yych <= 'n') goto yy535;
9743 			if (yych <= 'z') goto yy452;
9744 			goto yy300;
9745 		}
9746 	}
9747 yy367:
9748 	YYDEBUG(367, *YYCURSOR);
9749 	yych = *++YYCURSOR;
9750 	if (yych <= 'K') {
9751 		if (yych <= ')') {
9752 			if (yych <= '(') goto yy18;
9753 			goto yy108;
9754 		} else {
9755 			if (yych <= '@') goto yy18;
9756 			if (yych <= 'J') goto yy452;
9757 			goto yy536;
9758 		}
9759 	} else {
9760 		if (yych <= 'j') {
9761 			if (yych <= 'Z') goto yy452;
9762 			if (yych <= '`') goto yy18;
9763 			goto yy452;
9764 		} else {
9765 			if (yych <= 'k') goto yy536;
9766 			if (yych <= 'z') goto yy452;
9767 			goto yy18;
9768 		}
9769 	}
9770 yy368:
9771 	YYDEBUG(368, *YYCURSOR);
9772 	yyaccept = 10;
9773 	yych = *(YYMARKER = ++YYCURSOR);
9774 	if (yych <= 'M') {
9775 		if (yych <= '-') {
9776 			if (yych == ')') goto yy108;
9777 			if (yych <= ',') goto yy300;
9778 			goto yy282;
9779 		} else {
9780 			if (yych == '/') goto yy282;
9781 			if (yych <= '@') goto yy300;
9782 			goto yy452;
9783 		}
9784 	} else {
9785 		if (yych <= '_') {
9786 			if (yych <= 'N') goto yy535;
9787 			if (yych <= 'Z') goto yy452;
9788 			if (yych <= '^') goto yy300;
9789 			goto yy282;
9790 		} else {
9791 			if (yych <= 'm') {
9792 				if (yych <= '`') goto yy300;
9793 				goto yy458;
9794 			} else {
9795 				if (yych <= 'n') goto yy537;
9796 				if (yych <= 'z') goto yy458;
9797 				goto yy300;
9798 			}
9799 		}
9800 	}
9801 yy369:
9802 	YYDEBUG(369, *YYCURSOR);
9803 	yyaccept = 2;
9804 	yych = *(YYMARKER = ++YYCURSOR);
9805 	if (yych <= 'J') {
9806 		if (yych <= '-') {
9807 			if (yych == ')') goto yy108;
9808 			if (yych <= ',') goto yy18;
9809 			goto yy282;
9810 		} else {
9811 			if (yych == '/') goto yy282;
9812 			if (yych <= '@') goto yy18;
9813 			goto yy452;
9814 		}
9815 	} else {
9816 		if (yych <= '_') {
9817 			if (yych <= 'K') goto yy536;
9818 			if (yych <= 'Z') goto yy452;
9819 			if (yych <= '^') goto yy18;
9820 			goto yy282;
9821 		} else {
9822 			if (yych <= 'j') {
9823 				if (yych <= '`') goto yy18;
9824 				goto yy458;
9825 			} else {
9826 				if (yych <= 'k') goto yy538;
9827 				if (yych <= 'z') goto yy458;
9828 				goto yy18;
9829 			}
9830 		}
9831 	}
9832 yy370:
9833 	YYDEBUG(370, *YYCURSOR);
9834 	yych = *++YYCURSOR;
9835 	if (yych <= 'T') {
9836 		if (yych <= ')') {
9837 			if (yych <= '(') goto yy18;
9838 			goto yy108;
9839 		} else {
9840 			if (yych <= '@') goto yy18;
9841 			if (yych <= 'S') goto yy452;
9842 			goto yy539;
9843 		}
9844 	} else {
9845 		if (yych <= 's') {
9846 			if (yych <= 'Z') goto yy452;
9847 			if (yych <= '`') goto yy18;
9848 			goto yy452;
9849 		} else {
9850 			if (yych <= 't') goto yy539;
9851 			if (yych <= 'z') goto yy452;
9852 			goto yy18;
9853 		}
9854 	}
9855 yy371:
9856 	YYDEBUG(371, *YYCURSOR);
9857 	yyaccept = 2;
9858 	yych = *(YYMARKER = ++YYCURSOR);
9859 	if (yych <= 'S') {
9860 		if (yych <= '-') {
9861 			if (yych == ')') goto yy108;
9862 			if (yych <= ',') goto yy18;
9863 			goto yy282;
9864 		} else {
9865 			if (yych == '/') goto yy282;
9866 			if (yych <= '@') goto yy18;
9867 			goto yy452;
9868 		}
9869 	} else {
9870 		if (yych <= '_') {
9871 			if (yych <= 'T') goto yy539;
9872 			if (yych <= 'Z') goto yy452;
9873 			if (yych <= '^') goto yy18;
9874 			goto yy282;
9875 		} else {
9876 			if (yych <= 's') {
9877 				if (yych <= '`') goto yy18;
9878 				goto yy458;
9879 			} else {
9880 				if (yych <= 't') goto yy540;
9881 				if (yych <= 'z') goto yy458;
9882 				goto yy18;
9883 			}
9884 		}
9885 	}
9886 yy372:
9887 	YYDEBUG(372, *YYCURSOR);
9888 	yych = *++YYCURSOR;
9889 	if (yych <= '/') goto yy186;
9890 	if (yych <= '9') goto yy541;
9891 	goto yy186;
9892 yy373:
9893 	YYDEBUG(373, *YYCURSOR);
9894 	yych = *++YYCURSOR;
9895 	if (yych == 'C') goto yy425;
9896 	if (yych == 'c') goto yy425;
9897 	goto yy56;
9898 yy374:
9899 	YYDEBUG(374, *YYCURSOR);
9900 	yyaccept = 2;
9901 	yych = *(YYMARKER = ++YYCURSOR);
9902 	if (yych <= 'W') {
9903 		if (yych <= 'E') {
9904 			if (yych <= ' ') {
9905 				if (yych == '\t') goto yy186;
9906 				if (yych <= 0x1F) goto yy18;
9907 				goto yy186;
9908 			} else {
9909 				if (yych <= '9') {
9910 					if (yych <= '/') goto yy18;
9911 					goto yy542;
9912 				} else {
9913 					if (yych == 'D') goto yy186;
9914 					goto yy18;
9915 				}
9916 			}
9917 		} else {
9918 			if (yych <= 'L') {
9919 				if (yych == 'G') goto yy18;
9920 				if (yych <= 'H') goto yy186;
9921 				goto yy18;
9922 			} else {
9923 				if (yych <= 'R') {
9924 					if (yych <= 'M') goto yy186;
9925 					goto yy18;
9926 				} else {
9927 					if (yych == 'V') goto yy18;
9928 					goto yy186;
9929 				}
9930 			}
9931 		}
9932 	} else {
9933 		if (yych <= 'l') {
9934 			if (yych <= 'd') {
9935 				if (yych == 'Y') goto yy186;
9936 				if (yych <= 'c') goto yy18;
9937 				goto yy186;
9938 			} else {
9939 				if (yych <= 'f') {
9940 					if (yych <= 'e') goto yy18;
9941 					goto yy186;
9942 				} else {
9943 					if (yych == 'h') goto yy186;
9944 					goto yy18;
9945 				}
9946 			}
9947 		} else {
9948 			if (yych <= 'w') {
9949 				if (yych <= 'r') {
9950 					if (yych <= 'm') goto yy186;
9951 					goto yy18;
9952 				} else {
9953 					if (yych == 'v') goto yy18;
9954 					goto yy186;
9955 				}
9956 			} else {
9957 				if (yych <= 'y') {
9958 					if (yych <= 'x') goto yy18;
9959 					goto yy186;
9960 				} else {
9961 					if (yych == 0xC2) goto yy186;
9962 					goto yy18;
9963 				}
9964 			}
9965 		}
9966 	}
9967 yy375:
9968 	YYDEBUG(375, *YYCURSOR);
9969 	yyaccept = 2;
9970 	yych = *(YYMARKER = ++YYCURSOR);
9971 	if (yych <= 'W') {
9972 		if (yych <= 'E') {
9973 			if (yych <= ' ') {
9974 				if (yych == '\t') goto yy186;
9975 				if (yych <= 0x1F) goto yy18;
9976 				goto yy186;
9977 			} else {
9978 				if (yych <= '9') {
9979 					if (yych <= '/') goto yy18;
9980 					goto yy543;
9981 				} else {
9982 					if (yych == 'D') goto yy186;
9983 					goto yy18;
9984 				}
9985 			}
9986 		} else {
9987 			if (yych <= 'L') {
9988 				if (yych == 'G') goto yy18;
9989 				if (yych <= 'H') goto yy186;
9990 				goto yy18;
9991 			} else {
9992 				if (yych <= 'R') {
9993 					if (yych <= 'M') goto yy186;
9994 					goto yy18;
9995 				} else {
9996 					if (yych == 'V') goto yy18;
9997 					goto yy186;
9998 				}
9999 			}
10000 		}
10001 	} else {
10002 		if (yych <= 'l') {
10003 			if (yych <= 'd') {
10004 				if (yych == 'Y') goto yy186;
10005 				if (yych <= 'c') goto yy18;
10006 				goto yy186;
10007 			} else {
10008 				if (yych <= 'f') {
10009 					if (yych <= 'e') goto yy18;
10010 					goto yy186;
10011 				} else {
10012 					if (yych == 'h') goto yy186;
10013 					goto yy18;
10014 				}
10015 			}
10016 		} else {
10017 			if (yych <= 'w') {
10018 				if (yych <= 'r') {
10019 					if (yych <= 'm') goto yy186;
10020 					goto yy18;
10021 				} else {
10022 					if (yych == 'v') goto yy18;
10023 					goto yy186;
10024 				}
10025 			} else {
10026 				if (yych <= 'y') {
10027 					if (yych <= 'x') goto yy18;
10028 					goto yy186;
10029 				} else {
10030 					if (yych == 0xC2) goto yy186;
10031 					goto yy18;
10032 				}
10033 			}
10034 		}
10035 	}
10036 yy376:
10037 	YYDEBUG(376, *YYCURSOR);
10038 	yych = *++YYCURSOR;
10039 	if (yych <= '/') goto yy18;
10040 	if (yych <= '9') goto yy108;
10041 	goto yy18;
10042 yy377:
10043 	YYDEBUG(377, *YYCURSOR);
10044 	yych = *++YYCURSOR;
10045 	if (yych <= '/') goto yy186;
10046 	if (yych <= '9') goto yy543;
10047 	goto yy186;
10048 yy378:
10049 	YYDEBUG(378, *YYCURSOR);
10050 	yych = *++YYCURSOR;
10051 	if (yych <= '/') goto yy56;
10052 	if (yych <= '9') goto yy544;
10053 	goto yy56;
10054 yy379:
10055 	YYDEBUG(379, *YYCURSOR);
10056 	yych = *++YYCURSOR;
10057 	if (yych <= '/') goto yy56;
10058 	if (yych <= '9') goto yy545;
10059 	goto yy56;
10060 yy380:
10061 	YYDEBUG(380, *YYCURSOR);
10062 	yych = *++YYCURSOR;
10063 	if (yych <= '/') goto yy56;
10064 	if (yych <= '2') goto yy546;
10065 	if (yych <= '3') goto yy548;
10066 	if (yych <= '9') goto yy549;
10067 	goto yy56;
10068 yy381:
10069 	YYDEBUG(381, *YYCURSOR);
10070 	yych = *++YYCURSOR;
10071 	if (yych == 'P') goto yy426;
10072 	if (yych == 'p') goto yy426;
10073 	goto yy56;
10074 yy382:
10075 	YYDEBUG(382, *YYCURSOR);
10076 	yych = *++YYCURSOR;
10077 	if (yych <= '/') goto yy56;
10078 	if (yych <= '5') goto yy550;
10079 	if (yych <= '6') goto yy551;
10080 	if (yych <= '9') goto yy552;
10081 	goto yy56;
10082 yy383:
10083 	YYDEBUG(383, *YYCURSOR);
10084 	yych = *++YYCURSOR;
10085 	if (yych <= '/') goto yy56;
10086 	if (yych <= '5') goto yy553;
10087 	if (yych <= '6') goto yy554;
10088 	if (yych <= '9') goto yy555;
10089 	goto yy56;
10090 yy384:
10091 	YYDEBUG(384, *YYCURSOR);
10092 	yych = *++YYCURSOR;
10093 	if (yych <= '/') goto yy56;
10094 	if (yych <= '9') goto yy556;
10095 	goto yy56;
10096 yy385:
10097 	YYDEBUG(385, *YYCURSOR);
10098 	yych = *++YYCURSOR;
10099 	if (yych == 'd') goto yy557;
10100 	goto yy56;
10101 yy386:
10102 	YYDEBUG(386, *YYCURSOR);
10103 	yych = *++YYCURSOR;
10104 	if (yych == 't') goto yy557;
10105 	goto yy56;
10106 yy387:
10107 	YYDEBUG(387, *YYCURSOR);
10108 	yych = *++YYCURSOR;
10109 	if (yych == 'h') goto yy557;
10110 	goto yy56;
10111 yy388:
10112 	YYDEBUG(388, *YYCURSOR);
10113 	yych = *++YYCURSOR;
10114 	if (yych == 'R') goto yy558;
10115 	if (yych == 'r') goto yy558;
10116 	goto yy56;
10117 yy389:
10118 	YYDEBUG(389, *YYCURSOR);
10119 	yych = *++YYCURSOR;
10120 	if (yych == 'G') goto yy558;
10121 	if (yych == 'g') goto yy558;
10122 	goto yy56;
10123 yy390:
10124 	YYDEBUG(390, *YYCURSOR);
10125 	yych = *++YYCURSOR;
10126 	if (yych == 'C') goto yy558;
10127 	if (yych == 'c') goto yy558;
10128 	goto yy56;
10129 yy391:
10130 	YYDEBUG(391, *YYCURSOR);
10131 	yych = *++YYCURSOR;
10132 	if (yych == 'B') goto yy558;
10133 	if (yych == 'b') goto yy558;
10134 	goto yy56;
10135 yy392:
10136 	YYDEBUG(392, *YYCURSOR);
10137 	yych = *++YYCURSOR;
10138 	if (yych == 'N') goto yy558;
10139 	if (yych == 'n') goto yy558;
10140 	goto yy56;
10141 yy393:
10142 	YYDEBUG(393, *YYCURSOR);
10143 	yych = *++YYCURSOR;
10144 	if (yych <= 'N') {
10145 		if (yych == 'L') goto yy558;
10146 		if (yych <= 'M') goto yy56;
10147 		goto yy558;
10148 	} else {
10149 		if (yych <= 'l') {
10150 			if (yych <= 'k') goto yy56;
10151 			goto yy558;
10152 		} else {
10153 			if (yych == 'n') goto yy558;
10154 			goto yy56;
10155 		}
10156 	}
10157 yy394:
10158 	YYDEBUG(394, *YYCURSOR);
10159 	yych = *++YYCURSOR;
10160 	if (yych <= 'Y') {
10161 		if (yych == 'R') goto yy558;
10162 		if (yych <= 'X') goto yy56;
10163 		goto yy558;
10164 	} else {
10165 		if (yych <= 'r') {
10166 			if (yych <= 'q') goto yy56;
10167 			goto yy558;
10168 		} else {
10169 			if (yych == 'y') goto yy558;
10170 			goto yy56;
10171 		}
10172 	}
10173 yy395:
10174 	YYDEBUG(395, *YYCURSOR);
10175 	yych = *++YYCURSOR;
10176 	if (yych == 'V') goto yy558;
10177 	if (yych == 'v') goto yy558;
10178 	goto yy56;
10179 yy396:
10180 	YYDEBUG(396, *YYCURSOR);
10181 	yych = *++YYCURSOR;
10182 	if (yych == 'T') goto yy558;
10183 	if (yych == 't') goto yy558;
10184 	goto yy56;
10185 yy397:
10186 	YYDEBUG(397, *YYCURSOR);
10187 	yych = *++YYCURSOR;
10188 	if (yych == 'P') goto yy559;
10189 	if (yych == 'p') goto yy559;
10190 	goto yy56;
10191 yy398:
10192 	YYDEBUG(398, *YYCURSOR);
10193 	yych = *++YYCURSOR;
10194 	if (yych <= '.') {
10195 		if (yych <= ',') goto yy56;
10196 		if (yych <= '-') goto yy380;
10197 		goto yy378;
10198 	} else {
10199 		if (yych <= '/') goto yy56;
10200 		if (yych <= '9') goto yy560;
10201 		goto yy56;
10202 	}
10203 yy399:
10204 	YYDEBUG(399, *YYCURSOR);
10205 	yych = *++YYCURSOR;
10206 	if (yych <= '.') {
10207 		if (yych <= ',') goto yy56;
10208 		if (yych <= '-') goto yy380;
10209 		goto yy378;
10210 	} else {
10211 		if (yych <= '/') goto yy56;
10212 		if (yych <= '2') goto yy560;
10213 		goto yy56;
10214 	}
10215 yy400:
10216 	YYDEBUG(400, *YYCURSOR);
10217 	yych = *++YYCURSOR;
10218 	switch (yych) {
10219 	case '0':	goto yy561;
10220 	case '1':	goto yy562;
10221 	case '2':
10222 	case '3':
10223 	case '4':
10224 	case '5':
10225 	case '6':
10226 	case '7':
10227 	case '8':
10228 	case '9':	goto yy442;
10229 	case 'A':
10230 	case 'a':	goto yy443;
10231 	case 'D':
10232 	case 'd':	goto yy444;
10233 	case 'F':
10234 	case 'f':	goto yy445;
10235 	case 'J':
10236 	case 'j':	goto yy446;
10237 	case 'M':
10238 	case 'm':	goto yy447;
10239 	case 'N':
10240 	case 'n':	goto yy448;
10241 	case 'O':
10242 	case 'o':	goto yy449;
10243 	case 'S':
10244 	case 's':	goto yy450;
10245 	default:	goto yy56;
10246 	}
10247 yy401:
10248 	YYDEBUG(401, *YYCURSOR);
10249 	yyaccept = 13;
10250 	yych = *(YYMARKER = ++YYCURSOR);
10251 	if (yych <= 'L') {
10252 		if (yych <= '3') {
10253 			if (yych <= '-') {
10254 				if (yych <= 0x1F) {
10255 					if (yych == '\t') goto yy564;
10256 				} else {
10257 					if (yych <= ' ') goto yy564;
10258 					if (yych >= '-') goto yy565;
10259 				}
10260 			} else {
10261 				if (yych <= '0') {
10262 					if (yych <= '.') goto yy566;
10263 					if (yych <= '/') goto yy567;
10264 					goto yy568;
10265 				} else {
10266 					if (yych <= '1') goto yy569;
10267 					if (yych <= '2') goto yy570;
10268 					goto yy571;
10269 				}
10270 			}
10271 		} else {
10272 			if (yych <= 'A') {
10273 				if (yych <= '9') {
10274 					if (yych <= '5') goto yy572;
10275 					if (yych <= '6') goto yy573;
10276 					goto yy574;
10277 				} else {
10278 					if (yych <= ':') goto yy575;
10279 					if (yych >= 'A') goto yy564;
10280 				}
10281 			} else {
10282 				if (yych <= 'E') {
10283 					if (yych == 'D') goto yy564;
10284 				} else {
10285 					if (yych == 'G') goto yy402;
10286 					if (yych <= 'J') goto yy564;
10287 				}
10288 			}
10289 		}
10290 	} else {
10291 		if (yych <= 'h') {
10292 			if (yych <= '`') {
10293 				if (yych <= 'V') {
10294 					if (yych <= 'O') goto yy564;
10295 					if (yych >= 'S') goto yy564;
10296 				} else {
10297 					if (yych <= 'W') goto yy587;
10298 					if (yych <= 'Y') goto yy564;
10299 				}
10300 			} else {
10301 				if (yych <= 'd') {
10302 					if (yych <= 'a') goto yy564;
10303 					if (yych >= 'd') goto yy564;
10304 				} else {
10305 					if (yych == 'f') goto yy564;
10306 					if (yych >= 'h') goto yy564;
10307 				}
10308 			}
10309 		} else {
10310 			if (yych <= 'u') {
10311 				if (yych <= 'l') {
10312 					if (yych == 'j') goto yy564;
10313 				} else {
10314 					if (yych <= 'o') goto yy564;
10315 					if (yych >= 's') goto yy564;
10316 				}
10317 			} else {
10318 				if (yych <= 'x') {
10319 					if (yych == 'w') goto yy564;
10320 				} else {
10321 					if (yych <= 'y') goto yy564;
10322 					if (yych == 0xC2) goto yy564;
10323 				}
10324 			}
10325 		}
10326 	}
10327 yy402:
10328 	YYDEBUG(402, *YYCURSOR);
10329 #line 1250 "parse_date.re"
10330 	{
10331 		DEBUG_OUTPUT("gnunocolon");
10332 		TIMELIB_INIT;
10333 		switch (s->time->have_time) {
10334 			case 0:
10335 				s->time->h = timelib_get_nr((char **) &ptr, 2);
10336 				s->time->i = timelib_get_nr((char **) &ptr, 2);
10337 				s->time->s = 0;
10338 				break;
10339 			case 1:
10340 				s->time->y = timelib_get_nr((char **) &ptr, 4);
10341 				break;
10342 			default:
10343 				TIMELIB_DEINIT;
10344 				add_error(s, TIMELIB_ERR_DOUBLE_TIME, "Double time specification");
10345 				return TIMELIB_ERROR;
10346 		}
10347 		s->time->have_time++;
10348 		TIMELIB_DEINIT;
10349 		return TIMELIB_GNU_NOCOLON;
10350 	}
10351 #line 10352 "<stdout>"
10352 yy403:
10353 	YYDEBUG(403, *YYCURSOR);
10354 	yyaccept = 14;
10355 	yych = *(YYMARKER = ++YYCURSOR);
10356 	if (yych <= 'O') {
10357 		if (yych <= '3') {
10358 			if (yych <= '-') {
10359 				if (yych <= 0x1F) {
10360 					if (yych == '\t') goto yy564;
10361 				} else {
10362 					if (yych <= ' ') goto yy564;
10363 					if (yych >= '-') goto yy565;
10364 				}
10365 			} else {
10366 				if (yych <= '0') {
10367 					if (yych <= '.') goto yy566;
10368 					if (yych <= '/') goto yy567;
10369 					goto yy589;
10370 				} else {
10371 					if (yych <= '1') goto yy590;
10372 					if (yych <= '2') goto yy591;
10373 					goto yy592;
10374 				}
10375 			}
10376 		} else {
10377 			if (yych <= 'D') {
10378 				if (yych <= '@') {
10379 					if (yych <= '9') goto yy574;
10380 					if (yych <= ':') goto yy575;
10381 				} else {
10382 					if (yych <= 'A') goto yy564;
10383 					if (yych >= 'D') goto yy564;
10384 				}
10385 			} else {
10386 				if (yych <= 'G') {
10387 					if (yych == 'F') goto yy564;
10388 				} else {
10389 					if (yych <= 'J') goto yy564;
10390 					if (yych >= 'M') goto yy564;
10391 				}
10392 			}
10393 		}
10394 	} else {
10395 		if (yych <= 'h') {
10396 			if (yych <= 'a') {
10397 				if (yych <= 'W') {
10398 					if (yych <= 'R') goto yy404;
10399 					if (yych <= 'V') goto yy564;
10400 					goto yy587;
10401 				} else {
10402 					if (yych <= 'Y') goto yy564;
10403 					if (yych >= 'a') goto yy564;
10404 				}
10405 			} else {
10406 				if (yych <= 'e') {
10407 					if (yych == 'd') goto yy564;
10408 				} else {
10409 					if (yych != 'g') goto yy564;
10410 				}
10411 			}
10412 		} else {
10413 			if (yych <= 'u') {
10414 				if (yych <= 'l') {
10415 					if (yych == 'j') goto yy564;
10416 				} else {
10417 					if (yych <= 'o') goto yy564;
10418 					if (yych >= 's') goto yy564;
10419 				}
10420 			} else {
10421 				if (yych <= 'x') {
10422 					if (yych == 'w') goto yy564;
10423 				} else {
10424 					if (yych <= 'y') goto yy564;
10425 					if (yych == 0xC2) goto yy564;
10426 				}
10427 			}
10428 		}
10429 	}
10430 yy404:
10431 	YYDEBUG(404, *YYCURSOR);
10432 #line 1620 "parse_date.re"
10433 	{
10434 		DEBUG_OUTPUT("year4");
10435 		TIMELIB_INIT;
10436 		s->time->y = timelib_get_nr((char **) &ptr, 4);
10437 		TIMELIB_DEINIT;
10438 		return TIMELIB_CLF;
10439 	}
10440 #line 10441 "<stdout>"
10441 yy405:
10442 	YYDEBUG(405, *YYCURSOR);
10443 	yyaccept = 3;
10444 	yych = *(YYMARKER = ++YYCURSOR);
10445 	if (yych <= '.') {
10446 		if (yych <= 0x1F) {
10447 			if (yych == '\t') goto yy238;
10448 			goto yy77;
10449 		} else {
10450 			if (yych <= ' ') goto yy238;
10451 			if (yych <= ',') goto yy77;
10452 			goto yy238;
10453 		}
10454 	} else {
10455 		if (yych <= 'H') {
10456 			if (yych <= '/') goto yy77;
10457 			if (yych <= '9') goto yy240;
10458 			goto yy77;
10459 		} else {
10460 			if (yych <= 'I') goto yy593;
10461 			if (yych == 'i') goto yy593;
10462 			goto yy77;
10463 		}
10464 	}
10465 yy406:
10466 	YYDEBUG(406, *YYCURSOR);
10467 	yyaccept = 3;
10468 	yych = *(YYMARKER = ++YYCURSOR);
10469 	if (yych <= '.') {
10470 		if (yych <= 0x1F) {
10471 			if (yych == '\t') goto yy238;
10472 			goto yy77;
10473 		} else {
10474 			if (yych <= ' ') goto yy238;
10475 			if (yych <= ',') goto yy77;
10476 			goto yy238;
10477 		}
10478 	} else {
10479 		if (yych <= 'T') {
10480 			if (yych <= '/') goto yy77;
10481 			if (yych <= '9') goto yy240;
10482 			goto yy77;
10483 		} else {
10484 			if (yych <= 'U') goto yy594;
10485 			if (yych == 'u') goto yy594;
10486 			goto yy77;
10487 		}
10488 	}
10489 yy407:
10490 	YYDEBUG(407, *YYCURSOR);
10491 	yych = *++YYCURSOR;
10492 	if (yych == 'S') goto yy595;
10493 	if (yych == 's') goto yy595;
10494 	goto yy250;
10495 yy408:
10496 	YYDEBUG(408, *YYCURSOR);
10497 	yyaccept = 3;
10498 	yych = *(YYMARKER = ++YYCURSOR);
10499 	if (yych <= '.') {
10500 		if (yych <= 0x1F) {
10501 			if (yych == '\t') goto yy238;
10502 			goto yy77;
10503 		} else {
10504 			if (yych <= ' ') goto yy238;
10505 			if (yych <= ',') goto yy77;
10506 			goto yy238;
10507 		}
10508 	} else {
10509 		if (yych <= 'D') {
10510 			if (yych <= '/') goto yy77;
10511 			if (yych <= '9') goto yy240;
10512 			goto yy77;
10513 		} else {
10514 			if (yych <= 'E') goto yy596;
10515 			if (yych == 'e') goto yy596;
10516 			goto yy77;
10517 		}
10518 	}
10519 yy409:
10520 	YYDEBUG(409, *YYCURSOR);
10521 	yyaccept = 3;
10522 	yych = *(YYMARKER = ++YYCURSOR);
10523 	if (yych <= '.') {
10524 		if (yych <= 0x1F) {
10525 			if (yych == '\t') goto yy238;
10526 			goto yy77;
10527 		} else {
10528 			if (yych <= ' ') goto yy238;
10529 			if (yych <= ',') goto yy77;
10530 			goto yy238;
10531 		}
10532 	} else {
10533 		if (yych <= 'Q') {
10534 			if (yych <= '/') goto yy77;
10535 			if (yych <= '9') goto yy240;
10536 			goto yy77;
10537 		} else {
10538 			if (yych <= 'R') goto yy597;
10539 			if (yych == 'r') goto yy597;
10540 			goto yy77;
10541 		}
10542 	}
10543 yy410:
10544 	YYDEBUG(410, *YYCURSOR);
10545 	yych = *++YYCURSOR;
10546 	if (yych == 'T') goto yy598;
10547 	if (yych == 't') goto yy598;
10548 	goto yy56;
10549 yy411:
10550 	YYDEBUG(411, *YYCURSOR);
10551 	yyaccept = 7;
10552 	yych = *(YYMARKER = ++YYCURSOR);
10553 	if (yych == 'D') goto yy599;
10554 	if (yych == 'd') goto yy599;
10555 	goto yy250;
10556 yy412:
10557 	YYDEBUG(412, *YYCURSOR);
10558 	yych = *++YYCURSOR;
10559 	if (yych == 'R') goto yy407;
10560 	if (yych == 'r') goto yy407;
10561 	goto yy56;
10562 yy413:
10563 	YYDEBUG(413, *YYCURSOR);
10564 	yych = *++YYCURSOR;
10565 	if (yych <= '/') goto yy241;
10566 	if (yych <= '9') goto yy600;
10567 	goto yy241;
10568 yy414:
10569 	YYDEBUG(414, *YYCURSOR);
10570 	yyaccept = 3;
10571 	yych = *(YYMARKER = ++YYCURSOR);
10572 	if (yych <= '.') {
10573 		if (yych <= 0x1F) {
10574 			if (yych == '\t') goto yy238;
10575 			goto yy77;
10576 		} else {
10577 			if (yych <= ' ') goto yy238;
10578 			if (yych <= ',') goto yy77;
10579 			goto yy238;
10580 		}
10581 	} else {
10582 		if (yych <= 'T') {
10583 			if (yych <= '/') goto yy77;
10584 			if (yych <= '9') goto yy240;
10585 			goto yy77;
10586 		} else {
10587 			if (yych <= 'U') goto yy601;
10588 			if (yych == 'u') goto yy601;
10589 			goto yy77;
10590 		}
10591 	}
10592 yy415:
10593 	YYDEBUG(415, *YYCURSOR);
10594 	yyaccept = 3;
10595 	yych = *(YYMARKER = ++YYCURSOR);
10596 	if (yych <= '.') {
10597 		if (yych <= 0x1F) {
10598 			if (yych == '\t') goto yy238;
10599 			goto yy77;
10600 		} else {
10601 			if (yych <= ' ') goto yy238;
10602 			if (yych <= ',') goto yy77;
10603 			goto yy238;
10604 		}
10605 	} else {
10606 		if (yych <= 'X') {
10607 			if (yych <= '/') goto yy77;
10608 			if (yych <= '9') goto yy240;
10609 			goto yy77;
10610 		} else {
10611 			if (yych <= 'Y') goto yy243;
10612 			if (yych == 'y') goto yy243;
10613 			goto yy77;
10614 		}
10615 	}
10616 yy416:
10617 	YYDEBUG(416, *YYCURSOR);
10618 	yyaccept = 3;
10619 	yych = *(YYMARKER = ++YYCURSOR);
10620 	if (yych <= '.') {
10621 		if (yych <= 0x1F) {
10622 			if (yych == '\t') goto yy238;
10623 			goto yy77;
10624 		} else {
10625 			if (yych <= ' ') goto yy238;
10626 			if (yych <= ',') goto yy77;
10627 			goto yy238;
10628 		}
10629 	} else {
10630 		if (yych <= 'D') {
10631 			if (yych <= '/') goto yy77;
10632 			if (yych <= '9') goto yy240;
10633 			goto yy77;
10634 		} else {
10635 			if (yych <= 'E') goto yy243;
10636 			if (yych == 'e') goto yy243;
10637 			goto yy77;
10638 		}
10639 	}
10640 yy417:
10641 	YYDEBUG(417, *YYCURSOR);
10642 	yyaccept = 3;
10643 	yych = *(YYMARKER = ++YYCURSOR);
10644 	if (yych <= '.') {
10645 		if (yych <= 0x1F) {
10646 			if (yych == '\t') goto yy238;
10647 			goto yy77;
10648 		} else {
10649 			if (yych <= ' ') goto yy238;
10650 			if (yych <= ',') goto yy77;
10651 			goto yy238;
10652 		}
10653 	} else {
10654 		if (yych <= 'B') {
10655 			if (yych <= '/') goto yy77;
10656 			if (yych <= '9') goto yy240;
10657 			goto yy77;
10658 		} else {
10659 			if (yych <= 'C') goto yy602;
10660 			if (yych == 'c') goto yy602;
10661 			goto yy77;
10662 		}
10663 	}
10664 yy418:
10665 	YYDEBUG(418, *YYCURSOR);
10666 	yych = *++YYCURSOR;
10667 	if (yych == 'R') goto yy603;
10668 	if (yych == 'r') goto yy603;
10669 	goto yy56;
10670 yy419:
10671 	YYDEBUG(419, *YYCURSOR);
10672 	yych = *++YYCURSOR;
10673 	if (yych == 'L') goto yy604;
10674 	if (yych == 'l') goto yy604;
10675 	goto yy56;
10676 yy420:
10677 	YYDEBUG(420, *YYCURSOR);
10678 	yyaccept = 7;
10679 	yych = *(YYMARKER = ++YYCURSOR);
10680 	if (yych <= 'U') {
10681 		if (yych == 'S') goto yy595;
10682 		if (yych <= 'T') goto yy250;
10683 		goto yy605;
10684 	} else {
10685 		if (yych <= 's') {
10686 			if (yych <= 'r') goto yy250;
10687 			goto yy595;
10688 		} else {
10689 			if (yych == 'u') goto yy605;
10690 			goto yy250;
10691 		}
10692 	}
10693 yy421:
10694 	YYDEBUG(421, *YYCURSOR);
10695 	yyaccept = 7;
10696 	yych = *(YYMARKER = ++YYCURSOR);
10697 	if (yych <= 'T') {
10698 		if (yych == 'D') goto yy599;
10699 		if (yych <= 'S') goto yy250;
10700 		goto yy606;
10701 	} else {
10702 		if (yych <= 'd') {
10703 			if (yych <= 'c') goto yy250;
10704 			goto yy599;
10705 		} else {
10706 			if (yych == 't') goto yy606;
10707 			goto yy250;
10708 		}
10709 	}
10710 yy422:
10711 	YYDEBUG(422, *YYCURSOR);
10712 	yych = *++YYCURSOR;
10713 	if (yych == 'C') goto yy407;
10714 	if (yych == 'c') goto yy407;
10715 	goto yy56;
10716 yy423:
10717 	YYDEBUG(423, *YYCURSOR);
10718 	yyaccept = 3;
10719 	yych = *(YYMARKER = ++YYCURSOR);
10720 	if (yych <= '.') {
10721 		if (yych <= 0x1F) {
10722 			if (yych == '\t') goto yy238;
10723 			goto yy77;
10724 		} else {
10725 			if (yych <= ' ') goto yy238;
10726 			if (yych <= ',') goto yy77;
10727 			goto yy238;
10728 		}
10729 	} else {
10730 		if (yych <= 'N') {
10731 			if (yych <= '/') goto yy77;
10732 			if (yych <= '9') goto yy240;
10733 			goto yy77;
10734 		} else {
10735 			if (yych <= 'O') goto yy607;
10736 			if (yych == 'o') goto yy607;
10737 			goto yy77;
10738 		}
10739 	}
10740 yy424:
10741 	YYDEBUG(424, *YYCURSOR);
10742 	yyaccept = 7;
10743 	yych = *(YYMARKER = ++YYCURSOR);
10744 	if (yych == 'U') goto yy608;
10745 	if (yych == 'u') goto yy608;
10746 	goto yy250;
10747 yy425:
10748 	YYDEBUG(425, *YYCURSOR);
10749 	yyaccept = 7;
10750 	yych = *(YYMARKER = ++YYCURSOR);
10751 	if (yych <= 'S') {
10752 		if (yych == 'O') goto yy609;
10753 		if (yych <= 'R') goto yy250;
10754 		goto yy595;
10755 	} else {
10756 		if (yych <= 'o') {
10757 			if (yych <= 'n') goto yy250;
10758 			goto yy609;
10759 		} else {
10760 			if (yych == 's') goto yy595;
10761 			goto yy250;
10762 		}
10763 	}
10764 yy426:
10765 	YYDEBUG(426, *YYCURSOR);
10766 	yyaccept = 3;
10767 	yych = *(YYMARKER = ++YYCURSOR);
10768 	if (yych <= '.') {
10769 		if (yych <= 0x1F) {
10770 			if (yych == '\t') goto yy238;
10771 			goto yy77;
10772 		} else {
10773 			if (yych <= ' ') goto yy238;
10774 			if (yych <= ',') goto yy77;
10775 			goto yy238;
10776 		}
10777 	} else {
10778 		if (yych <= 'S') {
10779 			if (yych <= '/') goto yy77;
10780 			if (yych <= '9') goto yy240;
10781 			goto yy77;
10782 		} else {
10783 			if (yych <= 'T') goto yy408;
10784 			if (yych == 't') goto yy408;
10785 			goto yy77;
10786 		}
10787 	}
10788 yy427:
10789 	YYDEBUG(427, *YYCURSOR);
10790 	yyaccept = 7;
10791 	yych = *(YYMARKER = ++YYCURSOR);
10792 	if (yych == 'R') goto yy610;
10793 	if (yych == 'r') goto yy610;
10794 	goto yy250;
10795 yy428:
10796 	YYDEBUG(428, *YYCURSOR);
10797 	yyaccept = 7;
10798 	yych = *(YYMARKER = ++YYCURSOR);
10799 	if (yych == 'S') goto yy611;
10800 	if (yych == 's') goto yy611;
10801 	goto yy250;
10802 yy429:
10803 	YYDEBUG(429, *YYCURSOR);
10804 	yyaccept = 7;
10805 	yych = *(YYMARKER = ++YYCURSOR);
10806 	if (yych == 'N') goto yy612;
10807 	if (yych == 'n') goto yy612;
10808 	goto yy250;
10809 yy430:
10810 	YYDEBUG(430, *YYCURSOR);
10811 	yych = *++YYCURSOR;
10812 	if (yych == 'K') goto yy613;
10813 	if (yych == 'k') goto yy613;
10814 	goto yy56;
10815 yy431:
10816 	YYDEBUG(431, *YYCURSOR);
10817 	yych = *++YYCURSOR;
10818 	if (yych <= '/') goto yy197;
10819 	if (yych <= '0') goto yy614;
10820 	if (yych <= '1') goto yy615;
10821 	if (yych <= '9') goto yy616;
10822 	goto yy197;
10823 yy432:
10824 	YYDEBUG(432, *YYCURSOR);
10825 	yych = *++YYCURSOR;
10826 	if (yych <= '/') goto yy56;
10827 	if (yych <= '5') goto yy617;
10828 	if (yych <= '6') goto yy618;
10829 	if (yych <= '9') goto yy552;
10830 	goto yy56;
10831 yy433:
10832 	YYDEBUG(433, *YYCURSOR);
10833 	yyaccept = 5;
10834 	yych = *(YYMARKER = ++YYCURSOR);
10835 	if (yych <= ':') {
10836 		if (yych <= ' ') {
10837 			if (yych == '\t') goto yy619;
10838 			if (yych <= 0x1F) goto yy209;
10839 			goto yy619;
10840 		} else {
10841 			if (yych <= '-') {
10842 				if (yych <= ',') goto yy209;
10843 				goto yy378;
10844 			} else {
10845 				if (yych <= '.') goto yy432;
10846 				if (yych <= '9') goto yy209;
10847 			}
10848 		}
10849 	} else {
10850 		if (yych <= 'P') {
10851 			if (yych == 'A') goto yy101;
10852 			if (yych <= 'O') goto yy209;
10853 			goto yy101;
10854 		} else {
10855 			if (yych <= 'a') {
10856 				if (yych <= '`') goto yy209;
10857 				goto yy101;
10858 			} else {
10859 				if (yych == 'p') goto yy101;
10860 				goto yy209;
10861 			}
10862 		}
10863 	}
10864 yy434:
10865 	YYDEBUG(434, *YYCURSOR);
10866 	yych = *++YYCURSOR;
10867 	if (yych <= '/') goto yy56;
10868 	if (yych <= '5') goto yy621;
10869 	if (yych <= '6') goto yy622;
10870 	if (yych <= '9') goto yy555;
10871 	goto yy56;
10872 yy435:
10873 	YYDEBUG(435, *YYCURSOR);
10874 	yyaccept = 5;
10875 	yych = *(YYMARKER = ++YYCURSOR);
10876 	if (yych <= ':') {
10877 		if (yych <= ' ') {
10878 			if (yych == '\t') goto yy619;
10879 			if (yych <= 0x1F) goto yy209;
10880 			goto yy619;
10881 		} else {
10882 			if (yych == '.') goto yy434;
10883 			if (yych <= '9') goto yy209;
10884 			goto yy434;
10885 		}
10886 	} else {
10887 		if (yych <= 'P') {
10888 			if (yych == 'A') goto yy101;
10889 			if (yych <= 'O') goto yy209;
10890 			goto yy101;
10891 		} else {
10892 			if (yych <= 'a') {
10893 				if (yych <= '`') goto yy209;
10894 				goto yy101;
10895 			} else {
10896 				if (yych == 'p') goto yy101;
10897 				goto yy209;
10898 			}
10899 		}
10900 	}
10901 yy436:
10902 	YYDEBUG(436, *YYCURSOR);
10903 	yyaccept = 5;
10904 	yych = *(YYMARKER = ++YYCURSOR);
10905 	if (yych <= ':') {
10906 		if (yych <= ' ') {
10907 			if (yych == '\t') goto yy619;
10908 			if (yych <= 0x1F) goto yy209;
10909 			goto yy619;
10910 		} else {
10911 			if (yych == '.') goto yy434;
10912 			if (yych <= '9') goto yy209;
10913 			goto yy623;
10914 		}
10915 	} else {
10916 		if (yych <= 'P') {
10917 			if (yych == 'A') goto yy101;
10918 			if (yych <= 'O') goto yy209;
10919 			goto yy101;
10920 		} else {
10921 			if (yych <= 'a') {
10922 				if (yych <= '`') goto yy209;
10923 				goto yy101;
10924 			} else {
10925 				if (yych == 'p') goto yy101;
10926 				goto yy209;
10927 			}
10928 		}
10929 	}
10930 yy437:
10931 	YYDEBUG(437, *YYCURSOR);
10932 	++YYCURSOR;
10933 	YYDEBUG(438, *YYCURSOR);
10934 #line 1187 "parse_date.re"
10935 	{
10936 		DEBUG_OUTPUT("timetiny12 | timeshort12 | timelong12");
10937 		TIMELIB_INIT;
10938 		TIMELIB_HAVE_TIME();
10939 		s->time->h = timelib_get_nr((char **) &ptr, 2);
10940 		if (*ptr == ':' || *ptr == '.') {
10941 			s->time->i = timelib_get_nr((char **) &ptr, 2);
10942 			if (*ptr == ':' || *ptr == '.') {
10943 				s->time->s = timelib_get_nr((char **) &ptr, 2);
10944 			}
10945 		}
10946 		s->time->h += timelib_meridian((char **) &ptr, s->time->h);
10947 		TIMELIB_DEINIT;
10948 		return TIMELIB_TIME12;
10949 	}
10950 #line 10951 "<stdout>"
10951 yy439:
10952 	YYDEBUG(439, *YYCURSOR);
10953 	yych = *++YYCURSOR;
10954 	if (yych <= '\t') {
10955 		if (yych <= 0x00) goto yy437;
10956 		if (yych <= 0x08) goto yy56;
10957 		goto yy437;
10958 	} else {
10959 		if (yych == ' ') goto yy437;
10960 		goto yy56;
10961 	}
10962 yy440:
10963 	YYDEBUG(440, *YYCURSOR);
10964 	yych = *++YYCURSOR;
10965 	if (yych == '-') goto yy624;
10966 	if (yych <= '/') goto yy56;
10967 	if (yych <= '9') goto yy625;
10968 	goto yy56;
10969 yy441:
10970 	YYDEBUG(441, *YYCURSOR);
10971 	yych = *++YYCURSOR;
10972 	if (yych == '-') goto yy624;
10973 	if (yych <= '/') goto yy56;
10974 	if (yych <= '2') goto yy625;
10975 	goto yy56;
10976 yy442:
10977 	YYDEBUG(442, *YYCURSOR);
10978 	yych = *++YYCURSOR;
10979 	if (yych == '-') goto yy624;
10980 	goto yy56;
10981 yy443:
10982 	YYDEBUG(443, *YYCURSOR);
10983 	yych = *++YYCURSOR;
10984 	if (yych <= 'U') {
10985 		if (yych == 'P') goto yy626;
10986 		if (yych <= 'T') goto yy56;
10987 		goto yy627;
10988 	} else {
10989 		if (yych <= 'p') {
10990 			if (yych <= 'o') goto yy56;
10991 			goto yy626;
10992 		} else {
10993 			if (yych == 'u') goto yy627;
10994 			goto yy56;
10995 		}
10996 	}
10997 yy444:
10998 	YYDEBUG(444, *YYCURSOR);
10999 	yych = *++YYCURSOR;
11000 	if (yych == 'E') goto yy628;
11001 	if (yych == 'e') goto yy628;
11002 	goto yy56;
11003 yy445:
11004 	YYDEBUG(445, *YYCURSOR);
11005 	yych = *++YYCURSOR;
11006 	if (yych == 'E') goto yy629;
11007 	if (yych == 'e') goto yy629;
11008 	goto yy56;
11009 yy446:
11010 	YYDEBUG(446, *YYCURSOR);
11011 	yych = *++YYCURSOR;
11012 	if (yych <= 'U') {
11013 		if (yych == 'A') goto yy630;
11014 		if (yych <= 'T') goto yy56;
11015 		goto yy631;
11016 	} else {
11017 		if (yych <= 'a') {
11018 			if (yych <= '`') goto yy56;
11019 			goto yy630;
11020 		} else {
11021 			if (yych == 'u') goto yy631;
11022 			goto yy56;
11023 		}
11024 	}
11025 yy447:
11026 	YYDEBUG(447, *YYCURSOR);
11027 	yych = *++YYCURSOR;
11028 	if (yych == 'A') goto yy632;
11029 	if (yych == 'a') goto yy632;
11030 	goto yy56;
11031 yy448:
11032 	YYDEBUG(448, *YYCURSOR);
11033 	yych = *++YYCURSOR;
11034 	if (yych == 'O') goto yy633;
11035 	if (yych == 'o') goto yy633;
11036 	goto yy56;
11037 yy449:
11038 	YYDEBUG(449, *YYCURSOR);
11039 	yych = *++YYCURSOR;
11040 	if (yych == 'C') goto yy634;
11041 	if (yych == 'c') goto yy634;
11042 	goto yy56;
11043 yy450:
11044 	YYDEBUG(450, *YYCURSOR);
11045 	yych = *++YYCURSOR;
11046 	if (yych == 'E') goto yy635;
11047 	if (yych == 'e') goto yy635;
11048 	goto yy56;
11049 yy451:
11050 	YYDEBUG(451, *YYCURSOR);
11051 	yych = *++YYCURSOR;
11052 	if (yych <= '/') goto yy56;
11053 	if (yych <= '9') goto yy636;
11054 	goto yy56;
11055 yy452:
11056 	YYDEBUG(452, *YYCURSOR);
11057 	yych = *++YYCURSOR;
11058 	if (yych <= '@') {
11059 		if (yych == ')') goto yy108;
11060 		goto yy18;
11061 	} else {
11062 		if (yych <= 'Z') goto yy637;
11063 		if (yych <= '`') goto yy18;
11064 		if (yych <= 'z') goto yy637;
11065 		goto yy18;
11066 	}
11067 yy453:
11068 	YYDEBUG(453, *YYCURSOR);
11069 	yych = *++YYCURSOR;
11070 	if (yych <= '/') goto yy135;
11071 	if (yych <= '2') goto yy638;
11072 	if (yych <= '3') goto yy639;
11073 	goto yy135;
11074 yy454:
11075 	YYDEBUG(454, *YYCURSOR);
11076 	yych = *++YYCURSOR;
11077 	if (yych <= 'L') {
11078 		if (yych <= ')') {
11079 			if (yych <= '(') goto yy18;
11080 			goto yy108;
11081 		} else {
11082 			if (yych <= '@') goto yy18;
11083 			if (yych <= 'K') goto yy637;
11084 			goto yy640;
11085 		}
11086 	} else {
11087 		if (yych <= 'k') {
11088 			if (yych <= 'Z') goto yy637;
11089 			if (yych <= '`') goto yy18;
11090 			goto yy637;
11091 		} else {
11092 			if (yych <= 'l') goto yy640;
11093 			if (yych <= 'z') goto yy637;
11094 			goto yy18;
11095 		}
11096 	}
11097 yy455:
11098 	YYDEBUG(455, *YYCURSOR);
11099 	yych = *++YYCURSOR;
11100 	if (yych <= 'S') {
11101 		if (yych <= ')') {
11102 			if (yych <= '(') goto yy18;
11103 			goto yy108;
11104 		} else {
11105 			if (yych <= '@') goto yy18;
11106 			if (yych <= 'R') goto yy637;
11107 			goto yy641;
11108 		}
11109 	} else {
11110 		if (yych <= 'r') {
11111 			if (yych <= 'Z') goto yy637;
11112 			if (yych <= '`') goto yy18;
11113 			goto yy637;
11114 		} else {
11115 			if (yych <= 's') goto yy641;
11116 			if (yych <= 'z') goto yy637;
11117 			goto yy18;
11118 		}
11119 	}
11120 yy456:
11121 	YYDEBUG(456, *YYCURSOR);
11122 	yyaccept = 2;
11123 	YYMARKER = ++YYCURSOR;
11124 	if (YYLIMIT <= YYCURSOR) YYFILL(1);
11125 	yych = *YYCURSOR;
11126 	YYDEBUG(457, *YYCURSOR);
11127 	if (yybm[0+yych] & 64) {
11128 		goto yy456;
11129 	}
11130 	if (yych <= '.') {
11131 		if (yych == '-') goto yy282;
11132 		goto yy18;
11133 	} else {
11134 		if (yych <= '/') goto yy282;
11135 		if (yych == '_') goto yy282;
11136 		goto yy18;
11137 	}
11138 yy458:
11139 	YYDEBUG(458, *YYCURSOR);
11140 	yyaccept = 2;
11141 	yych = *(YYMARKER = ++YYCURSOR);
11142 	if (yych <= '/') {
11143 		if (yych <= ',') {
11144 			if (yych == ')') goto yy108;
11145 			goto yy18;
11146 		} else {
11147 			if (yych == '.') goto yy18;
11148 			goto yy282;
11149 		}
11150 	} else {
11151 		if (yych <= '^') {
11152 			if (yych <= '@') goto yy18;
11153 			if (yych <= 'Z') goto yy637;
11154 			goto yy18;
11155 		} else {
11156 			if (yych <= '_') goto yy282;
11157 			if (yych <= '`') goto yy18;
11158 			if (yych <= 'z') goto yy642;
11159 			goto yy18;
11160 		}
11161 	}
11162 yy459:
11163 	YYDEBUG(459, *YYCURSOR);
11164 	yych = *++YYCURSOR;
11165 	if (yybm[0+yych] & 64) {
11166 		goto yy456;
11167 	}
11168 	if (yych <= '/') goto yy135;
11169 	if (yych <= '2') goto yy638;
11170 	if (yych <= '3') goto yy639;
11171 	goto yy135;
11172 yy460:
11173 	YYDEBUG(460, *YYCURSOR);
11174 	yyaccept = 2;
11175 	yych = *(YYMARKER = ++YYCURSOR);
11176 	if (yych <= 'K') {
11177 		if (yych <= '-') {
11178 			if (yych == ')') goto yy108;
11179 			if (yych <= ',') goto yy18;
11180 			goto yy282;
11181 		} else {
11182 			if (yych == '/') goto yy282;
11183 			if (yych <= '@') goto yy18;
11184 			goto yy637;
11185 		}
11186 	} else {
11187 		if (yych <= '_') {
11188 			if (yych <= 'L') goto yy640;
11189 			if (yych <= 'Z') goto yy637;
11190 			if (yych <= '^') goto yy18;
11191 			goto yy282;
11192 		} else {
11193 			if (yych <= 'k') {
11194 				if (yych <= '`') goto yy18;
11195 				goto yy642;
11196 			} else {
11197 				if (yych <= 'l') goto yy643;
11198 				if (yych <= 'z') goto yy642;
11199 				goto yy18;
11200 			}
11201 		}
11202 	}
11203 yy461:
11204 	YYDEBUG(461, *YYCURSOR);
11205 	yyaccept = 2;
11206 	yych = *(YYMARKER = ++YYCURSOR);
11207 	if (yych <= 'R') {
11208 		if (yych <= '-') {
11209 			if (yych == ')') goto yy108;
11210 			if (yych <= ',') goto yy18;
11211 			goto yy282;
11212 		} else {
11213 			if (yych == '/') goto yy282;
11214 			if (yych <= '@') goto yy18;
11215 			goto yy637;
11216 		}
11217 	} else {
11218 		if (yych <= '_') {
11219 			if (yych <= 'S') goto yy641;
11220 			if (yych <= 'Z') goto yy637;
11221 			if (yych <= '^') goto yy18;
11222 			goto yy282;
11223 		} else {
11224 			if (yych <= 'r') {
11225 				if (yych <= '`') goto yy18;
11226 				goto yy642;
11227 			} else {
11228 				if (yych <= 's') goto yy644;
11229 				if (yych <= 'z') goto yy642;
11230 				goto yy18;
11231 			}
11232 		}
11233 	}
11234 yy462:
11235 	YYDEBUG(462, *YYCURSOR);
11236 	yyaccept = 2;
11237 	yych = *(YYMARKER = ++YYCURSOR);
11238 	if (yych <= ')') {
11239 		if (yych == ' ') goto yy645;
11240 		if (yych <= '(') goto yy18;
11241 		goto yy108;
11242 	} else {
11243 		if (yych <= 'Z') {
11244 			if (yych <= '@') goto yy18;
11245 			goto yy637;
11246 		} else {
11247 			if (yych <= '`') goto yy18;
11248 			if (yych <= 'z') goto yy637;
11249 			goto yy18;
11250 		}
11251 	}
11252 yy463:
11253 	YYDEBUG(463, *YYCURSOR);
11254 	yyaccept = 2;
11255 	yych = *(YYMARKER = ++YYCURSOR);
11256 	if (yych <= '.') {
11257 		if (yych <= '(') {
11258 			if (yych == ' ') goto yy645;
11259 			goto yy18;
11260 		} else {
11261 			if (yych <= ')') goto yy108;
11262 			if (yych == '-') goto yy282;
11263 			goto yy18;
11264 		}
11265 	} else {
11266 		if (yych <= '^') {
11267 			if (yych <= '/') goto yy282;
11268 			if (yych <= '@') goto yy18;
11269 			if (yych <= 'Z') goto yy637;
11270 			goto yy18;
11271 		} else {
11272 			if (yych <= '_') goto yy282;
11273 			if (yych <= '`') goto yy18;
11274 			if (yych <= 'z') goto yy642;
11275 			goto yy18;
11276 		}
11277 	}
11278 yy464:
11279 	YYDEBUG(464, *YYCURSOR);
11280 	yych = *++YYCURSOR;
11281 	if (yych <= 'M') {
11282 		if (yych <= ')') {
11283 			if (yych <= '(') goto yy18;
11284 			goto yy108;
11285 		} else {
11286 			if (yych <= '@') goto yy18;
11287 			if (yych <= 'L') goto yy637;
11288 			goto yy646;
11289 		}
11290 	} else {
11291 		if (yych <= 'l') {
11292 			if (yych <= 'Z') goto yy637;
11293 			if (yych <= '`') goto yy18;
11294 			goto yy637;
11295 		} else {
11296 			if (yych <= 'm') goto yy646;
11297 			if (yych <= 'z') goto yy637;
11298 			goto yy18;
11299 		}
11300 	}
11301 yy465:
11302 	YYDEBUG(465, *YYCURSOR);
11303 	yyaccept = 2;
11304 	yych = *(YYMARKER = ++YYCURSOR);
11305 	if (yych <= 'L') {
11306 		if (yych <= '-') {
11307 			if (yych == ')') goto yy108;
11308 			if (yych <= ',') goto yy18;
11309 			goto yy282;
11310 		} else {
11311 			if (yych == '/') goto yy282;
11312 			if (yych <= '@') goto yy18;
11313 			goto yy637;
11314 		}
11315 	} else {
11316 		if (yych <= '_') {
11317 			if (yych <= 'M') goto yy646;
11318 			if (yych <= 'Z') goto yy637;
11319 			if (yych <= '^') goto yy18;
11320 			goto yy282;
11321 		} else {
11322 			if (yych <= 'l') {
11323 				if (yych <= '`') goto yy18;
11324 				goto yy642;
11325 			} else {
11326 				if (yych <= 'm') goto yy647;
11327 				if (yych <= 'z') goto yy642;
11328 				goto yy18;
11329 			}
11330 		}
11331 	}
11332 yy466:
11333 	YYDEBUG(466, *YYCURSOR);
11334 	yych = *++YYCURSOR;
11335 	if (yych <= 'T') {
11336 		if (yych <= ')') {
11337 			if (yych <= '(') goto yy18;
11338 			goto yy108;
11339 		} else {
11340 			if (yych <= '@') goto yy18;
11341 			if (yych <= 'S') goto yy637;
11342 			goto yy648;
11343 		}
11344 	} else {
11345 		if (yych <= 's') {
11346 			if (yych <= 'Z') goto yy637;
11347 			if (yych <= '`') goto yy18;
11348 			goto yy637;
11349 		} else {
11350 			if (yych <= 't') goto yy648;
11351 			if (yych <= 'z') goto yy637;
11352 			goto yy18;
11353 		}
11354 	}
11355 yy467:
11356 	YYDEBUG(467, *YYCURSOR);
11357 	yych = *++YYCURSOR;
11358 	if (yych <= 'E') {
11359 		if (yych <= ')') {
11360 			if (yych <= '(') goto yy18;
11361 			goto yy108;
11362 		} else {
11363 			if (yych <= '@') goto yy18;
11364 			if (yych <= 'D') goto yy637;
11365 			goto yy649;
11366 		}
11367 	} else {
11368 		if (yych <= 'd') {
11369 			if (yych <= 'Z') goto yy637;
11370 			if (yych <= '`') goto yy18;
11371 			goto yy637;
11372 		} else {
11373 			if (yych <= 'e') goto yy649;
11374 			if (yych <= 'z') goto yy637;
11375 			goto yy18;
11376 		}
11377 	}
11378 yy468:
11379 	YYDEBUG(468, *YYCURSOR);
11380 	yyaccept = 2;
11381 	yych = *(YYMARKER = ++YYCURSOR);
11382 	if (yych <= 'S') {
11383 		if (yych <= '-') {
11384 			if (yych == ')') goto yy108;
11385 			if (yych <= ',') goto yy18;
11386 			goto yy282;
11387 		} else {
11388 			if (yych == '/') goto yy282;
11389 			if (yych <= '@') goto yy18;
11390 			goto yy637;
11391 		}
11392 	} else {
11393 		if (yych <= '_') {
11394 			if (yych <= 'T') goto yy648;
11395 			if (yych <= 'Z') goto yy637;
11396 			if (yych <= '^') goto yy18;
11397 			goto yy282;
11398 		} else {
11399 			if (yych <= 's') {
11400 				if (yych <= '`') goto yy18;
11401 				goto yy642;
11402 			} else {
11403 				if (yych <= 't') goto yy650;
11404 				if (yych <= 'z') goto yy642;
11405 				goto yy18;
11406 			}
11407 		}
11408 	}
11409 yy469:
11410 	YYDEBUG(469, *YYCURSOR);
11411 	yyaccept = 2;
11412 	yych = *(YYMARKER = ++YYCURSOR);
11413 	if (yych <= 'D') {
11414 		if (yych <= '-') {
11415 			if (yych == ')') goto yy108;
11416 			if (yych <= ',') goto yy18;
11417 			goto yy282;
11418 		} else {
11419 			if (yych == '/') goto yy282;
11420 			if (yych <= '@') goto yy18;
11421 			goto yy637;
11422 		}
11423 	} else {
11424 		if (yych <= '_') {
11425 			if (yych <= 'E') goto yy649;
11426 			if (yych <= 'Z') goto yy637;
11427 			if (yych <= '^') goto yy18;
11428 			goto yy282;
11429 		} else {
11430 			if (yych <= 'd') {
11431 				if (yych <= '`') goto yy18;
11432 				goto yy642;
11433 			} else {
11434 				if (yych <= 'e') goto yy651;
11435 				if (yych <= 'z') goto yy642;
11436 				goto yy18;
11437 			}
11438 		}
11439 	}
11440 yy470:
11441 	YYDEBUG(470, *YYCURSOR);
11442 	yych = *++YYCURSOR;
11443 	if (yych <= 'U') {
11444 		if (yych <= ')') {
11445 			if (yych <= '(') goto yy18;
11446 			goto yy108;
11447 		} else {
11448 			if (yych <= '@') goto yy18;
11449 			if (yych <= 'T') goto yy637;
11450 			goto yy652;
11451 		}
11452 	} else {
11453 		if (yych <= 't') {
11454 			if (yych <= 'Z') goto yy637;
11455 			if (yych <= '`') goto yy18;
11456 			goto yy637;
11457 		} else {
11458 			if (yych <= 'u') goto yy652;
11459 			if (yych <= 'z') goto yy637;
11460 			goto yy18;
11461 		}
11462 	}
11463 yy471:
11464 	YYDEBUG(471, *YYCURSOR);
11465 	yych = *++YYCURSOR;
11466 	if (yych <= 'H') {
11467 		if (yych <= ')') {
11468 			if (yych <= '(') goto yy18;
11469 			goto yy108;
11470 		} else {
11471 			if (yych <= '@') goto yy18;
11472 			if (yych <= 'G') goto yy637;
11473 			goto yy653;
11474 		}
11475 	} else {
11476 		if (yych <= 'g') {
11477 			if (yych <= 'Z') goto yy637;
11478 			if (yych <= '`') goto yy18;
11479 			goto yy637;
11480 		} else {
11481 			if (yych <= 'h') goto yy653;
11482 			if (yych <= 'z') goto yy637;
11483 			goto yy18;
11484 		}
11485 	}
11486 yy472:
11487 	YYDEBUG(472, *YYCURSOR);
11488 	yych = *++YYCURSOR;
11489 	if (yych <= 'T') {
11490 		if (yych <= ')') {
11491 			if (yych <= '(') goto yy18;
11492 			goto yy108;
11493 		} else {
11494 			if (yych <= '@') goto yy18;
11495 			if (yych <= 'S') goto yy637;
11496 			goto yy654;
11497 		}
11498 	} else {
11499 		if (yych <= 's') {
11500 			if (yych <= 'Z') goto yy637;
11501 			if (yych <= '`') goto yy18;
11502 			goto yy637;
11503 		} else {
11504 			if (yych <= 't') goto yy654;
11505 			if (yych <= 'z') goto yy637;
11506 			goto yy18;
11507 		}
11508 	}
11509 yy473:
11510 	YYDEBUG(473, *YYCURSOR);
11511 	yych = *++YYCURSOR;
11512 	if (yych <= 'T') {
11513 		if (yych <= ')') {
11514 			if (yych <= '(') goto yy18;
11515 			goto yy108;
11516 		} else {
11517 			if (yych <= '@') goto yy18;
11518 			if (yych <= 'S') goto yy637;
11519 			goto yy655;
11520 		}
11521 	} else {
11522 		if (yych <= 's') {
11523 			if (yych <= 'Z') goto yy637;
11524 			if (yych <= '`') goto yy18;
11525 			goto yy637;
11526 		} else {
11527 			if (yych <= 't') goto yy655;
11528 			if (yych <= 'z') goto yy637;
11529 			goto yy18;
11530 		}
11531 	}
11532 yy474:
11533 	YYDEBUG(474, *YYCURSOR);
11534 	yych = *++YYCURSOR;
11535 	if (yych <= 'A') {
11536 		if (yych == ')') goto yy108;
11537 		if (yych <= '@') goto yy18;
11538 		goto yy656;
11539 	} else {
11540 		if (yych <= '`') {
11541 			if (yych <= 'Z') goto yy637;
11542 			goto yy18;
11543 		} else {
11544 			if (yych <= 'a') goto yy656;
11545 			if (yych <= 'z') goto yy637;
11546 			goto yy18;
11547 		}
11548 	}
11549 yy475:
11550 	YYDEBUG(475, *YYCURSOR);
11551 	yych = *++YYCURSOR;
11552 	if (yych <= 'T') {
11553 		if (yych <= ')') {
11554 			if (yych <= '(') goto yy18;
11555 			goto yy108;
11556 		} else {
11557 			if (yych <= '@') goto yy18;
11558 			if (yych <= 'S') goto yy637;
11559 			goto yy657;
11560 		}
11561 	} else {
11562 		if (yych <= 's') {
11563 			if (yych <= 'Z') goto yy637;
11564 			if (yych <= '`') goto yy18;
11565 			goto yy637;
11566 		} else {
11567 			if (yych <= 't') goto yy657;
11568 			if (yych <= 'z') goto yy637;
11569 			goto yy18;
11570 		}
11571 	}
11572 yy476:
11573 	YYDEBUG(476, *YYCURSOR);
11574 	yyaccept = 2;
11575 	yych = *(YYMARKER = ++YYCURSOR);
11576 	if (yych <= 'T') {
11577 		if (yych <= '-') {
11578 			if (yych == ')') goto yy108;
11579 			if (yych <= ',') goto yy18;
11580 			goto yy282;
11581 		} else {
11582 			if (yych == '/') goto yy282;
11583 			if (yych <= '@') goto yy18;
11584 			goto yy637;
11585 		}
11586 	} else {
11587 		if (yych <= '_') {
11588 			if (yych <= 'U') goto yy652;
11589 			if (yych <= 'Z') goto yy637;
11590 			if (yych <= '^') goto yy18;
11591 			goto yy282;
11592 		} else {
11593 			if (yych <= 't') {
11594 				if (yych <= '`') goto yy18;
11595 				goto yy642;
11596 			} else {
11597 				if (yych <= 'u') goto yy658;
11598 				if (yych <= 'z') goto yy642;
11599 				goto yy18;
11600 			}
11601 		}
11602 	}
11603 yy477:
11604 	YYDEBUG(477, *YYCURSOR);
11605 	yyaccept = 2;
11606 	yych = *(YYMARKER = ++YYCURSOR);
11607 	if (yych <= 'G') {
11608 		if (yych <= '-') {
11609 			if (yych == ')') goto yy108;
11610 			if (yych <= ',') goto yy18;
11611 			goto yy282;
11612 		} else {
11613 			if (yych == '/') goto yy282;
11614 			if (yych <= '@') goto yy18;
11615 			goto yy637;
11616 		}
11617 	} else {
11618 		if (yych <= '_') {
11619 			if (yych <= 'H') goto yy653;
11620 			if (yych <= 'Z') goto yy637;
11621 			if (yych <= '^') goto yy18;
11622 			goto yy282;
11623 		} else {
11624 			if (yych <= 'g') {
11625 				if (yych <= '`') goto yy18;
11626 				goto yy642;
11627 			} else {
11628 				if (yych <= 'h') goto yy659;
11629 				if (yych <= 'z') goto yy642;
11630 				goto yy18;
11631 			}
11632 		}
11633 	}
11634 yy478:
11635 	YYDEBUG(478, *YYCURSOR);
11636 	yyaccept = 2;
11637 	yych = *(YYMARKER = ++YYCURSOR);
11638 	if (yych <= 'S') {
11639 		if (yych <= '-') {
11640 			if (yych == ')') goto yy108;
11641 			if (yych <= ',') goto yy18;
11642 			goto yy282;
11643 		} else {
11644 			if (yych == '/') goto yy282;
11645 			if (yych <= '@') goto yy18;
11646 			goto yy637;
11647 		}
11648 	} else {
11649 		if (yych <= '_') {
11650 			if (yych <= 'T') goto yy654;
11651 			if (yych <= 'Z') goto yy637;
11652 			if (yych <= '^') goto yy18;
11653 			goto yy282;
11654 		} else {
11655 			if (yych <= 's') {
11656 				if (yych <= '`') goto yy18;
11657 				goto yy642;
11658 			} else {
11659 				if (yych <= 't') goto yy660;
11660 				if (yych <= 'z') goto yy642;
11661 				goto yy18;
11662 			}
11663 		}
11664 	}
11665 yy479:
11666 	YYDEBUG(479, *YYCURSOR);
11667 	yyaccept = 2;
11668 	yych = *(YYMARKER = ++YYCURSOR);
11669 	if (yych <= 'S') {
11670 		if (yych <= '-') {
11671 			if (yych == ')') goto yy108;
11672 			if (yych <= ',') goto yy18;
11673 			goto yy282;
11674 		} else {
11675 			if (yych == '/') goto yy282;
11676 			if (yych <= '@') goto yy18;
11677 			goto yy637;
11678 		}
11679 	} else {
11680 		if (yych <= '_') {
11681 			if (yych <= 'T') goto yy655;
11682 			if (yych <= 'Z') goto yy637;
11683 			if (yych <= '^') goto yy18;
11684 			goto yy282;
11685 		} else {
11686 			if (yych <= 's') {
11687 				if (yych <= '`') goto yy18;
11688 				goto yy642;
11689 			} else {
11690 				if (yych <= 't') goto yy661;
11691 				if (yych <= 'z') goto yy642;
11692 				goto yy18;
11693 			}
11694 		}
11695 	}
11696 yy480:
11697 	YYDEBUG(480, *YYCURSOR);
11698 	yyaccept = 2;
11699 	yych = *(YYMARKER = ++YYCURSOR);
11700 	if (yych <= '@') {
11701 		if (yych <= ',') {
11702 			if (yych == ')') goto yy108;
11703 			goto yy18;
11704 		} else {
11705 			if (yych == '.') goto yy18;
11706 			if (yych <= '/') goto yy282;
11707 			goto yy18;
11708 		}
11709 	} else {
11710 		if (yych <= '_') {
11711 			if (yych <= 'A') goto yy656;
11712 			if (yych <= 'Z') goto yy637;
11713 			if (yych <= '^') goto yy18;
11714 			goto yy282;
11715 		} else {
11716 			if (yych <= '`') goto yy18;
11717 			if (yych <= 'a') goto yy662;
11718 			if (yych <= 'z') goto yy642;
11719 			goto yy18;
11720 		}
11721 	}
11722 yy481:
11723 	YYDEBUG(481, *YYCURSOR);
11724 	yyaccept = 2;
11725 	yych = *(YYMARKER = ++YYCURSOR);
11726 	if (yych <= 'S') {
11727 		if (yych <= '-') {
11728 			if (yych == ')') goto yy108;
11729 			if (yych <= ',') goto yy18;
11730 			goto yy282;
11731 		} else {
11732 			if (yych == '/') goto yy282;
11733 			if (yych <= '@') goto yy18;
11734 			goto yy637;
11735 		}
11736 	} else {
11737 		if (yych <= '_') {
11738 			if (yych <= 'T') goto yy657;
11739 			if (yych <= 'Z') goto yy637;
11740 			if (yych <= '^') goto yy18;
11741 			goto yy282;
11742 		} else {
11743 			if (yych <= 's') {
11744 				if (yych <= '`') goto yy18;
11745 				goto yy642;
11746 			} else {
11747 				if (yych <= 't') goto yy663;
11748 				if (yych <= 'z') goto yy642;
11749 				goto yy18;
11750 			}
11751 		}
11752 	}
11753 yy482:
11754 	YYDEBUG(482, *YYCURSOR);
11755 	yych = *++YYCURSOR;
11756 	if (yych <= '/') goto yy56;
11757 	if (yych <= '1') goto yy664;
11758 	if (yych <= '2') goto yy665;
11759 	if (yych <= '9') goto yy666;
11760 	goto yy56;
11761 yy483:
11762 	YYDEBUG(483, *YYCURSOR);
11763 	yych = *++YYCURSOR;
11764 	if (yych <= '/') {
11765 		if (yych == '.') goto yy667;
11766 		goto yy56;
11767 	} else {
11768 		if (yych <= '0') goto yy668;
11769 		if (yych <= '9') goto yy486;
11770 		if (yych <= ':') goto yy667;
11771 		goto yy56;
11772 	}
11773 yy484:
11774 	YYDEBUG(484, *YYCURSOR);
11775 	yych = *++YYCURSOR;
11776 	if (yych <= '/') {
11777 		if (yych == '.') goto yy669;
11778 		goto yy56;
11779 	} else {
11780 		if (yych <= '2') goto yy486;
11781 		if (yych <= '9') goto yy668;
11782 		if (yych <= ':') goto yy669;
11783 		goto yy56;
11784 	}
11785 yy485:
11786 	YYDEBUG(485, *YYCURSOR);
11787 	yych = *++YYCURSOR;
11788 	if (yych <= '/') {
11789 		if (yych == '.') goto yy669;
11790 		goto yy56;
11791 	} else {
11792 		if (yych <= '4') goto yy668;
11793 		if (yych == ':') goto yy669;
11794 		goto yy56;
11795 	}
11796 yy486:
11797 	YYDEBUG(486, *YYCURSOR);
11798 	yych = *++YYCURSOR;
11799 	if (yych == '.') goto yy669;
11800 	if (yych == ':') goto yy669;
11801 	goto yy56;
11802 yy487:
11803 	YYDEBUG(487, *YYCURSOR);
11804 	yych = *++YYCURSOR;
11805 	if (yych <= '/') goto yy56;
11806 	if (yych <= '1') goto yy670;
11807 	if (yych <= '2') goto yy671;
11808 	if (yych <= '9') goto yy668;
11809 	goto yy56;
11810 yy488:
11811 	YYDEBUG(488, *YYCURSOR);
11812 	yyaccept = 11;
11813 	yych = *(YYMARKER = ++YYCURSOR);
11814 	if (yych <= '/') {
11815 		if (yych == '.') goto yy667;
11816 		goto yy310;
11817 	} else {
11818 		if (yych <= '0') goto yy672;
11819 		if (yych <= '9') goto yy673;
11820 		if (yych <= ':') goto yy667;
11821 		goto yy310;
11822 	}
11823 yy489:
11824 	YYDEBUG(489, *YYCURSOR);
11825 	yyaccept = 11;
11826 	yych = *(YYMARKER = ++YYCURSOR);
11827 	if (yych <= '/') {
11828 		if (yych == '.') goto yy669;
11829 		goto yy310;
11830 	} else {
11831 		if (yych <= '2') goto yy673;
11832 		if (yych <= '9') goto yy672;
11833 		if (yych <= ':') goto yy669;
11834 		goto yy310;
11835 	}
11836 yy490:
11837 	YYDEBUG(490, *YYCURSOR);
11838 	yyaccept = 11;
11839 	yych = *(YYMARKER = ++YYCURSOR);
11840 	if (yych <= '/') {
11841 		if (yych == '.') goto yy669;
11842 		goto yy310;
11843 	} else {
11844 		if (yych <= '4') goto yy672;
11845 		if (yych <= '9') goto yy674;
11846 		if (yych <= ':') goto yy669;
11847 		goto yy310;
11848 	}
11849 yy491:
11850 	YYDEBUG(491, *YYCURSOR);
11851 	yyaccept = 11;
11852 	yych = *(YYMARKER = ++YYCURSOR);
11853 	if (yych <= '/') {
11854 		if (yych == '.') goto yy669;
11855 		goto yy310;
11856 	} else {
11857 		if (yych <= '9') goto yy674;
11858 		if (yych <= ':') goto yy669;
11859 		goto yy310;
11860 	}
11861 yy492:
11862 	YYDEBUG(492, *YYCURSOR);
11863 	yych = *++YYCURSOR;
11864 	if (yych <= '/') goto yy56;
11865 	if (yych <= '9') goto yy675;
11866 	goto yy56;
11867 yy493:
11868 	YYDEBUG(493, *YYCURSOR);
11869 	yyaccept = 11;
11870 	yych = *(YYMARKER = ++YYCURSOR);
11871 	if (yych <= 0x00) goto yy309;
11872 	goto yy312;
11873 yy494:
11874 	YYDEBUG(494, *YYCURSOR);
11875 	yych = *++YYCURSOR;
11876 	if (yych <= 'A') {
11877 		if (yych == ')') goto yy108;
11878 		if (yych <= '@') goto yy18;
11879 		goto yy677;
11880 	} else {
11881 		if (yych <= '`') {
11882 			if (yych <= 'Z') goto yy637;
11883 			goto yy18;
11884 		} else {
11885 			if (yych <= 'a') goto yy677;
11886 			if (yych <= 'z') goto yy637;
11887 			goto yy18;
11888 		}
11889 	}
11890 yy495:
11891 	YYDEBUG(495, *YYCURSOR);
11892 	yyaccept = 8;
11893 	yych = *(YYMARKER = ++YYCURSOR);
11894 	if (yych <= ',') {
11895 		if (yych <= 0x1F) {
11896 			if (yych == '\t') goto yy135;
11897 			goto yy280;
11898 		} else {
11899 			if (yych <= ' ') goto yy135;
11900 			if (yych == ')') goto yy108;
11901 			goto yy280;
11902 		}
11903 	} else {
11904 		if (yych <= '@') {
11905 			if (yych == '/') goto yy280;
11906 			if (yych <= '9') goto yy135;
11907 			goto yy280;
11908 		} else {
11909 			if (yych <= 'Z') goto yy637;
11910 			if (yych <= '`') goto yy280;
11911 			if (yych <= 'z') goto yy637;
11912 			goto yy280;
11913 		}
11914 	}
11915 yy496:
11916 	YYDEBUG(496, *YYCURSOR);
11917 	yyaccept = 2;
11918 	yych = *(YYMARKER = ++YYCURSOR);
11919 	if (yych <= '@') {
11920 		if (yych <= ',') {
11921 			if (yych == ')') goto yy108;
11922 			goto yy18;
11923 		} else {
11924 			if (yych == '.') goto yy18;
11925 			if (yych <= '/') goto yy282;
11926 			goto yy18;
11927 		}
11928 	} else {
11929 		if (yych <= '_') {
11930 			if (yych <= 'A') goto yy677;
11931 			if (yych <= 'Z') goto yy637;
11932 			if (yych <= '^') goto yy18;
11933 			goto yy282;
11934 		} else {
11935 			if (yych <= '`') goto yy18;
11936 			if (yych <= 'a') goto yy678;
11937 			if (yych <= 'z') goto yy642;
11938 			goto yy18;
11939 		}
11940 	}
11941 yy497:
11942 	YYDEBUG(497, *YYCURSOR);
11943 	yyaccept = 8;
11944 	yych = *(YYMARKER = ++YYCURSOR);
11945 	if (yych <= '.') {
11946 		if (yych <= ' ') {
11947 			if (yych == '\t') goto yy135;
11948 			if (yych <= 0x1F) goto yy280;
11949 			goto yy135;
11950 		} else {
11951 			if (yych <= ')') {
11952 				if (yych <= '(') goto yy280;
11953 				goto yy108;
11954 			} else {
11955 				if (yych <= ',') goto yy280;
11956 				if (yych <= '-') goto yy679;
11957 				goto yy135;
11958 			}
11959 		}
11960 	} else {
11961 		if (yych <= 'Z') {
11962 			if (yych <= '/') goto yy282;
11963 			if (yych <= '9') goto yy135;
11964 			if (yych <= '@') goto yy280;
11965 			goto yy637;
11966 		} else {
11967 			if (yych <= '_') {
11968 				if (yych <= '^') goto yy280;
11969 				goto yy282;
11970 			} else {
11971 				if (yych <= '`') goto yy280;
11972 				if (yych <= 'z') goto yy642;
11973 				goto yy280;
11974 			}
11975 		}
11976 	}
11977 yy498:
11978 	YYDEBUG(498, *YYCURSOR);
11979 	yyaccept = 2;
11980 	yych = *(YYMARKER = ++YYCURSOR);
11981 	if (yych <= '(') {
11982 		if (yych <= '\t') {
11983 			if (yych <= 0x08) goto yy18;
11984 			goto yy680;
11985 		} else {
11986 			if (yych == ' ') goto yy682;
11987 			goto yy18;
11988 		}
11989 	} else {
11990 		if (yych <= 'Z') {
11991 			if (yych <= ')') goto yy108;
11992 			if (yych <= '@') goto yy18;
11993 			goto yy637;
11994 		} else {
11995 			if (yych <= '`') goto yy18;
11996 			if (yych <= 'z') goto yy637;
11997 			goto yy18;
11998 		}
11999 	}
12000 yy499:
12001 	YYDEBUG(499, *YYCURSOR);
12002 	yyaccept = 2;
12003 	yych = *(YYMARKER = ++YYCURSOR);
12004 	if (yych <= '-') {
12005 		if (yych <= ' ') {
12006 			if (yych == '\t') goto yy680;
12007 			if (yych <= 0x1F) goto yy18;
12008 			goto yy682;
12009 		} else {
12010 			if (yych == ')') goto yy108;
12011 			if (yych <= ',') goto yy18;
12012 			goto yy282;
12013 		}
12014 	} else {
12015 		if (yych <= 'Z') {
12016 			if (yych == '/') goto yy282;
12017 			if (yych <= '@') goto yy18;
12018 			goto yy637;
12019 		} else {
12020 			if (yych <= '_') {
12021 				if (yych <= '^') goto yy18;
12022 				goto yy282;
12023 			} else {
12024 				if (yych <= '`') goto yy18;
12025 				if (yych <= 'z') goto yy642;
12026 				goto yy18;
12027 			}
12028 		}
12029 	}
12030 yy500:
12031 	YYDEBUG(500, *YYCURSOR);
12032 	yych = *++YYCURSOR;
12033 	if (yych <= 'H') {
12034 		if (yych <= ')') {
12035 			if (yych <= '(') goto yy18;
12036 			goto yy108;
12037 		} else {
12038 			if (yych <= '@') goto yy18;
12039 			if (yych <= 'G') goto yy637;
12040 			goto yy640;
12041 		}
12042 	} else {
12043 		if (yych <= 'g') {
12044 			if (yych <= 'Z') goto yy637;
12045 			if (yych <= '`') goto yy18;
12046 			goto yy637;
12047 		} else {
12048 			if (yych <= 'h') goto yy640;
12049 			if (yych <= 'z') goto yy637;
12050 			goto yy18;
12051 		}
12052 	}
12053 yy501:
12054 	YYDEBUG(501, *YYCURSOR);
12055 	yych = *++YYCURSOR;
12056 	if (yych <= 'I') {
12057 		if (yych <= ')') {
12058 			if (yych <= '(') goto yy18;
12059 			goto yy108;
12060 		} else {
12061 			if (yych <= '@') goto yy18;
12062 			if (yych <= 'H') goto yy637;
12063 			goto yy683;
12064 		}
12065 	} else {
12066 		if (yych <= 'h') {
12067 			if (yych <= 'Z') goto yy637;
12068 			if (yych <= '`') goto yy18;
12069 			goto yy637;
12070 		} else {
12071 			if (yych <= 'i') goto yy683;
12072 			if (yych <= 'z') goto yy637;
12073 			goto yy18;
12074 		}
12075 	}
12076 yy502:
12077 	YYDEBUG(502, *YYCURSOR);
12078 	yyaccept = 2;
12079 	yych = *(YYMARKER = ++YYCURSOR);
12080 	if (yych <= 'G') {
12081 		if (yych <= '-') {
12082 			if (yych == ')') goto yy108;
12083 			if (yych <= ',') goto yy18;
12084 			goto yy282;
12085 		} else {
12086 			if (yych == '/') goto yy282;
12087 			if (yych <= '@') goto yy18;
12088 			goto yy637;
12089 		}
12090 	} else {
12091 		if (yych <= '_') {
12092 			if (yych <= 'H') goto yy640;
12093 			if (yych <= 'Z') goto yy637;
12094 			if (yych <= '^') goto yy18;
12095 			goto yy282;
12096 		} else {
12097 			if (yych <= 'g') {
12098 				if (yych <= '`') goto yy18;
12099 				goto yy642;
12100 			} else {
12101 				if (yych <= 'h') goto yy643;
12102 				if (yych <= 'z') goto yy642;
12103 				goto yy18;
12104 			}
12105 		}
12106 	}
12107 yy503:
12108 	YYDEBUG(503, *YYCURSOR);
12109 	yyaccept = 2;
12110 	yych = *(YYMARKER = ++YYCURSOR);
12111 	if (yych <= 'H') {
12112 		if (yych <= '-') {
12113 			if (yych == ')') goto yy108;
12114 			if (yych <= ',') goto yy18;
12115 			goto yy282;
12116 		} else {
12117 			if (yych == '/') goto yy282;
12118 			if (yych <= '@') goto yy18;
12119 			goto yy637;
12120 		}
12121 	} else {
12122 		if (yych <= '_') {
12123 			if (yych <= 'I') goto yy683;
12124 			if (yych <= 'Z') goto yy637;
12125 			if (yych <= '^') goto yy18;
12126 			goto yy282;
12127 		} else {
12128 			if (yych <= 'h') {
12129 				if (yych <= '`') goto yy18;
12130 				goto yy642;
12131 			} else {
12132 				if (yych <= 'i') goto yy684;
12133 				if (yych <= 'z') goto yy642;
12134 				goto yy18;
12135 			}
12136 		}
12137 	}
12138 yy504:
12139 	YYDEBUG(504, *YYCURSOR);
12140 	yyaccept = 2;
12141 	yych = *(YYMARKER = ++YYCURSOR);
12142 	if (yych <= '(') {
12143 		if (yych <= '\t') {
12144 			if (yych <= 0x08) goto yy18;
12145 			goto yy680;
12146 		} else {
12147 			if (yych == ' ') goto yy680;
12148 			goto yy18;
12149 		}
12150 	} else {
12151 		if (yych <= 'Z') {
12152 			if (yych <= ')') goto yy108;
12153 			if (yych <= '@') goto yy18;
12154 			goto yy637;
12155 		} else {
12156 			if (yych <= '`') goto yy18;
12157 			if (yych <= 'z') goto yy637;
12158 			goto yy18;
12159 		}
12160 	}
12161 yy505:
12162 	YYDEBUG(505, *YYCURSOR);
12163 	yych = *++YYCURSOR;
12164 	if (yych <= '@') {
12165 		if (yych == ')') goto yy108;
12166 	} else {
12167 		if (yych <= 'Z') goto yy637;
12168 		if (yych <= '`') goto yy506;
12169 		if (yych <= 'z') goto yy637;
12170 	}
12171 yy506:
12172 	YYDEBUG(506, *YYCURSOR);
12173 #line 1037 "parse_date.re"
12174 	{
12175 		DEBUG_OUTPUT("noon");
12176 		TIMELIB_INIT;
12177 		TIMELIB_UNHAVE_TIME();
12178 		TIMELIB_HAVE_TIME();
12179 		s->time->h = 12;
12180 
12181 		TIMELIB_DEINIT;
12182 		return TIMELIB_RELATIVE;
12183 	}
12184 #line 12185 "<stdout>"
12185 yy507:
12186 	YYDEBUG(507, *YYCURSOR);
12187 	yyaccept = 2;
12188 	yych = *(YYMARKER = ++YYCURSOR);
12189 	if (yych <= '-') {
12190 		if (yych <= ' ') {
12191 			if (yych == '\t') goto yy680;
12192 			if (yych <= 0x1F) goto yy18;
12193 			goto yy680;
12194 		} else {
12195 			if (yych == ')') goto yy108;
12196 			if (yych <= ',') goto yy18;
12197 			goto yy282;
12198 		}
12199 	} else {
12200 		if (yych <= 'Z') {
12201 			if (yych == '/') goto yy282;
12202 			if (yych <= '@') goto yy18;
12203 			goto yy637;
12204 		} else {
12205 			if (yych <= '_') {
12206 				if (yych <= '^') goto yy18;
12207 				goto yy282;
12208 			} else {
12209 				if (yych <= '`') goto yy18;
12210 				if (yych <= 'z') goto yy642;
12211 				goto yy18;
12212 			}
12213 		}
12214 	}
12215 yy508:
12216 	YYDEBUG(508, *YYCURSOR);
12217 	yyaccept = 15;
12218 	yych = *(YYMARKER = ++YYCURSOR);
12219 	if (yych <= '/') {
12220 		if (yych <= ',') {
12221 			if (yych == ')') goto yy108;
12222 			goto yy506;
12223 		} else {
12224 			if (yych == '.') goto yy506;
12225 			goto yy282;
12226 		}
12227 	} else {
12228 		if (yych <= '^') {
12229 			if (yych <= '@') goto yy506;
12230 			if (yych <= 'Z') goto yy637;
12231 			goto yy506;
12232 		} else {
12233 			if (yych <= '_') goto yy282;
12234 			if (yych <= '`') goto yy506;
12235 			if (yych <= 'z') goto yy642;
12236 			goto yy506;
12237 		}
12238 	}
12239 yy509:
12240 	YYDEBUG(509, *YYCURSOR);
12241 	yych = *++YYCURSOR;
12242 	if (yych <= 'B') {
12243 		if (yych <= ')') {
12244 			if (yych <= '(') goto yy18;
12245 			goto yy108;
12246 		} else {
12247 			if (yych <= '@') goto yy18;
12248 			if (yych <= 'A') goto yy637;
12249 			goto yy685;
12250 		}
12251 	} else {
12252 		if (yych <= 'a') {
12253 			if (yych <= 'Z') goto yy637;
12254 			if (yych <= '`') goto yy18;
12255 			goto yy637;
12256 		} else {
12257 			if (yych <= 'b') goto yy685;
12258 			if (yych <= 'z') goto yy637;
12259 			goto yy18;
12260 		}
12261 	}
12262 yy510:
12263 	YYDEBUG(510, *YYCURSOR);
12264 	yyaccept = 2;
12265 	yych = *(YYMARKER = ++YYCURSOR);
12266 	if (yych <= 'A') {
12267 		if (yych <= '-') {
12268 			if (yych == ')') goto yy108;
12269 			if (yych <= ',') goto yy18;
12270 			goto yy282;
12271 		} else {
12272 			if (yych == '/') goto yy282;
12273 			if (yych <= '@') goto yy18;
12274 			goto yy637;
12275 		}
12276 	} else {
12277 		if (yych <= '_') {
12278 			if (yych <= 'B') goto yy685;
12279 			if (yych <= 'Z') goto yy637;
12280 			if (yych <= '^') goto yy18;
12281 			goto yy282;
12282 		} else {
12283 			if (yych <= 'a') {
12284 				if (yych <= '`') goto yy18;
12285 				goto yy642;
12286 			} else {
12287 				if (yych <= 'b') goto yy686;
12288 				if (yych <= 'z') goto yy642;
12289 				goto yy18;
12290 			}
12291 		}
12292 	}
12293 yy511:
12294 	YYDEBUG(511, *YYCURSOR);
12295 	yych = *++YYCURSOR;
12296 	if (yych <= 'I') {
12297 		if (yych <= ')') {
12298 			if (yych <= '(') goto yy18;
12299 			goto yy108;
12300 		} else {
12301 			if (yych <= '@') goto yy18;
12302 			if (yych <= 'H') goto yy637;
12303 			goto yy687;
12304 		}
12305 	} else {
12306 		if (yych <= 'h') {
12307 			if (yych <= 'Z') goto yy637;
12308 			if (yych <= '`') goto yy18;
12309 			goto yy637;
12310 		} else {
12311 			if (yych <= 'i') goto yy687;
12312 			if (yych <= 'z') goto yy637;
12313 			goto yy18;
12314 		}
12315 	}
12316 yy512:
12317 	YYDEBUG(512, *YYCURSOR);
12318 	yyaccept = 2;
12319 	yych = *(YYMARKER = ++YYCURSOR);
12320 	if (yych <= 'H') {
12321 		if (yych <= '-') {
12322 			if (yych == ')') goto yy108;
12323 			if (yych <= ',') goto yy18;
12324 			goto yy282;
12325 		} else {
12326 			if (yych == '/') goto yy282;
12327 			if (yych <= '@') goto yy18;
12328 			goto yy637;
12329 		}
12330 	} else {
12331 		if (yych <= '_') {
12332 			if (yych <= 'I') goto yy687;
12333 			if (yych <= 'Z') goto yy637;
12334 			if (yych <= '^') goto yy18;
12335 			goto yy282;
12336 		} else {
12337 			if (yych <= 'h') {
12338 				if (yych <= '`') goto yy18;
12339 				goto yy642;
12340 			} else {
12341 				if (yych <= 'i') goto yy688;
12342 				if (yych <= 'z') goto yy642;
12343 				goto yy18;
12344 			}
12345 		}
12346 	}
12347 yy513:
12348 	YYDEBUG(513, *YYCURSOR);
12349 	yych = *++YYCURSOR;
12350 	if (yych <= 'R') {
12351 		if (yych <= ')') {
12352 			if (yych <= '(') goto yy18;
12353 			goto yy108;
12354 		} else {
12355 			if (yych <= '@') goto yy18;
12356 			if (yych <= 'Q') goto yy637;
12357 			goto yy689;
12358 		}
12359 	} else {
12360 		if (yych <= 'q') {
12361 			if (yych <= 'Z') goto yy637;
12362 			if (yych <= '`') goto yy18;
12363 			goto yy637;
12364 		} else {
12365 			if (yych <= 'r') goto yy689;
12366 			if (yych <= 'z') goto yy637;
12367 			goto yy18;
12368 		}
12369 	}
12370 yy514:
12371 	YYDEBUG(514, *YYCURSOR);
12372 	yych = *++YYCURSOR;
12373 	if (yych <= 'N') {
12374 		if (yych <= ')') {
12375 			if (yych <= '(') goto yy18;
12376 			goto yy108;
12377 		} else {
12378 			if (yych <= '@') goto yy18;
12379 			if (yych <= 'M') goto yy637;
12380 			goto yy690;
12381 		}
12382 	} else {
12383 		if (yych <= 'm') {
12384 			if (yych <= 'Z') goto yy637;
12385 			if (yych <= '`') goto yy18;
12386 			goto yy637;
12387 		} else {
12388 			if (yych <= 'n') goto yy690;
12389 			if (yych <= 'z') goto yy637;
12390 			goto yy18;
12391 		}
12392 	}
12393 yy515:
12394 	YYDEBUG(515, *YYCURSOR);
12395 	yyaccept = 8;
12396 	yych = *(YYMARKER = ++YYCURSOR);
12397 	if (yych <= '/') {
12398 		if (yych <= '(') {
12399 			if (yych <= '\t') {
12400 				if (yych <= 0x08) goto yy280;
12401 				goto yy135;
12402 			} else {
12403 				if (yych == ' ') goto yy135;
12404 				goto yy280;
12405 			}
12406 		} else {
12407 			if (yych <= ',') {
12408 				if (yych <= ')') goto yy108;
12409 				goto yy280;
12410 			} else {
12411 				if (yych <= '-') goto yy453;
12412 				if (yych <= '.') goto yy135;
12413 				goto yy280;
12414 			}
12415 		}
12416 	} else {
12417 		if (yych <= 'Z') {
12418 			if (yych <= '@') {
12419 				if (yych <= '9') goto yy135;
12420 				goto yy280;
12421 			} else {
12422 				if (yych == 'E') goto yy691;
12423 				goto yy637;
12424 			}
12425 		} else {
12426 			if (yych <= 'd') {
12427 				if (yych <= '`') goto yy280;
12428 				goto yy637;
12429 			} else {
12430 				if (yych <= 'e') goto yy691;
12431 				if (yych <= 'z') goto yy637;
12432 				goto yy280;
12433 			}
12434 		}
12435 	}
12436 yy516:
12437 	YYDEBUG(516, *YYCURSOR);
12438 	yych = *++YYCURSOR;
12439 	if (yych <= 'N') {
12440 		if (yych <= ')') {
12441 			if (yych <= '(') goto yy18;
12442 			goto yy108;
12443 		} else {
12444 			if (yych <= '@') goto yy18;
12445 			if (yych <= 'M') goto yy637;
12446 			goto yy692;
12447 		}
12448 	} else {
12449 		if (yych <= 'm') {
12450 			if (yych <= 'Z') goto yy637;
12451 			if (yych <= '`') goto yy18;
12452 			goto yy637;
12453 		} else {
12454 			if (yych <= 'n') goto yy692;
12455 			if (yych <= 'z') goto yy637;
12456 			goto yy18;
12457 		}
12458 	}
12459 yy517:
12460 	YYDEBUG(517, *YYCURSOR);
12461 	yyaccept = 2;
12462 	yych = *(YYMARKER = ++YYCURSOR);
12463 	if (yych <= 'Q') {
12464 		if (yych <= '-') {
12465 			if (yych == ')') goto yy108;
12466 			if (yych <= ',') goto yy18;
12467 			goto yy282;
12468 		} else {
12469 			if (yych == '/') goto yy282;
12470 			if (yych <= '@') goto yy18;
12471 			goto yy637;
12472 		}
12473 	} else {
12474 		if (yych <= '_') {
12475 			if (yych <= 'R') goto yy689;
12476 			if (yych <= 'Z') goto yy637;
12477 			if (yych <= '^') goto yy18;
12478 			goto yy282;
12479 		} else {
12480 			if (yych <= 'q') {
12481 				if (yych <= '`') goto yy18;
12482 				goto yy642;
12483 			} else {
12484 				if (yych <= 'r') goto yy693;
12485 				if (yych <= 'z') goto yy642;
12486 				goto yy18;
12487 			}
12488 		}
12489 	}
12490 yy518:
12491 	YYDEBUG(518, *YYCURSOR);
12492 	yyaccept = 2;
12493 	yych = *(YYMARKER = ++YYCURSOR);
12494 	if (yych <= 'M') {
12495 		if (yych <= '-') {
12496 			if (yych == ')') goto yy108;
12497 			if (yych <= ',') goto yy18;
12498 			goto yy282;
12499 		} else {
12500 			if (yych == '/') goto yy282;
12501 			if (yych <= '@') goto yy18;
12502 			goto yy637;
12503 		}
12504 	} else {
12505 		if (yych <= '_') {
12506 			if (yych <= 'N') goto yy690;
12507 			if (yych <= 'Z') goto yy637;
12508 			if (yych <= '^') goto yy18;
12509 			goto yy282;
12510 		} else {
12511 			if (yych <= 'm') {
12512 				if (yych <= '`') goto yy18;
12513 				goto yy642;
12514 			} else {
12515 				if (yych <= 'n') goto yy694;
12516 				if (yych <= 'z') goto yy642;
12517 				goto yy18;
12518 			}
12519 		}
12520 	}
12521 yy519:
12522 	YYDEBUG(519, *YYCURSOR);
12523 	yyaccept = 8;
12524 	yych = *(YYMARKER = ++YYCURSOR);
12525 	if (yych <= '9') {
12526 		if (yych <= '(') {
12527 			if (yych <= '\t') {
12528 				if (yych <= 0x08) goto yy280;
12529 				goto yy135;
12530 			} else {
12531 				if (yych == ' ') goto yy135;
12532 				goto yy280;
12533 			}
12534 		} else {
12535 			if (yych <= '-') {
12536 				if (yych <= ')') goto yy108;
12537 				if (yych <= ',') goto yy280;
12538 				goto yy459;
12539 			} else {
12540 				if (yych == '/') goto yy282;
12541 				goto yy135;
12542 			}
12543 		}
12544 	} else {
12545 		if (yych <= '^') {
12546 			if (yych <= 'D') {
12547 				if (yych <= '@') goto yy280;
12548 				goto yy637;
12549 			} else {
12550 				if (yych <= 'E') goto yy691;
12551 				if (yych <= 'Z') goto yy637;
12552 				goto yy280;
12553 			}
12554 		} else {
12555 			if (yych <= 'd') {
12556 				if (yych <= '_') goto yy282;
12557 				if (yych <= '`') goto yy280;
12558 				goto yy642;
12559 			} else {
12560 				if (yych <= 'e') goto yy695;
12561 				if (yych <= 'z') goto yy642;
12562 				goto yy280;
12563 			}
12564 		}
12565 	}
12566 yy520:
12567 	YYDEBUG(520, *YYCURSOR);
12568 	yyaccept = 2;
12569 	yych = *(YYMARKER = ++YYCURSOR);
12570 	if (yych <= 'M') {
12571 		if (yych <= '-') {
12572 			if (yych == ')') goto yy108;
12573 			if (yych <= ',') goto yy18;
12574 			goto yy282;
12575 		} else {
12576 			if (yych == '/') goto yy282;
12577 			if (yych <= '@') goto yy18;
12578 			goto yy637;
12579 		}
12580 	} else {
12581 		if (yych <= '_') {
12582 			if (yych <= 'N') goto yy692;
12583 			if (yych <= 'Z') goto yy637;
12584 			if (yych <= '^') goto yy18;
12585 			goto yy282;
12586 		} else {
12587 			if (yych <= 'm') {
12588 				if (yych <= '`') goto yy18;
12589 				goto yy642;
12590 			} else {
12591 				if (yych <= 'n') goto yy696;
12592 				if (yych <= 'z') goto yy642;
12593 				goto yy18;
12594 			}
12595 		}
12596 	}
12597 yy521:
12598 	YYDEBUG(521, *YYCURSOR);
12599 	yych = *++YYCURSOR;
12600 	if (yych <= '/') goto yy56;
12601 	if (yych <= '9') goto yy697;
12602 	goto yy56;
12603 yy522:
12604 	YYDEBUG(522, *YYCURSOR);
12605 	yych = *++YYCURSOR;
12606 	if (yych <= 'D') {
12607 		if (yych <= ')') {
12608 			if (yych <= '(') goto yy18;
12609 			goto yy108;
12610 		} else {
12611 			if (yych <= '@') goto yy18;
12612 			if (yych <= 'C') goto yy637;
12613 			goto yy653;
12614 		}
12615 	} else {
12616 		if (yych <= 'c') {
12617 			if (yych <= 'Z') goto yy637;
12618 			if (yych <= '`') goto yy18;
12619 			goto yy637;
12620 		} else {
12621 			if (yych <= 'd') goto yy653;
12622 			if (yych <= 'z') goto yy637;
12623 			goto yy18;
12624 		}
12625 	}
12626 yy523:
12627 	YYDEBUG(523, *YYCURSOR);
12628 	yych = *++YYCURSOR;
12629 	if (yych <= 'S') {
12630 		if (yych <= ')') {
12631 			if (yych <= '(') goto yy18;
12632 			goto yy108;
12633 		} else {
12634 			if (yych <= '@') goto yy18;
12635 			if (yych <= 'R') goto yy637;
12636 			goto yy689;
12637 		}
12638 	} else {
12639 		if (yych <= 'r') {
12640 			if (yych <= 'Z') goto yy637;
12641 			if (yych <= '`') goto yy18;
12642 			goto yy637;
12643 		} else {
12644 			if (yych <= 's') goto yy689;
12645 			if (yych <= 'z') goto yy637;
12646 			goto yy18;
12647 		}
12648 	}
12649 yy524:
12650 	YYDEBUG(524, *YYCURSOR);
12651 	yych = *++YYCURSOR;
12652 	if (yych <= 'Y') {
12653 		if (yych <= ')') {
12654 			if (yych <= '(') goto yy18;
12655 			goto yy108;
12656 		} else {
12657 			if (yych <= '@') goto yy18;
12658 			if (yych <= 'X') goto yy637;
12659 			goto yy698;
12660 		}
12661 	} else {
12662 		if (yych <= 'x') {
12663 			if (yych <= 'Z') goto yy637;
12664 			if (yych <= '`') goto yy18;
12665 			goto yy637;
12666 		} else {
12667 			if (yych <= 'y') goto yy698;
12668 			if (yych <= 'z') goto yy637;
12669 			goto yy18;
12670 		}
12671 	}
12672 yy525:
12673 	YYDEBUG(525, *YYCURSOR);
12674 	yych = *++YYCURSOR;
12675 	if (yych <= 'R') {
12676 		if (yych <= ')') {
12677 			if (yych <= '(') goto yy18;
12678 			goto yy108;
12679 		} else {
12680 			if (yych <= '@') goto yy18;
12681 			if (yych <= 'Q') goto yy637;
12682 			goto yy700;
12683 		}
12684 	} else {
12685 		if (yych <= 'q') {
12686 			if (yych <= 'Z') goto yy637;
12687 			if (yych <= '`') goto yy18;
12688 			goto yy637;
12689 		} else {
12690 			if (yych <= 'r') goto yy700;
12691 			if (yych <= 'z') goto yy637;
12692 			goto yy18;
12693 		}
12694 	}
12695 yy526:
12696 	YYDEBUG(526, *YYCURSOR);
12697 	yych = *++YYCURSOR;
12698 	if (yych <= 'D') {
12699 		if (yych <= ')') {
12700 			if (yych <= '(') goto yy18;
12701 			goto yy108;
12702 		} else {
12703 			if (yych <= '@') goto yy18;
12704 			if (yych <= 'C') goto yy637;
12705 			goto yy701;
12706 		}
12707 	} else {
12708 		if (yych <= 'c') {
12709 			if (yych <= 'Z') goto yy637;
12710 			if (yych <= '`') goto yy18;
12711 			goto yy637;
12712 		} else {
12713 			if (yych <= 'd') goto yy701;
12714 			if (yych <= 'z') goto yy637;
12715 			goto yy18;
12716 		}
12717 	}
12718 yy527:
12719 	YYDEBUG(527, *YYCURSOR);
12720 	yych = *++YYCURSOR;
12721 	if (yych <= 'F') {
12722 		if (yych <= ')') {
12723 			if (yych <= '(') goto yy18;
12724 			goto yy108;
12725 		} else {
12726 			if (yych <= '@') goto yy18;
12727 			if (yych <= 'E') goto yy637;
12728 			goto yy692;
12729 		}
12730 	} else {
12731 		if (yych <= 'e') {
12732 			if (yych <= 'Z') goto yy637;
12733 			if (yych <= '`') goto yy18;
12734 			goto yy637;
12735 		} else {
12736 			if (yych <= 'f') goto yy692;
12737 			if (yych <= 'z') goto yy637;
12738 			goto yy18;
12739 		}
12740 	}
12741 yy528:
12742 	YYDEBUG(528, *YYCURSOR);
12743 	yyaccept = 2;
12744 	yych = *(YYMARKER = ++YYCURSOR);
12745 	if (yych <= 'C') {
12746 		if (yych <= '-') {
12747 			if (yych == ')') goto yy108;
12748 			if (yych <= ',') goto yy18;
12749 			goto yy282;
12750 		} else {
12751 			if (yych == '/') goto yy282;
12752 			if (yych <= '@') goto yy18;
12753 			goto yy637;
12754 		}
12755 	} else {
12756 		if (yych <= '_') {
12757 			if (yych <= 'D') goto yy653;
12758 			if (yych <= 'Z') goto yy637;
12759 			if (yych <= '^') goto yy18;
12760 			goto yy282;
12761 		} else {
12762 			if (yych <= 'c') {
12763 				if (yych <= '`') goto yy18;
12764 				goto yy642;
12765 			} else {
12766 				if (yych <= 'd') goto yy659;
12767 				if (yych <= 'z') goto yy642;
12768 				goto yy18;
12769 			}
12770 		}
12771 	}
12772 yy529:
12773 	YYDEBUG(529, *YYCURSOR);
12774 	yyaccept = 2;
12775 	yych = *(YYMARKER = ++YYCURSOR);
12776 	if (yych <= 'R') {
12777 		if (yych <= '-') {
12778 			if (yych == ')') goto yy108;
12779 			if (yych <= ',') goto yy18;
12780 			goto yy282;
12781 		} else {
12782 			if (yych == '/') goto yy282;
12783 			if (yych <= '@') goto yy18;
12784 			goto yy637;
12785 		}
12786 	} else {
12787 		if (yych <= '_') {
12788 			if (yych <= 'S') goto yy689;
12789 			if (yych <= 'Z') goto yy637;
12790 			if (yych <= '^') goto yy18;
12791 			goto yy282;
12792 		} else {
12793 			if (yych <= 'r') {
12794 				if (yych <= '`') goto yy18;
12795 				goto yy642;
12796 			} else {
12797 				if (yych <= 's') goto yy693;
12798 				if (yych <= 'z') goto yy642;
12799 				goto yy18;
12800 			}
12801 		}
12802 	}
12803 yy530:
12804 	YYDEBUG(530, *YYCURSOR);
12805 	yyaccept = 2;
12806 	yych = *(YYMARKER = ++YYCURSOR);
12807 	if (yych <= 'X') {
12808 		if (yych <= '-') {
12809 			if (yych == ')') goto yy108;
12810 			if (yych <= ',') goto yy18;
12811 			goto yy282;
12812 		} else {
12813 			if (yych == '/') goto yy282;
12814 			if (yych <= '@') goto yy18;
12815 			goto yy637;
12816 		}
12817 	} else {
12818 		if (yych <= '_') {
12819 			if (yych <= 'Y') goto yy698;
12820 			if (yych <= 'Z') goto yy637;
12821 			if (yych <= '^') goto yy18;
12822 			goto yy282;
12823 		} else {
12824 			if (yych <= 'x') {
12825 				if (yych <= '`') goto yy18;
12826 				goto yy642;
12827 			} else {
12828 				if (yych <= 'y') goto yy702;
12829 				if (yych <= 'z') goto yy642;
12830 				goto yy18;
12831 			}
12832 		}
12833 	}
12834 yy531:
12835 	YYDEBUG(531, *YYCURSOR);
12836 	yyaccept = 2;
12837 	yych = *(YYMARKER = ++YYCURSOR);
12838 	if (yych <= 'Q') {
12839 		if (yych <= '-') {
12840 			if (yych == ')') goto yy108;
12841 			if (yych <= ',') goto yy18;
12842 			goto yy282;
12843 		} else {
12844 			if (yych == '/') goto yy282;
12845 			if (yych <= '@') goto yy18;
12846 			goto yy637;
12847 		}
12848 	} else {
12849 		if (yych <= '_') {
12850 			if (yych <= 'R') goto yy700;
12851 			if (yych <= 'Z') goto yy637;
12852 			if (yych <= '^') goto yy18;
12853 			goto yy282;
12854 		} else {
12855 			if (yych <= 'q') {
12856 				if (yych <= '`') goto yy18;
12857 				goto yy642;
12858 			} else {
12859 				if (yych <= 'r') goto yy703;
12860 				if (yych <= 'z') goto yy642;
12861 				goto yy18;
12862 			}
12863 		}
12864 	}
12865 yy532:
12866 	YYDEBUG(532, *YYCURSOR);
12867 	yyaccept = 2;
12868 	yych = *(YYMARKER = ++YYCURSOR);
12869 	if (yych <= 'C') {
12870 		if (yych <= '-') {
12871 			if (yych == ')') goto yy108;
12872 			if (yych <= ',') goto yy18;
12873 			goto yy282;
12874 		} else {
12875 			if (yych == '/') goto yy282;
12876 			if (yych <= '@') goto yy18;
12877 			goto yy637;
12878 		}
12879 	} else {
12880 		if (yych <= '_') {
12881 			if (yych <= 'D') goto yy701;
12882 			if (yych <= 'Z') goto yy637;
12883 			if (yych <= '^') goto yy18;
12884 			goto yy282;
12885 		} else {
12886 			if (yych <= 'c') {
12887 				if (yych <= '`') goto yy18;
12888 				goto yy642;
12889 			} else {
12890 				if (yych <= 'd') goto yy704;
12891 				if (yych <= 'z') goto yy642;
12892 				goto yy18;
12893 			}
12894 		}
12895 	}
12896 yy533:
12897 	YYDEBUG(533, *YYCURSOR);
12898 	yyaccept = 2;
12899 	yych = *(YYMARKER = ++YYCURSOR);
12900 	if (yych <= 'E') {
12901 		if (yych <= '-') {
12902 			if (yych == ')') goto yy108;
12903 			if (yych <= ',') goto yy18;
12904 			goto yy282;
12905 		} else {
12906 			if (yych == '/') goto yy282;
12907 			if (yych <= '@') goto yy18;
12908 			goto yy637;
12909 		}
12910 	} else {
12911 		if (yych <= '_') {
12912 			if (yych <= 'F') goto yy692;
12913 			if (yych <= 'Z') goto yy637;
12914 			if (yych <= '^') goto yy18;
12915 			goto yy282;
12916 		} else {
12917 			if (yych <= 'e') {
12918 				if (yych <= '`') goto yy18;
12919 				goto yy642;
12920 			} else {
12921 				if (yych <= 'f') goto yy696;
12922 				if (yych <= 'z') goto yy642;
12923 				goto yy18;
12924 			}
12925 		}
12926 	}
12927 yy534:
12928 	YYDEBUG(534, *YYCURSOR);
12929 	yyaccept = 2;
12930 	yych = *(YYMARKER = ++YYCURSOR);
12931 	if (yych <= ',') {
12932 		if (yych <= 0x1F) {
12933 			if (yych == '\t') goto yy135;
12934 			goto yy18;
12935 		} else {
12936 			if (yych <= ' ') goto yy135;
12937 			if (yych == ')') goto yy108;
12938 			goto yy18;
12939 		}
12940 	} else {
12941 		if (yych <= '@') {
12942 			if (yych == '/') goto yy18;
12943 			if (yych <= '9') goto yy135;
12944 			goto yy18;
12945 		} else {
12946 			if (yych <= 'Z') goto yy637;
12947 			if (yych <= '`') goto yy18;
12948 			if (yych <= 'z') goto yy637;
12949 			goto yy18;
12950 		}
12951 	}
12952 yy535:
12953 	YYDEBUG(535, *YYCURSOR);
12954 	yych = *++YYCURSOR;
12955 	if (yych <= 'E') {
12956 		if (yych <= ')') {
12957 			if (yych <= '(') goto yy18;
12958 			goto yy108;
12959 		} else {
12960 			if (yych <= '@') goto yy18;
12961 			if (yych <= 'D') goto yy637;
12962 			goto yy705;
12963 		}
12964 	} else {
12965 		if (yych <= 'd') {
12966 			if (yych <= 'Z') goto yy637;
12967 			if (yych <= '`') goto yy18;
12968 			goto yy637;
12969 		} else {
12970 			if (yych <= 'e') goto yy705;
12971 			if (yych <= 'z') goto yy637;
12972 			goto yy18;
12973 		}
12974 	}
12975 yy536:
12976 	YYDEBUG(536, *YYCURSOR);
12977 	yych = *++YYCURSOR;
12978 	if (yych <= 'D') {
12979 		if (yych <= ')') {
12980 			if (yych <= '(') goto yy18;
12981 			goto yy108;
12982 		} else {
12983 			if (yych <= '@') goto yy18;
12984 			if (yych <= 'C') goto yy637;
12985 			goto yy706;
12986 		}
12987 	} else {
12988 		if (yych <= 'c') {
12989 			if (yych <= 'Z') goto yy637;
12990 			if (yych <= '`') goto yy18;
12991 			goto yy637;
12992 		} else {
12993 			if (yych <= 'd') goto yy706;
12994 			if (yych <= 'z') goto yy637;
12995 			goto yy18;
12996 		}
12997 	}
12998 yy537:
12999 	YYDEBUG(537, *YYCURSOR);
13000 	yyaccept = 2;
13001 	yych = *(YYMARKER = ++YYCURSOR);
13002 	if (yych <= 'D') {
13003 		if (yych <= '-') {
13004 			if (yych == ')') goto yy108;
13005 			if (yych <= ',') goto yy18;
13006 			goto yy282;
13007 		} else {
13008 			if (yych == '/') goto yy282;
13009 			if (yych <= '@') goto yy18;
13010 			goto yy637;
13011 		}
13012 	} else {
13013 		if (yych <= '_') {
13014 			if (yych <= 'E') goto yy705;
13015 			if (yych <= 'Z') goto yy637;
13016 			if (yych <= '^') goto yy18;
13017 			goto yy282;
13018 		} else {
13019 			if (yych <= 'd') {
13020 				if (yych <= '`') goto yy18;
13021 				goto yy642;
13022 			} else {
13023 				if (yych <= 'e') goto yy707;
13024 				if (yych <= 'z') goto yy642;
13025 				goto yy18;
13026 			}
13027 		}
13028 	}
13029 yy538:
13030 	YYDEBUG(538, *YYCURSOR);
13031 	yyaccept = 2;
13032 	yych = *(YYMARKER = ++YYCURSOR);
13033 	if (yych <= 'C') {
13034 		if (yych <= '-') {
13035 			if (yych == ')') goto yy108;
13036 			if (yych <= ',') goto yy18;
13037 			goto yy282;
13038 		} else {
13039 			if (yych == '/') goto yy282;
13040 			if (yych <= '@') goto yy18;
13041 			goto yy637;
13042 		}
13043 	} else {
13044 		if (yych <= '_') {
13045 			if (yych <= 'D') goto yy706;
13046 			if (yych <= 'Z') goto yy637;
13047 			if (yych <= '^') goto yy18;
13048 			goto yy282;
13049 		} else {
13050 			if (yych <= 'c') {
13051 				if (yych <= '`') goto yy18;
13052 				goto yy642;
13053 			} else {
13054 				if (yych <= 'd') goto yy708;
13055 				if (yych <= 'z') goto yy642;
13056 				goto yy18;
13057 			}
13058 		}
13059 	}
13060 yy539:
13061 	YYDEBUG(539, *YYCURSOR);
13062 	yych = *++YYCURSOR;
13063 	if (yych <= 'E') {
13064 		if (yych <= ')') {
13065 			if (yych <= '(') goto yy18;
13066 			goto yy108;
13067 		} else {
13068 			if (yych <= '@') goto yy18;
13069 			if (yych <= 'D') goto yy637;
13070 			goto yy709;
13071 		}
13072 	} else {
13073 		if (yych <= 'd') {
13074 			if (yych <= 'Z') goto yy637;
13075 			if (yych <= '`') goto yy18;
13076 			goto yy637;
13077 		} else {
13078 			if (yych <= 'e') goto yy709;
13079 			if (yych <= 'z') goto yy637;
13080 			goto yy18;
13081 		}
13082 	}
13083 yy540:
13084 	YYDEBUG(540, *YYCURSOR);
13085 	yyaccept = 2;
13086 	yych = *(YYMARKER = ++YYCURSOR);
13087 	if (yych <= 'D') {
13088 		if (yych <= '-') {
13089 			if (yych == ')') goto yy108;
13090 			if (yych <= ',') goto yy18;
13091 			goto yy282;
13092 		} else {
13093 			if (yych == '/') goto yy282;
13094 			if (yych <= '@') goto yy18;
13095 			goto yy637;
13096 		}
13097 	} else {
13098 		if (yych <= '_') {
13099 			if (yych <= 'E') goto yy709;
13100 			if (yych <= 'Z') goto yy637;
13101 			if (yych <= '^') goto yy18;
13102 			goto yy282;
13103 		} else {
13104 			if (yych <= 'd') {
13105 				if (yych <= '`') goto yy18;
13106 				goto yy642;
13107 			} else {
13108 				if (yych <= 'e') goto yy710;
13109 				if (yych <= 'z') goto yy642;
13110 				goto yy18;
13111 			}
13112 		}
13113 	}
13114 yy541:
13115 	YYDEBUG(541, *YYCURSOR);
13116 	yych = *++YYCURSOR;
13117 	if (yych <= '/') goto yy186;
13118 	if (yych <= '9') goto yy574;
13119 	goto yy186;
13120 yy542:
13121 	YYDEBUG(542, *YYCURSOR);
13122 	yyaccept = 2;
13123 	yych = *(YYMARKER = ++YYCURSOR);
13124 	if (yych <= 'V') {
13125 		if (yych <= 'C') {
13126 			if (yych <= ' ') {
13127 				if (yych == '\t') goto yy186;
13128 				if (yych <= 0x1F) goto yy18;
13129 				goto yy186;
13130 			} else {
13131 				if (yych <= '-') {
13132 					if (yych <= ',') goto yy18;
13133 					goto yy711;
13134 				} else {
13135 					if (yych <= '/') goto yy18;
13136 					if (yych <= '9') goto yy574;
13137 					goto yy18;
13138 				}
13139 			}
13140 		} else {
13141 			if (yych <= 'H') {
13142 				if (yych <= 'E') {
13143 					if (yych <= 'D') goto yy186;
13144 					goto yy18;
13145 				} else {
13146 					if (yych == 'G') goto yy18;
13147 					goto yy186;
13148 				}
13149 			} else {
13150 				if (yych <= 'M') {
13151 					if (yych <= 'L') goto yy18;
13152 					goto yy186;
13153 				} else {
13154 					if (yych <= 'R') goto yy18;
13155 					if (yych <= 'U') goto yy186;
13156 					goto yy18;
13157 				}
13158 			}
13159 		}
13160 	} else {
13161 		if (yych <= 'l') {
13162 			if (yych <= 'd') {
13163 				if (yych <= 'X') {
13164 					if (yych <= 'W') goto yy186;
13165 					goto yy18;
13166 				} else {
13167 					if (yych <= 'Y') goto yy186;
13168 					if (yych <= 'c') goto yy18;
13169 					goto yy186;
13170 				}
13171 			} else {
13172 				if (yych <= 'f') {
13173 					if (yych <= 'e') goto yy18;
13174 					goto yy186;
13175 				} else {
13176 					if (yych == 'h') goto yy186;
13177 					goto yy18;
13178 				}
13179 			}
13180 		} else {
13181 			if (yych <= 'w') {
13182 				if (yych <= 'r') {
13183 					if (yych <= 'm') goto yy186;
13184 					goto yy18;
13185 				} else {
13186 					if (yych == 'v') goto yy18;
13187 					goto yy186;
13188 				}
13189 			} else {
13190 				if (yych <= 'y') {
13191 					if (yych <= 'x') goto yy18;
13192 					goto yy186;
13193 				} else {
13194 					if (yych == 0xC2) goto yy186;
13195 					goto yy18;
13196 				}
13197 			}
13198 		}
13199 	}
13200 yy543:
13201 	YYDEBUG(543, *YYCURSOR);
13202 	yych = *++YYCURSOR;
13203 	if (yych == '-') goto yy711;
13204 	if (yych <= '/') goto yy186;
13205 	if (yych <= '9') goto yy574;
13206 	goto yy186;
13207 yy544:
13208 	YYDEBUG(544, *YYCURSOR);
13209 	yych = *++YYCURSOR;
13210 	if (yych <= '/') goto yy56;
13211 	if (yych <= '9') goto yy712;
13212 	goto yy56;
13213 yy545:
13214 	YYDEBUG(545, *YYCURSOR);
13215 	yych = *++YYCURSOR;
13216 	if (yych <= '/') goto yy56;
13217 	if (yych <= '9') goto yy713;
13218 	goto yy56;
13219 yy546:
13220 	YYDEBUG(546, *YYCURSOR);
13221 	yyaccept = 16;
13222 	yych = *(YYMARKER = ++YYCURSOR);
13223 	if (yych <= 'n') {
13224 		if (yych <= '/') goto yy547;
13225 		if (yych <= '9') goto yy715;
13226 		if (yych >= 'n') goto yy716;
13227 	} else {
13228 		if (yych <= 'r') {
13229 			if (yych >= 'r') goto yy716;
13230 		} else {
13231 			if (yych <= 's') goto yy717;
13232 			if (yych <= 't') goto yy718;
13233 		}
13234 	}
13235 yy547:
13236 	YYDEBUG(547, *YYCURSOR);
13237 #line 1372 "parse_date.re"
13238 	{
13239 		int length = 0;
13240 		DEBUG_OUTPUT("gnudateshort");
13241 		TIMELIB_INIT;
13242 		TIMELIB_HAVE_DATE();
13243 		s->time->y = timelib_get_nr_ex((char **) &ptr, 4, &length);
13244 		s->time->m = timelib_get_nr((char **) &ptr, 2);
13245 		s->time->d = timelib_get_nr((char **) &ptr, 2);
13246 		TIMELIB_PROCESS_YEAR(s->time->y, length);
13247 		TIMELIB_DEINIT;
13248 		return TIMELIB_ISO_DATE;
13249 	}
13250 #line 13251 "<stdout>"
13251 yy548:
13252 	YYDEBUG(548, *YYCURSOR);
13253 	yyaccept = 16;
13254 	yych = *(YYMARKER = ++YYCURSOR);
13255 	if (yych <= 'n') {
13256 		if (yych <= '1') {
13257 			if (yych <= '/') goto yy547;
13258 			goto yy715;
13259 		} else {
13260 			if (yych <= '9') goto yy712;
13261 			if (yych <= 'm') goto yy547;
13262 			goto yy716;
13263 		}
13264 	} else {
13265 		if (yych <= 'r') {
13266 			if (yych <= 'q') goto yy547;
13267 			goto yy716;
13268 		} else {
13269 			if (yych <= 's') goto yy717;
13270 			if (yych <= 't') goto yy718;
13271 			goto yy547;
13272 		}
13273 	}
13274 yy549:
13275 	YYDEBUG(549, *YYCURSOR);
13276 	yyaccept = 16;
13277 	yych = *(YYMARKER = ++YYCURSOR);
13278 	if (yych <= 'n') {
13279 		if (yych <= '/') goto yy547;
13280 		if (yych <= '9') goto yy712;
13281 		if (yych <= 'm') goto yy547;
13282 		goto yy716;
13283 	} else {
13284 		if (yych <= 'r') {
13285 			if (yych <= 'q') goto yy547;
13286 			goto yy716;
13287 		} else {
13288 			if (yych <= 's') goto yy717;
13289 			if (yych <= 't') goto yy718;
13290 			goto yy547;
13291 		}
13292 	}
13293 yy550:
13294 	YYDEBUG(550, *YYCURSOR);
13295 	yyaccept = 5;
13296 	yych = *(YYMARKER = ++YYCURSOR);
13297 	if (yych == '.') goto yy719;
13298 	if (yych <= '/') goto yy209;
13299 	if (yych <= '9') goto yy720;
13300 	goto yy209;
13301 yy551:
13302 	YYDEBUG(551, *YYCURSOR);
13303 	yyaccept = 5;
13304 	yych = *(YYMARKER = ++YYCURSOR);
13305 	if (yych <= '/') {
13306 		if (yych == '.') goto yy719;
13307 		goto yy209;
13308 	} else {
13309 		if (yych <= '0') goto yy720;
13310 		if (yych <= '9') goto yy713;
13311 		goto yy209;
13312 	}
13313 yy552:
13314 	YYDEBUG(552, *YYCURSOR);
13315 	yyaccept = 5;
13316 	yych = *(YYMARKER = ++YYCURSOR);
13317 	if (yych == '.') goto yy719;
13318 	if (yych <= '/') goto yy209;
13319 	if (yych <= '9') goto yy713;
13320 	goto yy209;
13321 yy553:
13322 	YYDEBUG(553, *YYCURSOR);
13323 	yyaccept = 5;
13324 	yych = *(YYMARKER = ++YYCURSOR);
13325 	if (yych == '.') goto yy719;
13326 	if (yych <= '/') goto yy209;
13327 	if (yych <= '9') goto yy555;
13328 	goto yy209;
13329 yy554:
13330 	YYDEBUG(554, *YYCURSOR);
13331 	yyaccept = 5;
13332 	yych = *(YYMARKER = ++YYCURSOR);
13333 	if (yych == '.') goto yy719;
13334 	if (yych != '0') goto yy209;
13335 yy555:
13336 	YYDEBUG(555, *YYCURSOR);
13337 	yyaccept = 5;
13338 	yych = *(YYMARKER = ++YYCURSOR);
13339 	if (yych == '.') goto yy719;
13340 	goto yy209;
13341 yy556:
13342 	YYDEBUG(556, *YYCURSOR);
13343 	yych = *++YYCURSOR;
13344 	if (yych <= '/') goto yy214;
13345 	if (yych <= '9') goto yy721;
13346 	goto yy214;
13347 yy557:
13348 	YYDEBUG(557, *YYCURSOR);
13349 	yyaccept = 6;
13350 	yych = *(YYMARKER = ++YYCURSOR);
13351 	if (yych == '/') goto yy384;
13352 	goto yy214;
13353 yy558:
13354 	YYDEBUG(558, *YYCURSOR);
13355 	yych = *++YYCURSOR;
13356 	if (yych == '/') goto yy722;
13357 	goto yy56;
13358 yy559:
13359 	YYDEBUG(559, *YYCURSOR);
13360 	yych = *++YYCURSOR;
13361 	if (yych <= 'S') {
13362 		if (yych == '/') goto yy722;
13363 		goto yy56;
13364 	} else {
13365 		if (yych <= 'T') goto yy558;
13366 		if (yych == 't') goto yy558;
13367 		goto yy56;
13368 	}
13369 yy560:
13370 	YYDEBUG(560, *YYCURSOR);
13371 	yych = *++YYCURSOR;
13372 	if (yych <= ',') goto yy56;
13373 	if (yych <= '-') goto yy723;
13374 	if (yych <= '.') goto yy378;
13375 	goto yy56;
13376 yy561:
13377 	YYDEBUG(561, *YYCURSOR);
13378 	yych = *++YYCURSOR;
13379 	if (yych == '-') goto yy624;
13380 	if (yych <= '/') goto yy56;
13381 	if (yych <= '9') goto yy442;
13382 	goto yy56;
13383 yy562:
13384 	YYDEBUG(562, *YYCURSOR);
13385 	yych = *++YYCURSOR;
13386 	if (yych == '-') goto yy624;
13387 	if (yych <= '/') goto yy56;
13388 	if (yych <= '2') goto yy442;
13389 	goto yy56;
13390 yy563:
13391 	YYDEBUG(563, *YYCURSOR);
13392 	++YYCURSOR;
13393 	if ((YYLIMIT - YYCURSOR) < 12) YYFILL(12);
13394 	yych = *YYCURSOR;
13395 yy564:
13396 	YYDEBUG(564, *YYCURSOR);
13397 	if (yych <= 'W') {
13398 		if (yych <= 'G') {
13399 			if (yych <= '.') {
13400 				if (yych <= 0x1F) {
13401 					if (yych == '\t') goto yy563;
13402 					goto yy56;
13403 				} else {
13404 					if (yych <= ' ') goto yy563;
13405 					if (yych <= ',') goto yy56;
13406 					goto yy724;
13407 				}
13408 			} else {
13409 				if (yych <= 'C') {
13410 					if (yych == 'A') goto yy576;
13411 					goto yy56;
13412 				} else {
13413 					if (yych <= 'D') goto yy577;
13414 					if (yych == 'F') goto yy578;
13415 					goto yy56;
13416 				}
13417 			}
13418 		} else {
13419 			if (yych <= 'N') {
13420 				if (yych <= 'J') {
13421 					if (yych <= 'H') goto yy75;
13422 					if (yych <= 'I') goto yy579;
13423 					goto yy581;
13424 				} else {
13425 					if (yych <= 'L') goto yy56;
13426 					if (yych <= 'M') goto yy582;
13427 					goto yy583;
13428 				}
13429 			} else {
13430 				if (yych <= 'S') {
13431 					if (yych <= 'O') goto yy584;
13432 					if (yych <= 'R') goto yy56;
13433 					goto yy585;
13434 				} else {
13435 					if (yych <= 'T') goto yy83;
13436 					if (yych <= 'U') goto yy84;
13437 					if (yych <= 'V') goto yy586;
13438 					goto yy86;
13439 				}
13440 			}
13441 		}
13442 	} else {
13443 		if (yych <= 'l') {
13444 			if (yych <= 'd') {
13445 				if (yych <= '`') {
13446 					if (yych <= 'X') goto yy588;
13447 					if (yych <= 'Y') goto yy88;
13448 					goto yy56;
13449 				} else {
13450 					if (yych <= 'a') goto yy576;
13451 					if (yych <= 'c') goto yy56;
13452 					goto yy577;
13453 				}
13454 			} else {
13455 				if (yych <= 'g') {
13456 					if (yych == 'f') goto yy578;
13457 					goto yy56;
13458 				} else {
13459 					if (yych <= 'h') goto yy75;
13460 					if (yych == 'j') goto yy581;
13461 					goto yy56;
13462 				}
13463 			}
13464 		} else {
13465 			if (yych <= 'u') {
13466 				if (yych <= 'o') {
13467 					if (yych <= 'm') goto yy582;
13468 					if (yych <= 'n') goto yy583;
13469 					goto yy584;
13470 				} else {
13471 					if (yych <= 'r') goto yy56;
13472 					if (yych <= 's') goto yy585;
13473 					if (yych <= 't') goto yy83;
13474 					goto yy84;
13475 				}
13476 			} else {
13477 				if (yych <= 'x') {
13478 					if (yych == 'w') goto yy86;
13479 					goto yy56;
13480 				} else {
13481 					if (yych <= 'y') goto yy88;
13482 					if (yych == 0xC2) goto yy93;
13483 					goto yy56;
13484 				}
13485 			}
13486 		}
13487 	}
13488 yy565:
13489 	YYDEBUG(565, *YYCURSOR);
13490 	yych = *++YYCURSOR;
13491 	switch (yych) {
13492 	case '0':	goto yy726;
13493 	case '1':	goto yy728;
13494 	case '2':
13495 	case '3':
13496 	case '4':
13497 	case '5':
13498 	case '6':
13499 	case '7':
13500 	case '8':
13501 	case '9':	goto yy729;
13502 	case 'A':
13503 	case 'a':	goto yy730;
13504 	case 'D':
13505 	case 'd':	goto yy731;
13506 	case 'F':
13507 	case 'f':	goto yy732;
13508 	case 'J':
13509 	case 'j':	goto yy733;
13510 	case 'M':
13511 	case 'm':	goto yy734;
13512 	case 'N':
13513 	case 'n':	goto yy735;
13514 	case 'O':
13515 	case 'o':	goto yy736;
13516 	case 'S':
13517 	case 's':	goto yy737;
13518 	case 'W':	goto yy738;
13519 	default:	goto yy725;
13520 	}
13521 yy566:
13522 	YYDEBUG(566, *YYCURSOR);
13523 	yych = *++YYCURSOR;
13524 	if (yych <= '/') goto yy725;
13525 	if (yych <= '0') goto yy739;
13526 	if (yych <= '2') goto yy740;
13527 	if (yych <= '3') goto yy741;
13528 	goto yy725;
13529 yy567:
13530 	YYDEBUG(567, *YYCURSOR);
13531 	yych = *++YYCURSOR;
13532 	if (yych <= '/') goto yy56;
13533 	if (yych <= '0') goto yy746;
13534 	if (yych <= '1') goto yy747;
13535 	if (yych <= '9') goto yy748;
13536 	goto yy56;
13537 yy568:
13538 	YYDEBUG(568, *YYCURSOR);
13539 	yych = *++YYCURSOR;
13540 	if (yych <= '/') goto yy186;
13541 	if (yych <= '0') goto yy749;
13542 	if (yych <= '9') goto yy751;
13543 	goto yy186;
13544 yy569:
13545 	YYDEBUG(569, *YYCURSOR);
13546 	yych = *++YYCURSOR;
13547 	if (yych <= '/') goto yy186;
13548 	if (yych <= '2') goto yy751;
13549 	if (yych <= '9') goto yy752;
13550 	goto yy186;
13551 yy570:
13552 	YYDEBUG(570, *YYCURSOR);
13553 	yych = *++YYCURSOR;
13554 	if (yych <= '/') goto yy186;
13555 	if (yych <= '9') goto yy752;
13556 	goto yy186;
13557 yy571:
13558 	YYDEBUG(571, *YYCURSOR);
13559 	yych = *++YYCURSOR;
13560 	if (yych <= '/') goto yy186;
13561 	if (yych <= '5') goto yy752;
13562 	if (yych <= '6') goto yy753;
13563 	if (yych <= '9') goto yy754;
13564 	goto yy186;
13565 yy572:
13566 	YYDEBUG(572, *YYCURSOR);
13567 	yych = *++YYCURSOR;
13568 	if (yych <= '/') goto yy186;
13569 	if (yych <= '9') goto yy754;
13570 	goto yy186;
13571 yy573:
13572 	YYDEBUG(573, *YYCURSOR);
13573 	yych = *++YYCURSOR;
13574 	if (yych <= '/') goto yy186;
13575 	if (yych <= '0') goto yy754;
13576 	if (yych <= '9') goto yy755;
13577 	goto yy186;
13578 yy574:
13579 	YYDEBUG(574, *YYCURSOR);
13580 	yych = *++YYCURSOR;
13581 	if (yych <= '/') goto yy186;
13582 	if (yych <= '9') goto yy755;
13583 	goto yy186;
13584 yy575:
13585 	YYDEBUG(575, *YYCURSOR);
13586 	yych = *++YYCURSOR;
13587 	if (yych <= '/') goto yy56;
13588 	if (yych <= '0') goto yy756;
13589 	if (yych <= '1') goto yy757;
13590 	goto yy56;
13591 yy576:
13592 	YYDEBUG(576, *YYCURSOR);
13593 	yych = *++YYCURSOR;
13594 	if (yych <= 'U') {
13595 		if (yych == 'P') goto yy758;
13596 		if (yych <= 'T') goto yy56;
13597 		goto yy759;
13598 	} else {
13599 		if (yych <= 'p') {
13600 			if (yych <= 'o') goto yy56;
13601 			goto yy758;
13602 		} else {
13603 			if (yych == 'u') goto yy759;
13604 			goto yy56;
13605 		}
13606 	}
13607 yy577:
13608 	YYDEBUG(577, *YYCURSOR);
13609 	yych = *++YYCURSOR;
13610 	if (yych <= 'E') {
13611 		if (yych == 'A') goto yy232;
13612 		if (yych <= 'D') goto yy56;
13613 		goto yy760;
13614 	} else {
13615 		if (yych <= 'a') {
13616 			if (yych <= '`') goto yy56;
13617 			goto yy232;
13618 		} else {
13619 			if (yych == 'e') goto yy760;
13620 			goto yy56;
13621 		}
13622 	}
13623 yy578:
13624 	YYDEBUG(578, *YYCURSOR);
13625 	yych = *++YYCURSOR;
13626 	if (yych <= 'R') {
13627 		if (yych <= 'N') {
13628 			if (yych == 'E') goto yy761;
13629 			goto yy56;
13630 		} else {
13631 			if (yych <= 'O') goto yy235;
13632 			if (yych <= 'Q') goto yy56;
13633 			goto yy236;
13634 		}
13635 	} else {
13636 		if (yych <= 'n') {
13637 			if (yych == 'e') goto yy761;
13638 			goto yy56;
13639 		} else {
13640 			if (yych <= 'o') goto yy235;
13641 			if (yych == 'r') goto yy236;
13642 			goto yy56;
13643 		}
13644 	}
13645 yy579:
13646 	YYDEBUG(579, *YYCURSOR);
13647 	yych = *++YYCURSOR;
13648 	if (yych <= 'U') {
13649 		if (yych == 'I') goto yy762;
13650 	} else {
13651 		if (yych == 'W') goto yy580;
13652 		if (yych <= 'X') goto yy763;
13653 	}
13654 yy580:
13655 	YYDEBUG(580, *YYCURSOR);
13656 #line 1441 "parse_date.re"
13657 	{
13658 		int length = 0;
13659 		DEBUG_OUTPUT("datenodayrev");
13660 		TIMELIB_INIT;
13661 		TIMELIB_HAVE_DATE();
13662 		s->time->y = timelib_get_nr_ex((char **) &ptr, 4, &length);
13663 		s->time->m = timelib_get_month((char **) &ptr);
13664 		s->time->d = 1;
13665 		TIMELIB_PROCESS_YEAR(s->time->y, length);
13666 		TIMELIB_DEINIT;
13667 		return TIMELIB_DATE_NO_DAY;
13668 	}
13669 #line 13670 "<stdout>"
13670 yy581:
13671 	YYDEBUG(581, *YYCURSOR);
13672 	yych = *++YYCURSOR;
13673 	if (yych <= 'U') {
13674 		if (yych == 'A') goto yy764;
13675 		if (yych <= 'T') goto yy56;
13676 		goto yy765;
13677 	} else {
13678 		if (yych <= 'a') {
13679 			if (yych <= '`') goto yy56;
13680 			goto yy764;
13681 		} else {
13682 			if (yych == 'u') goto yy765;
13683 			goto yy56;
13684 		}
13685 	}
13686 yy582:
13687 	YYDEBUG(582, *YYCURSOR);
13688 	yych = *++YYCURSOR;
13689 	if (yych <= 'S') {
13690 		if (yych <= 'I') {
13691 			if (yych == 'A') goto yy766;
13692 			if (yych <= 'H') goto yy56;
13693 			goto yy247;
13694 		} else {
13695 			if (yych == 'O') goto yy248;
13696 			if (yych <= 'R') goto yy56;
13697 			goto yy249;
13698 		}
13699 	} else {
13700 		if (yych <= 'i') {
13701 			if (yych == 'a') goto yy766;
13702 			if (yych <= 'h') goto yy56;
13703 			goto yy247;
13704 		} else {
13705 			if (yych <= 'o') {
13706 				if (yych <= 'n') goto yy56;
13707 				goto yy248;
13708 			} else {
13709 				if (yych == 's') goto yy249;
13710 				goto yy56;
13711 			}
13712 		}
13713 	}
13714 yy583:
13715 	YYDEBUG(583, *YYCURSOR);
13716 	yych = *++YYCURSOR;
13717 	if (yych == 'O') goto yy767;
13718 	if (yych == 'o') goto yy767;
13719 	goto yy56;
13720 yy584:
13721 	YYDEBUG(584, *YYCURSOR);
13722 	yych = *++YYCURSOR;
13723 	if (yych == 'C') goto yy768;
13724 	if (yych == 'c') goto yy768;
13725 	goto yy56;
13726 yy585:
13727 	YYDEBUG(585, *YYCURSOR);
13728 	yych = *++YYCURSOR;
13729 	if (yych <= 'U') {
13730 		if (yych <= 'D') {
13731 			if (yych == 'A') goto yy253;
13732 			goto yy56;
13733 		} else {
13734 			if (yych <= 'E') goto yy769;
13735 			if (yych <= 'T') goto yy56;
13736 			goto yy255;
13737 		}
13738 	} else {
13739 		if (yych <= 'd') {
13740 			if (yych == 'a') goto yy253;
13741 			goto yy56;
13742 		} else {
13743 			if (yych <= 'e') goto yy769;
13744 			if (yych == 'u') goto yy255;
13745 			goto yy56;
13746 		}
13747 	}
13748 yy586:
13749 	YYDEBUG(586, *YYCURSOR);
13750 	yych = *++YYCURSOR;
13751 	if (yych == 'I') goto yy588;
13752 	goto yy580;
13753 yy587:
13754 	YYDEBUG(587, *YYCURSOR);
13755 	yych = *++YYCURSOR;
13756 	if (yych <= '5') {
13757 		if (yych <= '/') goto yy56;
13758 		if (yych <= '0') goto yy770;
13759 		if (yych <= '4') goto yy771;
13760 		goto yy772;
13761 	} else {
13762 		if (yych <= 'E') {
13763 			if (yych <= 'D') goto yy56;
13764 			goto yy259;
13765 		} else {
13766 			if (yych == 'e') goto yy259;
13767 			goto yy56;
13768 		}
13769 	}
13770 yy588:
13771 	YYDEBUG(588, *YYCURSOR);
13772 	yych = *++YYCURSOR;
13773 	if (yych == 'I') goto yy762;
13774 	goto yy580;
13775 yy589:
13776 	YYDEBUG(589, *YYCURSOR);
13777 	yych = *++YYCURSOR;
13778 	if (yych <= '/') goto yy186;
13779 	if (yych <= '0') goto yy773;
13780 	if (yych <= '9') goto yy774;
13781 	goto yy186;
13782 yy590:
13783 	YYDEBUG(590, *YYCURSOR);
13784 	yych = *++YYCURSOR;
13785 	if (yych <= '/') goto yy186;
13786 	if (yych <= '2') goto yy774;
13787 	if (yych <= '9') goto yy775;
13788 	goto yy186;
13789 yy591:
13790 	YYDEBUG(591, *YYCURSOR);
13791 	yych = *++YYCURSOR;
13792 	if (yych <= '/') goto yy186;
13793 	if (yych <= '9') goto yy775;
13794 	goto yy186;
13795 yy592:
13796 	YYDEBUG(592, *YYCURSOR);
13797 	yych = *++YYCURSOR;
13798 	if (yych <= '/') goto yy186;
13799 	if (yych <= '5') goto yy775;
13800 	if (yych <= '6') goto yy776;
13801 	if (yych <= '9') goto yy755;
13802 	goto yy186;
13803 yy593:
13804 	YYDEBUG(593, *YYCURSOR);
13805 	yych = *++YYCURSOR;
13806 	if (yych == 'L') goto yy243;
13807 	if (yych == 'l') goto yy243;
13808 	goto yy56;
13809 yy594:
13810 	YYDEBUG(594, *YYCURSOR);
13811 	yych = *++YYCURSOR;
13812 	if (yych == 'S') goto yy777;
13813 	if (yych == 's') goto yy777;
13814 	goto yy56;
13815 yy595:
13816 	YYDEBUG(595, *YYCURSOR);
13817 	++YYCURSOR;
13818 	goto yy250;
13819 yy596:
13820 	YYDEBUG(596, *YYCURSOR);
13821 	yych = *++YYCURSOR;
13822 	if (yych == 'M') goto yy607;
13823 	if (yych == 'm') goto yy607;
13824 	goto yy56;
13825 yy597:
13826 	YYDEBUG(597, *YYCURSOR);
13827 	yych = *++YYCURSOR;
13828 	if (yych == 'U') goto yy601;
13829 	if (yych == 'u') goto yy601;
13830 	goto yy56;
13831 yy598:
13832 	YYDEBUG(598, *YYCURSOR);
13833 	yych = *++YYCURSOR;
13834 	if (yych <= 'N') {
13835 		if (yych == 'H') goto yy778;
13836 		if (yych <= 'M') goto yy56;
13837 		goto yy779;
13838 	} else {
13839 		if (yych <= 'h') {
13840 			if (yych <= 'g') goto yy56;
13841 			goto yy778;
13842 		} else {
13843 			if (yych == 'n') goto yy779;
13844 			goto yy56;
13845 		}
13846 	}
13847 yy599:
13848 	YYDEBUG(599, *YYCURSOR);
13849 	yych = *++YYCURSOR;
13850 	if (yych == 'A') goto yy780;
13851 	if (yych == 'a') goto yy780;
13852 	goto yy56;
13853 yy600:
13854 	YYDEBUG(600, *YYCURSOR);
13855 	yych = *++YYCURSOR;
13856 	if (yych <= '/') goto yy241;
13857 	if (yych <= '9') goto yy781;
13858 	goto yy241;
13859 yy601:
13860 	YYDEBUG(601, *YYCURSOR);
13861 	yych = *++YYCURSOR;
13862 	if (yych == 'A') goto yy782;
13863 	if (yych == 'a') goto yy782;
13864 	goto yy56;
13865 yy602:
13866 	YYDEBUG(602, *YYCURSOR);
13867 	yych = *++YYCURSOR;
13868 	if (yych == 'H') goto yy243;
13869 	if (yych == 'h') goto yy243;
13870 	goto yy56;
13871 yy603:
13872 	YYDEBUG(603, *YYCURSOR);
13873 	yych = *++YYCURSOR;
13874 	if (yych == 'O') goto yy783;
13875 	if (yych == 'o') goto yy783;
13876 	goto yy56;
13877 yy604:
13878 	YYDEBUG(604, *YYCURSOR);
13879 	yych = *++YYCURSOR;
13880 	if (yych == 'I') goto yy783;
13881 	if (yych == 'i') goto yy783;
13882 	goto yy56;
13883 yy605:
13884 	YYDEBUG(605, *YYCURSOR);
13885 	yych = *++YYCURSOR;
13886 	if (yych == 'T') goto yy784;
13887 	if (yych == 't') goto yy784;
13888 	goto yy56;
13889 yy606:
13890 	YYDEBUG(606, *YYCURSOR);
13891 	yych = *++YYCURSOR;
13892 	if (yych == 'H') goto yy407;
13893 	if (yych == 'h') goto yy407;
13894 	goto yy56;
13895 yy607:
13896 	YYDEBUG(607, *YYCURSOR);
13897 	yych = *++YYCURSOR;
13898 	if (yych == 'B') goto yy785;
13899 	if (yych == 'b') goto yy785;
13900 	goto yy56;
13901 yy608:
13902 	YYDEBUG(608, *YYCURSOR);
13903 	yych = *++YYCURSOR;
13904 	if (yych == 'R') goto yy611;
13905 	if (yych == 'r') goto yy611;
13906 	goto yy56;
13907 yy609:
13908 	YYDEBUG(609, *YYCURSOR);
13909 	yych = *++YYCURSOR;
13910 	if (yych == 'N') goto yy786;
13911 	if (yych == 'n') goto yy786;
13912 	goto yy56;
13913 yy610:
13914 	YYDEBUG(610, *YYCURSOR);
13915 	yych = *++YYCURSOR;
13916 	if (yych == 'S') goto yy611;
13917 	if (yych != 's') goto yy56;
13918 yy611:
13919 	YYDEBUG(611, *YYCURSOR);
13920 	yych = *++YYCURSOR;
13921 	if (yych == 'D') goto yy599;
13922 	if (yych == 'd') goto yy599;
13923 	goto yy56;
13924 yy612:
13925 	YYDEBUG(612, *YYCURSOR);
13926 	yych = *++YYCURSOR;
13927 	if (yych == 'E') goto yy610;
13928 	if (yych == 'e') goto yy610;
13929 	goto yy56;
13930 yy613:
13931 	YYDEBUG(613, *YYCURSOR);
13932 	yyaccept = 7;
13933 	yych = *(YYMARKER = ++YYCURSOR);
13934 	if (yych <= 'S') {
13935 		if (yych == 'D') goto yy188;
13936 		if (yych <= 'R') goto yy250;
13937 		goto yy595;
13938 	} else {
13939 		if (yych <= 'd') {
13940 			if (yych <= 'c') goto yy250;
13941 			goto yy188;
13942 		} else {
13943 			if (yych == 's') goto yy595;
13944 			goto yy250;
13945 		}
13946 	}
13947 yy614:
13948 	YYDEBUG(614, *YYCURSOR);
13949 	yych = *++YYCURSOR;
13950 	if (yych <= ',') goto yy56;
13951 	if (yych <= '.') goto yy378;
13952 	if (yych <= '/') goto yy56;
13953 	if (yych <= '9') goto yy616;
13954 	goto yy56;
13955 yy615:
13956 	YYDEBUG(615, *YYCURSOR);
13957 	yych = *++YYCURSOR;
13958 	if (yych <= ',') goto yy56;
13959 	if (yych <= '.') goto yy378;
13960 	if (yych <= '/') goto yy56;
13961 	if (yych >= '3') goto yy56;
13962 yy616:
13963 	YYDEBUG(616, *YYCURSOR);
13964 	yych = *++YYCURSOR;
13965 	if (yych <= ',') goto yy56;
13966 	if (yych <= '.') goto yy378;
13967 	goto yy56;
13968 yy617:
13969 	YYDEBUG(617, *YYCURSOR);
13970 	yyaccept = 5;
13971 	yych = *(YYMARKER = ++YYCURSOR);
13972 	if (yych == '.') goto yy719;
13973 	if (yych <= '/') goto yy209;
13974 	if (yych <= '9') goto yy787;
13975 	goto yy209;
13976 yy618:
13977 	YYDEBUG(618, *YYCURSOR);
13978 	yyaccept = 5;
13979 	yych = *(YYMARKER = ++YYCURSOR);
13980 	if (yych <= '/') {
13981 		if (yych == '.') goto yy719;
13982 		goto yy209;
13983 	} else {
13984 		if (yych <= '0') goto yy787;
13985 		if (yych <= '9') goto yy713;
13986 		goto yy209;
13987 	}
13988 yy619:
13989 	YYDEBUG(619, *YYCURSOR);
13990 	++YYCURSOR;
13991 	if ((YYLIMIT - YYCURSOR) < 5) YYFILL(5);
13992 	yych = *YYCURSOR;
13993 	YYDEBUG(620, *YYCURSOR);
13994 	if (yych <= 'A') {
13995 		if (yych <= 0x1F) {
13996 			if (yych == '\t') goto yy619;
13997 			goto yy56;
13998 		} else {
13999 			if (yych <= ' ') goto yy619;
14000 			if (yych <= '@') goto yy56;
14001 			goto yy101;
14002 		}
14003 	} else {
14004 		if (yych <= '`') {
14005 			if (yych == 'P') goto yy101;
14006 			goto yy56;
14007 		} else {
14008 			if (yych <= 'a') goto yy101;
14009 			if (yych == 'p') goto yy101;
14010 			goto yy56;
14011 		}
14012 	}
14013 yy621:
14014 	YYDEBUG(621, *YYCURSOR);
14015 	yyaccept = 5;
14016 	yych = *(YYMARKER = ++YYCURSOR);
14017 	if (yych == '.') goto yy719;
14018 	if (yych <= '/') goto yy209;
14019 	if (yych <= '9') goto yy788;
14020 	goto yy209;
14021 yy622:
14022 	YYDEBUG(622, *YYCURSOR);
14023 	yyaccept = 5;
14024 	yych = *(YYMARKER = ++YYCURSOR);
14025 	if (yych == '.') goto yy719;
14026 	if (yych == '0') goto yy788;
14027 	goto yy209;
14028 yy623:
14029 	YYDEBUG(623, *YYCURSOR);
14030 	yych = *++YYCURSOR;
14031 	if (yych <= '/') goto yy56;
14032 	if (yych <= '5') goto yy789;
14033 	if (yych <= '6') goto yy790;
14034 	if (yych <= '9') goto yy555;
14035 	goto yy56;
14036 yy624:
14037 	YYDEBUG(624, *YYCURSOR);
14038 	yych = *++YYCURSOR;
14039 	if (yych <= '/') goto yy56;
14040 	if (yych <= '2') goto yy791;
14041 	if (yych <= '3') goto yy792;
14042 	if (yych <= '9') goto yy793;
14043 	goto yy56;
14044 yy625:
14045 	YYDEBUG(625, *YYCURSOR);
14046 	yych = *++YYCURSOR;
14047 	if (yych == '-') goto yy794;
14048 	goto yy56;
14049 yy626:
14050 	YYDEBUG(626, *YYCURSOR);
14051 	yych = *++YYCURSOR;
14052 	if (yych == 'R') goto yy795;
14053 	if (yych == 'r') goto yy795;
14054 	goto yy56;
14055 yy627:
14056 	YYDEBUG(627, *YYCURSOR);
14057 	yych = *++YYCURSOR;
14058 	if (yych == 'G') goto yy795;
14059 	if (yych == 'g') goto yy795;
14060 	goto yy56;
14061 yy628:
14062 	YYDEBUG(628, *YYCURSOR);
14063 	yych = *++YYCURSOR;
14064 	if (yych == 'C') goto yy795;
14065 	if (yych == 'c') goto yy795;
14066 	goto yy56;
14067 yy629:
14068 	YYDEBUG(629, *YYCURSOR);
14069 	yych = *++YYCURSOR;
14070 	if (yych == 'B') goto yy795;
14071 	if (yych == 'b') goto yy795;
14072 	goto yy56;
14073 yy630:
14074 	YYDEBUG(630, *YYCURSOR);
14075 	yych = *++YYCURSOR;
14076 	if (yych == 'N') goto yy795;
14077 	if (yych == 'n') goto yy795;
14078 	goto yy56;
14079 yy631:
14080 	YYDEBUG(631, *YYCURSOR);
14081 	yych = *++YYCURSOR;
14082 	if (yych <= 'N') {
14083 		if (yych == 'L') goto yy795;
14084 		if (yych <= 'M') goto yy56;
14085 		goto yy795;
14086 	} else {
14087 		if (yych <= 'l') {
14088 			if (yych <= 'k') goto yy56;
14089 			goto yy795;
14090 		} else {
14091 			if (yych == 'n') goto yy795;
14092 			goto yy56;
14093 		}
14094 	}
14095 yy632:
14096 	YYDEBUG(632, *YYCURSOR);
14097 	yych = *++YYCURSOR;
14098 	if (yych <= 'Y') {
14099 		if (yych == 'R') goto yy795;
14100 		if (yych <= 'X') goto yy56;
14101 		goto yy795;
14102 	} else {
14103 		if (yych <= 'r') {
14104 			if (yych <= 'q') goto yy56;
14105 			goto yy795;
14106 		} else {
14107 			if (yych == 'y') goto yy795;
14108 			goto yy56;
14109 		}
14110 	}
14111 yy633:
14112 	YYDEBUG(633, *YYCURSOR);
14113 	yych = *++YYCURSOR;
14114 	if (yych == 'V') goto yy795;
14115 	if (yych == 'v') goto yy795;
14116 	goto yy56;
14117 yy634:
14118 	YYDEBUG(634, *YYCURSOR);
14119 	yych = *++YYCURSOR;
14120 	if (yych == 'T') goto yy795;
14121 	if (yych == 't') goto yy795;
14122 	goto yy56;
14123 yy635:
14124 	YYDEBUG(635, *YYCURSOR);
14125 	yych = *++YYCURSOR;
14126 	if (yych == 'P') goto yy796;
14127 	if (yych == 'p') goto yy796;
14128 	goto yy56;
14129 yy636:
14130 	YYDEBUG(636, *YYCURSOR);
14131 	yych = *++YYCURSOR;
14132 	if (yych <= '/') goto yy56;
14133 	if (yych <= '9') goto yy797;
14134 	goto yy56;
14135 yy637:
14136 	YYDEBUG(637, *YYCURSOR);
14137 	yych = *++YYCURSOR;
14138 	if (yych <= '@') {
14139 		if (yych == ')') goto yy108;
14140 		goto yy18;
14141 	} else {
14142 		if (yych <= 'Z') goto yy798;
14143 		if (yych <= '`') goto yy18;
14144 		if (yych <= 'z') goto yy798;
14145 		goto yy18;
14146 	}
14147 yy638:
14148 	YYDEBUG(638, *YYCURSOR);
14149 	yych = *++YYCURSOR;
14150 	if (yych <= '9') {
14151 		if (yych <= ' ') {
14152 			if (yych <= 0x08) {
14153 				if (yych <= 0x00) goto yy309;
14154 				goto yy56;
14155 			} else {
14156 				if (yych <= '\t') goto yy311;
14157 				if (yych <= 0x1F) goto yy56;
14158 				goto yy311;
14159 			}
14160 		} else {
14161 			if (yych <= '-') {
14162 				if (yych == ',') goto yy311;
14163 				goto yy56;
14164 			} else {
14165 				if (yych <= '.') goto yy311;
14166 				if (yych <= '/') goto yy56;
14167 				goto yy799;
14168 			}
14169 		}
14170 	} else {
14171 		if (yych <= 'm') {
14172 			if (yych <= 'd') {
14173 				if (yych <= 'c') goto yy56;
14174 				goto yy311;
14175 			} else {
14176 				if (yych == 'h') goto yy311;
14177 				goto yy56;
14178 			}
14179 		} else {
14180 			if (yych <= 'r') {
14181 				if (yych <= 'n') goto yy314;
14182 				if (yych <= 'q') goto yy56;
14183 				goto yy314;
14184 			} else {
14185 				if (yych <= 's') goto yy315;
14186 				if (yych <= 't') goto yy316;
14187 				goto yy56;
14188 			}
14189 		}
14190 	}
14191 yy639:
14192 	YYDEBUG(639, *YYCURSOR);
14193 	yych = *++YYCURSOR;
14194 	if (yych <= '1') {
14195 		if (yych <= ' ') {
14196 			if (yych <= 0x08) {
14197 				if (yych <= 0x00) goto yy309;
14198 				goto yy56;
14199 			} else {
14200 				if (yych <= '\t') goto yy311;
14201 				if (yych <= 0x1F) goto yy56;
14202 				goto yy311;
14203 			}
14204 		} else {
14205 			if (yych <= '-') {
14206 				if (yych == ',') goto yy311;
14207 				goto yy56;
14208 			} else {
14209 				if (yych <= '.') goto yy311;
14210 				if (yych <= '/') goto yy56;
14211 				goto yy799;
14212 			}
14213 		}
14214 	} else {
14215 		if (yych <= 'm') {
14216 			if (yych <= 'd') {
14217 				if (yych <= '9') goto yy317;
14218 				if (yych <= 'c') goto yy56;
14219 				goto yy311;
14220 			} else {
14221 				if (yych == 'h') goto yy311;
14222 				goto yy56;
14223 			}
14224 		} else {
14225 			if (yych <= 'r') {
14226 				if (yych <= 'n') goto yy314;
14227 				if (yych <= 'q') goto yy56;
14228 				goto yy314;
14229 			} else {
14230 				if (yych <= 's') goto yy315;
14231 				if (yych <= 't') goto yy316;
14232 				goto yy56;
14233 			}
14234 		}
14235 	}
14236 yy640:
14237 	YYDEBUG(640, *YYCURSOR);
14238 	yyaccept = 8;
14239 	yych = *(YYMARKER = ++YYCURSOR);
14240 	if (yych <= ',') {
14241 		if (yych <= 0x1F) {
14242 			if (yych == '\t') goto yy135;
14243 			goto yy280;
14244 		} else {
14245 			if (yych <= ' ') goto yy135;
14246 			if (yych == ')') goto yy108;
14247 			goto yy280;
14248 		}
14249 	} else {
14250 		if (yych <= '@') {
14251 			if (yych == '/') goto yy280;
14252 			if (yych <= '9') goto yy135;
14253 			goto yy280;
14254 		} else {
14255 			if (yych <= 'Z') goto yy798;
14256 			if (yych <= '`') goto yy280;
14257 			if (yych <= 'z') goto yy798;
14258 			goto yy280;
14259 		}
14260 	}
14261 yy641:
14262 	YYDEBUG(641, *YYCURSOR);
14263 	yych = *++YYCURSOR;
14264 	if (yych <= 'T') {
14265 		if (yych <= ')') {
14266 			if (yych <= '(') goto yy18;
14267 			goto yy108;
14268 		} else {
14269 			if (yych <= '@') goto yy18;
14270 			if (yych <= 'S') goto yy798;
14271 			goto yy800;
14272 		}
14273 	} else {
14274 		if (yych <= 's') {
14275 			if (yych <= 'Z') goto yy798;
14276 			if (yych <= '`') goto yy18;
14277 			goto yy798;
14278 		} else {
14279 			if (yych <= 't') goto yy800;
14280 			if (yych <= 'z') goto yy798;
14281 			goto yy18;
14282 		}
14283 	}
14284 yy642:
14285 	YYDEBUG(642, *YYCURSOR);
14286 	yyaccept = 2;
14287 	yych = *(YYMARKER = ++YYCURSOR);
14288 	if (yych <= '/') {
14289 		if (yych <= ',') {
14290 			if (yych == ')') goto yy108;
14291 			goto yy18;
14292 		} else {
14293 			if (yych == '.') goto yy18;
14294 			goto yy282;
14295 		}
14296 	} else {
14297 		if (yych <= '^') {
14298 			if (yych <= '@') goto yy18;
14299 			if (yych <= 'Z') goto yy798;
14300 			goto yy18;
14301 		} else {
14302 			if (yych <= '_') goto yy282;
14303 			if (yych <= '`') goto yy18;
14304 			if (yych <= 'z') goto yy801;
14305 			goto yy18;
14306 		}
14307 	}
14308 yy643:
14309 	YYDEBUG(643, *YYCURSOR);
14310 	yyaccept = 8;
14311 	yych = *(YYMARKER = ++YYCURSOR);
14312 	if (yych <= '.') {
14313 		if (yych <= ' ') {
14314 			if (yych == '\t') goto yy135;
14315 			if (yych <= 0x1F) goto yy280;
14316 			goto yy135;
14317 		} else {
14318 			if (yych <= ')') {
14319 				if (yych <= '(') goto yy280;
14320 				goto yy108;
14321 			} else {
14322 				if (yych <= ',') goto yy280;
14323 				if (yych <= '-') goto yy679;
14324 				goto yy135;
14325 			}
14326 		}
14327 	} else {
14328 		if (yych <= 'Z') {
14329 			if (yych <= '/') goto yy282;
14330 			if (yych <= '9') goto yy135;
14331 			if (yych <= '@') goto yy280;
14332 			goto yy798;
14333 		} else {
14334 			if (yych <= '_') {
14335 				if (yych <= '^') goto yy280;
14336 				goto yy282;
14337 			} else {
14338 				if (yych <= '`') goto yy280;
14339 				if (yych <= 'z') goto yy801;
14340 				goto yy280;
14341 			}
14342 		}
14343 	}
14344 yy644:
14345 	YYDEBUG(644, *YYCURSOR);
14346 	yyaccept = 2;
14347 	yych = *(YYMARKER = ++YYCURSOR);
14348 	if (yych <= 'S') {
14349 		if (yych <= '-') {
14350 			if (yych == ')') goto yy108;
14351 			if (yych <= ',') goto yy18;
14352 			goto yy282;
14353 		} else {
14354 			if (yych == '/') goto yy282;
14355 			if (yych <= '@') goto yy18;
14356 			goto yy798;
14357 		}
14358 	} else {
14359 		if (yych <= '_') {
14360 			if (yych <= 'T') goto yy800;
14361 			if (yych <= 'Z') goto yy798;
14362 			if (yych <= '^') goto yy18;
14363 			goto yy282;
14364 		} else {
14365 			if (yych <= 's') {
14366 				if (yych <= '`') goto yy18;
14367 				goto yy801;
14368 			} else {
14369 				if (yych <= 't') goto yy802;
14370 				if (yych <= 'z') goto yy801;
14371 				goto yy18;
14372 			}
14373 		}
14374 	}
14375 yy645:
14376 	YYDEBUG(645, *YYCURSOR);
14377 	yych = *++YYCURSOR;
14378 	if (yych == 'O') goto yy803;
14379 	if (yych == 'o') goto yy803;
14380 	goto yy56;
14381 yy646:
14382 	YYDEBUG(646, *YYCURSOR);
14383 	yych = *++YYCURSOR;
14384 	if (yych <= 'B') {
14385 		if (yych <= ')') {
14386 			if (yych <= '(') goto yy18;
14387 			goto yy108;
14388 		} else {
14389 			if (yych <= '@') goto yy18;
14390 			if (yych <= 'A') goto yy798;
14391 			goto yy804;
14392 		}
14393 	} else {
14394 		if (yych <= 'a') {
14395 			if (yych <= 'Z') goto yy798;
14396 			if (yych <= '`') goto yy18;
14397 			goto yy798;
14398 		} else {
14399 			if (yych <= 'b') goto yy804;
14400 			if (yych <= 'z') goto yy798;
14401 			goto yy18;
14402 		}
14403 	}
14404 yy647:
14405 	YYDEBUG(647, *YYCURSOR);
14406 	yyaccept = 2;
14407 	yych = *(YYMARKER = ++YYCURSOR);
14408 	if (yych <= 'A') {
14409 		if (yych <= '-') {
14410 			if (yych == ')') goto yy108;
14411 			if (yych <= ',') goto yy18;
14412 			goto yy282;
14413 		} else {
14414 			if (yych == '/') goto yy282;
14415 			if (yych <= '@') goto yy18;
14416 			goto yy798;
14417 		}
14418 	} else {
14419 		if (yych <= '_') {
14420 			if (yych <= 'B') goto yy804;
14421 			if (yych <= 'Z') goto yy798;
14422 			if (yych <= '^') goto yy18;
14423 			goto yy282;
14424 		} else {
14425 			if (yych <= 'a') {
14426 				if (yych <= '`') goto yy18;
14427 				goto yy801;
14428 			} else {
14429 				if (yych <= 'b') goto yy805;
14430 				if (yych <= 'z') goto yy801;
14431 				goto yy18;
14432 			}
14433 		}
14434 	}
14435 yy648:
14436 	YYDEBUG(648, *YYCURSOR);
14437 	yyaccept = 2;
14438 	yych = *(YYMARKER = ++YYCURSOR);
14439 	if (yych <= '@') {
14440 		if (yych <= 0x1F) {
14441 			if (yych == '\t') goto yy806;
14442 			goto yy18;
14443 		} else {
14444 			if (yych <= ' ') goto yy806;
14445 			if (yych == ')') goto yy108;
14446 			goto yy18;
14447 		}
14448 	} else {
14449 		if (yych <= '`') {
14450 			if (yych == 'H') goto yy808;
14451 			if (yych <= 'Z') goto yy798;
14452 			goto yy18;
14453 		} else {
14454 			if (yych == 'h') goto yy808;
14455 			if (yych <= 'z') goto yy798;
14456 			goto yy18;
14457 		}
14458 	}
14459 yy649:
14460 	YYDEBUG(649, *YYCURSOR);
14461 	yych = *++YYCURSOR;
14462 	if (yych <= 'N') {
14463 		if (yych <= ')') {
14464 			if (yych <= '(') goto yy18;
14465 			goto yy108;
14466 		} else {
14467 			if (yych <= '@') goto yy18;
14468 			if (yych <= 'M') goto yy798;
14469 			goto yy809;
14470 		}
14471 	} else {
14472 		if (yych <= 'm') {
14473 			if (yych <= 'Z') goto yy798;
14474 			if (yych <= '`') goto yy18;
14475 			goto yy798;
14476 		} else {
14477 			if (yych <= 'n') goto yy809;
14478 			if (yych <= 'z') goto yy798;
14479 			goto yy18;
14480 		}
14481 	}
14482 yy650:
14483 	YYDEBUG(650, *YYCURSOR);
14484 	yyaccept = 2;
14485 	yych = *(YYMARKER = ++YYCURSOR);
14486 	if (yych <= '/') {
14487 		if (yych <= '(') {
14488 			if (yych <= '\t') {
14489 				if (yych <= 0x08) goto yy18;
14490 				goto yy806;
14491 			} else {
14492 				if (yych == ' ') goto yy806;
14493 				goto yy18;
14494 			}
14495 		} else {
14496 			if (yych <= ',') {
14497 				if (yych <= ')') goto yy108;
14498 				goto yy18;
14499 			} else {
14500 				if (yych == '.') goto yy18;
14501 				goto yy282;
14502 			}
14503 		}
14504 	} else {
14505 		if (yych <= '^') {
14506 			if (yych <= 'G') {
14507 				if (yych <= '@') goto yy18;
14508 				goto yy798;
14509 			} else {
14510 				if (yych <= 'H') goto yy808;
14511 				if (yych <= 'Z') goto yy798;
14512 				goto yy18;
14513 			}
14514 		} else {
14515 			if (yych <= 'g') {
14516 				if (yych <= '_') goto yy282;
14517 				if (yych <= '`') goto yy18;
14518 				goto yy801;
14519 			} else {
14520 				if (yych <= 'h') goto yy810;
14521 				if (yych <= 'z') goto yy801;
14522 				goto yy18;
14523 			}
14524 		}
14525 	}
14526 yy651:
14527 	YYDEBUG(651, *YYCURSOR);
14528 	yyaccept = 2;
14529 	yych = *(YYMARKER = ++YYCURSOR);
14530 	if (yych <= 'M') {
14531 		if (yych <= '-') {
14532 			if (yych == ')') goto yy108;
14533 			if (yych <= ',') goto yy18;
14534 			goto yy282;
14535 		} else {
14536 			if (yych == '/') goto yy282;
14537 			if (yych <= '@') goto yy18;
14538 			goto yy798;
14539 		}
14540 	} else {
14541 		if (yych <= '_') {
14542 			if (yych <= 'N') goto yy809;
14543 			if (yych <= 'Z') goto yy798;
14544 			if (yych <= '^') goto yy18;
14545 			goto yy282;
14546 		} else {
14547 			if (yych <= 'm') {
14548 				if (yych <= '`') goto yy18;
14549 				goto yy801;
14550 			} else {
14551 				if (yych <= 'n') goto yy811;
14552 				if (yych <= 'z') goto yy801;
14553 				goto yy18;
14554 			}
14555 		}
14556 	}
14557 yy652:
14558 	YYDEBUG(652, *YYCURSOR);
14559 	yych = *++YYCURSOR;
14560 	if (yych <= 'A') {
14561 		if (yych == ')') goto yy108;
14562 		if (yych <= '@') goto yy18;
14563 		goto yy812;
14564 	} else {
14565 		if (yych <= '`') {
14566 			if (yych <= 'Z') goto yy798;
14567 			goto yy18;
14568 		} else {
14569 			if (yych <= 'a') goto yy812;
14570 			if (yych <= 'z') goto yy798;
14571 			goto yy18;
14572 		}
14573 	}
14574 yy653:
14575 	YYDEBUG(653, *YYCURSOR);
14576 	yyaccept = 2;
14577 	yych = *(YYMARKER = ++YYCURSOR);
14578 	if (yych <= '(') {
14579 		if (yych <= '\t') {
14580 			if (yych <= 0x08) goto yy18;
14581 			goto yy806;
14582 		} else {
14583 			if (yych == ' ') goto yy806;
14584 			goto yy18;
14585 		}
14586 	} else {
14587 		if (yych <= 'Z') {
14588 			if (yych <= ')') goto yy108;
14589 			if (yych <= '@') goto yy18;
14590 			goto yy798;
14591 		} else {
14592 			if (yych <= '`') goto yy18;
14593 			if (yych <= 'z') goto yy798;
14594 			goto yy18;
14595 		}
14596 	}
14597 yy654:
14598 	YYDEBUG(654, *YYCURSOR);
14599 	yyaccept = 2;
14600 	yych = *(YYMARKER = ++YYCURSOR);
14601 	if (yych <= '(') {
14602 		if (yych <= '\t') {
14603 			if (yych <= 0x08) goto yy18;
14604 			goto yy806;
14605 		} else {
14606 			if (yych == ' ') goto yy813;
14607 			goto yy18;
14608 		}
14609 	} else {
14610 		if (yych <= 'Z') {
14611 			if (yych <= ')') goto yy108;
14612 			if (yych <= '@') goto yy18;
14613 			goto yy798;
14614 		} else {
14615 			if (yych <= '`') goto yy18;
14616 			if (yych <= 'z') goto yy798;
14617 			goto yy18;
14618 		}
14619 	}
14620 yy655:
14621 	YYDEBUG(655, *YYCURSOR);
14622 	yych = *++YYCURSOR;
14623 	if (yych <= 'H') {
14624 		if (yych <= ')') {
14625 			if (yych <= '(') goto yy18;
14626 			goto yy108;
14627 		} else {
14628 			if (yych <= '@') goto yy18;
14629 			if (yych <= 'G') goto yy798;
14630 			goto yy808;
14631 		}
14632 	} else {
14633 		if (yych <= 'g') {
14634 			if (yych <= 'Z') goto yy798;
14635 			if (yych <= '`') goto yy18;
14636 			goto yy798;
14637 		} else {
14638 			if (yych <= 'h') goto yy808;
14639 			if (yych <= 'z') goto yy798;
14640 			goto yy18;
14641 		}
14642 	}
14643 yy656:
14644 	YYDEBUG(656, *YYCURSOR);
14645 	yych = *++YYCURSOR;
14646 	if (yych <= 'Y') {
14647 		if (yych <= ')') {
14648 			if (yych <= '(') goto yy18;
14649 			goto yy108;
14650 		} else {
14651 			if (yych <= '@') goto yy18;
14652 			if (yych <= 'X') goto yy798;
14653 			goto yy814;
14654 		}
14655 	} else {
14656 		if (yych <= 'x') {
14657 			if (yych <= 'Z') goto yy798;
14658 			if (yych <= '`') goto yy18;
14659 			goto yy798;
14660 		} else {
14661 			if (yych <= 'y') goto yy814;
14662 			if (yych <= 'z') goto yy798;
14663 			goto yy18;
14664 		}
14665 	}
14666 yy657:
14667 	YYDEBUG(657, *YYCURSOR);
14668 	yyaccept = 2;
14669 	yych = *(YYMARKER = ++YYCURSOR);
14670 	if (yych <= ')') {
14671 		if (yych == ' ') goto yy645;
14672 		if (yych <= '(') goto yy18;
14673 		goto yy108;
14674 	} else {
14675 		if (yych <= 'Z') {
14676 			if (yych <= '@') goto yy18;
14677 			goto yy798;
14678 		} else {
14679 			if (yych <= '`') goto yy18;
14680 			if (yych <= 'z') goto yy798;
14681 			goto yy18;
14682 		}
14683 	}
14684 yy658:
14685 	YYDEBUG(658, *YYCURSOR);
14686 	yyaccept = 2;
14687 	yych = *(YYMARKER = ++YYCURSOR);
14688 	if (yych <= '@') {
14689 		if (yych <= ',') {
14690 			if (yych == ')') goto yy108;
14691 			goto yy18;
14692 		} else {
14693 			if (yych == '.') goto yy18;
14694 			if (yych <= '/') goto yy282;
14695 			goto yy18;
14696 		}
14697 	} else {
14698 		if (yych <= '_') {
14699 			if (yych <= 'A') goto yy812;
14700 			if (yych <= 'Z') goto yy798;
14701 			if (yych <= '^') goto yy18;
14702 			goto yy282;
14703 		} else {
14704 			if (yych <= '`') goto yy18;
14705 			if (yych <= 'a') goto yy815;
14706 			if (yych <= 'z') goto yy801;
14707 			goto yy18;
14708 		}
14709 	}
14710 yy659:
14711 	YYDEBUG(659, *YYCURSOR);
14712 	yyaccept = 2;
14713 	yych = *(YYMARKER = ++YYCURSOR);
14714 	if (yych <= '-') {
14715 		if (yych <= ' ') {
14716 			if (yych == '\t') goto yy806;
14717 			if (yych <= 0x1F) goto yy18;
14718 			goto yy806;
14719 		} else {
14720 			if (yych == ')') goto yy108;
14721 			if (yych <= ',') goto yy18;
14722 			goto yy282;
14723 		}
14724 	} else {
14725 		if (yych <= 'Z') {
14726 			if (yych == '/') goto yy282;
14727 			if (yych <= '@') goto yy18;
14728 			goto yy798;
14729 		} else {
14730 			if (yych <= '_') {
14731 				if (yych <= '^') goto yy18;
14732 				goto yy282;
14733 			} else {
14734 				if (yych <= '`') goto yy18;
14735 				if (yych <= 'z') goto yy801;
14736 				goto yy18;
14737 			}
14738 		}
14739 	}
14740 yy660:
14741 	YYDEBUG(660, *YYCURSOR);
14742 	yyaccept = 2;
14743 	yych = *(YYMARKER = ++YYCURSOR);
14744 	if (yych <= '-') {
14745 		if (yych <= ' ') {
14746 			if (yych == '\t') goto yy806;
14747 			if (yych <= 0x1F) goto yy18;
14748 			goto yy813;
14749 		} else {
14750 			if (yych == ')') goto yy108;
14751 			if (yych <= ',') goto yy18;
14752 			goto yy282;
14753 		}
14754 	} else {
14755 		if (yych <= 'Z') {
14756 			if (yych == '/') goto yy282;
14757 			if (yych <= '@') goto yy18;
14758 			goto yy798;
14759 		} else {
14760 			if (yych <= '_') {
14761 				if (yych <= '^') goto yy18;
14762 				goto yy282;
14763 			} else {
14764 				if (yych <= '`') goto yy18;
14765 				if (yych <= 'z') goto yy801;
14766 				goto yy18;
14767 			}
14768 		}
14769 	}
14770 yy661:
14771 	YYDEBUG(661, *YYCURSOR);
14772 	yyaccept = 2;
14773 	yych = *(YYMARKER = ++YYCURSOR);
14774 	if (yych <= 'G') {
14775 		if (yych <= '-') {
14776 			if (yych == ')') goto yy108;
14777 			if (yych <= ',') goto yy18;
14778 			goto yy282;
14779 		} else {
14780 			if (yych == '/') goto yy282;
14781 			if (yych <= '@') goto yy18;
14782 			goto yy798;
14783 		}
14784 	} else {
14785 		if (yych <= '_') {
14786 			if (yych <= 'H') goto yy808;
14787 			if (yych <= 'Z') goto yy798;
14788 			if (yych <= '^') goto yy18;
14789 			goto yy282;
14790 		} else {
14791 			if (yych <= 'g') {
14792 				if (yych <= '`') goto yy18;
14793 				goto yy801;
14794 			} else {
14795 				if (yych <= 'h') goto yy810;
14796 				if (yych <= 'z') goto yy801;
14797 				goto yy18;
14798 			}
14799 		}
14800 	}
14801 yy662:
14802 	YYDEBUG(662, *YYCURSOR);
14803 	yyaccept = 2;
14804 	yych = *(YYMARKER = ++YYCURSOR);
14805 	if (yych <= 'X') {
14806 		if (yych <= '-') {
14807 			if (yych == ')') goto yy108;
14808 			if (yych <= ',') goto yy18;
14809 			goto yy282;
14810 		} else {
14811 			if (yych == '/') goto yy282;
14812 			if (yych <= '@') goto yy18;
14813 			goto yy798;
14814 		}
14815 	} else {
14816 		if (yych <= '_') {
14817 			if (yych <= 'Y') goto yy814;
14818 			if (yych <= 'Z') goto yy798;
14819 			if (yych <= '^') goto yy18;
14820 			goto yy282;
14821 		} else {
14822 			if (yych <= 'x') {
14823 				if (yych <= '`') goto yy18;
14824 				goto yy801;
14825 			} else {
14826 				if (yych <= 'y') goto yy816;
14827 				if (yych <= 'z') goto yy801;
14828 				goto yy18;
14829 			}
14830 		}
14831 	}
14832 yy663:
14833 	YYDEBUG(663, *YYCURSOR);
14834 	yyaccept = 2;
14835 	yych = *(YYMARKER = ++YYCURSOR);
14836 	if (yych <= '.') {
14837 		if (yych <= '(') {
14838 			if (yych == ' ') goto yy645;
14839 			goto yy18;
14840 		} else {
14841 			if (yych <= ')') goto yy108;
14842 			if (yych == '-') goto yy282;
14843 			goto yy18;
14844 		}
14845 	} else {
14846 		if (yych <= '^') {
14847 			if (yych <= '/') goto yy282;
14848 			if (yych <= '@') goto yy18;
14849 			if (yych <= 'Z') goto yy798;
14850 			goto yy18;
14851 		} else {
14852 			if (yych <= '_') goto yy282;
14853 			if (yych <= '`') goto yy18;
14854 			if (yych <= 'z') goto yy801;
14855 			goto yy18;
14856 		}
14857 	}
14858 yy664:
14859 	YYDEBUG(664, *YYCURSOR);
14860 	yych = *++YYCURSOR;
14861 	if (yych <= '/') goto yy18;
14862 	if (yych <= '9') goto yy666;
14863 	if (yych <= ':') goto yy193;
14864 	goto yy18;
14865 yy665:
14866 	YYDEBUG(665, *YYCURSOR);
14867 	yych = *++YYCURSOR;
14868 	if (yych <= '5') {
14869 		if (yych <= '/') goto yy18;
14870 		if (yych >= '5') goto yy376;
14871 	} else {
14872 		if (yych <= '9') goto yy108;
14873 		if (yych <= ':') goto yy193;
14874 		goto yy18;
14875 	}
14876 yy666:
14877 	YYDEBUG(666, *YYCURSOR);
14878 	yych = *++YYCURSOR;
14879 	if (yych <= '/') goto yy18;
14880 	if (yych <= '5') goto yy376;
14881 	if (yych <= '9') goto yy108;
14882 	if (yych <= ':') goto yy193;
14883 	goto yy18;
14884 yy667:
14885 	YYDEBUG(667, *YYCURSOR);
14886 	yych = *++YYCURSOR;
14887 	if (yych <= '/') goto yy56;
14888 	if (yych <= '5') goto yy817;
14889 	if (yych <= '9') goto yy819;
14890 	goto yy56;
14891 yy668:
14892 	YYDEBUG(668, *YYCURSOR);
14893 	yych = *++YYCURSOR;
14894 	if (yych == '.') goto yy667;
14895 	if (yych == ':') goto yy667;
14896 	goto yy56;
14897 yy669:
14898 	YYDEBUG(669, *YYCURSOR);
14899 	yych = *++YYCURSOR;
14900 	if (yych <= '/') goto yy56;
14901 	if (yych <= '5') goto yy820;
14902 	if (yych <= '9') goto yy821;
14903 	goto yy56;
14904 yy670:
14905 	YYDEBUG(670, *YYCURSOR);
14906 	yych = *++YYCURSOR;
14907 	if (yych <= '/') {
14908 		if (yych == '.') goto yy667;
14909 		goto yy56;
14910 	} else {
14911 		if (yych <= '9') goto yy668;
14912 		if (yych <= ':') goto yy667;
14913 		goto yy56;
14914 	}
14915 yy671:
14916 	YYDEBUG(671, *YYCURSOR);
14917 	yych = *++YYCURSOR;
14918 	if (yych <= '/') {
14919 		if (yych == '.') goto yy667;
14920 		goto yy56;
14921 	} else {
14922 		if (yych <= '4') goto yy668;
14923 		if (yych == ':') goto yy667;
14924 		goto yy56;
14925 	}
14926 yy672:
14927 	YYDEBUG(672, *YYCURSOR);
14928 	yyaccept = 11;
14929 	yych = *(YYMARKER = ++YYCURSOR);
14930 	if (yych <= '/') {
14931 		if (yych == '.') goto yy667;
14932 		goto yy310;
14933 	} else {
14934 		if (yych <= '9') goto yy822;
14935 		if (yych <= ':') goto yy667;
14936 		goto yy310;
14937 	}
14938 yy673:
14939 	YYDEBUG(673, *YYCURSOR);
14940 	yyaccept = 11;
14941 	yych = *(YYMARKER = ++YYCURSOR);
14942 	if (yych <= '/') {
14943 		if (yych == '.') goto yy669;
14944 		goto yy310;
14945 	} else {
14946 		if (yych <= '9') goto yy822;
14947 		if (yych <= ':') goto yy669;
14948 		goto yy310;
14949 	}
14950 yy674:
14951 	YYDEBUG(674, *YYCURSOR);
14952 	yych = *++YYCURSOR;
14953 	if (yych <= '/') goto yy310;
14954 	if (yych <= '9') goto yy822;
14955 	goto yy310;
14956 yy675:
14957 	YYDEBUG(675, *YYCURSOR);
14958 	++YYCURSOR;
14959 	YYDEBUG(676, *YYCURSOR);
14960 #line 1427 "parse_date.re"
14961 	{
14962 		int length = 0;
14963 		DEBUG_OUTPUT("datenoday");
14964 		TIMELIB_INIT;
14965 		TIMELIB_HAVE_DATE();
14966 		s->time->m = timelib_get_month((char **) &ptr);
14967 		s->time->y = timelib_get_nr_ex((char **) &ptr, 4, &length);
14968 		s->time->d = 1;
14969 		TIMELIB_PROCESS_YEAR(s->time->y, length);
14970 		TIMELIB_DEINIT;
14971 		return TIMELIB_DATE_NO_DAY;
14972 	}
14973 #line 14974 "<stdout>"
14974 yy677:
14975 	YYDEBUG(677, *YYCURSOR);
14976 	yych = *++YYCURSOR;
14977 	if (yych <= 'R') {
14978 		if (yych <= ')') {
14979 			if (yych <= '(') goto yy18;
14980 			goto yy108;
14981 		} else {
14982 			if (yych <= '@') goto yy18;
14983 			if (yych <= 'Q') goto yy798;
14984 			goto yy823;
14985 		}
14986 	} else {
14987 		if (yych <= 'q') {
14988 			if (yych <= 'Z') goto yy798;
14989 			if (yych <= '`') goto yy18;
14990 			goto yy798;
14991 		} else {
14992 			if (yych <= 'r') goto yy823;
14993 			if (yych <= 'z') goto yy798;
14994 			goto yy18;
14995 		}
14996 	}
14997 yy678:
14998 	YYDEBUG(678, *YYCURSOR);
14999 	yyaccept = 2;
15000 	yych = *(YYMARKER = ++YYCURSOR);
15001 	if (yych <= 'Q') {
15002 		if (yych <= '-') {
15003 			if (yych == ')') goto yy108;
15004 			if (yych <= ',') goto yy18;
15005 			goto yy282;
15006 		} else {
15007 			if (yych == '/') goto yy282;
15008 			if (yych <= '@') goto yy18;
15009 			goto yy798;
15010 		}
15011 	} else {
15012 		if (yych <= '_') {
15013 			if (yych <= 'R') goto yy823;
15014 			if (yych <= 'Z') goto yy798;
15015 			if (yych <= '^') goto yy18;
15016 			goto yy282;
15017 		} else {
15018 			if (yych <= 'q') {
15019 				if (yych <= '`') goto yy18;
15020 				goto yy801;
15021 			} else {
15022 				if (yych <= 'r') goto yy824;
15023 				if (yych <= 'z') goto yy801;
15024 				goto yy18;
15025 			}
15026 		}
15027 	}
15028 yy679:
15029 	YYDEBUG(679, *YYCURSOR);
15030 	yych = *++YYCURSOR;
15031 	if (yybm[0+yych] & 64) {
15032 		goto yy456;
15033 	}
15034 	goto yy135;
15035 yy680:
15036 	YYDEBUG(680, *YYCURSOR);
15037 	++YYCURSOR;
15038 	if ((YYLIMIT - YYCURSOR) < 12) YYFILL(12);
15039 	yych = *YYCURSOR;
15040 yy681:
15041 	YYDEBUG(681, *YYCURSOR);
15042 	if (yych <= 'X') {
15043 		if (yych <= 'G') {
15044 			if (yych <= ' ') {
15045 				if (yych == '\t') goto yy680;
15046 				if (yych <= 0x1F) goto yy56;
15047 				goto yy680;
15048 			} else {
15049 				if (yych <= 'D') {
15050 					if (yych <= 'C') goto yy56;
15051 					goto yy825;
15052 				} else {
15053 					if (yych == 'F') goto yy826;
15054 					goto yy56;
15055 				}
15056 			}
15057 		} else {
15058 			if (yych <= 'S') {
15059 				if (yych <= 'L') {
15060 					if (yych <= 'H') goto yy827;
15061 					goto yy56;
15062 				} else {
15063 					if (yych <= 'M') goto yy828;
15064 					if (yych <= 'R') goto yy56;
15065 					goto yy829;
15066 				}
15067 			} else {
15068 				if (yych <= 'U') {
15069 					if (yych <= 'T') goto yy830;
15070 					goto yy831;
15071 				} else {
15072 					if (yych == 'W') goto yy832;
15073 					goto yy56;
15074 				}
15075 			}
15076 		}
15077 	} else {
15078 		if (yych <= 'r') {
15079 			if (yych <= 'f') {
15080 				if (yych <= 'c') {
15081 					if (yych <= 'Y') goto yy833;
15082 					goto yy56;
15083 				} else {
15084 					if (yych <= 'd') goto yy825;
15085 					if (yych <= 'e') goto yy56;
15086 					goto yy826;
15087 				}
15088 			} else {
15089 				if (yych <= 'h') {
15090 					if (yych <= 'g') goto yy56;
15091 					goto yy827;
15092 				} else {
15093 					if (yych == 'm') goto yy828;
15094 					goto yy56;
15095 				}
15096 			}
15097 		} else {
15098 			if (yych <= 'w') {
15099 				if (yych <= 't') {
15100 					if (yych <= 's') goto yy829;
15101 					goto yy830;
15102 				} else {
15103 					if (yych <= 'u') goto yy831;
15104 					if (yych <= 'v') goto yy56;
15105 					goto yy832;
15106 				}
15107 			} else {
15108 				if (yych <= 'y') {
15109 					if (yych <= 'x') goto yy56;
15110 					goto yy833;
15111 				} else {
15112 					if (yych == 0xC2) goto yy834;
15113 					goto yy56;
15114 				}
15115 			}
15116 		}
15117 	}
15118 yy682:
15119 	YYDEBUG(682, *YYCURSOR);
15120 	yych = *++YYCURSOR;
15121 	if (yych == 'D') goto yy835;
15122 	if (yych == 'd') goto yy835;
15123 	goto yy681;
15124 yy683:
15125 	YYDEBUG(683, *YYCURSOR);
15126 	yych = *++YYCURSOR;
15127 	if (yych <= 'G') {
15128 		if (yych <= ')') {
15129 			if (yych <= '(') goto yy18;
15130 			goto yy108;
15131 		} else {
15132 			if (yych <= '@') goto yy18;
15133 			if (yych <= 'F') goto yy798;
15134 			goto yy836;
15135 		}
15136 	} else {
15137 		if (yych <= 'f') {
15138 			if (yych <= 'Z') goto yy798;
15139 			if (yych <= '`') goto yy18;
15140 			goto yy798;
15141 		} else {
15142 			if (yych <= 'g') goto yy836;
15143 			if (yych <= 'z') goto yy798;
15144 			goto yy18;
15145 		}
15146 	}
15147 yy684:
15148 	YYDEBUG(684, *YYCURSOR);
15149 	yyaccept = 2;
15150 	yych = *(YYMARKER = ++YYCURSOR);
15151 	if (yych <= 'F') {
15152 		if (yych <= '-') {
15153 			if (yych == ')') goto yy108;
15154 			if (yych <= ',') goto yy18;
15155 			goto yy282;
15156 		} else {
15157 			if (yych == '/') goto yy282;
15158 			if (yych <= '@') goto yy18;
15159 			goto yy798;
15160 		}
15161 	} else {
15162 		if (yych <= '_') {
15163 			if (yych <= 'G') goto yy836;
15164 			if (yych <= 'Z') goto yy798;
15165 			if (yych <= '^') goto yy18;
15166 			goto yy282;
15167 		} else {
15168 			if (yych <= 'f') {
15169 				if (yych <= '`') goto yy18;
15170 				goto yy801;
15171 			} else {
15172 				if (yych <= 'g') goto yy837;
15173 				if (yych <= 'z') goto yy801;
15174 				goto yy18;
15175 			}
15176 		}
15177 	}
15178 yy685:
15179 	YYDEBUG(685, *YYCURSOR);
15180 	yych = *++YYCURSOR;
15181 	if (yych <= 'E') {
15182 		if (yych <= ')') {
15183 			if (yych <= '(') goto yy18;
15184 			goto yy108;
15185 		} else {
15186 			if (yych <= '@') goto yy18;
15187 			if (yych <= 'D') goto yy798;
15188 			goto yy838;
15189 		}
15190 	} else {
15191 		if (yych <= 'd') {
15192 			if (yych <= 'Z') goto yy798;
15193 			if (yych <= '`') goto yy18;
15194 			goto yy798;
15195 		} else {
15196 			if (yych <= 'e') goto yy838;
15197 			if (yych <= 'z') goto yy798;
15198 			goto yy18;
15199 		}
15200 	}
15201 yy686:
15202 	YYDEBUG(686, *YYCURSOR);
15203 	yyaccept = 2;
15204 	yych = *(YYMARKER = ++YYCURSOR);
15205 	if (yych <= 'D') {
15206 		if (yych <= '-') {
15207 			if (yych == ')') goto yy108;
15208 			if (yych <= ',') goto yy18;
15209 			goto yy282;
15210 		} else {
15211 			if (yych == '/') goto yy282;
15212 			if (yych <= '@') goto yy18;
15213 			goto yy798;
15214 		}
15215 	} else {
15216 		if (yych <= '_') {
15217 			if (yych <= 'E') goto yy838;
15218 			if (yych <= 'Z') goto yy798;
15219 			if (yych <= '^') goto yy18;
15220 			goto yy282;
15221 		} else {
15222 			if (yych <= 'd') {
15223 				if (yych <= '`') goto yy18;
15224 				goto yy801;
15225 			} else {
15226 				if (yych <= 'e') goto yy839;
15227 				if (yych <= 'z') goto yy801;
15228 				goto yy18;
15229 			}
15230 		}
15231 	}
15232 yy687:
15233 	YYDEBUG(687, *YYCURSOR);
15234 	yych = *++YYCURSOR;
15235 	if (yych <= 'O') {
15236 		if (yych <= ')') {
15237 			if (yych <= '(') goto yy18;
15238 			goto yy108;
15239 		} else {
15240 			if (yych <= '@') goto yy18;
15241 			if (yych <= 'N') goto yy798;
15242 			goto yy840;
15243 		}
15244 	} else {
15245 		if (yych <= 'n') {
15246 			if (yych <= 'Z') goto yy798;
15247 			if (yych <= '`') goto yy18;
15248 			goto yy798;
15249 		} else {
15250 			if (yych <= 'o') goto yy840;
15251 			if (yych <= 'z') goto yy798;
15252 			goto yy18;
15253 		}
15254 	}
15255 yy688:
15256 	YYDEBUG(688, *YYCURSOR);
15257 	yyaccept = 2;
15258 	yych = *(YYMARKER = ++YYCURSOR);
15259 	if (yych <= 'N') {
15260 		if (yych <= '-') {
15261 			if (yych == ')') goto yy108;
15262 			if (yych <= ',') goto yy18;
15263 			goto yy282;
15264 		} else {
15265 			if (yych == '/') goto yy282;
15266 			if (yych <= '@') goto yy18;
15267 			goto yy798;
15268 		}
15269 	} else {
15270 		if (yych <= '_') {
15271 			if (yych <= 'O') goto yy840;
15272 			if (yych <= 'Z') goto yy798;
15273 			if (yych <= '^') goto yy18;
15274 			goto yy282;
15275 		} else {
15276 			if (yych <= 'n') {
15277 				if (yych <= '`') goto yy18;
15278 				goto yy801;
15279 			} else {
15280 				if (yych <= 'o') goto yy841;
15281 				if (yych <= 'z') goto yy801;
15282 				goto yy18;
15283 			}
15284 		}
15285 	}
15286 yy689:
15287 	YYDEBUG(689, *YYCURSOR);
15288 	yych = *++YYCURSOR;
15289 	if (yych <= 'D') {
15290 		if (yych <= ')') {
15291 			if (yych <= '(') goto yy18;
15292 			goto yy108;
15293 		} else {
15294 			if (yych <= '@') goto yy18;
15295 			if (yych <= 'C') goto yy798;
15296 			goto yy842;
15297 		}
15298 	} else {
15299 		if (yych <= 'c') {
15300 			if (yych <= 'Z') goto yy798;
15301 			if (yych <= '`') goto yy18;
15302 			goto yy798;
15303 		} else {
15304 			if (yych <= 'd') goto yy842;
15305 			if (yych <= 'z') goto yy798;
15306 			goto yy18;
15307 		}
15308 	}
15309 yy690:
15310 	YYDEBUG(690, *YYCURSOR);
15311 	yych = *++YYCURSOR;
15312 	if (yych <= 'D') {
15313 		if (yych <= ')') {
15314 			if (yych <= '(') goto yy18;
15315 			goto yy108;
15316 		} else {
15317 			if (yych <= '@') goto yy18;
15318 			if (yych <= 'C') goto yy798;
15319 			goto yy808;
15320 		}
15321 	} else {
15322 		if (yych <= 'c') {
15323 			if (yych <= 'Z') goto yy798;
15324 			if (yych <= '`') goto yy18;
15325 			goto yy798;
15326 		} else {
15327 			if (yych <= 'd') goto yy808;
15328 			if (yych <= 'z') goto yy798;
15329 			goto yy18;
15330 		}
15331 	}
15332 yy691:
15333 	YYDEBUG(691, *YYCURSOR);
15334 	yych = *++YYCURSOR;
15335 	if (yych <= 'M') {
15336 		if (yych <= ')') {
15337 			if (yych <= '(') goto yy18;
15338 			goto yy108;
15339 		} else {
15340 			if (yych <= '@') goto yy18;
15341 			if (yych <= 'L') goto yy798;
15342 			goto yy843;
15343 		}
15344 	} else {
15345 		if (yych <= 'l') {
15346 			if (yych <= 'Z') goto yy798;
15347 			if (yych <= '`') goto yy18;
15348 			goto yy798;
15349 		} else {
15350 			if (yych <= 'm') goto yy843;
15351 			if (yych <= 'z') goto yy798;
15352 			goto yy18;
15353 		}
15354 	}
15355 yy692:
15356 	YYDEBUG(692, *YYCURSOR);
15357 	yych = *++YYCURSOR;
15358 	if (yych <= 'T') {
15359 		if (yych <= ')') {
15360 			if (yych <= '(') goto yy18;
15361 			goto yy108;
15362 		} else {
15363 			if (yych <= '@') goto yy18;
15364 			if (yych <= 'S') goto yy798;
15365 			goto yy844;
15366 		}
15367 	} else {
15368 		if (yych <= 's') {
15369 			if (yych <= 'Z') goto yy798;
15370 			if (yych <= '`') goto yy18;
15371 			goto yy798;
15372 		} else {
15373 			if (yych <= 't') goto yy844;
15374 			if (yych <= 'z') goto yy798;
15375 			goto yy18;
15376 		}
15377 	}
15378 yy693:
15379 	YYDEBUG(693, *YYCURSOR);
15380 	yyaccept = 2;
15381 	yych = *(YYMARKER = ++YYCURSOR);
15382 	if (yych <= 'C') {
15383 		if (yych <= '-') {
15384 			if (yych == ')') goto yy108;
15385 			if (yych <= ',') goto yy18;
15386 			goto yy282;
15387 		} else {
15388 			if (yych == '/') goto yy282;
15389 			if (yych <= '@') goto yy18;
15390 			goto yy798;
15391 		}
15392 	} else {
15393 		if (yych <= '_') {
15394 			if (yych <= 'D') goto yy842;
15395 			if (yych <= 'Z') goto yy798;
15396 			if (yych <= '^') goto yy18;
15397 			goto yy282;
15398 		} else {
15399 			if (yych <= 'c') {
15400 				if (yych <= '`') goto yy18;
15401 				goto yy801;
15402 			} else {
15403 				if (yych <= 'd') goto yy845;
15404 				if (yych <= 'z') goto yy801;
15405 				goto yy18;
15406 			}
15407 		}
15408 	}
15409 yy694:
15410 	YYDEBUG(694, *YYCURSOR);
15411 	yyaccept = 2;
15412 	yych = *(YYMARKER = ++YYCURSOR);
15413 	if (yych <= 'C') {
15414 		if (yych <= '-') {
15415 			if (yych == ')') goto yy108;
15416 			if (yych <= ',') goto yy18;
15417 			goto yy282;
15418 		} else {
15419 			if (yych == '/') goto yy282;
15420 			if (yych <= '@') goto yy18;
15421 			goto yy798;
15422 		}
15423 	} else {
15424 		if (yych <= '_') {
15425 			if (yych <= 'D') goto yy808;
15426 			if (yych <= 'Z') goto yy798;
15427 			if (yych <= '^') goto yy18;
15428 			goto yy282;
15429 		} else {
15430 			if (yych <= 'c') {
15431 				if (yych <= '`') goto yy18;
15432 				goto yy801;
15433 			} else {
15434 				if (yych <= 'd') goto yy810;
15435 				if (yych <= 'z') goto yy801;
15436 				goto yy18;
15437 			}
15438 		}
15439 	}
15440 yy695:
15441 	YYDEBUG(695, *YYCURSOR);
15442 	yyaccept = 2;
15443 	yych = *(YYMARKER = ++YYCURSOR);
15444 	if (yych <= 'L') {
15445 		if (yych <= '-') {
15446 			if (yych == ')') goto yy108;
15447 			if (yych <= ',') goto yy18;
15448 			goto yy282;
15449 		} else {
15450 			if (yych == '/') goto yy282;
15451 			if (yych <= '@') goto yy18;
15452 			goto yy798;
15453 		}
15454 	} else {
15455 		if (yych <= '_') {
15456 			if (yych <= 'M') goto yy843;
15457 			if (yych <= 'Z') goto yy798;
15458 			if (yych <= '^') goto yy18;
15459 			goto yy282;
15460 		} else {
15461 			if (yych <= 'l') {
15462 				if (yych <= '`') goto yy18;
15463 				goto yy801;
15464 			} else {
15465 				if (yych <= 'm') goto yy846;
15466 				if (yych <= 'z') goto yy801;
15467 				goto yy18;
15468 			}
15469 		}
15470 	}
15471 yy696:
15472 	YYDEBUG(696, *YYCURSOR);
15473 	yyaccept = 2;
15474 	yych = *(YYMARKER = ++YYCURSOR);
15475 	if (yych <= 'S') {
15476 		if (yych <= '-') {
15477 			if (yych == ')') goto yy108;
15478 			if (yych <= ',') goto yy18;
15479 			goto yy282;
15480 		} else {
15481 			if (yych == '/') goto yy282;
15482 			if (yych <= '@') goto yy18;
15483 			goto yy798;
15484 		}
15485 	} else {
15486 		if (yych <= '_') {
15487 			if (yych <= 'T') goto yy844;
15488 			if (yych <= 'Z') goto yy798;
15489 			if (yych <= '^') goto yy18;
15490 			goto yy282;
15491 		} else {
15492 			if (yych <= 's') {
15493 				if (yych <= '`') goto yy18;
15494 				goto yy801;
15495 			} else {
15496 				if (yych <= 't') goto yy847;
15497 				if (yych <= 'z') goto yy801;
15498 				goto yy18;
15499 			}
15500 		}
15501 	}
15502 yy697:
15503 	YYDEBUG(697, *YYCURSOR);
15504 	yyaccept = 13;
15505 	yych = *(YYMARKER = ++YYCURSOR);
15506 	if (yych <= '/') goto yy402;
15507 	if (yych <= '5') goto yy848;
15508 	if (yych <= '6') goto yy849;
15509 	goto yy402;
15510 yy698:
15511 	YYDEBUG(698, *YYCURSOR);
15512 	yych = *++YYCURSOR;
15513 	if (yych <= '@') {
15514 		if (yych == ')') goto yy108;
15515 	} else {
15516 		if (yych <= 'Z') goto yy798;
15517 		if (yych <= '`') goto yy699;
15518 		if (yych <= 'z') goto yy798;
15519 	}
15520 yy699:
15521 	YYDEBUG(699, *YYCURSOR);
15522 #line 1049 "parse_date.re"
15523 	{
15524 		DEBUG_OUTPUT("midnight | today");
15525 		TIMELIB_INIT;
15526 		TIMELIB_UNHAVE_TIME();
15527 
15528 		TIMELIB_DEINIT;
15529 		return TIMELIB_RELATIVE;
15530 	}
15531 #line 15532 "<stdout>"
15532 yy700:
15533 	YYDEBUG(700, *YYCURSOR);
15534 	yych = *++YYCURSOR;
15535 	if (yych <= 'R') {
15536 		if (yych <= ')') {
15537 			if (yych <= '(') goto yy18;
15538 			goto yy108;
15539 		} else {
15540 			if (yych <= '@') goto yy18;
15541 			if (yych <= 'Q') goto yy798;
15542 			goto yy850;
15543 		}
15544 	} else {
15545 		if (yych <= 'q') {
15546 			if (yych <= 'Z') goto yy798;
15547 			if (yych <= '`') goto yy18;
15548 			goto yy798;
15549 		} else {
15550 			if (yych <= 'r') goto yy850;
15551 			if (yych <= 'z') goto yy798;
15552 			goto yy18;
15553 		}
15554 	}
15555 yy701:
15556 	YYDEBUG(701, *YYCURSOR);
15557 	yych = *++YYCURSOR;
15558 	if (yych <= 'A') {
15559 		if (yych == ')') goto yy108;
15560 		if (yych <= '@') goto yy18;
15561 		goto yy851;
15562 	} else {
15563 		if (yych <= '`') {
15564 			if (yych <= 'Z') goto yy798;
15565 			goto yy18;
15566 		} else {
15567 			if (yych <= 'a') goto yy851;
15568 			if (yych <= 'z') goto yy798;
15569 			goto yy18;
15570 		}
15571 	}
15572 yy702:
15573 	YYDEBUG(702, *YYCURSOR);
15574 	yyaccept = 17;
15575 	yych = *(YYMARKER = ++YYCURSOR);
15576 	if (yych <= '/') {
15577 		if (yych <= ',') {
15578 			if (yych == ')') goto yy108;
15579 			goto yy699;
15580 		} else {
15581 			if (yych == '.') goto yy699;
15582 			goto yy282;
15583 		}
15584 	} else {
15585 		if (yych <= '^') {
15586 			if (yych <= '@') goto yy699;
15587 			if (yych <= 'Z') goto yy798;
15588 			goto yy699;
15589 		} else {
15590 			if (yych <= '_') goto yy282;
15591 			if (yych <= '`') goto yy699;
15592 			if (yych <= 'z') goto yy801;
15593 			goto yy699;
15594 		}
15595 	}
15596 yy703:
15597 	YYDEBUG(703, *YYCURSOR);
15598 	yyaccept = 2;
15599 	yych = *(YYMARKER = ++YYCURSOR);
15600 	if (yych <= 'Q') {
15601 		if (yych <= '-') {
15602 			if (yych == ')') goto yy108;
15603 			if (yych <= ',') goto yy18;
15604 			goto yy282;
15605 		} else {
15606 			if (yych == '/') goto yy282;
15607 			if (yych <= '@') goto yy18;
15608 			goto yy798;
15609 		}
15610 	} else {
15611 		if (yych <= '_') {
15612 			if (yych <= 'R') goto yy850;
15613 			if (yych <= 'Z') goto yy798;
15614 			if (yych <= '^') goto yy18;
15615 			goto yy282;
15616 		} else {
15617 			if (yych <= 'q') {
15618 				if (yych <= '`') goto yy18;
15619 				goto yy801;
15620 			} else {
15621 				if (yych <= 'r') goto yy852;
15622 				if (yych <= 'z') goto yy801;
15623 				goto yy18;
15624 			}
15625 		}
15626 	}
15627 yy704:
15628 	YYDEBUG(704, *YYCURSOR);
15629 	yyaccept = 2;
15630 	yych = *(YYMARKER = ++YYCURSOR);
15631 	if (yych <= '@') {
15632 		if (yych <= ',') {
15633 			if (yych == ')') goto yy108;
15634 			goto yy18;
15635 		} else {
15636 			if (yych == '.') goto yy18;
15637 			if (yych <= '/') goto yy282;
15638 			goto yy18;
15639 		}
15640 	} else {
15641 		if (yych <= '_') {
15642 			if (yych <= 'A') goto yy851;
15643 			if (yych <= 'Z') goto yy798;
15644 			if (yych <= '^') goto yy18;
15645 			goto yy282;
15646 		} else {
15647 			if (yych <= '`') goto yy18;
15648 			if (yych <= 'a') goto yy853;
15649 			if (yych <= 'z') goto yy801;
15650 			goto yy18;
15651 		}
15652 	}
15653 yy705:
15654 	YYDEBUG(705, *YYCURSOR);
15655 	yych = *++YYCURSOR;
15656 	if (yych <= 'S') {
15657 		if (yych <= ')') {
15658 			if (yych <= '(') goto yy18;
15659 			goto yy108;
15660 		} else {
15661 			if (yych <= '@') goto yy18;
15662 			if (yych <= 'R') goto yy798;
15663 			goto yy854;
15664 		}
15665 	} else {
15666 		if (yych <= 'r') {
15667 			if (yych <= 'Z') goto yy798;
15668 			if (yych <= '`') goto yy18;
15669 			goto yy798;
15670 		} else {
15671 			if (yych <= 's') goto yy854;
15672 			if (yych <= 'z') goto yy798;
15673 			goto yy18;
15674 		}
15675 	}
15676 yy706:
15677 	YYDEBUG(706, *YYCURSOR);
15678 	yych = *++YYCURSOR;
15679 	if (yych <= 'A') {
15680 		if (yych == ')') goto yy108;
15681 		if (yych <= '@') goto yy18;
15682 		goto yy855;
15683 	} else {
15684 		if (yych <= '`') {
15685 			if (yych <= 'Z') goto yy798;
15686 			goto yy18;
15687 		} else {
15688 			if (yych <= 'a') goto yy855;
15689 			if (yych <= 'z') goto yy798;
15690 			goto yy18;
15691 		}
15692 	}
15693 yy707:
15694 	YYDEBUG(707, *YYCURSOR);
15695 	yyaccept = 2;
15696 	yych = *(YYMARKER = ++YYCURSOR);
15697 	if (yych <= 'R') {
15698 		if (yych <= '-') {
15699 			if (yych == ')') goto yy108;
15700 			if (yych <= ',') goto yy18;
15701 			goto yy282;
15702 		} else {
15703 			if (yych == '/') goto yy282;
15704 			if (yych <= '@') goto yy18;
15705 			goto yy798;
15706 		}
15707 	} else {
15708 		if (yych <= '_') {
15709 			if (yych <= 'S') goto yy854;
15710 			if (yych <= 'Z') goto yy798;
15711 			if (yych <= '^') goto yy18;
15712 			goto yy282;
15713 		} else {
15714 			if (yych <= 'r') {
15715 				if (yych <= '`') goto yy18;
15716 				goto yy801;
15717 			} else {
15718 				if (yych <= 's') goto yy856;
15719 				if (yych <= 'z') goto yy801;
15720 				goto yy18;
15721 			}
15722 		}
15723 	}
15724 yy708:
15725 	YYDEBUG(708, *YYCURSOR);
15726 	yyaccept = 2;
15727 	yych = *(YYMARKER = ++YYCURSOR);
15728 	if (yych <= '@') {
15729 		if (yych <= ',') {
15730 			if (yych == ')') goto yy108;
15731 			goto yy18;
15732 		} else {
15733 			if (yych == '.') goto yy18;
15734 			if (yych <= '/') goto yy282;
15735 			goto yy18;
15736 		}
15737 	} else {
15738 		if (yych <= '_') {
15739 			if (yych <= 'A') goto yy855;
15740 			if (yych <= 'Z') goto yy798;
15741 			if (yych <= '^') goto yy18;
15742 			goto yy282;
15743 		} else {
15744 			if (yych <= '`') goto yy18;
15745 			if (yych <= 'a') goto yy857;
15746 			if (yych <= 'z') goto yy801;
15747 			goto yy18;
15748 		}
15749 	}
15750 yy709:
15751 	YYDEBUG(709, *YYCURSOR);
15752 	yych = *++YYCURSOR;
15753 	if (yych <= 'R') {
15754 		if (yych <= ')') {
15755 			if (yych <= '(') goto yy18;
15756 			goto yy108;
15757 		} else {
15758 			if (yych <= '@') goto yy18;
15759 			if (yych <= 'Q') goto yy798;
15760 			goto yy858;
15761 		}
15762 	} else {
15763 		if (yych <= 'q') {
15764 			if (yych <= 'Z') goto yy798;
15765 			if (yych <= '`') goto yy18;
15766 			goto yy798;
15767 		} else {
15768 			if (yych <= 'r') goto yy858;
15769 			if (yych <= 'z') goto yy798;
15770 			goto yy18;
15771 		}
15772 	}
15773 yy710:
15774 	YYDEBUG(710, *YYCURSOR);
15775 	yyaccept = 2;
15776 	yych = *(YYMARKER = ++YYCURSOR);
15777 	if (yych <= 'Q') {
15778 		if (yych <= '-') {
15779 			if (yych == ')') goto yy108;
15780 			if (yych <= ',') goto yy18;
15781 			goto yy282;
15782 		} else {
15783 			if (yych == '/') goto yy282;
15784 			if (yych <= '@') goto yy18;
15785 			goto yy798;
15786 		}
15787 	} else {
15788 		if (yych <= '_') {
15789 			if (yych <= 'R') goto yy858;
15790 			if (yych <= 'Z') goto yy798;
15791 			if (yych <= '^') goto yy18;
15792 			goto yy282;
15793 		} else {
15794 			if (yych <= 'q') {
15795 				if (yych <= '`') goto yy18;
15796 				goto yy801;
15797 			} else {
15798 				if (yych <= 'r') goto yy859;
15799 				if (yych <= 'z') goto yy801;
15800 				goto yy18;
15801 			}
15802 		}
15803 	}
15804 yy711:
15805 	YYDEBUG(711, *YYCURSOR);
15806 	yych = *++YYCURSOR;
15807 	if (yych <= '/') goto yy56;
15808 	if (yych <= '0') goto yy860;
15809 	if (yych <= '1') goto yy861;
15810 	goto yy56;
15811 yy712:
15812 	YYDEBUG(712, *YYCURSOR);
15813 	yych = *++YYCURSOR;
15814 	if (yych <= '/') goto yy56;
15815 	if (yych <= '9') goto yy862;
15816 	goto yy56;
15817 yy713:
15818 	YYDEBUG(713, *YYCURSOR);
15819 	yyaccept = 18;
15820 	yych = *(YYMARKER = ++YYCURSOR);
15821 	if (yych <= '/') goto yy714;
15822 	if (yych <= '9') goto yy862;
15823 yy714:
15824 	YYDEBUG(714, *YYCURSOR);
15825 #line 1413 "parse_date.re"
15826 	{
15827 		int length = 0;
15828 		DEBUG_OUTPUT("pointed date YY");
15829 		TIMELIB_INIT;
15830 		TIMELIB_HAVE_DATE();
15831 		s->time->d = timelib_get_nr((char **) &ptr, 2);
15832 		s->time->m = timelib_get_nr((char **) &ptr, 2);
15833 		s->time->y = timelib_get_nr_ex((char **) &ptr, 2, &length);
15834 		TIMELIB_PROCESS_YEAR(s->time->y, length);
15835 		TIMELIB_DEINIT;
15836 		return TIMELIB_DATE_FULL_POINTED;
15837 	}
15838 #line 15839 "<stdout>"
15839 yy715:
15840 	YYDEBUG(715, *YYCURSOR);
15841 	yyaccept = 16;
15842 	yych = *(YYMARKER = ++YYCURSOR);
15843 	if (yych <= 'n') {
15844 		if (yych <= '/') goto yy547;
15845 		if (yych <= '9') goto yy862;
15846 		if (yych <= 'm') goto yy547;
15847 	} else {
15848 		if (yych <= 'r') {
15849 			if (yych <= 'q') goto yy547;
15850 		} else {
15851 			if (yych <= 's') goto yy717;
15852 			if (yych <= 't') goto yy718;
15853 			goto yy547;
15854 		}
15855 	}
15856 yy716:
15857 	YYDEBUG(716, *YYCURSOR);
15858 	yych = *++YYCURSOR;
15859 	if (yych == 'd') goto yy863;
15860 	goto yy56;
15861 yy717:
15862 	YYDEBUG(717, *YYCURSOR);
15863 	yych = *++YYCURSOR;
15864 	if (yych == 't') goto yy863;
15865 	goto yy56;
15866 yy718:
15867 	YYDEBUG(718, *YYCURSOR);
15868 	yych = *++YYCURSOR;
15869 	if (yych == 'h') goto yy863;
15870 	goto yy56;
15871 yy719:
15872 	YYDEBUG(719, *YYCURSOR);
15873 	yych = *++YYCURSOR;
15874 	if (yych <= '/') goto yy56;
15875 	if (yych <= '9') goto yy864;
15876 	goto yy56;
15877 yy720:
15878 	YYDEBUG(720, *YYCURSOR);
15879 	yyaccept = 5;
15880 	yych = *(YYMARKER = ++YYCURSOR);
15881 	if (yych == '.') goto yy719;
15882 	if (yych <= '/') goto yy209;
15883 	if (yych <= '9') goto yy862;
15884 	goto yy209;
15885 yy721:
15886 	YYDEBUG(721, *YYCURSOR);
15887 	yych = *++YYCURSOR;
15888 	if (yych <= '/') goto yy214;
15889 	if (yych <= '9') goto yy866;
15890 	goto yy214;
15891 yy722:
15892 	YYDEBUG(722, *YYCURSOR);
15893 	yych = *++YYCURSOR;
15894 	if (yych <= '/') goto yy56;
15895 	if (yych <= '9') goto yy867;
15896 	goto yy56;
15897 yy723:
15898 	YYDEBUG(723, *YYCURSOR);
15899 	yych = *++YYCURSOR;
15900 	if (yych <= '/') goto yy56;
15901 	if (yych <= '2') goto yy868;
15902 	if (yych <= '3') goto yy869;
15903 	if (yych <= '9') goto yy549;
15904 	goto yy56;
15905 yy724:
15906 	YYDEBUG(724, *YYCURSOR);
15907 	++YYCURSOR;
15908 	if ((YYLIMIT - YYCURSOR) < 9) YYFILL(9);
15909 	yych = *YYCURSOR;
15910 yy725:
15911 	YYDEBUG(725, *YYCURSOR);
15912 	switch (yych) {
15913 	case '\t':
15914 	case ' ':
15915 	case '-':
15916 	case '.':	goto yy724;
15917 	case 'A':
15918 	case 'a':	goto yy576;
15919 	case 'D':
15920 	case 'd':	goto yy742;
15921 	case 'F':
15922 	case 'f':	goto yy743;
15923 	case 'I':	goto yy579;
15924 	case 'J':
15925 	case 'j':	goto yy581;
15926 	case 'M':
15927 	case 'm':	goto yy744;
15928 	case 'N':
15929 	case 'n':	goto yy583;
15930 	case 'O':
15931 	case 'o':	goto yy584;
15932 	case 'S':
15933 	case 's':	goto yy745;
15934 	case 'V':	goto yy586;
15935 	case 'X':	goto yy588;
15936 	default:	goto yy56;
15937 	}
15938 yy726:
15939 	YYDEBUG(726, *YYCURSOR);
15940 	yyaccept = 19;
15941 	yych = *(YYMARKER = ++YYCURSOR);
15942 	if (yych == '-') goto yy870;
15943 	if (yych <= '/') goto yy727;
15944 	if (yych <= '9') goto yy871;
15945 yy727:
15946 	YYDEBUG(727, *YYCURSOR);
15947 #line 1358 "parse_date.re"
15948 	{
15949 		int length = 0;
15950 		DEBUG_OUTPUT("gnudateshorter");
15951 		TIMELIB_INIT;
15952 		TIMELIB_HAVE_DATE();
15953 		s->time->y = timelib_get_nr_ex((char **) &ptr, 4, &length);
15954 		s->time->m = timelib_get_nr((char **) &ptr, 2);
15955 		s->time->d = 1;
15956 		TIMELIB_PROCESS_YEAR(s->time->y, length);
15957 		TIMELIB_DEINIT;
15958 		return TIMELIB_ISO_DATE;
15959 	}
15960 #line 15961 "<stdout>"
15961 yy728:
15962 	YYDEBUG(728, *YYCURSOR);
15963 	yyaccept = 19;
15964 	yych = *(YYMARKER = ++YYCURSOR);
15965 	if (yych == '-') goto yy870;
15966 	if (yych <= '/') goto yy727;
15967 	if (yych <= '2') goto yy871;
15968 	goto yy727;
15969 yy729:
15970 	YYDEBUG(729, *YYCURSOR);
15971 	yyaccept = 19;
15972 	yych = *(YYMARKER = ++YYCURSOR);
15973 	if (yych == '-') goto yy870;
15974 	goto yy727;
15975 yy730:
15976 	YYDEBUG(730, *YYCURSOR);
15977 	yych = *++YYCURSOR;
15978 	if (yych <= 'U') {
15979 		if (yych == 'P') goto yy872;
15980 		if (yych <= 'T') goto yy56;
15981 		goto yy873;
15982 	} else {
15983 		if (yych <= 'p') {
15984 			if (yych <= 'o') goto yy56;
15985 			goto yy872;
15986 		} else {
15987 			if (yych == 'u') goto yy873;
15988 			goto yy56;
15989 		}
15990 	}
15991 yy731:
15992 	YYDEBUG(731, *YYCURSOR);
15993 	yych = *++YYCURSOR;
15994 	if (yych == 'E') goto yy874;
15995 	if (yych == 'e') goto yy874;
15996 	goto yy56;
15997 yy732:
15998 	YYDEBUG(732, *YYCURSOR);
15999 	yych = *++YYCURSOR;
16000 	if (yych == 'E') goto yy875;
16001 	if (yych == 'e') goto yy875;
16002 	goto yy56;
16003 yy733:
16004 	YYDEBUG(733, *YYCURSOR);
16005 	yych = *++YYCURSOR;
16006 	if (yych <= 'U') {
16007 		if (yych == 'A') goto yy876;
16008 		if (yych <= 'T') goto yy56;
16009 		goto yy877;
16010 	} else {
16011 		if (yych <= 'a') {
16012 			if (yych <= '`') goto yy56;
16013 			goto yy876;
16014 		} else {
16015 			if (yych == 'u') goto yy877;
16016 			goto yy56;
16017 		}
16018 	}
16019 yy734:
16020 	YYDEBUG(734, *YYCURSOR);
16021 	yych = *++YYCURSOR;
16022 	if (yych == 'A') goto yy878;
16023 	if (yych == 'a') goto yy878;
16024 	goto yy56;
16025 yy735:
16026 	YYDEBUG(735, *YYCURSOR);
16027 	yych = *++YYCURSOR;
16028 	if (yych == 'O') goto yy879;
16029 	if (yych == 'o') goto yy879;
16030 	goto yy56;
16031 yy736:
16032 	YYDEBUG(736, *YYCURSOR);
16033 	yych = *++YYCURSOR;
16034 	if (yych == 'C') goto yy880;
16035 	if (yych == 'c') goto yy880;
16036 	goto yy56;
16037 yy737:
16038 	YYDEBUG(737, *YYCURSOR);
16039 	yych = *++YYCURSOR;
16040 	if (yych == 'E') goto yy881;
16041 	if (yych == 'e') goto yy881;
16042 	goto yy56;
16043 yy738:
16044 	YYDEBUG(738, *YYCURSOR);
16045 	yych = *++YYCURSOR;
16046 	if (yych <= '/') goto yy56;
16047 	if (yych <= '0') goto yy770;
16048 	if (yych <= '4') goto yy771;
16049 	if (yych <= '5') goto yy772;
16050 	goto yy56;
16051 yy739:
16052 	YYDEBUG(739, *YYCURSOR);
16053 	yych = *++YYCURSOR;
16054 	if (yych <= '/') goto yy56;
16055 	if (yych <= '0') goto yy882;
16056 	if (yych <= '9') goto yy883;
16057 	goto yy56;
16058 yy740:
16059 	YYDEBUG(740, *YYCURSOR);
16060 	yych = *++YYCURSOR;
16061 	if (yych <= '/') goto yy56;
16062 	if (yych <= '9') goto yy883;
16063 	goto yy56;
16064 yy741:
16065 	YYDEBUG(741, *YYCURSOR);
16066 	yych = *++YYCURSOR;
16067 	if (yych <= '/') goto yy56;
16068 	if (yych <= '5') goto yy883;
16069 	if (yych <= '6') goto yy884;
16070 	goto yy56;
16071 yy742:
16072 	YYDEBUG(742, *YYCURSOR);
16073 	yych = *++YYCURSOR;
16074 	if (yych == 'E') goto yy760;
16075 	if (yych == 'e') goto yy760;
16076 	goto yy56;
16077 yy743:
16078 	YYDEBUG(743, *YYCURSOR);
16079 	yych = *++YYCURSOR;
16080 	if (yych == 'E') goto yy761;
16081 	if (yych == 'e') goto yy761;
16082 	goto yy56;
16083 yy744:
16084 	YYDEBUG(744, *YYCURSOR);
16085 	yych = *++YYCURSOR;
16086 	if (yych == 'A') goto yy766;
16087 	if (yych == 'a') goto yy766;
16088 	goto yy56;
16089 yy745:
16090 	YYDEBUG(745, *YYCURSOR);
16091 	yych = *++YYCURSOR;
16092 	if (yych == 'E') goto yy885;
16093 	if (yych == 'e') goto yy885;
16094 	goto yy56;
16095 yy746:
16096 	YYDEBUG(746, *YYCURSOR);
16097 	yych = *++YYCURSOR;
16098 	if (yych <= '.') goto yy56;
16099 	if (yych <= '/') goto yy886;
16100 	if (yych <= '9') goto yy887;
16101 	goto yy56;
16102 yy747:
16103 	YYDEBUG(747, *YYCURSOR);
16104 	yych = *++YYCURSOR;
16105 	if (yych <= '.') goto yy56;
16106 	if (yych <= '/') goto yy886;
16107 	if (yych <= '2') goto yy887;
16108 	goto yy56;
16109 yy748:
16110 	YYDEBUG(748, *YYCURSOR);
16111 	yych = *++YYCURSOR;
16112 	if (yych == '/') goto yy886;
16113 	goto yy56;
16114 yy749:
16115 	YYDEBUG(749, *YYCURSOR);
16116 	yyaccept = 20;
16117 	yych = *(YYMARKER = ++YYCURSOR);
16118 	if (yych <= 'V') {
16119 		if (yych <= 'C') {
16120 			if (yych <= '/') {
16121 				if (yych <= '\t') {
16122 					if (yych >= '\t') goto yy186;
16123 				} else {
16124 					if (yych == ' ') goto yy186;
16125 				}
16126 			} else {
16127 				if (yych <= '2') {
16128 					if (yych <= '0') goto yy888;
16129 					goto yy889;
16130 				} else {
16131 					if (yych <= '3') goto yy891;
16132 					if (yych <= '9') goto yy892;
16133 				}
16134 			}
16135 		} else {
16136 			if (yych <= 'H') {
16137 				if (yych <= 'E') {
16138 					if (yych <= 'D') goto yy186;
16139 				} else {
16140 					if (yych != 'G') goto yy186;
16141 				}
16142 			} else {
16143 				if (yych <= 'M') {
16144 					if (yych >= 'M') goto yy186;
16145 				} else {
16146 					if (yych <= 'R') goto yy750;
16147 					if (yych <= 'U') goto yy186;
16148 				}
16149 			}
16150 		}
16151 	} else {
16152 		if (yych <= 'l') {
16153 			if (yych <= 'd') {
16154 				if (yych <= 'X') {
16155 					if (yych <= 'W') goto yy186;
16156 				} else {
16157 					if (yych <= 'Y') goto yy186;
16158 					if (yych >= 'd') goto yy186;
16159 				}
16160 			} else {
16161 				if (yych <= 'f') {
16162 					if (yych >= 'f') goto yy186;
16163 				} else {
16164 					if (yych == 'h') goto yy186;
16165 				}
16166 			}
16167 		} else {
16168 			if (yych <= 'w') {
16169 				if (yych <= 'r') {
16170 					if (yych <= 'm') goto yy186;
16171 				} else {
16172 					if (yych != 'v') goto yy186;
16173 				}
16174 			} else {
16175 				if (yych <= 'y') {
16176 					if (yych >= 'y') goto yy186;
16177 				} else {
16178 					if (yych == 0xC2) goto yy186;
16179 				}
16180 			}
16181 		}
16182 	}
16183 yy750:
16184 	YYDEBUG(750, *YYCURSOR);
16185 #line 1296 "parse_date.re"
16186 	{
16187 		int tz_not_found;
16188 		DEBUG_OUTPUT("iso8601nocolon");
16189 		TIMELIB_INIT;
16190 		TIMELIB_HAVE_TIME();
16191 		s->time->h = timelib_get_nr((char **) &ptr, 2);
16192 		s->time->i = timelib_get_nr((char **) &ptr, 2);
16193 		s->time->s = timelib_get_nr((char **) &ptr, 2);
16194 
16195 		if (*ptr != '\0') {
16196 			s->time->z = timelib_parse_zone((char **) &ptr, &s->time->dst, s->time, &tz_not_found, s->tzdb, tz_get_wrapper);
16197 			if (tz_not_found) {
16198 				add_error(s, TIMELIB_ERR_TZID_NOT_FOUND, "The timezone could not be found in the database");
16199 			}
16200 		}
16201 		TIMELIB_DEINIT;
16202 		return TIMELIB_ISO_NOCOLON;
16203 	}
16204 #line 16205 "<stdout>"
16205 yy751:
16206 	YYDEBUG(751, *YYCURSOR);
16207 	yyaccept = 20;
16208 	yych = *(YYMARKER = ++YYCURSOR);
16209 	if (yych <= 'V') {
16210 		if (yych <= 'C') {
16211 			if (yych <= ' ') {
16212 				if (yych == '\t') goto yy186;
16213 				if (yych <= 0x1F) goto yy750;
16214 				goto yy186;
16215 			} else {
16216 				if (yych <= '2') {
16217 					if (yych <= '/') goto yy750;
16218 					goto yy889;
16219 				} else {
16220 					if (yych <= '3') goto yy891;
16221 					if (yych <= '9') goto yy892;
16222 					goto yy750;
16223 				}
16224 			}
16225 		} else {
16226 			if (yych <= 'H') {
16227 				if (yych <= 'E') {
16228 					if (yych <= 'D') goto yy186;
16229 					goto yy750;
16230 				} else {
16231 					if (yych == 'G') goto yy750;
16232 					goto yy186;
16233 				}
16234 			} else {
16235 				if (yych <= 'M') {
16236 					if (yych <= 'L') goto yy750;
16237 					goto yy186;
16238 				} else {
16239 					if (yych <= 'R') goto yy750;
16240 					if (yych <= 'U') goto yy186;
16241 					goto yy750;
16242 				}
16243 			}
16244 		}
16245 	} else {
16246 		if (yych <= 'l') {
16247 			if (yych <= 'd') {
16248 				if (yych <= 'X') {
16249 					if (yych <= 'W') goto yy186;
16250 					goto yy750;
16251 				} else {
16252 					if (yych <= 'Y') goto yy186;
16253 					if (yych <= 'c') goto yy750;
16254 					goto yy186;
16255 				}
16256 			} else {
16257 				if (yych <= 'f') {
16258 					if (yych <= 'e') goto yy750;
16259 					goto yy186;
16260 				} else {
16261 					if (yych == 'h') goto yy186;
16262 					goto yy750;
16263 				}
16264 			}
16265 		} else {
16266 			if (yych <= 'w') {
16267 				if (yych <= 'r') {
16268 					if (yych <= 'm') goto yy186;
16269 					goto yy750;
16270 				} else {
16271 					if (yych == 'v') goto yy750;
16272 					goto yy186;
16273 				}
16274 			} else {
16275 				if (yych <= 'y') {
16276 					if (yych <= 'x') goto yy750;
16277 					goto yy186;
16278 				} else {
16279 					if (yych == 0xC2) goto yy186;
16280 					goto yy750;
16281 				}
16282 			}
16283 		}
16284 	}
16285 yy752:
16286 	YYDEBUG(752, *YYCURSOR);
16287 	yyaccept = 20;
16288 	yych = *(YYMARKER = ++YYCURSOR);
16289 	if (yych <= 'W') {
16290 		if (yych <= 'E') {
16291 			if (yych <= ' ') {
16292 				if (yych == '\t') goto yy186;
16293 				if (yych <= 0x1F) goto yy750;
16294 				goto yy186;
16295 			} else {
16296 				if (yych <= '9') {
16297 					if (yych <= '/') goto yy750;
16298 					goto yy892;
16299 				} else {
16300 					if (yych == 'D') goto yy186;
16301 					goto yy750;
16302 				}
16303 			}
16304 		} else {
16305 			if (yych <= 'L') {
16306 				if (yych == 'G') goto yy750;
16307 				if (yych <= 'H') goto yy186;
16308 				goto yy750;
16309 			} else {
16310 				if (yych <= 'R') {
16311 					if (yych <= 'M') goto yy186;
16312 					goto yy750;
16313 				} else {
16314 					if (yych == 'V') goto yy750;
16315 					goto yy186;
16316 				}
16317 			}
16318 		}
16319 	} else {
16320 		if (yych <= 'l') {
16321 			if (yych <= 'd') {
16322 				if (yych == 'Y') goto yy186;
16323 				if (yych <= 'c') goto yy750;
16324 				goto yy186;
16325 			} else {
16326 				if (yych <= 'f') {
16327 					if (yych <= 'e') goto yy750;
16328 					goto yy186;
16329 				} else {
16330 					if (yych == 'h') goto yy186;
16331 					goto yy750;
16332 				}
16333 			}
16334 		} else {
16335 			if (yych <= 'w') {
16336 				if (yych <= 'r') {
16337 					if (yych <= 'm') goto yy186;
16338 					goto yy750;
16339 				} else {
16340 					if (yych == 'v') goto yy750;
16341 					goto yy186;
16342 				}
16343 			} else {
16344 				if (yych <= 'y') {
16345 					if (yych <= 'x') goto yy750;
16346 					goto yy186;
16347 				} else {
16348 					if (yych == 0xC2) goto yy186;
16349 					goto yy750;
16350 				}
16351 			}
16352 		}
16353 	}
16354 yy753:
16355 	YYDEBUG(753, *YYCURSOR);
16356 	yyaccept = 20;
16357 	yych = *(YYMARKER = ++YYCURSOR);
16358 	if (yych <= 'W') {
16359 		if (yych <= 'D') {
16360 			if (yych <= ' ') {
16361 				if (yych == '\t') goto yy186;
16362 				if (yych <= 0x1F) goto yy750;
16363 				goto yy186;
16364 			} else {
16365 				if (yych <= '6') {
16366 					if (yych <= '/') goto yy750;
16367 					goto yy892;
16368 				} else {
16369 					if (yych <= '9') goto yy893;
16370 					if (yych <= 'C') goto yy750;
16371 					goto yy186;
16372 				}
16373 			}
16374 		} else {
16375 			if (yych <= 'L') {
16376 				if (yych <= 'F') {
16377 					if (yych <= 'E') goto yy750;
16378 					goto yy186;
16379 				} else {
16380 					if (yych == 'H') goto yy186;
16381 					goto yy750;
16382 				}
16383 			} else {
16384 				if (yych <= 'R') {
16385 					if (yych <= 'M') goto yy186;
16386 					goto yy750;
16387 				} else {
16388 					if (yych == 'V') goto yy750;
16389 					goto yy186;
16390 				}
16391 			}
16392 		}
16393 	} else {
16394 		if (yych <= 'l') {
16395 			if (yych <= 'd') {
16396 				if (yych == 'Y') goto yy186;
16397 				if (yych <= 'c') goto yy750;
16398 				goto yy186;
16399 			} else {
16400 				if (yych <= 'f') {
16401 					if (yych <= 'e') goto yy750;
16402 					goto yy186;
16403 				} else {
16404 					if (yych == 'h') goto yy186;
16405 					goto yy750;
16406 				}
16407 			}
16408 		} else {
16409 			if (yych <= 'w') {
16410 				if (yych <= 'r') {
16411 					if (yych <= 'm') goto yy186;
16412 					goto yy750;
16413 				} else {
16414 					if (yych == 'v') goto yy750;
16415 					goto yy186;
16416 				}
16417 			} else {
16418 				if (yych <= 'y') {
16419 					if (yych <= 'x') goto yy750;
16420 					goto yy186;
16421 				} else {
16422 					if (yych == 0xC2) goto yy186;
16423 					goto yy750;
16424 				}
16425 			}
16426 		}
16427 	}
16428 yy754:
16429 	YYDEBUG(754, *YYCURSOR);
16430 	yyaccept = 20;
16431 	yych = *(YYMARKER = ++YYCURSOR);
16432 	if (yych <= 'W') {
16433 		if (yych <= 'E') {
16434 			if (yych <= ' ') {
16435 				if (yych == '\t') goto yy186;
16436 				if (yych <= 0x1F) goto yy750;
16437 				goto yy186;
16438 			} else {
16439 				if (yych <= '9') {
16440 					if (yych <= '/') goto yy750;
16441 					goto yy893;
16442 				} else {
16443 					if (yych == 'D') goto yy186;
16444 					goto yy750;
16445 				}
16446 			}
16447 		} else {
16448 			if (yych <= 'L') {
16449 				if (yych == 'G') goto yy750;
16450 				if (yych <= 'H') goto yy186;
16451 				goto yy750;
16452 			} else {
16453 				if (yych <= 'R') {
16454 					if (yych <= 'M') goto yy186;
16455 					goto yy750;
16456 				} else {
16457 					if (yych == 'V') goto yy750;
16458 					goto yy186;
16459 				}
16460 			}
16461 		}
16462 	} else {
16463 		if (yych <= 'l') {
16464 			if (yych <= 'd') {
16465 				if (yych == 'Y') goto yy186;
16466 				if (yych <= 'c') goto yy750;
16467 				goto yy186;
16468 			} else {
16469 				if (yych <= 'f') {
16470 					if (yych <= 'e') goto yy750;
16471 					goto yy186;
16472 				} else {
16473 					if (yych == 'h') goto yy186;
16474 					goto yy750;
16475 				}
16476 			}
16477 		} else {
16478 			if (yych <= 'w') {
16479 				if (yych <= 'r') {
16480 					if (yych <= 'm') goto yy186;
16481 					goto yy750;
16482 				} else {
16483 					if (yych == 'v') goto yy750;
16484 					goto yy186;
16485 				}
16486 			} else {
16487 				if (yych <= 'y') {
16488 					if (yych <= 'x') goto yy750;
16489 					goto yy186;
16490 				} else {
16491 					if (yych == 0xC2) goto yy186;
16492 					goto yy750;
16493 				}
16494 			}
16495 		}
16496 	}
16497 yy755:
16498 	YYDEBUG(755, *YYCURSOR);
16499 	yych = *++YYCURSOR;
16500 	if (yych <= '/') goto yy186;
16501 	if (yych <= '9') goto yy893;
16502 	goto yy186;
16503 yy756:
16504 	YYDEBUG(756, *YYCURSOR);
16505 	yych = *++YYCURSOR;
16506 	if (yych <= '/') goto yy56;
16507 	if (yych <= '9') goto yy894;
16508 	goto yy56;
16509 yy757:
16510 	YYDEBUG(757, *YYCURSOR);
16511 	yych = *++YYCURSOR;
16512 	if (yych <= '/') goto yy56;
16513 	if (yych <= '2') goto yy894;
16514 	goto yy56;
16515 yy758:
16516 	YYDEBUG(758, *YYCURSOR);
16517 	yych = *++YYCURSOR;
16518 	if (yych == 'R') goto yy895;
16519 	if (yych == 'r') goto yy895;
16520 	goto yy56;
16521 yy759:
16522 	YYDEBUG(759, *YYCURSOR);
16523 	yych = *++YYCURSOR;
16524 	if (yych == 'G') goto yy896;
16525 	if (yych == 'g') goto yy896;
16526 	goto yy56;
16527 yy760:
16528 	YYDEBUG(760, *YYCURSOR);
16529 	yych = *++YYCURSOR;
16530 	if (yych == 'C') goto yy897;
16531 	if (yych == 'c') goto yy897;
16532 	goto yy56;
16533 yy761:
16534 	YYDEBUG(761, *YYCURSOR);
16535 	yych = *++YYCURSOR;
16536 	if (yych == 'B') goto yy898;
16537 	if (yych == 'b') goto yy898;
16538 	goto yy56;
16539 yy762:
16540 	YYDEBUG(762, *YYCURSOR);
16541 	yych = *++YYCURSOR;
16542 	if (yych != 'I') goto yy580;
16543 yy763:
16544 	YYDEBUG(763, *YYCURSOR);
16545 	++YYCURSOR;
16546 	goto yy580;
16547 yy764:
16548 	YYDEBUG(764, *YYCURSOR);
16549 	yych = *++YYCURSOR;
16550 	if (yych == 'N') goto yy899;
16551 	if (yych == 'n') goto yy899;
16552 	goto yy56;
16553 yy765:
16554 	YYDEBUG(765, *YYCURSOR);
16555 	yych = *++YYCURSOR;
16556 	if (yych <= 'N') {
16557 		if (yych == 'L') goto yy900;
16558 		if (yych <= 'M') goto yy56;
16559 		goto yy901;
16560 	} else {
16561 		if (yych <= 'l') {
16562 			if (yych <= 'k') goto yy56;
16563 			goto yy900;
16564 		} else {
16565 			if (yych == 'n') goto yy901;
16566 			goto yy56;
16567 		}
16568 	}
16569 yy766:
16570 	YYDEBUG(766, *YYCURSOR);
16571 	yych = *++YYCURSOR;
16572 	if (yych <= 'Y') {
16573 		if (yych == 'R') goto yy902;
16574 		if (yych <= 'X') goto yy56;
16575 		goto yy763;
16576 	} else {
16577 		if (yych <= 'r') {
16578 			if (yych <= 'q') goto yy56;
16579 			goto yy902;
16580 		} else {
16581 			if (yych == 'y') goto yy763;
16582 			goto yy56;
16583 		}
16584 	}
16585 yy767:
16586 	YYDEBUG(767, *YYCURSOR);
16587 	yych = *++YYCURSOR;
16588 	if (yych == 'V') goto yy897;
16589 	if (yych == 'v') goto yy897;
16590 	goto yy56;
16591 yy768:
16592 	YYDEBUG(768, *YYCURSOR);
16593 	yych = *++YYCURSOR;
16594 	if (yych == 'T') goto yy903;
16595 	if (yych == 't') goto yy903;
16596 	goto yy56;
16597 yy769:
16598 	YYDEBUG(769, *YYCURSOR);
16599 	yych = *++YYCURSOR;
16600 	if (yych <= 'P') {
16601 		if (yych == 'C') goto yy425;
16602 		if (yych <= 'O') goto yy56;
16603 		goto yy904;
16604 	} else {
16605 		if (yych <= 'c') {
16606 			if (yych <= 'b') goto yy56;
16607 			goto yy425;
16608 		} else {
16609 			if (yych == 'p') goto yy904;
16610 			goto yy56;
16611 		}
16612 	}
16613 yy770:
16614 	YYDEBUG(770, *YYCURSOR);
16615 	yych = *++YYCURSOR;
16616 	if (yych <= '0') goto yy56;
16617 	if (yych <= '9') goto yy905;
16618 	goto yy56;
16619 yy771:
16620 	YYDEBUG(771, *YYCURSOR);
16621 	yych = *++YYCURSOR;
16622 	if (yych <= '/') goto yy56;
16623 	if (yych <= '9') goto yy905;
16624 	goto yy56;
16625 yy772:
16626 	YYDEBUG(772, *YYCURSOR);
16627 	yych = *++YYCURSOR;
16628 	if (yych <= '/') goto yy56;
16629 	if (yych <= '3') goto yy905;
16630 	goto yy56;
16631 yy773:
16632 	YYDEBUG(773, *YYCURSOR);
16633 	yych = *++YYCURSOR;
16634 	if (yych <= '2') {
16635 		if (yych <= '/') goto yy186;
16636 		if (yych <= '0') goto yy888;
16637 		goto yy889;
16638 	} else {
16639 		if (yych <= '3') goto yy891;
16640 		if (yych <= '9') goto yy892;
16641 		goto yy186;
16642 	}
16643 yy774:
16644 	YYDEBUG(774, *YYCURSOR);
16645 	yych = *++YYCURSOR;
16646 	if (yych <= '/') goto yy186;
16647 	if (yych <= '2') goto yy889;
16648 	if (yych <= '3') goto yy891;
16649 	if (yych <= '9') goto yy892;
16650 	goto yy186;
16651 yy775:
16652 	YYDEBUG(775, *YYCURSOR);
16653 	yych = *++YYCURSOR;
16654 	if (yych <= '/') goto yy186;
16655 	if (yych <= '9') goto yy892;
16656 	goto yy186;
16657 yy776:
16658 	YYDEBUG(776, *YYCURSOR);
16659 	yych = *++YYCURSOR;
16660 	if (yych <= '/') goto yy186;
16661 	if (yych <= '6') goto yy892;
16662 	if (yych <= '9') goto yy893;
16663 	goto yy186;
16664 yy777:
16665 	YYDEBUG(777, *YYCURSOR);
16666 	yych = *++YYCURSOR;
16667 	if (yych == 'T') goto yy243;
16668 	if (yych == 't') goto yy243;
16669 	goto yy56;
16670 yy778:
16671 	YYDEBUG(778, *YYCURSOR);
16672 	yych = *++YYCURSOR;
16673 	if (yych == 'N') goto yy779;
16674 	if (yych != 'n') goto yy56;
16675 yy779:
16676 	YYDEBUG(779, *YYCURSOR);
16677 	yych = *++YYCURSOR;
16678 	if (yych == 'I') goto yy907;
16679 	if (yych == 'i') goto yy907;
16680 	goto yy56;
16681 yy780:
16682 	YYDEBUG(780, *YYCURSOR);
16683 	yych = *++YYCURSOR;
16684 	if (yych == 'Y') goto yy595;
16685 	if (yych == 'y') goto yy595;
16686 	goto yy56;
16687 yy781:
16688 	YYDEBUG(781, *YYCURSOR);
16689 	++YYCURSOR;
16690 	goto yy241;
16691 yy782:
16692 	YYDEBUG(782, *YYCURSOR);
16693 	yych = *++YYCURSOR;
16694 	if (yych == 'R') goto yy908;
16695 	if (yych == 'r') goto yy908;
16696 	goto yy56;
16697 yy783:
16698 	YYDEBUG(783, *YYCURSOR);
16699 	yych = *++YYCURSOR;
16700 	if (yych == 'S') goto yy909;
16701 	if (yych == 's') goto yy909;
16702 	goto yy56;
16703 yy784:
16704 	YYDEBUG(784, *YYCURSOR);
16705 	yych = *++YYCURSOR;
16706 	if (yych == 'E') goto yy407;
16707 	if (yych == 'e') goto yy407;
16708 	goto yy56;
16709 yy785:
16710 	YYDEBUG(785, *YYCURSOR);
16711 	yych = *++YYCURSOR;
16712 	if (yych == 'E') goto yy910;
16713 	if (yych == 'e') goto yy910;
16714 	goto yy56;
16715 yy786:
16716 	YYDEBUG(786, *YYCURSOR);
16717 	yych = *++YYCURSOR;
16718 	if (yych == 'D') goto yy407;
16719 	if (yych == 'd') goto yy407;
16720 	goto yy56;
16721 yy787:
16722 	YYDEBUG(787, *YYCURSOR);
16723 	yyaccept = 5;
16724 	yych = *(YYMARKER = ++YYCURSOR);
16725 	if (yych <= '9') {
16726 		if (yych <= ' ') {
16727 			if (yych == '\t') goto yy619;
16728 			if (yych <= 0x1F) goto yy209;
16729 			goto yy619;
16730 		} else {
16731 			if (yych == '.') goto yy719;
16732 			if (yych <= '/') goto yy209;
16733 			goto yy862;
16734 		}
16735 	} else {
16736 		if (yych <= 'P') {
16737 			if (yych == 'A') goto yy101;
16738 			if (yych <= 'O') goto yy209;
16739 			goto yy101;
16740 		} else {
16741 			if (yych <= 'a') {
16742 				if (yych <= '`') goto yy209;
16743 				goto yy101;
16744 			} else {
16745 				if (yych == 'p') goto yy101;
16746 				goto yy209;
16747 			}
16748 		}
16749 	}
16750 yy788:
16751 	YYDEBUG(788, *YYCURSOR);
16752 	yyaccept = 5;
16753 	yych = *(YYMARKER = ++YYCURSOR);
16754 	if (yych <= '@') {
16755 		if (yych <= 0x1F) {
16756 			if (yych == '\t') goto yy619;
16757 			goto yy209;
16758 		} else {
16759 			if (yych <= ' ') goto yy619;
16760 			if (yych == '.') goto yy719;
16761 			goto yy209;
16762 		}
16763 	} else {
16764 		if (yych <= '`') {
16765 			if (yych <= 'A') goto yy101;
16766 			if (yych == 'P') goto yy101;
16767 			goto yy209;
16768 		} else {
16769 			if (yych <= 'a') goto yy101;
16770 			if (yych == 'p') goto yy101;
16771 			goto yy209;
16772 		}
16773 	}
16774 yy789:
16775 	YYDEBUG(789, *YYCURSOR);
16776 	yyaccept = 5;
16777 	yych = *(YYMARKER = ++YYCURSOR);
16778 	if (yych == '.') goto yy719;
16779 	if (yych <= '/') goto yy209;
16780 	if (yych <= '9') goto yy911;
16781 	goto yy209;
16782 yy790:
16783 	YYDEBUG(790, *YYCURSOR);
16784 	yyaccept = 5;
16785 	yych = *(YYMARKER = ++YYCURSOR);
16786 	if (yych == '.') goto yy719;
16787 	if (yych == '0') goto yy911;
16788 	goto yy209;
16789 yy791:
16790 	YYDEBUG(791, *YYCURSOR);
16791 	yyaccept = 16;
16792 	yych = *(YYMARKER = ++YYCURSOR);
16793 	if (yych <= 'n') {
16794 		if (yych <= '/') goto yy547;
16795 		if (yych <= '9') goto yy793;
16796 		if (yych <= 'm') goto yy547;
16797 		goto yy716;
16798 	} else {
16799 		if (yych <= 'r') {
16800 			if (yych <= 'q') goto yy547;
16801 			goto yy716;
16802 		} else {
16803 			if (yych <= 's') goto yy717;
16804 			if (yych <= 't') goto yy718;
16805 			goto yy547;
16806 		}
16807 	}
16808 yy792:
16809 	YYDEBUG(792, *YYCURSOR);
16810 	yyaccept = 16;
16811 	yych = *(YYMARKER = ++YYCURSOR);
16812 	if (yych <= 'n') {
16813 		if (yych <= '/') goto yy547;
16814 		if (yych <= '1') goto yy793;
16815 		if (yych <= 'm') goto yy547;
16816 		goto yy716;
16817 	} else {
16818 		if (yych <= 'r') {
16819 			if (yych <= 'q') goto yy547;
16820 			goto yy716;
16821 		} else {
16822 			if (yych <= 's') goto yy717;
16823 			if (yych <= 't') goto yy718;
16824 			goto yy547;
16825 		}
16826 	}
16827 yy793:
16828 	YYDEBUG(793, *YYCURSOR);
16829 	yyaccept = 16;
16830 	yych = *(YYMARKER = ++YYCURSOR);
16831 	if (yych <= 'q') {
16832 		if (yych == 'n') goto yy716;
16833 		goto yy547;
16834 	} else {
16835 		if (yych <= 'r') goto yy716;
16836 		if (yych <= 's') goto yy717;
16837 		if (yych <= 't') goto yy718;
16838 		goto yy547;
16839 	}
16840 yy794:
16841 	YYDEBUG(794, *YYCURSOR);
16842 	yych = *++YYCURSOR;
16843 	if (yych <= '/') goto yy56;
16844 	if (yych <= '2') goto yy912;
16845 	if (yych <= '3') goto yy913;
16846 	if (yych <= '9') goto yy793;
16847 	goto yy56;
16848 yy795:
16849 	YYDEBUG(795, *YYCURSOR);
16850 	yych = *++YYCURSOR;
16851 	if (yych == '-') goto yy914;
16852 	goto yy56;
16853 yy796:
16854 	YYDEBUG(796, *YYCURSOR);
16855 	yych = *++YYCURSOR;
16856 	if (yych <= 'S') {
16857 		if (yych == '-') goto yy914;
16858 		goto yy56;
16859 	} else {
16860 		if (yych <= 'T') goto yy795;
16861 		if (yych == 't') goto yy795;
16862 		goto yy56;
16863 	}
16864 yy797:
16865 	YYDEBUG(797, *YYCURSOR);
16866 	yych = *++YYCURSOR;
16867 	if (yych <= '/') goto yy56;
16868 	if (yych <= '9') goto yy915;
16869 	goto yy56;
16870 yy798:
16871 	YYDEBUG(798, *YYCURSOR);
16872 	yych = *++YYCURSOR;
16873 	if (yych == ')') goto yy108;
16874 	goto yy18;
16875 yy799:
16876 	YYDEBUG(799, *YYCURSOR);
16877 	yych = *++YYCURSOR;
16878 	if (yych <= '9') {
16879 		if (yych <= ' ') {
16880 			if (yych <= 0x08) {
16881 				if (yych <= 0x00) goto yy309;
16882 				goto yy56;
16883 			} else {
16884 				if (yych <= '\t') goto yy311;
16885 				if (yych <= 0x1F) goto yy56;
16886 				goto yy311;
16887 			}
16888 		} else {
16889 			if (yych <= '-') {
16890 				if (yych <= '+') goto yy56;
16891 				if (yych <= ',') goto yy311;
16892 				goto yy916;
16893 			} else {
16894 				if (yych <= '.') goto yy311;
16895 				if (yych <= '/') goto yy56;
16896 				goto yy492;
16897 			}
16898 		}
16899 	} else {
16900 		if (yych <= 'm') {
16901 			if (yych <= 'd') {
16902 				if (yych <= 'c') goto yy56;
16903 				goto yy311;
16904 			} else {
16905 				if (yych == 'h') goto yy311;
16906 				goto yy56;
16907 			}
16908 		} else {
16909 			if (yych <= 'r') {
16910 				if (yych <= 'n') goto yy314;
16911 				if (yych <= 'q') goto yy56;
16912 				goto yy314;
16913 			} else {
16914 				if (yych <= 's') goto yy315;
16915 				if (yych <= 't') goto yy316;
16916 				goto yy56;
16917 			}
16918 		}
16919 	}
16920 yy800:
16921 	YYDEBUG(800, *YYCURSOR);
16922 	yyaccept = 8;
16923 	yych = *(YYMARKER = ++YYCURSOR);
16924 	if (yych <= '(') {
16925 		if (yych <= '\t') {
16926 			if (yych <= 0x08) goto yy280;
16927 			goto yy135;
16928 		} else {
16929 			if (yych == ' ') goto yy135;
16930 			goto yy280;
16931 		}
16932 	} else {
16933 		if (yych <= '.') {
16934 			if (yych <= ')') goto yy108;
16935 			if (yych <= ',') goto yy280;
16936 			goto yy135;
16937 		} else {
16938 			if (yych <= '/') goto yy280;
16939 			if (yych <= '9') goto yy135;
16940 			goto yy280;
16941 		}
16942 	}
16943 yy801:
16944 	YYDEBUG(801, *YYCURSOR);
16945 	yyaccept = 2;
16946 	yych = *(YYMARKER = ++YYCURSOR);
16947 	if (yybm[0+yych] & 128) {
16948 		goto yy917;
16949 	}
16950 	if (yych <= '-') {
16951 		if (yych == ')') goto yy108;
16952 		if (yych <= ',') goto yy18;
16953 		goto yy282;
16954 	} else {
16955 		if (yych <= '/') {
16956 			if (yych <= '.') goto yy18;
16957 			goto yy282;
16958 		} else {
16959 			if (yych == '_') goto yy282;
16960 			goto yy18;
16961 		}
16962 	}
16963 yy802:
16964 	YYDEBUG(802, *YYCURSOR);
16965 	yyaccept = 8;
16966 	yych = *(YYMARKER = ++YYCURSOR);
16967 	if (yybm[0+yych] & 128) {
16968 		goto yy917;
16969 	}
16970 	if (yych <= ',') {
16971 		if (yych <= 0x1F) {
16972 			if (yych == '\t') goto yy135;
16973 			goto yy280;
16974 		} else {
16975 			if (yych <= ' ') goto yy135;
16976 			if (yych == ')') goto yy108;
16977 			goto yy280;
16978 		}
16979 	} else {
16980 		if (yych <= '/') {
16981 			if (yych <= '-') goto yy679;
16982 			if (yych <= '.') goto yy135;
16983 			goto yy282;
16984 		} else {
16985 			if (yych <= '9') goto yy135;
16986 			if (yych == '_') goto yy282;
16987 			goto yy280;
16988 		}
16989 	}
16990 yy803:
16991 	YYDEBUG(803, *YYCURSOR);
16992 	yych = *++YYCURSOR;
16993 	if (yych == 'F') goto yy919;
16994 	if (yych == 'f') goto yy919;
16995 	goto yy56;
16996 yy804:
16997 	YYDEBUG(804, *YYCURSOR);
16998 	yyaccept = 2;
16999 	yych = *(YYMARKER = ++YYCURSOR);
17000 	if (yych <= 'D') {
17001 		if (yych == ')') goto yy108;
17002 		goto yy18;
17003 	} else {
17004 		if (yych <= 'E') goto yy920;
17005 		if (yych == 'e') goto yy920;
17006 		goto yy18;
17007 	}
17008 yy805:
17009 	YYDEBUG(805, *YYCURSOR);
17010 	yyaccept = 2;
17011 	yych = *(YYMARKER = ++YYCURSOR);
17012 	if (yych <= 'D') {
17013 		if (yych <= ',') {
17014 			if (yych == ')') goto yy108;
17015 			goto yy18;
17016 		} else {
17017 			if (yych == '.') goto yy18;
17018 			if (yych <= '/') goto yy282;
17019 			goto yy18;
17020 		}
17021 	} else {
17022 		if (yych <= '`') {
17023 			if (yych <= 'E') goto yy920;
17024 			if (yych == '_') goto yy282;
17025 			goto yy18;
17026 		} else {
17027 			if (yych == 'e') goto yy921;
17028 			if (yych <= 'z') goto yy917;
17029 			goto yy18;
17030 		}
17031 	}
17032 yy806:
17033 	YYDEBUG(806, *YYCURSOR);
17034 	++YYCURSOR;
17035 	if ((YYLIMIT - YYCURSOR) < 12) YYFILL(12);
17036 	yych = *YYCURSOR;
17037 yy807:
17038 	YYDEBUG(807, *YYCURSOR);
17039 	if (yych <= 'X') {
17040 		if (yych <= 'G') {
17041 			if (yych <= ' ') {
17042 				if (yych == '\t') goto yy806;
17043 				if (yych <= 0x1F) goto yy56;
17044 				goto yy806;
17045 			} else {
17046 				if (yych <= 'D') {
17047 					if (yych <= 'C') goto yy56;
17048 					goto yy825;
17049 				} else {
17050 					if (yych == 'F') goto yy826;
17051 					goto yy56;
17052 				}
17053 			}
17054 		} else {
17055 			if (yych <= 'S') {
17056 				if (yych <= 'L') {
17057 					if (yych <= 'H') goto yy827;
17058 					goto yy56;
17059 				} else {
17060 					if (yych <= 'M') goto yy828;
17061 					if (yych <= 'R') goto yy56;
17062 					goto yy829;
17063 				}
17064 			} else {
17065 				if (yych <= 'U') {
17066 					if (yych <= 'T') goto yy830;
17067 					goto yy831;
17068 				} else {
17069 					if (yych == 'W') goto yy922;
17070 					goto yy56;
17071 				}
17072 			}
17073 		}
17074 	} else {
17075 		if (yych <= 'r') {
17076 			if (yych <= 'f') {
17077 				if (yych <= 'c') {
17078 					if (yych <= 'Y') goto yy833;
17079 					goto yy56;
17080 				} else {
17081 					if (yych <= 'd') goto yy825;
17082 					if (yych <= 'e') goto yy56;
17083 					goto yy826;
17084 				}
17085 			} else {
17086 				if (yych <= 'h') {
17087 					if (yych <= 'g') goto yy56;
17088 					goto yy827;
17089 				} else {
17090 					if (yych == 'm') goto yy828;
17091 					goto yy56;
17092 				}
17093 			}
17094 		} else {
17095 			if (yych <= 'w') {
17096 				if (yych <= 't') {
17097 					if (yych <= 's') goto yy829;
17098 					goto yy830;
17099 				} else {
17100 					if (yych <= 'u') goto yy831;
17101 					if (yych <= 'v') goto yy56;
17102 					goto yy922;
17103 				}
17104 			} else {
17105 				if (yych <= 'y') {
17106 					if (yych <= 'x') goto yy56;
17107 					goto yy833;
17108 				} else {
17109 					if (yych == 0xC2) goto yy834;
17110 					goto yy56;
17111 				}
17112 			}
17113 		}
17114 	}
17115 yy808:
17116 	YYDEBUG(808, *YYCURSOR);
17117 	yyaccept = 2;
17118 	yych = *(YYMARKER = ++YYCURSOR);
17119 	if (yych <= 0x1F) {
17120 		if (yych == '\t') goto yy806;
17121 		goto yy18;
17122 	} else {
17123 		if (yych <= ' ') goto yy806;
17124 		if (yych == ')') goto yy108;
17125 		goto yy18;
17126 	}
17127 yy809:
17128 	YYDEBUG(809, *YYCURSOR);
17129 	yyaccept = 2;
17130 	yych = *(YYMARKER = ++YYCURSOR);
17131 	if (yych <= 'S') {
17132 		if (yych == ')') goto yy108;
17133 		goto yy18;
17134 	} else {
17135 		if (yych <= 'T') goto yy923;
17136 		if (yych == 't') goto yy923;
17137 		goto yy18;
17138 	}
17139 yy810:
17140 	YYDEBUG(810, *YYCURSOR);
17141 	yyaccept = 2;
17142 	yych = *(YYMARKER = ++YYCURSOR);
17143 	if (yybm[0+yych] & 128) {
17144 		goto yy917;
17145 	}
17146 	if (yych <= ')') {
17147 		if (yych <= 0x1F) {
17148 			if (yych == '\t') goto yy806;
17149 			goto yy18;
17150 		} else {
17151 			if (yych <= ' ') goto yy806;
17152 			if (yych <= '(') goto yy18;
17153 			goto yy108;
17154 		}
17155 	} else {
17156 		if (yych <= '.') {
17157 			if (yych == '-') goto yy282;
17158 			goto yy18;
17159 		} else {
17160 			if (yych <= '/') goto yy282;
17161 			if (yych == '_') goto yy282;
17162 			goto yy18;
17163 		}
17164 	}
17165 yy811:
17166 	YYDEBUG(811, *YYCURSOR);
17167 	yyaccept = 2;
17168 	yych = *(YYMARKER = ++YYCURSOR);
17169 	if (yych <= 'S') {
17170 		if (yych <= ',') {
17171 			if (yych == ')') goto yy108;
17172 			goto yy18;
17173 		} else {
17174 			if (yych == '.') goto yy18;
17175 			if (yych <= '/') goto yy282;
17176 			goto yy18;
17177 		}
17178 	} else {
17179 		if (yych <= '`') {
17180 			if (yych <= 'T') goto yy923;
17181 			if (yych == '_') goto yy282;
17182 			goto yy18;
17183 		} else {
17184 			if (yych == 't') goto yy924;
17185 			if (yych <= 'z') goto yy917;
17186 			goto yy18;
17187 		}
17188 	}
17189 yy812:
17190 	YYDEBUG(812, *YYCURSOR);
17191 	yyaccept = 2;
17192 	yych = *(YYMARKER = ++YYCURSOR);
17193 	if (yych <= 'Q') {
17194 		if (yych == ')') goto yy108;
17195 		goto yy18;
17196 	} else {
17197 		if (yych <= 'R') goto yy925;
17198 		if (yych == 'r') goto yy925;
17199 		goto yy18;
17200 	}
17201 yy813:
17202 	YYDEBUG(813, *YYCURSOR);
17203 	yych = *++YYCURSOR;
17204 	if (yych == 'D') goto yy835;
17205 	if (yych == 'd') goto yy835;
17206 	goto yy807;
17207 yy814:
17208 	YYDEBUG(814, *YYCURSOR);
17209 	yych = *++YYCURSOR;
17210 	if (yych == ')') goto yy108;
17211 	goto yy300;
17212 yy815:
17213 	YYDEBUG(815, *YYCURSOR);
17214 	yyaccept = 2;
17215 	yych = *(YYMARKER = ++YYCURSOR);
17216 	if (yych <= 'Q') {
17217 		if (yych <= ',') {
17218 			if (yych == ')') goto yy108;
17219 			goto yy18;
17220 		} else {
17221 			if (yych == '.') goto yy18;
17222 			if (yych <= '/') goto yy282;
17223 			goto yy18;
17224 		}
17225 	} else {
17226 		if (yych <= '`') {
17227 			if (yych <= 'R') goto yy925;
17228 			if (yych == '_') goto yy282;
17229 			goto yy18;
17230 		} else {
17231 			if (yych == 'r') goto yy926;
17232 			if (yych <= 'z') goto yy917;
17233 			goto yy18;
17234 		}
17235 	}
17236 yy816:
17237 	YYDEBUG(816, *YYCURSOR);
17238 	yyaccept = 10;
17239 	yych = *(YYMARKER = ++YYCURSOR);
17240 	if (yybm[0+yych] & 128) {
17241 		goto yy917;
17242 	}
17243 	if (yych <= '-') {
17244 		if (yych == ')') goto yy108;
17245 		if (yych <= ',') goto yy300;
17246 		goto yy282;
17247 	} else {
17248 		if (yych <= '/') {
17249 			if (yych <= '.') goto yy300;
17250 			goto yy282;
17251 		} else {
17252 			if (yych == '_') goto yy282;
17253 			goto yy300;
17254 		}
17255 	}
17256 yy817:
17257 	YYDEBUG(817, *YYCURSOR);
17258 	yyaccept = 21;
17259 	yych = *(YYMARKER = ++YYCURSOR);
17260 	if (yych <= '/') {
17261 		if (yych == '.') goto yy927;
17262 	} else {
17263 		if (yych <= '9') goto yy819;
17264 		if (yych <= ':') goto yy927;
17265 	}
17266 yy818:
17267 	YYDEBUG(818, *YYCURSOR);
17268 #line 1757 "parse_date.re"
17269 	{
17270 		int tz_not_found;
17271 		DEBUG_OUTPUT("dateshortwithtimeshort | dateshortwithtimelong | dateshortwithtimelongtz");
17272 		TIMELIB_INIT;
17273 		TIMELIB_HAVE_DATE();
17274 		s->time->m = timelib_get_month((char **) &ptr);
17275 		s->time->d = timelib_get_nr((char **) &ptr, 2);
17276 
17277 		TIMELIB_HAVE_TIME();
17278 		s->time->h = timelib_get_nr((char **) &ptr, 2);
17279 		s->time->i = timelib_get_nr((char **) &ptr, 2);
17280 		if (*ptr == ':') {
17281 			s->time->s = timelib_get_nr((char **) &ptr, 2);
17282 
17283 			if (*ptr == '.') {
17284 				s->time->us = timelib_get_frac_nr((char **) &ptr, 8);
17285 			}
17286 		}
17287 
17288 		if (*ptr != '\0') {
17289 			s->time->z = timelib_parse_zone((char **) &ptr, &s->time->dst, s->time, &tz_not_found, s->tzdb, tz_get_wrapper);
17290 			if (tz_not_found) {
17291 				add_error(s, TIMELIB_ERR_TZID_NOT_FOUND, "The timezone could not be found in the database");
17292 			}
17293 		}
17294 		TIMELIB_DEINIT;
17295 		return TIMELIB_SHORTDATE_WITH_TIME;
17296 	}
17297 #line 17298 "<stdout>"
17298 yy819:
17299 	YYDEBUG(819, *YYCURSOR);
17300 	yyaccept = 21;
17301 	yych = *(YYMARKER = ++YYCURSOR);
17302 	if (yych == '.') goto yy927;
17303 	if (yych == ':') goto yy927;
17304 	goto yy818;
17305 yy820:
17306 	YYDEBUG(820, *YYCURSOR);
17307 	yyaccept = 21;
17308 	yych = *(YYMARKER = ++YYCURSOR);
17309 	if (yych <= '/') {
17310 		if (yych == '.') goto yy928;
17311 		goto yy818;
17312 	} else {
17313 		if (yych <= '9') goto yy929;
17314 		if (yych <= ':') goto yy928;
17315 		goto yy818;
17316 	}
17317 yy821:
17318 	YYDEBUG(821, *YYCURSOR);
17319 	yyaccept = 21;
17320 	yych = *(YYMARKER = ++YYCURSOR);
17321 	if (yych == '.') goto yy928;
17322 	if (yych == ':') goto yy928;
17323 	goto yy818;
17324 yy822:
17325 	YYDEBUG(822, *YYCURSOR);
17326 	yych = *++YYCURSOR;
17327 	if (yych <= '/') goto yy310;
17328 	if (yych <= '9') goto yy930;
17329 	goto yy310;
17330 yy823:
17331 	YYDEBUG(823, *YYCURSOR);
17332 	yych = *++YYCURSOR;
17333 	if (yych <= 'X') {
17334 		if (yych == ')') goto yy108;
17335 		goto yy18;
17336 	} else {
17337 		if (yych <= 'Y') goto yy931;
17338 		if (yych == 'y') goto yy931;
17339 		goto yy18;
17340 	}
17341 yy824:
17342 	YYDEBUG(824, *YYCURSOR);
17343 	yyaccept = 2;
17344 	yych = *(YYMARKER = ++YYCURSOR);
17345 	if (yych <= 'X') {
17346 		if (yych <= ',') {
17347 			if (yych == ')') goto yy108;
17348 			goto yy18;
17349 		} else {
17350 			if (yych == '.') goto yy18;
17351 			if (yych <= '/') goto yy282;
17352 			goto yy18;
17353 		}
17354 	} else {
17355 		if (yych <= '`') {
17356 			if (yych <= 'Y') goto yy931;
17357 			if (yych == '_') goto yy282;
17358 			goto yy18;
17359 		} else {
17360 			if (yych == 'y') goto yy932;
17361 			if (yych <= 'z') goto yy917;
17362 			goto yy18;
17363 		}
17364 	}
17365 yy825:
17366 	YYDEBUG(825, *YYCURSOR);
17367 	yych = *++YYCURSOR;
17368 	if (yych == 'A') goto yy933;
17369 	if (yych == 'a') goto yy933;
17370 	goto yy56;
17371 yy826:
17372 	YYDEBUG(826, *YYCURSOR);
17373 	yych = *++YYCURSOR;
17374 	if (yych <= 'R') {
17375 		if (yych == 'O') goto yy934;
17376 		if (yych <= 'Q') goto yy56;
17377 		goto yy935;
17378 	} else {
17379 		if (yych <= 'o') {
17380 			if (yych <= 'n') goto yy56;
17381 			goto yy934;
17382 		} else {
17383 			if (yych == 'r') goto yy935;
17384 			goto yy56;
17385 		}
17386 	}
17387 yy827:
17388 	YYDEBUG(827, *YYCURSOR);
17389 	yych = *++YYCURSOR;
17390 	if (yych == 'O') goto yy936;
17391 	if (yych == 'o') goto yy936;
17392 	goto yy56;
17393 yy828:
17394 	YYDEBUG(828, *YYCURSOR);
17395 	yych = *++YYCURSOR;
17396 	if (yych <= 'S') {
17397 		if (yych <= 'N') {
17398 			if (yych == 'I') goto yy937;
17399 			goto yy56;
17400 		} else {
17401 			if (yych <= 'O') goto yy938;
17402 			if (yych <= 'R') goto yy56;
17403 			goto yy939;
17404 		}
17405 	} else {
17406 		if (yych <= 'n') {
17407 			if (yych == 'i') goto yy937;
17408 			goto yy56;
17409 		} else {
17410 			if (yych <= 'o') goto yy938;
17411 			if (yych == 's') goto yy939;
17412 			goto yy56;
17413 		}
17414 	}
17415 yy829:
17416 	YYDEBUG(829, *YYCURSOR);
17417 	yych = *++YYCURSOR;
17418 	if (yych <= 'U') {
17419 		if (yych <= 'D') {
17420 			if (yych == 'A') goto yy941;
17421 			goto yy56;
17422 		} else {
17423 			if (yych <= 'E') goto yy942;
17424 			if (yych <= 'T') goto yy56;
17425 			goto yy943;
17426 		}
17427 	} else {
17428 		if (yych <= 'd') {
17429 			if (yych == 'a') goto yy941;
17430 			goto yy56;
17431 		} else {
17432 			if (yych <= 'e') goto yy942;
17433 			if (yych == 'u') goto yy943;
17434 			goto yy56;
17435 		}
17436 	}
17437 yy830:
17438 	YYDEBUG(830, *YYCURSOR);
17439 	yych = *++YYCURSOR;
17440 	if (yych <= 'U') {
17441 		if (yych == 'H') goto yy944;
17442 		if (yych <= 'T') goto yy56;
17443 		goto yy945;
17444 	} else {
17445 		if (yych <= 'h') {
17446 			if (yych <= 'g') goto yy56;
17447 			goto yy944;
17448 		} else {
17449 			if (yych == 'u') goto yy945;
17450 			goto yy56;
17451 		}
17452 	}
17453 yy831:
17454 	YYDEBUG(831, *YYCURSOR);
17455 	yych = *++YYCURSOR;
17456 	if (yych == 'S') goto yy946;
17457 	if (yych == 's') goto yy946;
17458 	goto yy56;
17459 yy832:
17460 	YYDEBUG(832, *YYCURSOR);
17461 	yych = *++YYCURSOR;
17462 	if (yych == 'E') goto yy947;
17463 	if (yych == 'e') goto yy947;
17464 	goto yy56;
17465 yy833:
17466 	YYDEBUG(833, *YYCURSOR);
17467 	yych = *++YYCURSOR;
17468 	if (yych == 'E') goto yy948;
17469 	if (yych == 'e') goto yy948;
17470 	goto yy56;
17471 yy834:
17472 	YYDEBUG(834, *YYCURSOR);
17473 	yych = *++YYCURSOR;
17474 	if (yych == 0xB5) goto yy949;
17475 	goto yy56;
17476 yy835:
17477 	YYDEBUG(835, *YYCURSOR);
17478 	yych = *++YYCURSOR;
17479 	if (yych == 'A') goto yy950;
17480 	if (yych == 'a') goto yy950;
17481 	goto yy56;
17482 yy836:
17483 	YYDEBUG(836, *YYCURSOR);
17484 	yyaccept = 2;
17485 	yych = *(YYMARKER = ++YYCURSOR);
17486 	if (yych <= 'G') {
17487 		if (yych == ')') goto yy108;
17488 		goto yy18;
17489 	} else {
17490 		if (yych <= 'H') goto yy951;
17491 		if (yych == 'h') goto yy951;
17492 		goto yy18;
17493 	}
17494 yy837:
17495 	YYDEBUG(837, *YYCURSOR);
17496 	yyaccept = 2;
17497 	yych = *(YYMARKER = ++YYCURSOR);
17498 	if (yych <= 'G') {
17499 		if (yych <= ',') {
17500 			if (yych == ')') goto yy108;
17501 			goto yy18;
17502 		} else {
17503 			if (yych == '.') goto yy18;
17504 			if (yych <= '/') goto yy282;
17505 			goto yy18;
17506 		}
17507 	} else {
17508 		if (yych <= '`') {
17509 			if (yych <= 'H') goto yy951;
17510 			if (yych == '_') goto yy282;
17511 			goto yy18;
17512 		} else {
17513 			if (yych == 'h') goto yy952;
17514 			if (yych <= 'z') goto yy917;
17515 			goto yy18;
17516 		}
17517 	}
17518 yy838:
17519 	YYDEBUG(838, *YYCURSOR);
17520 	yych = *++YYCURSOR;
17521 	if (yych <= 'Q') {
17522 		if (yych == ')') goto yy108;
17523 		goto yy18;
17524 	} else {
17525 		if (yych <= 'R') goto yy931;
17526 		if (yych == 'r') goto yy931;
17527 		goto yy18;
17528 	}
17529 yy839:
17530 	YYDEBUG(839, *YYCURSOR);
17531 	yyaccept = 2;
17532 	yych = *(YYMARKER = ++YYCURSOR);
17533 	if (yych <= 'Q') {
17534 		if (yych <= ',') {
17535 			if (yych == ')') goto yy108;
17536 			goto yy18;
17537 		} else {
17538 			if (yych == '.') goto yy18;
17539 			if (yych <= '/') goto yy282;
17540 			goto yy18;
17541 		}
17542 	} else {
17543 		if (yych <= '`') {
17544 			if (yych <= 'R') goto yy931;
17545 			if (yych == '_') goto yy282;
17546 			goto yy18;
17547 		} else {
17548 			if (yych == 'r') goto yy932;
17549 			if (yych <= 'z') goto yy917;
17550 			goto yy18;
17551 		}
17552 	}
17553 yy840:
17554 	YYDEBUG(840, *YYCURSOR);
17555 	yyaccept = 2;
17556 	yych = *(YYMARKER = ++YYCURSOR);
17557 	if (yych <= 'T') {
17558 		if (yych == ')') goto yy108;
17559 		goto yy18;
17560 	} else {
17561 		if (yych <= 'U') goto yy953;
17562 		if (yych == 'u') goto yy953;
17563 		goto yy18;
17564 	}
17565 yy841:
17566 	YYDEBUG(841, *YYCURSOR);
17567 	yyaccept = 2;
17568 	yych = *(YYMARKER = ++YYCURSOR);
17569 	if (yych <= 'T') {
17570 		if (yych <= ',') {
17571 			if (yych == ')') goto yy108;
17572 			goto yy18;
17573 		} else {
17574 			if (yych == '.') goto yy18;
17575 			if (yych <= '/') goto yy282;
17576 			goto yy18;
17577 		}
17578 	} else {
17579 		if (yych <= '`') {
17580 			if (yych <= 'U') goto yy953;
17581 			if (yych == '_') goto yy282;
17582 			goto yy18;
17583 		} else {
17584 			if (yych == 'u') goto yy954;
17585 			if (yych <= 'z') goto yy917;
17586 			goto yy18;
17587 		}
17588 	}
17589 yy842:
17590 	YYDEBUG(842, *YYCURSOR);
17591 	yyaccept = 2;
17592 	yych = *(YYMARKER = ++YYCURSOR);
17593 	if (yych <= '@') {
17594 		if (yych == ')') goto yy108;
17595 		goto yy18;
17596 	} else {
17597 		if (yych <= 'A') goto yy955;
17598 		if (yych == 'a') goto yy955;
17599 		goto yy18;
17600 	}
17601 yy843:
17602 	YYDEBUG(843, *YYCURSOR);
17603 	yyaccept = 2;
17604 	yych = *(YYMARKER = ++YYCURSOR);
17605 	if (yych <= 'A') {
17606 		if (yych == ')') goto yy108;
17607 		goto yy18;
17608 	} else {
17609 		if (yych <= 'B') goto yy956;
17610 		if (yych == 'b') goto yy956;
17611 		goto yy18;
17612 	}
17613 yy844:
17614 	YYDEBUG(844, *YYCURSOR);
17615 	yyaccept = 2;
17616 	yych = *(YYMARKER = ++YYCURSOR);
17617 	if (yych <= 'G') {
17618 		if (yych == ')') goto yy108;
17619 		goto yy18;
17620 	} else {
17621 		if (yych <= 'H') goto yy957;
17622 		if (yych == 'h') goto yy957;
17623 		goto yy18;
17624 	}
17625 yy845:
17626 	YYDEBUG(845, *YYCURSOR);
17627 	yyaccept = 2;
17628 	yych = *(YYMARKER = ++YYCURSOR);
17629 	if (yych <= '@') {
17630 		if (yych <= ',') {
17631 			if (yych == ')') goto yy108;
17632 			goto yy18;
17633 		} else {
17634 			if (yych == '.') goto yy18;
17635 			if (yych <= '/') goto yy282;
17636 			goto yy18;
17637 		}
17638 	} else {
17639 		if (yych <= '_') {
17640 			if (yych <= 'A') goto yy955;
17641 			if (yych <= '^') goto yy18;
17642 			goto yy282;
17643 		} else {
17644 			if (yych <= '`') goto yy18;
17645 			if (yych <= 'a') goto yy958;
17646 			if (yych <= 'z') goto yy917;
17647 			goto yy18;
17648 		}
17649 	}
17650 yy846:
17651 	YYDEBUG(846, *YYCURSOR);
17652 	yyaccept = 2;
17653 	yych = *(YYMARKER = ++YYCURSOR);
17654 	if (yych <= 'A') {
17655 		if (yych <= ',') {
17656 			if (yych == ')') goto yy108;
17657 			goto yy18;
17658 		} else {
17659 			if (yych == '.') goto yy18;
17660 			if (yych <= '/') goto yy282;
17661 			goto yy18;
17662 		}
17663 	} else {
17664 		if (yych <= '`') {
17665 			if (yych <= 'B') goto yy956;
17666 			if (yych == '_') goto yy282;
17667 			goto yy18;
17668 		} else {
17669 			if (yych == 'b') goto yy959;
17670 			if (yych <= 'z') goto yy917;
17671 			goto yy18;
17672 		}
17673 	}
17674 yy847:
17675 	YYDEBUG(847, *YYCURSOR);
17676 	yyaccept = 2;
17677 	yych = *(YYMARKER = ++YYCURSOR);
17678 	if (yych <= 'G') {
17679 		if (yych <= ',') {
17680 			if (yych == ')') goto yy108;
17681 			goto yy18;
17682 		} else {
17683 			if (yych == '.') goto yy18;
17684 			if (yych <= '/') goto yy282;
17685 			goto yy18;
17686 		}
17687 	} else {
17688 		if (yych <= '`') {
17689 			if (yych <= 'H') goto yy957;
17690 			if (yych == '_') goto yy282;
17691 			goto yy18;
17692 		} else {
17693 			if (yych == 'h') goto yy960;
17694 			if (yych <= 'z') goto yy917;
17695 			goto yy18;
17696 		}
17697 	}
17698 yy848:
17699 	YYDEBUG(848, *YYCURSOR);
17700 	yych = *++YYCURSOR;
17701 	if (yych <= '/') goto yy56;
17702 	if (yych <= '9') goto yy961;
17703 	goto yy56;
17704 yy849:
17705 	YYDEBUG(849, *YYCURSOR);
17706 	yych = *++YYCURSOR;
17707 	if (yych == '0') goto yy961;
17708 	goto yy56;
17709 yy850:
17710 	YYDEBUG(850, *YYCURSOR);
17711 	yyaccept = 2;
17712 	yych = *(YYMARKER = ++YYCURSOR);
17713 	if (yych <= 'N') {
17714 		if (yych == ')') goto yy108;
17715 		goto yy18;
17716 	} else {
17717 		if (yych <= 'O') goto yy962;
17718 		if (yych == 'o') goto yy962;
17719 		goto yy18;
17720 	}
17721 yy851:
17722 	YYDEBUG(851, *YYCURSOR);
17723 	yych = *++YYCURSOR;
17724 	if (yych <= 'X') {
17725 		if (yych == ')') goto yy108;
17726 		goto yy18;
17727 	} else {
17728 		if (yych <= 'Y') goto yy963;
17729 		if (yych == 'y') goto yy963;
17730 		goto yy18;
17731 	}
17732 yy852:
17733 	YYDEBUG(852, *YYCURSOR);
17734 	yyaccept = 2;
17735 	yych = *(YYMARKER = ++YYCURSOR);
17736 	if (yych <= 'N') {
17737 		if (yych <= ',') {
17738 			if (yych == ')') goto yy108;
17739 			goto yy18;
17740 		} else {
17741 			if (yych == '.') goto yy18;
17742 			if (yych <= '/') goto yy282;
17743 			goto yy18;
17744 		}
17745 	} else {
17746 		if (yych <= '`') {
17747 			if (yych <= 'O') goto yy962;
17748 			if (yych == '_') goto yy282;
17749 			goto yy18;
17750 		} else {
17751 			if (yych == 'o') goto yy964;
17752 			if (yych <= 'z') goto yy917;
17753 			goto yy18;
17754 		}
17755 	}
17756 yy853:
17757 	YYDEBUG(853, *YYCURSOR);
17758 	yyaccept = 2;
17759 	yych = *(YYMARKER = ++YYCURSOR);
17760 	if (yych <= 'X') {
17761 		if (yych <= ',') {
17762 			if (yych == ')') goto yy108;
17763 			goto yy18;
17764 		} else {
17765 			if (yych == '.') goto yy18;
17766 			if (yych <= '/') goto yy282;
17767 			goto yy18;
17768 		}
17769 	} else {
17770 		if (yych <= '`') {
17771 			if (yych <= 'Y') goto yy963;
17772 			if (yych == '_') goto yy282;
17773 			goto yy18;
17774 		} else {
17775 			if (yych == 'y') goto yy965;
17776 			if (yych <= 'z') goto yy917;
17777 			goto yy18;
17778 		}
17779 	}
17780 yy854:
17781 	YYDEBUG(854, *YYCURSOR);
17782 	yyaccept = 2;
17783 	yych = *(YYMARKER = ++YYCURSOR);
17784 	if (yych <= 'C') {
17785 		if (yych == ')') goto yy108;
17786 		goto yy18;
17787 	} else {
17788 		if (yych <= 'D') goto yy966;
17789 		if (yych == 'd') goto yy966;
17790 		goto yy18;
17791 	}
17792 yy855:
17793 	YYDEBUG(855, *YYCURSOR);
17794 	yych = *++YYCURSOR;
17795 	if (yych <= 'X') {
17796 		if (yych == ')') goto yy108;
17797 		goto yy18;
17798 	} else {
17799 		if (yych <= 'Y') goto yy967;
17800 		if (yych == 'y') goto yy967;
17801 		goto yy18;
17802 	}
17803 yy856:
17804 	YYDEBUG(856, *YYCURSOR);
17805 	yyaccept = 2;
17806 	yych = *(YYMARKER = ++YYCURSOR);
17807 	if (yych <= 'C') {
17808 		if (yych <= ',') {
17809 			if (yych == ')') goto yy108;
17810 			goto yy18;
17811 		} else {
17812 			if (yych == '.') goto yy18;
17813 			if (yych <= '/') goto yy282;
17814 			goto yy18;
17815 		}
17816 	} else {
17817 		if (yych <= '`') {
17818 			if (yych <= 'D') goto yy966;
17819 			if (yych == '_') goto yy282;
17820 			goto yy18;
17821 		} else {
17822 			if (yych == 'd') goto yy968;
17823 			if (yych <= 'z') goto yy917;
17824 			goto yy18;
17825 		}
17826 	}
17827 yy857:
17828 	YYDEBUG(857, *YYCURSOR);
17829 	yyaccept = 2;
17830 	yych = *(YYMARKER = ++YYCURSOR);
17831 	if (yych <= 'X') {
17832 		if (yych <= ',') {
17833 			if (yych == ')') goto yy108;
17834 			goto yy18;
17835 		} else {
17836 			if (yych == '.') goto yy18;
17837 			if (yych <= '/') goto yy282;
17838 			goto yy18;
17839 		}
17840 	} else {
17841 		if (yych <= '`') {
17842 			if (yych <= 'Y') goto yy967;
17843 			if (yych == '_') goto yy282;
17844 			goto yy18;
17845 		} else {
17846 			if (yych == 'y') goto yy969;
17847 			if (yych <= 'z') goto yy917;
17848 			goto yy18;
17849 		}
17850 	}
17851 yy858:
17852 	YYDEBUG(858, *YYCURSOR);
17853 	yyaccept = 2;
17854 	yych = *(YYMARKER = ++YYCURSOR);
17855 	if (yych <= 'C') {
17856 		if (yych == ')') goto yy108;
17857 		goto yy18;
17858 	} else {
17859 		if (yych <= 'D') goto yy970;
17860 		if (yych == 'd') goto yy970;
17861 		goto yy18;
17862 	}
17863 yy859:
17864 	YYDEBUG(859, *YYCURSOR);
17865 	yyaccept = 2;
17866 	yych = *(YYMARKER = ++YYCURSOR);
17867 	if (yych <= 'C') {
17868 		if (yych <= ',') {
17869 			if (yych == ')') goto yy108;
17870 			goto yy18;
17871 		} else {
17872 			if (yych == '.') goto yy18;
17873 			if (yych <= '/') goto yy282;
17874 			goto yy18;
17875 		}
17876 	} else {
17877 		if (yych <= '`') {
17878 			if (yych <= 'D') goto yy970;
17879 			if (yych == '_') goto yy282;
17880 			goto yy18;
17881 		} else {
17882 			if (yych == 'd') goto yy971;
17883 			if (yych <= 'z') goto yy917;
17884 			goto yy18;
17885 		}
17886 	}
17887 yy860:
17888 	YYDEBUG(860, *YYCURSOR);
17889 	yych = *++YYCURSOR;
17890 	if (yych <= '/') goto yy56;
17891 	if (yych <= '9') goto yy972;
17892 	goto yy56;
17893 yy861:
17894 	YYDEBUG(861, *YYCURSOR);
17895 	yych = *++YYCURSOR;
17896 	if (yych <= '/') goto yy56;
17897 	if (yych <= '2') goto yy972;
17898 	goto yy56;
17899 yy862:
17900 	YYDEBUG(862, *YYCURSOR);
17901 	yych = *++YYCURSOR;
17902 	if (yych <= '/') goto yy56;
17903 	if (yych <= '9') goto yy973;
17904 	goto yy56;
17905 yy863:
17906 	YYDEBUG(863, *YYCURSOR);
17907 	++YYCURSOR;
17908 	goto yy547;
17909 yy864:
17910 	YYDEBUG(864, *YYCURSOR);
17911 	++YYCURSOR;
17912 	if (YYLIMIT <= YYCURSOR) YYFILL(1);
17913 	yych = *YYCURSOR;
17914 	YYDEBUG(865, *YYCURSOR);
17915 	if (yych <= '/') goto yy209;
17916 	if (yych <= '9') goto yy864;
17917 	goto yy209;
17918 yy866:
17919 	YYDEBUG(866, *YYCURSOR);
17920 	yych = *++YYCURSOR;
17921 	if (yych <= '/') goto yy214;
17922 	if (yych <= '9') goto yy975;
17923 	goto yy214;
17924 yy867:
17925 	YYDEBUG(867, *YYCURSOR);
17926 	yych = *++YYCURSOR;
17927 	if (yych <= '/') goto yy56;
17928 	if (yych <= '9') goto yy976;
17929 	goto yy56;
17930 yy868:
17931 	YYDEBUG(868, *YYCURSOR);
17932 	yyaccept = 16;
17933 	yych = *(YYMARKER = ++YYCURSOR);
17934 	if (yych <= 'n') {
17935 		if (yych <= '/') goto yy547;
17936 		if (yych <= '9') goto yy977;
17937 		if (yych <= 'm') goto yy547;
17938 		goto yy716;
17939 	} else {
17940 		if (yych <= 'r') {
17941 			if (yych <= 'q') goto yy547;
17942 			goto yy716;
17943 		} else {
17944 			if (yych <= 's') goto yy717;
17945 			if (yych <= 't') goto yy718;
17946 			goto yy547;
17947 		}
17948 	}
17949 yy869:
17950 	YYDEBUG(869, *YYCURSOR);
17951 	yyaccept = 16;
17952 	yych = *(YYMARKER = ++YYCURSOR);
17953 	if (yych <= 'n') {
17954 		if (yych <= '1') {
17955 			if (yych <= '/') goto yy547;
17956 			goto yy977;
17957 		} else {
17958 			if (yych <= '9') goto yy712;
17959 			if (yych <= 'm') goto yy547;
17960 			goto yy716;
17961 		}
17962 	} else {
17963 		if (yych <= 'r') {
17964 			if (yych <= 'q') goto yy547;
17965 			goto yy716;
17966 		} else {
17967 			if (yych <= 's') goto yy717;
17968 			if (yych <= 't') goto yy718;
17969 			goto yy547;
17970 		}
17971 	}
17972 yy870:
17973 	YYDEBUG(870, *YYCURSOR);
17974 	yych = *++YYCURSOR;
17975 	if (yych <= '/') goto yy56;
17976 	if (yych <= '2') goto yy979;
17977 	if (yych <= '3') goto yy980;
17978 	if (yych <= '9') goto yy981;
17979 	goto yy56;
17980 yy871:
17981 	YYDEBUG(871, *YYCURSOR);
17982 	yyaccept = 19;
17983 	yych = *(YYMARKER = ++YYCURSOR);
17984 	if (yych == '-') goto yy982;
17985 	goto yy727;
17986 yy872:
17987 	YYDEBUG(872, *YYCURSOR);
17988 	yych = *++YYCURSOR;
17989 	if (yych == 'R') goto yy983;
17990 	if (yych == 'r') goto yy983;
17991 	goto yy56;
17992 yy873:
17993 	YYDEBUG(873, *YYCURSOR);
17994 	yych = *++YYCURSOR;
17995 	if (yych == 'G') goto yy984;
17996 	if (yych == 'g') goto yy984;
17997 	goto yy56;
17998 yy874:
17999 	YYDEBUG(874, *YYCURSOR);
18000 	yych = *++YYCURSOR;
18001 	if (yych == 'C') goto yy985;
18002 	if (yych == 'c') goto yy985;
18003 	goto yy56;
18004 yy875:
18005 	YYDEBUG(875, *YYCURSOR);
18006 	yych = *++YYCURSOR;
18007 	if (yych == 'B') goto yy986;
18008 	if (yych == 'b') goto yy986;
18009 	goto yy56;
18010 yy876:
18011 	YYDEBUG(876, *YYCURSOR);
18012 	yych = *++YYCURSOR;
18013 	if (yych == 'N') goto yy987;
18014 	if (yych == 'n') goto yy987;
18015 	goto yy56;
18016 yy877:
18017 	YYDEBUG(877, *YYCURSOR);
18018 	yych = *++YYCURSOR;
18019 	if (yych <= 'N') {
18020 		if (yych == 'L') goto yy988;
18021 		if (yych <= 'M') goto yy56;
18022 		goto yy989;
18023 	} else {
18024 		if (yych <= 'l') {
18025 			if (yych <= 'k') goto yy56;
18026 			goto yy988;
18027 		} else {
18028 			if (yych == 'n') goto yy989;
18029 			goto yy56;
18030 		}
18031 	}
18032 yy878:
18033 	YYDEBUG(878, *YYCURSOR);
18034 	yych = *++YYCURSOR;
18035 	if (yych <= 'Y') {
18036 		if (yych == 'R') goto yy990;
18037 		if (yych <= 'X') goto yy56;
18038 		goto yy991;
18039 	} else {
18040 		if (yych <= 'r') {
18041 			if (yych <= 'q') goto yy56;
18042 			goto yy990;
18043 		} else {
18044 			if (yych == 'y') goto yy991;
18045 			goto yy56;
18046 		}
18047 	}
18048 yy879:
18049 	YYDEBUG(879, *YYCURSOR);
18050 	yych = *++YYCURSOR;
18051 	if (yych == 'V') goto yy985;
18052 	if (yych == 'v') goto yy985;
18053 	goto yy56;
18054 yy880:
18055 	YYDEBUG(880, *YYCURSOR);
18056 	yych = *++YYCURSOR;
18057 	if (yych == 'T') goto yy992;
18058 	if (yych == 't') goto yy992;
18059 	goto yy56;
18060 yy881:
18061 	YYDEBUG(881, *YYCURSOR);
18062 	yych = *++YYCURSOR;
18063 	if (yych == 'P') goto yy993;
18064 	if (yych == 'p') goto yy993;
18065 	goto yy56;
18066 yy882:
18067 	YYDEBUG(882, *YYCURSOR);
18068 	yych = *++YYCURSOR;
18069 	if (yych <= '0') goto yy56;
18070 	if (yych <= '9') goto yy994;
18071 	goto yy56;
18072 yy883:
18073 	YYDEBUG(883, *YYCURSOR);
18074 	yych = *++YYCURSOR;
18075 	if (yych <= '/') goto yy56;
18076 	if (yych <= '9') goto yy994;
18077 	goto yy56;
18078 yy884:
18079 	YYDEBUG(884, *YYCURSOR);
18080 	yych = *++YYCURSOR;
18081 	if (yych <= '/') goto yy56;
18082 	if (yych <= '6') goto yy994;
18083 	goto yy56;
18084 yy885:
18085 	YYDEBUG(885, *YYCURSOR);
18086 	yych = *++YYCURSOR;
18087 	if (yych == 'P') goto yy904;
18088 	if (yych == 'p') goto yy904;
18089 	goto yy56;
18090 yy886:
18091 	YYDEBUG(886, *YYCURSOR);
18092 	yych = *++YYCURSOR;
18093 	if (yych <= '/') goto yy56;
18094 	if (yych <= '2') goto yy995;
18095 	if (yych <= '3') goto yy997;
18096 	if (yych <= '9') goto yy998;
18097 	goto yy56;
18098 yy887:
18099 	YYDEBUG(887, *YYCURSOR);
18100 	yych = *++YYCURSOR;
18101 	if (yych == '/') goto yy999;
18102 	goto yy56;
18103 yy888:
18104 	YYDEBUG(888, *YYCURSOR);
18105 	yych = *++YYCURSOR;
18106 	if (yych <= '/') goto yy186;
18107 	if (yych <= '9') goto yy1000;
18108 	goto yy186;
18109 yy889:
18110 	YYDEBUG(889, *YYCURSOR);
18111 	yyaccept = 22;
18112 	yych = *(YYMARKER = ++YYCURSOR);
18113 	if (yych <= 'W') {
18114 		if (yych <= 'E') {
18115 			if (yych <= ' ') {
18116 				if (yych == '\t') goto yy186;
18117 				if (yych >= ' ') goto yy186;
18118 			} else {
18119 				if (yych <= '9') {
18120 					if (yych >= '0') goto yy1000;
18121 				} else {
18122 					if (yych == 'D') goto yy186;
18123 				}
18124 			}
18125 		} else {
18126 			if (yych <= 'L') {
18127 				if (yych == 'G') goto yy890;
18128 				if (yych <= 'H') goto yy186;
18129 			} else {
18130 				if (yych <= 'R') {
18131 					if (yych <= 'M') goto yy186;
18132 				} else {
18133 					if (yych != 'V') goto yy186;
18134 				}
18135 			}
18136 		}
18137 	} else {
18138 		if (yych <= 'l') {
18139 			if (yych <= 'd') {
18140 				if (yych == 'Y') goto yy186;
18141 				if (yych >= 'd') goto yy186;
18142 			} else {
18143 				if (yych <= 'f') {
18144 					if (yych >= 'f') goto yy186;
18145 				} else {
18146 					if (yych == 'h') goto yy186;
18147 				}
18148 			}
18149 		} else {
18150 			if (yych <= 'w') {
18151 				if (yych <= 'r') {
18152 					if (yych <= 'm') goto yy186;
18153 				} else {
18154 					if (yych != 'v') goto yy186;
18155 				}
18156 			} else {
18157 				if (yych <= 'y') {
18158 					if (yych >= 'y') goto yy186;
18159 				} else {
18160 					if (yych == 0xC2) goto yy186;
18161 				}
18162 			}
18163 		}
18164 	}
18165 yy890:
18166 	YYDEBUG(890, *YYCURSOR);
18167 #line 1519 "parse_date.re"
18168 	{
18169 		int length = 0;
18170 		DEBUG_OUTPUT("pgydotd");
18171 		TIMELIB_INIT;
18172 		TIMELIB_HAVE_DATE();
18173 		s->time->y = timelib_get_nr_ex((char **) &ptr, 4, &length);
18174 		s->time->d = timelib_get_nr((char **) &ptr, 3);
18175 		s->time->m = 1;
18176 		TIMELIB_PROCESS_YEAR(s->time->y, length);
18177 		TIMELIB_DEINIT;
18178 		return TIMELIB_PG_YEARDAY;
18179 	}
18180 #line 18181 "<stdout>"
18181 yy891:
18182 	YYDEBUG(891, *YYCURSOR);
18183 	yyaccept = 22;
18184 	yych = *(YYMARKER = ++YYCURSOR);
18185 	if (yych <= 'W') {
18186 		if (yych <= 'D') {
18187 			if (yych <= ' ') {
18188 				if (yych == '\t') goto yy186;
18189 				if (yych <= 0x1F) goto yy890;
18190 				goto yy186;
18191 			} else {
18192 				if (yych <= '1') {
18193 					if (yych <= '/') goto yy890;
18194 					goto yy1000;
18195 				} else {
18196 					if (yych <= '9') goto yy1002;
18197 					if (yych <= 'C') goto yy890;
18198 					goto yy186;
18199 				}
18200 			}
18201 		} else {
18202 			if (yych <= 'L') {
18203 				if (yych <= 'F') {
18204 					if (yych <= 'E') goto yy890;
18205 					goto yy186;
18206 				} else {
18207 					if (yych == 'H') goto yy186;
18208 					goto yy890;
18209 				}
18210 			} else {
18211 				if (yych <= 'R') {
18212 					if (yych <= 'M') goto yy186;
18213 					goto yy890;
18214 				} else {
18215 					if (yych == 'V') goto yy890;
18216 					goto yy186;
18217 				}
18218 			}
18219 		}
18220 	} else {
18221 		if (yych <= 'l') {
18222 			if (yych <= 'd') {
18223 				if (yych == 'Y') goto yy186;
18224 				if (yych <= 'c') goto yy890;
18225 				goto yy186;
18226 			} else {
18227 				if (yych <= 'f') {
18228 					if (yych <= 'e') goto yy890;
18229 					goto yy186;
18230 				} else {
18231 					if (yych == 'h') goto yy186;
18232 					goto yy890;
18233 				}
18234 			}
18235 		} else {
18236 			if (yych <= 'w') {
18237 				if (yych <= 'r') {
18238 					if (yych <= 'm') goto yy186;
18239 					goto yy890;
18240 				} else {
18241 					if (yych == 'v') goto yy890;
18242 					goto yy186;
18243 				}
18244 			} else {
18245 				if (yych <= 'y') {
18246 					if (yych <= 'x') goto yy890;
18247 					goto yy186;
18248 				} else {
18249 					if (yych == 0xC2) goto yy186;
18250 					goto yy890;
18251 				}
18252 			}
18253 		}
18254 	}
18255 yy892:
18256 	YYDEBUG(892, *YYCURSOR);
18257 	yyaccept = 22;
18258 	yych = *(YYMARKER = ++YYCURSOR);
18259 	if (yych <= 'W') {
18260 		if (yych <= 'E') {
18261 			if (yych <= ' ') {
18262 				if (yych == '\t') goto yy186;
18263 				if (yych <= 0x1F) goto yy890;
18264 				goto yy186;
18265 			} else {
18266 				if (yych <= '9') {
18267 					if (yych <= '/') goto yy890;
18268 					goto yy1002;
18269 				} else {
18270 					if (yych == 'D') goto yy186;
18271 					goto yy890;
18272 				}
18273 			}
18274 		} else {
18275 			if (yych <= 'L') {
18276 				if (yych == 'G') goto yy890;
18277 				if (yych <= 'H') goto yy186;
18278 				goto yy890;
18279 			} else {
18280 				if (yych <= 'R') {
18281 					if (yych <= 'M') goto yy186;
18282 					goto yy890;
18283 				} else {
18284 					if (yych == 'V') goto yy890;
18285 					goto yy186;
18286 				}
18287 			}
18288 		}
18289 	} else {
18290 		if (yych <= 'l') {
18291 			if (yych <= 'd') {
18292 				if (yych == 'Y') goto yy186;
18293 				if (yych <= 'c') goto yy890;
18294 				goto yy186;
18295 			} else {
18296 				if (yych <= 'f') {
18297 					if (yych <= 'e') goto yy890;
18298 					goto yy186;
18299 				} else {
18300 					if (yych == 'h') goto yy186;
18301 					goto yy890;
18302 				}
18303 			}
18304 		} else {
18305 			if (yych <= 'w') {
18306 				if (yych <= 'r') {
18307 					if (yych <= 'm') goto yy186;
18308 					goto yy890;
18309 				} else {
18310 					if (yych == 'v') goto yy890;
18311 					goto yy186;
18312 				}
18313 			} else {
18314 				if (yych <= 'y') {
18315 					if (yych <= 'x') goto yy890;
18316 					goto yy186;
18317 				} else {
18318 					if (yych == 0xC2) goto yy186;
18319 					goto yy890;
18320 				}
18321 			}
18322 		}
18323 	}
18324 yy893:
18325 	YYDEBUG(893, *YYCURSOR);
18326 	yych = *++YYCURSOR;
18327 	if (yych <= '/') goto yy186;
18328 	if (yych <= '9') goto yy1002;
18329 	goto yy186;
18330 yy894:
18331 	YYDEBUG(894, *YYCURSOR);
18332 	yych = *++YYCURSOR;
18333 	if (yych == ':') goto yy1003;
18334 	goto yy56;
18335 yy895:
18336 	YYDEBUG(895, *YYCURSOR);
18337 	yyaccept = 23;
18338 	yych = *(YYMARKER = ++YYCURSOR);
18339 	if (yych == 'I') goto yy1004;
18340 	if (yych == 'i') goto yy1004;
18341 	goto yy580;
18342 yy896:
18343 	YYDEBUG(896, *YYCURSOR);
18344 	yyaccept = 23;
18345 	yych = *(YYMARKER = ++YYCURSOR);
18346 	if (yych == 'U') goto yy1005;
18347 	if (yych == 'u') goto yy1005;
18348 	goto yy580;
18349 yy897:
18350 	YYDEBUG(897, *YYCURSOR);
18351 	yyaccept = 23;
18352 	yych = *(YYMARKER = ++YYCURSOR);
18353 	if (yych == 'E') goto yy1006;
18354 	if (yych == 'e') goto yy1006;
18355 	goto yy580;
18356 yy898:
18357 	YYDEBUG(898, *YYCURSOR);
18358 	yyaccept = 23;
18359 	yych = *(YYMARKER = ++YYCURSOR);
18360 	if (yych == 'R') goto yy1007;
18361 	if (yych == 'r') goto yy1007;
18362 	goto yy580;
18363 yy899:
18364 	YYDEBUG(899, *YYCURSOR);
18365 	yyaccept = 23;
18366 	yych = *(YYMARKER = ++YYCURSOR);
18367 	if (yych == 'U') goto yy1008;
18368 	if (yych == 'u') goto yy1008;
18369 	goto yy580;
18370 yy900:
18371 	YYDEBUG(900, *YYCURSOR);
18372 	yych = *++YYCURSOR;
18373 	if (yych == 'Y') goto yy763;
18374 	if (yych == 'y') goto yy763;
18375 	goto yy580;
18376 yy901:
18377 	YYDEBUG(901, *YYCURSOR);
18378 	yych = *++YYCURSOR;
18379 	if (yych == 'E') goto yy763;
18380 	if (yych == 'e') goto yy763;
18381 	goto yy580;
18382 yy902:
18383 	YYDEBUG(902, *YYCURSOR);
18384 	yyaccept = 23;
18385 	yych = *(YYMARKER = ++YYCURSOR);
18386 	if (yych == 'C') goto yy1009;
18387 	if (yych == 'c') goto yy1009;
18388 	goto yy580;
18389 yy903:
18390 	YYDEBUG(903, *YYCURSOR);
18391 	yyaccept = 23;
18392 	yych = *(YYMARKER = ++YYCURSOR);
18393 	if (yych == 'O') goto yy1010;
18394 	if (yych == 'o') goto yy1010;
18395 	goto yy580;
18396 yy904:
18397 	YYDEBUG(904, *YYCURSOR);
18398 	yych = *++YYCURSOR;
18399 	if (yych == 'T') goto yy897;
18400 	if (yych == 't') goto yy897;
18401 	goto yy580;
18402 yy905:
18403 	YYDEBUG(905, *YYCURSOR);
18404 	yyaccept = 24;
18405 	yych = *(YYMARKER = ++YYCURSOR);
18406 	if (yych == '-') goto yy1011;
18407 	if (yych <= '/') goto yy906;
18408 	if (yych <= '7') goto yy1012;
18409 yy906:
18410 	YYDEBUG(906, *YYCURSOR);
18411 #line 1552 "parse_date.re"
18412 	{
18413 		timelib_sll w, d;
18414 		DEBUG_OUTPUT("isoweek");
18415 		TIMELIB_INIT;
18416 		TIMELIB_HAVE_DATE();
18417 		TIMELIB_HAVE_RELATIVE();
18418 
18419 		s->time->y = timelib_get_nr((char **) &ptr, 4);
18420 		w = timelib_get_nr((char **) &ptr, 2);
18421 		d = 1;
18422 		s->time->m = 1;
18423 		s->time->d = 1;
18424 		s->time->relative.d = timelib_daynr_from_weeknr(s->time->y, w, d);
18425 
18426 		TIMELIB_DEINIT;
18427 		return TIMELIB_ISO_WEEK;
18428 	}
18429 #line 18430 "<stdout>"
18430 yy907:
18431 	YYDEBUG(907, *YYCURSOR);
18432 	yych = *++YYCURSOR;
18433 	if (yych == 'G') goto yy1014;
18434 	if (yych == 'g') goto yy1014;
18435 	goto yy56;
18436 yy908:
18437 	YYDEBUG(908, *YYCURSOR);
18438 	yych = *++YYCURSOR;
18439 	if (yych == 'Y') goto yy243;
18440 	if (yych == 'y') goto yy243;
18441 	goto yy56;
18442 yy909:
18443 	YYDEBUG(909, *YYCURSOR);
18444 	yych = *++YYCURSOR;
18445 	if (yych == 'E') goto yy1015;
18446 	if (yych == 'e') goto yy1015;
18447 	goto yy56;
18448 yy910:
18449 	YYDEBUG(910, *YYCURSOR);
18450 	yych = *++YYCURSOR;
18451 	if (yych == 'R') goto yy243;
18452 	if (yych == 'r') goto yy243;
18453 	goto yy56;
18454 yy911:
18455 	YYDEBUG(911, *YYCURSOR);
18456 	yyaccept = 5;
18457 	yych = *(YYMARKER = ++YYCURSOR);
18458 	if (yych <= ':') {
18459 		if (yych <= ' ') {
18460 			if (yych == '\t') goto yy619;
18461 			if (yych <= 0x1F) goto yy209;
18462 			goto yy619;
18463 		} else {
18464 			if (yych == '.') goto yy1016;
18465 			if (yych <= '9') goto yy209;
18466 			goto yy1017;
18467 		}
18468 	} else {
18469 		if (yych <= 'P') {
18470 			if (yych == 'A') goto yy101;
18471 			if (yych <= 'O') goto yy209;
18472 			goto yy101;
18473 		} else {
18474 			if (yych <= 'a') {
18475 				if (yych <= '`') goto yy209;
18476 				goto yy101;
18477 			} else {
18478 				if (yych == 'p') goto yy101;
18479 				goto yy209;
18480 			}
18481 		}
18482 	}
18483 yy912:
18484 	YYDEBUG(912, *YYCURSOR);
18485 	yyaccept = 16;
18486 	yych = *(YYMARKER = ++YYCURSOR);
18487 	if (yych <= 'n') {
18488 		if (yych <= '/') goto yy547;
18489 		if (yych <= '9') goto yy1018;
18490 		if (yych <= 'm') goto yy547;
18491 		goto yy716;
18492 	} else {
18493 		if (yych <= 'r') {
18494 			if (yych <= 'q') goto yy547;
18495 			goto yy716;
18496 		} else {
18497 			if (yych <= 's') goto yy717;
18498 			if (yych <= 't') goto yy718;
18499 			goto yy547;
18500 		}
18501 	}
18502 yy913:
18503 	YYDEBUG(913, *YYCURSOR);
18504 	yyaccept = 16;
18505 	yych = *(YYMARKER = ++YYCURSOR);
18506 	if (yych <= 'n') {
18507 		if (yych <= '/') goto yy547;
18508 		if (yych <= '1') goto yy1018;
18509 		if (yych <= 'm') goto yy547;
18510 		goto yy716;
18511 	} else {
18512 		if (yych <= 'r') {
18513 			if (yych <= 'q') goto yy547;
18514 			goto yy716;
18515 		} else {
18516 			if (yych <= 's') goto yy717;
18517 			if (yych <= 't') goto yy718;
18518 			goto yy547;
18519 		}
18520 	}
18521 yy914:
18522 	YYDEBUG(914, *YYCURSOR);
18523 	yych = *++YYCURSOR;
18524 	if (yych <= '/') goto yy56;
18525 	if (yych <= '2') goto yy1019;
18526 	if (yych <= '3') goto yy1020;
18527 	goto yy56;
18528 yy915:
18529 	YYDEBUG(915, *YYCURSOR);
18530 	yych = *++YYCURSOR;
18531 	if (yych <= '/') goto yy56;
18532 	if (yych <= '9') goto yy1021;
18533 	goto yy56;
18534 yy916:
18535 	YYDEBUG(916, *YYCURSOR);
18536 	yych = *++YYCURSOR;
18537 	if (yych <= '/') goto yy56;
18538 	if (yych <= '9') goto yy1022;
18539 	goto yy56;
18540 yy917:
18541 	YYDEBUG(917, *YYCURSOR);
18542 	++YYCURSOR;
18543 	if (YYLIMIT <= YYCURSOR) YYFILL(1);
18544 	yych = *YYCURSOR;
18545 yy918:
18546 	YYDEBUG(918, *YYCURSOR);
18547 	if (yybm[0+yych] & 128) {
18548 		goto yy917;
18549 	}
18550 	if (yych <= '.') {
18551 		if (yych == '-') goto yy282;
18552 		goto yy56;
18553 	} else {
18554 		if (yych <= '/') goto yy282;
18555 		if (yych == '_') goto yy282;
18556 		goto yy56;
18557 	}
18558 yy919:
18559 	YYDEBUG(919, *YYCURSOR);
18560 	yych = *++YYCURSOR;
18561 	if (yych == ' ') goto yy1024;
18562 	goto yy56;
18563 yy920:
18564 	YYDEBUG(920, *YYCURSOR);
18565 	yych = *++YYCURSOR;
18566 	if (yych == 'R') goto yy931;
18567 	if (yych == 'r') goto yy931;
18568 	goto yy56;
18569 yy921:
18570 	YYDEBUG(921, *YYCURSOR);
18571 	yych = *++YYCURSOR;
18572 	if (yych == 'R') goto yy931;
18573 	if (yych == 'r') goto yy932;
18574 	goto yy918;
18575 yy922:
18576 	YYDEBUG(922, *YYCURSOR);
18577 	yych = *++YYCURSOR;
18578 	if (yych == 'E') goto yy1025;
18579 	if (yych == 'e') goto yy1025;
18580 	goto yy56;
18581 yy923:
18582 	YYDEBUG(923, *YYCURSOR);
18583 	yych = *++YYCURSOR;
18584 	if (yych == 'H') goto yy957;
18585 	if (yych == 'h') goto yy957;
18586 	goto yy56;
18587 yy924:
18588 	YYDEBUG(924, *YYCURSOR);
18589 	yych = *++YYCURSOR;
18590 	if (yych == 'H') goto yy957;
18591 	if (yych == 'h') goto yy960;
18592 	goto yy918;
18593 yy925:
18594 	YYDEBUG(925, *YYCURSOR);
18595 	yych = *++YYCURSOR;
18596 	if (yych == 'Y') goto yy931;
18597 	if (yych == 'y') goto yy931;
18598 	goto yy56;
18599 yy926:
18600 	YYDEBUG(926, *YYCURSOR);
18601 	yych = *++YYCURSOR;
18602 	if (yych == 'Y') goto yy931;
18603 	if (yych == 'y') goto yy932;
18604 	goto yy918;
18605 yy927:
18606 	YYDEBUG(927, *YYCURSOR);
18607 	yych = *++YYCURSOR;
18608 	if (yych <= '/') goto yy56;
18609 	if (yych <= '5') goto yy1026;
18610 	if (yych <= '6') goto yy1027;
18611 	if (yych <= '9') goto yy1028;
18612 	goto yy56;
18613 yy928:
18614 	YYDEBUG(928, *YYCURSOR);
18615 	yych = *++YYCURSOR;
18616 	if (yych <= '/') goto yy56;
18617 	if (yych <= '5') goto yy1029;
18618 	if (yych <= '6') goto yy1030;
18619 	if (yych <= '9') goto yy1028;
18620 	goto yy56;
18621 yy929:
18622 	YYDEBUG(929, *YYCURSOR);
18623 	yyaccept = 21;
18624 	yych = *(YYMARKER = ++YYCURSOR);
18625 	if (yych <= ':') {
18626 		if (yych <= ' ') {
18627 			if (yych == '\t') goto yy1031;
18628 			if (yych <= 0x1F) goto yy818;
18629 			goto yy1031;
18630 		} else {
18631 			if (yych == '.') goto yy928;
18632 			if (yych <= '9') goto yy818;
18633 			goto yy928;
18634 		}
18635 	} else {
18636 		if (yych <= 'P') {
18637 			if (yych == 'A') goto yy1033;
18638 			if (yych <= 'O') goto yy818;
18639 			goto yy1033;
18640 		} else {
18641 			if (yych <= 'a') {
18642 				if (yych <= '`') goto yy818;
18643 				goto yy1033;
18644 			} else {
18645 				if (yych == 'p') goto yy1033;
18646 				goto yy818;
18647 			}
18648 		}
18649 	}
18650 yy930:
18651 	YYDEBUG(930, *YYCURSOR);
18652 	++YYCURSOR;
18653 	goto yy310;
18654 yy931:
18655 	YYDEBUG(931, *YYCURSOR);
18656 	yyaccept = 8;
18657 	yych = *(YYMARKER = ++YYCURSOR);
18658 	if (yych <= ' ') {
18659 		if (yych == '\t') goto yy135;
18660 		if (yych <= 0x1F) goto yy280;
18661 		goto yy135;
18662 	} else {
18663 		if (yych <= '.') {
18664 			if (yych <= ',') goto yy280;
18665 			goto yy135;
18666 		} else {
18667 			if (yych <= '/') goto yy280;
18668 			if (yych <= '9') goto yy135;
18669 			goto yy280;
18670 		}
18671 	}
18672 yy932:
18673 	YYDEBUG(932, *YYCURSOR);
18674 	yyaccept = 8;
18675 	yych = *(YYMARKER = ++YYCURSOR);
18676 	if (yybm[0+yych] & 128) {
18677 		goto yy917;
18678 	}
18679 	if (yych <= '-') {
18680 		if (yych <= 0x1F) {
18681 			if (yych == '\t') goto yy135;
18682 			goto yy280;
18683 		} else {
18684 			if (yych <= ' ') goto yy135;
18685 			if (yych <= ',') goto yy280;
18686 			goto yy679;
18687 		}
18688 	} else {
18689 		if (yych <= '9') {
18690 			if (yych == '/') goto yy282;
18691 			goto yy135;
18692 		} else {
18693 			if (yych == '_') goto yy282;
18694 			goto yy280;
18695 		}
18696 	}
18697 yy933:
18698 	YYDEBUG(933, *YYCURSOR);
18699 	yych = *++YYCURSOR;
18700 	if (yych == 'Y') goto yy1034;
18701 	if (yych == 'y') goto yy1034;
18702 	goto yy56;
18703 yy934:
18704 	YYDEBUG(934, *YYCURSOR);
18705 	yych = *++YYCURSOR;
18706 	if (yych == 'R') goto yy1035;
18707 	if (yych == 'r') goto yy1035;
18708 	goto yy56;
18709 yy935:
18710 	YYDEBUG(935, *YYCURSOR);
18711 	yych = *++YYCURSOR;
18712 	if (yych == 'I') goto yy1036;
18713 	if (yych == 'i') goto yy1036;
18714 	goto yy56;
18715 yy936:
18716 	YYDEBUG(936, *YYCURSOR);
18717 	yych = *++YYCURSOR;
18718 	if (yych == 'U') goto yy1037;
18719 	if (yych == 'u') goto yy1037;
18720 	goto yy56;
18721 yy937:
18722 	YYDEBUG(937, *YYCURSOR);
18723 	yych = *++YYCURSOR;
18724 	if (yych <= 'N') {
18725 		if (yych <= 'K') {
18726 			if (yych == 'C') goto yy1038;
18727 			goto yy56;
18728 		} else {
18729 			if (yych <= 'L') goto yy1039;
18730 			if (yych <= 'M') goto yy56;
18731 			goto yy1040;
18732 		}
18733 	} else {
18734 		if (yych <= 'k') {
18735 			if (yych == 'c') goto yy1038;
18736 			goto yy56;
18737 		} else {
18738 			if (yych <= 'l') goto yy1039;
18739 			if (yych == 'n') goto yy1040;
18740 			goto yy56;
18741 		}
18742 	}
18743 yy938:
18744 	YYDEBUG(938, *YYCURSOR);
18745 	yych = *++YYCURSOR;
18746 	if (yych == 'N') goto yy1041;
18747 	if (yych == 'n') goto yy1041;
18748 	goto yy56;
18749 yy939:
18750 	YYDEBUG(939, *YYCURSOR);
18751 	yyaccept = 25;
18752 	yych = *(YYMARKER = ++YYCURSOR);
18753 	if (yych == 'E') goto yy1042;
18754 	if (yych == 'e') goto yy1042;
18755 yy940:
18756 	YYDEBUG(940, *YYCURSOR);
18757 #line 1692 "parse_date.re"
18758 	{
18759 		timelib_sll i;
18760 		int         behavior = 0;
18761 		DEBUG_OUTPUT("relativetext");
18762 		TIMELIB_INIT;
18763 		TIMELIB_HAVE_RELATIVE();
18764 
18765 		while(*ptr) {
18766 			i = timelib_get_relative_text((char **) &ptr, &behavior);
18767 			timelib_eat_spaces((char **) &ptr);
18768 			timelib_set_relative((char **) &ptr, i, behavior, s);
18769 		}
18770 		TIMELIB_DEINIT;
18771 		return TIMELIB_RELATIVE;
18772 	}
18773 #line 18774 "<stdout>"
18774 yy941:
18775 	YYDEBUG(941, *YYCURSOR);
18776 	yych = *++YYCURSOR;
18777 	if (yych == 'T') goto yy1043;
18778 	if (yych == 't') goto yy1043;
18779 	goto yy56;
18780 yy942:
18781 	YYDEBUG(942, *YYCURSOR);
18782 	yych = *++YYCURSOR;
18783 	if (yych == 'C') goto yy1044;
18784 	if (yych == 'c') goto yy1044;
18785 	goto yy56;
18786 yy943:
18787 	YYDEBUG(943, *YYCURSOR);
18788 	yych = *++YYCURSOR;
18789 	if (yych == 'N') goto yy1036;
18790 	if (yych == 'n') goto yy1036;
18791 	goto yy56;
18792 yy944:
18793 	YYDEBUG(944, *YYCURSOR);
18794 	yych = *++YYCURSOR;
18795 	if (yych == 'U') goto yy1045;
18796 	if (yych == 'u') goto yy1045;
18797 	goto yy56;
18798 yy945:
18799 	YYDEBUG(945, *YYCURSOR);
18800 	yych = *++YYCURSOR;
18801 	if (yych == 'E') goto yy1046;
18802 	if (yych == 'e') goto yy1046;
18803 	goto yy56;
18804 yy946:
18805 	YYDEBUG(946, *YYCURSOR);
18806 	yych = *++YYCURSOR;
18807 	if (yych == 'E') goto yy1042;
18808 	if (yych == 'e') goto yy1042;
18809 	goto yy56;
18810 yy947:
18811 	YYDEBUG(947, *YYCURSOR);
18812 	yych = *++YYCURSOR;
18813 	if (yych <= 'E') {
18814 		if (yych <= 'C') goto yy56;
18815 		if (yych <= 'D') goto yy1047;
18816 		goto yy1048;
18817 	} else {
18818 		if (yych <= 'c') goto yy56;
18819 		if (yych <= 'd') goto yy1047;
18820 		if (yych <= 'e') goto yy1048;
18821 		goto yy56;
18822 	}
18823 yy948:
18824 	YYDEBUG(948, *YYCURSOR);
18825 	yych = *++YYCURSOR;
18826 	if (yych == 'A') goto yy1037;
18827 	if (yych == 'a') goto yy1037;
18828 	goto yy56;
18829 yy949:
18830 	YYDEBUG(949, *YYCURSOR);
18831 	yych = *++YYCURSOR;
18832 	if (yych == 'S') goto yy939;
18833 	if (yych == 's') goto yy939;
18834 	goto yy56;
18835 yy950:
18836 	YYDEBUG(950, *YYCURSOR);
18837 	yych = *++YYCURSOR;
18838 	if (yych == 'Y') goto yy1049;
18839 	if (yych == 'y') goto yy1049;
18840 	goto yy56;
18841 yy951:
18842 	YYDEBUG(951, *YYCURSOR);
18843 	yych = *++YYCURSOR;
18844 	if (yych == 'T') goto yy1050;
18845 	if (yych == 't') goto yy1050;
18846 	goto yy56;
18847 yy952:
18848 	YYDEBUG(952, *YYCURSOR);
18849 	yych = *++YYCURSOR;
18850 	if (yych == 'T') goto yy1050;
18851 	if (yych == 't') goto yy1051;
18852 	goto yy918;
18853 yy953:
18854 	YYDEBUG(953, *YYCURSOR);
18855 	yych = *++YYCURSOR;
18856 	if (yych == 'S') goto yy1052;
18857 	if (yych == 's') goto yy1052;
18858 	goto yy56;
18859 yy954:
18860 	YYDEBUG(954, *YYCURSOR);
18861 	yych = *++YYCURSOR;
18862 	if (yych == 'S') goto yy1052;
18863 	if (yych == 's') goto yy1053;
18864 	goto yy918;
18865 yy955:
18866 	YYDEBUG(955, *YYCURSOR);
18867 	yych = *++YYCURSOR;
18868 	if (yych == 'Y') goto yy963;
18869 	if (yych == 'y') goto yy963;
18870 	goto yy56;
18871 yy956:
18872 	YYDEBUG(956, *YYCURSOR);
18873 	yych = *++YYCURSOR;
18874 	if (yych == 'E') goto yy920;
18875 	if (yych == 'e') goto yy920;
18876 	goto yy56;
18877 yy957:
18878 	YYDEBUG(957, *YYCURSOR);
18879 	yych = *++YYCURSOR;
18880 	if (yych == '\t') goto yy806;
18881 	if (yych == ' ') goto yy806;
18882 	goto yy56;
18883 yy958:
18884 	YYDEBUG(958, *YYCURSOR);
18885 	yych = *++YYCURSOR;
18886 	if (yych == 'Y') goto yy963;
18887 	if (yych == 'y') goto yy965;
18888 	goto yy918;
18889 yy959:
18890 	YYDEBUG(959, *YYCURSOR);
18891 	yych = *++YYCURSOR;
18892 	if (yych == 'E') goto yy920;
18893 	if (yych == 'e') goto yy921;
18894 	goto yy918;
18895 yy960:
18896 	YYDEBUG(960, *YYCURSOR);
18897 	yych = *++YYCURSOR;
18898 	if (yych == '\t') goto yy806;
18899 	if (yych == ' ') goto yy806;
18900 	goto yy918;
18901 yy961:
18902 	YYDEBUG(961, *YYCURSOR);
18903 	++YYCURSOR;
18904 	goto yy750;
18905 yy962:
18906 	YYDEBUG(962, *YYCURSOR);
18907 	yych = *++YYCURSOR;
18908 	if (yych == 'W') goto yy1054;
18909 	if (yych == 'w') goto yy1054;
18910 	goto yy56;
18911 yy963:
18912 	YYDEBUG(963, *YYCURSOR);
18913 	++YYCURSOR;
18914 	goto yy300;
18915 yy964:
18916 	YYDEBUG(964, *YYCURSOR);
18917 	yych = *++YYCURSOR;
18918 	if (yych == 'W') goto yy1054;
18919 	if (yych == 'w') goto yy1056;
18920 	goto yy918;
18921 yy965:
18922 	YYDEBUG(965, *YYCURSOR);
18923 	yyaccept = 10;
18924 	yych = *(YYMARKER = ++YYCURSOR);
18925 	if (yybm[0+yych] & 128) {
18926 		goto yy917;
18927 	}
18928 	if (yych <= '.') {
18929 		if (yych == '-') goto yy282;
18930 		goto yy300;
18931 	} else {
18932 		if (yych <= '/') goto yy282;
18933 		if (yych == '_') goto yy282;
18934 		goto yy300;
18935 	}
18936 yy966:
18937 	YYDEBUG(966, *YYCURSOR);
18938 	yych = *++YYCURSOR;
18939 	if (yych == 'A') goto yy955;
18940 	if (yych == 'a') goto yy955;
18941 	goto yy56;
18942 yy967:
18943 	YYDEBUG(967, *YYCURSOR);
18944 	yych = *++YYCURSOR;
18945 	if (yych == 'S') goto yy963;
18946 	if (yych == 's') goto yy963;
18947 	goto yy300;
18948 yy968:
18949 	YYDEBUG(968, *YYCURSOR);
18950 	yych = *++YYCURSOR;
18951 	if (yych == 'A') goto yy955;
18952 	if (yych == 'a') goto yy958;
18953 	goto yy918;
18954 yy969:
18955 	YYDEBUG(969, *YYCURSOR);
18956 	yyaccept = 10;
18957 	yych = *(YYMARKER = ++YYCURSOR);
18958 	if (yych <= 'S') {
18959 		if (yych <= '.') {
18960 			if (yych == '-') goto yy282;
18961 			goto yy300;
18962 		} else {
18963 			if (yych <= '/') goto yy282;
18964 			if (yych <= 'R') goto yy300;
18965 			goto yy963;
18966 		}
18967 	} else {
18968 		if (yych <= '`') {
18969 			if (yych == '_') goto yy282;
18970 			goto yy300;
18971 		} else {
18972 			if (yych == 's') goto yy965;
18973 			if (yych <= 'z') goto yy917;
18974 			goto yy300;
18975 		}
18976 	}
18977 yy970:
18978 	YYDEBUG(970, *YYCURSOR);
18979 	yych = *++YYCURSOR;
18980 	if (yych == 'A') goto yy1057;
18981 	if (yych == 'a') goto yy1057;
18982 	goto yy56;
18983 yy971:
18984 	YYDEBUG(971, *YYCURSOR);
18985 	yych = *++YYCURSOR;
18986 	if (yych == 'A') goto yy1057;
18987 	if (yych == 'a') goto yy1058;
18988 	goto yy918;
18989 yy972:
18990 	YYDEBUG(972, *YYCURSOR);
18991 	yych = *++YYCURSOR;
18992 	if (yych == '-') goto yy1059;
18993 	goto yy56;
18994 yy973:
18995 	YYDEBUG(973, *YYCURSOR);
18996 	++YYCURSOR;
18997 	YYDEBUG(974, *YYCURSOR);
18998 #line 1401 "parse_date.re"
18999 	{
19000 		DEBUG_OUTPUT("pointed date YYYY");
19001 		TIMELIB_INIT;
19002 		TIMELIB_HAVE_DATE();
19003 		s->time->d = timelib_get_nr((char **) &ptr, 2);
19004 		s->time->m = timelib_get_nr((char **) &ptr, 2);
19005 		s->time->y = timelib_get_nr((char **) &ptr, 4);
19006 		TIMELIB_DEINIT;
19007 		return TIMELIB_DATE_FULL_POINTED;
19008 	}
19009 #line 19010 "<stdout>"
19010 yy975:
19011 	YYDEBUG(975, *YYCURSOR);
19012 	++YYCURSOR;
19013 	goto yy214;
19014 yy976:
19015 	YYDEBUG(976, *YYCURSOR);
19016 	yych = *++YYCURSOR;
19017 	if (yych <= '/') goto yy56;
19018 	if (yych <= '9') goto yy1060;
19019 	goto yy56;
19020 yy977:
19021 	YYDEBUG(977, *YYCURSOR);
19022 	yyaccept = 26;
19023 	yych = *(YYMARKER = ++YYCURSOR);
19024 	if (yych <= 'n') {
19025 		if (yych <= '/') goto yy978;
19026 		if (yych <= '9') goto yy862;
19027 		if (yych >= 'n') goto yy716;
19028 	} else {
19029 		if (yych <= 'r') {
19030 			if (yych >= 'r') goto yy716;
19031 		} else {
19032 			if (yych <= 's') goto yy717;
19033 			if (yych <= 't') goto yy718;
19034 		}
19035 	}
19036 yy978:
19037 	YYDEBUG(978, *YYCURSOR);
19038 #line 1344 "parse_date.re"
19039 	{
19040 		int length = 0;
19041 		DEBUG_OUTPUT("iso8601date2");
19042 		TIMELIB_INIT;
19043 		TIMELIB_HAVE_DATE();
19044 		s->time->y = timelib_get_nr_ex((char **) &ptr, 4, &length);
19045 		s->time->m = timelib_get_nr((char **) &ptr, 2);
19046 		s->time->d = timelib_get_nr((char **) &ptr, 2);
19047 		TIMELIB_PROCESS_YEAR(s->time->y, length);
19048 		TIMELIB_DEINIT;
19049 		return TIMELIB_ISO_DATE;
19050 	}
19051 #line 19052 "<stdout>"
19052 yy979:
19053 	YYDEBUG(979, *YYCURSOR);
19054 	yyaccept = 16;
19055 	yych = *(YYMARKER = ++YYCURSOR);
19056 	if (yych <= 'm') {
19057 		if (yych <= '9') {
19058 			if (yych <= '/') goto yy547;
19059 			goto yy981;
19060 		} else {
19061 			if (yych == 'T') goto yy1061;
19062 			goto yy547;
19063 		}
19064 	} else {
19065 		if (yych <= 'r') {
19066 			if (yych <= 'n') goto yy1062;
19067 			if (yych <= 'q') goto yy547;
19068 			goto yy1062;
19069 		} else {
19070 			if (yych <= 's') goto yy1063;
19071 			if (yych <= 't') goto yy1064;
19072 			goto yy547;
19073 		}
19074 	}
19075 yy980:
19076 	YYDEBUG(980, *YYCURSOR);
19077 	yyaccept = 16;
19078 	yych = *(YYMARKER = ++YYCURSOR);
19079 	if (yych <= 'm') {
19080 		if (yych <= '1') {
19081 			if (yych <= '/') goto yy547;
19082 		} else {
19083 			if (yych == 'T') goto yy1061;
19084 			goto yy547;
19085 		}
19086 	} else {
19087 		if (yych <= 'r') {
19088 			if (yych <= 'n') goto yy1062;
19089 			if (yych <= 'q') goto yy547;
19090 			goto yy1062;
19091 		} else {
19092 			if (yych <= 's') goto yy1063;
19093 			if (yych <= 't') goto yy1064;
19094 			goto yy547;
19095 		}
19096 	}
19097 yy981:
19098 	YYDEBUG(981, *YYCURSOR);
19099 	yyaccept = 16;
19100 	yych = *(YYMARKER = ++YYCURSOR);
19101 	if (yych <= 'n') {
19102 		if (yych == 'T') goto yy1061;
19103 		if (yych <= 'm') goto yy547;
19104 		goto yy1062;
19105 	} else {
19106 		if (yych <= 'r') {
19107 			if (yych <= 'q') goto yy547;
19108 			goto yy1062;
19109 		} else {
19110 			if (yych <= 's') goto yy1063;
19111 			if (yych <= 't') goto yy1064;
19112 			goto yy547;
19113 		}
19114 	}
19115 yy982:
19116 	YYDEBUG(982, *YYCURSOR);
19117 	yych = *++YYCURSOR;
19118 	if (yych <= '/') goto yy56;
19119 	if (yych <= '2') goto yy1065;
19120 	if (yych <= '3') goto yy1066;
19121 	if (yych <= '9') goto yy981;
19122 	goto yy56;
19123 yy983:
19124 	YYDEBUG(983, *YYCURSOR);
19125 	yyaccept = 23;
19126 	yych = *(YYMARKER = ++YYCURSOR);
19127 	if (yych <= 'H') {
19128 		if (yych == '-') goto yy914;
19129 		goto yy580;
19130 	} else {
19131 		if (yych <= 'I') goto yy1004;
19132 		if (yych == 'i') goto yy1004;
19133 		goto yy580;
19134 	}
19135 yy984:
19136 	YYDEBUG(984, *YYCURSOR);
19137 	yyaccept = 23;
19138 	yych = *(YYMARKER = ++YYCURSOR);
19139 	if (yych <= 'T') {
19140 		if (yych == '-') goto yy914;
19141 		goto yy580;
19142 	} else {
19143 		if (yych <= 'U') goto yy1005;
19144 		if (yych == 'u') goto yy1005;
19145 		goto yy580;
19146 	}
19147 yy985:
19148 	YYDEBUG(985, *YYCURSOR);
19149 	yyaccept = 23;
19150 	yych = *(YYMARKER = ++YYCURSOR);
19151 	if (yych <= 'D') {
19152 		if (yych == '-') goto yy914;
19153 		goto yy580;
19154 	} else {
19155 		if (yych <= 'E') goto yy1006;
19156 		if (yych == 'e') goto yy1006;
19157 		goto yy580;
19158 	}
19159 yy986:
19160 	YYDEBUG(986, *YYCURSOR);
19161 	yyaccept = 23;
19162 	yych = *(YYMARKER = ++YYCURSOR);
19163 	if (yych <= 'Q') {
19164 		if (yych == '-') goto yy914;
19165 		goto yy580;
19166 	} else {
19167 		if (yych <= 'R') goto yy1007;
19168 		if (yych == 'r') goto yy1007;
19169 		goto yy580;
19170 	}
19171 yy987:
19172 	YYDEBUG(987, *YYCURSOR);
19173 	yyaccept = 23;
19174 	yych = *(YYMARKER = ++YYCURSOR);
19175 	if (yych <= 'T') {
19176 		if (yych == '-') goto yy914;
19177 		goto yy580;
19178 	} else {
19179 		if (yych <= 'U') goto yy1008;
19180 		if (yych == 'u') goto yy1008;
19181 		goto yy580;
19182 	}
19183 yy988:
19184 	YYDEBUG(988, *YYCURSOR);
19185 	yyaccept = 23;
19186 	yych = *(YYMARKER = ++YYCURSOR);
19187 	if (yych <= 'X') {
19188 		if (yych == '-') goto yy914;
19189 		goto yy580;
19190 	} else {
19191 		if (yych <= 'Y') goto yy763;
19192 		if (yych == 'y') goto yy763;
19193 		goto yy580;
19194 	}
19195 yy989:
19196 	YYDEBUG(989, *YYCURSOR);
19197 	yyaccept = 23;
19198 	yych = *(YYMARKER = ++YYCURSOR);
19199 	if (yych <= 'D') {
19200 		if (yych == '-') goto yy914;
19201 		goto yy580;
19202 	} else {
19203 		if (yych <= 'E') goto yy763;
19204 		if (yych == 'e') goto yy763;
19205 		goto yy580;
19206 	}
19207 yy990:
19208 	YYDEBUG(990, *YYCURSOR);
19209 	yyaccept = 23;
19210 	yych = *(YYMARKER = ++YYCURSOR);
19211 	if (yych <= 'B') {
19212 		if (yych == '-') goto yy914;
19213 		goto yy580;
19214 	} else {
19215 		if (yych <= 'C') goto yy1009;
19216 		if (yych == 'c') goto yy1009;
19217 		goto yy580;
19218 	}
19219 yy991:
19220 	YYDEBUG(991, *YYCURSOR);
19221 	yyaccept = 23;
19222 	yych = *(YYMARKER = ++YYCURSOR);
19223 	if (yych == '-') goto yy914;
19224 	goto yy580;
19225 yy992:
19226 	YYDEBUG(992, *YYCURSOR);
19227 	yyaccept = 23;
19228 	yych = *(YYMARKER = ++YYCURSOR);
19229 	if (yych <= 'N') {
19230 		if (yych == '-') goto yy914;
19231 		goto yy580;
19232 	} else {
19233 		if (yych <= 'O') goto yy1010;
19234 		if (yych == 'o') goto yy1010;
19235 		goto yy580;
19236 	}
19237 yy993:
19238 	YYDEBUG(993, *YYCURSOR);
19239 	yyaccept = 23;
19240 	yych = *(YYMARKER = ++YYCURSOR);
19241 	if (yych <= 'S') {
19242 		if (yych == '-') goto yy914;
19243 		goto yy580;
19244 	} else {
19245 		if (yych <= 'T') goto yy985;
19246 		if (yych == 't') goto yy985;
19247 		goto yy580;
19248 	}
19249 yy994:
19250 	YYDEBUG(994, *YYCURSOR);
19251 	++YYCURSOR;
19252 	goto yy890;
19253 yy995:
19254 	YYDEBUG(995, *YYCURSOR);
19255 	yyaccept = 27;
19256 	yych = *(YYMARKER = ++YYCURSOR);
19257 	if (yych <= 'n') {
19258 		if (yych <= '/') goto yy996;
19259 		if (yych <= '9') goto yy998;
19260 		if (yych >= 'n') goto yy1067;
19261 	} else {
19262 		if (yych <= 'r') {
19263 			if (yych >= 'r') goto yy1067;
19264 		} else {
19265 			if (yych <= 's') goto yy1068;
19266 			if (yych <= 't') goto yy1069;
19267 		}
19268 	}
19269 yy996:
19270 	YYDEBUG(996, *YYCURSOR);
19271 #line 1332 "parse_date.re"
19272 	{
19273 		DEBUG_OUTPUT("iso8601date4 | iso8601date2 | iso8601dateslash | dateslash");
19274 		TIMELIB_INIT;
19275 		TIMELIB_HAVE_DATE();
19276 		s->time->y = timelib_get_unsigned_nr((char **) &ptr, 4);
19277 		s->time->m = timelib_get_nr((char **) &ptr, 2);
19278 		s->time->d = timelib_get_nr((char **) &ptr, 2);
19279 		TIMELIB_DEINIT;
19280 		return TIMELIB_ISO_DATE;
19281 	}
19282 #line 19283 "<stdout>"
19283 yy997:
19284 	YYDEBUG(997, *YYCURSOR);
19285 	yyaccept = 27;
19286 	yych = *(YYMARKER = ++YYCURSOR);
19287 	if (yych <= 'n') {
19288 		if (yych <= '/') goto yy996;
19289 		if (yych <= '1') goto yy998;
19290 		if (yych <= 'm') goto yy996;
19291 		goto yy1067;
19292 	} else {
19293 		if (yych <= 'r') {
19294 			if (yych <= 'q') goto yy996;
19295 			goto yy1067;
19296 		} else {
19297 			if (yych <= 's') goto yy1068;
19298 			if (yych <= 't') goto yy1069;
19299 			goto yy996;
19300 		}
19301 	}
19302 yy998:
19303 	YYDEBUG(998, *YYCURSOR);
19304 	yyaccept = 27;
19305 	yych = *(YYMARKER = ++YYCURSOR);
19306 	if (yych <= 'q') {
19307 		if (yych == 'n') goto yy1067;
19308 		goto yy996;
19309 	} else {
19310 		if (yych <= 'r') goto yy1067;
19311 		if (yych <= 's') goto yy1068;
19312 		if (yych <= 't') goto yy1069;
19313 		goto yy996;
19314 	}
19315 yy999:
19316 	YYDEBUG(999, *YYCURSOR);
19317 	yych = *++YYCURSOR;
19318 	if (yych <= '/') goto yy56;
19319 	if (yych <= '2') goto yy1070;
19320 	if (yych <= '3') goto yy1071;
19321 	if (yych <= '9') goto yy998;
19322 	goto yy56;
19323 yy1000:
19324 	YYDEBUG(1000, *YYCURSOR);
19325 	yyaccept = 28;
19326 	yych = *(YYMARKER = ++YYCURSOR);
19327 	if (yych <= 'W') {
19328 		if (yych <= 'F') {
19329 			if (yych <= '/') {
19330 				if (yych <= '\t') {
19331 					if (yych >= '\t') goto yy185;
19332 				} else {
19333 					if (yych == ' ') goto yy185;
19334 				}
19335 			} else {
19336 				if (yych <= 'C') {
19337 					if (yych <= '9') goto yy1072;
19338 				} else {
19339 					if (yych <= 'D') goto yy188;
19340 					if (yych >= 'F') goto yy189;
19341 				}
19342 			}
19343 		} else {
19344 			if (yych <= 'R') {
19345 				if (yych <= 'H') {
19346 					if (yych >= 'H') goto yy75;
19347 				} else {
19348 					if (yych == 'M') goto yy190;
19349 				}
19350 			} else {
19351 				if (yych <= 'T') {
19352 					if (yych <= 'S') goto yy191;
19353 					goto yy1073;
19354 				} else {
19355 					if (yych <= 'U') goto yy84;
19356 					if (yych >= 'W') goto yy86;
19357 				}
19358 			}
19359 		}
19360 	} else {
19361 		if (yych <= 'm') {
19362 			if (yych <= 'e') {
19363 				if (yych <= 'Y') {
19364 					if (yych >= 'Y') goto yy88;
19365 				} else {
19366 					if (yych == 'd') goto yy188;
19367 				}
19368 			} else {
19369 				if (yych <= 'g') {
19370 					if (yych <= 'f') goto yy189;
19371 				} else {
19372 					if (yych <= 'h') goto yy75;
19373 					if (yych >= 'm') goto yy190;
19374 				}
19375 			}
19376 		} else {
19377 			if (yych <= 'v') {
19378 				if (yych <= 's') {
19379 					if (yych >= 's') goto yy191;
19380 				} else {
19381 					if (yych <= 't') goto yy1074;
19382 					if (yych <= 'u') goto yy84;
19383 				}
19384 			} else {
19385 				if (yych <= 'y') {
19386 					if (yych <= 'w') goto yy86;
19387 					if (yych >= 'y') goto yy88;
19388 				} else {
19389 					if (yych == 0xC2) goto yy93;
19390 				}
19391 			}
19392 		}
19393 	}
19394 yy1001:
19395 	YYDEBUG(1001, *YYCURSOR);
19396 #line 1481 "parse_date.re"
19397 	{
19398 		DEBUG_OUTPUT("datenocolon");
19399 		TIMELIB_INIT;
19400 		TIMELIB_HAVE_DATE();
19401 		s->time->y = timelib_get_nr((char **) &ptr, 4);
19402 		s->time->m = timelib_get_nr((char **) &ptr, 2);
19403 		s->time->d = timelib_get_nr((char **) &ptr, 2);
19404 		TIMELIB_DEINIT;
19405 		return TIMELIB_DATE_NOCOLON;
19406 	}
19407 #line 19408 "<stdout>"
19408 yy1002:
19409 	YYDEBUG(1002, *YYCURSOR);
19410 	yych = *++YYCURSOR;
19411 	if (yych <= '/') goto yy186;
19412 	if (yych <= '9') goto yy1072;
19413 	goto yy186;
19414 yy1003:
19415 	YYDEBUG(1003, *YYCURSOR);
19416 	yych = *++YYCURSOR;
19417 	if (yych <= '/') goto yy56;
19418 	if (yych <= '2') goto yy1075;
19419 	if (yych <= '3') goto yy1076;
19420 	goto yy56;
19421 yy1004:
19422 	YYDEBUG(1004, *YYCURSOR);
19423 	yych = *++YYCURSOR;
19424 	if (yych == 'L') goto yy763;
19425 	if (yych == 'l') goto yy763;
19426 	goto yy56;
19427 yy1005:
19428 	YYDEBUG(1005, *YYCURSOR);
19429 	yych = *++YYCURSOR;
19430 	if (yych == 'S') goto yy1077;
19431 	if (yych == 's') goto yy1077;
19432 	goto yy56;
19433 yy1006:
19434 	YYDEBUG(1006, *YYCURSOR);
19435 	yych = *++YYCURSOR;
19436 	if (yych == 'M') goto yy1010;
19437 	if (yych == 'm') goto yy1010;
19438 	goto yy56;
19439 yy1007:
19440 	YYDEBUG(1007, *YYCURSOR);
19441 	yych = *++YYCURSOR;
19442 	if (yych == 'U') goto yy1008;
19443 	if (yych != 'u') goto yy56;
19444 yy1008:
19445 	YYDEBUG(1008, *YYCURSOR);
19446 	yych = *++YYCURSOR;
19447 	if (yych == 'A') goto yy1078;
19448 	if (yych == 'a') goto yy1078;
19449 	goto yy56;
19450 yy1009:
19451 	YYDEBUG(1009, *YYCURSOR);
19452 	yych = *++YYCURSOR;
19453 	if (yych == 'H') goto yy763;
19454 	if (yych == 'h') goto yy763;
19455 	goto yy56;
19456 yy1010:
19457 	YYDEBUG(1010, *YYCURSOR);
19458 	yych = *++YYCURSOR;
19459 	if (yych == 'B') goto yy1079;
19460 	if (yych == 'b') goto yy1079;
19461 	goto yy56;
19462 yy1011:
19463 	YYDEBUG(1011, *YYCURSOR);
19464 	yych = *++YYCURSOR;
19465 	if (yych <= '/') goto yy56;
19466 	if (yych >= '8') goto yy56;
19467 yy1012:
19468 	YYDEBUG(1012, *YYCURSOR);
19469 	++YYCURSOR;
19470 	YYDEBUG(1013, *YYCURSOR);
19471 #line 1533 "parse_date.re"
19472 	{
19473 		timelib_sll w, d;
19474 		DEBUG_OUTPUT("isoweekday");
19475 		TIMELIB_INIT;
19476 		TIMELIB_HAVE_DATE();
19477 		TIMELIB_HAVE_RELATIVE();
19478 
19479 		s->time->y = timelib_get_nr((char **) &ptr, 4);
19480 		w = timelib_get_nr((char **) &ptr, 2);
19481 		d = timelib_get_nr((char **) &ptr, 1);
19482 		s->time->m = 1;
19483 		s->time->d = 1;
19484 		s->time->relative.d = timelib_daynr_from_weeknr(s->time->y, w, d);
19485 
19486 		TIMELIB_DEINIT;
19487 		return TIMELIB_ISO_WEEK;
19488 	}
19489 #line 19490 "<stdout>"
19490 yy1014:
19491 	YYDEBUG(1014, *YYCURSOR);
19492 	yych = *++YYCURSOR;
19493 	if (yych == 'H') goto yy1080;
19494 	if (yych == 'h') goto yy1080;
19495 	goto yy56;
19496 yy1015:
19497 	YYDEBUG(1015, *YYCURSOR);
19498 	yych = *++YYCURSOR;
19499 	if (yych == 'C') goto yy1081;
19500 	if (yych == 'c') goto yy1081;
19501 	goto yy56;
19502 yy1016:
19503 	YYDEBUG(1016, *YYCURSOR);
19504 	yych = *++YYCURSOR;
19505 	if (yych <= '/') goto yy56;
19506 	if (yych <= '9') goto yy1082;
19507 	goto yy56;
19508 yy1017:
19509 	YYDEBUG(1017, *YYCURSOR);
19510 	yych = *++YYCURSOR;
19511 	if (yych <= '/') goto yy56;
19512 	if (yych <= '9') goto yy1084;
19513 	goto yy56;
19514 yy1018:
19515 	YYDEBUG(1018, *YYCURSOR);
19516 	yyaccept = 26;
19517 	yych = *(YYMARKER = ++YYCURSOR);
19518 	if (yych <= 'q') {
19519 		if (yych == 'n') goto yy716;
19520 		goto yy978;
19521 	} else {
19522 		if (yych <= 'r') goto yy716;
19523 		if (yych <= 's') goto yy717;
19524 		if (yych <= 't') goto yy718;
19525 		goto yy978;
19526 	}
19527 yy1019:
19528 	YYDEBUG(1019, *YYCURSOR);
19529 	yych = *++YYCURSOR;
19530 	if (yych <= '/') goto yy56;
19531 	if (yych <= '9') goto yy1086;
19532 	goto yy56;
19533 yy1020:
19534 	YYDEBUG(1020, *YYCURSOR);
19535 	yych = *++YYCURSOR;
19536 	if (yych <= '/') goto yy56;
19537 	if (yych <= '1') goto yy1086;
19538 	goto yy56;
19539 yy1021:
19540 	YYDEBUG(1021, *YYCURSOR);
19541 	yych = *++YYCURSOR;
19542 	if (yych <= '/') goto yy56;
19543 	if (yych <= '9') goto yy1088;
19544 	goto yy56;
19545 yy1022:
19546 	YYDEBUG(1022, *YYCURSOR);
19547 	yych = *++YYCURSOR;
19548 	if (yych <= '/') goto yy1023;
19549 	if (yych <= '9') goto yy1090;
19550 yy1023:
19551 	YYDEBUG(1023, *YYCURSOR);
19552 #line 1571 "parse_date.re"
19553 	{
19554 		int length = 0;
19555 		DEBUG_OUTPUT("pgtextshort");
19556 		TIMELIB_INIT;
19557 		TIMELIB_HAVE_DATE();
19558 		s->time->m = timelib_get_month((char **) &ptr);
19559 		s->time->d = timelib_get_nr((char **) &ptr, 2);
19560 		s->time->y = timelib_get_nr_ex((char **) &ptr, 4, &length);
19561 		TIMELIB_PROCESS_YEAR(s->time->y, length);
19562 		TIMELIB_DEINIT;
19563 		return TIMELIB_PG_TEXT;
19564 	}
19565 #line 19566 "<stdout>"
19566 yy1024:
19567 	YYDEBUG(1024, *YYCURSOR);
19568 	yych = *++YYCURSOR;
19569 	if (yych <= '/') goto yy56;
19570 	if (yych <= '1') goto yy1091;
19571 	if (yych <= '2') goto yy1093;
19572 	if (yych <= '9') goto yy1094;
19573 	goto yy56;
19574 yy1025:
19575 	YYDEBUG(1025, *YYCURSOR);
19576 	yych = *++YYCURSOR;
19577 	if (yych <= 'E') {
19578 		if (yych <= 'C') goto yy56;
19579 		if (yych <= 'D') goto yy1047;
19580 		goto yy1095;
19581 	} else {
19582 		if (yych <= 'c') goto yy56;
19583 		if (yych <= 'd') goto yy1047;
19584 		if (yych <= 'e') goto yy1095;
19585 		goto yy56;
19586 	}
19587 yy1026:
19588 	YYDEBUG(1026, *YYCURSOR);
19589 	yych = *++YYCURSOR;
19590 	if (yych <= '/') goto yy818;
19591 	if (yych <= '9') goto yy1096;
19592 	goto yy818;
19593 yy1027:
19594 	YYDEBUG(1027, *YYCURSOR);
19595 	yych = *++YYCURSOR;
19596 	if (yych == '0') goto yy1096;
19597 	goto yy818;
19598 yy1028:
19599 	YYDEBUG(1028, *YYCURSOR);
19600 	++YYCURSOR;
19601 	goto yy818;
19602 yy1029:
19603 	YYDEBUG(1029, *YYCURSOR);
19604 	yych = *++YYCURSOR;
19605 	if (yych <= '/') goto yy818;
19606 	if (yych <= '9') goto yy1097;
19607 	goto yy818;
19608 yy1030:
19609 	YYDEBUG(1030, *YYCURSOR);
19610 	yych = *++YYCURSOR;
19611 	if (yych == '0') goto yy1097;
19612 	goto yy818;
19613 yy1031:
19614 	YYDEBUG(1031, *YYCURSOR);
19615 	++YYCURSOR;
19616 	if ((YYLIMIT - YYCURSOR) < 5) YYFILL(5);
19617 	yych = *YYCURSOR;
19618 	YYDEBUG(1032, *YYCURSOR);
19619 	if (yych <= 'A') {
19620 		if (yych <= 0x1F) {
19621 			if (yych == '\t') goto yy1031;
19622 			goto yy56;
19623 		} else {
19624 			if (yych <= ' ') goto yy1031;
19625 			if (yych <= '@') goto yy56;
19626 		}
19627 	} else {
19628 		if (yych <= '`') {
19629 			if (yych != 'P') goto yy56;
19630 		} else {
19631 			if (yych <= 'a') goto yy1033;
19632 			if (yych != 'p') goto yy56;
19633 		}
19634 	}
19635 yy1033:
19636 	YYDEBUG(1033, *YYCURSOR);
19637 	yych = *++YYCURSOR;
19638 	if (yych <= 'L') {
19639 		if (yych == '.') goto yy1098;
19640 		goto yy56;
19641 	} else {
19642 		if (yych <= 'M') goto yy1099;
19643 		if (yych == 'm') goto yy1099;
19644 		goto yy56;
19645 	}
19646 yy1034:
19647 	YYDEBUG(1034, *YYCURSOR);
19648 	yych = *++YYCURSOR;
19649 	if (yych == 'S') goto yy1100;
19650 	if (yych == 's') goto yy1100;
19651 	goto yy940;
19652 yy1035:
19653 	YYDEBUG(1035, *YYCURSOR);
19654 	yych = *++YYCURSOR;
19655 	if (yych == 'T') goto yy1101;
19656 	if (yych == 't') goto yy1101;
19657 	goto yy56;
19658 yy1036:
19659 	YYDEBUG(1036, *YYCURSOR);
19660 	yyaccept = 25;
19661 	yych = *(YYMARKER = ++YYCURSOR);
19662 	if (yych <= ' ') {
19663 		if (yych == '\t') goto yy1102;
19664 		if (yych <= 0x1F) goto yy940;
19665 		goto yy1102;
19666 	} else {
19667 		if (yych <= 'D') {
19668 			if (yych <= 'C') goto yy940;
19669 			goto yy1104;
19670 		} else {
19671 			if (yych == 'd') goto yy1104;
19672 			goto yy940;
19673 		}
19674 	}
19675 yy1037:
19676 	YYDEBUG(1037, *YYCURSOR);
19677 	yych = *++YYCURSOR;
19678 	if (yych == 'R') goto yy1034;
19679 	if (yych == 'r') goto yy1034;
19680 	goto yy56;
19681 yy1038:
19682 	YYDEBUG(1038, *YYCURSOR);
19683 	yych = *++YYCURSOR;
19684 	if (yych == 'R') goto yy1105;
19685 	if (yych == 'r') goto yy1105;
19686 	goto yy56;
19687 yy1039:
19688 	YYDEBUG(1039, *YYCURSOR);
19689 	yych = *++YYCURSOR;
19690 	if (yych == 'L') goto yy1106;
19691 	if (yych == 'l') goto yy1106;
19692 	goto yy56;
19693 yy1040:
19694 	YYDEBUG(1040, *YYCURSOR);
19695 	yyaccept = 25;
19696 	yych = *(YYMARKER = ++YYCURSOR);
19697 	if (yych <= 'U') {
19698 		if (yych == 'S') goto yy1100;
19699 		if (yych <= 'T') goto yy940;
19700 		goto yy1107;
19701 	} else {
19702 		if (yych <= 's') {
19703 			if (yych <= 'r') goto yy940;
19704 			goto yy1100;
19705 		} else {
19706 			if (yych == 'u') goto yy1107;
19707 			goto yy940;
19708 		}
19709 	}
19710 yy1041:
19711 	YYDEBUG(1041, *YYCURSOR);
19712 	yyaccept = 25;
19713 	yych = *(YYMARKER = ++YYCURSOR);
19714 	if (yych <= 'D') {
19715 		if (yych <= 0x1F) {
19716 			if (yych == '\t') goto yy1102;
19717 			goto yy940;
19718 		} else {
19719 			if (yych <= ' ') goto yy1102;
19720 			if (yych <= 'C') goto yy940;
19721 			goto yy1104;
19722 		}
19723 	} else {
19724 		if (yych <= 'c') {
19725 			if (yych == 'T') goto yy1108;
19726 			goto yy940;
19727 		} else {
19728 			if (yych <= 'd') goto yy1104;
19729 			if (yych == 't') goto yy1108;
19730 			goto yy940;
19731 		}
19732 	}
19733 yy1042:
19734 	YYDEBUG(1042, *YYCURSOR);
19735 	yych = *++YYCURSOR;
19736 	if (yych == 'C') goto yy1034;
19737 	if (yych == 'c') goto yy1034;
19738 	goto yy56;
19739 yy1043:
19740 	YYDEBUG(1043, *YYCURSOR);
19741 	yyaccept = 25;
19742 	yych = *(YYMARKER = ++YYCURSOR);
19743 	if (yych <= ' ') {
19744 		if (yych == '\t') goto yy1102;
19745 		if (yych <= 0x1F) goto yy940;
19746 		goto yy1102;
19747 	} else {
19748 		if (yych <= 'U') {
19749 			if (yych <= 'T') goto yy940;
19750 			goto yy1109;
19751 		} else {
19752 			if (yych == 'u') goto yy1109;
19753 			goto yy940;
19754 		}
19755 	}
19756 yy1044:
19757 	YYDEBUG(1044, *YYCURSOR);
19758 	yyaccept = 25;
19759 	yych = *(YYMARKER = ++YYCURSOR);
19760 	if (yych <= 'S') {
19761 		if (yych == 'O') goto yy1110;
19762 		if (yych <= 'R') goto yy940;
19763 		goto yy1100;
19764 	} else {
19765 		if (yych <= 'o') {
19766 			if (yych <= 'n') goto yy940;
19767 			goto yy1110;
19768 		} else {
19769 			if (yych == 's') goto yy1100;
19770 			goto yy940;
19771 		}
19772 	}
19773 yy1045:
19774 	YYDEBUG(1045, *YYCURSOR);
19775 	yyaccept = 25;
19776 	yych = *(YYMARKER = ++YYCURSOR);
19777 	if (yych <= ' ') {
19778 		if (yych == '\t') goto yy1102;
19779 		if (yych <= 0x1F) goto yy940;
19780 		goto yy1102;
19781 	} else {
19782 		if (yych <= 'R') {
19783 			if (yych <= 'Q') goto yy940;
19784 			goto yy1111;
19785 		} else {
19786 			if (yych == 'r') goto yy1111;
19787 			goto yy940;
19788 		}
19789 	}
19790 yy1046:
19791 	YYDEBUG(1046, *YYCURSOR);
19792 	yyaccept = 25;
19793 	yych = *(YYMARKER = ++YYCURSOR);
19794 	if (yych <= ' ') {
19795 		if (yych == '\t') goto yy1102;
19796 		if (yych <= 0x1F) goto yy940;
19797 		goto yy1102;
19798 	} else {
19799 		if (yych <= 'S') {
19800 			if (yych <= 'R') goto yy940;
19801 			goto yy1112;
19802 		} else {
19803 			if (yych == 's') goto yy1112;
19804 			goto yy940;
19805 		}
19806 	}
19807 yy1047:
19808 	YYDEBUG(1047, *YYCURSOR);
19809 	yyaccept = 25;
19810 	yych = *(YYMARKER = ++YYCURSOR);
19811 	if (yych <= ' ') {
19812 		if (yych == '\t') goto yy1102;
19813 		if (yych <= 0x1F) goto yy940;
19814 		goto yy1102;
19815 	} else {
19816 		if (yych <= 'N') {
19817 			if (yych <= 'M') goto yy940;
19818 			goto yy1113;
19819 		} else {
19820 			if (yych == 'n') goto yy1113;
19821 			goto yy940;
19822 		}
19823 	}
19824 yy1048:
19825 	YYDEBUG(1048, *YYCURSOR);
19826 	yych = *++YYCURSOR;
19827 	if (yych == 'K') goto yy1114;
19828 	if (yych == 'k') goto yy1114;
19829 	goto yy56;
19830 yy1049:
19831 	YYDEBUG(1049, *YYCURSOR);
19832 	yyaccept = 25;
19833 	yych = *(YYMARKER = ++YYCURSOR);
19834 	if (yych <= 'R') {
19835 		if (yych == ' ') goto yy1116;
19836 		goto yy940;
19837 	} else {
19838 		if (yych <= 'S') goto yy1100;
19839 		if (yych == 's') goto yy1100;
19840 		goto yy940;
19841 	}
19842 yy1050:
19843 	YYDEBUG(1050, *YYCURSOR);
19844 	++YYCURSOR;
19845 	goto yy699;
19846 yy1051:
19847 	YYDEBUG(1051, *YYCURSOR);
19848 	yyaccept = 17;
19849 	yych = *(YYMARKER = ++YYCURSOR);
19850 	if (yybm[0+yych] & 128) {
19851 		goto yy917;
19852 	}
19853 	if (yych <= '.') {
19854 		if (yych == '-') goto yy282;
19855 		goto yy699;
19856 	} else {
19857 		if (yych <= '/') goto yy282;
19858 		if (yych == '_') goto yy282;
19859 		goto yy699;
19860 	}
19861 yy1052:
19862 	YYDEBUG(1052, *YYCURSOR);
19863 	yych = *++YYCURSOR;
19864 	if (yych == '\t') goto yy680;
19865 	if (yych == ' ') goto yy680;
19866 	goto yy56;
19867 yy1053:
19868 	YYDEBUG(1053, *YYCURSOR);
19869 	yych = *++YYCURSOR;
19870 	if (yych == '\t') goto yy680;
19871 	if (yych == ' ') goto yy680;
19872 	goto yy918;
19873 yy1054:
19874 	YYDEBUG(1054, *YYCURSOR);
19875 	++YYCURSOR;
19876 yy1055:
19877 	YYDEBUG(1055, *YYCURSOR);
19878 #line 1059 "parse_date.re"
19879 	{
19880 		DEBUG_OUTPUT("tomorrow");
19881 		TIMELIB_INIT;
19882 		TIMELIB_HAVE_RELATIVE();
19883 		TIMELIB_UNHAVE_TIME();
19884 
19885 		s->time->relative.d = 1;
19886 		TIMELIB_DEINIT;
19887 		return TIMELIB_RELATIVE;
19888 	}
19889 #line 19890 "<stdout>"
19890 yy1056:
19891 	YYDEBUG(1056, *YYCURSOR);
19892 	yyaccept = 29;
19893 	yych = *(YYMARKER = ++YYCURSOR);
19894 	if (yybm[0+yych] & 128) {
19895 		goto yy917;
19896 	}
19897 	if (yych <= '.') {
19898 		if (yych == '-') goto yy282;
19899 		goto yy1055;
19900 	} else {
19901 		if (yych <= '/') goto yy282;
19902 		if (yych == '_') goto yy282;
19903 		goto yy1055;
19904 	}
19905 yy1057:
19906 	YYDEBUG(1057, *YYCURSOR);
19907 	yych = *++YYCURSOR;
19908 	if (yych == 'Y') goto yy1117;
19909 	if (yych == 'y') goto yy1117;
19910 	goto yy56;
19911 yy1058:
19912 	YYDEBUG(1058, *YYCURSOR);
19913 	yych = *++YYCURSOR;
19914 	if (yych == 'Y') goto yy1117;
19915 	if (yych == 'y') goto yy1119;
19916 	goto yy918;
19917 yy1059:
19918 	YYDEBUG(1059, *YYCURSOR);
19919 	yych = *++YYCURSOR;
19920 	if (yych <= '/') goto yy56;
19921 	if (yych <= '2') goto yy1120;
19922 	if (yych <= '3') goto yy1121;
19923 	goto yy56;
19924 yy1060:
19925 	YYDEBUG(1060, *YYCURSOR);
19926 	yych = *++YYCURSOR;
19927 	if (yych <= '/') goto yy56;
19928 	if (yych <= '9') goto yy1122;
19929 	goto yy56;
19930 yy1061:
19931 	YYDEBUG(1061, *YYCURSOR);
19932 	yych = *++YYCURSOR;
19933 	if (yych <= '/') goto yy56;
19934 	if (yych <= '1') goto yy1123;
19935 	if (yych <= '2') goto yy1124;
19936 	if (yych <= '9') goto yy1125;
19937 	goto yy56;
19938 yy1062:
19939 	YYDEBUG(1062, *YYCURSOR);
19940 	yych = *++YYCURSOR;
19941 	if (yych == 'd') goto yy1126;
19942 	goto yy56;
19943 yy1063:
19944 	YYDEBUG(1063, *YYCURSOR);
19945 	yych = *++YYCURSOR;
19946 	if (yych == 't') goto yy1126;
19947 	goto yy56;
19948 yy1064:
19949 	YYDEBUG(1064, *YYCURSOR);
19950 	yych = *++YYCURSOR;
19951 	if (yych == 'h') goto yy1126;
19952 	goto yy56;
19953 yy1065:
19954 	YYDEBUG(1065, *YYCURSOR);
19955 	yyaccept = 16;
19956 	yych = *(YYMARKER = ++YYCURSOR);
19957 	if (yych <= 'm') {
19958 		if (yych <= '9') {
19959 			if (yych <= '/') goto yy547;
19960 			goto yy1127;
19961 		} else {
19962 			if (yych == 'T') goto yy1061;
19963 			goto yy547;
19964 		}
19965 	} else {
19966 		if (yych <= 'r') {
19967 			if (yych <= 'n') goto yy1062;
19968 			if (yych <= 'q') goto yy547;
19969 			goto yy1062;
19970 		} else {
19971 			if (yych <= 's') goto yy1063;
19972 			if (yych <= 't') goto yy1064;
19973 			goto yy547;
19974 		}
19975 	}
19976 yy1066:
19977 	YYDEBUG(1066, *YYCURSOR);
19978 	yyaccept = 16;
19979 	yych = *(YYMARKER = ++YYCURSOR);
19980 	if (yych <= 'm') {
19981 		if (yych <= '1') {
19982 			if (yych <= '/') goto yy547;
19983 			goto yy1127;
19984 		} else {
19985 			if (yych == 'T') goto yy1061;
19986 			goto yy547;
19987 		}
19988 	} else {
19989 		if (yych <= 'r') {
19990 			if (yych <= 'n') goto yy1062;
19991 			if (yych <= 'q') goto yy547;
19992 			goto yy1062;
19993 		} else {
19994 			if (yych <= 's') goto yy1063;
19995 			if (yych <= 't') goto yy1064;
19996 			goto yy547;
19997 		}
19998 	}
19999 yy1067:
20000 	YYDEBUG(1067, *YYCURSOR);
20001 	yych = *++YYCURSOR;
20002 	if (yych == 'd') goto yy1128;
20003 	goto yy56;
20004 yy1068:
20005 	YYDEBUG(1068, *YYCURSOR);
20006 	yych = *++YYCURSOR;
20007 	if (yych == 't') goto yy1128;
20008 	goto yy56;
20009 yy1069:
20010 	YYDEBUG(1069, *YYCURSOR);
20011 	yych = *++YYCURSOR;
20012 	if (yych == 'h') goto yy1128;
20013 	goto yy56;
20014 yy1070:
20015 	YYDEBUG(1070, *YYCURSOR);
20016 	yyaccept = 27;
20017 	yych = *(YYMARKER = ++YYCURSOR);
20018 	if (yych <= 'n') {
20019 		if (yych <= '/') goto yy996;
20020 		if (yych <= '9') goto yy1129;
20021 		if (yych <= 'm') goto yy996;
20022 		goto yy1067;
20023 	} else {
20024 		if (yych <= 'r') {
20025 			if (yych <= 'q') goto yy996;
20026 			goto yy1067;
20027 		} else {
20028 			if (yych <= 's') goto yy1068;
20029 			if (yych <= 't') goto yy1069;
20030 			goto yy996;
20031 		}
20032 	}
20033 yy1071:
20034 	YYDEBUG(1071, *YYCURSOR);
20035 	yyaccept = 27;
20036 	yych = *(YYMARKER = ++YYCURSOR);
20037 	if (yych <= 'n') {
20038 		if (yych <= '/') goto yy996;
20039 		if (yych <= '1') goto yy1129;
20040 		if (yych <= 'm') goto yy996;
20041 		goto yy1067;
20042 	} else {
20043 		if (yych <= 'r') {
20044 			if (yych <= 'q') goto yy996;
20045 			goto yy1067;
20046 		} else {
20047 			if (yych <= 's') goto yy1068;
20048 			if (yych <= 't') goto yy1069;
20049 			goto yy996;
20050 		}
20051 	}
20052 yy1072:
20053 	YYDEBUG(1072, *YYCURSOR);
20054 	yych = *++YYCURSOR;
20055 	if (yych <= '/') goto yy186;
20056 	if (yych <= '9') goto yy1130;
20057 	goto yy186;
20058 yy1073:
20059 	YYDEBUG(1073, *YYCURSOR);
20060 	yych = *++YYCURSOR;
20061 	if (yych <= 'H') {
20062 		if (yych <= '2') {
20063 			if (yych <= '/') goto yy56;
20064 			if (yych <= '1') goto yy1131;
20065 			goto yy1132;
20066 		} else {
20067 			if (yych <= '9') goto yy1133;
20068 			if (yych <= 'G') goto yy56;
20069 			goto yy256;
20070 		}
20071 	} else {
20072 		if (yych <= 'g') {
20073 			if (yych == 'U') goto yy257;
20074 			goto yy56;
20075 		} else {
20076 			if (yych <= 'h') goto yy256;
20077 			if (yych == 'u') goto yy257;
20078 			goto yy56;
20079 		}
20080 	}
20081 yy1074:
20082 	YYDEBUG(1074, *YYCURSOR);
20083 	yych = *++YYCURSOR;
20084 	if (yych <= 'H') {
20085 		if (yych <= '2') {
20086 			if (yych <= '/') goto yy56;
20087 			if (yych <= '1') goto yy1134;
20088 			goto yy1135;
20089 		} else {
20090 			if (yych <= '9') goto yy1136;
20091 			if (yych <= 'G') goto yy56;
20092 			goto yy256;
20093 		}
20094 	} else {
20095 		if (yych <= 'g') {
20096 			if (yych == 'U') goto yy257;
20097 			goto yy56;
20098 		} else {
20099 			if (yych <= 'h') goto yy256;
20100 			if (yych == 'u') goto yy257;
20101 			goto yy56;
20102 		}
20103 	}
20104 yy1075:
20105 	YYDEBUG(1075, *YYCURSOR);
20106 	yych = *++YYCURSOR;
20107 	if (yych <= '/') goto yy56;
20108 	if (yych <= '9') goto yy1137;
20109 	goto yy56;
20110 yy1076:
20111 	YYDEBUG(1076, *YYCURSOR);
20112 	yych = *++YYCURSOR;
20113 	if (yych <= '/') goto yy56;
20114 	if (yych <= '1') goto yy1137;
20115 	goto yy56;
20116 yy1077:
20117 	YYDEBUG(1077, *YYCURSOR);
20118 	yych = *++YYCURSOR;
20119 	if (yych == 'T') goto yy763;
20120 	if (yych == 't') goto yy763;
20121 	goto yy56;
20122 yy1078:
20123 	YYDEBUG(1078, *YYCURSOR);
20124 	yych = *++YYCURSOR;
20125 	if (yych == 'R') goto yy1138;
20126 	if (yych == 'r') goto yy1138;
20127 	goto yy56;
20128 yy1079:
20129 	YYDEBUG(1079, *YYCURSOR);
20130 	yych = *++YYCURSOR;
20131 	if (yych == 'E') goto yy1139;
20132 	if (yych == 'e') goto yy1139;
20133 	goto yy56;
20134 yy1080:
20135 	YYDEBUG(1080, *YYCURSOR);
20136 	yych = *++YYCURSOR;
20137 	if (yych == 'T') goto yy407;
20138 	if (yych == 't') goto yy407;
20139 	goto yy56;
20140 yy1081:
20141 	YYDEBUG(1081, *YYCURSOR);
20142 	yych = *++YYCURSOR;
20143 	if (yych == 'O') goto yy609;
20144 	if (yych == 'o') goto yy609;
20145 	goto yy56;
20146 yy1082:
20147 	YYDEBUG(1082, *YYCURSOR);
20148 	yyaccept = 5;
20149 	YYMARKER = ++YYCURSOR;
20150 	if ((YYLIMIT - YYCURSOR) < 5) YYFILL(5);
20151 	yych = *YYCURSOR;
20152 	YYDEBUG(1083, *YYCURSOR);
20153 	if (yych <= 'O') {
20154 		if (yych <= '9') {
20155 			if (yych <= '/') goto yy209;
20156 			goto yy1082;
20157 		} else {
20158 			if (yych == 'A') goto yy1140;
20159 			goto yy209;
20160 		}
20161 	} else {
20162 		if (yych <= 'a') {
20163 			if (yych <= 'P') goto yy1140;
20164 			if (yych <= '`') goto yy209;
20165 			goto yy1140;
20166 		} else {
20167 			if (yych == 'p') goto yy1140;
20168 			goto yy209;
20169 		}
20170 	}
20171 yy1084:
20172 	YYDEBUG(1084, *YYCURSOR);
20173 	++YYCURSOR;
20174 	if ((YYLIMIT - YYCURSOR) < 5) YYFILL(5);
20175 	yych = *YYCURSOR;
20176 	YYDEBUG(1085, *YYCURSOR);
20177 	if (yych <= 'O') {
20178 		if (yych <= '9') {
20179 			if (yych <= '/') goto yy56;
20180 			goto yy1084;
20181 		} else {
20182 			if (yych == 'A') goto yy1140;
20183 			goto yy56;
20184 		}
20185 	} else {
20186 		if (yych <= 'a') {
20187 			if (yych <= 'P') goto yy1140;
20188 			if (yych <= '`') goto yy56;
20189 			goto yy1140;
20190 		} else {
20191 			if (yych == 'p') goto yy1140;
20192 			goto yy56;
20193 		}
20194 	}
20195 yy1086:
20196 	YYDEBUG(1086, *YYCURSOR);
20197 	++YYCURSOR;
20198 	YYDEBUG(1087, *YYCURSOR);
20199 #line 1585 "parse_date.re"
20200 	{
20201 		int length = 0;
20202 		DEBUG_OUTPUT("pgtextreverse");
20203 		TIMELIB_INIT;
20204 		TIMELIB_HAVE_DATE();
20205 		s->time->y = timelib_get_nr_ex((char **) &ptr, 4, &length);
20206 		s->time->m = timelib_get_month((char **) &ptr);
20207 		s->time->d = timelib_get_nr((char **) &ptr, 2);
20208 		TIMELIB_PROCESS_YEAR(s->time->y, length);
20209 		TIMELIB_DEINIT;
20210 		return TIMELIB_PG_TEXT;
20211 	}
20212 #line 20213 "<stdout>"
20213 yy1088:
20214 	YYDEBUG(1088, *YYCURSOR);
20215 	++YYCURSOR;
20216 	YYDEBUG(1089, *YYCURSOR);
20217 #line 1097 "parse_date.re"
20218 	{
20219 		timelib_ull i, us;
20220 
20221 		TIMELIB_INIT;
20222 		TIMELIB_HAVE_RELATIVE();
20223 		TIMELIB_UNHAVE_DATE();
20224 		TIMELIB_UNHAVE_TIME();
20225 		TIMELIB_HAVE_TZ();
20226 
20227 		i = timelib_get_unsigned_nr((char **) &ptr, 24);
20228 		us = timelib_get_unsigned_nr((char **) &ptr, 24);
20229 		s->time->y = 1970;
20230 		s->time->m = 1;
20231 		s->time->d = 1;
20232 		s->time->h = s->time->i = s->time->s = 0;
20233 		s->time->us = 0;
20234 		s->time->relative.s += i;
20235 		s->time->relative.us = us;
20236 		s->time->is_localtime = 1;
20237 		s->time->zone_type = TIMELIB_ZONETYPE_OFFSET;
20238 		s->time->z = 0;
20239 		s->time->dst = 0;
20240 
20241 		TIMELIB_DEINIT;
20242 		return TIMELIB_RELATIVE;
20243 	}
20244 #line 20245 "<stdout>"
20245 yy1090:
20246 	YYDEBUG(1090, *YYCURSOR);
20247 	yych = *++YYCURSOR;
20248 	if (yych <= '/') goto yy1023;
20249 	if (yych <= '9') goto yy1141;
20250 	goto yy1023;
20251 yy1091:
20252 	YYDEBUG(1091, *YYCURSOR);
20253 	yyaccept = 30;
20254 	yych = *(YYMARKER = ++YYCURSOR);
20255 	if (yych <= '@') {
20256 		if (yych <= 0x1F) {
20257 			if (yych == '\t') goto yy1142;
20258 		} else {
20259 			if (yych <= ' ') goto yy1142;
20260 			if (yych <= '/') goto yy1092;
20261 			if (yych <= '9') goto yy1094;
20262 		}
20263 	} else {
20264 		if (yych <= '`') {
20265 			if (yych <= 'A') goto yy1144;
20266 			if (yych == 'P') goto yy1144;
20267 		} else {
20268 			if (yych <= 'a') goto yy1144;
20269 			if (yych == 'p') goto yy1144;
20270 		}
20271 	}
20272 yy1092:
20273 	YYDEBUG(1092, *YYCURSOR);
20274 #line 1142 "parse_date.re"
20275 	{
20276 		DEBUG_OUTPUT("backof | frontof");
20277 		TIMELIB_INIT;
20278 		TIMELIB_UNHAVE_TIME();
20279 		TIMELIB_HAVE_TIME();
20280 
20281 		if (*ptr == 'b') {
20282 			s->time->h = timelib_get_nr((char **) &ptr, 2);
20283 			s->time->i = 15;
20284 		} else {
20285 			s->time->h = timelib_get_nr((char **) &ptr, 2) - 1;
20286 			s->time->i = 45;
20287 		}
20288 		if (*ptr != '\0' ) {
20289 			timelib_eat_spaces((char **) &ptr);
20290 			s->time->h += timelib_meridian((char **) &ptr, s->time->h);
20291 		}
20292 
20293 		TIMELIB_DEINIT;
20294 		return TIMELIB_LF_DAY_OF_MONTH;
20295 	}
20296 #line 20297 "<stdout>"
20297 yy1093:
20298 	YYDEBUG(1093, *YYCURSOR);
20299 	yyaccept = 30;
20300 	yych = *(YYMARKER = ++YYCURSOR);
20301 	if (yych <= '@') {
20302 		if (yych <= 0x1F) {
20303 			if (yych == '\t') goto yy1142;
20304 			goto yy1092;
20305 		} else {
20306 			if (yych <= ' ') goto yy1142;
20307 			if (yych <= '/') goto yy1092;
20308 			if (yych >= '5') goto yy1092;
20309 		}
20310 	} else {
20311 		if (yych <= '`') {
20312 			if (yych <= 'A') goto yy1144;
20313 			if (yych == 'P') goto yy1144;
20314 			goto yy1092;
20315 		} else {
20316 			if (yych <= 'a') goto yy1144;
20317 			if (yych == 'p') goto yy1144;
20318 			goto yy1092;
20319 		}
20320 	}
20321 yy1094:
20322 	YYDEBUG(1094, *YYCURSOR);
20323 	yyaccept = 30;
20324 	yych = *(YYMARKER = ++YYCURSOR);
20325 	if (yych <= 'A') {
20326 		if (yych <= 0x1F) {
20327 			if (yych == '\t') goto yy1142;
20328 			goto yy1092;
20329 		} else {
20330 			if (yych <= ' ') goto yy1142;
20331 			if (yych <= '@') goto yy1092;
20332 			goto yy1144;
20333 		}
20334 	} else {
20335 		if (yych <= '`') {
20336 			if (yych == 'P') goto yy1144;
20337 			goto yy1092;
20338 		} else {
20339 			if (yych <= 'a') goto yy1144;
20340 			if (yych == 'p') goto yy1144;
20341 			goto yy1092;
20342 		}
20343 	}
20344 yy1095:
20345 	YYDEBUG(1095, *YYCURSOR);
20346 	yych = *++YYCURSOR;
20347 	if (yych == 'K') goto yy1145;
20348 	if (yych == 'k') goto yy1145;
20349 	goto yy56;
20350 yy1096:
20351 	YYDEBUG(1096, *YYCURSOR);
20352 	yyaccept = 21;
20353 	yych = *(YYMARKER = ++YYCURSOR);
20354 	if (yych <= '*') {
20355 		if (yych <= 0x1F) {
20356 			if (yych == '\t') goto yy1147;
20357 			goto yy818;
20358 		} else {
20359 			if (yych <= ' ') goto yy1147;
20360 			if (yych == '(') goto yy1147;
20361 			goto yy818;
20362 		}
20363 	} else {
20364 		if (yych <= '@') {
20365 			if (yych == ',') goto yy818;
20366 			if (yych <= '-') goto yy1147;
20367 			goto yy818;
20368 		} else {
20369 			if (yych <= 'Z') goto yy1147;
20370 			if (yych <= '`') goto yy818;
20371 			if (yych <= 'z') goto yy1147;
20372 			goto yy818;
20373 		}
20374 	}
20375 yy1097:
20376 	YYDEBUG(1097, *YYCURSOR);
20377 	yyaccept = 21;
20378 	yych = *(YYMARKER = ++YYCURSOR);
20379 	if (yych <= '*') {
20380 		if (yych <= 0x1F) {
20381 			if (yych == '\t') goto yy1154;
20382 			goto yy818;
20383 		} else {
20384 			if (yych <= ' ') goto yy1154;
20385 			if (yych == '(') goto yy1154;
20386 			goto yy818;
20387 		}
20388 	} else {
20389 		if (yych <= '@') {
20390 			if (yych == ',') goto yy818;
20391 			if (yych <= '-') goto yy1154;
20392 			goto yy818;
20393 		} else {
20394 			if (yych <= 'Z') goto yy1154;
20395 			if (yych <= '`') goto yy818;
20396 			if (yych <= 'z') goto yy1154;
20397 			goto yy818;
20398 		}
20399 	}
20400 yy1098:
20401 	YYDEBUG(1098, *YYCURSOR);
20402 	yych = *++YYCURSOR;
20403 	if (yych == 'M') goto yy1099;
20404 	if (yych != 'm') goto yy56;
20405 yy1099:
20406 	YYDEBUG(1099, *YYCURSOR);
20407 	yych = *++YYCURSOR;
20408 	if (yych <= 0x1F) {
20409 		if (yych <= 0x00) goto yy1157;
20410 		if (yych == '\t') goto yy1157;
20411 		goto yy56;
20412 	} else {
20413 		if (yych <= ' ') goto yy1157;
20414 		if (yych == '.') goto yy1159;
20415 		goto yy56;
20416 	}
20417 yy1100:
20418 	YYDEBUG(1100, *YYCURSOR);
20419 	++YYCURSOR;
20420 	goto yy940;
20421 yy1101:
20422 	YYDEBUG(1101, *YYCURSOR);
20423 	yych = *++YYCURSOR;
20424 	if (yych <= 'N') {
20425 		if (yych == 'H') goto yy1160;
20426 		if (yych <= 'M') goto yy56;
20427 		goto yy1161;
20428 	} else {
20429 		if (yych <= 'h') {
20430 			if (yych <= 'g') goto yy56;
20431 			goto yy1160;
20432 		} else {
20433 			if (yych == 'n') goto yy1161;
20434 			goto yy56;
20435 		}
20436 	}
20437 yy1102:
20438 	YYDEBUG(1102, *YYCURSOR);
20439 	++YYCURSOR;
20440 	if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
20441 	yych = *YYCURSOR;
20442 	YYDEBUG(1103, *YYCURSOR);
20443 	if (yych <= ' ') {
20444 		if (yych == '\t') goto yy1102;
20445 		if (yych <= 0x1F) goto yy56;
20446 		goto yy1102;
20447 	} else {
20448 		if (yych <= 'O') {
20449 			if (yych <= 'N') goto yy56;
20450 			goto yy1162;
20451 		} else {
20452 			if (yych == 'o') goto yy1162;
20453 			goto yy56;
20454 		}
20455 	}
20456 yy1104:
20457 	YYDEBUG(1104, *YYCURSOR);
20458 	yych = *++YYCURSOR;
20459 	if (yych == 'A') goto yy1163;
20460 	if (yych == 'a') goto yy1163;
20461 	goto yy56;
20462 yy1105:
20463 	YYDEBUG(1105, *YYCURSOR);
20464 	yych = *++YYCURSOR;
20465 	if (yych == 'O') goto yy1164;
20466 	if (yych == 'o') goto yy1164;
20467 	goto yy56;
20468 yy1106:
20469 	YYDEBUG(1106, *YYCURSOR);
20470 	yych = *++YYCURSOR;
20471 	if (yych == 'I') goto yy1164;
20472 	if (yych == 'i') goto yy1164;
20473 	goto yy56;
20474 yy1107:
20475 	YYDEBUG(1107, *YYCURSOR);
20476 	yych = *++YYCURSOR;
20477 	if (yych == 'T') goto yy1165;
20478 	if (yych == 't') goto yy1165;
20479 	goto yy56;
20480 yy1108:
20481 	YYDEBUG(1108, *YYCURSOR);
20482 	yych = *++YYCURSOR;
20483 	if (yych == 'H') goto yy1034;
20484 	if (yych == 'h') goto yy1034;
20485 	goto yy56;
20486 yy1109:
20487 	YYDEBUG(1109, *YYCURSOR);
20488 	yych = *++YYCURSOR;
20489 	if (yych == 'R') goto yy1112;
20490 	if (yych == 'r') goto yy1112;
20491 	goto yy56;
20492 yy1110:
20493 	YYDEBUG(1110, *YYCURSOR);
20494 	yych = *++YYCURSOR;
20495 	if (yych == 'N') goto yy1166;
20496 	if (yych == 'n') goto yy1166;
20497 	goto yy56;
20498 yy1111:
20499 	YYDEBUG(1111, *YYCURSOR);
20500 	yych = *++YYCURSOR;
20501 	if (yych == 'S') goto yy1112;
20502 	if (yych != 's') goto yy56;
20503 yy1112:
20504 	YYDEBUG(1112, *YYCURSOR);
20505 	yych = *++YYCURSOR;
20506 	if (yych == 'D') goto yy1104;
20507 	if (yych == 'd') goto yy1104;
20508 	goto yy56;
20509 yy1113:
20510 	YYDEBUG(1113, *YYCURSOR);
20511 	yych = *++YYCURSOR;
20512 	if (yych == 'E') goto yy1111;
20513 	if (yych == 'e') goto yy1111;
20514 	goto yy56;
20515 yy1114:
20516 	YYDEBUG(1114, *YYCURSOR);
20517 	yyaccept = 31;
20518 	yych = *(YYMARKER = ++YYCURSOR);
20519 	if (yych <= 'S') {
20520 		if (yych == 'D') goto yy825;
20521 		if (yych >= 'S') goto yy1100;
20522 	} else {
20523 		if (yych <= 'd') {
20524 			if (yych >= 'd') goto yy825;
20525 		} else {
20526 			if (yych == 's') goto yy1100;
20527 		}
20528 	}
20529 yy1115:
20530 	YYDEBUG(1115, *YYCURSOR);
20531 #line 1668 "parse_date.re"
20532 	{
20533 		timelib_sll i;
20534 		int         behavior = 0;
20535 		DEBUG_OUTPUT("relativetextweek");
20536 		TIMELIB_INIT;
20537 		TIMELIB_HAVE_RELATIVE();
20538 
20539 		while(*ptr) {
20540 			i = timelib_get_relative_text((char **) &ptr, &behavior);
20541 			timelib_eat_spaces((char **) &ptr);
20542 			timelib_set_relative((char **) &ptr, i, behavior, s);
20543 			s->time->relative.weekday_behavior = 2;
20544 
20545 			/* to handle the format weekday + last/this/next week */
20546 			if (s->time->relative.have_weekday_relative == 0) {
20547 				TIMELIB_HAVE_WEEKDAY_RELATIVE();
20548 				s->time->relative.weekday = 1;
20549 			}
20550 		}
20551 		TIMELIB_DEINIT;
20552 		return TIMELIB_RELATIVE;
20553 	}
20554 #line 20555 "<stdout>"
20555 yy1116:
20556 	YYDEBUG(1116, *YYCURSOR);
20557 	yych = *++YYCURSOR;
20558 	if (yych == 'O') goto yy1167;
20559 	if (yych == 'o') goto yy1167;
20560 	goto yy56;
20561 yy1117:
20562 	YYDEBUG(1117, *YYCURSOR);
20563 	++YYCURSOR;
20564 yy1118:
20565 	YYDEBUG(1118, *YYCURSOR);
20566 #line 1016 "parse_date.re"
20567 	{
20568 		DEBUG_OUTPUT("yesterday");
20569 		TIMELIB_INIT;
20570 		TIMELIB_HAVE_RELATIVE();
20571 		TIMELIB_UNHAVE_TIME();
20572 
20573 		s->time->relative.d = -1;
20574 		TIMELIB_DEINIT;
20575 		return TIMELIB_RELATIVE;
20576 	}
20577 #line 20578 "<stdout>"
20578 yy1119:
20579 	YYDEBUG(1119, *YYCURSOR);
20580 	yyaccept = 32;
20581 	yych = *(YYMARKER = ++YYCURSOR);
20582 	if (yybm[0+yych] & 128) {
20583 		goto yy917;
20584 	}
20585 	if (yych <= '.') {
20586 		if (yych == '-') goto yy282;
20587 		goto yy1118;
20588 	} else {
20589 		if (yych <= '/') goto yy282;
20590 		if (yych == '_') goto yy282;
20591 		goto yy1118;
20592 	}
20593 yy1120:
20594 	YYDEBUG(1120, *YYCURSOR);
20595 	yych = *++YYCURSOR;
20596 	if (yych <= '/') goto yy56;
20597 	if (yych <= '9') goto yy1128;
20598 	goto yy56;
20599 yy1121:
20600 	YYDEBUG(1121, *YYCURSOR);
20601 	yych = *++YYCURSOR;
20602 	if (yych <= '/') goto yy56;
20603 	if (yych <= '1') goto yy1128;
20604 	goto yy56;
20605 yy1122:
20606 	YYDEBUG(1122, *YYCURSOR);
20607 	yych = *++YYCURSOR;
20608 	if (yych == ':') goto yy1168;
20609 	goto yy56;
20610 yy1123:
20611 	YYDEBUG(1123, *YYCURSOR);
20612 	yych = *++YYCURSOR;
20613 	if (yych <= '/') goto yy56;
20614 	if (yych <= '9') goto yy1125;
20615 	if (yych <= ':') goto yy1169;
20616 	goto yy56;
20617 yy1124:
20618 	YYDEBUG(1124, *YYCURSOR);
20619 	yych = *++YYCURSOR;
20620 	if (yych <= '/') goto yy56;
20621 	if (yych <= '4') goto yy1125;
20622 	if (yych == ':') goto yy1169;
20623 	goto yy56;
20624 yy1125:
20625 	YYDEBUG(1125, *YYCURSOR);
20626 	yych = *++YYCURSOR;
20627 	if (yych == ':') goto yy1169;
20628 	goto yy56;
20629 yy1126:
20630 	YYDEBUG(1126, *YYCURSOR);
20631 	yyaccept = 16;
20632 	yych = *(YYMARKER = ++YYCURSOR);
20633 	if (yych == 'T') goto yy1061;
20634 	goto yy547;
20635 yy1127:
20636 	YYDEBUG(1127, *YYCURSOR);
20637 	yyaccept = 27;
20638 	yych = *(YYMARKER = ++YYCURSOR);
20639 	if (yych <= 'n') {
20640 		if (yych == 'T') goto yy1170;
20641 		if (yych <= 'm') goto yy996;
20642 		goto yy1062;
20643 	} else {
20644 		if (yych <= 'r') {
20645 			if (yych <= 'q') goto yy996;
20646 			goto yy1062;
20647 		} else {
20648 			if (yych <= 's') goto yy1063;
20649 			if (yych <= 't') goto yy1064;
20650 			goto yy996;
20651 		}
20652 	}
20653 yy1128:
20654 	YYDEBUG(1128, *YYCURSOR);
20655 	++YYCURSOR;
20656 	goto yy996;
20657 yy1129:
20658 	YYDEBUG(1129, *YYCURSOR);
20659 	yyaccept = 27;
20660 	yych = *(YYMARKER = ++YYCURSOR);
20661 	if (yych <= 'n') {
20662 		if (yych == '/') goto yy1128;
20663 		if (yych <= 'm') goto yy996;
20664 		goto yy1067;
20665 	} else {
20666 		if (yych <= 'r') {
20667 			if (yych <= 'q') goto yy996;
20668 			goto yy1067;
20669 		} else {
20670 			if (yych <= 's') goto yy1068;
20671 			if (yych <= 't') goto yy1069;
20672 			goto yy996;
20673 		}
20674 	}
20675 yy1130:
20676 	YYDEBUG(1130, *YYCURSOR);
20677 	yych = *++YYCURSOR;
20678 	if (yych <= '/') goto yy186;
20679 	if (yych <= '9') goto yy1171;
20680 	goto yy186;
20681 yy1131:
20682 	YYDEBUG(1131, *YYCURSOR);
20683 	yych = *++YYCURSOR;
20684 	if (yych <= '/') goto yy56;
20685 	if (yych <= '5') goto yy1172;
20686 	if (yych <= '9') goto yy1133;
20687 	if (yych <= ':') goto yy1173;
20688 	goto yy56;
20689 yy1132:
20690 	YYDEBUG(1132, *YYCURSOR);
20691 	yych = *++YYCURSOR;
20692 	if (yych <= '5') {
20693 		if (yych <= '/') goto yy56;
20694 		if (yych <= '4') goto yy1172;
20695 		goto yy1174;
20696 	} else {
20697 		if (yych == ':') goto yy1173;
20698 		goto yy56;
20699 	}
20700 yy1133:
20701 	YYDEBUG(1133, *YYCURSOR);
20702 	yych = *++YYCURSOR;
20703 	if (yych <= '/') goto yy56;
20704 	if (yych <= '5') goto yy1174;
20705 	if (yych == ':') goto yy1173;
20706 	goto yy56;
20707 yy1134:
20708 	YYDEBUG(1134, *YYCURSOR);
20709 	yych = *++YYCURSOR;
20710 	if (yych <= '/') goto yy56;
20711 	if (yych <= '5') goto yy1175;
20712 	if (yych <= '9') goto yy1136;
20713 	goto yy56;
20714 yy1135:
20715 	YYDEBUG(1135, *YYCURSOR);
20716 	yych = *++YYCURSOR;
20717 	if (yych <= '/') goto yy56;
20718 	if (yych <= '4') goto yy1175;
20719 	if (yych <= '5') goto yy1174;
20720 	goto yy56;
20721 yy1136:
20722 	YYDEBUG(1136, *YYCURSOR);
20723 	yych = *++YYCURSOR;
20724 	if (yych <= '/') goto yy56;
20725 	if (yych <= '5') goto yy1174;
20726 	goto yy56;
20727 yy1137:
20728 	YYDEBUG(1137, *YYCURSOR);
20729 	yych = *++YYCURSOR;
20730 	if (yych == ' ') goto yy1176;
20731 	goto yy56;
20732 yy1138:
20733 	YYDEBUG(1138, *YYCURSOR);
20734 	yych = *++YYCURSOR;
20735 	if (yych == 'Y') goto yy763;
20736 	if (yych == 'y') goto yy763;
20737 	goto yy56;
20738 yy1139:
20739 	YYDEBUG(1139, *YYCURSOR);
20740 	yych = *++YYCURSOR;
20741 	if (yych == 'R') goto yy763;
20742 	if (yych == 'r') goto yy763;
20743 	goto yy56;
20744 yy1140:
20745 	YYDEBUG(1140, *YYCURSOR);
20746 	yych = *++YYCURSOR;
20747 	if (yych <= 'L') {
20748 		if (yych == '.') goto yy1177;
20749 		goto yy56;
20750 	} else {
20751 		if (yych <= 'M') goto yy1178;
20752 		if (yych == 'm') goto yy1178;
20753 		goto yy56;
20754 	}
20755 yy1141:
20756 	YYDEBUG(1141, *YYCURSOR);
20757 	yych = *++YYCURSOR;
20758 	if (yych <= '/') goto yy1023;
20759 	if (yych <= '9') goto yy1179;
20760 	goto yy1023;
20761 yy1142:
20762 	YYDEBUG(1142, *YYCURSOR);
20763 	++YYCURSOR;
20764 	if ((YYLIMIT - YYCURSOR) < 5) YYFILL(5);
20765 	yych = *YYCURSOR;
20766 	YYDEBUG(1143, *YYCURSOR);
20767 	if (yych <= 'A') {
20768 		if (yych <= 0x1F) {
20769 			if (yych == '\t') goto yy1142;
20770 			goto yy56;
20771 		} else {
20772 			if (yych <= ' ') goto yy1142;
20773 			if (yych <= '@') goto yy56;
20774 		}
20775 	} else {
20776 		if (yych <= '`') {
20777 			if (yych != 'P') goto yy56;
20778 		} else {
20779 			if (yych <= 'a') goto yy1144;
20780 			if (yych != 'p') goto yy56;
20781 		}
20782 	}
20783 yy1144:
20784 	YYDEBUG(1144, *YYCURSOR);
20785 	yych = *++YYCURSOR;
20786 	if (yych <= 'L') {
20787 		if (yych == '.') goto yy1180;
20788 		goto yy56;
20789 	} else {
20790 		if (yych <= 'M') goto yy1181;
20791 		if (yych == 'm') goto yy1181;
20792 		goto yy56;
20793 	}
20794 yy1145:
20795 	YYDEBUG(1145, *YYCURSOR);
20796 	yych = *++YYCURSOR;
20797 	if (yych <= 'S') {
20798 		if (yych == 'D') goto yy825;
20799 		if (yych <= 'R') goto yy56;
20800 		goto yy1100;
20801 	} else {
20802 		if (yych <= 'd') {
20803 			if (yych <= 'c') goto yy56;
20804 			goto yy825;
20805 		} else {
20806 			if (yych == 's') goto yy1100;
20807 			goto yy56;
20808 		}
20809 	}
20810 yy1146:
20811 	YYDEBUG(1146, *YYCURSOR);
20812 	++YYCURSOR;
20813 	if ((YYLIMIT - YYCURSOR) < 9) YYFILL(9);
20814 	yych = *YYCURSOR;
20815 yy1147:
20816 	YYDEBUG(1147, *YYCURSOR);
20817 	if (yych <= '+') {
20818 		if (yych <= ' ') {
20819 			if (yych == '\t') goto yy1146;
20820 			if (yych <= 0x1F) goto yy56;
20821 			goto yy1146;
20822 		} else {
20823 			if (yych == '(') goto yy1148;
20824 			if (yych <= '*') goto yy56;
20825 			goto yy1149;
20826 		}
20827 	} else {
20828 		if (yych <= 'F') {
20829 			if (yych == '-') goto yy1149;
20830 			if (yych <= '@') goto yy56;
20831 			goto yy1150;
20832 		} else {
20833 			if (yych <= 'Z') {
20834 				if (yych <= 'G') goto yy1151;
20835 				goto yy1150;
20836 			} else {
20837 				if (yych <= '`') goto yy56;
20838 				if (yych <= 'z') goto yy1152;
20839 				goto yy56;
20840 			}
20841 		}
20842 	}
20843 yy1148:
20844 	YYDEBUG(1148, *YYCURSOR);
20845 	yych = *++YYCURSOR;
20846 	if (yych <= '@') goto yy56;
20847 	if (yych <= 'Z') goto yy1152;
20848 	if (yych <= '`') goto yy56;
20849 	if (yych <= 'z') goto yy1152;
20850 	goto yy56;
20851 yy1149:
20852 	YYDEBUG(1149, *YYCURSOR);
20853 	yych = *++YYCURSOR;
20854 	if (yych <= '/') goto yy56;
20855 	if (yych <= '1') goto yy1182;
20856 	if (yych <= '2') goto yy1183;
20857 	if (yych <= '9') goto yy1184;
20858 	goto yy56;
20859 yy1150:
20860 	YYDEBUG(1150, *YYCURSOR);
20861 	yych = *++YYCURSOR;
20862 	if (yych <= '@') {
20863 		if (yych == ')') goto yy1028;
20864 		goto yy818;
20865 	} else {
20866 		if (yych <= 'Z') goto yy1185;
20867 		if (yych <= '`') goto yy818;
20868 		if (yych <= 'z') goto yy1186;
20869 		goto yy818;
20870 	}
20871 yy1151:
20872 	YYDEBUG(1151, *YYCURSOR);
20873 	yych = *++YYCURSOR;
20874 	if (yych <= 'L') {
20875 		if (yych == ')') goto yy1028;
20876 		if (yych <= '@') goto yy818;
20877 		goto yy1185;
20878 	} else {
20879 		if (yych <= 'Z') {
20880 			if (yych <= 'M') goto yy1187;
20881 			goto yy1185;
20882 		} else {
20883 			if (yych <= '`') goto yy818;
20884 			if (yych <= 'z') goto yy1186;
20885 			goto yy818;
20886 		}
20887 	}
20888 yy1152:
20889 	YYDEBUG(1152, *YYCURSOR);
20890 	yych = *++YYCURSOR;
20891 	if (yych <= '@') {
20892 		if (yych == ')') goto yy1028;
20893 		goto yy818;
20894 	} else {
20895 		if (yych <= 'Z') goto yy1185;
20896 		if (yych <= '`') goto yy818;
20897 		if (yych <= 'z') goto yy1185;
20898 		goto yy818;
20899 	}
20900 yy1153:
20901 	YYDEBUG(1153, *YYCURSOR);
20902 	++YYCURSOR;
20903 	if ((YYLIMIT - YYCURSOR) < 9) YYFILL(9);
20904 	yych = *YYCURSOR;
20905 yy1154:
20906 	YYDEBUG(1154, *YYCURSOR);
20907 	if (yych <= '@') {
20908 		if (yych <= '\'') {
20909 			if (yych <= '\t') {
20910 				if (yych <= 0x08) goto yy56;
20911 				goto yy1153;
20912 			} else {
20913 				if (yych == ' ') goto yy1153;
20914 				goto yy56;
20915 			}
20916 		} else {
20917 			if (yych <= '+') {
20918 				if (yych <= '(') goto yy1148;
20919 				if (yych <= '*') goto yy56;
20920 				goto yy1149;
20921 			} else {
20922 				if (yych == '-') goto yy1149;
20923 				goto yy56;
20924 			}
20925 		}
20926 	} else {
20927 		if (yych <= 'Z') {
20928 			if (yych <= 'G') {
20929 				if (yych <= 'A') goto yy1155;
20930 				if (yych <= 'F') goto yy1150;
20931 				goto yy1151;
20932 			} else {
20933 				if (yych != 'P') goto yy1150;
20934 			}
20935 		} else {
20936 			if (yych <= 'o') {
20937 				if (yych <= '`') goto yy56;
20938 				if (yych <= 'a') goto yy1156;
20939 				goto yy1152;
20940 			} else {
20941 				if (yych <= 'p') goto yy1156;
20942 				if (yych <= 'z') goto yy1152;
20943 				goto yy56;
20944 			}
20945 		}
20946 	}
20947 yy1155:
20948 	YYDEBUG(1155, *YYCURSOR);
20949 	yyaccept = 21;
20950 	yych = *(YYMARKER = ++YYCURSOR);
20951 	if (yych <= 'L') {
20952 		if (yych <= '-') {
20953 			if (yych == ')') goto yy1028;
20954 			goto yy818;
20955 		} else {
20956 			if (yych <= '.') goto yy1098;
20957 			if (yych <= '@') goto yy818;
20958 			goto yy1185;
20959 		}
20960 	} else {
20961 		if (yych <= '`') {
20962 			if (yych <= 'M') goto yy1188;
20963 			if (yych <= 'Z') goto yy1185;
20964 			goto yy818;
20965 		} else {
20966 			if (yych == 'm') goto yy1189;
20967 			if (yych <= 'z') goto yy1186;
20968 			goto yy818;
20969 		}
20970 	}
20971 yy1156:
20972 	YYDEBUG(1156, *YYCURSOR);
20973 	yyaccept = 21;
20974 	yych = *(YYMARKER = ++YYCURSOR);
20975 	if (yych <= 'L') {
20976 		if (yych <= '-') {
20977 			if (yych == ')') goto yy1028;
20978 			goto yy818;
20979 		} else {
20980 			if (yych <= '.') goto yy1098;
20981 			if (yych <= '@') goto yy818;
20982 			goto yy1185;
20983 		}
20984 	} else {
20985 		if (yych <= '`') {
20986 			if (yych <= 'M') goto yy1188;
20987 			if (yych <= 'Z') goto yy1185;
20988 			goto yy818;
20989 		} else {
20990 			if (yych == 'm') goto yy1188;
20991 			if (yych <= 'z') goto yy1185;
20992 			goto yy818;
20993 		}
20994 	}
20995 yy1157:
20996 	YYDEBUG(1157, *YYCURSOR);
20997 	++YYCURSOR;
20998 	YYDEBUG(1158, *YYCURSOR);
20999 #line 1733 "parse_date.re"
21000 	{
21001 		DEBUG_OUTPUT("dateshortwithtimeshort12 | dateshortwithtimelong12");
21002 		TIMELIB_INIT;
21003 		TIMELIB_HAVE_DATE();
21004 		s->time->m = timelib_get_month((char **) &ptr);
21005 		s->time->d = timelib_get_nr((char **) &ptr, 2);
21006 
21007 		TIMELIB_HAVE_TIME();
21008 		s->time->h = timelib_get_nr((char **) &ptr, 2);
21009 		s->time->i = timelib_get_nr((char **) &ptr, 2);
21010 		if (*ptr == ':' || *ptr == '.') {
21011 			s->time->s = timelib_get_nr((char **) &ptr, 2);
21012 
21013 			if (*ptr == '.') {
21014 				s->time->us = timelib_get_frac_nr((char **) &ptr, 8);
21015 			}
21016 		}
21017 
21018 		s->time->h += timelib_meridian((char **) &ptr, s->time->h);
21019 		TIMELIB_DEINIT;
21020 		return TIMELIB_SHORTDATE_WITH_TIME;
21021 	}
21022 #line 21023 "<stdout>"
21023 yy1159:
21024 	YYDEBUG(1159, *YYCURSOR);
21025 	yych = *++YYCURSOR;
21026 	if (yych <= '\t') {
21027 		if (yych <= 0x00) goto yy1157;
21028 		if (yych <= 0x08) goto yy56;
21029 		goto yy1157;
21030 	} else {
21031 		if (yych == ' ') goto yy1157;
21032 		goto yy56;
21033 	}
21034 yy1160:
21035 	YYDEBUG(1160, *YYCURSOR);
21036 	yych = *++YYCURSOR;
21037 	if (yych == 'N') goto yy1161;
21038 	if (yych != 'n') goto yy56;
21039 yy1161:
21040 	YYDEBUG(1161, *YYCURSOR);
21041 	yych = *++YYCURSOR;
21042 	if (yych == 'I') goto yy1190;
21043 	if (yych == 'i') goto yy1190;
21044 	goto yy56;
21045 yy1162:
21046 	YYDEBUG(1162, *YYCURSOR);
21047 	yych = *++YYCURSOR;
21048 	if (yych == 'F') goto yy1191;
21049 	if (yych == 'f') goto yy1191;
21050 	goto yy56;
21051 yy1163:
21052 	YYDEBUG(1163, *YYCURSOR);
21053 	yych = *++YYCURSOR;
21054 	if (yych == 'Y') goto yy1193;
21055 	if (yych == 'y') goto yy1193;
21056 	goto yy56;
21057 yy1164:
21058 	YYDEBUG(1164, *YYCURSOR);
21059 	yych = *++YYCURSOR;
21060 	if (yych == 'S') goto yy1194;
21061 	if (yych == 's') goto yy1194;
21062 	goto yy56;
21063 yy1165:
21064 	YYDEBUG(1165, *YYCURSOR);
21065 	yych = *++YYCURSOR;
21066 	if (yych == 'E') goto yy1034;
21067 	if (yych == 'e') goto yy1034;
21068 	goto yy56;
21069 yy1166:
21070 	YYDEBUG(1166, *YYCURSOR);
21071 	yych = *++YYCURSOR;
21072 	if (yych == 'D') goto yy1034;
21073 	if (yych == 'd') goto yy1034;
21074 	goto yy56;
21075 yy1167:
21076 	YYDEBUG(1167, *YYCURSOR);
21077 	yych = *++YYCURSOR;
21078 	if (yych == 'F') goto yy1195;
21079 	if (yych == 'f') goto yy1195;
21080 	goto yy56;
21081 yy1168:
21082 	YYDEBUG(1168, *YYCURSOR);
21083 	yych = *++YYCURSOR;
21084 	if (yych <= '/') goto yy56;
21085 	if (yych <= '1') goto yy1197;
21086 	if (yych <= '2') goto yy1198;
21087 	goto yy56;
21088 yy1169:
21089 	YYDEBUG(1169, *YYCURSOR);
21090 	yych = *++YYCURSOR;
21091 	if (yych <= '/') goto yy56;
21092 	if (yych <= '5') goto yy1199;
21093 	if (yych <= '9') goto yy1200;
21094 	goto yy56;
21095 yy1170:
21096 	YYDEBUG(1170, *YYCURSOR);
21097 	yych = *++YYCURSOR;
21098 	if (yych <= '/') goto yy56;
21099 	if (yych <= '1') goto yy1201;
21100 	if (yych <= '2') goto yy1202;
21101 	if (yych <= '9') goto yy1125;
21102 	goto yy56;
21103 yy1171:
21104 	YYDEBUG(1171, *YYCURSOR);
21105 	yych = *++YYCURSOR;
21106 	if (yych <= '/') goto yy186;
21107 	if (yych <= '9') goto yy1203;
21108 	goto yy186;
21109 yy1172:
21110 	YYDEBUG(1172, *YYCURSOR);
21111 	yych = *++YYCURSOR;
21112 	if (yych <= '/') goto yy56;
21113 	if (yych <= '5') goto yy1204;
21114 	if (yych <= '9') goto yy1205;
21115 	if (yych >= ';') goto yy56;
21116 yy1173:
21117 	YYDEBUG(1173, *YYCURSOR);
21118 	yych = *++YYCURSOR;
21119 	if (yych <= '/') goto yy56;
21120 	if (yych <= '5') goto yy1206;
21121 	goto yy56;
21122 yy1174:
21123 	YYDEBUG(1174, *YYCURSOR);
21124 	yych = *++YYCURSOR;
21125 	if (yych <= '/') goto yy56;
21126 	if (yych <= '9') goto yy1205;
21127 	goto yy56;
21128 yy1175:
21129 	YYDEBUG(1175, *YYCURSOR);
21130 	yych = *++YYCURSOR;
21131 	if (yych <= '/') goto yy56;
21132 	if (yych <= '5') goto yy1204;
21133 	if (yych <= '9') goto yy1205;
21134 	goto yy56;
21135 yy1176:
21136 	YYDEBUG(1176, *YYCURSOR);
21137 	yych = *++YYCURSOR;
21138 	if (yych <= '/') goto yy56;
21139 	if (yych <= '1') goto yy1207;
21140 	if (yych <= '2') goto yy1208;
21141 	goto yy56;
21142 yy1177:
21143 	YYDEBUG(1177, *YYCURSOR);
21144 	yych = *++YYCURSOR;
21145 	if (yych == 'M') goto yy1178;
21146 	if (yych != 'm') goto yy56;
21147 yy1178:
21148 	YYDEBUG(1178, *YYCURSOR);
21149 	yych = *++YYCURSOR;
21150 	if (yych <= 0x1F) {
21151 		if (yych <= 0x00) goto yy1209;
21152 		if (yych == '\t') goto yy1209;
21153 		goto yy56;
21154 	} else {
21155 		if (yych <= ' ') goto yy1209;
21156 		if (yych == '.') goto yy1211;
21157 		goto yy56;
21158 	}
21159 yy1179:
21160 	YYDEBUG(1179, *YYCURSOR);
21161 	++YYCURSOR;
21162 	goto yy1023;
21163 yy1180:
21164 	YYDEBUG(1180, *YYCURSOR);
21165 	yych = *++YYCURSOR;
21166 	if (yych == 'M') goto yy1181;
21167 	if (yych != 'm') goto yy56;
21168 yy1181:
21169 	YYDEBUG(1181, *YYCURSOR);
21170 	yych = *++YYCURSOR;
21171 	if (yych <= 0x1F) {
21172 		if (yych <= 0x00) goto yy1212;
21173 		if (yych == '\t') goto yy1212;
21174 		goto yy56;
21175 	} else {
21176 		if (yych <= ' ') goto yy1212;
21177 		if (yych == '.') goto yy1213;
21178 		goto yy56;
21179 	}
21180 yy1182:
21181 	YYDEBUG(1182, *YYCURSOR);
21182 	yych = *++YYCURSOR;
21183 	if (yych <= '/') goto yy818;
21184 	if (yych <= '9') goto yy1184;
21185 	if (yych <= ':') goto yy1214;
21186 	goto yy818;
21187 yy1183:
21188 	YYDEBUG(1183, *YYCURSOR);
21189 	yych = *++YYCURSOR;
21190 	if (yych <= '5') {
21191 		if (yych <= '/') goto yy818;
21192 		if (yych >= '5') goto yy1215;
21193 	} else {
21194 		if (yych <= '9') goto yy1028;
21195 		if (yych <= ':') goto yy1214;
21196 		goto yy818;
21197 	}
21198 yy1184:
21199 	YYDEBUG(1184, *YYCURSOR);
21200 	yych = *++YYCURSOR;
21201 	if (yych <= '/') goto yy818;
21202 	if (yych <= '5') goto yy1215;
21203 	if (yych <= '9') goto yy1028;
21204 	if (yych <= ':') goto yy1214;
21205 	goto yy818;
21206 yy1185:
21207 	YYDEBUG(1185, *YYCURSOR);
21208 	yych = *++YYCURSOR;
21209 	if (yych <= '@') {
21210 		if (yych == ')') goto yy1028;
21211 		goto yy818;
21212 	} else {
21213 		if (yych <= 'Z') goto yy1216;
21214 		if (yych <= '`') goto yy818;
21215 		if (yych <= 'z') goto yy1216;
21216 		goto yy818;
21217 	}
21218 yy1186:
21219 	YYDEBUG(1186, *YYCURSOR);
21220 	yyaccept = 21;
21221 	yych = *(YYMARKER = ++YYCURSOR);
21222 	if (yych <= '/') {
21223 		if (yych <= ',') {
21224 			if (yych == ')') goto yy1028;
21225 			goto yy818;
21226 		} else {
21227 			if (yych == '.') goto yy818;
21228 			goto yy1217;
21229 		}
21230 	} else {
21231 		if (yych <= '^') {
21232 			if (yych <= '@') goto yy818;
21233 			if (yych <= 'Z') goto yy1216;
21234 			goto yy818;
21235 		} else {
21236 			if (yych <= '_') goto yy1217;
21237 			if (yych <= '`') goto yy818;
21238 			if (yych <= 'z') goto yy1218;
21239 			goto yy818;
21240 		}
21241 	}
21242 yy1187:
21243 	YYDEBUG(1187, *YYCURSOR);
21244 	yych = *++YYCURSOR;
21245 	if (yych <= 'S') {
21246 		if (yych == ')') goto yy1028;
21247 		if (yych <= '@') goto yy818;
21248 		goto yy1216;
21249 	} else {
21250 		if (yych <= 'Z') {
21251 			if (yych <= 'T') goto yy1219;
21252 			goto yy1216;
21253 		} else {
21254 			if (yych <= '`') goto yy818;
21255 			if (yych <= 'z') goto yy1216;
21256 			goto yy818;
21257 		}
21258 	}
21259 yy1188:
21260 	YYDEBUG(1188, *YYCURSOR);
21261 	yyaccept = 21;
21262 	yych = *(YYMARKER = ++YYCURSOR);
21263 	if (yych <= ')') {
21264 		if (yych <= '\t') {
21265 			if (yych <= 0x00) goto yy1157;
21266 			if (yych <= 0x08) goto yy818;
21267 			goto yy1157;
21268 		} else {
21269 			if (yych == ' ') goto yy1157;
21270 			if (yych <= '(') goto yy818;
21271 			goto yy1028;
21272 		}
21273 	} else {
21274 		if (yych <= '@') {
21275 			if (yych == '.') goto yy1159;
21276 			goto yy818;
21277 		} else {
21278 			if (yych <= 'Z') goto yy1216;
21279 			if (yych <= '`') goto yy818;
21280 			if (yych <= 'z') goto yy1216;
21281 			goto yy818;
21282 		}
21283 	}
21284 yy1189:
21285 	YYDEBUG(1189, *YYCURSOR);
21286 	yyaccept = 21;
21287 	yych = *(YYMARKER = ++YYCURSOR);
21288 	if (yych <= '-') {
21289 		if (yych <= 0x1F) {
21290 			if (yych <= 0x00) goto yy1157;
21291 			if (yych == '\t') goto yy1157;
21292 			goto yy818;
21293 		} else {
21294 			if (yych <= '(') {
21295 				if (yych <= ' ') goto yy1157;
21296 				goto yy818;
21297 			} else {
21298 				if (yych <= ')') goto yy1028;
21299 				if (yych <= ',') goto yy818;
21300 				goto yy1217;
21301 			}
21302 		}
21303 	} else {
21304 		if (yych <= 'Z') {
21305 			if (yych <= '.') goto yy1159;
21306 			if (yych <= '/') goto yy1217;
21307 			if (yych <= '@') goto yy818;
21308 			goto yy1216;
21309 		} else {
21310 			if (yych <= '_') {
21311 				if (yych <= '^') goto yy818;
21312 				goto yy1217;
21313 			} else {
21314 				if (yych <= '`') goto yy818;
21315 				if (yych <= 'z') goto yy1218;
21316 				goto yy818;
21317 			}
21318 		}
21319 	}
21320 yy1190:
21321 	YYDEBUG(1190, *YYCURSOR);
21322 	yych = *++YYCURSOR;
21323 	if (yych == 'G') goto yy1220;
21324 	if (yych == 'g') goto yy1220;
21325 	goto yy56;
21326 yy1191:
21327 	YYDEBUG(1191, *YYCURSOR);
21328 	++YYCURSOR;
21329 	YYDEBUG(1192, *YYCURSOR);
21330 #line 1165 "parse_date.re"
21331 	{
21332 		timelib_sll i;
21333 		int         behavior = 0;
21334 		DEBUG_OUTPUT("weekdayof");
21335 		TIMELIB_INIT;
21336 		TIMELIB_HAVE_RELATIVE();
21337 		TIMELIB_HAVE_SPECIAL_RELATIVE();
21338 
21339 		i = timelib_get_relative_text((char **) &ptr, &behavior);
21340 		timelib_eat_spaces((char **) &ptr);
21341 		if (i > 0) { /* first, second... etc */
21342 			s->time->relative.special.type = TIMELIB_SPECIAL_DAY_OF_WEEK_IN_MONTH;
21343 			timelib_set_relative((char **) &ptr, i, 1, s);
21344 		} else { /* last */
21345 			s->time->relative.special.type = TIMELIB_SPECIAL_LAST_DAY_OF_WEEK_IN_MONTH;
21346 			timelib_set_relative((char **) &ptr, i, behavior, s);
21347 		}
21348 		TIMELIB_DEINIT;
21349 		return TIMELIB_WEEK_DAY_OF_MONTH;
21350 	}
21351 #line 21352 "<stdout>"
21352 yy1193:
21353 	YYDEBUG(1193, *YYCURSOR);
21354 	yyaccept = 25;
21355 	yych = *(YYMARKER = ++YYCURSOR);
21356 	if (yych == '\t') goto yy1102;
21357 	if (yych == ' ') goto yy1102;
21358 	goto yy940;
21359 yy1194:
21360 	YYDEBUG(1194, *YYCURSOR);
21361 	yych = *++YYCURSOR;
21362 	if (yych == 'E') goto yy1221;
21363 	if (yych == 'e') goto yy1221;
21364 	goto yy56;
21365 yy1195:
21366 	YYDEBUG(1195, *YYCURSOR);
21367 	++YYCURSOR;
21368 	YYDEBUG(1196, *YYCURSOR);
21369 #line 1125 "parse_date.re"
21370 	{
21371 		DEBUG_OUTPUT("firstdayof | lastdayof");
21372 		TIMELIB_INIT;
21373 		TIMELIB_HAVE_RELATIVE();
21374 
21375 		/* skip "last day of" or "first day of" */
21376 		if (*ptr == 'l' || *ptr == 'L') {
21377 			s->time->relative.first_last_day_of = TIMELIB_SPECIAL_LAST_DAY_OF_MONTH;
21378 		} else {
21379 			s->time->relative.first_last_day_of = TIMELIB_SPECIAL_FIRST_DAY_OF_MONTH;
21380 		}
21381 
21382 		TIMELIB_DEINIT;
21383 		return TIMELIB_LF_DAY_OF_MONTH;
21384 	}
21385 #line 21386 "<stdout>"
21386 yy1197:
21387 	YYDEBUG(1197, *YYCURSOR);
21388 	yych = *++YYCURSOR;
21389 	if (yych <= '/') goto yy56;
21390 	if (yych <= '9') goto yy1222;
21391 	goto yy56;
21392 yy1198:
21393 	YYDEBUG(1198, *YYCURSOR);
21394 	yych = *++YYCURSOR;
21395 	if (yych <= '/') goto yy56;
21396 	if (yych <= '4') goto yy1222;
21397 	goto yy56;
21398 yy1199:
21399 	YYDEBUG(1199, *YYCURSOR);
21400 	yych = *++YYCURSOR;
21401 	if (yych <= '/') goto yy56;
21402 	if (yych <= '9') goto yy1200;
21403 	if (yych <= ':') goto yy1223;
21404 	goto yy56;
21405 yy1200:
21406 	YYDEBUG(1200, *YYCURSOR);
21407 	yych = *++YYCURSOR;
21408 	if (yych == ':') goto yy1223;
21409 	goto yy56;
21410 yy1201:
21411 	YYDEBUG(1201, *YYCURSOR);
21412 	yych = *++YYCURSOR;
21413 	if (yych <= '/') goto yy56;
21414 	if (yych <= '9') goto yy1224;
21415 	if (yych <= ':') goto yy1169;
21416 	goto yy56;
21417 yy1202:
21418 	YYDEBUG(1202, *YYCURSOR);
21419 	yych = *++YYCURSOR;
21420 	if (yych <= '/') goto yy56;
21421 	if (yych <= '4') goto yy1224;
21422 	if (yych == ':') goto yy1169;
21423 	goto yy56;
21424 yy1203:
21425 	YYDEBUG(1203, *YYCURSOR);
21426 	yych = *++YYCURSOR;
21427 	if (yych <= '/') goto yy186;
21428 	if (yych <= '9') goto yy185;
21429 	goto yy186;
21430 yy1204:
21431 	YYDEBUG(1204, *YYCURSOR);
21432 	yych = *++YYCURSOR;
21433 	if (yych <= '/') goto yy56;
21434 	if (yych <= '5') goto yy1223;
21435 	if (yych <= '6') goto yy1225;
21436 	if (yych >= ':') goto yy56;
21437 yy1205:
21438 	YYDEBUG(1205, *YYCURSOR);
21439 	yych = *++YYCURSOR;
21440 	if (yych <= '/') goto yy56;
21441 	if (yych <= '5') goto yy1226;
21442 	if (yych <= '6') goto yy1227;
21443 	goto yy56;
21444 yy1206:
21445 	YYDEBUG(1206, *YYCURSOR);
21446 	yych = *++YYCURSOR;
21447 	if (yych <= '/') goto yy56;
21448 	if (yych <= '9') goto yy1228;
21449 	goto yy56;
21450 yy1207:
21451 	YYDEBUG(1207, *YYCURSOR);
21452 	yych = *++YYCURSOR;
21453 	if (yych <= '/') goto yy56;
21454 	if (yych <= '9') goto yy1229;
21455 	goto yy56;
21456 yy1208:
21457 	YYDEBUG(1208, *YYCURSOR);
21458 	yych = *++YYCURSOR;
21459 	if (yych <= '/') goto yy56;
21460 	if (yych <= '4') goto yy1229;
21461 	goto yy56;
21462 yy1209:
21463 	YYDEBUG(1209, *YYCURSOR);
21464 	++YYCURSOR;
21465 	YYDEBUG(1210, *YYCURSOR);
21466 #line 1204 "parse_date.re"
21467 	{
21468 		DEBUG_OUTPUT("mssqltime");
21469 		TIMELIB_INIT;
21470 		TIMELIB_HAVE_TIME();
21471 		s->time->h = timelib_get_nr((char **) &ptr, 2);
21472 		s->time->i = timelib_get_nr((char **) &ptr, 2);
21473 		if (*ptr == ':' || *ptr == '.') {
21474 			s->time->s = timelib_get_nr((char **) &ptr, 2);
21475 
21476 			if (*ptr == ':' || *ptr == '.') {
21477 				s->time->us = timelib_get_frac_nr((char **) &ptr, 8);
21478 			}
21479 		}
21480 		timelib_eat_spaces((char **) &ptr);
21481 		s->time->h += timelib_meridian((char **) &ptr, s->time->h);
21482 		TIMELIB_DEINIT;
21483 		return TIMELIB_TIME24_WITH_ZONE;
21484 	}
21485 #line 21486 "<stdout>"
21486 yy1211:
21487 	YYDEBUG(1211, *YYCURSOR);
21488 	yych = *++YYCURSOR;
21489 	if (yych <= '\t') {
21490 		if (yych <= 0x00) goto yy1209;
21491 		if (yych <= 0x08) goto yy56;
21492 		goto yy1209;
21493 	} else {
21494 		if (yych == ' ') goto yy1209;
21495 		goto yy56;
21496 	}
21497 yy1212:
21498 	YYDEBUG(1212, *YYCURSOR);
21499 	++YYCURSOR;
21500 	goto yy1092;
21501 yy1213:
21502 	YYDEBUG(1213, *YYCURSOR);
21503 	yych = *++YYCURSOR;
21504 	if (yych <= '\t') {
21505 		if (yych <= 0x00) goto yy1212;
21506 		if (yych <= 0x08) goto yy56;
21507 		goto yy1212;
21508 	} else {
21509 		if (yych == ' ') goto yy1212;
21510 		goto yy56;
21511 	}
21512 yy1214:
21513 	YYDEBUG(1214, *YYCURSOR);
21514 	yych = *++YYCURSOR;
21515 	if (yych <= '/') goto yy818;
21516 	if (yych <= '5') goto yy1215;
21517 	if (yych <= '9') goto yy1028;
21518 	goto yy818;
21519 yy1215:
21520 	YYDEBUG(1215, *YYCURSOR);
21521 	yych = *++YYCURSOR;
21522 	if (yych <= '/') goto yy818;
21523 	if (yych <= '9') goto yy1028;
21524 	goto yy818;
21525 yy1216:
21526 	YYDEBUG(1216, *YYCURSOR);
21527 	yych = *++YYCURSOR;
21528 	if (yych <= '@') {
21529 		if (yych == ')') goto yy1028;
21530 		goto yy818;
21531 	} else {
21532 		if (yych <= 'Z') goto yy1230;
21533 		if (yych <= '`') goto yy818;
21534 		if (yych <= 'z') goto yy1230;
21535 		goto yy818;
21536 	}
21537 yy1217:
21538 	YYDEBUG(1217, *YYCURSOR);
21539 	++YYCURSOR;
21540 	if (YYLIMIT <= YYCURSOR) YYFILL(1);
21541 	yych = *YYCURSOR;
21542 	if (yych <= '@') goto yy56;
21543 	if (yych <= 'Z') goto yy1231;
21544 	if (yych <= '`') goto yy56;
21545 	if (yych <= 'z') goto yy1231;
21546 	goto yy56;
21547 yy1218:
21548 	YYDEBUG(1218, *YYCURSOR);
21549 	yyaccept = 21;
21550 	yych = *(YYMARKER = ++YYCURSOR);
21551 	if (yych <= '/') {
21552 		if (yych <= ',') {
21553 			if (yych == ')') goto yy1028;
21554 			goto yy818;
21555 		} else {
21556 			if (yych == '.') goto yy818;
21557 			goto yy1217;
21558 		}
21559 	} else {
21560 		if (yych <= '^') {
21561 			if (yych <= '@') goto yy818;
21562 			if (yych <= 'Z') goto yy1230;
21563 			goto yy818;
21564 		} else {
21565 			if (yych <= '_') goto yy1217;
21566 			if (yych <= '`') goto yy818;
21567 			if (yych <= 'z') goto yy1233;
21568 			goto yy818;
21569 		}
21570 	}
21571 yy1219:
21572 	YYDEBUG(1219, *YYCURSOR);
21573 	yyaccept = 21;
21574 	yych = *(YYMARKER = ++YYCURSOR);
21575 	if (yych <= ',') {
21576 		if (yych <= ')') {
21577 			if (yych <= '(') goto yy818;
21578 			goto yy1028;
21579 		} else {
21580 			if (yych == '+') goto yy1149;
21581 			goto yy818;
21582 		}
21583 	} else {
21584 		if (yych <= 'Z') {
21585 			if (yych <= '-') goto yy1149;
21586 			if (yych <= '@') goto yy818;
21587 			goto yy1230;
21588 		} else {
21589 			if (yych <= '`') goto yy818;
21590 			if (yych <= 'z') goto yy1230;
21591 			goto yy818;
21592 		}
21593 	}
21594 yy1220:
21595 	YYDEBUG(1220, *YYCURSOR);
21596 	yych = *++YYCURSOR;
21597 	if (yych == 'H') goto yy1234;
21598 	if (yych == 'h') goto yy1234;
21599 	goto yy56;
21600 yy1221:
21601 	YYDEBUG(1221, *YYCURSOR);
21602 	yych = *++YYCURSOR;
21603 	if (yych == 'C') goto yy1235;
21604 	if (yych == 'c') goto yy1235;
21605 	goto yy56;
21606 yy1222:
21607 	YYDEBUG(1222, *YYCURSOR);
21608 	yych = *++YYCURSOR;
21609 	if (yych == ':') goto yy1236;
21610 	goto yy56;
21611 yy1223:
21612 	YYDEBUG(1223, *YYCURSOR);
21613 	yych = *++YYCURSOR;
21614 	if (yych <= '/') goto yy56;
21615 	if (yych <= '5') goto yy1237;
21616 	if (yych <= '6') goto yy1239;
21617 	if (yych <= '9') goto yy1240;
21618 	goto yy56;
21619 yy1224:
21620 	YYDEBUG(1224, *YYCURSOR);
21621 	yych = *++YYCURSOR;
21622 	if (yych == ':') goto yy1241;
21623 	goto yy56;
21624 yy1225:
21625 	YYDEBUG(1225, *YYCURSOR);
21626 	yych = *++YYCURSOR;
21627 	if (yych <= '/') goto yy56;
21628 	if (yych <= '0') goto yy1237;
21629 	if (yych <= '5') goto yy1226;
21630 	if (yych <= '6') goto yy1227;
21631 	goto yy56;
21632 yy1226:
21633 	YYDEBUG(1226, *YYCURSOR);
21634 	yych = *++YYCURSOR;
21635 	if (yych <= '/') goto yy56;
21636 	if (yych <= '9') goto yy1240;
21637 	goto yy56;
21638 yy1227:
21639 	YYDEBUG(1227, *YYCURSOR);
21640 	yych = *++YYCURSOR;
21641 	if (yych == '0') goto yy1240;
21642 	goto yy56;
21643 yy1228:
21644 	YYDEBUG(1228, *YYCURSOR);
21645 	yych = *++YYCURSOR;
21646 	if (yych == ':') goto yy1205;
21647 	goto yy56;
21648 yy1229:
21649 	YYDEBUG(1229, *YYCURSOR);
21650 	yych = *++YYCURSOR;
21651 	if (yych == ':') goto yy1173;
21652 	goto yy56;
21653 yy1230:
21654 	YYDEBUG(1230, *YYCURSOR);
21655 	yych = *++YYCURSOR;
21656 	if (yych <= '@') {
21657 		if (yych == ')') goto yy1028;
21658 		goto yy818;
21659 	} else {
21660 		if (yych <= 'Z') goto yy1242;
21661 		if (yych <= '`') goto yy818;
21662 		if (yych <= 'z') goto yy1242;
21663 		goto yy818;
21664 	}
21665 yy1231:
21666 	YYDEBUG(1231, *YYCURSOR);
21667 	yyaccept = 21;
21668 	YYMARKER = ++YYCURSOR;
21669 	if (YYLIMIT <= YYCURSOR) YYFILL(1);
21670 	yych = *YYCURSOR;
21671 	YYDEBUG(1232, *YYCURSOR);
21672 	if (yych <= '@') {
21673 		if (yych <= '-') {
21674 			if (yych <= ',') goto yy818;
21675 			goto yy1217;
21676 		} else {
21677 			if (yych == '/') goto yy1217;
21678 			goto yy818;
21679 		}
21680 	} else {
21681 		if (yych <= '_') {
21682 			if (yych <= 'Z') goto yy1231;
21683 			if (yych <= '^') goto yy818;
21684 			goto yy1217;
21685 		} else {
21686 			if (yych <= '`') goto yy818;
21687 			if (yych <= 'z') goto yy1231;
21688 			goto yy818;
21689 		}
21690 	}
21691 yy1233:
21692 	YYDEBUG(1233, *YYCURSOR);
21693 	yyaccept = 21;
21694 	yych = *(YYMARKER = ++YYCURSOR);
21695 	if (yych <= '/') {
21696 		if (yych <= ',') {
21697 			if (yych == ')') goto yy1028;
21698 			goto yy818;
21699 		} else {
21700 			if (yych == '.') goto yy818;
21701 			goto yy1217;
21702 		}
21703 	} else {
21704 		if (yych <= '^') {
21705 			if (yych <= '@') goto yy818;
21706 			if (yych <= 'Z') goto yy1242;
21707 			goto yy818;
21708 		} else {
21709 			if (yych <= '_') goto yy1217;
21710 			if (yych <= '`') goto yy818;
21711 			if (yych <= 'z') goto yy1243;
21712 			goto yy818;
21713 		}
21714 	}
21715 yy1234:
21716 	YYDEBUG(1234, *YYCURSOR);
21717 	yych = *++YYCURSOR;
21718 	if (yych == 'T') goto yy1034;
21719 	if (yych == 't') goto yy1034;
21720 	goto yy56;
21721 yy1235:
21722 	YYDEBUG(1235, *YYCURSOR);
21723 	yych = *++YYCURSOR;
21724 	if (yych == 'O') goto yy1110;
21725 	if (yych == 'o') goto yy1110;
21726 	goto yy56;
21727 yy1236:
21728 	YYDEBUG(1236, *YYCURSOR);
21729 	yych = *++YYCURSOR;
21730 	if (yych <= '/') goto yy56;
21731 	if (yych <= '5') goto yy1244;
21732 	goto yy56;
21733 yy1237:
21734 	YYDEBUG(1237, *YYCURSOR);
21735 	yych = *++YYCURSOR;
21736 	if (yych <= '/') goto yy1238;
21737 	if (yych <= '9') goto yy1240;
21738 yy1238:
21739 	YYDEBUG(1238, *YYCURSOR);
21740 #line 1493 "parse_date.re"
21741 	{
21742 		int tz_not_found;
21743 		DEBUG_OUTPUT("xmlrpc | xmlrpcnocolon | soap | wddx | exif");
21744 		TIMELIB_INIT;
21745 		TIMELIB_HAVE_TIME();
21746 		TIMELIB_HAVE_DATE();
21747 		s->time->y = timelib_get_nr((char **) &ptr, 4);
21748 		s->time->m = timelib_get_nr((char **) &ptr, 2);
21749 		s->time->d = timelib_get_nr((char **) &ptr, 2);
21750 		s->time->h = timelib_get_nr((char **) &ptr, 2);
21751 		s->time->i = timelib_get_nr((char **) &ptr, 2);
21752 		s->time->s = timelib_get_nr((char **) &ptr, 2);
21753 		if (*ptr == '.') {
21754 			s->time->us = timelib_get_frac_nr((char **) &ptr, 9);
21755 			if (*ptr) { /* timezone is optional */
21756 				s->time->z = timelib_parse_zone((char **) &ptr, &s->time->dst, s->time, &tz_not_found, s->tzdb, tz_get_wrapper);
21757 				if (tz_not_found) {
21758 					add_error(s, TIMELIB_ERR_TZID_NOT_FOUND, "The timezone could not be found in the database");
21759 				}
21760 			}
21761 		}
21762 		TIMELIB_DEINIT;
21763 		return TIMELIB_XMLRPC_SOAP;
21764 	}
21765 #line 21766 "<stdout>"
21766 yy1239:
21767 	YYDEBUG(1239, *YYCURSOR);
21768 	yych = *++YYCURSOR;
21769 	if (yych != '0') goto yy1238;
21770 yy1240:
21771 	YYDEBUG(1240, *YYCURSOR);
21772 	++YYCURSOR;
21773 	goto yy1238;
21774 yy1241:
21775 	YYDEBUG(1241, *YYCURSOR);
21776 	yych = *++YYCURSOR;
21777 	if (yych <= '/') goto yy56;
21778 	if (yych <= '5') goto yy1245;
21779 	if (yych <= '9') goto yy1200;
21780 	goto yy56;
21781 yy1242:
21782 	YYDEBUG(1242, *YYCURSOR);
21783 	yych = *++YYCURSOR;
21784 	if (yych <= '@') {
21785 		if (yych == ')') goto yy1028;
21786 		goto yy818;
21787 	} else {
21788 		if (yych <= 'Z') goto yy1246;
21789 		if (yych <= '`') goto yy818;
21790 		if (yych <= 'z') goto yy1246;
21791 		goto yy818;
21792 	}
21793 yy1243:
21794 	YYDEBUG(1243, *YYCURSOR);
21795 	yyaccept = 21;
21796 	yych = *(YYMARKER = ++YYCURSOR);
21797 	if (yych <= '/') {
21798 		if (yych <= ',') {
21799 			if (yych == ')') goto yy1028;
21800 			goto yy818;
21801 		} else {
21802 			if (yych == '.') goto yy818;
21803 			goto yy1217;
21804 		}
21805 	} else {
21806 		if (yych <= '^') {
21807 			if (yych <= '@') goto yy818;
21808 			if (yych <= 'Z') goto yy1246;
21809 			goto yy818;
21810 		} else {
21811 			if (yych <= '_') goto yy1217;
21812 			if (yych <= '`') goto yy818;
21813 			if (yych <= 'z') goto yy1247;
21814 			goto yy818;
21815 		}
21816 	}
21817 yy1244:
21818 	YYDEBUG(1244, *YYCURSOR);
21819 	yych = *++YYCURSOR;
21820 	if (yych <= '/') goto yy56;
21821 	if (yych <= '9') goto yy1248;
21822 	goto yy56;
21823 yy1245:
21824 	YYDEBUG(1245, *YYCURSOR);
21825 	yych = *++YYCURSOR;
21826 	if (yych <= '/') goto yy56;
21827 	if (yych <= '9') goto yy1249;
21828 	if (yych <= ':') goto yy1223;
21829 	goto yy56;
21830 yy1246:
21831 	YYDEBUG(1246, *YYCURSOR);
21832 	yych = *++YYCURSOR;
21833 	if (yych == ')') goto yy1028;
21834 	goto yy818;
21835 yy1247:
21836 	YYDEBUG(1247, *YYCURSOR);
21837 	yyaccept = 21;
21838 	yych = *(YYMARKER = ++YYCURSOR);
21839 	if (yych <= '.') {
21840 		if (yych <= ')') {
21841 			if (yych <= '(') goto yy818;
21842 			goto yy1028;
21843 		} else {
21844 			if (yych == '-') goto yy1217;
21845 			goto yy818;
21846 		}
21847 	} else {
21848 		if (yych <= '_') {
21849 			if (yych <= '/') goto yy1217;
21850 			if (yych <= '^') goto yy818;
21851 			goto yy1217;
21852 		} else {
21853 			if (yych <= '`') goto yy818;
21854 			if (yych <= 'z') goto yy1250;
21855 			goto yy818;
21856 		}
21857 	}
21858 yy1248:
21859 	YYDEBUG(1248, *YYCURSOR);
21860 	yych = *++YYCURSOR;
21861 	if (yych == ':') goto yy1252;
21862 	goto yy56;
21863 yy1249:
21864 	YYDEBUG(1249, *YYCURSOR);
21865 	yych = *++YYCURSOR;
21866 	if (yych == ':') goto yy1253;
21867 	goto yy56;
21868 yy1250:
21869 	YYDEBUG(1250, *YYCURSOR);
21870 	++YYCURSOR;
21871 	if (YYLIMIT <= YYCURSOR) YYFILL(1);
21872 	yych = *YYCURSOR;
21873 	YYDEBUG(1251, *YYCURSOR);
21874 	if (yych <= '/') {
21875 		if (yych == '-') goto yy1217;
21876 		if (yych <= '.') goto yy56;
21877 		goto yy1217;
21878 	} else {
21879 		if (yych <= '_') {
21880 			if (yych <= '^') goto yy56;
21881 			goto yy1217;
21882 		} else {
21883 			if (yych <= '`') goto yy56;
21884 			if (yych <= 'z') goto yy1250;
21885 			goto yy56;
21886 		}
21887 	}
21888 yy1252:
21889 	YYDEBUG(1252, *YYCURSOR);
21890 	yych = *++YYCURSOR;
21891 	if (yych <= '/') goto yy56;
21892 	if (yych <= '5') goto yy1254;
21893 	if (yych <= '6') goto yy1255;
21894 	goto yy56;
21895 yy1253:
21896 	YYDEBUG(1253, *YYCURSOR);
21897 	yych = *++YYCURSOR;
21898 	if (yych <= '/') goto yy56;
21899 	if (yych <= '5') goto yy1256;
21900 	if (yych <= '6') goto yy1257;
21901 	if (yych <= '9') goto yy1240;
21902 	goto yy56;
21903 yy1254:
21904 	YYDEBUG(1254, *YYCURSOR);
21905 	yych = *++YYCURSOR;
21906 	if (yych <= '/') goto yy56;
21907 	if (yych <= '9') goto yy1258;
21908 	goto yy56;
21909 yy1255:
21910 	YYDEBUG(1255, *YYCURSOR);
21911 	yych = *++YYCURSOR;
21912 	if (yych == '0') goto yy1258;
21913 	goto yy56;
21914 yy1256:
21915 	YYDEBUG(1256, *YYCURSOR);
21916 	yych = *++YYCURSOR;
21917 	if (yych <= '/') goto yy1238;
21918 	if (yych <= '9') goto yy1259;
21919 	goto yy1238;
21920 yy1257:
21921 	YYDEBUG(1257, *YYCURSOR);
21922 	yych = *++YYCURSOR;
21923 	if (yych == '0') goto yy1259;
21924 	goto yy1238;
21925 yy1258:
21926 	YYDEBUG(1258, *YYCURSOR);
21927 	yych = *++YYCURSOR;
21928 	if (yych == '\t') goto yy1260;
21929 	if (yych == ' ') goto yy1260;
21930 	goto yy56;
21931 yy1259:
21932 	YYDEBUG(1259, *YYCURSOR);
21933 	yyaccept = 33;
21934 	yych = *(YYMARKER = ++YYCURSOR);
21935 	if (yych == '.') goto yy1262;
21936 	goto yy1238;
21937 yy1260:
21938 	YYDEBUG(1260, *YYCURSOR);
21939 	++YYCURSOR;
21940 	if ((YYLIMIT - YYCURSOR) < 9) YYFILL(9);
21941 	yych = *YYCURSOR;
21942 	YYDEBUG(1261, *YYCURSOR);
21943 	if (yych <= '*') {
21944 		if (yych <= '\t') {
21945 			if (yych <= 0x08) goto yy56;
21946 			goto yy1260;
21947 		} else {
21948 			if (yych == ' ') goto yy1260;
21949 			goto yy56;
21950 		}
21951 	} else {
21952 		if (yych <= '-') {
21953 			if (yych == ',') goto yy56;
21954 			goto yy1263;
21955 		} else {
21956 			if (yych == 'G') goto yy1264;
21957 			goto yy56;
21958 		}
21959 	}
21960 yy1262:
21961 	YYDEBUG(1262, *YYCURSOR);
21962 	yych = *++YYCURSOR;
21963 	if (yych <= '/') goto yy56;
21964 	if (yych <= '9') goto yy1265;
21965 	goto yy56;
21966 yy1263:
21967 	YYDEBUG(1263, *YYCURSOR);
21968 	yych = *++YYCURSOR;
21969 	if (yych <= '/') goto yy56;
21970 	if (yych <= '1') goto yy1267;
21971 	if (yych <= '2') goto yy1269;
21972 	if (yych <= '9') goto yy1270;
21973 	goto yy56;
21974 yy1264:
21975 	YYDEBUG(1264, *YYCURSOR);
21976 	yych = *++YYCURSOR;
21977 	if (yych == 'M') goto yy1271;
21978 	goto yy56;
21979 yy1265:
21980 	YYDEBUG(1265, *YYCURSOR);
21981 	yyaccept = 33;
21982 	YYMARKER = ++YYCURSOR;
21983 	if ((YYLIMIT - YYCURSOR) < 9) YYFILL(9);
21984 	yych = *YYCURSOR;
21985 	YYDEBUG(1266, *YYCURSOR);
21986 	if (yych <= '-') {
21987 		if (yych == '+') goto yy1272;
21988 		if (yych <= ',') goto yy1238;
21989 		goto yy1272;
21990 	} else {
21991 		if (yych <= '9') {
21992 			if (yych <= '/') goto yy1238;
21993 			goto yy1265;
21994 		} else {
21995 			if (yych == 'G') goto yy1273;
21996 			goto yy1238;
21997 		}
21998 	}
21999 yy1267:
22000 	YYDEBUG(1267, *YYCURSOR);
22001 	yych = *++YYCURSOR;
22002 	if (yych <= '/') goto yy1268;
22003 	if (yych <= '9') goto yy1270;
22004 	if (yych <= ':') goto yy1274;
22005 yy1268:
22006 	YYDEBUG(1268, *YYCURSOR);
22007 #line 1599 "parse_date.re"
22008 	{
22009 		int tz_not_found;
22010 		DEBUG_OUTPUT("clf");
22011 		TIMELIB_INIT;
22012 		TIMELIB_HAVE_TIME();
22013 		TIMELIB_HAVE_DATE();
22014 		s->time->d = timelib_get_nr((char **) &ptr, 2);
22015 		s->time->m = timelib_get_month((char **) &ptr);
22016 		s->time->y = timelib_get_nr((char **) &ptr, 4);
22017 		s->time->h = timelib_get_nr((char **) &ptr, 2);
22018 		s->time->i = timelib_get_nr((char **) &ptr, 2);
22019 		s->time->s = timelib_get_nr((char **) &ptr, 2);
22020 		s->time->z = timelib_parse_zone((char **) &ptr, &s->time->dst, s->time, &tz_not_found, s->tzdb, tz_get_wrapper);
22021 		if (tz_not_found) {
22022 			add_error(s, TIMELIB_ERR_TZID_NOT_FOUND, "The timezone could not be found in the database");
22023 		}
22024 		TIMELIB_DEINIT;
22025 		return TIMELIB_CLF;
22026 	}
22027 #line 22028 "<stdout>"
22028 yy1269:
22029 	YYDEBUG(1269, *YYCURSOR);
22030 	yych = *++YYCURSOR;
22031 	if (yych <= '5') {
22032 		if (yych <= '/') goto yy1268;
22033 		if (yych >= '5') goto yy1275;
22034 	} else {
22035 		if (yych <= '9') goto yy1276;
22036 		if (yych <= ':') goto yy1274;
22037 		goto yy1268;
22038 	}
22039 yy1270:
22040 	YYDEBUG(1270, *YYCURSOR);
22041 	yych = *++YYCURSOR;
22042 	if (yych <= '/') goto yy1268;
22043 	if (yych <= '5') goto yy1275;
22044 	if (yych <= '9') goto yy1276;
22045 	if (yych <= ':') goto yy1274;
22046 	goto yy1268;
22047 yy1271:
22048 	YYDEBUG(1271, *YYCURSOR);
22049 	yych = *++YYCURSOR;
22050 	if (yych == 'T') goto yy1277;
22051 	goto yy56;
22052 yy1272:
22053 	YYDEBUG(1272, *YYCURSOR);
22054 	yych = *++YYCURSOR;
22055 	if (yych <= '/') goto yy56;
22056 	if (yych <= '1') goto yy1278;
22057 	if (yych <= '2') goto yy1279;
22058 	if (yych <= '9') goto yy1280;
22059 	goto yy56;
22060 yy1273:
22061 	YYDEBUG(1273, *YYCURSOR);
22062 	yych = *++YYCURSOR;
22063 	if (yych == 'M') goto yy1281;
22064 	goto yy56;
22065 yy1274:
22066 	YYDEBUG(1274, *YYCURSOR);
22067 	yych = *++YYCURSOR;
22068 	if (yych <= '/') goto yy1268;
22069 	if (yych <= '5') goto yy1275;
22070 	if (yych <= '9') goto yy1276;
22071 	goto yy1268;
22072 yy1275:
22073 	YYDEBUG(1275, *YYCURSOR);
22074 	yych = *++YYCURSOR;
22075 	if (yych <= '/') goto yy1268;
22076 	if (yych >= ':') goto yy1268;
22077 yy1276:
22078 	YYDEBUG(1276, *YYCURSOR);
22079 	++YYCURSOR;
22080 	goto yy1268;
22081 yy1277:
22082 	YYDEBUG(1277, *YYCURSOR);
22083 	yych = *++YYCURSOR;
22084 	if (yych == '+') goto yy1263;
22085 	if (yych == '-') goto yy1263;
22086 	goto yy56;
22087 yy1278:
22088 	YYDEBUG(1278, *YYCURSOR);
22089 	yych = *++YYCURSOR;
22090 	if (yych <= '/') goto yy1238;
22091 	if (yych <= '9') goto yy1280;
22092 	if (yych <= ':') goto yy1282;
22093 	goto yy1238;
22094 yy1279:
22095 	YYDEBUG(1279, *YYCURSOR);
22096 	yych = *++YYCURSOR;
22097 	if (yych <= '5') {
22098 		if (yych <= '/') goto yy1238;
22099 		if (yych >= '5') goto yy1237;
22100 	} else {
22101 		if (yych <= '9') goto yy1240;
22102 		if (yych <= ':') goto yy1282;
22103 		goto yy1238;
22104 	}
22105 yy1280:
22106 	YYDEBUG(1280, *YYCURSOR);
22107 	yych = *++YYCURSOR;
22108 	if (yych <= '/') goto yy1238;
22109 	if (yych <= '5') goto yy1237;
22110 	if (yych <= '9') goto yy1240;
22111 	if (yych <= ':') goto yy1282;
22112 	goto yy1238;
22113 yy1281:
22114 	YYDEBUG(1281, *YYCURSOR);
22115 	yych = *++YYCURSOR;
22116 	if (yych == 'T') goto yy1283;
22117 	goto yy56;
22118 yy1282:
22119 	YYDEBUG(1282, *YYCURSOR);
22120 	yych = *++YYCURSOR;
22121 	if (yych <= '/') goto yy1238;
22122 	if (yych <= '5') goto yy1237;
22123 	if (yych <= '9') goto yy1240;
22124 	goto yy1238;
22125 yy1283:
22126 	YYDEBUG(1283, *YYCURSOR);
22127 	yych = *++YYCURSOR;
22128 	if (yych == '+') goto yy1272;
22129 	if (yych == '-') goto yy1272;
22130 	goto yy56;
22131 }
22132 #line 1818 "parse_date.re"
22133 
22134 }
22135 
22136 #define YYMAXFILL 33
22137 
22138 
timelib_strtotime(char * s,size_t len,timelib_error_container ** errors,const timelib_tzdb * tzdb,timelib_tz_get_wrapper tz_get_wrapper)22139 timelib_time* timelib_strtotime(char *s, size_t len, timelib_error_container **errors, const timelib_tzdb *tzdb, timelib_tz_get_wrapper tz_get_wrapper)
22140 {
22141 	Scanner in;
22142 	int t;
22143 	char *e = s + len - 1;
22144 
22145 	memset(&in, 0, sizeof(in));
22146 	in.errors = timelib_malloc(sizeof(timelib_error_container));
22147 	in.errors->warning_count = 0;
22148 	in.errors->warning_messages = NULL;
22149 	in.errors->error_count = 0;
22150 	in.errors->error_messages = NULL;
22151 
22152 	if (len > 0) {
22153 		while (isspace(*s) && s < e) {
22154 			s++;
22155 		}
22156 		while (isspace(*e) && e > s) {
22157 			e--;
22158 		}
22159 	}
22160 	if (e - s < 0) {
22161 		in.time = timelib_time_ctor();
22162 		add_error(&in, TIMELIB_ERR_EMPTY_STRING, "Empty string");
22163 		if (errors) {
22164 			*errors = in.errors;
22165 		} else {
22166 			timelib_error_container_dtor(in.errors);
22167 		}
22168 		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;
22169 		in.time->is_localtime = in.time->zone_type = 0;
22170 		return in.time;
22171 	}
22172 	e++;
22173 
22174 	in.str = timelib_malloc((e - s) + YYMAXFILL);
22175 	memset(in.str, 0, (e - s) + YYMAXFILL);
22176 	memcpy(in.str, s, (e - s));
22177 	in.lim = in.str + (e - s) + YYMAXFILL;
22178 	in.cur = in.str;
22179 	in.time = timelib_time_ctor();
22180 	in.time->y = TIMELIB_UNSET;
22181 	in.time->d = TIMELIB_UNSET;
22182 	in.time->m = TIMELIB_UNSET;
22183 	in.time->h = TIMELIB_UNSET;
22184 	in.time->i = TIMELIB_UNSET;
22185 	in.time->s = TIMELIB_UNSET;
22186 	in.time->us = TIMELIB_UNSET;
22187 	in.time->z = TIMELIB_UNSET;
22188 	in.time->dst = TIMELIB_UNSET;
22189 	in.tzdb = tzdb;
22190 	in.time->is_localtime = 0;
22191 	in.time->zone_type = 0;
22192 	in.time->relative.days = TIMELIB_UNSET;
22193 
22194 	do {
22195 		t = scan(&in, tz_get_wrapper);
22196 #ifdef DEBUG_PARSER
22197 		printf("%d\n", t);
22198 #endif
22199 	} while(t != EOI);
22200 
22201 	/* do funky checking whether the parsed time was valid time */
22202 	if (in.time->have_time && !timelib_valid_time( in.time->h, in.time->i, in.time->s)) {
22203 		add_warning(&in, TIMELIB_WARN_INVALID_TIME, "The parsed time was invalid");
22204 	}
22205 	/* do funky checking whether the parsed date was valid date */
22206 	if (in.time->have_date && !timelib_valid_date( in.time->y, in.time->m, in.time->d)) {
22207 		add_warning(&in, TIMELIB_WARN_INVALID_DATE, "The parsed date was invalid");
22208 	}
22209 
22210 	timelib_free(in.str);
22211 	if (errors) {
22212 		*errors = in.errors;
22213 	} else {
22214 		timelib_error_container_dtor(in.errors);
22215 	}
22216 	return in.time;
22217 }
22218 
22219 #define TIMELIB_CHECK_NUMBER                                           \
22220 		if (strchr("0123456789", *ptr) == NULL)                        \
22221 		{                                                              \
22222 			add_pbf_error(s, TIMELIB_ERR_UNEXPECTED_DATA, "Unexpected data found.", string, begin); \
22223 		}
22224 #define TIMELIB_CHECK_SIGNED_NUMBER                                    \
22225 		if (strchr("-0123456789", *ptr) == NULL)                       \
22226 		{                                                              \
22227 			add_pbf_error(s, TIMELIB_ERR_UNEXPECTED_DATA, "Unexpected data found.", string, begin); \
22228 		}
22229 
timelib_time_reset_fields(timelib_time * time)22230 static void timelib_time_reset_fields(timelib_time *time)
22231 {
22232 	assert(time != NULL);
22233 
22234 	time->y = 1970;
22235 	time->m = 1;
22236 	time->d = 1;
22237 	time->h = time->i = time->s = 0;
22238 	time->us = 0;
22239 	time->tz_info = NULL;
22240 }
22241 
timelib_time_reset_unset_fields(timelib_time * time)22242 static void timelib_time_reset_unset_fields(timelib_time *time)
22243 {
22244 	assert(time != NULL);
22245 
22246 	if (time->y == TIMELIB_UNSET ) time->y = 1970;
22247 	if (time->m == TIMELIB_UNSET ) time->m = 1;
22248 	if (time->d == TIMELIB_UNSET ) time->d = 1;
22249 	if (time->h == TIMELIB_UNSET ) time->h = 0;
22250 	if (time->i == TIMELIB_UNSET ) time->i = 0;
22251 	if (time->s == TIMELIB_UNSET ) time->s = 0;
22252 	if (time->us == TIMELIB_UNSET ) time->us = 0;
22253 }
22254 
22255 static const timelib_format_specifier default_format_map[] = {
22256 	{'+', TIMELIB_FORMAT_ALLOW_EXTRA_CHARACTERS},
22257 	{'#', TIMELIB_FORMAT_ANY_SEPARATOR},
22258 	{'j', TIMELIB_FORMAT_DAY_TWO_DIGIT},
22259 	{'d', TIMELIB_FORMAT_DAY_TWO_DIGIT_PADDED},
22260 	{'z', TIMELIB_FORMAT_DAY_OF_YEAR},
22261 	{'S', TIMELIB_FORMAT_DAY_SUFFIX},
22262 	{'U', TIMELIB_FORMAT_EPOCH_SECONDS},
22263 	{'\\', TIMELIB_FORMAT_ESCAPE},
22264 	{'h', TIMELIB_FORMAT_HOUR_TWO_DIGIT_12_MAX},
22265 	{'g', TIMELIB_FORMAT_HOUR_TWO_DIGIT_12_MAX_PADDED},
22266 	{'H', TIMELIB_FORMAT_HOUR_TWO_DIGIT_24_MAX},
22267 	{'G', TIMELIB_FORMAT_HOUR_TWO_DIGIT_24_MAX_PADDED},
22268 	{'a', TIMELIB_FORMAT_MERIDIAN},
22269 	{'A', TIMELIB_FORMAT_MERIDIAN},
22270 	{'u', TIMELIB_FORMAT_MICROSECOND_SIX_DIGIT},
22271 	{'v', TIMELIB_FORMAT_MILLISECOND_THREE_DIGIT},
22272 	{'i', TIMELIB_FORMAT_MINUTE_TWO_DIGIT},
22273 	{'n', TIMELIB_FORMAT_MONTH_TWO_DIGIT},
22274 	{'m', TIMELIB_FORMAT_MONTH_TWO_DIGIT_PADDED},
22275 	{'?', TIMELIB_FORMAT_RANDOM_CHAR},
22276 	{'!', TIMELIB_FORMAT_RESET_ALL},
22277 	{'|', TIMELIB_FORMAT_RESET_ALL_WHEN_NOT_SET},
22278 	{'s', TIMELIB_FORMAT_SECOND_TWO_DIGIT},
22279 	{';', TIMELIB_FORMAT_SEPARATOR},
22280 	{':', TIMELIB_FORMAT_SEPARATOR},
22281 	{'/', TIMELIB_FORMAT_SEPARATOR},
22282 	{'.', TIMELIB_FORMAT_SEPARATOR},
22283 	{',', TIMELIB_FORMAT_SEPARATOR},
22284 	{'-', TIMELIB_FORMAT_SEPARATOR},
22285 	{'(', TIMELIB_FORMAT_SEPARATOR},
22286 	{')', TIMELIB_FORMAT_SEPARATOR},
22287 	{'*', TIMELIB_FORMAT_SKIP_TO_SEPARATOR},
22288 	{'D', TIMELIB_FORMAT_TEXTUAL_DAY_3_LETTER},
22289 	{'l', TIMELIB_FORMAT_TEXTUAL_DAY_FULL},
22290 	{'M', TIMELIB_FORMAT_TEXTUAL_MONTH_3_LETTER},
22291 	{'F', TIMELIB_FORMAT_TEXTUAL_MONTH_FULL},
22292 	{'e', TIMELIB_FORMAT_TIMEZONE_OFFSET},
22293 	{'P', TIMELIB_FORMAT_TIMEZONE_OFFSET},
22294 	{'T', TIMELIB_FORMAT_TIMEZONE_OFFSET},
22295 	{'O', TIMELIB_FORMAT_TIMEZONE_OFFSET},
22296 	{' ', TIMELIB_FORMAT_WHITESPACE},
22297 	{'y', TIMELIB_FORMAT_YEAR_TWO_DIGIT},
22298 	{'Y', TIMELIB_FORMAT_YEAR_FOUR_DIGIT},
22299 	{'\0', TIMELIB_FORMAT_END}
22300 };
22301 
22302 static const timelib_format_config default_format_config = {
22303 	default_format_map,
22304 	// No prefix required by default.
22305 	'\0'
22306 };
22307 
timelib_lookup_format(char input,const timelib_format_specifier * format_map)22308 static timelib_format_specifier_code timelib_lookup_format(char input, const timelib_format_specifier* format_map)
22309 {
22310 	while (format_map && format_map->specifier != '\0') {
22311 		if (format_map->specifier == input) {
22312 			return format_map->code;
22313 		}
22314 		format_map++;
22315 	}
22316 	return TIMELIB_FORMAT_LITERAL;
22317 }
22318 
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)22319 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)
22320 {
22321 	return timelib_parse_from_format_with_map(format, string, len, errors, tzdb, tz_get_wrapper, &default_format_config);
22322 }
22323 
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)22324 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)
22325 {
22326 	char        *fptr = format;
22327 	char        *ptr = string;
22328 	char        *begin;
22329 	timelib_sll  tmp;
22330 	Scanner      in;
22331 	Scanner     *s = &in;
22332 	bool         allow_extra = false;
22333 	bool         prefix_found = false;
22334 	int          iso_year = TIMELIB_UNSET;
22335 	int          iso_week_of_year = TIMELIB_UNSET;
22336 	int          iso_day_of_week = TIMELIB_UNSET;
22337 	char         prefix_char = format_config->prefix_char;
22338 	const timelib_format_specifier *format_map = format_config->format_map;
22339 
22340 	memset(&in, 0, sizeof(in));
22341 	in.errors = timelib_malloc(sizeof(timelib_error_container));
22342 	in.errors->warning_count = 0;
22343 	in.errors->warning_messages = NULL;
22344 	in.errors->error_count = 0;
22345 	in.errors->error_messages = NULL;
22346 
22347 	in.time = timelib_time_ctor();
22348 	in.time->y = TIMELIB_UNSET;
22349 	in.time->d = TIMELIB_UNSET;
22350 	in.time->m = TIMELIB_UNSET;
22351 	in.time->h = TIMELIB_UNSET;
22352 	in.time->i = TIMELIB_UNSET;
22353 	in.time->s = TIMELIB_UNSET;
22354 	in.time->us = TIMELIB_UNSET;
22355 	in.time->z = TIMELIB_UNSET;
22356 	in.time->dst = TIMELIB_UNSET;
22357 	in.tzdb = tzdb;
22358 	in.time->is_localtime = 0;
22359 	in.time->zone_type = 0;
22360 
22361 	/* Loop over the format string */
22362 	while (*fptr && *ptr) {
22363 		begin = ptr;
22364 
22365 		if (prefix_char) {
22366 			/* There are 2 cases where the input string and format string
22367 			 * should match the next literal:
22368 			 *
22369 			 * 1. No prefix has been specified yet in the format, so expect 1:1
22370 			 *    match.
22371 			 * 2. Sequential prefix characters indicating that the second
22372 			 *    prefix is escaped. (e.g. "%%" is expecting literal "%")
22373 			 */
22374 			if ((!prefix_found && *fptr != prefix_char) ||
22375 				(prefix_found && *fptr == prefix_char)) {
22376 				if (*fptr != *ptr) {
22377 					add_pbf_error(s, TIMELIB_ERR_FORMAT_LITERAL_MISMATCH, "Format literal not found", string, begin);
22378 				}
22379 				ptr++;
22380 				fptr++;
22381 				prefix_found = false;
22382 				continue;
22383 			}
22384 
22385 			if (*fptr == prefix_char) {
22386 				fptr++;
22387 				prefix_found = true;
22388 				continue;
22389 			}
22390 
22391 			/* Fall through case is that the prefix has been found and the next
22392 			 * character is the format specifier. */
22393 			prefix_found = false;
22394 		}
22395 
22396 		switch (timelib_lookup_format(*fptr, format_map)) {
22397 			case TIMELIB_FORMAT_TEXTUAL_DAY_3_LETTER: /* three letter day */
22398 			case TIMELIB_FORMAT_TEXTUAL_DAY_FULL: /* full day */
22399 				{
22400 					const timelib_relunit* tmprel = 0;
22401 
22402 					tmprel = timelib_lookup_relunit((char **) &ptr);
22403 					if (!tmprel) {
22404 						add_pbf_error(s, TIMELIB_ERR_NO_TEXTUAL_DAY, "A textual day could not be found", string, begin);
22405 						break;
22406 					} else {
22407 						in.time->have_relative = 1;
22408 						in.time->relative.have_weekday_relative = 1;
22409 						in.time->relative.weekday = tmprel->multiplier;
22410 						in.time->relative.weekday_behavior = 1;
22411 					}
22412 				}
22413 				break;
22414 			case TIMELIB_FORMAT_DAY_TWO_DIGIT: /* two digit day, without leading zero */
22415 			case TIMELIB_FORMAT_DAY_TWO_DIGIT_PADDED: /* two digit day, with leading zero */
22416 				TIMELIB_CHECK_NUMBER;
22417 				if ((s->time->d = timelib_get_nr((char **) &ptr, 2)) == TIMELIB_UNSET) {
22418 					add_pbf_error(s, TIMELIB_ERR_NO_TWO_DIGIT_DAY, "A two digit day could not be found", string, begin);
22419 				}
22420 				break;
22421 			case TIMELIB_FORMAT_DAY_SUFFIX: /* day suffix, ignored, nor checked */
22422 				timelib_skip_day_suffix((char **) &ptr);
22423 				break;
22424 			case TIMELIB_FORMAT_DAY_OF_YEAR: /* day of year - resets month (0 based) - also initializes everything else to !TIMELIB_UNSET */
22425 				TIMELIB_CHECK_NUMBER;
22426 				if ((tmp = timelib_get_nr((char **) &ptr, 3)) == TIMELIB_UNSET) {
22427 					add_pbf_error(s, TIMELIB_ERR_NO_THREE_DIGIT_DAY_OF_YEAR, "A three digit day-of-year could not be found", string, begin);
22428 				} else {
22429 					s->time->m = 1;
22430 					s->time->d = tmp + 1;
22431 					timelib_do_normalize(s->time);
22432 				}
22433 				break;
22434 
22435 			case TIMELIB_FORMAT_MONTH_TWO_DIGIT: /* two digit month, without leading zero */
22436 			case TIMELIB_FORMAT_MONTH_TWO_DIGIT_PADDED: /* two digit month, with leading zero */
22437 				TIMELIB_CHECK_NUMBER;
22438 				if ((s->time->m = timelib_get_nr((char **) &ptr, 2)) == TIMELIB_UNSET) {
22439 					add_pbf_error(s, TIMELIB_ERR_NO_TWO_DIGIT_MONTH, "A two digit month could not be found", string, begin);
22440 				}
22441 				break;
22442 			case TIMELIB_FORMAT_TEXTUAL_MONTH_3_LETTER: /* three letter month */
22443 			case TIMELIB_FORMAT_TEXTUAL_MONTH_FULL: /* full month */
22444 				tmp = timelib_lookup_month((char **) &ptr);
22445 				if (!tmp) {
22446 					add_pbf_error(s, TIMELIB_ERR_NO_TEXTUAL_MONTH, "A textual month could not be found", string, begin);
22447 				} else {
22448 					s->time->m = tmp;
22449 				}
22450 				break;
22451 			case TIMELIB_FORMAT_YEAR_TWO_DIGIT: /* two digit year */
22452 				{
22453 					int length = 0;
22454 					TIMELIB_CHECK_NUMBER;
22455 					if ((s->time->y = timelib_get_nr_ex((char **) &ptr, 2, &length)) == TIMELIB_UNSET) {
22456 						add_pbf_error(s, TIMELIB_ERR_NO_TWO_DIGIT_YEAR, "A two digit year could not be found", string, begin);
22457 					}
22458 					TIMELIB_PROCESS_YEAR(s->time->y, length);
22459 				}
22460 				break;
22461 			case TIMELIB_FORMAT_YEAR_FOUR_DIGIT: /* four digit year */
22462 				TIMELIB_CHECK_NUMBER;
22463 				if ((s->time->y = timelib_get_nr((char **) &ptr, 4)) == TIMELIB_UNSET) {
22464 					add_pbf_error(s, TIMELIB_ERR_NO_FOUR_DIGIT_YEAR, "A four digit year could not be found", string, begin);
22465 				}
22466 				break;
22467 			case TIMELIB_FORMAT_HOUR_TWO_DIGIT_12_MAX: /* two digit hour, without leading zero */
22468 			case TIMELIB_FORMAT_HOUR_TWO_DIGIT_12_MAX_PADDED: /* two digit hour, with leading zero */
22469 				TIMELIB_CHECK_NUMBER;
22470 				if ((s->time->h = timelib_get_nr((char **) &ptr, 2)) == TIMELIB_UNSET) {
22471 					add_pbf_error(s, TIMELIB_ERR_NO_TWO_DIGIT_HOUR, "A two digit hour could not be found", string, begin);
22472 				}
22473 				if (s->time->h > 12) {
22474 					add_pbf_error(s, TIMELIB_ERR_HOUR_LARGER_THAN_12, "Hour can not be higher than 12", string, begin);
22475 				}
22476 				break;
22477 			case TIMELIB_FORMAT_HOUR_TWO_DIGIT_24_MAX_PADDED: /* two digit hour, with leading zero */
22478 			case TIMELIB_FORMAT_HOUR_TWO_DIGIT_24_MAX: /* two digit hour, without leading zero */
22479 				TIMELIB_CHECK_NUMBER;
22480 				if ((s->time->h = timelib_get_nr((char **) &ptr, 2)) == TIMELIB_UNSET) {
22481 					add_pbf_error(s, TIMELIB_ERR_NO_TWO_DIGIT_HOUR, "A two digit hour could not be found", string, begin);
22482 				}
22483 				break;
22484 			case TIMELIB_FORMAT_MERIDIAN: /* am/pm/a.m./p.m. AM/PM/A.M./P.M. */
22485 				if (s->time->h == TIMELIB_UNSET) {
22486 					add_pbf_error(s, TIMELIB_ERR_MERIDIAN_BEFORE_HOUR, "Meridian can only come after an hour has been found", string, begin);
22487 				} else if ((tmp = timelib_meridian_with_check((char **) &ptr, s->time->h)) == TIMELIB_UNSET) {
22488 					add_pbf_error(s, TIMELIB_ERR_NO_MERIDIAN, "A meridian could not be found", string, begin);
22489 				} else {
22490 					s->time->h += tmp;
22491 				}
22492 				break;
22493 			case TIMELIB_FORMAT_MINUTE_TWO_DIGIT: /* two digit minute, with leading zero */
22494 				{
22495 					int length;
22496 					timelib_sll min;
22497 
22498 					TIMELIB_CHECK_NUMBER;
22499 					min = timelib_get_nr_ex((char **) &ptr, 2, &length);
22500 					if (min == TIMELIB_UNSET || length != 2) {
22501 						add_pbf_error(s, TIMELIB_ERR_NO_TWO_DIGIT_MINUTE, "A two digit minute could not be found", string, begin);
22502 					} else {
22503 						s->time->i = min;
22504 					}
22505 				}
22506 				break;
22507 			case TIMELIB_FORMAT_SECOND_TWO_DIGIT: /* two digit second, with leading zero */
22508 				{
22509 					int length;
22510 					timelib_sll sec;
22511 
22512 					TIMELIB_CHECK_NUMBER;
22513 					sec = timelib_get_nr_ex((char **) &ptr, 2, &length);
22514 					if (sec == TIMELIB_UNSET || length != 2) {
22515 						add_pbf_error(s, TIMELIB_ERR_NO_TWO_DIGIT_SECOND, "A two digit second could not be found", string, begin);
22516 					} else {
22517 						s->time->s = sec;
22518 					}
22519 				}
22520 				break;
22521 			case TIMELIB_FORMAT_MICROSECOND_SIX_DIGIT: /* up to six digit microsecond */
22522 				{
22523 					double f;
22524 					char *tptr;
22525 
22526 					TIMELIB_CHECK_NUMBER;
22527 					tptr = ptr;
22528 					if ((f = timelib_get_nr((char **) &ptr, 6)) == TIMELIB_UNSET || (ptr - tptr < 1)) {
22529 						add_pbf_error(s, TIMELIB_ERR_NO_SIX_DIGIT_MICROSECOND, "A six digit microsecond could not be found", string, begin);
22530 					} else {
22531 						s->time->us = (f * pow(10, 6 - (ptr - tptr)));
22532 					}
22533 				}
22534 				break;
22535 			case TIMELIB_FORMAT_MILLISECOND_THREE_DIGIT: /* up to three digit millisecond */
22536 				{
22537 					double f;
22538 					char *tptr;
22539 
22540 					TIMELIB_CHECK_NUMBER;
22541 					tptr = ptr;
22542 					if ((f = timelib_get_nr((char **) &ptr, 3)) == TIMELIB_UNSET || (ptr - tptr < 1)) {
22543 						add_pbf_error(s, TIMELIB_ERR_NO_THREE_DIGIT_MILLISECOND, "A three digit millisecond could not be found", string, begin);
22544 					} else {
22545 						s->time->us = (f * pow(10, 3 - (ptr - tptr)) * 1000);
22546 					}
22547 				}
22548 				break;
22549 			case TIMELIB_FORMAT_WHITESPACE: /* any sort of whitespace (' ' and \t) */
22550 				timelib_eat_spaces((char **) &ptr);
22551 				break;
22552 			case TIMELIB_FORMAT_EPOCH_SECONDS: /* epoch seconds */
22553 				TIMELIB_CHECK_SIGNED_NUMBER;
22554 				TIMELIB_HAVE_RELATIVE();
22555 				tmp = timelib_get_unsigned_nr((char **) &ptr, 24);
22556 				s->time->y = 1970;
22557 				s->time->m = 1;
22558 				s->time->d = 1;
22559 				s->time->h = s->time->i = s->time->s = 0;
22560 				s->time->relative.s += tmp;
22561 				s->time->is_localtime = 1;
22562 				s->time->zone_type = TIMELIB_ZONETYPE_OFFSET;
22563 				s->time->z = 0;
22564 				s->time->dst = 0;
22565 				break;
22566 			case TIMELIB_FORMAT_ANY_SEPARATOR: /* separation symbol */
22567 				if (timelib_lookup_format(*ptr, format_map) == TIMELIB_FORMAT_SEPARATOR) {
22568 					++ptr;
22569 				} else {
22570 					add_pbf_error(s, TIMELIB_ERR_NO_SEP_SYMBOL, "The separation symbol ([;:/.,-]) could not be found", string, begin);
22571 				}
22572 				break;
22573 
22574 			case TIMELIB_FORMAT_SEPARATOR:
22575 				if (*ptr == *fptr) {
22576 					++ptr;
22577 				} else {
22578 					add_pbf_error(s, TIMELIB_ERR_NO_SEP_SYMBOL, "The separation symbol could not be found", string, begin);
22579 				}
22580 				break;
22581 
22582 			case TIMELIB_FORMAT_RESET_ALL: /* reset all fields to default */
22583 				timelib_time_reset_fields(s->time);
22584 				break; /* break intentionally not missing */
22585 
22586 			case TIMELIB_FORMAT_RESET_ALL_WHEN_NOT_SET: /* reset all fields to default when not set */
22587 				timelib_time_reset_unset_fields(s->time);
22588 				break; /* break intentionally not missing */
22589 
22590 			case TIMELIB_FORMAT_RANDOM_CHAR: /* random char */
22591 				++ptr;
22592 				break;
22593 
22594 			case TIMELIB_FORMAT_ESCAPE: /* escaped char */
22595 				if(!fptr[1]) {
22596 					add_pbf_error(s, TIMELIB_ERR_EXPECTED_ESCAPE_CHAR, "Escaped character expected", string, begin);
22597 					break;
22598 				}
22599 				fptr++;
22600 				if (*ptr == *fptr) {
22601 					++ptr;
22602 				} else {
22603 					add_pbf_error(s, TIMELIB_ERR_NO_ESCAPED_CHAR, "The escaped character could not be found", string, begin);
22604 				}
22605 				break;
22606 
22607 			case TIMELIB_FORMAT_SKIP_TO_SEPARATOR: /* random chars until a separator or number ([ \t.,:;/-0123456789]) */
22608 				timelib_eat_until_separator((char **) &ptr);
22609 				break;
22610 
22611 			case TIMELIB_FORMAT_ALLOW_EXTRA_CHARACTERS: /* allow extra chars in the format */
22612 				allow_extra = true;
22613 				break;
22614 			case TIMELIB_FORMAT_YEAR_ISO:
22615 				if ((iso_year = timelib_get_nr((char **) &ptr, 4)) == TIMELIB_UNSET) {
22616 					add_pbf_error(s, TIMELIB_ERR_NO_FOUR_DIGIT_YEAR_ISO, "A four digit ISO year could not be found", string, begin);
22617 				}
22618 				break;
22619 			case TIMELIB_FORMAT_WEEK_OF_YEAR_ISO:
22620 				if ((iso_week_of_year = timelib_get_nr((char **) &ptr, 2)) == TIMELIB_UNSET) {
22621 					add_pbf_error(s, TIMELIB_ERR_NO_TWO_DIGIT_WEEK, "A two digit ISO week could not be found", string, begin);
22622 				}
22623 				/* Range is 1 - 53  for ISO week of year */
22624 				if (iso_week_of_year < 1 || iso_week_of_year > 53) {
22625 					add_pbf_error(s, TIMELIB_ERR_INVALID_WEEK, "ISO Week must be between 1 and 53", string, begin);
22626 				}
22627 				break;
22628 			case TIMELIB_FORMAT_DAY_OF_WEEK_ISO:
22629 				if ((iso_day_of_week = timelib_get_nr((char **) &ptr, 1)) == TIMELIB_UNSET) {
22630 					add_pbf_error(s, TIMELIB_ERR_NO_DAY_OF_WEEK, "A single digit day of week could not be found", string, begin);
22631 				}
22632 				if (iso_day_of_week < 1 || iso_day_of_week > 7) {
22633 					add_pbf_error(s, TIMELIB_ERR_INVALID_DAY_OF_WEEK, "Day of week must be between 1 and 7", string, begin);
22634 				}
22635 				break;
22636 			case TIMELIB_FORMAT_TIMEZONE_OFFSET: /* timezone */
22637 				{
22638 					int tz_not_found;
22639 
22640 					s->time->z = timelib_parse_zone((char **) &ptr, &s->time->dst, s->time, &tz_not_found, s->tzdb, tz_get_wrapper);
22641 					if (tz_not_found) {
22642 						add_pbf_error(s, TIMELIB_ERR_TZID_NOT_FOUND, "The timezone could not be found in the database", string, begin);
22643 					}
22644 				}
22645 				break;
22646 			case TIMELIB_FORMAT_TIMEZONE_OFFSET_MINUTES: /* timezone format +/-mmm */
22647 				s->time->z = timelib_parse_tz_minutes((char **) &ptr, s->time);
22648 				if (s->time->z == TIMELIB_UNSET) {
22649 					add_pbf_error(s, TIMELIB_ERR_INVALID_TZ_OFFSET, "Invalid timezone offset in minutes", string, begin);
22650 				}
22651 				break;
22652 			case TIMELIB_FORMAT_LITERAL:
22653 			default:
22654 				if (*fptr != *ptr) {
22655 					add_pbf_error(s, TIMELIB_ERR_WRONG_FORMAT_SEP, "The format separator does not match", string, begin);
22656 				}
22657 				ptr++;
22658 		}
22659 		fptr++;
22660 	}
22661 	if (*ptr) {
22662 		if (allow_extra) {
22663 			add_pbf_warning(s, TIMELIB_WARN_TRAILING_DATA, "Trailing data", string, ptr);
22664 		} else {
22665 			add_pbf_error(s, TIMELIB_ERR_TRAILING_DATA, "Trailing data", string, ptr);
22666 		}
22667 	}
22668 
22669 	if (*fptr) {
22670 		/* Trailing reset specifiers are valid. */
22671 		int done = 0;
22672 		while (*fptr && !done) {
22673 			switch (timelib_lookup_format(*fptr, format_map)) {
22674 				case TIMELIB_FORMAT_RESET_ALL: /* reset all fields to default */
22675 					timelib_time_reset_fields(s->time);
22676 					break;
22677 
22678 				case TIMELIB_FORMAT_RESET_ALL_WHEN_NOT_SET: /* reset all fields to default when not set */
22679 					timelib_time_reset_unset_fields(s->time);
22680 					break;
22681 				case TIMELIB_FORMAT_ALLOW_EXTRA_CHARACTERS:
22682 					break;
22683 
22684 				default:
22685 					add_pbf_error(s, TIMELIB_ERR_DATA_MISSING, "Data missing", string, ptr);
22686 					done = 1;
22687 			}
22688 			fptr++;
22689 		}
22690 	}
22691 
22692 	/* clean up a bit */
22693 	if (s->time->h != TIMELIB_UNSET || s->time->i != TIMELIB_UNSET || s->time->s != TIMELIB_UNSET || s->time->us != TIMELIB_UNSET) {
22694 		if (s->time->h == TIMELIB_UNSET ) {
22695 			s->time->h = 0;
22696 		}
22697 		if (s->time->i == TIMELIB_UNSET ) {
22698 			s->time->i = 0;
22699 		}
22700 		if (s->time->s == TIMELIB_UNSET ) {
22701 			s->time->s = 0;
22702 		}
22703 		if (s->time->us == TIMELIB_UNSET ) {
22704 			s->time->us = 0;
22705 		}
22706 	}
22707 
22708 	/* Check for mixing of ISO dates with natural dates. */
22709 	if (s->time->y != TIMELIB_UNSET && (iso_week_of_year != TIMELIB_UNSET || iso_year != TIMELIB_UNSET || iso_day_of_week != TIMELIB_UNSET)) {
22710 		add_pbf_error(s, TIMELIB_ERR_MIX_ISO_WITH_NATURAL, "Mixing of ISO dates with natural dates is not allowed", string, ptr);
22711 	}
22712 	if (iso_year != TIMELIB_UNSET && (s->time->y != TIMELIB_UNSET || s->time->m != TIMELIB_UNSET || s->time->d != TIMELIB_UNSET)) {
22713 		add_pbf_error(s, TIMELIB_ERR_MIX_ISO_WITH_NATURAL, "Mixing of ISO dates with natural dates is not allowed", string, ptr);
22714 	}
22715 
22716 	/* Convert ISO values */
22717 	if (iso_year != TIMELIB_UNSET) {
22718 		/* Default week of year and day of week to 1. */
22719 		if (iso_week_of_year == TIMELIB_UNSET) {
22720 			iso_week_of_year = 1;
22721 		}
22722 		if (iso_day_of_week == TIMELIB_UNSET) {
22723 			iso_day_of_week = 1;
22724 		}
22725 		timelib_date_from_isodate(iso_year, iso_week_of_year, iso_day_of_week, &s->time->y, &s->time->m, &s->time->d);
22726 	} else if (iso_week_of_year != TIMELIB_UNSET || iso_day_of_week != TIMELIB_UNSET) {
22727 		add_pbf_warning(s, TIMELIB_WARN_INVALID_DATE, "The parsed date was invalid", string, ptr);
22728 	}
22729 
22730 	/* do funky checking whether the parsed time was valid time */
22731 	if (s->time->h != TIMELIB_UNSET && s->time->i != TIMELIB_UNSET &&
22732 		s->time->s != TIMELIB_UNSET &&
22733 		!timelib_valid_time( s->time->h, s->time->i, s->time->s)) {
22734 		add_pbf_warning(s, TIMELIB_WARN_INVALID_TIME, "The parsed time was invalid", string, ptr);
22735 	}
22736 	/* do funky checking whether the parsed date was valid date */
22737 	if (s->time->y != TIMELIB_UNSET && s->time->m != TIMELIB_UNSET &&
22738 		s->time->d != TIMELIB_UNSET &&
22739 		!timelib_valid_date( s->time->y, s->time->m, s->time->d)) {
22740 		add_pbf_warning(s, TIMELIB_WARN_INVALID_DATE, "The parsed date was invalid", string, ptr);
22741 	}
22742 
22743 	if (errors) {
22744 		*errors = in.errors;
22745 	} else {
22746 		timelib_error_container_dtor(in.errors);
22747 	}
22748 	return in.time;
22749 }
22750 
timelib_fill_holes(timelib_time * parsed,timelib_time * now,int options)22751 void timelib_fill_holes(timelib_time *parsed, timelib_time *now, int options)
22752 {
22753 	if (!(options & TIMELIB_OVERRIDE_TIME) && parsed->have_date && !parsed->have_time) {
22754 		parsed->h = 0;
22755 		parsed->i = 0;
22756 		parsed->s = 0;
22757 		parsed->us = 0;
22758 	}
22759 	if (
22760 		parsed->y != TIMELIB_UNSET || parsed->m != TIMELIB_UNSET || parsed->d != TIMELIB_UNSET ||
22761 		parsed->h != TIMELIB_UNSET || parsed->i != TIMELIB_UNSET || parsed->s != TIMELIB_UNSET
22762 	) {
22763 		if (parsed->us == TIMELIB_UNSET) parsed->us = 0;
22764 	} else {
22765 		if (parsed->us == TIMELIB_UNSET) parsed->us = now->us != TIMELIB_UNSET ? now->us : 0;
22766 	}
22767 	if (parsed->y == TIMELIB_UNSET) parsed->y = now->y != TIMELIB_UNSET ? now->y : 0;
22768 	if (parsed->m == TIMELIB_UNSET) parsed->m = now->m != TIMELIB_UNSET ? now->m : 0;
22769 	if (parsed->d == TIMELIB_UNSET) parsed->d = now->d != TIMELIB_UNSET ? now->d : 0;
22770 	if (parsed->h == TIMELIB_UNSET) parsed->h = now->h != TIMELIB_UNSET ? now->h : 0;
22771 	if (parsed->i == TIMELIB_UNSET) parsed->i = now->i != TIMELIB_UNSET ? now->i : 0;
22772 	if (parsed->s == TIMELIB_UNSET) parsed->s = now->s != TIMELIB_UNSET ? now->s : 0;
22773 	if (parsed->z == TIMELIB_UNSET) parsed->z = now->z != TIMELIB_UNSET ? now->z : 0;
22774 	if (parsed->dst == TIMELIB_UNSET) parsed->dst = now->dst != TIMELIB_UNSET ? now->dst : 0;
22775 
22776 	if (!parsed->tz_abbr) {
22777 		parsed->tz_abbr = now->tz_abbr ? timelib_strdup(now->tz_abbr) : NULL;
22778 	}
22779 	if (!parsed->tz_info) {
22780 		parsed->tz_info = now->tz_info ? (!(options & TIMELIB_NO_CLONE) ? timelib_tzinfo_clone(now->tz_info) : now->tz_info) : NULL;
22781 	}
22782 	if (parsed->zone_type == 0 && now->zone_type != 0) {
22783 		parsed->zone_type = now->zone_type;
22784 /*		parsed->tz_abbr = now->tz_abbr ? timelib_strdup(now->tz_abbr) : NULL;
22785 		parsed->tz_info = now->tz_info ? timelib_tzinfo_clone(now->tz_info) : NULL;
22786 */		parsed->is_localtime = 1;
22787 	}
22788 /*	timelib_dump_date(parsed, 2);
22789 	timelib_dump_date(now, 2);
22790 */
22791 }
22792 
timelib_timezone_id_from_abbr(const char * abbr,timelib_long gmtoffset,int isdst)22793 char *timelib_timezone_id_from_abbr(const char *abbr, timelib_long gmtoffset, int isdst)
22794 {
22795 	const timelib_tz_lookup_table *tp;
22796 
22797 	tp = abbr_search(abbr, gmtoffset, isdst);
22798 	if (tp) {
22799 		return (tp->full_tz_name);
22800 	} else {
22801 		return NULL;
22802 	}
22803 }
22804 
timelib_timezone_abbreviations_list(void)22805 const timelib_tz_lookup_table *timelib_timezone_abbreviations_list(void)
22806 {
22807 	return timelib_timezone_lookup;
22808 }
22809 
22810 #ifdef DEBUG_PARSER_STUB
main(void)22811 int main(void)
22812 {
22813 	timelib_time time = timelib_strtotime("May 12");
22814 
22815 	printf ("%04d-%02d-%02d %02d:%02d:%02d.%-5d %+04d %1d",
22816 		time.y, time.m, time.d, time.h, time.i, time.s, time.f, time.z, time.dst);
22817 	if (time.have_relative) {
22818 		printf ("%3dY %3dM %3dD / %3dH %3dM %3dS",
22819 			time.relative.y, time.relative.m, time.relative.d, time.relative.h, time.relative.i, time.relative.s);
22820 	}
22821 	if (time.have_weekday_relative) {
22822 		printf (" / %d", time.relative.weekday);
22823 	}
22824 	if (time.have_weeknr_day) {
22825 		printf(" / %dW%d", time.relative.weeknr_day.weeknr, time.relative.weeknr_day.dayofweek);
22826 	}
22827 	return 0;
22828 }
22829 #endif
22830 
22831 /*
22832  * vim: syntax=c
22833  */
22834