PHP  
 PHP: Test and Code Coverage Analysis
downloads | QA | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | my php.net 
 

LCOV - code coverage report
Current view: top level - lcov_data/ext/date/lib - parse_date.c (source / functions) Hit Total Coverage
Test: PHP Code Coverage Lines: 3537 14749 24.0 %
Date: 2014-07-15 Functions: 0 0 -
Legend: Lines: hit not hit

          Line data    Source code
       1             : /* Generated by re2c 0.13.5 on Tue May 13 16:52:44 2014 */
       2             : #line 1 "ext/date/lib/parse_date.re"
       3             : /*
       4             :    +----------------------------------------------------------------------+
       5             :    | PHP Version 5                                                        |
       6             :    +----------------------------------------------------------------------+
       7             :    | Copyright (c) 1997-2013 The PHP Group                                |
       8             :    +----------------------------------------------------------------------+
       9             :    | This source file is subject to version 3.01 of the PHP license,      |
      10             :    | that is bundled with this package in the file LICENSE, and is        |
      11             :    | available through the world-wide-web at the following url:           |
      12             :    | http://www.php.net/license/3_01.txt                                  |
      13             :    | If you did not receive a copy of the PHP license and are unable to   |
      14             :    | obtain it through the world-wide-web, please send a note to          |
      15             :    | license@php.net so we can mail you a copy immediately.               |
      16             :    +----------------------------------------------------------------------+
      17             :    | Authors: Derick Rethans <derick@derickrethans.nl>                    |
      18             :    +----------------------------------------------------------------------+
      19             :  */
      20             : 
      21             : /* $Id$ */
      22             : 
      23             : #include "timelib.h"
      24             : 
      25             : #include <stdio.h>
      26             : #include <ctype.h>
      27             : #include <math.h>
      28             : #include <assert.h>
      29             : 
      30             : #ifdef HAVE_STDLIB_H
      31             : #include <stdlib.h>
      32             : #endif
      33             : #ifdef HAVE_STRING_H
      34             : #include <string.h>
      35             : #else
      36             : #include <strings.h>
      37             : #endif
      38             : 
      39             : #if defined(_MSC_VER)
      40             : # define strtoll(s, f, b) _atoi64(s)
      41             : #elif !defined(HAVE_STRTOLL)
      42             : # if defined(HAVE_ATOLL)
      43             : #  define strtoll(s, f, b) atoll(s)
      44             : # else
      45             : #  define strtoll(s, f, b) strtol(s, f, b)
      46             : # endif
      47             : #endif
      48             : 
      49             : #define TIMELIB_UNSET   -99999
      50             : 
      51             : #define TIMELIB_SECOND  1
      52             : #define TIMELIB_MINUTE  2
      53             : #define TIMELIB_HOUR    3
      54             : #define TIMELIB_DAY     4
      55             : #define TIMELIB_MONTH   5
      56             : #define TIMELIB_YEAR    6
      57             : #define TIMELIB_WEEKDAY 7
      58             : #define TIMELIB_SPECIAL 8
      59             : 
      60             : #define EOI      257
      61             : #define TIME     258
      62             : #define DATE     259
      63             : 
      64             : #define TIMELIB_XMLRPC_SOAP    260
      65             : #define TIMELIB_TIME12         261
      66             : #define TIMELIB_TIME24         262
      67             : #define TIMELIB_GNU_NOCOLON    263
      68             : #define TIMELIB_GNU_NOCOLON_TZ 264
      69             : #define TIMELIB_ISO_NOCOLON    265
      70             : 
      71             : #define TIMELIB_AMERICAN       266
      72             : #define TIMELIB_ISO_DATE       267
      73             : #define TIMELIB_DATE_FULL      268
      74             : #define TIMELIB_DATE_TEXT      269
      75             : #define TIMELIB_DATE_NOCOLON   270
      76             : #define TIMELIB_PG_YEARDAY     271
      77             : #define TIMELIB_PG_TEXT        272
      78             : #define TIMELIB_PG_REVERSE     273
      79             : #define TIMELIB_CLF            274
      80             : #define TIMELIB_DATE_NO_DAY    275
      81             : #define TIMELIB_SHORTDATE_WITH_TIME 276
      82             : #define TIMELIB_DATE_FULL_POINTED 277
      83             : #define TIMELIB_TIME24_WITH_ZONE 278
      84             : #define TIMELIB_ISO_WEEK       279
      85             : #define TIMELIB_LF_DAY_OF_MONTH 280
      86             : #define TIMELIB_WEEK_DAY_OF_MONTH 281
      87             : 
      88             : #define TIMELIB_TIMEZONE       300
      89             : #define TIMELIB_AGO            301
      90             : 
      91             : #define TIMELIB_RELATIVE       310
      92             : 
      93             : #define TIMELIB_ERROR          999
      94             : 
      95             : /* Some compilers like AIX, defines uchar in sys/types.h */
      96             : #undef uchar
      97             : typedef unsigned char uchar;
      98             : 
      99             : #define   BSIZE    8192
     100             : 
     101             : #define   YYCTYPE      uchar
     102             : #define   YYCURSOR     cursor
     103             : #define   YYLIMIT      s->lim
     104             : #define   YYMARKER     s->ptr
     105             : #define   YYFILL(n)    return EOI;
     106             : 
     107             : #define   RET(i)       {s->cur = cursor; return i;}
     108             : 
     109             : #define timelib_string_free free
     110             : 
     111             : #define TIMELIB_HAVE_TIME() { if (s->time->have_time) { add_error(s, "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->f = 0; } }
     112             : #define TIMELIB_UNHAVE_TIME() { s->time->have_time = 0; s->time->h = 0; s->time->i = 0; s->time->s = 0; s->time->f = 0; }
     113             : #define TIMELIB_HAVE_DATE() { if (s->time->have_date) { add_error(s, "Double date specification"); timelib_string_free(str); return TIMELIB_ERROR; } else { s->time->have_date = 1; } }
     114             : #define TIMELIB_UNHAVE_DATE() { s->time->have_date = 0; s->time->d = 0; s->time->m = 0; s->time->y = 0; }
     115             : #define TIMELIB_HAVE_RELATIVE() { s->time->have_relative = 1; }
     116             : #define TIMELIB_HAVE_WEEKDAY_RELATIVE() { s->time->have_relative = 1; s->time->relative.have_weekday_relative = 1; }
     117             : #define TIMELIB_HAVE_SPECIAL_RELATIVE() { s->time->have_relative = 1; s->time->relative.have_special_relative = 1; }
     118             : #define TIMELIB_HAVE_TZ() { s->cur = cursor; if (s->time->have_zone) { s->time->have_zone > 1 ? add_error(s, "Double timezone specification") : add_warning(s, "Double timezone specification"); timelib_string_free(str); s->time->have_zone++; return TIMELIB_ERROR; } else { s->time->have_zone++; } }
     119             : 
     120             : #define TIMELIB_INIT  s->cur = cursor; str = timelib_string(s); ptr = str
     121             : #define TIMELIB_DEINIT timelib_string_free(str)
     122             : #define TIMELIB_ADJUST_RELATIVE_WEEKDAY() if (in->time.have_weekday_relative && (in.rel.d > 0)) { in.rel.d -= 7; }
     123             : 
     124             : #define TIMELIB_PROCESS_YEAR(x, l) { \
     125             :         if (((x) == TIMELIB_UNSET) || ((l) >= 4)) { \
     126             :         /*      (x) = 0; */          \
     127             :         } else if ((x) < 100) {  \
     128             :                 if ((x) < 70) {      \
     129             :                         (x) += 2000;     \
     130             :                 } else {             \
     131             :                         (x) += 1900;     \
     132             :                 }                    \
     133             :         }                        \
     134             : }
     135             : 
     136             : #ifdef DEBUG_PARSER
     137             : #define DEBUG_OUTPUT(s) printf("%s\n", s);
     138             : #define YYDEBUG(s,c) { if (s != -1) { printf("state: %d ", s); printf("[%c]\n", c); } }
     139             : #else
     140             : #define DEBUG_OUTPUT(s)
     141             : #define YYDEBUG(s,c)
     142             : #endif
     143             : 
     144             : #include "timelib_structs.h"
     145             : 
     146             : typedef struct timelib_elems {
     147             :         unsigned int   c; /* Number of elements */
     148             :         char         **v; /* Values */
     149             : } timelib_elems;
     150             : 
     151             : typedef struct Scanner {
     152             :         int           fd;
     153             :         uchar        *lim, *str, *ptr, *cur, *tok, *pos;
     154             :         unsigned int  line, len;
     155             :         struct timelib_error_container *errors;
     156             : 
     157             :         struct timelib_time *time;
     158             :         const timelib_tzdb  *tzdb;
     159             : } Scanner;
     160             : 
     161             : typedef struct _timelib_lookup_table {
     162             :     const char *name;
     163             :     int         type;
     164             :     int         value;
     165             : } timelib_lookup_table;
     166             : 
     167             : typedef struct _timelib_relunit {
     168             :         const char *name;
     169             :         int         unit;
     170             :         int         multiplier;
     171             : } timelib_relunit;
     172             : 
     173             : #define HOUR(a) (int)(a * 60)
     174             : 
     175             : /* The timezone table. */
     176             : const static timelib_tz_lookup_table timelib_timezone_lookup[] = {
     177             : #include "timezonemap.h"
     178             :         { NULL, 0, 0, NULL },
     179             : };
     180             : 
     181             : const static timelib_tz_lookup_table timelib_timezone_fallbackmap[] = {
     182             : #include "fallbackmap.h"
     183             :         { NULL, 0, 0, NULL },
     184             : };
     185             : 
     186             : const static timelib_tz_lookup_table timelib_timezone_utc[] = {
     187             :         { "utc", 0, 0, "UTC" },
     188             : };
     189             : 
     190             : static timelib_relunit const timelib_relunit_lookup[] = {
     191             :         { "sec",         TIMELIB_SECOND,  1 },
     192             :         { "secs",        TIMELIB_SECOND,  1 },
     193             :         { "second",      TIMELIB_SECOND,  1 },
     194             :         { "seconds",     TIMELIB_SECOND,  1 },
     195             :         { "min",         TIMELIB_MINUTE,  1 },
     196             :         { "mins",        TIMELIB_MINUTE,  1 },
     197             :         { "minute",      TIMELIB_MINUTE,  1 },
     198             :         { "minutes",     TIMELIB_MINUTE,  1 },
     199             :         { "hour",        TIMELIB_HOUR,    1 },
     200             :         { "hours",       TIMELIB_HOUR,    1 },
     201             :         { "day",         TIMELIB_DAY,     1 },
     202             :         { "days",        TIMELIB_DAY,     1 },
     203             :         { "week",        TIMELIB_DAY,     7 },
     204             :         { "weeks",       TIMELIB_DAY,     7 },
     205             :         { "fortnight",   TIMELIB_DAY,    14 },
     206             :         { "fortnights",  TIMELIB_DAY,    14 },
     207             :         { "forthnight",  TIMELIB_DAY,    14 },
     208             :         { "forthnights", TIMELIB_DAY,    14 },
     209             :         { "month",       TIMELIB_MONTH,   1 },
     210             :         { "months",      TIMELIB_MONTH,   1 },
     211             :         { "year",        TIMELIB_YEAR,    1 },
     212             :         { "years",       TIMELIB_YEAR,    1 },
     213             : 
     214             :         { "monday",      TIMELIB_WEEKDAY, 1 },
     215             :         { "mon",         TIMELIB_WEEKDAY, 1 },
     216             :         { "tuesday",     TIMELIB_WEEKDAY, 2 },
     217             :         { "tue",         TIMELIB_WEEKDAY, 2 },
     218             :         { "wednesday",   TIMELIB_WEEKDAY, 3 },
     219             :         { "wed",         TIMELIB_WEEKDAY, 3 },
     220             :         { "thursday",    TIMELIB_WEEKDAY, 4 },
     221             :         { "thu",         TIMELIB_WEEKDAY, 4 },
     222             :         { "friday",      TIMELIB_WEEKDAY, 5 },
     223             :         { "fri",         TIMELIB_WEEKDAY, 5 },
     224             :         { "saturday",    TIMELIB_WEEKDAY, 6 },
     225             :         { "sat",         TIMELIB_WEEKDAY, 6 },
     226             :         { "sunday",      TIMELIB_WEEKDAY, 0 },
     227             :         { "sun",         TIMELIB_WEEKDAY, 0 },
     228             : 
     229             :         { "weekday",     TIMELIB_SPECIAL, TIMELIB_SPECIAL_WEEKDAY },
     230             :         { "weekdays",    TIMELIB_SPECIAL, TIMELIB_SPECIAL_WEEKDAY },
     231             :         { NULL,          0,          0 }
     232             : };
     233             : 
     234             : /* The relative text table. */
     235             : static timelib_lookup_table const timelib_reltext_lookup[] = {
     236             :         { "first",    0,  1 },
     237             :         { "next",     0,  1 },
     238             :         { "second",   0,  2 },
     239             :         { "third",    0,  3 },
     240             :         { "fourth",   0,  4 },
     241             :         { "fifth",    0,  5 },
     242             :         { "sixth",    0,  6 },
     243             :         { "seventh",  0,  7 },
     244             :         { "eight",    0,  8 },
     245             :         { "eighth",   0,  8 },
     246             :         { "ninth",    0,  9 },
     247             :         { "tenth",    0, 10 },
     248             :         { "eleventh", 0, 11 },
     249             :         { "twelfth",  0, 12 },
     250             :         { "last",     0, -1 },
     251             :         { "previous", 0, -1 },
     252             :         { "this",     1,  0 },
     253             :         { NULL,       1,  0 }
     254             : };
     255             : 
     256             : /* The month table. */
     257             : static timelib_lookup_table const timelib_month_lookup[] = {
     258             :         { "jan",  0,  1 },
     259             :         { "feb",  0,  2 },
     260             :         { "mar",  0,  3 },
     261             :         { "apr",  0,  4 },
     262             :         { "may",  0,  5 },
     263             :         { "jun",  0,  6 },
     264             :         { "jul",  0,  7 },
     265             :         { "aug",  0,  8 },
     266             :         { "sep",  0,  9 },
     267             :         { "sept", 0,  9 },
     268             :         { "oct",  0, 10 },
     269             :         { "nov",  0, 11 },
     270             :         { "dec",  0, 12 },
     271             :         { "i",    0,  1 },
     272             :         { "ii",   0,  2 },
     273             :         { "iii",  0,  3 },
     274             :         { "iv",   0,  4 },
     275             :         { "v",    0,  5 },
     276             :         { "vi",   0,  6 },
     277             :         { "vii",  0,  7 },
     278             :         { "viii", 0,  8 },
     279             :         { "ix",   0,  9 },
     280             :         { "x",    0, 10 },
     281             :         { "xi",   0, 11 },
     282             :         { "xii",  0, 12 },
     283             : 
     284             :         { "january",   0,  1 },
     285             :         { "february",  0,  2 },
     286             :         { "march",     0,  3 },
     287             :         { "april",     0,  4 },
     288             :         { "may",       0,  5 },
     289             :         { "june",      0,  6 },
     290             :         { "july",      0,  7 },
     291             :         { "august",    0,  8 },
     292             :         { "september", 0,  9 },
     293             :         { "october",   0, 10 },
     294             :         { "november",  0, 11 },
     295             :         { "december",  0, 12 },
     296             :         {  NULL,       0,  0 }
     297             : };
     298             : 
     299             : #if 0
     300             : static char* timelib_ltrim(char *s)
     301             : {
     302             :         char *ptr = s;
     303             :         while (ptr[0] == ' ' || ptr[0] == '\t') {
     304             :                 ptr++;
     305             :         }
     306             :         return ptr;
     307             : }
     308             : #endif
     309             : 
     310             : #if 0
     311             : uchar *fill(Scanner *s, uchar *cursor){
     312             :         if(!s->eof){
     313             :                 unsigned int cnt = s->tok - s->bot;
     314             :                 if(cnt){
     315             :                         memcpy(s->bot, s->tok, s->lim - s->tok);
     316             :                         s->tok = s->bot;
     317             :                         s->ptr -= cnt;
     318             :                         cursor -= cnt;
     319             :                         s->pos -= cnt;
     320             :                         s->lim -= cnt;
     321             :                 }
     322             :                 if((s->top - s->lim) < BSIZE){
     323             :                         uchar *buf = (uchar*) malloc(((s->lim - s->bot) + BSIZE)*sizeof(uchar));
     324             :                         memcpy(buf, s->tok, s->lim - s->tok);
     325             :                         s->tok = buf;
     326             :                         s->ptr = &buf[s->ptr - s->bot];
     327             :                         cursor = &buf[cursor - s->bot];
     328             :                         s->pos = &buf[s->pos - s->bot];
     329             :                         s->lim = &buf[s->lim - s->bot];
     330             :                         s->top = &s->lim[BSIZE];
     331             :                         free(s->bot);
     332             :                         s->bot = buf;
     333             :                 }
     334             :                 if((cnt = read(s->fd, (char*) s->lim, BSIZE)) != BSIZE){
     335             :                         s->eof = &s->lim[cnt]; *(s->eof)++ = '\n';
     336             :                 }
     337             :                 s->lim += cnt;
     338             :         }
     339             :         return cursor;
     340             : }
     341             : #endif
     342             : 
     343             : static void add_warning(Scanner *s, char *error)
     344             : {
     345             :         s->errors->warning_count++;
     346             :         s->errors->warning_messages = realloc(s->errors->warning_messages, s->errors->warning_count * sizeof(timelib_error_message));
     347             :         s->errors->warning_messages[s->errors->warning_count - 1].position = s->tok ? s->tok - s->str : 0;
     348             :         s->errors->warning_messages[s->errors->warning_count - 1].character = s->tok ? *s->tok : 0;
     349             :         s->errors->warning_messages[s->errors->warning_count - 1].message = strdup(error);
     350             : }
     351             : 
     352             : static void add_error(Scanner *s, char *error)
     353             : {
     354             :         s->errors->error_count++;
     355             :         s->errors->error_messages = realloc(s->errors->error_messages, s->errors->error_count * sizeof(timelib_error_message));
     356             :         s->errors->error_messages[s->errors->error_count - 1].position = s->tok ? s->tok - s->str : 0;
     357             :         s->errors->error_messages[s->errors->error_count - 1].character = s->tok ? *s->tok : 0;
     358             :         s->errors->error_messages[s->errors->error_count - 1].message = strdup(error);
     359             : }
     360             : 
     361             : static void add_pbf_warning(Scanner *s, char *error, char *sptr, char *cptr)
     362             : {
     363             :         s->errors->warning_count++;
     364             :         s->errors->warning_messages = realloc(s->errors->warning_messages, s->errors->warning_count * sizeof(timelib_error_message));
     365             :         s->errors->warning_messages[s->errors->warning_count - 1].position = cptr - sptr;
     366             :         s->errors->warning_messages[s->errors->warning_count - 1].character = *cptr;
     367             :         s->errors->warning_messages[s->errors->warning_count - 1].message = strdup(error);
     368             : }
     369             : 
     370             : static void add_pbf_error(Scanner *s, char *error, char *sptr, char *cptr)
     371             : {
     372             :         s->errors->error_count++;
     373             :         s->errors->error_messages = realloc(s->errors->error_messages, s->errors->error_count * sizeof(timelib_error_message));
     374             :         s->errors->error_messages[s->errors->error_count - 1].position = cptr - sptr;
     375             :         s->errors->error_messages[s->errors->error_count - 1].character = *cptr;
     376             :         s->errors->error_messages[s->errors->error_count - 1].message = strdup(error);
     377             : }
     378             : 
     379             : static timelib_sll timelib_meridian(char **ptr, timelib_sll h)
     380             : {
     381             :         timelib_sll retval = 0;
     382             : 
     383             :         while (!strchr("AaPp", **ptr)) {
     384             :                 ++*ptr;
     385             :         }
     386             :         if (**ptr == 'a' || **ptr == 'A') {
     387             :                 if (h == 12) {
     388             :                         retval = -12;
     389             :                 }
     390             :         } else if (h != 12) {
     391             :                 retval = 12;
     392             :         }
     393             :         ++*ptr;
     394             :         if (**ptr == '.') {
     395             :                 *ptr += 3;
     396             :         } else {
     397             :                 ++*ptr;
     398             :         }
     399             :         return retval;
     400             : }
     401             : 
     402             : static timelib_sll timelib_meridian_with_check(char **ptr, timelib_sll h)
     403             : {
     404             :         timelib_sll retval = 0;
     405             : 
     406             :         while (**ptr && !strchr("AaPp", **ptr)) {
     407             :                 ++*ptr;
     408             :         }
     409             :         if(!**ptr) {
     410             :                 return TIMELIB_UNSET;
     411             :         }
     412             :         if (**ptr == 'a' || **ptr == 'A') {
     413             :                 if (h == 12) {
     414             :                         retval = -12;
     415             :                 }
     416             :         } else if (h != 12) {
     417             :                 retval = 12;
     418             :         }
     419             :         ++*ptr;
     420             :         if (**ptr == '.') {
     421             :                 ++*ptr;
     422             :                 if (**ptr != 'm' && **ptr != 'M') {
     423             :                         return TIMELIB_UNSET;
     424             :                 }
     425             :                 ++*ptr;
     426             :                 if (**ptr != '.' ) {
     427             :                         return TIMELIB_UNSET;
     428             :                 }
     429             :                 ++*ptr;
     430             :         } else if (**ptr == 'm' || **ptr == 'M') {
     431             :                 ++*ptr;
     432             :         } else {
     433             :                 return TIMELIB_UNSET;
     434             :         }
     435             :         return retval;
     436             : }
     437             : 
     438             : static char *timelib_string(Scanner *s)
     439             : {
     440             :         char *tmp = calloc(1, s->cur - s->tok + 1);
     441             :         memcpy(tmp, s->tok, s->cur - s->tok);
     442             : 
     443             :         return tmp;
     444             : }
     445             : 
     446             : static timelib_sll timelib_get_nr_ex(char **ptr, int max_length, int *scanned_length)
     447             : {
     448             :         char *begin, *end, *str;
     449             :         timelib_sll tmp_nr = TIMELIB_UNSET;
     450             :         int len = 0;
     451             : 
     452             :         while ((**ptr < '0') || (**ptr > '9')) {
     453             :                 if (**ptr == '\0') {
     454             :                         return TIMELIB_UNSET;
     455             :                 }
     456             :                 ++*ptr;
     457             :         }
     458             :         begin = *ptr;
     459             :         while ((**ptr >= '0') && (**ptr <= '9') && len < max_length) {
     460             :                 ++*ptr;
     461             :                 ++len;
     462             :         }
     463             :         end = *ptr;
     464             :         if (scanned_length) {
     465             :                 *scanned_length = end - begin;
     466             :         }
     467             :         str = calloc(1, end - begin + 1);
     468             :         memcpy(str, begin, end - begin);
     469             :         tmp_nr = strtoll(str, NULL, 10);
     470             :         free(str);
     471             :         return tmp_nr;
     472             : }
     473             : 
     474             : static timelib_sll timelib_get_nr(char **ptr, int max_length)
     475             : {
     476             :         return timelib_get_nr_ex(ptr, max_length, NULL);
     477             : }
     478             : 
     479             : static void timelib_skip_day_suffix(char **ptr)
     480             : {
     481             :         if (isspace(**ptr)) {
     482             :                 return;
     483             :         }
     484             :         if (!strncasecmp(*ptr, "nd", 2) || !strncasecmp(*ptr, "rd", 2) ||!strncasecmp(*ptr, "st", 2) || !strncasecmp(*ptr, "th", 2)) {
     485             :                 *ptr += 2;
     486             :         }
     487             : }
     488             : 
     489             : static double timelib_get_frac_nr(char **ptr, int max_length)
     490             : {
     491             :         char *begin, *end, *str;
     492             :         double tmp_nr = TIMELIB_UNSET;
     493             :         int len = 0;
     494             : 
     495             :         while ((**ptr != '.') && (**ptr != ':') && ((**ptr < '0') || (**ptr > '9'))) {
     496             :                 if (**ptr == '\0') {
     497             :                         return TIMELIB_UNSET;
     498             :                 }
     499             :                 ++*ptr;
     500             :         }
     501             :         begin = *ptr;
     502             :         while (((**ptr == '.') || (**ptr == ':') || ((**ptr >= '0') && (**ptr <= '9'))) && len < max_length) {
     503             :                 ++*ptr;
     504             :                 ++len;
     505             :         }
     506             :         end = *ptr;
     507             :         str = calloc(1, end - begin + 1);
     508             :         memcpy(str, begin, end - begin);
     509             :         if (str[0] == ':') {
     510             :                 str[0] = '.';
     511             :         }
     512             :         tmp_nr = strtod(str, NULL);
     513             :         free(str);
     514             :         return tmp_nr;
     515             : }
     516             : 
     517             : static timelib_ull timelib_get_unsigned_nr(char **ptr, int max_length)
     518             : {
     519             :         timelib_ull dir = 1;
     520             : 
     521             :         while (((**ptr < '0') || (**ptr > '9')) && (**ptr != '+') && (**ptr != '-')) {
     522             :                 if (**ptr == '\0') {
     523             :                         return TIMELIB_UNSET;
     524             :                 }
     525             :                 ++*ptr;
     526             :         }
     527             : 
     528             :         while (**ptr == '+' || **ptr == '-')
     529             :         {
     530             :                 if (**ptr == '-') {
     531             :                         dir *= -1;
     532             :                 }
     533             :                 ++*ptr;
     534             :         }
     535             :         return dir * timelib_get_nr(ptr, max_length);
     536             : }
     537             : 
     538             : static long timelib_parse_tz_cor(char **ptr)
     539             : {
     540             :         char *begin = *ptr, *end;
     541             :         long  tmp;
     542             : 
     543             :         while (isdigit(**ptr) || **ptr == ':') {
     544             :                 ++*ptr;
     545             :         }
     546             :         end = *ptr;
     547             :         switch (end - begin) {
     548             :                 case 1:
     549             :                 case 2:
     550             :                         return HOUR(strtol(begin, NULL, 10));
     551             :                         break;
     552             :                 case 3:
     553             :                 case 4:
     554             :                         if (begin[1] == ':') {
     555             :                                 tmp = HOUR(strtol(begin, NULL, 10)) + strtol(begin + 2, NULL, 10);
     556             :                                 return tmp;
     557             :                         } else if (begin[2] == ':') {
     558             :                                 tmp = HOUR(strtol(begin, NULL, 10)) + strtol(begin + 3, NULL, 10);
     559             :                                 return tmp;
     560             :                         } else {
     561             :                                 tmp = strtol(begin, NULL, 10);
     562             :                                 return HOUR(tmp / 100) + tmp % 100;
     563             :                         }
     564             :                 case 5:
     565             :                         tmp = HOUR(strtol(begin, NULL, 10)) + strtol(begin + 3, NULL, 10);
     566             :                         return tmp;
     567             :         }
     568             :         return 0;
     569             : }
     570             : 
     571             : static timelib_sll timelib_lookup_relative_text(char **ptr, int *behavior)
     572             : {
     573             :         char *word;
     574             :         char *begin = *ptr, *end;
     575             :         timelib_sll  value = 0;
     576             :         const timelib_lookup_table *tp;
     577             : 
     578             :         while ((**ptr >= 'A' && **ptr <= 'Z') || (**ptr >= 'a' && **ptr <= 'z')) {
     579             :                 ++*ptr;
     580             :         }
     581             :         end = *ptr;
     582             :         word = calloc(1, end - begin + 1);
     583             :         memcpy(word, begin, end - begin);
     584             : 
     585             :         for (tp = timelib_reltext_lookup; tp->name; tp++) {
     586             :                 if (strcasecmp(word, tp->name) == 0) {
     587             :                         value = tp->value;
     588             :                         *behavior = tp->type;
     589             :                 }
     590             :         }
     591             : 
     592             :         free(word);
     593             :         return value;
     594             : }
     595             : 
     596             : static timelib_sll timelib_get_relative_text(char **ptr, int *behavior)
     597             : {
     598             :         while (**ptr == ' ' || **ptr == '\t' || **ptr == '-' || **ptr == '/') {
     599             :                 ++*ptr;
     600             :         }
     601             :         return timelib_lookup_relative_text(ptr, behavior);
     602             : }
     603             : 
     604             : static long timelib_lookup_month(char **ptr)
     605             : {
     606             :         char *word;
     607             :         char *begin = *ptr, *end;
     608             :         long  value = 0;
     609             :         const timelib_lookup_table *tp;
     610             : 
     611             :         while ((**ptr >= 'A' && **ptr <= 'Z') || (**ptr >= 'a' && **ptr <= 'z')) {
     612             :                 ++*ptr;
     613             :         }
     614             :         end = *ptr;
     615             :         word = calloc(1, end - begin + 1);
     616             :         memcpy(word, begin, end - begin);
     617             : 
     618             :         for (tp = timelib_month_lookup; tp->name; tp++) {
     619             :                 if (strcasecmp(word, tp->name) == 0) {
     620             :                         value = tp->value;
     621             :                 }
     622             :         }
     623             : 
     624             :         free(word);
     625             :         return value;
     626             : }
     627             : 
     628             : static long timelib_get_month(char **ptr)
     629             : {
     630             :         while (**ptr == ' ' || **ptr == '\t' || **ptr == '-' || **ptr == '.' || **ptr == '/') {
     631             :                 ++*ptr;
     632             :         }
     633             :         return timelib_lookup_month(ptr);
     634             : }
     635             : 
     636             : static void timelib_eat_spaces(char **ptr)
     637             : {
     638             :         while (**ptr == ' ' || **ptr == '\t') {
     639             :                 ++*ptr;
     640             :         }
     641             : }
     642             : 
     643             : static void timelib_eat_until_separator(char **ptr)
     644             : {
     645             :         ++*ptr;
     646             :         while (strchr(" \t.,:;/-0123456789", **ptr) == NULL) {
     647             :                 ++*ptr;
     648             :         }
     649             : }
     650             : 
     651             : static const timelib_relunit* timelib_lookup_relunit(char **ptr)
     652             : {
     653             :         char *word;
     654             :         char *begin = *ptr, *end;
     655             :         const timelib_relunit *tp, *value = NULL;
     656             : 
     657             :         while (**ptr != '\0' && **ptr != ' ' && **ptr != ',' && **ptr != '\t' && **ptr != ';' && **ptr != ':' &&
     658             :            **ptr != '/' && **ptr != '.' && **ptr != '-' && **ptr != '(' && **ptr != ')' ) {
     659             :                 ++*ptr;
     660             :         }
     661             :         end = *ptr;
     662             :         word = calloc(1, end - begin + 1);
     663             :         memcpy(word, begin, end - begin);
     664             : 
     665             :         for (tp = timelib_relunit_lookup; tp->name; tp++) {
     666             :                 if (strcasecmp(word, tp->name) == 0) {
     667             :                         value = tp;
     668             :                         break;
     669             :                 }
     670             :         }
     671             : 
     672             :         free(word);
     673             :         return value;
     674             : }
     675             : 
     676             : static void timelib_set_relative(char **ptr, timelib_sll amount, int behavior, Scanner *s)
     677             : {
     678             :         const timelib_relunit* relunit;
     679             : 
     680             :         if (!(relunit = timelib_lookup_relunit(ptr))) {
     681             :                 return;
     682             :         }
     683             : 
     684             :         switch (relunit->unit) {
     685             :                 case TIMELIB_SECOND: s->time->relative.s += amount * relunit->multiplier; break;
     686             :                 case TIMELIB_MINUTE: s->time->relative.i += amount * relunit->multiplier; break;
     687             :                 case TIMELIB_HOUR:   s->time->relative.h += amount * relunit->multiplier; break;
     688             :                 case TIMELIB_DAY:    s->time->relative.d += amount * relunit->multiplier; break;
     689             :                 case TIMELIB_MONTH:  s->time->relative.m += amount * relunit->multiplier; break;
     690             :                 case TIMELIB_YEAR:   s->time->relative.y += amount * relunit->multiplier; break;
     691             : 
     692             :                 case TIMELIB_WEEKDAY:
     693             :                         TIMELIB_HAVE_WEEKDAY_RELATIVE();
     694             :                         TIMELIB_UNHAVE_TIME();
     695             :                         s->time->relative.d += (amount > 0 ? amount - 1 : amount) * 7;
     696             :                         s->time->relative.weekday = relunit->multiplier;
     697             :                         s->time->relative.weekday_behavior = behavior;
     698             :                         break;
     699             : 
     700             :                 case TIMELIB_SPECIAL:
     701             :                         TIMELIB_HAVE_SPECIAL_RELATIVE();
     702             :                         TIMELIB_UNHAVE_TIME();
     703             :                         s->time->relative.special.type = relunit->multiplier;
     704             :                         s->time->relative.special.amount = amount;
     705             :         }
     706             : }
     707             : 
     708             : const static timelib_tz_lookup_table* zone_search(const char *word, long gmtoffset, int isdst)
     709             : {
     710             :         int first_found = 0;
     711             :         const timelib_tz_lookup_table  *tp, *first_found_elem = NULL;
     712             :         const timelib_tz_lookup_table  *fmp;
     713             : 
     714             :         if (strcasecmp("utc", word) == 0 || strcasecmp("gmt", word) == 0) {
     715             :                 return timelib_timezone_utc;
     716             :         }
     717             :         
     718             :         for (tp = timelib_timezone_lookup; tp->name; tp++) {
     719             :                 if (strcasecmp(word, tp->name) == 0) {
     720             :                         if (!first_found) {
     721             :                                 first_found = 1;
     722             :                                 first_found_elem = tp;
     723             :                                 if (gmtoffset == -1) {
     724             :                                         return tp;
     725             :                                 }
     726             :                         }
     727             :                         if (tp->gmtoffset == gmtoffset) {
     728             :                                 return tp;
     729             :                         }
     730             :                 }
     731             :         }
     732             :         if (first_found) {
     733             :                 return first_found_elem;
     734             :         }
     735             : 
     736             :         for (tp = timelib_timezone_lookup; tp->name; tp++) {
     737             :                 if (tp->full_tz_name && strcasecmp(word, tp->full_tz_name) == 0) {
     738             :                         if (!first_found) {
     739             :                                 first_found = 1;
     740             :                                 first_found_elem = tp;
     741             :                                 if (gmtoffset == -1) {
     742             :                                         return tp;
     743             :                                 }
     744             :                         }
     745             :                         if (tp->gmtoffset == gmtoffset) {
     746             :                                 return tp;
     747             :                         }
     748             :                 }
     749             :         }
     750             :         if (first_found) {
     751             :                 return first_found_elem;
     752             :         }
     753             : 
     754             : 
     755             :         /* Still didn't find anything, let's find the zone solely based on
     756             :          * offset/isdst then */
     757             :         for (fmp = timelib_timezone_fallbackmap; fmp->name; fmp++) {
     758             :                 if ((fmp->gmtoffset * 60) == gmtoffset && fmp->type == isdst) {
     759             :                         return fmp;
     760             :                 }
     761             :         }
     762             :         return NULL;
     763             : }
     764             : 
     765             : static long timelib_lookup_zone(char **ptr, int *dst, char **tz_abbr, int *found)
     766             : {
     767             :         char *word;
     768             :         char *begin = *ptr, *end;
     769             :         long  value = 0;
     770             :         const timelib_tz_lookup_table *tp;
     771             : 
     772             :         while (**ptr != '\0' && **ptr != ')' && **ptr != ' ') {
     773             :                 ++*ptr;
     774             :         }
     775             :         end = *ptr;
     776             :         word = calloc(1, end - begin + 1);
     777             :         memcpy(word, begin, end - begin);
     778             : 
     779             :         if ((tp = zone_search(word, -1, 0))) {
     780             :                 value = -tp->gmtoffset / 60;
     781             :                 *dst = tp->type;
     782             :                 value += tp->type * 60;
     783             :                 *found = 1;
     784             :         } else {
     785             :                 *found = 0;
     786             :         }
     787             : 
     788             :         *tz_abbr = word;
     789             :         return value;
     790             : }
     791             : 
     792             : static long timelib_get_zone(char **ptr, int *dst, timelib_time *t, int *tz_not_found, const timelib_tzdb *tzdb, timelib_tz_get_wrapper tz_wrapper)
     793             : {
     794             :         timelib_tzinfo *res;
     795             :         long            retval = 0;
     796             : 
     797             :         *tz_not_found = 0;
     798             : 
     799             :         while (**ptr == ' ' || **ptr == '\t' || **ptr == '(') {
     800             :                 ++*ptr;
     801             :         }
     802             :         if ((*ptr)[0] == 'G' && (*ptr)[1] == 'M' && (*ptr)[2] == 'T' && ((*ptr)[3] == '+' || (*ptr)[3] == '-')) {
     803             :                 *ptr += 3;
     804             :         }
     805             :         if (**ptr == '+') {
     806             :                 ++*ptr;
     807             :                 t->is_localtime = 1;
     808             :                 t->zone_type = TIMELIB_ZONETYPE_OFFSET;
     809             :                 *tz_not_found = 0;
     810             :                 t->dst = 0;
     811             : 
     812             :                 retval = -1 * timelib_parse_tz_cor(ptr);
     813             :         } else if (**ptr == '-') {
     814             :                 ++*ptr;
     815             :                 t->is_localtime = 1;
     816             :                 t->zone_type = TIMELIB_ZONETYPE_OFFSET;
     817             :                 *tz_not_found = 0;
     818             :                 t->dst = 0;
     819             : 
     820             :                 retval = timelib_parse_tz_cor(ptr);
     821             :         } else {
     822             :                 int found = 0;
     823             :                 long offset;
     824             :                 char *tz_abbr;
     825             : 
     826             :                 t->is_localtime = 1;
     827             : 
     828             :                 offset = timelib_lookup_zone(ptr, dst, &tz_abbr, &found);
     829             :                 if (found) {
     830             :                         t->zone_type = TIMELIB_ZONETYPE_ABBR;
     831             :                 }
     832             : #if 0
     833             :                 /* If we found a TimeZone identifier, use it */
     834             :                 if (tz_name) {
     835             :                         t->tz_info = timelib_parse_tzfile(tz_name);
     836             :                         t->zone_type = TIMELIB_ZONETYPE_ID;
     837             :                 }
     838             : #endif
     839             :                 /* If we have a TimeZone identifier to start with, use it */
     840             :                 if (strstr(tz_abbr, "/") || strcmp(tz_abbr, "UTC") == 0) {
     841             :                         if ((res = tz_wrapper(tz_abbr, tzdb)) != NULL) {
     842             :                                 t->tz_info = res;
     843             :                                 t->zone_type = TIMELIB_ZONETYPE_ID;
     844             :                                 found++;
     845             :                         }
     846             :                 }
     847             :                 if (found && t->zone_type != TIMELIB_ZONETYPE_ID) {
     848             :                         timelib_time_tz_abbr_update(t, tz_abbr);
     849             :                 }
     850             :                 free(tz_abbr);
     851             :                 *tz_not_found = (found == 0);
     852             :                 retval = offset;
     853             :         }
     854             :         while (**ptr == ')') {
     855             :                 ++*ptr;
     856             :         }
     857             :         return retval;
     858             : }
     859             : 
     860             : #define timelib_split_free(arg) {       \
     861             :         int i;                         \
     862             :         for (i = 0; i < arg.c; i++) {  \
     863             :                 free(arg.v[i]);            \
     864             :         }                              \
     865             :         if (arg.v) {                   \
     866             :                 free(arg.v);               \
     867             :         }                              \
     868             : }
     869             : 
     870             : static int scan(Scanner *s, timelib_tz_get_wrapper tz_get_wrapper)
     871             : {
     872             :         uchar *cursor = s->cur;
     873             :         char *str, *ptr = NULL;
     874             :                 
     875             : std:
     876             :         s->tok = cursor;
     877             :         s->len = 0;
     878             : #line 1001 "ext/date/lib/parse_date.re"
     879             : 
     880             : 
     881             : 
     882             : #line 883 "ext/date/lib/parse_date.c"
     883             : {
     884             :         YYCTYPE yych;
     885       40239 :         unsigned int yyaccept = 0;
     886             :         static const unsigned char yybm[] = {
     887             :                   0,   0,   0,   0,   0,   0,   0,   0, 
     888             :                   0, 100,   0,   0,   0,   0,   0,   0, 
     889             :                   0,   0,   0,   0,   0,   0,   0,   0, 
     890             :                   0,   0,   0,   0,   0,   0,   0,   0, 
     891             :                 100,   0,   0,   0,   0,   0,   0,   0, 
     892             :                   0,   0,   0, 128,  64, 160,  96,   0, 
     893             :                   2,   2,   2,   2,   2,   2,   2,   2, 
     894             :                   2,   2,   0,   0,   0,   0,   0,   0, 
     895             :                   0,   8,   8,   8,   8,   8,   8,   8, 
     896             :                   8,   8,   8,   8,   8,   8,   8,   8, 
     897             :                   8,   8,   8,   8,   8,   8,   8,   8, 
     898             :                   8,   8,   8,   0,   0,   0,   0,   0, 
     899             :                   0,  24,  24,  24,  88,  24,  24,  24, 
     900             :                  88,  24,  24,  24,  24,  24,  88,  24, 
     901             :                  24,  24,  88,  88,  88,  24,  24,  24, 
     902             :                  24,  24,  24,   0,   0,   0,   0,   0, 
     903             :                   0,   0,   0,   0,   0,   0,   0,   0, 
     904             :                   0,   0,   0,   0,   0,   0,   0,   0, 
     905             :                   0,   0,   0,   0,   0,   0,   0,   0, 
     906             :                   0,   0,   0,   0,   0,   0,   0,   0, 
     907             :                   0,   0,   0,   0,   0,   0,   0,   0, 
     908             :                   0,   0,   0,   0,   0,   0,   0,   0, 
     909             :                   0,   0,   0,   0,   0,   0,   0,   0, 
     910             :                   0,   0,   0,   0,   0,   0,   0,   0, 
     911             :                   0,   0,   0,   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             :         };
     920             : 
     921             :         YYDEBUG(0, *YYCURSOR);
     922       40239 :         if ((YYLIMIT - YYCURSOR) < 31) YYFILL(31);
     923       32283 :         yych = *YYCURSOR;
     924             :         YYDEBUG(-1, yych);
     925       32283 :         switch (yych) {
     926             :         case 0x00:
     927        7935 :         case '\n':      goto yy52;
     928             :         case '\t':
     929        8106 :         case ' ':       goto yy49;
     930           1 :         case '(':       goto yy46;
     931             :         case '+':
     932         448 :         case '-':       goto yy31;
     933             :         case ',':
     934          21 :         case '.':       goto yy51;
     935        3051 :         case '0':       goto yy26;
     936        1919 :         case '1':       goto yy27;
     937        5654 :         case '2':       goto yy28;
     938          16 :         case '3':       goto yy29;
     939             :         case '4':
     940             :         case '5':
     941             :         case '6':
     942             :         case '7':
     943             :         case '8':
     944          33 :         case '9':       goto yy30;
     945         212 :         case '@':       goto yy12;
     946         679 :         case 'A':       goto yy37;
     947           4 :         case 'B':       goto yy18;
     948             :         case 'C':
     949             :         case 'H':
     950             :         case 'K':
     951             :         case 'Q':
     952             :         case 'R':
     953             :         case 'U':
     954         265 :         case 'Z':       goto yy47;
     955          18 :         case 'D':       goto yy41;
     956        2329 :         case 'E':       goto yy22;
     957           6 :         case 'F':       goto yy14;
     958          31 :         case 'G':       goto yy45;
     959          22 :         case 'I':       goto yy32;
     960          20 :         case 'J':       goto yy35;
     961           0 :         case 'L':       goto yy16;
     962        1027 :         case 'M':       goto yy8;
     963          19 :         case 'N':       goto yy6;
     964           7 :         case 'O':       goto yy39;
     965          82 :         case 'P':       goto yy24;
     966          13 :         case 'S':       goto yy20;
     967          20 :         case 'T':       goto yy10;
     968           0 :         case 'V':       goto yy33;
     969           3 :         case 'W':       goto yy43;
     970           0 :         case 'X':       goto yy34;
     971           0 :         case 'Y':       goto yy3;
     972          13 :         case 'a':       goto yy38;
     973           7 :         case 'b':       goto yy19;
     974             :         case 'c':
     975             :         case 'g':
     976             :         case 'h':
     977             :         case 'i':
     978             :         case 'k':
     979             :         case 'q':
     980             :         case 'r':
     981             :         case 'u':
     982             :         case 'v':
     983             :         case 'x':
     984          13 :         case 'z':       goto yy48;
     985           2 :         case 'd':       goto yy42;
     986           2 :         case 'e':       goto yy23;
     987          43 :         case 'f':       goto yy15;
     988           1 :         case 'j':       goto yy36;
     989          15 :         case 'l':       goto yy17;
     990          11 :         case 'm':       goto yy9;
     991         140 :         case 'n':       goto yy7;
     992          11 :         case 'o':       goto yy40;
     993           1 :         case 'p':       goto yy25;
     994          30 :         case 's':       goto yy21;
     995          19 :         case 't':       goto yy11;
     996          10 :         case 'w':       goto yy44;
     997           1 :         case 'y':       goto yy5;
     998          23 :         default:        goto yy54;
     999             :         }
    1000             : yy2:
    1001             :         YYDEBUG(2, *YYCURSOR);
    1002             : #line 1087 "ext/date/lib/parse_date.re"
    1003             :         {
    1004             :                 DEBUG_OUTPUT("firstdayof | lastdayof");
    1005             :                 TIMELIB_INIT;
    1006             :                 TIMELIB_HAVE_RELATIVE();
    1007             : 
    1008             :                 /* skip "last day of" or "first day of" */
    1009             :                 if (*ptr == 'l') {
    1010             :                         s->time->relative.first_last_day_of = 2;
    1011             :                 } else {
    1012             :                         s->time->relative.first_last_day_of = 1;
    1013             :                 }
    1014             : 
    1015             :                 TIMELIB_DEINIT;
    1016             :                 return TIMELIB_LF_DAY_OF_MONTH;
    1017             :         }
    1018             : #line 1019 "ext/date/lib/parse_date.c"
    1019             : yy3:
    1020             :         YYDEBUG(3, *YYCURSOR);
    1021           0 :         ++YYCURSOR;
    1022           0 :         if ((yych = *YYCURSOR) <= 'E') {
    1023           0 :                 if (yych <= ')') {
    1024           0 :                         if (yych >= ')') goto yy140;
    1025             :                 } else {
    1026           0 :                         if (yych <= '@') goto yy4;
    1027           0 :                         if (yych <= 'D') goto yy141;
    1028           0 :                         goto yy1523;
    1029             :                 }
    1030             :         } else {
    1031           0 :                 if (yych <= 'd') {
    1032           0 :                         if (yych <= 'Z') goto yy141;
    1033           0 :                         if (yych >= 'a') goto yy146;
    1034             :                 } else {
    1035           0 :                         if (yych <= 'e') goto yy1532;
    1036           0 :                         if (yych <= 'z') goto yy146;
    1037             :                 }
    1038             :         }
    1039             : yy4:
    1040             :         YYDEBUG(4, *YYCURSOR);
    1041             : #line 1681 "ext/date/lib/parse_date.re"
    1042             :         {
    1043             :                 int tz_not_found;
    1044             :                 DEBUG_OUTPUT("tzcorrection | tz");
    1045             :                 TIMELIB_INIT;
    1046             :                 TIMELIB_HAVE_TZ();
    1047             :                 s->time->z = timelib_get_zone((char **) &ptr, &s->time->dst, s->time, &tz_not_found, s->tzdb, tz_get_wrapper);
    1048             :                 if (tz_not_found) {
    1049             :                         add_error(s, "The timezone could not be found in the database");
    1050             :                 }
    1051             :                 TIMELIB_DEINIT;
    1052             :                 return TIMELIB_TIMEZONE;
    1053             :         }
    1054             : #line 1055 "ext/date/lib/parse_date.c"
    1055             : yy5:
    1056             :         YYDEBUG(5, *YYCURSOR);
    1057           1 :         yych = *++YYCURSOR;
    1058           1 :         if (yych <= 'E') {
    1059           0 :                 if (yych <= ')') {
    1060           0 :                         if (yych <= '(') goto yy4;
    1061           0 :                         goto yy140;
    1062             :                 } else {
    1063           0 :                         if (yych <= '@') goto yy4;
    1064           0 :                         if (yych <= 'D') goto yy141;
    1065           0 :                         goto yy1523;
    1066             :                 }
    1067             :         } else {
    1068           1 :                 if (yych <= 'd') {
    1069           0 :                         if (yych <= 'Z') goto yy141;
    1070           0 :                         if (yych <= '`') goto yy4;
    1071           0 :                         goto yy141;
    1072             :                 } else {
    1073           1 :                         if (yych <= 'e') goto yy1523;
    1074           0 :                         if (yych <= 'z') goto yy141;
    1075           0 :                         goto yy4;
    1076             :                 }
    1077             :         }
    1078             : yy6:
    1079             :         YYDEBUG(6, *YYCURSOR);
    1080          19 :         yych = *++YYCURSOR;
    1081          19 :         if (yych <= 'O') {
    1082           1 :                 if (yych <= 'D') {
    1083           0 :                         if (yych == ')') goto yy140;
    1084           0 :                         if (yych <= '@') goto yy4;
    1085           0 :                         goto yy141;
    1086             :                 } else {
    1087           1 :                         if (yych <= 'H') {
    1088           0 :                                 if (yych <= 'E') goto yy1494;
    1089           0 :                                 goto yy141;
    1090             :                         } else {
    1091           1 :                                 if (yych <= 'I') goto yy1495;
    1092           1 :                                 if (yych <= 'N') goto yy141;
    1093           1 :                                 goto yy1493;
    1094             :                         }
    1095             :                 }
    1096             :         } else {
    1097          18 :                 if (yych <= 'h') {
    1098           2 :                         if (yych <= '`') {
    1099           1 :                                 if (yych <= 'Z') goto yy141;
    1100           0 :                                 goto yy4;
    1101             :                         } else {
    1102           1 :                                 if (yych == 'e') goto yy1510;
    1103           0 :                                 goto yy146;
    1104             :                         }
    1105             :                 } else {
    1106          16 :                         if (yych <= 'n') {
    1107           0 :                                 if (yych <= 'i') goto yy1511;
    1108           0 :                                 goto yy146;
    1109             :                         } else {
    1110          16 :                                 if (yych <= 'o') goto yy1509;
    1111           0 :                                 if (yych <= 'z') goto yy146;
    1112           0 :                                 goto yy4;
    1113             :                         }
    1114             :                 }
    1115             :         }
    1116             : yy7:
    1117             :         YYDEBUG(7, *YYCURSOR);
    1118         140 :         yych = *++YYCURSOR;
    1119         140 :         if (yych <= 'O') {
    1120           0 :                 if (yych <= 'D') {
    1121           0 :                         if (yych == ')') goto yy140;
    1122           0 :                         if (yych <= '@') goto yy4;
    1123           0 :                         goto yy141;
    1124             :                 } else {
    1125           0 :                         if (yych <= 'H') {
    1126           0 :                                 if (yych <= 'E') goto yy1494;
    1127           0 :                                 goto yy141;
    1128             :                         } else {
    1129           0 :                                 if (yych <= 'I') goto yy1495;
    1130           0 :                                 if (yych <= 'N') goto yy141;
    1131           0 :                                 goto yy1493;
    1132             :                         }
    1133             :                 }
    1134             :         } else {
    1135         140 :                 if (yych <= 'h') {
    1136          79 :                         if (yych <= '`') {
    1137           0 :                                 if (yych <= 'Z') goto yy141;
    1138           0 :                                 goto yy4;
    1139             :                         } else {
    1140          79 :                                 if (yych == 'e') goto yy1494;
    1141           1 :                                 goto yy141;
    1142             :                         }
    1143             :                 } else {
    1144          61 :                         if (yych <= 'n') {
    1145           0 :                                 if (yych <= 'i') goto yy1495;
    1146           0 :                                 goto yy141;
    1147             :                         } else {
    1148          61 :                                 if (yych <= 'o') goto yy1493;
    1149           0 :                                 if (yych <= 'z') goto yy141;
    1150           0 :                                 goto yy4;
    1151             :                         }
    1152             :                 }
    1153             :         }
    1154             : yy8:
    1155             :         YYDEBUG(8, *YYCURSOR);
    1156        1027 :         yych = *++YYCURSOR;
    1157        1027 :         if (yych <= 'O') {
    1158           3 :                 if (yych <= 'A') {
    1159           0 :                         if (yych == ')') goto yy140;
    1160           0 :                         if (yych <= '@') goto yy4;
    1161           0 :                         goto yy1463;
    1162             :                 } else {
    1163           3 :                         if (yych == 'I') goto yy1464;
    1164           3 :                         if (yych <= 'N') goto yy141;
    1165           0 :                         goto yy1465;
    1166             :                 }
    1167             :         } else {
    1168        1024 :                 if (yych <= 'h') {
    1169          12 :                         if (yych <= 'Z') goto yy141;
    1170          11 :                         if (yych <= '`') goto yy4;
    1171          11 :                         if (yych <= 'a') goto yy1478;
    1172           3 :                         goto yy146;
    1173             :                 } else {
    1174        1012 :                         if (yych <= 'n') {
    1175           0 :                                 if (yych <= 'i') goto yy1479;
    1176           0 :                                 goto yy146;
    1177             :                         } else {
    1178        1012 :                                 if (yych <= 'o') goto yy1480;
    1179           0 :                                 if (yych <= 'z') goto yy146;
    1180           0 :                                 goto yy4;
    1181             :                         }
    1182             :                 }
    1183             :         }
    1184             : yy9:
    1185             :         YYDEBUG(9, *YYCURSOR);
    1186          11 :         yych = *++YYCURSOR;
    1187          11 :         if (yych <= 'O') {
    1188           0 :                 if (yych <= 'A') {
    1189           0 :                         if (yych == ')') goto yy140;
    1190           0 :                         if (yych <= '@') goto yy4;
    1191           0 :                         goto yy1463;
    1192             :                 } else {
    1193           0 :                         if (yych == 'I') goto yy1464;
    1194           0 :                         if (yych <= 'N') goto yy141;
    1195           0 :                         goto yy1465;
    1196             :                 }
    1197             :         } else {
    1198          11 :                 if (yych <= 'h') {
    1199           4 :                         if (yych <= 'Z') goto yy141;
    1200           4 :                         if (yych <= '`') goto yy4;
    1201           4 :                         if (yych <= 'a') goto yy1463;
    1202           0 :                         goto yy141;
    1203             :                 } else {
    1204           7 :                         if (yych <= 'n') {
    1205           1 :                                 if (yych <= 'i') goto yy1464;
    1206           0 :                                 goto yy141;
    1207             :                         } else {
    1208           6 :                                 if (yych <= 'o') goto yy1465;
    1209           0 :                                 if (yych <= 'z') goto yy141;
    1210           0 :                                 goto yy4;
    1211             :                         }
    1212             :                 }
    1213             :         }
    1214             : yy10:
    1215             :         YYDEBUG(10, *YYCURSOR);
    1216          20 :         yyaccept = 0;
    1217          20 :         yych = *(YYMARKER = ++YYCURSOR);
    1218             :         YYDEBUG(-1, yych);
    1219          20 :         switch (yych) {
    1220           0 :         case ')':       goto yy140;
    1221             :         case '0':
    1222           2 :         case '1':       goto yy1393;
    1223           4 :         case '2':       goto yy1394;
    1224             :         case '3':
    1225             :         case '4':
    1226             :         case '5':
    1227             :         case '6':
    1228             :         case '7':
    1229             :         case '8':
    1230           0 :         case '9':       goto yy1395;
    1231             :         case 'A':
    1232             :         case 'B':
    1233             :         case 'C':
    1234             :         case 'D':
    1235             :         case 'F':
    1236             :         case 'G':
    1237             :         case 'I':
    1238             :         case 'J':
    1239             :         case 'K':
    1240             :         case 'L':
    1241             :         case 'M':
    1242             :         case 'N':
    1243             :         case 'P':
    1244             :         case 'Q':
    1245             :         case 'R':
    1246             :         case 'S':
    1247             :         case 'T':
    1248             :         case 'V':
    1249             :         case 'X':
    1250             :         case 'Y':
    1251           0 :         case 'Z':       goto yy141;
    1252           0 :         case 'E':       goto yy1388;
    1253           0 :         case 'H':       goto yy1389;
    1254           0 :         case 'O':       goto yy1390;
    1255           0 :         case 'U':       goto yy1391;
    1256           0 :         case 'W':       goto yy1392;
    1257             :         case 'a':
    1258             :         case 'b':
    1259             :         case 'c':
    1260             :         case 'd':
    1261             :         case 'f':
    1262             :         case 'g':
    1263             :         case 'i':
    1264             :         case 'j':
    1265             :         case 'k':
    1266             :         case 'l':
    1267             :         case 'm':
    1268             :         case 'n':
    1269             :         case 'p':
    1270             :         case 'q':
    1271             :         case 'r':
    1272             :         case 's':
    1273             :         case 't':
    1274             :         case 'v':
    1275             :         case 'x':
    1276             :         case 'y':
    1277           0 :         case 'z':       goto yy146;
    1278           0 :         case 'e':       goto yy1431;
    1279           9 :         case 'h':       goto yy1432;
    1280           0 :         case 'o':       goto yy1433;
    1281           4 :         case 'u':       goto yy1434;
    1282           0 :         case 'w':       goto yy1435;
    1283           1 :         default:        goto yy4;
    1284             :         }
    1285             : yy11:
    1286             :         YYDEBUG(11, *YYCURSOR);
    1287          19 :         yyaccept = 0;
    1288          19 :         yych = *(YYMARKER = ++YYCURSOR);
    1289             :         YYDEBUG(-1, yych);
    1290          19 :         switch (yych) {
    1291           0 :         case ')':       goto yy140;
    1292             :         case '0':
    1293           3 :         case '1':       goto yy1393;
    1294           0 :         case '2':       goto yy1394;
    1295             :         case '3':
    1296             :         case '4':
    1297             :         case '5':
    1298             :         case '6':
    1299             :         case '7':
    1300             :         case '8':
    1301           0 :         case '9':       goto yy1395;
    1302             :         case 'A':
    1303             :         case 'B':
    1304             :         case 'C':
    1305             :         case 'D':
    1306             :         case 'F':
    1307             :         case 'G':
    1308             :         case 'I':
    1309             :         case 'J':
    1310             :         case 'K':
    1311             :         case 'L':
    1312             :         case 'M':
    1313             :         case 'N':
    1314             :         case 'P':
    1315             :         case 'Q':
    1316             :         case 'R':
    1317             :         case 'S':
    1318             :         case 'T':
    1319             :         case 'V':
    1320             :         case 'X':
    1321             :         case 'Y':
    1322             :         case 'Z':
    1323             :         case 'a':
    1324             :         case 'b':
    1325             :         case 'c':
    1326             :         case 'd':
    1327             :         case 'f':
    1328             :         case 'g':
    1329             :         case 'i':
    1330             :         case 'j':
    1331             :         case 'k':
    1332             :         case 'l':
    1333             :         case 'm':
    1334             :         case 'n':
    1335             :         case 'p':
    1336             :         case 'q':
    1337             :         case 'r':
    1338             :         case 's':
    1339             :         case 't':
    1340             :         case 'v':
    1341             :         case 'x':
    1342             :         case 'y':
    1343           1 :         case 'z':       goto yy141;
    1344             :         case 'E':
    1345           0 :         case 'e':       goto yy1388;
    1346             :         case 'H':
    1347           9 :         case 'h':       goto yy1389;
    1348             :         case 'O':
    1349           3 :         case 'o':       goto yy1390;
    1350             :         case 'U':
    1351           3 :         case 'u':       goto yy1391;
    1352             :         case 'W':
    1353           0 :         case 'w':       goto yy1392;
    1354           0 :         default:        goto yy4;
    1355             :         }
    1356             : yy12:
    1357             :         YYDEBUG(12, *YYCURSOR);
    1358         212 :         yyaccept = 1;
    1359         212 :         yych = *(YYMARKER = ++YYCURSOR);
    1360         212 :         if (yych == '-') goto yy1384;
    1361         212 :         if (yych <= '/') goto yy13;
    1362         212 :         if (yych <= '9') goto yy1385;
    1363             : yy13:
    1364             :         YYDEBUG(13, *YYCURSOR);
    1365             : #line 1776 "ext/date/lib/parse_date.re"
    1366             :         {
    1367             :                 add_error(s, "Unexpected character");
    1368             :                 goto std;
    1369             :         }
    1370             : #line 1371 "ext/date/lib/parse_date.c"
    1371             : yy14:
    1372             :         YYDEBUG(14, *YYCURSOR);
    1373           6 :         yych = *++YYCURSOR;
    1374           6 :         if (yych <= 'R') {
    1375           0 :                 if (yych <= 'E') {
    1376           0 :                         if (yych <= ')') {
    1377           0 :                                 if (yych <= '(') goto yy4;
    1378           0 :                                 goto yy140;
    1379             :                         } else {
    1380           0 :                                 if (yych <= '@') goto yy4;
    1381           0 :                                 if (yych <= 'D') goto yy141;
    1382           0 :                                 goto yy1320;
    1383             :                         }
    1384             :                 } else {
    1385           0 :                         if (yych <= 'N') {
    1386           0 :                                 if (yych == 'I') goto yy1321;
    1387           0 :                                 goto yy141;
    1388             :                         } else {
    1389           0 :                                 if (yych <= 'O') goto yy1322;
    1390           0 :                                 if (yych <= 'Q') goto yy141;
    1391           0 :                                 goto yy1323;
    1392             :                         }
    1393             :                 }
    1394             :         } else {
    1395           6 :                 if (yych <= 'i') {
    1396           0 :                         if (yych <= 'd') {
    1397           0 :                                 if (yych <= 'Z') goto yy141;
    1398           0 :                                 if (yych <= '`') goto yy4;
    1399           0 :                                 goto yy146;
    1400             :                         } else {
    1401           0 :                                 if (yych <= 'e') goto yy1361;
    1402           0 :                                 if (yych <= 'h') goto yy146;
    1403           0 :                                 goto yy1362;
    1404             :                         }
    1405             :                 } else {
    1406           6 :                         if (yych <= 'q') {
    1407           0 :                                 if (yych == 'o') goto yy1363;
    1408           0 :                                 goto yy146;
    1409             :                         } else {
    1410           6 :                                 if (yych <= 'r') goto yy1364;
    1411           1 :                                 if (yych <= 'z') goto yy146;
    1412           0 :                                 goto yy4;
    1413             :                         }
    1414             :                 }
    1415             :         }
    1416             : yy15:
    1417             :         YYDEBUG(15, *YYCURSOR);
    1418          43 :         yych = *++YYCURSOR;
    1419          43 :         if (yych <= 'R') {
    1420           0 :                 if (yych <= 'E') {
    1421           0 :                         if (yych <= ')') {
    1422           0 :                                 if (yych <= '(') goto yy4;
    1423           0 :                                 goto yy140;
    1424             :                         } else {
    1425           0 :                                 if (yych <= '@') goto yy4;
    1426           0 :                                 if (yych <= 'D') goto yy141;
    1427           0 :                                 goto yy1320;
    1428             :                         }
    1429             :                 } else {
    1430           0 :                         if (yych <= 'N') {
    1431           0 :                                 if (yych == 'I') goto yy1321;
    1432           0 :                                 goto yy141;
    1433             :                         } else {
    1434           0 :                                 if (yych <= 'O') goto yy1322;
    1435           0 :                                 if (yych <= 'Q') goto yy141;
    1436           0 :                                 goto yy1323;
    1437             :                         }
    1438             :                 }
    1439             :         } else {
    1440          43 :                 if (yych <= 'i') {
    1441          39 :                         if (yych <= 'd') {
    1442           0 :                                 if (yych <= 'Z') goto yy141;
    1443           0 :                                 if (yych <= '`') goto yy4;
    1444           0 :                                 goto yy141;
    1445             :                         } else {
    1446          39 :                                 if (yych <= 'e') goto yy1320;
    1447          39 :                                 if (yych <= 'h') goto yy141;
    1448          39 :                                 goto yy1321;
    1449             :                         }
    1450             :                 } else {
    1451           4 :                         if (yych <= 'q') {
    1452           0 :                                 if (yych == 'o') goto yy1322;
    1453           0 :                                 goto yy141;
    1454             :                         } else {
    1455           4 :                                 if (yych <= 'r') goto yy1323;
    1456           0 :                                 if (yych <= 'z') goto yy141;
    1457           0 :                                 goto yy4;
    1458             :                         }
    1459             :                 }
    1460             :         }
    1461             : yy16:
    1462             :         YYDEBUG(16, *YYCURSOR);
    1463           0 :         yych = *++YYCURSOR;
    1464           0 :         if (yych <= 'A') {
    1465           0 :                 if (yych == ')') goto yy140;
    1466           0 :                 if (yych <= '@') goto yy4;
    1467           0 :                 goto yy1307;
    1468             :         } else {
    1469           0 :                 if (yych <= '`') {
    1470           0 :                         if (yych <= 'Z') goto yy141;
    1471           0 :                         goto yy4;
    1472             :                 } else {
    1473           0 :                         if (yych <= 'a') goto yy1317;
    1474           0 :                         if (yych <= 'z') goto yy146;
    1475           0 :                         goto yy4;
    1476             :                 }
    1477             :         }
    1478             : yy17:
    1479             :         YYDEBUG(17, *YYCURSOR);
    1480          15 :         yych = *++YYCURSOR;
    1481          15 :         if (yych <= 'A') {
    1482           0 :                 if (yych == ')') goto yy140;
    1483           0 :                 if (yych <= '@') goto yy4;
    1484           0 :                 goto yy1307;
    1485             :         } else {
    1486          15 :                 if (yych <= '`') {
    1487           0 :                         if (yych <= 'Z') goto yy141;
    1488           0 :                         goto yy4;
    1489             :                 } else {
    1490          15 :                         if (yych <= 'a') goto yy1307;
    1491           1 :                         if (yych <= 'z') goto yy141;
    1492           0 :                         goto yy4;
    1493             :                 }
    1494             :         }
    1495             : yy18:
    1496             :         YYDEBUG(18, *YYCURSOR);
    1497           4 :         yych = *++YYCURSOR;
    1498           4 :         if (yych <= 'A') {
    1499           0 :                 if (yych == ')') goto yy140;
    1500           0 :                 if (yych <= '@') goto yy4;
    1501           0 :                 goto yy1287;
    1502             :         } else {
    1503           4 :                 if (yych <= '`') {
    1504           0 :                         if (yych <= 'Z') goto yy141;
    1505           0 :                         goto yy4;
    1506             :                 } else {
    1507           4 :                         if (yych <= 'a') goto yy1304;
    1508           4 :                         if (yych <= 'z') goto yy146;
    1509           0 :                         goto yy4;
    1510             :                 }
    1511             :         }
    1512             : yy19:
    1513             :         YYDEBUG(19, *YYCURSOR);
    1514           7 :         yych = *++YYCURSOR;
    1515           7 :         if (yych <= 'A') {
    1516           0 :                 if (yych == ')') goto yy140;
    1517           0 :                 if (yych <= '@') goto yy4;
    1518           0 :                 goto yy1287;
    1519             :         } else {
    1520           7 :                 if (yych <= '`') {
    1521           0 :                         if (yych <= 'Z') goto yy141;
    1522           0 :                         goto yy4;
    1523             :                 } else {
    1524           7 :                         if (yych <= 'a') goto yy1287;
    1525           4 :                         if (yych <= 'z') goto yy141;
    1526           0 :                         goto yy4;
    1527             :                 }
    1528             :         }
    1529             : yy20:
    1530             :         YYDEBUG(20, *YYCURSOR);
    1531          13 :         yych = *++YYCURSOR;
    1532          13 :         if (yych <= 'U') {
    1533           0 :                 if (yych <= 'D') {
    1534           0 :                         if (yych <= ')') {
    1535           0 :                                 if (yych <= '(') goto yy4;
    1536           0 :                                 goto yy140;
    1537             :                         } else {
    1538           0 :                                 if (yych <= '@') goto yy4;
    1539           0 :                                 if (yych <= 'A') goto yy1230;
    1540           0 :                                 goto yy141;
    1541             :                         }
    1542             :                 } else {
    1543           0 :                         if (yych <= 'H') {
    1544           0 :                                 if (yych <= 'E') goto yy1229;
    1545           0 :                                 goto yy141;
    1546             :                         } else {
    1547           0 :                                 if (yych <= 'I') goto yy1231;
    1548           0 :                                 if (yych <= 'T') goto yy141;
    1549           0 :                                 goto yy1232;
    1550             :                         }
    1551             :                 }
    1552             :         } else {
    1553          13 :                 if (yych <= 'e') {
    1554           6 :                         if (yych <= '`') {
    1555           0 :                                 if (yych <= 'Z') goto yy141;
    1556           0 :                                 goto yy4;
    1557             :                         } else {
    1558           6 :                                 if (yych <= 'a') goto yy1259;
    1559           2 :                                 if (yych <= 'd') goto yy146;
    1560           2 :                                 goto yy1258;
    1561             :                         }
    1562             :                 } else {
    1563           7 :                         if (yych <= 't') {
    1564           0 :                                 if (yych == 'i') goto yy1260;
    1565           0 :                                 goto yy146;
    1566             :                         } else {
    1567           7 :                                 if (yych <= 'u') goto yy1261;
    1568           0 :                                 if (yych <= 'z') goto yy146;
    1569           0 :                                 goto yy4;
    1570             :                         }
    1571             :                 }
    1572             :         }
    1573             : yy21:
    1574             :         YYDEBUG(21, *YYCURSOR);
    1575          30 :         yych = *++YYCURSOR;
    1576          30 :         if (yych <= 'U') {
    1577           8 :                 if (yych <= 'D') {
    1578           1 :                         if (yych <= ')') {
    1579           1 :                                 if (yych <= '(') goto yy4;
    1580           0 :                                 goto yy140;
    1581             :                         } else {
    1582           0 :                                 if (yych <= '@') goto yy4;
    1583           0 :                                 if (yych <= 'A') goto yy1230;
    1584           0 :                                 goto yy141;
    1585             :                         }
    1586             :                 } else {
    1587           7 :                         if (yych <= 'H') {
    1588           0 :                                 if (yych <= 'E') goto yy1229;
    1589           0 :                                 goto yy141;
    1590             :                         } else {
    1591           7 :                                 if (yych <= 'I') goto yy1231;
    1592           7 :                                 if (yych <= 'T') goto yy141;
    1593           0 :                                 goto yy1232;
    1594             :                         }
    1595             :                 }
    1596             :         } else {
    1597          22 :                 if (yych <= 'e') {
    1598           5 :                         if (yych <= '`') {
    1599           0 :                                 if (yych <= 'Z') goto yy141;
    1600           0 :                                 goto yy4;
    1601             :                         } else {
    1602           5 :                                 if (yych <= 'a') goto yy1230;
    1603           3 :                                 if (yych <= 'd') goto yy141;
    1604           3 :                                 goto yy1229;
    1605             :                         }
    1606             :                 } else {
    1607          17 :                         if (yych <= 't') {
    1608          15 :                                 if (yych == 'i') goto yy1231;
    1609          15 :                                 goto yy141;
    1610             :                         } else {
    1611           2 :                                 if (yych <= 'u') goto yy1232;
    1612           0 :                                 if (yych <= 'z') goto yy141;
    1613           0 :                                 goto yy4;
    1614             :                         }
    1615             :                 }
    1616             :         }
    1617             : yy22:
    1618             :         YYDEBUG(22, *YYCURSOR);
    1619        2329 :         yych = *++YYCURSOR;
    1620        2329 :         if (yych <= 'L') {
    1621         605 :                 if (yych <= '@') {
    1622           0 :                         if (yych == ')') goto yy140;
    1623           0 :                         goto yy4;
    1624             :                 } else {
    1625         605 :                         if (yych == 'I') goto yy1199;
    1626         605 :                         if (yych <= 'K') goto yy141;
    1627           0 :                         goto yy1200;
    1628             :                 }
    1629             :         } else {
    1630        1724 :                 if (yych <= 'i') {
    1631         597 :                         if (yych <= 'Z') goto yy141;
    1632           0 :                         if (yych <= '`') goto yy4;
    1633           0 :                         if (yych <= 'h') goto yy146;
    1634           0 :                         goto yy1217;
    1635             :                 } else {
    1636        1127 :                         if (yych == 'l') goto yy1218;
    1637        1127 :                         if (yych <= 'z') goto yy146;
    1638           0 :                         goto yy4;
    1639             :                 }
    1640             :         }
    1641             : yy23:
    1642             :         YYDEBUG(23, *YYCURSOR);
    1643           2 :         yych = *++YYCURSOR;
    1644           2 :         if (yych <= 'L') {
    1645           0 :                 if (yych <= '@') {
    1646           0 :                         if (yych == ')') goto yy140;
    1647           0 :                         goto yy4;
    1648             :                 } else {
    1649           0 :                         if (yych == 'I') goto yy1199;
    1650           0 :                         if (yych <= 'K') goto yy141;
    1651           0 :                         goto yy1200;
    1652             :                 }
    1653             :         } else {
    1654           2 :                 if (yych <= 'i') {
    1655           2 :                         if (yych <= 'Z') goto yy141;
    1656           2 :                         if (yych <= '`') goto yy4;
    1657           2 :                         if (yych <= 'h') goto yy141;
    1658           1 :                         goto yy1199;
    1659             :                 } else {
    1660           0 :                         if (yych == 'l') goto yy1200;
    1661           0 :                         if (yych <= 'z') goto yy141;
    1662           0 :                         goto yy4;
    1663             :                 }
    1664             :         }
    1665             : yy24:
    1666             :         YYDEBUG(24, *YYCURSOR);
    1667          82 :         yych = *++YYCURSOR;
    1668          82 :         if (yych <= 'R') {
    1669           2 :                 if (yych <= ')') {
    1670           0 :                         if (yych <= '(') goto yy4;
    1671           0 :                         goto yy140;
    1672             :                 } else {
    1673           2 :                         if (yych <= '@') goto yy4;
    1674           2 :                         if (yych <= 'Q') goto yy141;
    1675           1 :                         goto yy1098;
    1676             :                 }
    1677             :         } else {
    1678          80 :                 if (yych <= 'q') {
    1679          80 :                         if (yych <= 'Z') goto yy141;
    1680          80 :                         if (yych <= '`') goto yy4;
    1681          80 :                         goto yy146;
    1682             :                 } else {
    1683           0 :                         if (yych <= 'r') goto yy1192;
    1684           0 :                         if (yych <= 'z') goto yy146;
    1685           0 :                         goto yy4;
    1686             :                 }
    1687             :         }
    1688             : yy25:
    1689             :         YYDEBUG(25, *YYCURSOR);
    1690           1 :         yych = *++YYCURSOR;
    1691           1 :         if (yych <= 'R') {
    1692           0 :                 if (yych <= ')') {
    1693           0 :                         if (yych <= '(') goto yy4;
    1694           0 :                         goto yy140;
    1695             :                 } else {
    1696           0 :                         if (yych <= '@') goto yy4;
    1697           0 :                         if (yych <= 'Q') goto yy141;
    1698           0 :                         goto yy1098;
    1699             :                 }
    1700             :         } else {
    1701           1 :                 if (yych <= 'q') {
    1702           1 :                         if (yych <= 'Z') goto yy141;
    1703           1 :                         if (yych <= '`') goto yy4;
    1704           1 :                         goto yy141;
    1705             :                 } else {
    1706           0 :                         if (yych <= 'r') goto yy1098;
    1707           0 :                         if (yych <= 'z') goto yy141;
    1708           0 :                         goto yy4;
    1709             :                 }
    1710             :         }
    1711             : yy26:
    1712             :         YYDEBUG(26, *YYCURSOR);
    1713        3051 :         yyaccept = 1;
    1714        3051 :         yych = *(YYMARKER = ++YYCURSOR);
    1715             :         YYDEBUG(-1, yych);
    1716        3051 :         switch (yych) {
    1717           0 :         case '\t':      goto yy1052;
    1718             :         case ' ':
    1719             :         case 'A':
    1720             :         case 'D':
    1721             :         case 'F':
    1722             :         case 'H':
    1723             :         case 'I':
    1724             :         case 'J':
    1725             :         case 'M':
    1726             :         case 'N':
    1727             :         case 'O':
    1728             :         case 'S':
    1729             :         case 'T':
    1730             :         case 'V':
    1731             :         case 'W':
    1732             :         case 'X':
    1733             :         case 'Y':
    1734             :         case 'a':
    1735             :         case 'd':
    1736             :         case 'f':
    1737             :         case 'h':
    1738             :         case 'j':
    1739             :         case 'm':
    1740             :         case 'o':
    1741             :         case 'w':
    1742           0 :         case 'y':       goto yy1054;
    1743           1 :         case '-':       goto yy473;
    1744           7 :         case '.':       goto yy1064;
    1745           0 :         case '/':       goto yy472;
    1746        1921 :         case '0':       goto yy1097;
    1747             :         case '1':
    1748             :         case '2':
    1749             :         case '3':
    1750             :         case '4':
    1751             :         case '5':
    1752             :         case '6':
    1753             :         case '7':
    1754             :         case '8':
    1755        1113 :         case '9':       goto yy1096;
    1756           0 :         case ':':       goto yy1065;
    1757           0 :         case 'n':       goto yy470;
    1758           0 :         case 'r':       goto yy471;
    1759           0 :         case 's':       goto yy464;
    1760           0 :         case 't':       goto yy468;
    1761           9 :         default:        goto yy13;
    1762             :         }
    1763             : yy27:
    1764             :         YYDEBUG(27, *YYCURSOR);
    1765        1919 :         yyaccept = 1;
    1766        1919 :         yych = *(YYMARKER = ++YYCURSOR);
    1767             :         YYDEBUG(-1, yych);
    1768        1919 :         switch (yych) {
    1769           0 :         case '\t':      goto yy460;
    1770             :         case ' ':
    1771             :         case 'A':
    1772             :         case 'D':
    1773             :         case 'F':
    1774             :         case 'H':
    1775             :         case 'I':
    1776             :         case 'J':
    1777             :         case 'M':
    1778             :         case 'N':
    1779             :         case 'O':
    1780             :         case 'P':
    1781             :         case 'S':
    1782             :         case 'T':
    1783             :         case 'V':
    1784             :         case 'W':
    1785             :         case 'X':
    1786             :         case 'Y':
    1787             :         case 'a':
    1788             :         case 'd':
    1789             :         case 'f':
    1790             :         case 'h':
    1791             :         case 'j':
    1792             :         case 'm':
    1793             :         case 'o':
    1794             :         case 'p':
    1795             :         case 'w':
    1796          25 :         case 'y':       goto yy462;
    1797           0 :         case '-':       goto yy473;
    1798           0 :         case '.':       goto yy474;
    1799           0 :         case '/':       goto yy472;
    1800             :         case '0':
    1801             :         case '1':
    1802         121 :         case '2':       goto yy1096;
    1803             :         case '3':
    1804             :         case '4':
    1805             :         case '5':
    1806             :         case '6':
    1807             :         case '7':
    1808             :         case '8':
    1809        1748 :         case '9':       goto yy1063;
    1810           4 :         case ':':       goto yy483;
    1811           0 :         case 'n':       goto yy470;
    1812           0 :         case 'r':       goto yy471;
    1813           0 :         case 's':       goto yy464;
    1814           0 :         case 't':       goto yy468;
    1815          21 :         default:        goto yy13;
    1816             :         }
    1817             : yy28:
    1818             :         YYDEBUG(28, *YYCURSOR);
    1819        5654 :         yyaccept = 1;
    1820        5654 :         yych = *(YYMARKER = ++YYCURSOR);
    1821             :         YYDEBUG(-1, yych);
    1822        5654 :         switch (yych) {
    1823           0 :         case '\t':      goto yy460;
    1824             :         case ' ':
    1825             :         case 'A':
    1826             :         case 'D':
    1827             :         case 'F':
    1828             :         case 'H':
    1829             :         case 'I':
    1830             :         case 'J':
    1831             :         case 'M':
    1832             :         case 'N':
    1833             :         case 'O':
    1834             :         case 'P':
    1835             :         case 'S':
    1836             :         case 'T':
    1837             :         case 'V':
    1838             :         case 'W':
    1839             :         case 'X':
    1840             :         case 'Y':
    1841             :         case 'a':
    1842             :         case 'd':
    1843             :         case 'f':
    1844             :         case 'h':
    1845             :         case 'j':
    1846             :         case 'm':
    1847             :         case 'o':
    1848             :         case 'p':
    1849             :         case 'w':
    1850           5 :         case 'y':       goto yy462;
    1851           1 :         case '-':       goto yy473;
    1852           1 :         case '.':       goto yy474;
    1853           0 :         case '/':       goto yy472;
    1854             :         case '0':
    1855             :         case '1':
    1856             :         case '2':
    1857             :         case '3':
    1858        5603 :         case '4':       goto yy1063;
    1859             :         case '5':
    1860             :         case '6':
    1861             :         case '7':
    1862             :         case '8':
    1863          44 :         case '9':       goto yy1050;
    1864           0 :         case ':':       goto yy483;
    1865           0 :         case 'n':       goto yy470;
    1866           0 :         case 'r':       goto yy471;
    1867           0 :         case 's':       goto yy464;
    1868           0 :         case 't':       goto yy468;
    1869           0 :         default:        goto yy13;
    1870             :         }
    1871             : yy29:
    1872             :         YYDEBUG(29, *YYCURSOR);
    1873          16 :         yyaccept = 1;
    1874          16 :         yych = *(YYMARKER = ++YYCURSOR);
    1875             :         YYDEBUG(-1, yych);
    1876          16 :         switch (yych) {
    1877           0 :         case '\t':      goto yy460;
    1878             :         case ' ':
    1879             :         case 'A':
    1880             :         case 'D':
    1881             :         case 'F':
    1882             :         case 'H':
    1883             :         case 'I':
    1884             :         case 'J':
    1885             :         case 'M':
    1886             :         case 'N':
    1887             :         case 'O':
    1888             :         case 'P':
    1889             :         case 'S':
    1890             :         case 'T':
    1891             :         case 'V':
    1892             :         case 'W':
    1893             :         case 'X':
    1894             :         case 'Y':
    1895             :         case 'a':
    1896             :         case 'd':
    1897             :         case 'f':
    1898             :         case 'h':
    1899             :         case 'j':
    1900             :         case 'm':
    1901             :         case 'o':
    1902             :         case 'p':
    1903             :         case 'w':
    1904          14 :         case 'y':       goto yy462;
    1905           1 :         case '-':       goto yy473;
    1906           0 :         case '.':       goto yy474;
    1907           0 :         case '/':       goto yy472;
    1908             :         case '0':
    1909           1 :         case '1':       goto yy1050;
    1910             :         case '2':
    1911             :         case '3':
    1912             :         case '4':
    1913             :         case '5':
    1914             :         case '6':
    1915             :         case '7':
    1916             :         case '8':
    1917           0 :         case '9':       goto yy469;
    1918           0 :         case ':':       goto yy483;
    1919           0 :         case 'n':       goto yy470;
    1920           0 :         case 'r':       goto yy471;
    1921           0 :         case 's':       goto yy464;
    1922           0 :         case 't':       goto yy468;
    1923           0 :         default:        goto yy13;
    1924             :         }
    1925             : yy30:
    1926             :         YYDEBUG(30, *YYCURSOR);
    1927          33 :         yyaccept = 1;
    1928          33 :         yych = *(YYMARKER = ++YYCURSOR);
    1929             :         YYDEBUG(-1, yych);
    1930          33 :         switch (yych) {
    1931           0 :         case '\t':      goto yy460;
    1932             :         case ' ':
    1933             :         case 'A':
    1934             :         case 'D':
    1935             :         case 'F':
    1936             :         case 'H':
    1937             :         case 'I':
    1938             :         case 'J':
    1939             :         case 'M':
    1940             :         case 'N':
    1941             :         case 'O':
    1942             :         case 'P':
    1943             :         case 'S':
    1944             :         case 'T':
    1945             :         case 'V':
    1946             :         case 'W':
    1947             :         case 'X':
    1948             :         case 'Y':
    1949             :         case 'a':
    1950             :         case 'd':
    1951             :         case 'f':
    1952             :         case 'h':
    1953             :         case 'j':
    1954             :         case 'm':
    1955             :         case 'o':
    1956             :         case 'p':
    1957             :         case 'w':
    1958           2 :         case 'y':       goto yy462;
    1959           3 :         case '-':       goto yy473;
    1960           1 :         case '.':       goto yy474;
    1961           0 :         case '/':       goto yy472;
    1962             :         case '0':
    1963             :         case '1':
    1964             :         case '2':
    1965             :         case '3':
    1966             :         case '4':
    1967             :         case '5':
    1968             :         case '6':
    1969             :         case '7':
    1970             :         case '8':
    1971           3 :         case '9':       goto yy469;
    1972           3 :         case ':':       goto yy483;
    1973           0 :         case 'n':       goto yy470;
    1974           0 :         case 'r':       goto yy471;
    1975           0 :         case 's':       goto yy464;
    1976           0 :         case 't':       goto yy468;
    1977          21 :         default:        goto yy13;
    1978             :         }
    1979             : yy31:
    1980             :         YYDEBUG(31, *YYCURSOR);
    1981         448 :         yyaccept = 1;
    1982         448 :         yych = *(YYMARKER = ++YYCURSOR);
    1983         448 :         if (yybm[0+yych] & 4) {
    1984           5 :                 goto yy58;
    1985             :         }
    1986             :         YYDEBUG(-1, yych);
    1987         443 :         switch (yych) {
    1988             :         case '+':
    1989           4 :         case '-':       goto yy440;
    1990             :         case '0':
    1991         288 :         case '1':       goto yy437;
    1992          67 :         case '2':       goto yy438;
    1993             :         case '3':
    1994             :         case '4':
    1995             :         case '5':
    1996             :         case '6':
    1997             :         case '7':
    1998             :         case '8':
    1999          84 :         case '9':       goto yy439;
    2000           0 :         default:        goto yy13;
    2001             :         }
    2002             : yy32:
    2003             :         YYDEBUG(32, *YYCURSOR);
    2004          22 :         yyaccept = 0;
    2005          22 :         yych = *(YYMARKER = ++YYCURSOR);
    2006          22 :         if (yych <= '9') {
    2007           0 :                 if (yych <= '(') {
    2008           0 :                         if (yych <= '\t') {
    2009           0 :                                 if (yych <= 0x08) goto yy4;
    2010           0 :                                 goto yy196;
    2011             :                         } else {
    2012           0 :                                 if (yych == ' ') goto yy196;
    2013           0 :                                 goto yy4;
    2014             :                         }
    2015             :                 } else {
    2016           0 :                         if (yych <= ',') {
    2017           0 :                                 if (yych <= ')') goto yy140;
    2018           0 :                                 goto yy4;
    2019             :                         } else {
    2020           0 :                                 if (yych == '/') goto yy4;
    2021           0 :                                 goto yy196;
    2022             :                         }
    2023             :                 }
    2024             :         } else {
    2025          22 :                 if (yych <= 'V') {
    2026           0 :                         if (yych <= 'H') {
    2027           0 :                                 if (yych <= '@') goto yy4;
    2028           0 :                                 goto yy141;
    2029             :                         } else {
    2030           0 :                                 if (yych <= 'I') goto yy436;
    2031           0 :                                 if (yych <= 'U') goto yy141;
    2032           0 :                                 goto yy435;
    2033             :                         }
    2034             :                 } else {
    2035          22 :                         if (yych <= 'Z') {
    2036           0 :                                 if (yych == 'X') goto yy435;
    2037           0 :                                 goto yy141;
    2038             :                         } else {
    2039          22 :                                 if (yych <= '`') goto yy4;
    2040          22 :                                 if (yych <= 'z') goto yy146;
    2041           0 :                                 goto yy4;
    2042             :                         }
    2043             :                 }
    2044             :         }
    2045             : yy33:
    2046             :         YYDEBUG(33, *YYCURSOR);
    2047           0 :         yyaccept = 0;
    2048           0 :         yych = *(YYMARKER = ++YYCURSOR);
    2049           0 :         if (yych <= '.') {
    2050           0 :                 if (yych <= ' ') {
    2051           0 :                         if (yych == '\t') goto yy196;
    2052           0 :                         if (yych <= 0x1F) goto yy4;
    2053           0 :                         goto yy196;
    2054             :                 } else {
    2055           0 :                         if (yych == ')') goto yy140;
    2056           0 :                         if (yych <= ',') goto yy4;
    2057           0 :                         goto yy196;
    2058             :                 }
    2059             :         } else {
    2060           0 :                 if (yych <= 'H') {
    2061           0 :                         if (yych <= '/') goto yy4;
    2062           0 :                         if (yych <= '9') goto yy196;
    2063           0 :                         if (yych <= '@') goto yy4;
    2064           0 :                         goto yy141;
    2065             :                 } else {
    2066           0 :                         if (yych <= 'Z') {
    2067           0 :                                 if (yych <= 'I') goto yy432;
    2068           0 :                                 goto yy141;
    2069             :                         } else {
    2070           0 :                                 if (yych <= '`') goto yy4;
    2071           0 :                                 if (yych <= 'z') goto yy146;
    2072           0 :                                 goto yy4;
    2073             :                         }
    2074             :                 }
    2075             :         }
    2076             : yy34:
    2077             :         YYDEBUG(34, *YYCURSOR);
    2078           0 :         yyaccept = 0;
    2079           0 :         yych = *(YYMARKER = ++YYCURSOR);
    2080           0 :         if (yych <= '.') {
    2081           0 :                 if (yych <= ' ') {
    2082           0 :                         if (yych == '\t') goto yy196;
    2083           0 :                         if (yych <= 0x1F) goto yy4;
    2084           0 :                         goto yy196;
    2085             :                 } else {
    2086           0 :                         if (yych == ')') goto yy140;
    2087           0 :                         if (yych <= ',') goto yy4;
    2088           0 :                         goto yy196;
    2089             :                 }
    2090             :         } else {
    2091           0 :                 if (yych <= 'H') {
    2092           0 :                         if (yych <= '/') goto yy4;
    2093           0 :                         if (yych <= '9') goto yy196;
    2094           0 :                         if (yych <= '@') goto yy4;
    2095           0 :                         goto yy141;
    2096             :                 } else {
    2097           0 :                         if (yych <= 'Z') {
    2098           0 :                                 if (yych <= 'I') goto yy430;
    2099           0 :                                 goto yy141;
    2100             :                         } else {
    2101           0 :                                 if (yych <= '`') goto yy4;
    2102           0 :                                 if (yych <= 'z') goto yy146;
    2103           0 :                                 goto yy4;
    2104             :                         }
    2105             :                 }
    2106             :         }
    2107             : yy35:
    2108             :         YYDEBUG(35, *YYCURSOR);
    2109          20 :         yych = *++YYCURSOR;
    2110          20 :         if (yych <= 'U') {
    2111           1 :                 if (yych <= '@') {
    2112           0 :                         if (yych == ')') goto yy140;
    2113           0 :                         goto yy4;
    2114             :                 } else {
    2115           1 :                         if (yych <= 'A') goto yy413;
    2116           0 :                         if (yych <= 'T') goto yy141;
    2117           0 :                         goto yy412;
    2118             :                 }
    2119             :         } else {
    2120          19 :                 if (yych <= 'a') {
    2121          13 :                         if (yych <= 'Z') goto yy141;
    2122          13 :                         if (yych <= '`') goto yy4;
    2123          13 :                         goto yy422;
    2124             :                 } else {
    2125           6 :                         if (yych == 'u') goto yy421;
    2126           0 :                         if (yych <= 'z') goto yy146;
    2127           0 :                         goto yy4;
    2128             :                 }
    2129             :         }
    2130             : yy36:
    2131             :         YYDEBUG(36, *YYCURSOR);
    2132           1 :         yych = *++YYCURSOR;
    2133           1 :         if (yych <= 'U') {
    2134           0 :                 if (yych <= '@') {
    2135           0 :                         if (yych == ')') goto yy140;
    2136           0 :                         goto yy4;
    2137             :                 } else {
    2138           0 :                         if (yych <= 'A') goto yy413;
    2139           0 :                         if (yych <= 'T') goto yy141;
    2140           0 :                         goto yy412;
    2141             :                 }
    2142             :         } else {
    2143           1 :                 if (yych <= 'a') {
    2144           0 :                         if (yych <= 'Z') goto yy141;
    2145           0 :                         if (yych <= '`') goto yy4;
    2146           0 :                         goto yy413;
    2147             :                 } else {
    2148           1 :                         if (yych == 'u') goto yy412;
    2149           0 :                         if (yych <= 'z') goto yy141;
    2150           0 :                         goto yy4;
    2151             :                 }
    2152             :         }
    2153             : yy37:
    2154             :         YYDEBUG(37, *YYCURSOR);
    2155         679 :         yych = *++YYCURSOR;
    2156         679 :         if (yych <= 'U') {
    2157          10 :                 if (yych <= 'F') {
    2158          10 :                         if (yych == ')') goto yy140;
    2159          10 :                         if (yych <= '@') goto yy4;
    2160           0 :                         goto yy141;
    2161             :                 } else {
    2162           0 :                         if (yych <= 'O') {
    2163           0 :                                 if (yych <= 'G') goto yy391;
    2164           0 :                                 goto yy141;
    2165             :                         } else {
    2166           0 :                                 if (yych <= 'P') goto yy390;
    2167           0 :                                 if (yych <= 'T') goto yy141;
    2168           0 :                                 goto yy389;
    2169             :                         }
    2170             :                 }
    2171             :         } else {
    2172         669 :                 if (yych <= 'o') {
    2173         439 :                         if (yych <= '`') {
    2174           0 :                                 if (yych <= 'Z') goto yy141;
    2175           0 :                                 goto yy4;
    2176             :                         } else {
    2177         439 :                                 if (yych == 'g') goto yy403;
    2178         439 :                                 goto yy146;
    2179             :                         }
    2180             :                 } else {
    2181         230 :                         if (yych <= 't') {
    2182         193 :                                 if (yych <= 'p') goto yy402;
    2183         193 :                                 goto yy146;
    2184             :                         } else {
    2185          37 :                                 if (yych <= 'u') goto yy401;
    2186           0 :                                 if (yych <= 'z') goto yy146;
    2187           0 :                                 goto yy4;
    2188             :                         }
    2189             :                 }
    2190             :         }
    2191             : yy38:
    2192             :         YYDEBUG(38, *YYCURSOR);
    2193          13 :         yych = *++YYCURSOR;
    2194          13 :         if (yych <= 'U') {
    2195           4 :                 if (yych <= 'F') {
    2196           4 :                         if (yych == ')') goto yy140;
    2197           4 :                         if (yych <= '@') goto yy4;
    2198           0 :                         goto yy141;
    2199             :                 } else {
    2200           0 :                         if (yych <= 'O') {
    2201           0 :                                 if (yych <= 'G') goto yy391;
    2202           0 :                                 goto yy141;
    2203             :                         } else {
    2204           0 :                                 if (yych <= 'P') goto yy390;
    2205           0 :                                 if (yych <= 'T') goto yy141;
    2206           0 :                                 goto yy389;
    2207             :                         }
    2208             :                 }
    2209             :         } else {
    2210           9 :                 if (yych <= 'o') {
    2211           6 :                         if (yych <= '`') {
    2212           0 :                                 if (yych <= 'Z') goto yy141;
    2213           0 :                                 goto yy4;
    2214             :                         } else {
    2215           6 :                                 if (yych == 'g') goto yy391;
    2216           0 :                                 goto yy141;
    2217             :                         }
    2218             :                 } else {
    2219           3 :                         if (yych <= 't') {
    2220           3 :                                 if (yych <= 'p') goto yy390;
    2221           3 :                                 goto yy141;
    2222             :                         } else {
    2223           0 :                                 if (yych <= 'u') goto yy389;
    2224           0 :                                 if (yych <= 'z') goto yy141;
    2225           0 :                                 goto yy4;
    2226             :                         }
    2227             :                 }
    2228             :         }
    2229             : yy39:
    2230             :         YYDEBUG(39, *YYCURSOR);
    2231           7 :         yych = *++YYCURSOR;
    2232           7 :         if (yych <= 'C') {
    2233           0 :                 if (yych <= ')') {
    2234           0 :                         if (yych <= '(') goto yy4;
    2235           0 :                         goto yy140;
    2236             :                 } else {
    2237           0 :                         if (yych <= '@') goto yy4;
    2238           0 :                         if (yych <= 'B') goto yy141;
    2239           0 :                         goto yy379;
    2240             :                 }
    2241             :         } else {
    2242           7 :                 if (yych <= 'b') {
    2243           1 :                         if (yych <= 'Z') goto yy141;
    2244           0 :                         if (yych <= '`') goto yy4;
    2245           0 :                         goto yy146;
    2246             :                 } else {
    2247           6 :                         if (yych <= 'c') goto yy384;
    2248           0 :                         if (yych <= 'z') goto yy146;
    2249           0 :                         goto yy4;
    2250             :                 }
    2251             :         }
    2252             : yy40:
    2253             :         YYDEBUG(40, *YYCURSOR);
    2254          11 :         yych = *++YYCURSOR;
    2255          11 :         if (yych <= 'C') {
    2256           0 :                 if (yych <= ')') {
    2257           0 :                         if (yych <= '(') goto yy4;
    2258           0 :                         goto yy140;
    2259             :                 } else {
    2260           0 :                         if (yych <= '@') goto yy4;
    2261           0 :                         if (yych <= 'B') goto yy141;
    2262           0 :                         goto yy379;
    2263             :                 }
    2264             :         } else {
    2265          11 :                 if (yych <= 'b') {
    2266           7 :                         if (yych <= 'Z') goto yy141;
    2267           7 :                         if (yych <= '`') goto yy4;
    2268           7 :                         goto yy141;
    2269             :                 } else {
    2270           4 :                         if (yych <= 'c') goto yy379;
    2271           1 :                         if (yych <= 'z') goto yy141;
    2272           0 :                         goto yy4;
    2273             :                 }
    2274             :         }
    2275             : yy41:
    2276             :         YYDEBUG(41, *YYCURSOR);
    2277          18 :         yych = *++YYCURSOR;
    2278          18 :         if (yych <= 'E') {
    2279           0 :                 if (yych <= ')') {
    2280           0 :                         if (yych <= '(') goto yy4;
    2281           0 :                         goto yy140;
    2282             :                 } else {
    2283           0 :                         if (yych <= '@') goto yy4;
    2284           0 :                         if (yych <= 'D') goto yy141;
    2285           0 :                         goto yy192;
    2286             :                 }
    2287             :         } else {
    2288          18 :                 if (yych <= 'd') {
    2289           0 :                         if (yych <= 'Z') goto yy141;
    2290           0 :                         if (yych <= '`') goto yy4;
    2291           0 :                         goto yy146;
    2292             :                 } else {
    2293          18 :                         if (yych <= 'e') goto yy370;
    2294           0 :                         if (yych <= 'z') goto yy146;
    2295           0 :                         goto yy4;
    2296             :                 }
    2297             :         }
    2298             : yy42:
    2299             :         YYDEBUG(42, *YYCURSOR);
    2300           2 :         yych = *++YYCURSOR;
    2301           2 :         if (yych <= 'E') {
    2302           0 :                 if (yych <= ')') {
    2303           0 :                         if (yych <= '(') goto yy4;
    2304           0 :                         goto yy140;
    2305             :                 } else {
    2306           0 :                         if (yych <= '@') goto yy4;
    2307           0 :                         if (yych <= 'D') goto yy141;
    2308           0 :                         goto yy192;
    2309             :                 }
    2310             :         } else {
    2311           2 :                 if (yych <= 'd') {
    2312           0 :                         if (yych <= 'Z') goto yy141;
    2313           0 :                         if (yych <= '`') goto yy4;
    2314           0 :                         goto yy141;
    2315             :                 } else {
    2316           2 :                         if (yych <= 'e') goto yy192;
    2317           2 :                         if (yych <= 'z') goto yy141;
    2318           0 :                         goto yy4;
    2319             :                 }
    2320             :         }
    2321             : yy43:
    2322             :         YYDEBUG(43, *YYCURSOR);
    2323           3 :         yych = *++YYCURSOR;
    2324           3 :         if (yych <= 'E') {
    2325           1 :                 if (yych <= ')') {
    2326           0 :                         if (yych <= '(') goto yy4;
    2327           0 :                         goto yy140;
    2328             :                 } else {
    2329           1 :                         if (yych <= '@') goto yy4;
    2330           1 :                         if (yych <= 'D') goto yy141;
    2331           1 :                         goto yy165;
    2332             :                 }
    2333             :         } else {
    2334           2 :                 if (yych <= 'd') {
    2335           0 :                         if (yych <= 'Z') goto yy141;
    2336           0 :                         if (yych <= '`') goto yy4;
    2337           0 :                         goto yy146;
    2338             :                 } else {
    2339           2 :                         if (yych <= 'e') goto yy179;
    2340           0 :                         if (yych <= 'z') goto yy146;
    2341           0 :                         goto yy4;
    2342             :                 }
    2343             :         }
    2344             : yy44:
    2345             :         YYDEBUG(44, *YYCURSOR);
    2346          10 :         yych = *++YYCURSOR;
    2347          10 :         if (yych <= 'E') {
    2348           0 :                 if (yych <= ')') {
    2349           0 :                         if (yych <= '(') goto yy4;
    2350           0 :                         goto yy140;
    2351             :                 } else {
    2352           0 :                         if (yych <= '@') goto yy4;
    2353           0 :                         if (yych <= 'D') goto yy141;
    2354           0 :                         goto yy165;
    2355             :                 }
    2356             :         } else {
    2357          10 :                 if (yych <= 'd') {
    2358           0 :                         if (yych <= 'Z') goto yy141;
    2359           0 :                         if (yych <= '`') goto yy4;
    2360           0 :                         goto yy141;
    2361             :                 } else {
    2362          10 :                         if (yych <= 'e') goto yy165;
    2363           8 :                         if (yych <= 'z') goto yy141;
    2364           0 :                         goto yy4;
    2365             :                 }
    2366             :         }
    2367             : yy45:
    2368             :         YYDEBUG(45, *YYCURSOR);
    2369          31 :         yych = *++YYCURSOR;
    2370          31 :         if (yych <= 'L') {
    2371           1 :                 if (yych == ')') goto yy140;
    2372           1 :                 if (yych <= '@') goto yy4;
    2373           1 :                 goto yy141;
    2374             :         } else {
    2375          30 :                 if (yych <= 'Z') {
    2376          30 :                         if (yych <= 'M') goto yy157;
    2377           0 :                         goto yy141;
    2378             :                 } else {
    2379           0 :                         if (yych <= '`') goto yy4;
    2380           0 :                         if (yych <= 'z') goto yy146;
    2381           0 :                         goto yy4;
    2382             :                 }
    2383             :         }
    2384             : yy46:
    2385             :         YYDEBUG(46, *YYCURSOR);
    2386           1 :         yych = *++YYCURSOR;
    2387           1 :         if (yych <= '@') goto yy13;
    2388           1 :         if (yych <= 'Z') goto yy156;
    2389           0 :         if (yych <= '`') goto yy13;
    2390           0 :         if (yych <= 'z') goto yy156;
    2391           0 :         goto yy13;
    2392             : yy47:
    2393             :         YYDEBUG(47, *YYCURSOR);
    2394         265 :         yych = *++YYCURSOR;
    2395         265 :         if (yych <= '@') {
    2396          12 :                 if (yych == ')') goto yy140;
    2397          12 :                 goto yy4;
    2398             :         } else {
    2399         253 :                 if (yych <= 'Z') goto yy141;
    2400          19 :                 if (yych <= '`') goto yy4;
    2401          19 :                 if (yych <= 'z') goto yy146;
    2402           0 :                 goto yy4;
    2403             :         }
    2404             : yy48:
    2405             :         YYDEBUG(48, *YYCURSOR);
    2406          13 :         yych = *++YYCURSOR;
    2407          13 :         if (yych <= '@') {
    2408           3 :                 if (yych == ')') goto yy140;
    2409           3 :                 goto yy4;
    2410             :         } else {
    2411          10 :                 if (yych <= 'Z') goto yy141;
    2412          10 :                 if (yych <= '`') goto yy4;
    2413          10 :                 if (yych <= 'z') goto yy141;
    2414           1 :                 goto yy4;
    2415             :         }
    2416             : yy49:
    2417             :         YYDEBUG(49, *YYCURSOR);
    2418        8106 :         yyaccept = 2;
    2419        8106 :         yych = *(YYMARKER = ++YYCURSOR);
    2420        8106 :         if (yybm[0+yych] & 4) {
    2421           0 :                 goto yy58;
    2422             :         }
    2423        8106 :         if (yych <= '/') goto yy50;
    2424        7843 :         if (yych <= '9') goto yy55;
    2425             : yy50:
    2426             :         YYDEBUG(50, *YYCURSOR);
    2427             : #line 1765 "ext/date/lib/parse_date.re"
    2428             :         {
    2429             :                 goto std;
    2430             :         }
    2431             : #line 2432 "ext/date/lib/parse_date.c"
    2432             : yy51:
    2433             :         YYDEBUG(51, *YYCURSOR);
    2434          21 :         yych = *++YYCURSOR;
    2435          21 :         goto yy50;
    2436             : yy52:
    2437             :         YYDEBUG(52, *YYCURSOR);
    2438        7935 :         ++YYCURSOR;
    2439             :         YYDEBUG(53, *YYCURSOR);
    2440             : #line 1770 "ext/date/lib/parse_date.re"
    2441             :         {
    2442             :                 s->pos = cursor; s->line++;
    2443             :                 goto std;
    2444             :         }
    2445             : #line 2446 "ext/date/lib/parse_date.c"
    2446             : yy54:
    2447             :         YYDEBUG(54, *YYCURSOR);
    2448          23 :         yych = *++YYCURSOR;
    2449          23 :         goto yy13;
    2450             : yy55:
    2451             :         YYDEBUG(55, *YYCURSOR);
    2452        8939 :         ++YYCURSOR;
    2453        8939 :         if ((YYLIMIT - YYCURSOR) < 11) YYFILL(11);
    2454        8939 :         yych = *YYCURSOR;
    2455             :         YYDEBUG(56, *YYCURSOR);
    2456        8939 :         if (yybm[0+yych] & 2) {
    2457        4506 :                 goto yy55;
    2458             :         }
    2459        4433 :         if (yych <= 'W') {
    2460        4425 :                 if (yych <= 'F') {
    2461        4425 :                         if (yych <= ' ') {
    2462         105 :                                 if (yych == '\t') goto yy60;
    2463         105 :                                 if (yych >= ' ') goto yy60;
    2464             :                         } else {
    2465        4320 :                                 if (yych == 'D') goto yy65;
    2466        4320 :                                 if (yych >= 'F') goto yy66;
    2467             :                         }
    2468             :                 } else {
    2469           0 :                         if (yych <= 'M') {
    2470           0 :                                 if (yych == 'H') goto yy64;
    2471           0 :                                 if (yych >= 'M') goto yy63;
    2472             :                         } else {
    2473           0 :                                 if (yych <= 'S') {
    2474           0 :                                         if (yych >= 'S') goto yy62;
    2475             :                                 } else {
    2476           0 :                                         if (yych <= 'T') goto yy69;
    2477           0 :                                         if (yych >= 'W') goto yy68;
    2478             :                                 }
    2479             :                         }
    2480             :                 }
    2481             :         } else {
    2482           8 :                 if (yych <= 'l') {
    2483           5 :                         if (yych <= 'd') {
    2484           5 :                                 if (yych == 'Y') goto yy67;
    2485           5 :                                 if (yych >= 'd') goto yy65;
    2486             :                         } else {
    2487           0 :                                 if (yych <= 'f') {
    2488           0 :                                         if (yych >= 'f') goto yy66;
    2489             :                                 } else {
    2490           0 :                                         if (yych == 'h') goto yy64;
    2491             :                                 }
    2492             :                         }
    2493             :                 } else {
    2494           3 :                         if (yych <= 't') {
    2495           3 :                                 if (yych <= 'm') goto yy63;
    2496           3 :                                 if (yych <= 'r') goto yy57;
    2497           1 :                                 if (yych <= 's') goto yy62;
    2498           1 :                                 goto yy69;
    2499             :                         } else {
    2500           0 :                                 if (yych <= 'w') {
    2501           0 :                                         if (yych >= 'w') goto yy68;
    2502             :                                 } else {
    2503           0 :                                         if (yych == 'y') goto yy67;
    2504             :                                 }
    2505             :                         }
    2506             :                 }
    2507             :         }
    2508             : yy57:
    2509             :         YYDEBUG(57, *YYCURSOR);
    2510        5269 :         YYCURSOR = YYMARKER;
    2511        5269 :         if (yyaccept <= 16) {
    2512        5236 :                 if (yyaccept <= 8) {
    2513        4377 :                         if (yyaccept <= 4) {
    2514        4374 :                                 if (yyaccept <= 2) {
    2515        4374 :                                         if (yyaccept <= 1) {
    2516          26 :                                                 if (yyaccept <= 0) {
    2517          15 :                                                         goto yy4;
    2518             :                                                 } else {
    2519          11 :                                                         goto yy13;
    2520             :                                                 }
    2521             :                                         } else {
    2522        4348 :                                                 goto yy50;
    2523             :                                         }
    2524             :                                 } else {
    2525           0 :                                         if (yyaccept <= 3) {
    2526           0 :                                                 goto yy73;
    2527             :                                         } else {
    2528           0 :                                                 goto yy167;
    2529             :                                         }
    2530             :                                 }
    2531             :                         } else {
    2532           3 :                                 if (yyaccept <= 6) {
    2533           0 :                                         if (yyaccept <= 5) {
    2534           0 :                                                 goto yy194;
    2535             :                                         } else {
    2536           0 :                                                 goto yy199;
    2537             :                                         }
    2538             :                                 } else {
    2539           3 :                                         if (yyaccept <= 7) {
    2540           3 :                                                 goto yy223;
    2541             :                                         } else {
    2542           0 :                                                 goto yy295;
    2543             :                                         }
    2544             :                                 }
    2545             :                         }
    2546             :                 } else {
    2547         859 :                         if (yyaccept <= 12) {
    2548         859 :                                 if (yyaccept <= 10) {
    2549           0 :                                         if (yyaccept <= 9) {
    2550           0 :                                                 goto yy393;
    2551             :                                         } else {
    2552           0 :                                                 goto yy476;
    2553             :                                         }
    2554             :                                 } else {
    2555         859 :                                         if (yyaccept <= 11) {
    2556         859 :                                                 goto yy491;
    2557             :                                         } else {
    2558           0 :                                                 goto yy612;
    2559             :                                         }
    2560             :                                 }
    2561             :                         } else {
    2562           0 :                                 if (yyaccept <= 14) {
    2563           0 :                                         if (yyaccept <= 13) {
    2564           0 :                                                 goto yy657;
    2565             :                                         } else {
    2566           0 :                                                 goto yy667;
    2567             :                                         }
    2568             :                                 } else {
    2569           0 :                                         if (yyaccept <= 15) {
    2570           0 :                                                 goto yy764;
    2571             :                                         } else {
    2572           0 :                                                 goto yy784;
    2573             :                                         }
    2574             :                                 }
    2575             :                         }
    2576             :                 }
    2577             :         } else {
    2578          33 :                 if (yyaccept <= 25) {
    2579          20 :                         if (yyaccept <= 21) {
    2580           8 :                                 if (yyaccept <= 19) {
    2581           6 :                                         if (yyaccept <= 18) {
    2582           0 :                                                 if (yyaccept <= 17) {
    2583           0 :                                                         goto yy815;
    2584             :                                                 } else {
    2585           0 :                                                         goto yy822;
    2586             :                                                 }
    2587             :                                         } else {
    2588           6 :                                                 goto yy849;
    2589             :                                         }
    2590             :                                 } else {
    2591           2 :                                         if (yyaccept <= 20) {
    2592           0 :                                                 goto yy794;
    2593             :                                         } else {
    2594           2 :                                                 goto yy455;
    2595             :                                         }
    2596             :                                 }
    2597             :                         } else {
    2598          12 :                                 if (yyaccept <= 23) {
    2599           1 :                                         if (yyaccept <= 22) {
    2600           1 :                                                 goto yy974;
    2601             :                                         } else {
    2602           0 :                                                 goto yy843;
    2603             :                                         }
    2604             :                                 } else {
    2605          11 :                                         if (yyaccept <= 24) {
    2606           9 :                                                 goto yy1068;
    2607             :                                         } else {
    2608           2 :                                                 goto yy1076;
    2609             :                                         }
    2610             :                                 }
    2611             :                         }
    2612             :                 } else {
    2613          13 :                         if (yyaccept <= 29) {
    2614          13 :                                 if (yyaccept <= 27) {
    2615          13 :                                         if (yyaccept <= 26) {
    2616          13 :                                                 goto yy1118;
    2617             :                                         } else {
    2618           0 :                                                 goto yy1142;
    2619             :                                         }
    2620             :                                 } else {
    2621           0 :                                         if (yyaccept <= 28) {
    2622           0 :                                                 goto yy1295;
    2623             :                                         } else {
    2624           0 :                                                 goto yy1417;
    2625             :                                         }
    2626             :                                 }
    2627             :                         } else {
    2628           0 :                                 if (yyaccept <= 31) {
    2629           0 :                                         if (yyaccept <= 30) {
    2630           0 :                                                 goto yy1420;
    2631             :                                         } else {
    2632           0 :                                                 goto yy1500;
    2633             :                                         }
    2634             :                                 } else {
    2635           0 :                                         if (yyaccept <= 32) {
    2636           0 :                                                 goto yy1508;
    2637             :                                         } else {
    2638           0 :                                                 goto yy1531;
    2639             :                                         }
    2640             :                                 }
    2641             :                         }
    2642             :                 }
    2643             :         }
    2644             : yy58:
    2645             :         YYDEBUG(58, *YYCURSOR);
    2646           5 :         ++YYCURSOR;
    2647           5 :         if (YYLIMIT <= YYCURSOR) YYFILL(1);
    2648           5 :         yych = *YYCURSOR;
    2649             :         YYDEBUG(59, *YYCURSOR);
    2650           5 :         if (yybm[0+yych] & 4) {
    2651           0 :                 goto yy58;
    2652             :         }
    2653           5 :         if (yych <= '/') goto yy57;
    2654           5 :         if (yych <= '9') goto yy55;
    2655           0 :         goto yy57;
    2656             : yy60:
    2657             :         YYDEBUG(60, *YYCURSOR);
    2658         292 :         ++YYCURSOR;
    2659         292 :         if ((YYLIMIT - YYCURSOR) < 11) YYFILL(11);
    2660         292 :         yych = *YYCURSOR;
    2661             : yy61:
    2662             :         YYDEBUG(61, *YYCURSOR);
    2663         512 :         if (yych <= 'W') {
    2664         236 :                 if (yych <= 'F') {
    2665         222 :                         if (yych <= ' ') {
    2666         215 :                                 if (yych == '\t') goto yy60;
    2667         214 :                                 if (yych <= 0x1F) goto yy57;
    2668         206 :                                 goto yy60;
    2669             :                         } else {
    2670           7 :                                 if (yych == 'D') goto yy65;
    2671           5 :                                 if (yych <= 'E') goto yy57;
    2672           0 :                                 goto yy66;
    2673             :                         }
    2674             :                 } else {
    2675          14 :                         if (yych <= 'M') {
    2676          10 :                                 if (yych == 'H') goto yy64;
    2677          10 :                                 if (yych <= 'L') goto yy57;
    2678           2 :                                 goto yy63;
    2679             :                         } else {
    2680           4 :                                 if (yych <= 'S') {
    2681           4 :                                         if (yych <= 'R') goto yy57;
    2682             :                                 } else {
    2683           0 :                                         if (yych <= 'T') goto yy69;
    2684           0 :                                         if (yych <= 'V') goto yy57;
    2685           0 :                                         goto yy68;
    2686             :                                 }
    2687             :                         }
    2688             :                 }
    2689             :         } else {
    2690         276 :                 if (yych <= 'l') {
    2691         154 :                         if (yych <= 'd') {
    2692         100 :                                 if (yych == 'Y') goto yy67;
    2693         100 :                                 if (yych <= 'c') goto yy57;
    2694          99 :                                 goto yy65;
    2695             :                         } else {
    2696          54 :                                 if (yych <= 'f') {
    2697           0 :                                         if (yych <= 'e') goto yy57;
    2698           0 :                                         goto yy66;
    2699             :                                 } else {
    2700          54 :                                         if (yych == 'h') goto yy64;
    2701           0 :                                         goto yy57;
    2702             :                                 }
    2703             :                         }
    2704             :                 } else {
    2705         122 :                         if (yych <= 't') {
    2706          85 :                                 if (yych <= 'm') goto yy63;
    2707          32 :                                 if (yych <= 'r') goto yy57;
    2708          32 :                                 if (yych >= 't') goto yy69;
    2709             :                         } else {
    2710          37 :                                 if (yych <= 'w') {
    2711           6 :                                         if (yych <= 'v') goto yy57;
    2712           6 :                                         goto yy68;
    2713             :                                 } else {
    2714          31 :                                         if (yych == 'y') goto yy67;
    2715           0 :                                         goto yy57;
    2716             :                                 }
    2717             :                         }
    2718             :                 }
    2719             :         }
    2720             : yy62:
    2721             :         YYDEBUG(62, *YYCURSOR);
    2722          32 :         yych = *++YYCURSOR;
    2723          32 :         if (yych <= 'U') {
    2724           0 :                 if (yych <= 'D') {
    2725           0 :                         if (yych == 'A') goto yy127;
    2726           0 :                         goto yy57;
    2727             :                 } else {
    2728           0 :                         if (yych <= 'E') goto yy128;
    2729           0 :                         if (yych <= 'T') goto yy57;
    2730           0 :                         goto yy126;
    2731             :                 }
    2732             :         } else {
    2733          32 :                 if (yych <= 'd') {
    2734           0 :                         if (yych == 'a') goto yy127;
    2735           0 :                         goto yy57;
    2736             :                 } else {
    2737          32 :                         if (yych <= 'e') goto yy128;
    2738           0 :                         if (yych == 'u') goto yy126;
    2739           0 :                         goto yy57;
    2740             :                 }
    2741             :         }
    2742             : yy63:
    2743             :         YYDEBUG(63, *YYCURSOR);
    2744          55 :         yych = *++YYCURSOR;
    2745          55 :         if (yych <= 'O') {
    2746           0 :                 if (yych == 'I') goto yy118;
    2747           0 :                 if (yych <= 'N') goto yy57;
    2748           0 :                 goto yy117;
    2749             :         } else {
    2750          55 :                 if (yych <= 'i') {
    2751          24 :                         if (yych <= 'h') goto yy57;
    2752          22 :                         goto yy118;
    2753             :                 } else {
    2754          31 :                         if (yych == 'o') goto yy117;
    2755           0 :                         goto yy57;
    2756             :                 }
    2757             :         }
    2758             : yy64:
    2759             :         YYDEBUG(64, *YYCURSOR);
    2760          56 :         yych = *++YYCURSOR;
    2761          56 :         if (yych == 'O') goto yy115;
    2762          56 :         if (yych == 'o') goto yy115;
    2763           0 :         goto yy57;
    2764             : yy65:
    2765             :         YYDEBUG(65, *YYCURSOR);
    2766         101 :         yych = *++YYCURSOR;
    2767         101 :         if (yych == 'A') goto yy114;
    2768         101 :         if (yych == 'a') goto yy114;
    2769           2 :         goto yy57;
    2770             : yy66:
    2771             :         YYDEBUG(66, *YYCURSOR);
    2772           0 :         yych = *++YYCURSOR;
    2773           0 :         if (yych <= 'R') {
    2774           0 :                 if (yych == 'O') goto yy99;
    2775           0 :                 if (yych <= 'Q') goto yy57;
    2776           0 :                 goto yy98;
    2777             :         } else {
    2778           0 :                 if (yych <= 'o') {
    2779           0 :                         if (yych <= 'n') goto yy57;
    2780           0 :                         goto yy99;
    2781             :                 } else {
    2782           0 :                         if (yych == 'r') goto yy98;
    2783           0 :                         goto yy57;
    2784             :                 }
    2785             :         }
    2786             : yy67:
    2787             :         YYDEBUG(67, *YYCURSOR);
    2788          31 :         yych = *++YYCURSOR;
    2789          31 :         if (yych == 'E') goto yy95;
    2790          31 :         if (yych == 'e') goto yy95;
    2791           0 :         goto yy57;
    2792             : yy68:
    2793             :         YYDEBUG(68, *YYCURSOR);
    2794           6 :         yych = *++YYCURSOR;
    2795           6 :         if (yych == 'E') goto yy83;
    2796           6 :         if (yych == 'e') goto yy83;
    2797           0 :         goto yy57;
    2798             : yy69:
    2799             :         YYDEBUG(69, *YYCURSOR);
    2800          16 :         yych = *++YYCURSOR;
    2801          16 :         if (yych <= 'U') {
    2802           0 :                 if (yych == 'H') goto yy70;
    2803           0 :                 if (yych <= 'T') goto yy57;
    2804           0 :                 goto yy71;
    2805             :         } else {
    2806          16 :                 if (yych <= 'h') {
    2807           4 :                         if (yych <= 'g') goto yy57;
    2808             :                 } else {
    2809          12 :                         if (yych == 'u') goto yy71;
    2810           0 :                         goto yy57;
    2811             :                 }
    2812             :         }
    2813             : yy70:
    2814             :         YYDEBUG(70, *YYCURSOR);
    2815           4 :         yych = *++YYCURSOR;
    2816           4 :         if (yych == 'U') goto yy78;
    2817           4 :         if (yych == 'u') goto yy78;
    2818           1 :         goto yy57;
    2819             : yy71:
    2820             :         YYDEBUG(71, *YYCURSOR);
    2821          12 :         yych = *++YYCURSOR;
    2822          12 :         if (yych == 'E') goto yy72;
    2823          12 :         if (yych != 'e') goto yy57;
    2824             : yy72:
    2825             :         YYDEBUG(72, *YYCURSOR);
    2826          12 :         yyaccept = 3;
    2827          12 :         yych = *(YYMARKER = ++YYCURSOR);
    2828          12 :         if (yych == 'S') goto yy74;
    2829          12 :         if (yych == 's') goto yy74;
    2830             : yy73:
    2831             :         YYDEBUG(73, *YYCURSOR);
    2832             : #line 1749 "ext/date/lib/parse_date.re"
    2833             :         {
    2834             :                 timelib_ull i;
    2835             :                 DEBUG_OUTPUT("relative");
    2836             :                 TIMELIB_INIT;
    2837             :                 TIMELIB_HAVE_RELATIVE();
    2838             : 
    2839             :                 while(*ptr) {
    2840             :                         i = timelib_get_unsigned_nr((char **) &ptr, 24);
    2841             :                         timelib_eat_spaces((char **) &ptr);
    2842             :                         timelib_set_relative((char **) &ptr, i, 1, s);
    2843             :                 }
    2844             :                 TIMELIB_DEINIT;
    2845             :                 return TIMELIB_RELATIVE;
    2846             :         }
    2847             : #line 2848 "ext/date/lib/parse_date.c"
    2848             : yy74:
    2849             :         YYDEBUG(74, *YYCURSOR);
    2850          12 :         yych = *++YYCURSOR;
    2851          12 :         if (yych == 'D') goto yy75;
    2852          12 :         if (yych != 'd') goto yy57;
    2853             : yy75:
    2854             :         YYDEBUG(75, *YYCURSOR);
    2855          12 :         yych = *++YYCURSOR;
    2856          12 :         if (yych == 'A') goto yy76;
    2857          12 :         if (yych != 'a') goto yy57;
    2858             : yy76:
    2859             :         YYDEBUG(76, *YYCURSOR);
    2860          12 :         yych = *++YYCURSOR;
    2861          12 :         if (yych == 'Y') goto yy77;
    2862          12 :         if (yych != 'y') goto yy57;
    2863             : yy77:
    2864             :         YYDEBUG(77, *YYCURSOR);
    2865         226 :         yych = *++YYCURSOR;
    2866         226 :         goto yy73;
    2867             : yy78:
    2868             :         YYDEBUG(78, *YYCURSOR);
    2869           3 :         yyaccept = 3;
    2870           3 :         yych = *(YYMARKER = ++YYCURSOR);
    2871           3 :         if (yych == 'R') goto yy79;
    2872           3 :         if (yych != 'r') goto yy73;
    2873             : yy79:
    2874             :         YYDEBUG(79, *YYCURSOR);
    2875           3 :         yych = *++YYCURSOR;
    2876           3 :         if (yych == 'S') goto yy80;
    2877           3 :         if (yych != 's') goto yy57;
    2878             : yy80:
    2879             :         YYDEBUG(80, *YYCURSOR);
    2880           3 :         yych = *++YYCURSOR;
    2881           3 :         if (yych == 'D') goto yy81;
    2882           3 :         if (yych != 'd') goto yy57;
    2883             : yy81:
    2884             :         YYDEBUG(81, *YYCURSOR);
    2885           3 :         yych = *++YYCURSOR;
    2886           3 :         if (yych == 'A') goto yy82;
    2887           3 :         if (yych != 'a') goto yy57;
    2888             : yy82:
    2889             :         YYDEBUG(82, *YYCURSOR);
    2890           3 :         yych = *++YYCURSOR;
    2891           3 :         if (yych == 'Y') goto yy77;
    2892           3 :         if (yych == 'y') goto yy77;
    2893           0 :         goto yy57;
    2894             : yy83:
    2895             :         YYDEBUG(83, *YYCURSOR);
    2896           6 :         yych = *++YYCURSOR;
    2897           6 :         if (yych <= 'E') {
    2898           0 :                 if (yych <= 'C') goto yy57;
    2899           0 :                 if (yych <= 'D') goto yy85;
    2900             :         } else {
    2901           6 :                 if (yych <= 'c') goto yy57;
    2902           6 :                 if (yych <= 'd') goto yy85;
    2903           6 :                 if (yych >= 'f') goto yy57;
    2904             :         }
    2905             :         YYDEBUG(84, *YYCURSOR);
    2906           6 :         yych = *++YYCURSOR;
    2907           6 :         if (yych == 'K') goto yy91;
    2908           6 :         if (yych == 'k') goto yy91;
    2909           0 :         goto yy57;
    2910             : yy85:
    2911             :         YYDEBUG(85, *YYCURSOR);
    2912           0 :         yyaccept = 3;
    2913           0 :         yych = *(YYMARKER = ++YYCURSOR);
    2914           0 :         if (yych == 'N') goto yy86;
    2915           0 :         if (yych != 'n') goto yy73;
    2916             : yy86:
    2917             :         YYDEBUG(86, *YYCURSOR);
    2918           0 :         yych = *++YYCURSOR;
    2919           0 :         if (yych == 'E') goto yy87;
    2920           0 :         if (yych != 'e') goto yy57;
    2921             : yy87:
    2922             :         YYDEBUG(87, *YYCURSOR);
    2923           0 :         yych = *++YYCURSOR;
    2924           0 :         if (yych == 'S') goto yy88;
    2925           0 :         if (yych != 's') goto yy57;
    2926             : yy88:
    2927             :         YYDEBUG(88, *YYCURSOR);
    2928           0 :         yych = *++YYCURSOR;
    2929           0 :         if (yych == 'D') goto yy89;
    2930           0 :         if (yych != 'd') goto yy57;
    2931             : yy89:
    2932             :         YYDEBUG(89, *YYCURSOR);
    2933           0 :         yych = *++YYCURSOR;
    2934           0 :         if (yych == 'A') goto yy90;
    2935           0 :         if (yych != 'a') goto yy57;
    2936             : yy90:
    2937             :         YYDEBUG(90, *YYCURSOR);
    2938           0 :         yych = *++YYCURSOR;
    2939           0 :         if (yych == 'Y') goto yy77;
    2940           0 :         if (yych == 'y') goto yy77;
    2941           0 :         goto yy57;
    2942             : yy91:
    2943             :         YYDEBUG(91, *YYCURSOR);
    2944           6 :         yyaccept = 3;
    2945           6 :         yych = *(YYMARKER = ++YYCURSOR);
    2946           6 :         if (yych <= 'S') {
    2947           6 :                 if (yych == 'D') goto yy92;
    2948           6 :                 if (yych <= 'R') goto yy73;
    2949           0 :                 goto yy77;
    2950             :         } else {
    2951           0 :                 if (yych <= 'd') {
    2952           0 :                         if (yych <= 'c') goto yy73;
    2953             :                 } else {
    2954           0 :                         if (yych == 's') goto yy77;
    2955           0 :                         goto yy73;
    2956             :                 }
    2957             :         }
    2958             : yy92:
    2959             :         YYDEBUG(92, *YYCURSOR);
    2960           0 :         yych = *++YYCURSOR;
    2961           0 :         if (yych == 'A') goto yy93;
    2962           0 :         if (yych != 'a') goto yy57;
    2963             : yy93:
    2964             :         YYDEBUG(93, *YYCURSOR);
    2965           0 :         yych = *++YYCURSOR;
    2966           0 :         if (yych == 'Y') goto yy94;
    2967           0 :         if (yych != 'y') goto yy57;
    2968             : yy94:
    2969             :         YYDEBUG(94, *YYCURSOR);
    2970           0 :         yych = *++YYCURSOR;
    2971           0 :         if (yych == 'S') goto yy77;
    2972           0 :         if (yych == 's') goto yy77;
    2973           0 :         goto yy73;
    2974             : yy95:
    2975             :         YYDEBUG(95, *YYCURSOR);
    2976          31 :         yych = *++YYCURSOR;
    2977          31 :         if (yych == 'A') goto yy96;
    2978          31 :         if (yych != 'a') goto yy57;
    2979             : yy96:
    2980             :         YYDEBUG(96, *YYCURSOR);
    2981          31 :         yych = *++YYCURSOR;
    2982          31 :         if (yych == 'R') goto yy97;
    2983          31 :         if (yych != 'r') goto yy57;
    2984             : yy97:
    2985             :         YYDEBUG(97, *YYCURSOR);
    2986         274 :         yych = *++YYCURSOR;
    2987         274 :         if (yych == 'S') goto yy77;
    2988         274 :         if (yych == 's') goto yy77;
    2989          66 :         goto yy73;
    2990             : yy98:
    2991             :         YYDEBUG(98, *YYCURSOR);
    2992           0 :         yych = *++YYCURSOR;
    2993           0 :         if (yych == 'I') goto yy111;
    2994           0 :         if (yych == 'i') goto yy111;
    2995           0 :         goto yy57;
    2996             : yy99:
    2997             :         YYDEBUG(99, *YYCURSOR);
    2998           0 :         yych = *++YYCURSOR;
    2999           0 :         if (yych == 'R') goto yy100;
    3000           0 :         if (yych != 'r') goto yy57;
    3001             : yy100:
    3002             :         YYDEBUG(100, *YYCURSOR);
    3003           0 :         yych = *++YYCURSOR;
    3004           0 :         if (yych == 'T') goto yy101;
    3005           0 :         if (yych != 't') goto yy57;
    3006             : yy101:
    3007             :         YYDEBUG(101, *YYCURSOR);
    3008           0 :         yych = *++YYCURSOR;
    3009           0 :         if (yych <= 'N') {
    3010           0 :                 if (yych == 'H') goto yy103;
    3011           0 :                 if (yych <= 'M') goto yy57;
    3012             :         } else {
    3013           0 :                 if (yych <= 'h') {
    3014           0 :                         if (yych <= 'g') goto yy57;
    3015           0 :                         goto yy103;
    3016             :                 } else {
    3017           0 :                         if (yych != 'n') goto yy57;
    3018             :                 }
    3019             :         }
    3020             :         YYDEBUG(102, *YYCURSOR);
    3021           0 :         yych = *++YYCURSOR;
    3022           0 :         if (yych == 'I') goto yy108;
    3023           0 :         if (yych == 'i') goto yy108;
    3024           0 :         goto yy57;
    3025             : yy103:
    3026             :         YYDEBUG(103, *YYCURSOR);
    3027           0 :         yych = *++YYCURSOR;
    3028           0 :         if (yych == 'N') goto yy104;
    3029           0 :         if (yych != 'n') goto yy57;
    3030             : yy104:
    3031             :         YYDEBUG(104, *YYCURSOR);
    3032           0 :         yych = *++YYCURSOR;
    3033           0 :         if (yych == 'I') goto yy105;
    3034           0 :         if (yych != 'i') goto yy57;
    3035             : yy105:
    3036             :         YYDEBUG(105, *YYCURSOR);
    3037           0 :         yych = *++YYCURSOR;
    3038           0 :         if (yych == 'G') goto yy106;
    3039           0 :         if (yych != 'g') goto yy57;
    3040             : yy106:
    3041             :         YYDEBUG(106, *YYCURSOR);
    3042           0 :         yych = *++YYCURSOR;
    3043           0 :         if (yych == 'H') goto yy107;
    3044           0 :         if (yych != 'h') goto yy57;
    3045             : yy107:
    3046             :         YYDEBUG(107, *YYCURSOR);
    3047           0 :         yych = *++YYCURSOR;
    3048           0 :         if (yych == 'T') goto yy97;
    3049           0 :         if (yych == 't') goto yy97;
    3050           0 :         goto yy57;
    3051             : yy108:
    3052             :         YYDEBUG(108, *YYCURSOR);
    3053           0 :         yych = *++YYCURSOR;
    3054           0 :         if (yych == 'G') goto yy109;
    3055           0 :         if (yych != 'g') goto yy57;
    3056             : yy109:
    3057             :         YYDEBUG(109, *YYCURSOR);
    3058           0 :         yych = *++YYCURSOR;
    3059           0 :         if (yych == 'H') goto yy110;
    3060           0 :         if (yych != 'h') goto yy57;
    3061             : yy110:
    3062             :         YYDEBUG(110, *YYCURSOR);
    3063           0 :         yych = *++YYCURSOR;
    3064           0 :         if (yych == 'T') goto yy97;
    3065           0 :         if (yych == 't') goto yy97;
    3066           0 :         goto yy57;
    3067             : yy111:
    3068             :         YYDEBUG(111, *YYCURSOR);
    3069           0 :         yyaccept = 3;
    3070           0 :         yych = *(YYMARKER = ++YYCURSOR);
    3071           0 :         if (yych == 'D') goto yy112;
    3072           0 :         if (yych != 'd') goto yy73;
    3073             : yy112:
    3074             :         YYDEBUG(112, *YYCURSOR);
    3075           0 :         yych = *++YYCURSOR;
    3076           0 :         if (yych == 'A') goto yy113;
    3077           0 :         if (yych != 'a') goto yy57;
    3078             : yy113:
    3079             :         YYDEBUG(113, *YYCURSOR);
    3080           0 :         yych = *++YYCURSOR;
    3081           0 :         if (yych == 'Y') goto yy77;
    3082           0 :         if (yych == 'y') goto yy77;
    3083           0 :         goto yy57;
    3084             : yy114:
    3085             :         YYDEBUG(114, *YYCURSOR);
    3086         101 :         yych = *++YYCURSOR;
    3087         101 :         if (yych == 'Y') goto yy97;
    3088         101 :         if (yych == 'y') goto yy97;
    3089           0 :         goto yy57;
    3090             : yy115:
    3091             :         YYDEBUG(115, *YYCURSOR);
    3092          56 :         yych = *++YYCURSOR;
    3093          56 :         if (yych == 'U') goto yy116;
    3094          56 :         if (yych != 'u') goto yy57;
    3095             : yy116:
    3096             :         YYDEBUG(116, *YYCURSOR);
    3097          56 :         yych = *++YYCURSOR;
    3098          56 :         if (yych == 'R') goto yy97;
    3099          56 :         if (yych == 'r') goto yy97;
    3100           0 :         goto yy57;
    3101             : yy117:
    3102             :         YYDEBUG(117, *YYCURSOR);
    3103          34 :         yych = *++YYCURSOR;
    3104          34 :         if (yych == 'N') goto yy122;
    3105          34 :         if (yych == 'n') goto yy122;
    3106           0 :         goto yy57;
    3107             : yy118:
    3108             :         YYDEBUG(118, *YYCURSOR);
    3109          22 :         yych = *++YYCURSOR;
    3110          22 :         if (yych == 'N') goto yy119;
    3111          22 :         if (yych != 'n') goto yy57;
    3112             : yy119:
    3113             :         YYDEBUG(119, *YYCURSOR);
    3114          22 :         yyaccept = 3;
    3115          22 :         yych = *(YYMARKER = ++YYCURSOR);
    3116          22 :         if (yych <= 'U') {
    3117           0 :                 if (yych == 'S') goto yy77;
    3118           0 :                 if (yych <= 'T') goto yy73;
    3119             :         } else {
    3120          22 :                 if (yych <= 's') {
    3121           0 :                         if (yych <= 'r') goto yy73;
    3122           0 :                         goto yy77;
    3123             :                 } else {
    3124          22 :                         if (yych != 'u') goto yy73;
    3125             :                 }
    3126             :         }
    3127             :         YYDEBUG(120, *YYCURSOR);
    3128          22 :         yych = *++YYCURSOR;
    3129          22 :         if (yych == 'T') goto yy121;
    3130          22 :         if (yych != 't') goto yy57;
    3131             : yy121:
    3132             :         YYDEBUG(121, *YYCURSOR);
    3133          22 :         yych = *++YYCURSOR;
    3134          22 :         if (yych == 'E') goto yy97;
    3135          22 :         if (yych == 'e') goto yy97;
    3136           0 :         goto yy57;
    3137             : yy122:
    3138             :         YYDEBUG(122, *YYCURSOR);
    3139          34 :         yyaccept = 3;
    3140          34 :         yych = *(YYMARKER = ++YYCURSOR);
    3141          34 :         if (yych <= 'T') {
    3142           0 :                 if (yych == 'D') goto yy123;
    3143           0 :                 if (yych <= 'S') goto yy73;
    3144           0 :                 goto yy124;
    3145             :         } else {
    3146          34 :                 if (yych <= 'd') {
    3147           3 :                         if (yych <= 'c') goto yy73;
    3148             :                 } else {
    3149          31 :                         if (yych == 't') goto yy124;
    3150           0 :                         goto yy73;
    3151             :                 }
    3152             :         }
    3153             : yy123:
    3154             :         YYDEBUG(123, *YYCURSOR);
    3155           3 :         yych = *++YYCURSOR;
    3156           3 :         if (yych == 'A') goto yy125;
    3157           3 :         if (yych == 'a') goto yy125;
    3158           0 :         goto yy57;
    3159             : yy124:
    3160             :         YYDEBUG(124, *YYCURSOR);
    3161          31 :         yych = *++YYCURSOR;
    3162          31 :         if (yych == 'H') goto yy97;
    3163          31 :         if (yych == 'h') goto yy97;
    3164           0 :         goto yy57;
    3165             : yy125:
    3166             :         YYDEBUG(125, *YYCURSOR);
    3167           3 :         yych = *++YYCURSOR;
    3168           3 :         if (yych == 'Y') goto yy77;
    3169           3 :         if (yych == 'y') goto yy77;
    3170           0 :         goto yy57;
    3171             : yy126:
    3172             :         YYDEBUG(126, *YYCURSOR);
    3173           0 :         yych = *++YYCURSOR;
    3174           0 :         if (yych == 'N') goto yy137;
    3175           0 :         if (yych == 'n') goto yy137;
    3176           0 :         goto yy57;
    3177             : yy127:
    3178             :         YYDEBUG(127, *YYCURSOR);
    3179           0 :         yych = *++YYCURSOR;
    3180           0 :         if (yych == 'T') goto yy132;
    3181           0 :         if (yych == 't') goto yy132;
    3182           0 :         goto yy57;
    3183             : yy128:
    3184             :         YYDEBUG(128, *YYCURSOR);
    3185          32 :         yych = *++YYCURSOR;
    3186          32 :         if (yych == 'C') goto yy129;
    3187          32 :         if (yych != 'c') goto yy57;
    3188             : yy129:
    3189             :         YYDEBUG(129, *YYCURSOR);
    3190          33 :         yyaccept = 3;
    3191          33 :         yych = *(YYMARKER = ++YYCURSOR);
    3192          33 :         if (yych <= 'S') {
    3193           0 :                 if (yych == 'O') goto yy130;
    3194           0 :                 if (yych <= 'R') goto yy73;
    3195           0 :                 goto yy77;
    3196             :         } else {
    3197          33 :                 if (yych <= 'o') {
    3198          33 :                         if (yych <= 'n') goto yy73;
    3199             :                 } else {
    3200           0 :                         if (yych == 's') goto yy77;
    3201           0 :                         goto yy73;
    3202             :                 }
    3203             :         }
    3204             : yy130:
    3205             :         YYDEBUG(130, *YYCURSOR);
    3206          33 :         yych = *++YYCURSOR;
    3207          33 :         if (yych == 'N') goto yy131;
    3208          33 :         if (yych != 'n') goto yy57;
    3209             : yy131:
    3210             :         YYDEBUG(131, *YYCURSOR);
    3211          33 :         yych = *++YYCURSOR;
    3212          33 :         if (yych == 'D') goto yy97;
    3213          33 :         if (yych == 'd') goto yy97;
    3214           0 :         goto yy57;
    3215             : yy132:
    3216             :         YYDEBUG(132, *YYCURSOR);
    3217           0 :         yyaccept = 3;
    3218           0 :         yych = *(YYMARKER = ++YYCURSOR);
    3219           0 :         if (yych == 'U') goto yy133;
    3220           0 :         if (yych != 'u') goto yy73;
    3221             : yy133:
    3222             :         YYDEBUG(133, *YYCURSOR);
    3223           0 :         yych = *++YYCURSOR;
    3224           0 :         if (yych == 'R') goto yy134;
    3225           0 :         if (yych != 'r') goto yy57;
    3226             : yy134:
    3227             :         YYDEBUG(134, *YYCURSOR);
    3228           0 :         yych = *++YYCURSOR;
    3229           0 :         if (yych == 'D') goto yy135;
    3230           0 :         if (yych != 'd') goto yy57;
    3231             : yy135:
    3232             :         YYDEBUG(135, *YYCURSOR);
    3233           0 :         yych = *++YYCURSOR;
    3234           0 :         if (yych == 'A') goto yy136;
    3235           0 :         if (yych != 'a') goto yy57;
    3236             : yy136:
    3237             :         YYDEBUG(136, *YYCURSOR);
    3238           0 :         yych = *++YYCURSOR;
    3239           0 :         if (yych == 'Y') goto yy77;
    3240           0 :         if (yych == 'y') goto yy77;
    3241           0 :         goto yy57;
    3242             : yy137:
    3243             :         YYDEBUG(137, *YYCURSOR);
    3244           0 :         yyaccept = 3;
    3245           0 :         yych = *(YYMARKER = ++YYCURSOR);
    3246           0 :         if (yych == 'D') goto yy138;
    3247           0 :         if (yych != 'd') goto yy73;
    3248             : yy138:
    3249             :         YYDEBUG(138, *YYCURSOR);
    3250           0 :         yych = *++YYCURSOR;
    3251           0 :         if (yych == 'A') goto yy139;
    3252           0 :         if (yych != 'a') goto yy57;
    3253             : yy139:
    3254             :         YYDEBUG(139, *YYCURSOR);
    3255           0 :         yych = *++YYCURSOR;
    3256           0 :         if (yych == 'Y') goto yy77;
    3257           0 :         if (yych == 'y') goto yy77;
    3258           0 :         goto yy57;
    3259             : yy140:
    3260             :         YYDEBUG(140, *YYCURSOR);
    3261          32 :         yych = *++YYCURSOR;
    3262          32 :         goto yy4;
    3263             : yy141:
    3264             :         YYDEBUG(141, *YYCURSOR);
    3265        1506 :         yych = *++YYCURSOR;
    3266        1506 :         if (yych <= '@') {
    3267           9 :                 if (yych == ')') goto yy140;
    3268           9 :                 goto yy4;
    3269             :         } else {
    3270        1497 :                 if (yych <= 'Z') goto yy142;
    3271          56 :                 if (yych <= '`') goto yy4;
    3272          56 :                 if (yych >= '{') goto yy4;
    3273             :         }
    3274             : yy142:
    3275             :         YYDEBUG(142, *YYCURSOR);
    3276        1503 :         yych = *++YYCURSOR;
    3277        1503 :         if (yych <= '@') {
    3278        1437 :                 if (yych == ')') goto yy140;
    3279        1436 :                 goto yy4;
    3280             :         } else {
    3281          66 :                 if (yych <= 'Z') goto yy143;
    3282          50 :                 if (yych <= '`') goto yy4;
    3283          50 :                 if (yych >= '{') goto yy4;
    3284             :         }
    3285             : yy143:
    3286             :         YYDEBUG(143, *YYCURSOR);
    3287          69 :         yych = *++YYCURSOR;
    3288          69 :         if (yych <= '@') {
    3289          13 :                 if (yych == ')') goto yy140;
    3290          13 :                 goto yy4;
    3291             :         } else {
    3292          56 :                 if (yych <= 'Z') goto yy144;
    3293          56 :                 if (yych <= '`') goto yy4;
    3294          56 :                 if (yych >= '{') goto yy4;
    3295             :         }
    3296             : yy144:
    3297             :         YYDEBUG(144, *YYCURSOR);
    3298          58 :         yych = *++YYCURSOR;
    3299          58 :         if (yych <= '@') {
    3300          17 :                 if (yych == ')') goto yy140;
    3301          17 :                 goto yy4;
    3302             :         } else {
    3303          41 :                 if (yych <= 'Z') goto yy145;
    3304          30 :                 if (yych <= '`') goto yy4;
    3305          30 :                 if (yych >= '{') goto yy4;
    3306             :         }
    3307             : yy145:
    3308             :         YYDEBUG(145, *YYCURSOR);
    3309          41 :         yych = *++YYCURSOR;
    3310          41 :         if (yych == ')') goto yy140;
    3311          41 :         goto yy4;
    3312             : yy146:
    3313             :         YYDEBUG(146, *YYCURSOR);
    3314        1888 :         yyaccept = 0;
    3315        1888 :         yych = *(YYMARKER = ++YYCURSOR);
    3316        1888 :         if (yych <= '/') {
    3317           0 :                 if (yych <= ',') {
    3318           0 :                         if (yych == ')') goto yy140;
    3319           0 :                         goto yy4;
    3320             :                 } else {
    3321           0 :                         if (yych == '.') goto yy4;
    3322           0 :                         goto yy148;
    3323             :                 }
    3324             :         } else {
    3325        1888 :                 if (yych <= '^') {
    3326           0 :                         if (yych <= '@') goto yy4;
    3327           0 :                         if (yych <= 'Z') goto yy142;
    3328           0 :                         goto yy4;
    3329             :                 } else {
    3330        1888 :                         if (yych <= '_') goto yy148;
    3331        1888 :                         if (yych <= '`') goto yy4;
    3332        1888 :                         if (yych >= '{') goto yy4;
    3333             :                 }
    3334             :         }
    3335             : yy147:
    3336             :         YYDEBUG(147, *YYCURSOR);
    3337        1924 :         yyaccept = 0;
    3338        1924 :         yych = *(YYMARKER = ++YYCURSOR);
    3339        1924 :         if (yych <= '/') {
    3340           7 :                 if (yych <= ',') {
    3341           1 :                         if (yych == ')') goto yy140;
    3342           1 :                         goto yy4;
    3343             :                 } else {
    3344           6 :                         if (yych == '.') goto yy4;
    3345             :                 }
    3346             :         } else {
    3347        1917 :                 if (yych <= '^') {
    3348           0 :                         if (yych <= '@') goto yy4;
    3349           0 :                         if (yych <= 'Z') goto yy143;
    3350           0 :                         goto yy4;
    3351             :                 } else {
    3352        1917 :                         if (yych <= '_') goto yy148;
    3353        1917 :                         if (yych <= '`') goto yy4;
    3354        1917 :                         if (yych <= 'z') goto yy151;
    3355           0 :                         goto yy4;
    3356             :                 }
    3357             :         }
    3358             : yy148:
    3359             :         YYDEBUG(148, *YYCURSOR);
    3360        2112 :         ++YYCURSOR;
    3361        2112 :         if (YYLIMIT <= YYCURSOR) YYFILL(1);
    3362        2112 :         yych = *YYCURSOR;
    3363        2112 :         if (yybm[0+yych] & 8) {
    3364        2112 :                 goto yy149;
    3365             :         }
    3366           0 :         goto yy57;
    3367             : yy149:
    3368             :         YYDEBUG(149, *YYCURSOR);
    3369       12237 :         yyaccept = 0;
    3370       12237 :         YYMARKER = ++YYCURSOR;
    3371       12237 :         if (YYLIMIT <= YYCURSOR) YYFILL(1);
    3372       12237 :         yych = *YYCURSOR;
    3373             :         YYDEBUG(150, *YYCURSOR);
    3374       12237 :         if (yybm[0+yych] & 8) {
    3375       10125 :                 goto yy149;
    3376             :         }
    3377        2112 :         if (yych <= '.') {
    3378        1922 :                 if (yych == '-') goto yy148;
    3379        1912 :                 goto yy4;
    3380             :         } else {
    3381         190 :                 if (yych <= '/') goto yy148;
    3382         140 :                 if (yych == '_') goto yy148;
    3383           0 :                 goto yy4;
    3384             :         }
    3385             : yy151:
    3386             :         YYDEBUG(151, *YYCURSOR);
    3387        1917 :         yyaccept = 0;
    3388        1917 :         yych = *(YYMARKER = ++YYCURSOR);
    3389        1917 :         if (yych <= '/') {
    3390         168 :                 if (yych <= ',') {
    3391           0 :                         if (yych == ')') goto yy140;
    3392           0 :                         goto yy4;
    3393             :                 } else {
    3394         168 :                         if (yych == '.') goto yy4;
    3395         168 :                         goto yy148;
    3396             :                 }
    3397             :         } else {
    3398        1749 :                 if (yych <= '^') {
    3399           0 :                         if (yych <= '@') goto yy4;
    3400           0 :                         if (yych <= 'Z') goto yy144;
    3401           0 :                         goto yy4;
    3402             :                 } else {
    3403        1749 :                         if (yych <= '_') goto yy148;
    3404        1749 :                         if (yych <= '`') goto yy4;
    3405        1749 :                         if (yych >= '{') goto yy4;
    3406             :                 }
    3407             :         }
    3408             : yy152:
    3409             :         YYDEBUG(152, *YYCURSOR);
    3410        1749 :         yyaccept = 0;
    3411        1749 :         yych = *(YYMARKER = ++YYCURSOR);
    3412        1749 :         if (yych <= '/') {
    3413           9 :                 if (yych <= ',') {
    3414           7 :                         if (yych == ')') goto yy140;
    3415           7 :                         goto yy4;
    3416             :                 } else {
    3417           2 :                         if (yych == '.') goto yy4;
    3418           2 :                         goto yy148;
    3419             :                 }
    3420             :         } else {
    3421        1740 :                 if (yych <= '^') {
    3422           0 :                         if (yych <= '@') goto yy4;
    3423           0 :                         if (yych <= 'Z') goto yy145;
    3424           0 :                         goto yy4;
    3425             :                 } else {
    3426        1740 :                         if (yych <= '_') goto yy148;
    3427        1740 :                         if (yych <= '`') goto yy4;
    3428        1740 :                         if (yych >= '{') goto yy4;
    3429             :                 }
    3430             :         }
    3431             : yy153:
    3432             :         YYDEBUG(153, *YYCURSOR);
    3433        1740 :         yyaccept = 0;
    3434        1740 :         yych = *(YYMARKER = ++YYCURSOR);
    3435        1740 :         if (yybm[0+yych] & 16) {
    3436         475 :                 goto yy154;
    3437             :         }
    3438        1265 :         if (yych <= '-') {
    3439           0 :                 if (yych == ')') goto yy140;
    3440           0 :                 if (yych <= ',') goto yy4;
    3441           0 :                 goto yy148;
    3442             :         } else {
    3443        1265 :                 if (yych <= '/') {
    3444        1265 :                         if (yych <= '.') goto yy4;
    3445        1265 :                         goto yy148;
    3446             :                 } else {
    3447           0 :                         if (yych == '_') goto yy148;
    3448           0 :                         goto yy4;
    3449             :                 }
    3450             :         }
    3451             : yy154:
    3452             :         YYDEBUG(154, *YYCURSOR);
    3453         650 :         ++YYCURSOR;
    3454         650 :         if (YYLIMIT <= YYCURSOR) YYFILL(1);
    3455         650 :         yych = *YYCURSOR;
    3456             : yy155:
    3457             :         YYDEBUG(155, *YYCURSOR);
    3458         650 :         if (yybm[0+yych] & 16) {
    3459         175 :                 goto yy154;
    3460             :         }
    3461         475 :         if (yych <= '.') {
    3462           4 :                 if (yych == '-') goto yy148;
    3463           4 :                 goto yy57;
    3464             :         } else {
    3465         471 :                 if (yych <= '/') goto yy148;
    3466           0 :                 if (yych == '_') goto yy148;
    3467           0 :                 goto yy57;
    3468             :         }
    3469             : yy156:
    3470             :         YYDEBUG(156, *YYCURSOR);
    3471           1 :         yych = *++YYCURSOR;
    3472           1 :         if (yych <= '@') {
    3473           0 :                 if (yych == ')') goto yy140;
    3474           0 :                 goto yy4;
    3475             :         } else {
    3476           1 :                 if (yych <= 'Z') goto yy141;
    3477           0 :                 if (yych <= '`') goto yy4;
    3478           0 :                 if (yych <= 'z') goto yy141;
    3479           0 :                 goto yy4;
    3480             :         }
    3481             : yy157:
    3482             :         YYDEBUG(157, *YYCURSOR);
    3483          30 :         yych = *++YYCURSOR;
    3484          30 :         if (yych <= 'S') {
    3485           0 :                 if (yych == ')') goto yy140;
    3486           0 :                 if (yych <= '@') goto yy4;
    3487           0 :                 goto yy142;
    3488             :         } else {
    3489          30 :                 if (yych <= 'Z') {
    3490          30 :                         if (yych >= 'U') goto yy142;
    3491             :                 } else {
    3492           0 :                         if (yych <= '`') goto yy4;
    3493           0 :                         if (yych <= 'z') goto yy142;
    3494           0 :                         goto yy4;
    3495             :                 }
    3496             :         }
    3497             :         YYDEBUG(158, *YYCURSOR);
    3498          30 :         yyaccept = 0;
    3499          30 :         yych = *(YYMARKER = ++YYCURSOR);
    3500          30 :         if (yych <= ',') {
    3501          30 :                 if (yych <= ')') {
    3502          30 :                         if (yych <= '(') goto yy4;
    3503           0 :                         goto yy140;
    3504             :                 } else {
    3505           0 :                         if (yych != '+') goto yy4;
    3506             :                 }
    3507             :         } else {
    3508           0 :                 if (yych <= 'Z') {
    3509           0 :                         if (yych <= '-') goto yy159;
    3510           0 :                         if (yych <= '@') goto yy4;
    3511           0 :                         goto yy143;
    3512             :                 } else {
    3513           0 :                         if (yych <= '`') goto yy4;
    3514           0 :                         if (yych <= 'z') goto yy143;
    3515           0 :                         goto yy4;
    3516             :                 }
    3517             :         }
    3518             : yy159:
    3519             :         YYDEBUG(159, *YYCURSOR);
    3520           0 :         yych = *++YYCURSOR;
    3521           0 :         if (yych <= '/') goto yy57;
    3522           0 :         if (yych <= '1') goto yy160;
    3523           0 :         if (yych <= '2') goto yy161;
    3524           0 :         if (yych <= '9') goto yy162;
    3525           0 :         goto yy57;
    3526             : yy160:
    3527             :         YYDEBUG(160, *YYCURSOR);
    3528           0 :         yych = *++YYCURSOR;
    3529           0 :         if (yych <= '/') goto yy4;
    3530           0 :         if (yych <= '9') goto yy162;
    3531           0 :         if (yych <= ':') goto yy163;
    3532           0 :         goto yy4;
    3533             : yy161:
    3534             :         YYDEBUG(161, *YYCURSOR);
    3535           0 :         yych = *++YYCURSOR;
    3536           0 :         if (yych <= '5') {
    3537           0 :                 if (yych <= '/') goto yy4;
    3538           0 :                 if (yych >= '5') goto yy164;
    3539             :         } else {
    3540           0 :                 if (yych <= '9') goto yy140;
    3541           0 :                 if (yych <= ':') goto yy163;
    3542           0 :                 goto yy4;
    3543             :         }
    3544             : yy162:
    3545             :         YYDEBUG(162, *YYCURSOR);
    3546           0 :         yych = *++YYCURSOR;
    3547           0 :         if (yych <= '/') goto yy4;
    3548           0 :         if (yych <= '5') goto yy164;
    3549           0 :         if (yych <= '9') goto yy140;
    3550           0 :         if (yych >= ';') goto yy4;
    3551             : yy163:
    3552             :         YYDEBUG(163, *YYCURSOR);
    3553          32 :         yych = *++YYCURSOR;
    3554          32 :         if (yych <= '/') goto yy4;
    3555          32 :         if (yych <= '5') goto yy164;
    3556           0 :         if (yych <= '9') goto yy140;
    3557           0 :         goto yy4;
    3558             : yy164:
    3559             :         YYDEBUG(164, *YYCURSOR);
    3560          32 :         yych = *++YYCURSOR;
    3561          32 :         if (yych <= '/') goto yy4;
    3562          31 :         if (yych <= '9') goto yy140;
    3563           0 :         goto yy4;
    3564             : yy165:
    3565             :         YYDEBUG(165, *YYCURSOR);
    3566           3 :         yych = *++YYCURSOR;
    3567           3 :         if (yych <= 'E') {
    3568           0 :                 if (yych <= '@') {
    3569           0 :                         if (yych == ')') goto yy140;
    3570           0 :                         goto yy4;
    3571             :                 } else {
    3572           0 :                         if (yych <= 'C') goto yy142;
    3573           0 :                         if (yych >= 'E') goto yy168;
    3574             :                 }
    3575             :         } else {
    3576           3 :                 if (yych <= 'c') {
    3577           1 :                         if (yych <= 'Z') goto yy142;
    3578           0 :                         if (yych <= '`') goto yy4;
    3579           0 :                         goto yy142;
    3580             :                 } else {
    3581           2 :                         if (yych <= 'd') goto yy166;
    3582           0 :                         if (yych <= 'e') goto yy168;
    3583           0 :                         if (yych <= 'z') goto yy142;
    3584           0 :                         goto yy4;
    3585             :                 }
    3586             :         }
    3587             : yy166:
    3588             :         YYDEBUG(166, *YYCURSOR);
    3589           2 :         ++YYCURSOR;
    3590           2 :         if ((yych = *YYCURSOR) <= 'N') {
    3591           1 :                 if (yych <= ')') {
    3592           1 :                         if (yych >= ')') goto yy140;
    3593             :                 } else {
    3594           0 :                         if (yych <= '@') goto yy167;
    3595           0 :                         if (yych <= 'M') goto yy143;
    3596           0 :                         goto yy174;
    3597             :                 }
    3598             :         } else {
    3599           1 :                 if (yych <= 'm') {
    3600           0 :                         if (yych <= 'Z') goto yy143;
    3601           0 :                         if (yych >= 'a') goto yy143;
    3602             :                 } else {
    3603           1 :                         if (yych <= 'n') goto yy174;
    3604           0 :                         if (yych <= 'z') goto yy143;
    3605             :                 }
    3606             :         }
    3607             : yy167:
    3608             :         YYDEBUG(167, *YYCURSOR);
    3609             : #line 1612 "ext/date/lib/parse_date.re"
    3610             :         {
    3611             :                 const timelib_relunit* relunit;
    3612             :                 DEBUG_OUTPUT("daytext");
    3613             :                 TIMELIB_INIT;
    3614             :                 TIMELIB_HAVE_RELATIVE();
    3615             :                 TIMELIB_HAVE_WEEKDAY_RELATIVE();
    3616             :                 TIMELIB_UNHAVE_TIME();
    3617             :                 relunit = timelib_lookup_relunit((char**) &ptr);
    3618             :                 s->time->relative.weekday = relunit->multiplier;
    3619             :                 if (s->time->relative.weekday_behavior != 2) {
    3620             :                         s->time->relative.weekday_behavior = 1;
    3621             :                 }
    3622             :                 
    3623             :                 TIMELIB_DEINIT;
    3624             :                 return TIMELIB_WEEKDAY;
    3625             :         }
    3626             : #line 3627 "ext/date/lib/parse_date.c"
    3627             : yy168:
    3628             :         YYDEBUG(168, *YYCURSOR);
    3629           0 :         yych = *++YYCURSOR;
    3630           0 :         if (yych <= 'K') {
    3631           0 :                 if (yych <= ')') {
    3632           0 :                         if (yych <= '(') goto yy4;
    3633           0 :                         goto yy140;
    3634             :                 } else {
    3635           0 :                         if (yych <= '@') goto yy4;
    3636           0 :                         if (yych <= 'J') goto yy143;
    3637             :                 }
    3638             :         } else {
    3639           0 :                 if (yych <= 'j') {
    3640           0 :                         if (yych <= 'Z') goto yy143;
    3641           0 :                         if (yych <= '`') goto yy4;
    3642           0 :                         goto yy143;
    3643             :                 } else {
    3644           0 :                         if (yych <= 'k') goto yy169;
    3645           0 :                         if (yych <= 'z') goto yy143;
    3646           0 :                         goto yy4;
    3647             :                 }
    3648             :         }
    3649             : yy169:
    3650             :         YYDEBUG(169, *YYCURSOR);
    3651           0 :         yych = *++YYCURSOR;
    3652           0 :         if (yych <= 'D') {
    3653           0 :                 if (yych <= ')') {
    3654           0 :                         if (yych <= '(') goto yy4;
    3655           0 :                         goto yy140;
    3656             :                 } else {
    3657           0 :                         if (yych <= '@') goto yy4;
    3658           0 :                         if (yych <= 'C') goto yy144;
    3659             :                 }
    3660             :         } else {
    3661           0 :                 if (yych <= 'c') {
    3662           0 :                         if (yych <= 'Z') goto yy144;
    3663           0 :                         if (yych <= '`') goto yy4;
    3664           0 :                         goto yy144;
    3665             :                 } else {
    3666           0 :                         if (yych <= 'd') goto yy170;
    3667           0 :                         if (yych <= 'z') goto yy144;
    3668           0 :                         goto yy4;
    3669             :                 }
    3670             :         }
    3671             : yy170:
    3672             :         YYDEBUG(170, *YYCURSOR);
    3673           0 :         yych = *++YYCURSOR;
    3674           0 :         if (yych <= 'A') {
    3675           0 :                 if (yych == ')') goto yy140;
    3676           0 :                 if (yych <= '@') goto yy4;
    3677             :         } else {
    3678           0 :                 if (yych <= '`') {
    3679           0 :                         if (yych <= 'Z') goto yy145;
    3680           0 :                         goto yy4;
    3681             :                 } else {
    3682           0 :                         if (yych <= 'a') goto yy171;
    3683           0 :                         if (yych <= 'z') goto yy145;
    3684           0 :                         goto yy4;
    3685             :                 }
    3686             :         }
    3687             : yy171:
    3688             :         YYDEBUG(171, *YYCURSOR);
    3689           0 :         yych = *++YYCURSOR;
    3690           0 :         if (yych <= 'X') {
    3691           0 :                 if (yych == ')') goto yy140;
    3692           0 :                 goto yy4;
    3693             :         } else {
    3694           0 :                 if (yych <= 'Y') goto yy172;
    3695           0 :                 if (yych != 'y') goto yy4;
    3696             :         }
    3697             : yy172:
    3698             :         YYDEBUG(172, *YYCURSOR);
    3699           0 :         yych = *++YYCURSOR;
    3700           0 :         if (yych == 'S') goto yy173;
    3701           0 :         if (yych != 's') goto yy167;
    3702             : yy173:
    3703             :         YYDEBUG(173, *YYCURSOR);
    3704           5 :         yych = *++YYCURSOR;
    3705           5 :         goto yy167;
    3706             : yy174:
    3707             :         YYDEBUG(174, *YYCURSOR);
    3708           1 :         yych = *++YYCURSOR;
    3709           1 :         if (yych <= 'E') {
    3710           0 :                 if (yych <= ')') {
    3711           0 :                         if (yych <= '(') goto yy4;
    3712           0 :                         goto yy140;
    3713             :                 } else {
    3714           0 :                         if (yych <= '@') goto yy4;
    3715           0 :                         if (yych <= 'D') goto yy144;
    3716             :                 }
    3717             :         } else {
    3718           1 :                 if (yych <= 'd') {
    3719           0 :                         if (yych <= 'Z') goto yy144;
    3720           0 :                         if (yych <= '`') goto yy4;
    3721           0 :                         goto yy144;
    3722             :                 } else {
    3723           1 :                         if (yych <= 'e') goto yy175;
    3724           0 :                         if (yych <= 'z') goto yy144;
    3725           0 :                         goto yy4;
    3726             :                 }
    3727             :         }
    3728             : yy175:
    3729             :         YYDEBUG(175, *YYCURSOR);
    3730           1 :         yych = *++YYCURSOR;
    3731           1 :         if (yych <= 'S') {
    3732           0 :                 if (yych <= ')') {
    3733           0 :                         if (yych <= '(') goto yy4;
    3734           0 :                         goto yy140;
    3735             :                 } else {
    3736           0 :                         if (yych <= '@') goto yy4;
    3737           0 :                         if (yych <= 'R') goto yy145;
    3738             :                 }
    3739             :         } else {
    3740           1 :                 if (yych <= 'r') {
    3741           0 :                         if (yych <= 'Z') goto yy145;
    3742           0 :                         if (yych <= '`') goto yy4;
    3743           0 :                         goto yy145;
    3744             :                 } else {
    3745           1 :                         if (yych <= 's') goto yy176;
    3746           0 :                         if (yych <= 'z') goto yy145;
    3747           0 :                         goto yy4;
    3748             :                 }
    3749             :         }
    3750             : yy176:
    3751             :         YYDEBUG(176, *YYCURSOR);
    3752           1 :         yyaccept = 0;
    3753           1 :         yych = *(YYMARKER = ++YYCURSOR);
    3754           1 :         if (yych <= 'C') {
    3755           0 :                 if (yych == ')') goto yy140;
    3756           0 :                 goto yy4;
    3757             :         } else {
    3758           1 :                 if (yych <= 'D') goto yy177;
    3759           1 :                 if (yych != 'd') goto yy4;
    3760             :         }
    3761             : yy177:
    3762             :         YYDEBUG(177, *YYCURSOR);
    3763           1 :         yych = *++YYCURSOR;
    3764           1 :         if (yych == 'A') goto yy178;
    3765           1 :         if (yych != 'a') goto yy57;
    3766             : yy178:
    3767             :         YYDEBUG(178, *YYCURSOR);
    3768           1 :         yych = *++YYCURSOR;
    3769           1 :         if (yych == 'Y') goto yy173;
    3770           1 :         if (yych == 'y') goto yy173;
    3771           0 :         goto yy57;
    3772             : yy179:
    3773             :         YYDEBUG(179, *YYCURSOR);
    3774           2 :         yyaccept = 0;
    3775           2 :         yych = *(YYMARKER = ++YYCURSOR);
    3776           2 :         if (yych <= 'D') {
    3777           0 :                 if (yych <= '-') {
    3778           0 :                         if (yych == ')') goto yy140;
    3779           0 :                         if (yych <= ',') goto yy4;
    3780           0 :                         goto yy148;
    3781             :                 } else {
    3782           0 :                         if (yych <= '/') {
    3783           0 :                                 if (yych <= '.') goto yy4;
    3784           0 :                                 goto yy148;
    3785             :                         } else {
    3786           0 :                                 if (yych <= '@') goto yy4;
    3787           0 :                                 if (yych <= 'C') goto yy142;
    3788           0 :                                 goto yy166;
    3789             :                         }
    3790             :                 }
    3791             :         } else {
    3792           2 :                 if (yych <= '`') {
    3793           0 :                         if (yych <= 'Z') {
    3794           0 :                                 if (yych <= 'E') goto yy168;
    3795           0 :                                 goto yy142;
    3796             :                         } else {
    3797           0 :                                 if (yych == '_') goto yy148;
    3798           0 :                                 goto yy4;
    3799             :                         }
    3800             :                 } else {
    3801           2 :                         if (yych <= 'd') {
    3802           2 :                                 if (yych <= 'c') goto yy147;
    3803             :                         } else {
    3804           0 :                                 if (yych <= 'e') goto yy181;
    3805           0 :                                 if (yych <= 'z') goto yy147;
    3806           0 :                                 goto yy4;
    3807             :                         }
    3808             :                 }
    3809             :         }
    3810             :         YYDEBUG(180, *YYCURSOR);
    3811           2 :         yyaccept = 4;
    3812           2 :         yych = *(YYMARKER = ++YYCURSOR);
    3813           2 :         if (yych <= 'M') {
    3814           1 :                 if (yych <= '-') {
    3815           1 :                         if (yych == ')') goto yy140;
    3816           1 :                         if (yych <= ',') goto yy167;
    3817           0 :                         goto yy148;
    3818             :                 } else {
    3819           0 :                         if (yych == '/') goto yy148;
    3820           0 :                         if (yych <= '@') goto yy167;
    3821           0 :                         goto yy143;
    3822             :                 }
    3823             :         } else {
    3824           1 :                 if (yych <= '_') {
    3825           0 :                         if (yych <= 'N') goto yy174;
    3826           0 :                         if (yych <= 'Z') goto yy143;
    3827           0 :                         if (yych <= '^') goto yy167;
    3828           0 :                         goto yy148;
    3829             :                 } else {
    3830           1 :                         if (yych <= 'm') {
    3831           0 :                                 if (yych <= '`') goto yy167;
    3832           0 :                                 goto yy151;
    3833             :                         } else {
    3834           1 :                                 if (yych <= 'n') goto yy187;
    3835           0 :                                 if (yych <= 'z') goto yy151;
    3836           0 :                                 goto yy167;
    3837             :                         }
    3838             :                 }
    3839             :         }
    3840             : yy181:
    3841             :         YYDEBUG(181, *YYCURSOR);
    3842           0 :         yyaccept = 0;
    3843           0 :         yych = *(YYMARKER = ++YYCURSOR);
    3844           0 :         if (yych <= 'J') {
    3845           0 :                 if (yych <= '-') {
    3846           0 :                         if (yych == ')') goto yy140;
    3847           0 :                         if (yych <= ',') goto yy4;
    3848           0 :                         goto yy148;
    3849             :                 } else {
    3850           0 :                         if (yych == '/') goto yy148;
    3851           0 :                         if (yych <= '@') goto yy4;
    3852           0 :                         goto yy143;
    3853             :                 }
    3854             :         } else {
    3855           0 :                 if (yych <= '_') {
    3856           0 :                         if (yych <= 'K') goto yy169;
    3857           0 :                         if (yych <= 'Z') goto yy143;
    3858           0 :                         if (yych <= '^') goto yy4;
    3859           0 :                         goto yy148;
    3860             :                 } else {
    3861           0 :                         if (yych <= 'j') {
    3862           0 :                                 if (yych <= '`') goto yy4;
    3863           0 :                                 goto yy151;
    3864             :                         } else {
    3865           0 :                                 if (yych <= 'k') goto yy182;
    3866           0 :                                 if (yych <= 'z') goto yy151;
    3867           0 :                                 goto yy4;
    3868             :                         }
    3869             :                 }
    3870             :         }
    3871             : yy182:
    3872             :         YYDEBUG(182, *YYCURSOR);
    3873           0 :         yyaccept = 0;
    3874           0 :         yych = *(YYMARKER = ++YYCURSOR);
    3875           0 :         if (yych <= 'C') {
    3876           0 :                 if (yych <= '-') {
    3877           0 :                         if (yych == ')') goto yy140;
    3878           0 :                         if (yych <= ',') goto yy4;
    3879           0 :                         goto yy148;
    3880             :                 } else {
    3881           0 :                         if (yych == '/') goto yy148;
    3882           0 :                         if (yych <= '@') goto yy4;
    3883           0 :                         goto yy144;
    3884             :                 }
    3885             :         } else {
    3886           0 :                 if (yych <= '_') {
    3887           0 :                         if (yych <= 'D') goto yy170;
    3888           0 :                         if (yych <= 'Z') goto yy144;
    3889           0 :                         if (yych <= '^') goto yy4;
    3890           0 :                         goto yy148;
    3891             :                 } else {
    3892           0 :                         if (yych <= 'c') {
    3893           0 :                                 if (yych <= '`') goto yy4;
    3894           0 :                                 goto yy152;
    3895             :                         } else {
    3896           0 :                                 if (yych <= 'd') goto yy183;
    3897           0 :                                 if (yych <= 'z') goto yy152;
    3898           0 :                                 goto yy4;
    3899             :                         }
    3900             :                 }
    3901             :         }
    3902             : yy183:
    3903             :         YYDEBUG(183, *YYCURSOR);
    3904           0 :         yyaccept = 0;
    3905           0 :         yych = *(YYMARKER = ++YYCURSOR);
    3906           0 :         if (yych <= '@') {
    3907           0 :                 if (yych <= ',') {
    3908           0 :                         if (yych == ')') goto yy140;
    3909           0 :                         goto yy4;
    3910             :                 } else {
    3911           0 :                         if (yych == '.') goto yy4;
    3912           0 :                         if (yych <= '/') goto yy148;
    3913           0 :                         goto yy4;
    3914             :                 }
    3915             :         } else {
    3916           0 :                 if (yych <= '_') {
    3917           0 :                         if (yych <= 'A') goto yy171;
    3918           0 :                         if (yych <= 'Z') goto yy145;
    3919           0 :                         if (yych <= '^') goto yy4;
    3920           0 :                         goto yy148;
    3921             :                 } else {
    3922           0 :                         if (yych <= '`') goto yy4;
    3923           0 :                         if (yych <= 'a') goto yy184;
    3924           0 :                         if (yych <= 'z') goto yy153;
    3925           0 :                         goto yy4;
    3926             :                 }
    3927             :         }
    3928             : yy184:
    3929             :         YYDEBUG(184, *YYCURSOR);
    3930           0 :         yyaccept = 0;
    3931           0 :         yych = *(YYMARKER = ++YYCURSOR);
    3932           0 :         if (yych <= 'X') {
    3933           0 :                 if (yych <= ',') {
    3934           0 :                         if (yych == ')') goto yy140;
    3935           0 :                         goto yy4;
    3936             :                 } else {
    3937           0 :                         if (yych == '.') goto yy4;
    3938           0 :                         if (yych <= '/') goto yy148;
    3939           0 :                         goto yy4;
    3940             :                 }
    3941             :         } else {
    3942           0 :                 if (yych <= '`') {
    3943           0 :                         if (yych <= 'Y') goto yy172;
    3944           0 :                         if (yych == '_') goto yy148;
    3945           0 :                         goto yy4;
    3946             :                 } else {
    3947           0 :                         if (yych == 'y') goto yy185;
    3948           0 :                         if (yych <= 'z') goto yy154;
    3949           0 :                         goto yy4;
    3950             :                 }
    3951             :         }
    3952             : yy185:
    3953             :         YYDEBUG(185, *YYCURSOR);
    3954           0 :         yyaccept = 4;
    3955           0 :         yych = *(YYMARKER = ++YYCURSOR);
    3956           0 :         if (yych <= 'S') {
    3957           0 :                 if (yych <= '.') {
    3958           0 :                         if (yych == '-') goto yy148;
    3959           0 :                         goto yy167;
    3960             :                 } else {
    3961           0 :                         if (yych <= '/') goto yy148;
    3962           0 :                         if (yych <= 'R') goto yy167;
    3963           0 :                         goto yy173;
    3964             :                 }
    3965             :         } else {
    3966           0 :                 if (yych <= '`') {
    3967           0 :                         if (yych == '_') goto yy148;
    3968           0 :                         goto yy167;
    3969             :                 } else {
    3970           0 :                         if (yych == 's') goto yy186;
    3971           0 :                         if (yych <= 'z') goto yy154;
    3972           0 :                         goto yy167;
    3973             :                 }
    3974             :         }
    3975             : yy186:
    3976             :         YYDEBUG(186, *YYCURSOR);
    3977          12 :         yyaccept = 4;
    3978          12 :         yych = *(YYMARKER = ++YYCURSOR);
    3979          12 :         if (yybm[0+yych] & 16) {
    3980           0 :                 goto yy154;
    3981             :         }
    3982          12 :         if (yych <= '.') {
    3983          12 :                 if (yych == '-') goto yy148;
    3984          12 :                 goto yy167;
    3985             :         } else {
    3986           0 :                 if (yych <= '/') goto yy148;
    3987           0 :                 if (yych == '_') goto yy148;
    3988           0 :                 goto yy167;
    3989             :         }
    3990             : yy187:
    3991             :         YYDEBUG(187, *YYCURSOR);
    3992           1 :         yyaccept = 0;
    3993           1 :         yych = *(YYMARKER = ++YYCURSOR);
    3994           1 :         if (yych <= 'D') {
    3995           0 :                 if (yych <= '-') {
    3996           0 :                         if (yych == ')') goto yy140;
    3997           0 :                         if (yych <= ',') goto yy4;
    3998           0 :                         goto yy148;
    3999             :                 } else {
    4000           0 :                         if (yych == '/') goto yy148;
    4001           0 :                         if (yych <= '@') goto yy4;
    4002           0 :                         goto yy144;
    4003             :                 }
    4004             :         } else {
    4005           1 :                 if (yych <= '_') {
    4006           0 :                         if (yych <= 'E') goto yy175;
    4007           0 :                         if (yych <= 'Z') goto yy144;
    4008           0 :                         if (yych <= '^') goto yy4;
    4009           0 :                         goto yy148;
    4010             :                 } else {
    4011           1 :                         if (yych <= 'd') {
    4012           0 :                                 if (yych <= '`') goto yy4;
    4013           0 :                                 goto yy152;
    4014             :                         } else {
    4015           1 :                                 if (yych <= 'e') goto yy188;
    4016           0 :                                 if (yych <= 'z') goto yy152;
    4017           0 :                                 goto yy4;
    4018             :                         }
    4019             :                 }
    4020             :         }
    4021             : yy188:
    4022             :         YYDEBUG(188, *YYCURSOR);
    4023           1 :         yyaccept = 0;
    4024           1 :         yych = *(YYMARKER = ++YYCURSOR);
    4025           1 :         if (yych <= 'R') {
    4026           0 :                 if (yych <= '-') {
    4027           0 :                         if (yych == ')') goto yy140;
    4028           0 :                         if (yych <= ',') goto yy4;
    4029           0 :                         goto yy148;
    4030             :                 } else {
    4031           0 :                         if (yych == '/') goto yy148;
    4032           0 :                         if (yych <= '@') goto yy4;
    4033           0 :                         goto yy145;
    4034             :                 }
    4035             :         } else {
    4036           1 :                 if (yych <= '_') {
    4037           0 :                         if (yych <= 'S') goto yy176;
    4038           0 :                         if (yych <= 'Z') goto yy145;
    4039           0 :                         if (yych <= '^') goto yy4;
    4040           0 :                         goto yy148;
    4041             :                 } else {
    4042           1 :                         if (yych <= 'r') {
    4043           0 :                                 if (yych <= '`') goto yy4;
    4044           0 :                                 goto yy153;
    4045             :                         } else {
    4046           1 :                                 if (yych <= 's') goto yy189;
    4047           0 :                                 if (yych <= 'z') goto yy153;
    4048           0 :                                 goto yy4;
    4049             :                         }
    4050             :                 }
    4051             :         }
    4052             : yy189:
    4053             :         YYDEBUG(189, *YYCURSOR);
    4054           1 :         yyaccept = 0;
    4055           1 :         yych = *(YYMARKER = ++YYCURSOR);
    4056           1 :         if (yych <= 'C') {
    4057           0 :                 if (yych <= ',') {
    4058           0 :                         if (yych == ')') goto yy140;
    4059           0 :                         goto yy4;
    4060             :                 } else {
    4061           0 :                         if (yych == '.') goto yy4;
    4062           0 :                         if (yych <= '/') goto yy148;
    4063           0 :                         goto yy4;
    4064             :                 }
    4065             :         } else {
    4066           1 :                 if (yych <= '`') {
    4067           0 :                         if (yych <= 'D') goto yy177;
    4068           0 :                         if (yych == '_') goto yy148;
    4069           0 :                         goto yy4;
    4070             :                 } else {
    4071           1 :                         if (yych == 'd') goto yy190;
    4072           0 :                         if (yych <= 'z') goto yy154;
    4073           0 :                         goto yy4;
    4074             :                 }
    4075             :         }
    4076             : yy190:
    4077             :         YYDEBUG(190, *YYCURSOR);
    4078           1 :         yych = *++YYCURSOR;
    4079           1 :         if (yych == 'A') goto yy178;
    4080           1 :         if (yych != 'a') goto yy155;
    4081             :         YYDEBUG(191, *YYCURSOR);
    4082           1 :         yych = *++YYCURSOR;
    4083           1 :         if (yych == 'Y') goto yy173;
    4084           1 :         if (yych == 'y') goto yy186;
    4085           0 :         goto yy155;
    4086             : yy192:
    4087             :         YYDEBUG(192, *YYCURSOR);
    4088           0 :         yych = *++YYCURSOR;
    4089           0 :         if (yych <= 'C') {
    4090           0 :                 if (yych <= ')') {
    4091           0 :                         if (yych <= '(') goto yy4;
    4092           0 :                         goto yy140;
    4093             :                 } else {
    4094           0 :                         if (yych <= '@') goto yy4;
    4095           0 :                         if (yych <= 'B') goto yy142;
    4096             :                 }
    4097             :         } else {
    4098           0 :                 if (yych <= 'b') {
    4099           0 :                         if (yych <= 'Z') goto yy142;
    4100           0 :                         if (yych <= '`') goto yy4;
    4101           0 :                         goto yy142;
    4102             :                 } else {
    4103           0 :                         if (yych <= 'c') goto yy193;
    4104           0 :                         if (yych <= 'z') goto yy142;
    4105           0 :                         goto yy4;
    4106             :                 }
    4107             :         }
    4108             : yy193:
    4109             :         YYDEBUG(193, *YYCURSOR);
    4110           0 :         yyaccept = 5;
    4111           0 :         yych = *(YYMARKER = ++YYCURSOR);
    4112           0 :         if (yych <= '/') {
    4113           0 :                 if (yych <= '(') {
    4114           0 :                         if (yych <= '\t') {
    4115           0 :                                 if (yych >= '\t') goto yy196;
    4116             :                         } else {
    4117           0 :                                 if (yych == ' ') goto yy196;
    4118             :                         }
    4119             :                 } else {
    4120           0 :                         if (yych <= ',') {
    4121           0 :                                 if (yych <= ')') goto yy140;
    4122             :                         } else {
    4123           0 :                                 if (yych <= '-') goto yy197;
    4124           0 :                                 if (yych <= '.') goto yy196;
    4125             :                         }
    4126             :                 }
    4127             :         } else {
    4128           0 :                 if (yych <= 'Z') {
    4129           0 :                         if (yych <= '@') {
    4130           0 :                                 if (yych <= '9') goto yy196;
    4131             :                         } else {
    4132           0 :                                 if (yych == 'E') goto yy202;
    4133           0 :                                 goto yy143;
    4134             :                         }
    4135             :                 } else {
    4136           0 :                         if (yych <= 'd') {
    4137           0 :                                 if (yych >= 'a') goto yy143;
    4138             :                         } else {
    4139           0 :                                 if (yych <= 'e') goto yy202;
    4140           0 :                                 if (yych <= 'z') goto yy143;
    4141             :                         }
    4142             :                 }
    4143             :         }
    4144             : yy194:
    4145             :         YYDEBUG(194, *YYCURSOR);
    4146             : #line 1671 "ext/date/lib/parse_date.re"
    4147             :         {
    4148             :                 DEBUG_OUTPUT("monthtext");
    4149             :                 TIMELIB_INIT;
    4150             :                 TIMELIB_HAVE_DATE();
    4151             :                 s->time->m = timelib_lookup_month((char **) &ptr);
    4152             :                 TIMELIB_DEINIT;
    4153             :                 return TIMELIB_DATE_TEXT;
    4154             :         }
    4155             : #line 4156 "ext/date/lib/parse_date.c"
    4156             : yy195:
    4157             :         YYDEBUG(195, *YYCURSOR);
    4158          73 :         ++YYCURSOR;
    4159          73 :         if ((YYLIMIT - YYCURSOR) < 21) YYFILL(21);
    4160          73 :         yych = *YYCURSOR;
    4161             : yy196:
    4162             :         YYDEBUG(196, *YYCURSOR);
    4163         146 :         if (yybm[0+yych] & 32) {
    4164          73 :                 goto yy195;
    4165             :         }
    4166          73 :         if (yych <= '/') goto yy57;
    4167          73 :         if (yych <= '2') goto yy198;
    4168           3 :         if (yych <= '3') goto yy200;
    4169           2 :         if (yych <= '9') goto yy201;
    4170           0 :         goto yy57;
    4171             : yy197:
    4172             :         YYDEBUG(197, *YYCURSOR);
    4173           0 :         yych = *++YYCURSOR;
    4174           0 :         if (yych <= '/') goto yy196;
    4175           0 :         if (yych <= '0') goto yy357;
    4176           0 :         if (yych <= '2') goto yy358;
    4177           0 :         if (yych <= '3') goto yy359;
    4178           0 :         goto yy196;
    4179             : yy198:
    4180             :         YYDEBUG(198, *YYCURSOR);
    4181          70 :         yyaccept = 6;
    4182          70 :         yych = *(YYMARKER = ++YYCURSOR);
    4183          70 :         if (yych <= 'm') {
    4184          70 :                 if (yych <= '1') {
    4185          49 :                         if (yych <= '/') goto yy216;
    4186          37 :                         if (yych <= '0') goto yy298;
    4187           8 :                         goto yy299;
    4188             :                 } else {
    4189          21 :                         if (yych <= '2') goto yy355;
    4190          21 :                         if (yych <= '9') goto yy356;
    4191           0 :                         goto yy216;
    4192             :                 }
    4193             :         } else {
    4194           0 :                 if (yych <= 'r') {
    4195           0 :                         if (yych <= 'n') goto yy212;
    4196           0 :                         if (yych <= 'q') goto yy216;
    4197           0 :                         goto yy213;
    4198             :                 } else {
    4199           0 :                         if (yych <= 's') goto yy211;
    4200           0 :                         if (yych <= 't') goto yy214;
    4201           0 :                         goto yy216;
    4202             :                 }
    4203             :         }
    4204             : yy199:
    4205             :         YYDEBUG(199, *YYCURSOR);
    4206             : #line 1417 "ext/date/lib/parse_date.re"
    4207             :         {
    4208             :                 int length = 0;
    4209             :                 DEBUG_OUTPUT("datetextual | datenoyear");
    4210             :                 TIMELIB_INIT;
    4211             :                 TIMELIB_HAVE_DATE();
    4212             :                 s->time->m = timelib_get_month((char **) &ptr);
    4213             :                 s->time->d = timelib_get_nr((char **) &ptr, 2);
    4214             :                 s->time->y = timelib_get_nr_ex((char **) &ptr, 4, &length);
    4215             :                 TIMELIB_PROCESS_YEAR(s->time->y, length);
    4216             :                 TIMELIB_DEINIT;
    4217             :                 return TIMELIB_DATE_TEXT;
    4218             :         }
    4219             : #line 4220 "ext/date/lib/parse_date.c"
    4220             : yy200:
    4221             :         YYDEBUG(200, *YYCURSOR);
    4222           1 :         yyaccept = 6;
    4223           1 :         yych = *(YYMARKER = ++YYCURSOR);
    4224           1 :         if (yych <= 'm') {
    4225           1 :                 if (yych <= '1') {
    4226           1 :                         if (yych <= '/') goto yy216;
    4227           1 :                         if (yych <= '0') goto yy298;
    4228           0 :                         goto yy299;
    4229             :                 } else {
    4230           0 :                         if (yych <= '2') goto yy209;
    4231           0 :                         if (yych <= '9') goto yy210;
    4232           0 :                         goto yy216;
    4233             :                 }
    4234             :         } else {
    4235           0 :                 if (yych <= 'r') {
    4236           0 :                         if (yych <= 'n') goto yy212;
    4237           0 :                         if (yych <= 'q') goto yy216;
    4238           0 :                         goto yy213;
    4239             :                 } else {
    4240           0 :                         if (yych <= 's') goto yy211;
    4241           0 :                         if (yych <= 't') goto yy214;
    4242           0 :                         goto yy216;
    4243             :                 }
    4244             :         }
    4245             : yy201:
    4246             :         YYDEBUG(201, *YYCURSOR);
    4247           2 :         yyaccept = 6;
    4248           2 :         yych = *(YYMARKER = ++YYCURSOR);
    4249           2 :         if (yych <= 'm') {
    4250           0 :                 if (yych <= '1') {
    4251           0 :                         if (yych <= '/') goto yy216;
    4252           0 :                         if (yych <= '0') goto yy207;
    4253           0 :                         goto yy208;
    4254             :                 } else {
    4255           0 :                         if (yych <= '2') goto yy209;
    4256           0 :                         if (yych <= '9') goto yy210;
    4257           0 :                         goto yy216;
    4258             :                 }
    4259             :         } else {
    4260           2 :                 if (yych <= 'r') {
    4261           0 :                         if (yych <= 'n') goto yy212;
    4262           0 :                         if (yych <= 'q') goto yy216;
    4263           0 :                         goto yy213;
    4264             :                 } else {
    4265           2 :                         if (yych <= 's') goto yy211;
    4266           2 :                         if (yych <= 't') goto yy214;
    4267           0 :                         goto yy216;
    4268             :                 }
    4269             :         }
    4270             : yy202:
    4271             :         YYDEBUG(202, *YYCURSOR);
    4272           0 :         yych = *++YYCURSOR;
    4273           0 :         if (yych <= 'M') {
    4274           0 :                 if (yych <= ')') {
    4275           0 :                         if (yych <= '(') goto yy4;
    4276           0 :                         goto yy140;
    4277             :                 } else {
    4278           0 :                         if (yych <= '@') goto yy4;
    4279           0 :                         if (yych <= 'L') goto yy144;
    4280             :                 }
    4281             :         } else {
    4282           0 :                 if (yych <= 'l') {
    4283           0 :                         if (yych <= 'Z') goto yy144;
    4284           0 :                         if (yych <= '`') goto yy4;
    4285           0 :                         goto yy144;
    4286             :                 } else {
    4287           0 :                         if (yych <= 'm') goto yy203;
    4288           0 :                         if (yych <= 'z') goto yy144;
    4289           0 :                         goto yy4;
    4290             :                 }
    4291             :         }
    4292             : yy203:
    4293             :         YYDEBUG(203, *YYCURSOR);
    4294           0 :         yych = *++YYCURSOR;
    4295           0 :         if (yych <= 'B') {
    4296           0 :                 if (yych <= ')') {
    4297           0 :                         if (yych <= '(') goto yy4;
    4298           0 :                         goto yy140;
    4299             :                 } else {
    4300           0 :                         if (yych <= '@') goto yy4;
    4301           0 :                         if (yych <= 'A') goto yy145;
    4302             :                 }
    4303             :         } else {
    4304           0 :                 if (yych <= 'a') {
    4305           0 :                         if (yych <= 'Z') goto yy145;
    4306           0 :                         if (yych <= '`') goto yy4;
    4307           0 :                         goto yy145;
    4308             :                 } else {
    4309           0 :                         if (yych <= 'b') goto yy204;
    4310           0 :                         if (yych <= 'z') goto yy145;
    4311           0 :                         goto yy4;
    4312             :                 }
    4313             :         }
    4314             : yy204:
    4315             :         YYDEBUG(204, *YYCURSOR);
    4316           0 :         yyaccept = 0;
    4317           0 :         yych = *(YYMARKER = ++YYCURSOR);
    4318           0 :         if (yych <= 'D') {
    4319           0 :                 if (yych == ')') goto yy140;
    4320           0 :                 goto yy4;
    4321             :         } else {
    4322           0 :                 if (yych <= 'E') goto yy205;
    4323           0 :                 if (yych != 'e') goto yy4;
    4324             :         }
    4325             : yy205:
    4326             :         YYDEBUG(205, *YYCURSOR);
    4327           0 :         yych = *++YYCURSOR;
    4328           0 :         if (yych == 'R') goto yy206;
    4329           0 :         if (yych != 'r') goto yy57;
    4330             : yy206:
    4331             :         YYDEBUG(206, *YYCURSOR);
    4332           2 :         yyaccept = 5;
    4333           2 :         yych = *(YYMARKER = ++YYCURSOR);
    4334           2 :         if (yych <= ' ') {
    4335           2 :                 if (yych == '\t') goto yy196;
    4336           2 :                 if (yych <= 0x1F) goto yy194;
    4337           2 :                 goto yy196;
    4338             :         } else {
    4339           0 :                 if (yych <= '.') {
    4340           0 :                         if (yych <= ',') goto yy194;
    4341           0 :                         goto yy196;
    4342             :                 } else {
    4343           0 :                         if (yych <= '/') goto yy194;
    4344           0 :                         if (yych <= '9') goto yy196;
    4345           0 :                         goto yy194;
    4346             :                 }
    4347             :         }
    4348             : yy207:
    4349             :         YYDEBUG(207, *YYCURSOR);
    4350           0 :         yych = *++YYCURSOR;
    4351           0 :         if (yych <= '/') {
    4352           0 :                 if (yych == '.') goto yy221;
    4353           0 :                 goto yy57;
    4354             :         } else {
    4355           0 :                 if (yych <= '0') goto yy296;
    4356           0 :                 if (yych <= '9') goto yy297;
    4357           0 :                 if (yych <= ':') goto yy221;
    4358           0 :                 goto yy57;
    4359             :         }
    4360             : yy208:
    4361             :         YYDEBUG(208, *YYCURSOR);
    4362           0 :         yych = *++YYCURSOR;
    4363           0 :         if (yych <= '/') {
    4364           0 :                 if (yych == '.') goto yy264;
    4365           0 :                 goto yy57;
    4366             :         } else {
    4367           0 :                 if (yych <= '2') goto yy297;
    4368           0 :                 if (yych <= '9') goto yy296;
    4369           0 :                 if (yych <= ':') goto yy264;
    4370           0 :                 goto yy57;
    4371             :         }
    4372             : yy209:
    4373             :         YYDEBUG(209, *YYCURSOR);
    4374           0 :         yych = *++YYCURSOR;
    4375           0 :         if (yych <= '/') {
    4376           0 :                 if (yych == '.') goto yy264;
    4377           0 :                 goto yy57;
    4378             :         } else {
    4379           0 :                 if (yych <= '4') goto yy296;
    4380           0 :                 if (yych <= '9') goto yy293;
    4381           0 :                 if (yych <= ':') goto yy264;
    4382           0 :                 goto yy57;
    4383             :         }
    4384             : yy210:
    4385             :         YYDEBUG(210, *YYCURSOR);
    4386           0 :         yych = *++YYCURSOR;
    4387           0 :         if (yych <= '/') {
    4388           0 :                 if (yych == '.') goto yy264;
    4389           0 :                 goto yy57;
    4390             :         } else {
    4391           0 :                 if (yych <= '9') goto yy293;
    4392           0 :                 if (yych <= ':') goto yy264;
    4393           0 :                 goto yy57;
    4394             :         }
    4395             : yy211:
    4396             :         YYDEBUG(211, *YYCURSOR);
    4397           0 :         yyaccept = 6;
    4398           0 :         yych = *(YYMARKER = ++YYCURSOR);
    4399           0 :         goto yy216;
    4400             : yy212:
    4401             :         YYDEBUG(212, *YYCURSOR);
    4402           0 :         yyaccept = 6;
    4403           0 :         yych = *(YYMARKER = ++YYCURSOR);
    4404           0 :         goto yy216;
    4405             : yy213:
    4406             :         YYDEBUG(213, *YYCURSOR);
    4407           0 :         yyaccept = 6;
    4408           0 :         yych = *(YYMARKER = ++YYCURSOR);
    4409           0 :         goto yy216;
    4410             : yy214:
    4411             :         YYDEBUG(214, *YYCURSOR);
    4412           8 :         yyaccept = 6;
    4413           8 :         yych = *(YYMARKER = ++YYCURSOR);
    4414           8 :         goto yy216;
    4415             : yy215:
    4416             :         YYDEBUG(215, *YYCURSOR);
    4417          65 :         yyaccept = 6;
    4418          65 :         YYMARKER = ++YYCURSOR;
    4419          65 :         if ((YYLIMIT - YYCURSOR) < 18) YYFILL(18);
    4420          65 :         yych = *YYCURSOR;
    4421             : yy216:
    4422             :         YYDEBUG(216, *YYCURSOR);
    4423         108 :         if (yybm[0+yych] & 64) {
    4424          65 :                 goto yy215;
    4425             :         }
    4426          43 :         if (yych <= '2') {
    4427          36 :                 if (yych <= '/') goto yy199;
    4428          34 :                 if (yych <= '0') goto yy259;
    4429          28 :                 if (yych <= '1') goto yy260;
    4430          17 :                 goto yy261;
    4431             :         } else {
    4432           7 :                 if (yych <= '9') goto yy262;
    4433           2 :                 if (yych != 'T') goto yy199;
    4434             :         }
    4435             :         YYDEBUG(217, *YYCURSOR);
    4436           0 :         yych = *++YYCURSOR;
    4437           0 :         if (yych <= '/') goto yy57;
    4438           0 :         if (yych <= '1') goto yy218;
    4439           0 :         if (yych <= '2') goto yy219;
    4440           0 :         if (yych <= '9') goto yy220;
    4441           0 :         goto yy57;
    4442             : yy218:
    4443             :         YYDEBUG(218, *YYCURSOR);
    4444           0 :         yych = *++YYCURSOR;
    4445           0 :         if (yych <= '/') {
    4446           0 :                 if (yych == '.') goto yy221;
    4447           0 :                 goto yy57;
    4448             :         } else {
    4449           0 :                 if (yych <= '9') goto yy220;
    4450           0 :                 if (yych <= ':') goto yy221;
    4451           0 :                 goto yy57;
    4452             :         }
    4453             : yy219:
    4454             :         YYDEBUG(219, *YYCURSOR);
    4455           0 :         yych = *++YYCURSOR;
    4456           0 :         if (yych <= '/') {
    4457           0 :                 if (yych == '.') goto yy221;
    4458           0 :                 goto yy57;
    4459             :         } else {
    4460           0 :                 if (yych <= '4') goto yy220;
    4461           0 :                 if (yych == ':') goto yy221;
    4462           0 :                 goto yy57;
    4463             :         }
    4464             : yy220:
    4465             :         YYDEBUG(220, *YYCURSOR);
    4466           0 :         yych = *++YYCURSOR;
    4467           0 :         if (yych == '.') goto yy221;
    4468           0 :         if (yych != ':') goto yy57;
    4469             : yy221:
    4470             :         YYDEBUG(221, *YYCURSOR);
    4471           3 :         yych = *++YYCURSOR;
    4472           3 :         if (yych <= '/') goto yy57;
    4473           3 :         if (yych <= '5') goto yy222;
    4474           0 :         if (yych <= '9') goto yy224;
    4475           0 :         goto yy57;
    4476             : yy222:
    4477             :         YYDEBUG(222, *YYCURSOR);
    4478           3 :         yyaccept = 7;
    4479           3 :         yych = *(YYMARKER = ++YYCURSOR);
    4480           3 :         if (yych <= '/') {
    4481           0 :                 if (yych == '.') goto yy225;
    4482             :         } else {
    4483           3 :                 if (yych <= '9') goto yy224;
    4484           0 :                 if (yych <= ':') goto yy225;
    4485             :         }
    4486             : yy223:
    4487             :         YYDEBUG(223, *YYCURSOR);
    4488             : #line 1719 "ext/date/lib/parse_date.re"
    4489             :         {
    4490             :                 int tz_not_found;
    4491             :                 DEBUG_OUTPUT("dateshortwithtimeshort | dateshortwithtimelong | dateshortwithtimelongtz");
    4492             :                 TIMELIB_INIT;
    4493             :                 TIMELIB_HAVE_DATE();
    4494             :                 s->time->m = timelib_get_month((char **) &ptr);
    4495             :                 s->time->d = timelib_get_nr((char **) &ptr, 2);
    4496             : 
    4497             :                 TIMELIB_HAVE_TIME();
    4498             :                 s->time->h = timelib_get_nr((char **) &ptr, 2);
    4499             :                 s->time->i = timelib_get_nr((char **) &ptr, 2);
    4500             :                 if (*ptr == ':') {
    4501             :                         s->time->s = timelib_get_nr((char **) &ptr, 2);
    4502             : 
    4503             :                         if (*ptr == '.') {
    4504             :                                 s->time->f = timelib_get_frac_nr((char **) &ptr, 8);
    4505             :                         }
    4506             :                 }
    4507             : 
    4508             :                 if (*ptr != '\0') {
    4509             :                         s->time->z = timelib_get_zone((char **) &ptr, &s->time->dst, s->time, &tz_not_found, s->tzdb, tz_get_wrapper);
    4510             :                         if (tz_not_found) {
    4511             :                                 add_error(s, "The timezone could not be found in the database");
    4512             :                         }
    4513             :                 }
    4514             :                 TIMELIB_DEINIT;
    4515             :                 return TIMELIB_SHORTDATE_WITH_TIME;
    4516             :         }
    4517             : #line 4518 "ext/date/lib/parse_date.c"
    4518             : yy224:
    4519             :         YYDEBUG(224, *YYCURSOR);
    4520           3 :         yyaccept = 7;
    4521           3 :         yych = *(YYMARKER = ++YYCURSOR);
    4522           3 :         if (yych == '.') goto yy225;
    4523           3 :         if (yych != ':') goto yy223;
    4524             : yy225:
    4525             :         YYDEBUG(225, *YYCURSOR);
    4526           1 :         yych = *++YYCURSOR;
    4527           1 :         if (yych <= '/') goto yy57;
    4528           1 :         if (yych <= '5') goto yy226;
    4529           0 :         if (yych <= '6') goto yy227;
    4530           0 :         if (yych <= '9') goto yy228;
    4531           0 :         goto yy57;
    4532             : yy226:
    4533             :         YYDEBUG(226, *YYCURSOR);
    4534           1 :         yych = *++YYCURSOR;
    4535           1 :         if (yych <= '/') goto yy223;
    4536           1 :         if (yych <= '9') goto yy229;
    4537           0 :         goto yy223;
    4538             : yy227:
    4539             :         YYDEBUG(227, *YYCURSOR);
    4540           0 :         yych = *++YYCURSOR;
    4541           0 :         if (yych == '0') goto yy229;
    4542           0 :         goto yy223;
    4543             : yy228:
    4544             :         YYDEBUG(228, *YYCURSOR);
    4545           0 :         yych = *++YYCURSOR;
    4546           0 :         goto yy223;
    4547             : yy229:
    4548             :         YYDEBUG(229, *YYCURSOR);
    4549           1 :         yyaccept = 7;
    4550           1 :         yych = *(YYMARKER = ++YYCURSOR);
    4551           1 :         if (yych <= '*') {
    4552           1 :                 if (yych <= 0x1F) {
    4553           0 :                         if (yych == '\t') goto yy231;
    4554           0 :                         goto yy223;
    4555             :                 } else {
    4556           1 :                         if (yych <= ' ') goto yy231;
    4557           0 :                         if (yych == '(') goto yy231;
    4558           0 :                         goto yy223;
    4559             :                 }
    4560             :         } else {
    4561           0 :                 if (yych <= '@') {
    4562           0 :                         if (yych == ',') goto yy223;
    4563           0 :                         if (yych <= '-') goto yy231;
    4564           0 :                         goto yy223;
    4565             :                 } else {
    4566           0 :                         if (yych <= 'Z') goto yy231;
    4567           0 :                         if (yych <= '`') goto yy223;
    4568           0 :                         if (yych <= 'z') goto yy231;
    4569           0 :                         goto yy223;
    4570             :                 }
    4571             :         }
    4572             : yy230:
    4573             :         YYDEBUG(230, *YYCURSOR);
    4574           1 :         ++YYCURSOR;
    4575           1 :         if ((YYLIMIT - YYCURSOR) < 9) YYFILL(9);
    4576           1 :         yych = *YYCURSOR;
    4577             : yy231:
    4578             :         YYDEBUG(231, *YYCURSOR);
    4579           2 :         if (yych <= '+') {
    4580           1 :                 if (yych <= ' ') {
    4581           1 :                         if (yych == '\t') goto yy230;
    4582           1 :                         if (yych <= 0x1F) goto yy57;
    4583           1 :                         goto yy230;
    4584             :                 } else {
    4585           0 :                         if (yych == '(') goto yy234;
    4586           0 :                         if (yych <= '*') goto yy57;
    4587           0 :                         goto yy233;
    4588             :                 }
    4589             :         } else {
    4590           1 :                 if (yych <= 'F') {
    4591           1 :                         if (yych == '-') goto yy233;
    4592           1 :                         if (yych <= '@') goto yy57;
    4593           0 :                         goto yy235;
    4594             :                 } else {
    4595           0 :                         if (yych <= 'Z') {
    4596           0 :                                 if (yych >= 'H') goto yy235;
    4597             :                         } else {
    4598           0 :                                 if (yych <= '`') goto yy57;
    4599           0 :                                 if (yych <= 'z') goto yy236;
    4600           0 :                                 goto yy57;
    4601             :                         }
    4602             :                 }
    4603             :         }
    4604             : yy232:
    4605             :         YYDEBUG(232, *YYCURSOR);
    4606           0 :         yych = *++YYCURSOR;
    4607           0 :         if (yych <= 'L') {
    4608           0 :                 if (yych == ')') goto yy228;
    4609           0 :                 if (yych <= '@') goto yy223;
    4610           0 :                 goto yy237;
    4611             :         } else {
    4612           0 :                 if (yych <= 'Z') {
    4613           0 :                         if (yych <= 'M') goto yy257;
    4614           0 :                         goto yy237;
    4615             :                 } else {
    4616           0 :                         if (yych <= '`') goto yy223;
    4617           0 :                         if (yych <= 'z') goto yy242;
    4618           0 :                         goto yy223;
    4619             :                 }
    4620             :         }
    4621             : yy233:
    4622             :         YYDEBUG(233, *YYCURSOR);
    4623           0 :         yych = *++YYCURSOR;
    4624           0 :         if (yych <= '/') goto yy57;
    4625           0 :         if (yych <= '1') goto yy252;
    4626           0 :         if (yych <= '2') goto yy253;
    4627           0 :         if (yych <= '9') goto yy254;
    4628           0 :         goto yy57;
    4629             : yy234:
    4630             :         YYDEBUG(234, *YYCURSOR);
    4631           0 :         yych = *++YYCURSOR;
    4632           0 :         if (yych <= '@') goto yy57;
    4633           0 :         if (yych <= 'Z') goto yy236;
    4634           0 :         if (yych <= '`') goto yy57;
    4635           0 :         if (yych <= 'z') goto yy236;
    4636           0 :         goto yy57;
    4637             : yy235:
    4638             :         YYDEBUG(235, *YYCURSOR);
    4639           0 :         yych = *++YYCURSOR;
    4640           0 :         if (yych <= '@') {
    4641           0 :                 if (yych == ')') goto yy228;
    4642           0 :                 goto yy223;
    4643             :         } else {
    4644           0 :                 if (yych <= 'Z') goto yy237;
    4645           0 :                 if (yych <= '`') goto yy223;
    4646           0 :                 if (yych <= 'z') goto yy242;
    4647           0 :                 goto yy223;
    4648             :         }
    4649             : yy236:
    4650             :         YYDEBUG(236, *YYCURSOR);
    4651           0 :         yych = *++YYCURSOR;
    4652           0 :         if (yych <= '@') {
    4653           0 :                 if (yych == ')') goto yy228;
    4654           0 :                 goto yy223;
    4655             :         } else {
    4656           0 :                 if (yych <= 'Z') goto yy237;
    4657           0 :                 if (yych <= '`') goto yy223;
    4658           0 :                 if (yych >= '{') goto yy223;
    4659             :         }
    4660             : yy237:
    4661             :         YYDEBUG(237, *YYCURSOR);
    4662           0 :         yych = *++YYCURSOR;
    4663           0 :         if (yych <= '@') {
    4664           0 :                 if (yych == ')') goto yy228;
    4665           0 :                 goto yy223;
    4666             :         } else {
    4667           0 :                 if (yych <= 'Z') goto yy238;
    4668           0 :                 if (yych <= '`') goto yy223;
    4669           0 :                 if (yych >= '{') goto yy223;
    4670             :         }
    4671             : yy238:
    4672             :         YYDEBUG(238, *YYCURSOR);
    4673           0 :         yych = *++YYCURSOR;
    4674           0 :         if (yych <= '@') {
    4675           0 :                 if (yych == ')') goto yy228;
    4676           0 :                 goto yy223;
    4677             :         } else {
    4678           0 :                 if (yych <= 'Z') goto yy239;
    4679           0 :                 if (yych <= '`') goto yy223;
    4680           0 :                 if (yych >= '{') goto yy223;
    4681             :         }
    4682             : yy239:
    4683             :         YYDEBUG(239, *YYCURSOR);
    4684           0 :         yych = *++YYCURSOR;
    4685           0 :         if (yych <= '@') {
    4686           0 :                 if (yych == ')') goto yy228;
    4687           0 :                 goto yy223;
    4688             :         } else {
    4689           0 :                 if (yych <= 'Z') goto yy240;
    4690           0 :                 if (yych <= '`') goto yy223;
    4691           0 :                 if (yych >= '{') goto yy223;
    4692             :         }
    4693             : yy240:
    4694             :         YYDEBUG(240, *YYCURSOR);
    4695           0 :         yych = *++YYCURSOR;
    4696           0 :         if (yych <= '@') {
    4697           0 :                 if (yych == ')') goto yy228;
    4698           0 :                 goto yy223;
    4699             :         } else {
    4700           0 :                 if (yych <= 'Z') goto yy241;
    4701           0 :                 if (yych <= '`') goto yy223;
    4702           0 :                 if (yych >= '{') goto yy223;
    4703             :         }
    4704             : yy241:
    4705             :         YYDEBUG(241, *YYCURSOR);
    4706           0 :         yych = *++YYCURSOR;
    4707           0 :         if (yych == ')') goto yy228;
    4708           0 :         goto yy223;
    4709             : yy242:
    4710             :         YYDEBUG(242, *YYCURSOR);
    4711           0 :         yyaccept = 7;
    4712           0 :         yych = *(YYMARKER = ++YYCURSOR);
    4713           0 :         if (yych <= '/') {
    4714           0 :                 if (yych <= ',') {
    4715           0 :                         if (yych == ')') goto yy228;
    4716           0 :                         goto yy223;
    4717             :                 } else {
    4718           0 :                         if (yych == '.') goto yy223;
    4719           0 :                         goto yy244;
    4720             :                 }
    4721             :         } else {
    4722           0 :                 if (yych <= '^') {
    4723           0 :                         if (yych <= '@') goto yy223;
    4724           0 :                         if (yych <= 'Z') goto yy238;
    4725           0 :                         goto yy223;
    4726             :                 } else {
    4727           0 :                         if (yych <= '_') goto yy244;
    4728           0 :                         if (yych <= '`') goto yy223;
    4729           0 :                         if (yych >= '{') goto yy223;
    4730             :                 }
    4731             :         }
    4732             : yy243:
    4733             :         YYDEBUG(243, *YYCURSOR);
    4734           0 :         yyaccept = 7;
    4735           0 :         yych = *(YYMARKER = ++YYCURSOR);
    4736           0 :         if (yych <= '/') {
    4737           0 :                 if (yych <= ',') {
    4738           0 :                         if (yych == ')') goto yy228;
    4739           0 :                         goto yy223;
    4740             :                 } else {
    4741           0 :                         if (yych == '.') goto yy223;
    4742             :                 }
    4743             :         } else {
    4744           0 :                 if (yych <= '^') {
    4745           0 :                         if (yych <= '@') goto yy223;
    4746           0 :                         if (yych <= 'Z') goto yy239;
    4747           0 :                         goto yy223;
    4748             :                 } else {
    4749           0 :                         if (yych <= '_') goto yy244;
    4750           0 :                         if (yych <= '`') goto yy223;
    4751           0 :                         if (yych <= 'z') goto yy247;
    4752           0 :                         goto yy223;
    4753             :                 }
    4754             :         }
    4755             : yy244:
    4756             :         YYDEBUG(244, *YYCURSOR);
    4757           0 :         ++YYCURSOR;
    4758           0 :         if (YYLIMIT <= YYCURSOR) YYFILL(1);
    4759           0 :         yych = *YYCURSOR;
    4760           0 :         if (yych <= '@') goto yy57;
    4761           0 :         if (yych <= 'Z') goto yy245;
    4762           0 :         if (yych <= '`') goto yy57;
    4763           0 :         if (yych >= '{') goto yy57;
    4764             : yy245:
    4765             :         YYDEBUG(245, *YYCURSOR);
    4766           0 :         yyaccept = 7;
    4767           0 :         YYMARKER = ++YYCURSOR;
    4768           0 :         if (YYLIMIT <= YYCURSOR) YYFILL(1);
    4769           0 :         yych = *YYCURSOR;
    4770             :         YYDEBUG(246, *YYCURSOR);
    4771           0 :         if (yych <= '@') {
    4772           0 :                 if (yych <= '-') {
    4773           0 :                         if (yych <= ',') goto yy223;
    4774           0 :                         goto yy244;
    4775             :                 } else {
    4776           0 :                         if (yych == '/') goto yy244;
    4777           0 :                         goto yy223;
    4778             :                 }
    4779             :         } else {
    4780           0 :                 if (yych <= '_') {
    4781           0 :                         if (yych <= 'Z') goto yy245;
    4782           0 :                         if (yych <= '^') goto yy223;
    4783           0 :                         goto yy244;
    4784             :                 } else {
    4785           0 :                         if (yych <= '`') goto yy223;
    4786           0 :                         if (yych <= 'z') goto yy245;
    4787           0 :                         goto yy223;
    4788             :                 }
    4789             :         }
    4790             : yy247:
    4791             :         YYDEBUG(247, *YYCURSOR);
    4792           0 :         yyaccept = 7;
    4793           0 :         yych = *(YYMARKER = ++YYCURSOR);
    4794           0 :         if (yych <= '/') {
    4795           0 :                 if (yych <= ',') {
    4796           0 :                         if (yych == ')') goto yy228;
    4797           0 :                         goto yy223;
    4798             :                 } else {
    4799           0 :                         if (yych == '.') goto yy223;
    4800           0 :                         goto yy244;
    4801             :                 }
    4802             :         } else {
    4803           0 :                 if (yych <= '^') {
    4804           0 :                         if (yych <= '@') goto yy223;
    4805           0 :                         if (yych <= 'Z') goto yy240;
    4806           0 :                         goto yy223;
    4807             :                 } else {
    4808           0 :                         if (yych <= '_') goto yy244;
    4809           0 :                         if (yych <= '`') goto yy223;
    4810           0 :                         if (yych >= '{') goto yy223;
    4811             :                 }
    4812             :         }
    4813             :         YYDEBUG(248, *YYCURSOR);
    4814           0 :         yyaccept = 7;
    4815           0 :         yych = *(YYMARKER = ++YYCURSOR);
    4816           0 :         if (yych <= '/') {
    4817           0 :                 if (yych <= ',') {
    4818           0 :                         if (yych == ')') goto yy228;
    4819           0 :                         goto yy223;
    4820             :                 } else {
    4821           0 :                         if (yych == '.') goto yy223;
    4822           0 :                         goto yy244;
    4823             :                 }
    4824             :         } else {
    4825           0 :                 if (yych <= '^') {
    4826           0 :                         if (yych <= '@') goto yy223;
    4827           0 :                         if (yych <= 'Z') goto yy241;
    4828           0 :                         goto yy223;
    4829             :                 } else {
    4830           0 :                         if (yych <= '_') goto yy244;
    4831           0 :                         if (yych <= '`') goto yy223;
    4832           0 :                         if (yych >= '{') goto yy223;
    4833             :                 }
    4834             :         }
    4835             :         YYDEBUG(249, *YYCURSOR);
    4836           0 :         yyaccept = 7;
    4837           0 :         yych = *(YYMARKER = ++YYCURSOR);
    4838           0 :         if (yych <= '.') {
    4839           0 :                 if (yych <= ')') {
    4840           0 :                         if (yych <= '(') goto yy223;
    4841           0 :                         goto yy228;
    4842             :                 } else {
    4843           0 :                         if (yych == '-') goto yy244;
    4844           0 :                         goto yy223;
    4845             :                 }
    4846             :         } else {
    4847           0 :                 if (yych <= '_') {
    4848           0 :                         if (yych <= '/') goto yy244;
    4849           0 :                         if (yych <= '^') goto yy223;
    4850           0 :                         goto yy244;
    4851             :                 } else {
    4852           0 :                         if (yych <= '`') goto yy223;
    4853           0 :                         if (yych >= '{') goto yy223;
    4854             :                 }
    4855             :         }
    4856             : yy250:
    4857             :         YYDEBUG(250, *YYCURSOR);
    4858           0 :         ++YYCURSOR;
    4859           0 :         if (YYLIMIT <= YYCURSOR) YYFILL(1);
    4860           0 :         yych = *YYCURSOR;
    4861             :         YYDEBUG(251, *YYCURSOR);
    4862           0 :         if (yych <= '/') {
    4863           0 :                 if (yych == '-') goto yy244;
    4864           0 :                 if (yych <= '.') goto yy57;
    4865           0 :                 goto yy244;
    4866             :         } else {
    4867           0 :                 if (yych <= '_') {
    4868           0 :                         if (yych <= '^') goto yy57;
    4869           0 :                         goto yy244;
    4870             :                 } else {
    4871           0 :                         if (yych <= '`') goto yy57;
    4872           0 :                         if (yych <= 'z') goto yy250;
    4873           0 :                         goto yy57;
    4874             :                 }
    4875             :         }
    4876             : yy252:
    4877             :         YYDEBUG(252, *YYCURSOR);
    4878           0 :         yych = *++YYCURSOR;
    4879           0 :         if (yych <= '/') goto yy223;
    4880           0 :         if (yych <= '9') goto yy254;
    4881           0 :         if (yych <= ':') goto yy255;
    4882           0 :         goto yy223;
    4883             : yy253:
    4884             :         YYDEBUG(253, *YYCURSOR);
    4885           0 :         yych = *++YYCURSOR;
    4886           0 :         if (yych <= '5') {
    4887           0 :                 if (yych <= '/') goto yy223;
    4888           0 :                 if (yych >= '5') goto yy256;
    4889             :         } else {
    4890           0 :                 if (yych <= '9') goto yy228;
    4891           0 :                 if (yych <= ':') goto yy255;
    4892           0 :                 goto yy223;
    4893             :         }
    4894             : yy254:
    4895             :         YYDEBUG(254, *YYCURSOR);
    4896           0 :         yych = *++YYCURSOR;
    4897           0 :         if (yych <= '/') goto yy223;
    4898           0 :         if (yych <= '5') goto yy256;
    4899           0 :         if (yych <= '9') goto yy228;
    4900           0 :         if (yych >= ';') goto yy223;
    4901             : yy255:
    4902             :         YYDEBUG(255, *YYCURSOR);
    4903           0 :         yych = *++YYCURSOR;
    4904           0 :         if (yych <= '/') goto yy223;
    4905           0 :         if (yych <= '5') goto yy256;
    4906           0 :         if (yych <= '9') goto yy228;
    4907           0 :         goto yy223;
    4908             : yy256:
    4909             :         YYDEBUG(256, *YYCURSOR);
    4910           0 :         yych = *++YYCURSOR;
    4911           0 :         if (yych <= '/') goto yy223;
    4912           0 :         if (yych <= '9') goto yy228;
    4913           0 :         goto yy223;
    4914             : yy257:
    4915             :         YYDEBUG(257, *YYCURSOR);
    4916           0 :         yych = *++YYCURSOR;
    4917           0 :         if (yych <= 'S') {
    4918           0 :                 if (yych == ')') goto yy228;
    4919           0 :                 if (yych <= '@') goto yy223;
    4920           0 :                 goto yy238;
    4921             :         } else {
    4922           0 :                 if (yych <= 'Z') {
    4923           0 :                         if (yych >= 'U') goto yy238;
    4924             :                 } else {
    4925           0 :                         if (yych <= '`') goto yy223;
    4926           0 :                         if (yych <= 'z') goto yy238;
    4927           0 :                         goto yy223;
    4928             :                 }
    4929             :         }
    4930             :         YYDEBUG(258, *YYCURSOR);
    4931           0 :         yyaccept = 7;
    4932           0 :         yych = *(YYMARKER = ++YYCURSOR);
    4933           0 :         if (yych <= ',') {
    4934           0 :                 if (yych <= ')') {
    4935           0 :                         if (yych <= '(') goto yy223;
    4936           0 :                         goto yy228;
    4937             :                 } else {
    4938           0 :                         if (yych == '+') goto yy233;
    4939           0 :                         goto yy223;
    4940             :                 }
    4941             :         } else {
    4942           0 :                 if (yych <= 'Z') {
    4943           0 :                         if (yych <= '-') goto yy233;
    4944           0 :                         if (yych <= '@') goto yy223;
    4945           0 :                         goto yy239;
    4946             :                 } else {
    4947           0 :                         if (yych <= '`') goto yy223;
    4948           0 :                         if (yych <= 'z') goto yy239;
    4949           0 :                         goto yy223;
    4950             :                 }
    4951             :         }
    4952             : yy259:
    4953             :         YYDEBUG(259, *YYCURSOR);
    4954           6 :         yyaccept = 6;
    4955           6 :         yych = *(YYMARKER = ++YYCURSOR);
    4956           6 :         if (yych <= '/') {
    4957           0 :                 if (yych == '.') goto yy221;
    4958           0 :                 goto yy199;
    4959             :         } else {
    4960           6 :                 if (yych <= '0') goto yy291;
    4961           4 :                 if (yych <= '9') goto yy292;
    4962           0 :                 if (yych <= ':') goto yy221;
    4963           0 :                 goto yy199;
    4964             :         }
    4965             : yy260:
    4966             :         YYDEBUG(260, *YYCURSOR);
    4967          11 :         yyaccept = 6;
    4968          11 :         yych = *(YYMARKER = ++YYCURSOR);
    4969          11 :         if (yych <= '/') {
    4970           0 :                 if (yych == '.') goto yy264;
    4971           0 :                 goto yy199;
    4972             :         } else {
    4973          11 :                 if (yych <= '2') goto yy292;
    4974           9 :                 if (yych <= '9') goto yy291;
    4975           0 :                 if (yych <= ':') goto yy264;
    4976           0 :                 goto yy199;
    4977             :         }
    4978             : yy261:
    4979             :         YYDEBUG(261, *YYCURSOR);
    4980          17 :         yyaccept = 6;
    4981          17 :         yych = *(YYMARKER = ++YYCURSOR);
    4982          17 :         if (yych <= '/') {
    4983           0 :                 if (yych == '.') goto yy264;
    4984           0 :                 goto yy199;
    4985             :         } else {
    4986          17 :                 if (yych <= '4') goto yy291;
    4987           0 :                 if (yych <= '9') goto yy263;
    4988           0 :                 if (yych <= ':') goto yy264;
    4989           0 :                 goto yy199;
    4990             :         }
    4991             : yy262:
    4992             :         YYDEBUG(262, *YYCURSOR);
    4993           5 :         yyaccept = 6;
    4994           5 :         yych = *(YYMARKER = ++YYCURSOR);
    4995           5 :         if (yych <= '/') {
    4996           0 :                 if (yych == '.') goto yy264;
    4997           0 :                 goto yy199;
    4998             :         } else {
    4999           5 :                 if (yych <= '9') goto yy263;
    5000           5 :                 if (yych <= ':') goto yy264;
    5001           0 :                 goto yy199;
    5002             :         }
    5003             : yy263:
    5004             :         YYDEBUG(263, *YYCURSOR);
    5005           0 :         yych = *++YYCURSOR;
    5006           0 :         if (yych <= '/') goto yy199;
    5007           0 :         if (yych <= '9') goto yy289;
    5008           0 :         goto yy199;
    5009             : yy264:
    5010             :         YYDEBUG(264, *YYCURSOR);
    5011          13 :         yych = *++YYCURSOR;
    5012          13 :         if (yych <= '/') goto yy57;
    5013          13 :         if (yych <= '5') goto yy265;
    5014           0 :         if (yych <= '9') goto yy266;
    5015           0 :         goto yy57;
    5016             : yy265:
    5017             :         YYDEBUG(265, *YYCURSOR);
    5018          13 :         yyaccept = 7;
    5019          13 :         yych = *(YYMARKER = ++YYCURSOR);
    5020          13 :         if (yych <= '/') {
    5021           0 :                 if (yych == '.') goto yy267;
    5022           0 :                 goto yy223;
    5023             :         } else {
    5024          13 :                 if (yych <= '9') goto yy282;
    5025           0 :                 if (yych <= ':') goto yy267;
    5026           0 :                 goto yy223;
    5027             :         }
    5028             : yy266:
    5029             :         YYDEBUG(266, *YYCURSOR);
    5030           0 :         yyaccept = 7;
    5031           0 :         yych = *(YYMARKER = ++YYCURSOR);
    5032           0 :         if (yych == '.') goto yy267;
    5033           0 :         if (yych != ':') goto yy223;
    5034             : yy267:
    5035             :         YYDEBUG(267, *YYCURSOR);
    5036           2 :         yych = *++YYCURSOR;
    5037           2 :         if (yych <= '/') goto yy57;
    5038           2 :         if (yych <= '5') goto yy268;
    5039           0 :         if (yych <= '6') goto yy269;
    5040           0 :         if (yych <= '9') goto yy228;
    5041           0 :         goto yy57;
    5042             : yy268:
    5043             :         YYDEBUG(268, *YYCURSOR);
    5044           2 :         yych = *++YYCURSOR;
    5045           2 :         if (yych <= '/') goto yy223;
    5046           2 :         if (yych <= '9') goto yy270;
    5047           0 :         goto yy223;
    5048             : yy269:
    5049             :         YYDEBUG(269, *YYCURSOR);
    5050           0 :         yych = *++YYCURSOR;
    5051           0 :         if (yych != '0') goto yy223;
    5052             : yy270:
    5053             :         YYDEBUG(270, *YYCURSOR);
    5054           2 :         yyaccept = 7;
    5055           2 :         yych = *(YYMARKER = ++YYCURSOR);
    5056           2 :         if (yych <= '*') {
    5057           2 :                 if (yych <= 0x1F) {
    5058           0 :                         if (yych == '\t') goto yy272;
    5059           0 :                         goto yy223;
    5060             :                 } else {
    5061           2 :                         if (yych <= ' ') goto yy272;
    5062           0 :                         if (yych == '(') goto yy272;
    5063           0 :                         goto yy223;
    5064             :                 }
    5065             :         } else {
    5066           0 :                 if (yych <= '@') {
    5067           0 :                         if (yych == ',') goto yy223;
    5068           0 :                         if (yych <= '-') goto yy272;
    5069           0 :                         goto yy223;
    5070             :                 } else {
    5071           0 :                         if (yych <= 'Z') goto yy272;
    5072           0 :                         if (yych <= '`') goto yy223;
    5073           0 :                         if (yych <= 'z') goto yy272;
    5074           0 :                         goto yy223;
    5075             :                 }
    5076             :         }
    5077             : yy271:
    5078             :         YYDEBUG(271, *YYCURSOR);
    5079           2 :         ++YYCURSOR;
    5080           2 :         if ((YYLIMIT - YYCURSOR) < 9) YYFILL(9);
    5081           2 :         yych = *YYCURSOR;
    5082             : yy272:
    5083             :         YYDEBUG(272, *YYCURSOR);
    5084           4 :         if (yych <= '@') {
    5085           4 :                 if (yych <= '\'') {
    5086           2 :                         if (yych <= '\t') {
    5087           0 :                                 if (yych <= 0x08) goto yy57;
    5088           0 :                                 goto yy271;
    5089             :                         } else {
    5090           2 :                                 if (yych == ' ') goto yy271;
    5091           0 :                                 goto yy57;
    5092             :                         }
    5093             :                 } else {
    5094           2 :                         if (yych <= '+') {
    5095           0 :                                 if (yych <= '(') goto yy234;
    5096           0 :                                 if (yych <= '*') goto yy57;
    5097           0 :                                 goto yy233;
    5098             :                         } else {
    5099           2 :                                 if (yych == '-') goto yy233;
    5100           2 :                                 goto yy57;
    5101             :                         }
    5102             :                 }
    5103             :         } else {
    5104           0 :                 if (yych <= 'Z') {
    5105           0 :                         if (yych <= 'G') {
    5106           0 :                                 if (yych <= 'A') goto yy273;
    5107           0 :                                 if (yych <= 'F') goto yy235;
    5108           0 :                                 goto yy232;
    5109             :                         } else {
    5110           0 :                                 if (yych != 'P') goto yy235;
    5111             :                         }
    5112             :                 } else {
    5113           0 :                         if (yych <= 'o') {
    5114           0 :                                 if (yych <= '`') goto yy57;
    5115           0 :                                 if (yych <= 'a') goto yy274;
    5116           0 :                                 goto yy236;
    5117             :                         } else {
    5118           0 :                                 if (yych <= 'p') goto yy274;
    5119           0 :                                 if (yych <= 'z') goto yy236;
    5120           0 :                                 goto yy57;
    5121             :                         }
    5122             :                 }
    5123             :         }
    5124             : yy273:
    5125             :         YYDEBUG(273, *YYCURSOR);
    5126           0 :         yyaccept = 7;
    5127           0 :         yych = *(YYMARKER = ++YYCURSOR);
    5128           0 :         if (yych <= 'L') {
    5129           0 :                 if (yych <= '-') {
    5130           0 :                         if (yych == ')') goto yy228;
    5131           0 :                         goto yy223;
    5132             :                 } else {
    5133           0 :                         if (yych <= '.') goto yy275;
    5134           0 :                         if (yych <= '@') goto yy223;
    5135           0 :                         goto yy237;
    5136             :                 }
    5137             :         } else {
    5138           0 :                 if (yych <= '`') {
    5139           0 :                         if (yych <= 'M') goto yy276;
    5140           0 :                         if (yych <= 'Z') goto yy237;
    5141           0 :                         goto yy223;
    5142             :                 } else {
    5143           0 :                         if (yych == 'm') goto yy281;
    5144           0 :                         if (yych <= 'z') goto yy242;
    5145           0 :                         goto yy223;
    5146             :                 }
    5147             :         }
    5148             : yy274:
    5149             :         YYDEBUG(274, *YYCURSOR);
    5150           0 :         yyaccept = 7;
    5151           0 :         yych = *(YYMARKER = ++YYCURSOR);
    5152           0 :         if (yych <= 'L') {
    5153           0 :                 if (yych <= '-') {
    5154           0 :                         if (yych == ')') goto yy228;
    5155           0 :                         goto yy223;
    5156             :                 } else {
    5157           0 :                         if (yych <= '.') goto yy275;
    5158           0 :                         if (yych <= '@') goto yy223;
    5159           0 :                         goto yy237;
    5160             :                 }
    5161             :         } else {
    5162           0 :                 if (yych <= '`') {
    5163           0 :                         if (yych <= 'M') goto yy276;
    5164           0 :                         if (yych <= 'Z') goto yy237;
    5165           0 :                         goto yy223;
    5166             :                 } else {
    5167           0 :                         if (yych == 'm') goto yy276;
    5168           0 :                         if (yych <= 'z') goto yy237;
    5169           0 :                         goto yy223;
    5170             :                 }
    5171             :         }
    5172             : yy275:
    5173             :         YYDEBUG(275, *YYCURSOR);
    5174           0 :         yych = *++YYCURSOR;
    5175           0 :         if (yych == 'M') goto yy280;
    5176           0 :         if (yych == 'm') goto yy280;
    5177           0 :         goto yy57;
    5178             : yy276:
    5179             :         YYDEBUG(276, *YYCURSOR);
    5180           0 :         yyaccept = 7;
    5181           0 :         yych = *(YYMARKER = ++YYCURSOR);
    5182           0 :         if (yych <= ')') {
    5183           0 :                 if (yych <= '\t') {
    5184           0 :                         if (yych <= 0x00) goto yy278;
    5185           0 :                         if (yych <= 0x08) goto yy223;
    5186           0 :                         goto yy278;
    5187             :                 } else {
    5188           0 :                         if (yych == ' ') goto yy278;
    5189           0 :                         if (yych <= '(') goto yy223;
    5190           0 :                         goto yy228;
    5191             :                 }
    5192             :         } else {
    5193           0 :                 if (yych <= '@') {
    5194           0 :                         if (yych != '.') goto yy223;
    5195             :                 } else {
    5196           0 :                         if (yych <= 'Z') goto yy238;
    5197           0 :                         if (yych <= '`') goto yy223;
    5198           0 :                         if (yych <= 'z') goto yy238;
    5199           0 :                         goto yy223;
    5200             :                 }
    5201             :         }
    5202             : yy277:
    5203             :         YYDEBUG(277, *YYCURSOR);
    5204           0 :         yych = *++YYCURSOR;
    5205           0 :         if (yych <= '\t') {
    5206           0 :                 if (yych <= 0x00) goto yy278;
    5207           0 :                 if (yych <= 0x08) goto yy57;
    5208             :         } else {
    5209           0 :                 if (yych != ' ') goto yy57;
    5210             :         }
    5211             : yy278:
    5212             :         YYDEBUG(278, *YYCURSOR);
    5213           4 :         ++YYCURSOR;
    5214             :         YYDEBUG(279, *YYCURSOR);
    5215             : #line 1695 "ext/date/lib/parse_date.re"
    5216             :         {
    5217             :                 DEBUG_OUTPUT("dateshortwithtimeshort12 | dateshortwithtimelong12");
    5218             :                 TIMELIB_INIT;
    5219             :                 TIMELIB_HAVE_DATE();
    5220             :                 s->time->m = timelib_get_month((char **) &ptr);
    5221             :                 s->time->d = timelib_get_nr((char **) &ptr, 2);
    5222             : 
    5223             :                 TIMELIB_HAVE_TIME();
    5224             :                 s->time->h = timelib_get_nr((char **) &ptr, 2);
    5225             :                 s->time->i = timelib_get_nr((char **) &ptr, 2);
    5226             :                 if (*ptr == ':' || *ptr == '.') {
    5227             :                         s->time->s = timelib_get_nr((char **) &ptr, 2);
    5228             : 
    5229             :                         if (*ptr == '.') {
    5230             :                                 s->time->f = timelib_get_frac_nr((char **) &ptr, 8);
    5231             :                         }
    5232             :                 }
    5233             : 
    5234             :                 s->time->h += timelib_meridian((char **) &ptr, s->time->h);
    5235             :                 TIMELIB_DEINIT;
    5236             :                 return TIMELIB_SHORTDATE_WITH_TIME;
    5237             :         }
    5238             : #line 5239 "ext/date/lib/parse_date.c"
    5239             : yy280:
    5240             :         YYDEBUG(280, *YYCURSOR);
    5241           0 :         yych = *++YYCURSOR;
    5242           0 :         if (yych <= 0x1F) {
    5243           0 :                 if (yych <= 0x00) goto yy278;
    5244           0 :                 if (yych == '\t') goto yy278;
    5245           0 :                 goto yy57;
    5246             :         } else {
    5247           0 :                 if (yych <= ' ') goto yy278;
    5248           0 :                 if (yych == '.') goto yy277;
    5249           0 :                 goto yy57;
    5250             :         }
    5251             : yy281:
    5252             :         YYDEBUG(281, *YYCURSOR);
    5253           0 :         yyaccept = 7;
    5254           0 :         yych = *(YYMARKER = ++YYCURSOR);
    5255           0 :         if (yych <= '-') {
    5256           0 :                 if (yych <= 0x1F) {
    5257           0 :                         if (yych <= 0x00) goto yy278;
    5258           0 :                         if (yych == '\t') goto yy278;
    5259           0 :                         goto yy223;
    5260             :                 } else {
    5261           0 :                         if (yych <= '(') {
    5262           0 :                                 if (yych <= ' ') goto yy278;
    5263           0 :                                 goto yy223;
    5264             :                         } else {
    5265           0 :                                 if (yych <= ')') goto yy228;
    5266           0 :                                 if (yych <= ',') goto yy223;
    5267           0 :                                 goto yy244;
    5268             :                         }
    5269             :                 }
    5270             :         } else {
    5271           0 :                 if (yych <= 'Z') {
    5272           0 :                         if (yych <= '.') goto yy277;
    5273           0 :                         if (yych <= '/') goto yy244;
    5274           0 :                         if (yych <= '@') goto yy223;
    5275           0 :                         goto yy238;
    5276             :                 } else {
    5277           0 :                         if (yych <= '_') {
    5278           0 :                                 if (yych <= '^') goto yy223;
    5279           0 :                                 goto yy244;
    5280             :                         } else {
    5281           0 :                                 if (yych <= '`') goto yy223;
    5282           0 :                                 if (yych <= 'z') goto yy243;
    5283           0 :                                 goto yy223;
    5284             :                         }
    5285             :                 }
    5286             :         }
    5287             : yy282:
    5288             :         YYDEBUG(282, *YYCURSOR);
    5289          13 :         yyaccept = 7;
    5290          13 :         yych = *(YYMARKER = ++YYCURSOR);
    5291          13 :         if (yych <= ':') {
    5292          11 :                 if (yych <= ' ') {
    5293           9 :                         if (yych == '\t') goto yy283;
    5294           9 :                         if (yych <= 0x1F) goto yy223;
    5295             :                 } else {
    5296           2 :                         if (yych == '.') goto yy267;
    5297           2 :                         if (yych <= '9') goto yy223;
    5298           2 :                         goto yy267;
    5299             :                 }
    5300             :         } else {
    5301           2 :                 if (yych <= 'P') {
    5302           0 :                         if (yych == 'A') goto yy285;
    5303           0 :                         if (yych <= 'O') goto yy223;
    5304           0 :                         goto yy285;
    5305             :                 } else {
    5306           2 :                         if (yych <= 'a') {
    5307           1 :                                 if (yych <= '`') goto yy223;
    5308           1 :                                 goto yy285;
    5309             :                         } else {
    5310           1 :                                 if (yych == 'p') goto yy285;
    5311           0 :                                 goto yy223;
    5312             :                         }
    5313             :                 }
    5314             :         }
    5315             : yy283:
    5316             :         YYDEBUG(283, *YYCURSOR);
    5317           2 :         ++YYCURSOR;
    5318           2 :         if ((YYLIMIT - YYCURSOR) < 5) YYFILL(5);
    5319           2 :         yych = *YYCURSOR;
    5320             :         YYDEBUG(284, *YYCURSOR);
    5321           2 :         if (yych <= 'A') {
    5322           0 :                 if (yych <= 0x1F) {
    5323           0 :                         if (yych == '\t') goto yy283;
    5324           0 :                         goto yy57;
    5325             :                 } else {
    5326           0 :                         if (yych <= ' ') goto yy283;
    5327           0 :                         if (yych <= '@') goto yy57;
    5328             :                 }
    5329             :         } else {
    5330           2 :                 if (yych <= '`') {
    5331           0 :                         if (yych != 'P') goto yy57;
    5332             :                 } else {
    5333           2 :                         if (yych <= 'a') goto yy285;
    5334           1 :                         if (yych != 'p') goto yy57;
    5335             :                 }
    5336             :         }
    5337             : yy285:
    5338             :         YYDEBUG(285, *YYCURSOR);
    5339           4 :         yych = *++YYCURSOR;
    5340           4 :         if (yych <= 'L') {
    5341           0 :                 if (yych != '.') goto yy57;
    5342             :         } else {
    5343           4 :                 if (yych <= 'M') goto yy287;
    5344           4 :                 if (yych == 'm') goto yy287;
    5345           0 :                 goto yy57;
    5346             :         }
    5347             : yy286:
    5348             :         YYDEBUG(286, *YYCURSOR);
    5349           0 :         yych = *++YYCURSOR;
    5350           0 :         if (yych == 'M') goto yy287;
    5351           0 :         if (yych != 'm') goto yy57;
    5352             : yy287:
    5353             :         YYDEBUG(287, *YYCURSOR);
    5354           4 :         yych = *++YYCURSOR;
    5355           4 :         if (yych <= 0x1F) {
    5356           4 :                 if (yych <= 0x00) goto yy278;
    5357           0 :                 if (yych == '\t') goto yy278;
    5358           0 :                 goto yy57;
    5359             :         } else {
    5360           0 :                 if (yych <= ' ') goto yy278;
    5361           0 :                 if (yych != '.') goto yy57;
    5362             :         }
    5363             : yy288:
    5364             :         YYDEBUG(288, *YYCURSOR);
    5365           0 :         yych = *++YYCURSOR;
    5366           0 :         if (yych <= '\t') {
    5367           0 :                 if (yych <= 0x00) goto yy278;
    5368           0 :                 if (yych <= 0x08) goto yy57;
    5369           0 :                 goto yy278;
    5370             :         } else {
    5371           0 :                 if (yych == ' ') goto yy278;
    5372           0 :                 goto yy57;
    5373             :         }
    5374             : yy289:
    5375             :         YYDEBUG(289, *YYCURSOR);
    5376          25 :         yych = *++YYCURSOR;
    5377          25 :         if (yych <= '/') goto yy199;
    5378          25 :         if (yych >= ':') goto yy199;
    5379             :         YYDEBUG(290, *YYCURSOR);
    5380          25 :         yych = *++YYCURSOR;
    5381          25 :         goto yy199;
    5382             : yy291:
    5383             :         YYDEBUG(291, *YYCURSOR);
    5384          28 :         yyaccept = 6;
    5385          28 :         yych = *(YYMARKER = ++YYCURSOR);
    5386          28 :         if (yych <= '/') {
    5387           0 :                 if (yych == '.') goto yy221;
    5388           0 :                 goto yy199;
    5389             :         } else {
    5390          28 :                 if (yych <= '9') goto yy289;
    5391           3 :                 if (yych <= ':') goto yy221;
    5392           0 :                 goto yy199;
    5393             :         }
    5394             : yy292:
    5395             :         YYDEBUG(292, *YYCURSOR);
    5396           6 :         yyaccept = 6;
    5397           6 :         yych = *(YYMARKER = ++YYCURSOR);
    5398           6 :         if (yych <= '/') {
    5399           0 :                 if (yych == '.') goto yy264;
    5400           0 :                 goto yy199;
    5401             :         } else {
    5402           6 :                 if (yych <= '9') goto yy289;
    5403           6 :                 if (yych <= ':') goto yy264;
    5404           0 :                 goto yy199;
    5405             :         }
    5406             : yy293:
    5407             :         YYDEBUG(293, *YYCURSOR);
    5408           0 :         yych = *++YYCURSOR;
    5409           0 :         if (yych <= '/') goto yy57;
    5410           0 :         if (yych >= ':') goto yy57;
    5411             : yy294:
    5412             :         YYDEBUG(294, *YYCURSOR);
    5413           1 :         ++YYCURSOR;
    5414             : yy295:
    5415             :         YYDEBUG(295, *YYCURSOR);
    5416             : #line 1389 "ext/date/lib/parse_date.re"
    5417             :         {
    5418             :                 int length = 0;
    5419             :                 DEBUG_OUTPUT("datenoday");
    5420             :                 TIMELIB_INIT;
    5421             :                 TIMELIB_HAVE_DATE();
    5422             :                 s->time->m = timelib_get_month((char **) &ptr);
    5423             :                 s->time->y = timelib_get_nr_ex((char **) &ptr, 4, &length);
    5424             :                 s->time->d = 1;
    5425             :                 TIMELIB_PROCESS_YEAR(s->time->y, length);
    5426             :                 TIMELIB_DEINIT;
    5427             :                 return TIMELIB_DATE_NO_DAY;
    5428             :         }
    5429             : #line 5430 "ext/date/lib/parse_date.c"
    5430             : yy296:
    5431             :         YYDEBUG(296, *YYCURSOR);
    5432           0 :         yych = *++YYCURSOR;
    5433           0 :         if (yych <= '/') {
    5434           0 :                 if (yych == '.') goto yy221;
    5435           0 :                 goto yy57;
    5436             :         } else {
    5437           0 :                 if (yych <= '9') goto yy294;
    5438           0 :                 if (yych <= ':') goto yy221;
    5439           0 :                 goto yy57;
    5440             :         }
    5441             : yy297:
    5442             :         YYDEBUG(297, *YYCURSOR);
    5443           1 :         yych = *++YYCURSOR;
    5444           1 :         if (yych <= '/') {
    5445           0 :                 if (yych == '.') goto yy264;
    5446           0 :                 goto yy57;
    5447             :         } else {
    5448           1 :                 if (yych <= '9') goto yy294;
    5449           0 :                 if (yych <= ':') goto yy264;
    5450           0 :                 goto yy57;
    5451             :         }
    5452             : yy298:
    5453             :         YYDEBUG(298, *YYCURSOR);
    5454          30 :         yyaccept = 6;
    5455          30 :         yych = *(YYMARKER = ++YYCURSOR);
    5456          30 :         if (yych <= '9') {
    5457          30 :                 if (yych <= '/') {
    5458           2 :                         if (yych == '.') goto yy331;
    5459           2 :                         goto yy216;
    5460             :                 } else {
    5461          28 :                         if (yych <= '0') goto yy332;
    5462           5 :                         if (yych <= '1') goto yy302;
    5463           1 :                         if (yych <= '2') goto yy303;
    5464           1 :                         goto yy297;
    5465             :                 }
    5466             :         } else {
    5467           0 :                 if (yych <= 'q') {
    5468           0 :                         if (yych <= ':') goto yy221;
    5469           0 :                         if (yych == 'n') goto yy212;
    5470           0 :                         goto yy216;
    5471             :                 } else {
    5472           0 :                         if (yych <= 'r') goto yy213;
    5473           0 :                         if (yych <= 's') goto yy211;
    5474           0 :                         if (yych <= 't') goto yy214;
    5475           0 :                         goto yy216;
    5476             :                 }
    5477             :         }
    5478             : yy299:
    5479             :         YYDEBUG(299, *YYCURSOR);
    5480           8 :         yyaccept = 6;
    5481           8 :         yych = *(YYMARKER = ++YYCURSOR);
    5482           8 :         if (yych <= '9') {
    5483           8 :                 if (yych <= '/') {
    5484           8 :                         if (yych != '.') goto yy216;
    5485             :                 } else {
    5486           0 :                         if (yych <= '0') goto yy301;
    5487           0 :                         if (yych <= '1') goto yy302;
    5488           0 :                         if (yych <= '2') goto yy303;
    5489           0 :                         goto yy297;
    5490             :                 }
    5491             :         } else {
    5492           0 :                 if (yych <= 'q') {
    5493           0 :                         if (yych <= ':') goto yy264;
    5494           0 :                         if (yych == 'n') goto yy212;
    5495           0 :                         goto yy216;
    5496             :                 } else {
    5497           0 :                         if (yych <= 'r') goto yy213;
    5498           0 :                         if (yych <= 's') goto yy211;
    5499           0 :                         if (yych <= 't') goto yy214;
    5500           0 :                         goto yy216;
    5501             :                 }
    5502             :         }
    5503             : yy300:
    5504             :         YYDEBUG(300, *YYCURSOR);
    5505           0 :         yyaccept = 6;
    5506           0 :         yych = *(YYMARKER = ++YYCURSOR);
    5507           0 :         if (yych <= '1') {
    5508           0 :                 if (yych <= '/') goto yy216;
    5509           0 :                 if (yych <= '0') goto yy306;
    5510           0 :                 goto yy307;
    5511             :         } else {
    5512           0 :                 if (yych <= '2') goto yy308;
    5513           0 :                 if (yych <= '5') goto yy309;
    5514           0 :                 if (yych <= '9') goto yy310;
    5515           0 :                 goto yy216;
    5516             :         }
    5517             : yy301:
    5518             :         YYDEBUG(301, *YYCURSOR);
    5519           0 :         yych = *++YYCURSOR;
    5520           0 :         if (yych <= '/') {
    5521           0 :                 if (yych == '.') goto yy264;
    5522           0 :                 goto yy57;
    5523             :         } else {
    5524           0 :                 if (yych <= '0') goto yy304;
    5525           0 :                 if (yych <= '9') goto yy305;
    5526           0 :                 if (yych <= ':') goto yy264;
    5527           0 :                 goto yy57;
    5528             :         }
    5529             : yy302:
    5530             :         YYDEBUG(302, *YYCURSOR);
    5531           4 :         yych = *++YYCURSOR;
    5532           4 :         if (yych <= '/') {
    5533           0 :                 if (yych == '.') goto yy264;
    5534           0 :                 goto yy57;
    5535             :         } else {
    5536           4 :                 if (yych <= '2') goto yy305;
    5537           0 :                 if (yych <= '9') goto yy304;
    5538           0 :                 if (yych <= ':') goto yy264;
    5539           0 :                 goto yy57;
    5540             :         }
    5541             : yy303:
    5542             :         YYDEBUG(303, *YYCURSOR);
    5543           0 :         yych = *++YYCURSOR;
    5544           0 :         if (yych <= '/') {
    5545           0 :                 if (yych == '.') goto yy264;
    5546           0 :                 goto yy57;
    5547             :         } else {
    5548           0 :                 if (yych <= '4') goto yy304;
    5549           0 :                 if (yych <= '9') goto yy294;
    5550           0 :                 if (yych <= ':') goto yy264;
    5551           0 :                 goto yy57;
    5552             :         }
    5553             : yy304:
    5554             :         YYDEBUG(304, *YYCURSOR);
    5555           0 :         yyaccept = 8;
    5556           0 :         yych = *(YYMARKER = ++YYCURSOR);
    5557           0 :         if (yych == '.') goto yy221;
    5558           0 :         if (yych == ':') goto yy221;
    5559           0 :         goto yy295;
    5560             : yy305:
    5561             :         YYDEBUG(305, *YYCURSOR);
    5562          27 :         yyaccept = 8;
    5563          27 :         yych = *(YYMARKER = ++YYCURSOR);
    5564          27 :         if (yych == '.') goto yy264;
    5565          27 :         if (yych == ':') goto yy264;
    5566          27 :         goto yy295;
    5567             : yy306:
    5568             :         YYDEBUG(306, *YYCURSOR);
    5569           0 :         yyaccept = 6;
    5570           0 :         yych = *(YYMARKER = ++YYCURSOR);
    5571           0 :         if (yych <= '/') {
    5572           0 :                 if (yych == '.') goto yy326;
    5573           0 :                 goto yy199;
    5574             :         } else {
    5575           0 :                 if (yych <= '0') goto yy325;
    5576           0 :                 if (yych <= '9') goto yy330;
    5577           0 :                 if (yych <= ':') goto yy326;
    5578           0 :                 goto yy199;
    5579             :         }
    5580             : yy307:
    5581             :         YYDEBUG(307, *YYCURSOR);
    5582           0 :         yyaccept = 6;
    5583           0 :         yych = *(YYMARKER = ++YYCURSOR);
    5584           0 :         if (yych <= '/') {
    5585           0 :                 if (yych == '.') goto yy311;
    5586           0 :                 goto yy199;
    5587             :         } else {
    5588           0 :                 if (yych <= '2') goto yy330;
    5589           0 :                 if (yych <= '9') goto yy325;
    5590           0 :                 if (yych <= ':') goto yy311;
    5591           0 :                 goto yy199;
    5592             :         }
    5593             : yy308:
    5594             :         YYDEBUG(308, *YYCURSOR);
    5595           0 :         yyaccept = 6;
    5596           0 :         yych = *(YYMARKER = ++YYCURSOR);
    5597           0 :         if (yych <= '/') {
    5598           0 :                 if (yych == '.') goto yy311;
    5599           0 :                 goto yy199;
    5600             :         } else {
    5601           0 :                 if (yych <= '4') goto yy325;
    5602           0 :                 if (yych <= '9') goto yy324;
    5603           0 :                 if (yych <= ':') goto yy311;
    5604           0 :                 goto yy199;
    5605             :         }
    5606             : yy309:
    5607             :         YYDEBUG(309, *YYCURSOR);
    5608           0 :         yyaccept = 6;
    5609           0 :         yych = *(YYMARKER = ++YYCURSOR);
    5610           0 :         if (yych <= '/') {
    5611           0 :                 if (yych == '.') goto yy311;
    5612           0 :                 goto yy199;
    5613             :         } else {
    5614           0 :                 if (yych <= '9') goto yy324;
    5615           0 :                 if (yych <= ':') goto yy311;
    5616           0 :                 goto yy199;
    5617             :         }
    5618             : yy310:
    5619             :         YYDEBUG(310, *YYCURSOR);
    5620           0 :         yyaccept = 6;
    5621           0 :         yych = *(YYMARKER = ++YYCURSOR);
    5622           0 :         if (yych <= '/') {
    5623           0 :                 if (yych != '.') goto yy199;
    5624             :         } else {
    5625           0 :                 if (yych <= '9') goto yy263;
    5626           0 :                 if (yych >= ';') goto yy199;
    5627             :         }
    5628             : yy311:
    5629             :         YYDEBUG(311, *YYCURSOR);
    5630           0 :         yych = *++YYCURSOR;
    5631           0 :         if (yych <= '/') goto yy57;
    5632           0 :         if (yych <= '5') goto yy312;
    5633           0 :         if (yych <= '6') goto yy313;
    5634           0 :         if (yych <= '9') goto yy266;
    5635           0 :         goto yy57;
    5636             : yy312:
    5637             :         YYDEBUG(312, *YYCURSOR);
    5638           0 :         yyaccept = 7;
    5639           0 :         yych = *(YYMARKER = ++YYCURSOR);
    5640           0 :         if (yych <= '/') {
    5641           0 :                 if (yych == '.') goto yy267;
    5642           0 :                 goto yy223;
    5643             :         } else {
    5644           0 :                 if (yych <= '9') goto yy314;
    5645           0 :                 if (yych <= ':') goto yy267;
    5646           0 :                 goto yy223;
    5647             :         }
    5648             : yy313:
    5649             :         YYDEBUG(313, *YYCURSOR);
    5650           0 :         yyaccept = 7;
    5651           0 :         yych = *(YYMARKER = ++YYCURSOR);
    5652           0 :         if (yych <= '/') {
    5653           0 :                 if (yych == '.') goto yy267;
    5654           0 :                 goto yy223;
    5655             :         } else {
    5656           0 :                 if (yych <= '0') goto yy270;
    5657           0 :                 if (yych == ':') goto yy267;
    5658           0 :                 goto yy223;
    5659             :         }
    5660             : yy314:
    5661             :         YYDEBUG(314, *YYCURSOR);
    5662           0 :         yyaccept = 7;
    5663           0 :         yych = *(YYMARKER = ++YYCURSOR);
    5664           0 :         if (yych <= ',') {
    5665           0 :                 if (yych <= ' ') {
    5666           0 :                         if (yych == '\t') goto yy316;
    5667           0 :                         if (yych <= 0x1F) goto yy223;
    5668           0 :                         goto yy316;
    5669             :                 } else {
    5670           0 :                         if (yych <= '(') {
    5671           0 :                                 if (yych <= '\'') goto yy223;
    5672           0 :                                 goto yy316;
    5673             :                         } else {
    5674           0 :                                 if (yych == '+') goto yy316;
    5675           0 :                                 goto yy223;
    5676             :                         }
    5677             :                 }
    5678             :         } else {
    5679           0 :                 if (yych <= ':') {
    5680           0 :                         if (yych <= '-') goto yy316;
    5681           0 :                         if (yych <= '.') goto yy267;
    5682           0 :                         if (yych <= '9') goto yy223;
    5683           0 :                         goto yy267;
    5684             :                 } else {
    5685           0 :                         if (yych <= 'Z') {
    5686           0 :                                 if (yych <= '@') goto yy223;
    5687           0 :                                 goto yy316;
    5688             :                         } else {
    5689           0 :                                 if (yych <= '`') goto yy223;
    5690           0 :                                 if (yych <= 'z') goto yy316;
    5691           0 :                                 goto yy223;
    5692             :                         }
    5693             :                 }
    5694             :         }
    5695             : yy315:
    5696             :         YYDEBUG(315, *YYCURSOR);
    5697           0 :         ++YYCURSOR;
    5698           0 :         if ((YYLIMIT - YYCURSOR) < 9) YYFILL(9);
    5699           0 :         yych = *YYCURSOR;
    5700             : yy316:
    5701             :         YYDEBUG(316, *YYCURSOR);
    5702           0 :         if (yych <= '@') {
    5703           0 :                 if (yych <= '\'') {
    5704           0 :                         if (yych <= '\t') {
    5705           0 :                                 if (yych <= 0x08) goto yy57;
    5706           0 :                                 goto yy315;
    5707             :                         } else {
    5708           0 :                                 if (yych == ' ') goto yy315;
    5709           0 :                                 goto yy57;
    5710             :                         }
    5711             :                 } else {
    5712           0 :                         if (yych <= '+') {
    5713           0 :                                 if (yych <= '(') goto yy234;
    5714           0 :                                 if (yych <= '*') goto yy57;
    5715           0 :                                 goto yy233;
    5716             :                         } else {
    5717           0 :                                 if (yych == '-') goto yy233;
    5718           0 :                                 goto yy57;
    5719             :                         }
    5720             :                 }
    5721             :         } else {
    5722           0 :                 if (yych <= 'Z') {
    5723           0 :                         if (yych <= 'G') {
    5724           0 :                                 if (yych <= 'A') goto yy317;
    5725           0 :                                 if (yych <= 'F') goto yy235;
    5726           0 :                                 goto yy232;
    5727             :                         } else {
    5728           0 :                                 if (yych != 'P') goto yy235;
    5729             :                         }
    5730             :                 } else {
    5731           0 :                         if (yych <= 'o') {
    5732           0 :                                 if (yych <= '`') goto yy57;
    5733           0 :                                 if (yych <= 'a') goto yy318;
    5734           0 :                                 goto yy236;
    5735             :                         } else {
    5736           0 :                                 if (yych <= 'p') goto yy318;
    5737           0 :                                 if (yych <= 'z') goto yy236;
    5738           0 :                                 goto yy57;
    5739             :                         }
    5740             :                 }
    5741             :         }
    5742             : yy317:
    5743             :         YYDEBUG(317, *YYCURSOR);
    5744           0 :         yyaccept = 7;
    5745           0 :         yych = *(YYMARKER = ++YYCURSOR);
    5746           0 :         if (yych <= 'L') {
    5747           0 :                 if (yych <= '-') {
    5748           0 :                         if (yych == ')') goto yy228;
    5749           0 :                         goto yy223;
    5750             :                 } else {
    5751           0 :                         if (yych <= '.') goto yy320;
    5752           0 :                         if (yych <= '@') goto yy223;
    5753           0 :                         goto yy237;
    5754             :                 }
    5755             :         } else {
    5756           0 :                 if (yych <= '`') {
    5757           0 :                         if (yych <= 'M') goto yy319;
    5758           0 :                         if (yych <= 'Z') goto yy237;
    5759           0 :                         goto yy223;
    5760             :                 } else {
    5761           0 :                         if (yych == 'm') goto yy323;
    5762           0 :                         if (yych <= 'z') goto yy242;
    5763           0 :                         goto yy223;
    5764             :                 }
    5765             :         }
    5766             : yy318:
    5767             :         YYDEBUG(318, *YYCURSOR);
    5768           0 :         yyaccept = 7;
    5769           0 :         yych = *(YYMARKER = ++YYCURSOR);
    5770           0 :         if (yych <= 'L') {
    5771           0 :                 if (yych <= '-') {
    5772           0 :                         if (yych == ')') goto yy228;
    5773           0 :                         goto yy223;
    5774             :                 } else {
    5775           0 :                         if (yych <= '.') goto yy320;
    5776           0 :                         if (yych <= '@') goto yy223;
    5777           0 :                         goto yy237;
    5778             :                 }
    5779             :         } else {
    5780           0 :                 if (yych <= '`') {
    5781           0 :                         if (yych <= 'M') goto yy319;
    5782           0 :                         if (yych <= 'Z') goto yy237;
    5783           0 :                         goto yy223;
    5784             :                 } else {
    5785           0 :                         if (yych == 'm') goto yy319;
    5786           0 :                         if (yych <= 'z') goto yy237;
    5787           0 :                         goto yy223;
    5788             :                 }
    5789             :         }
    5790             : yy319:
    5791             :         YYDEBUG(319, *YYCURSOR);
    5792           0 :         yyaccept = 7;
    5793           0 :         yych = *(YYMARKER = ++YYCURSOR);
    5794           0 :         if (yych <= ')') {
    5795           0 :                 if (yych <= '\t') {
    5796           0 :                         if (yych <= 0x00) goto yy278;
    5797           0 :                         if (yych <= 0x08) goto yy223;
    5798           0 :                         goto yy278;
    5799             :                 } else {
    5800           0 :                         if (yych == ' ') goto yy278;
    5801           0 :                         if (yych <= '(') goto yy223;
    5802           0 :                         goto yy228;
    5803             :                 }
    5804             :         } else {
    5805           0 :                 if (yych <= '@') {
    5806           0 :                         if (yych == '.') goto yy322;
    5807           0 :                         goto yy223;
    5808             :                 } else {
    5809           0 :                         if (yych <= 'Z') goto yy238;
    5810           0 :                         if (yych <= '`') goto yy223;
    5811           0 :                         if (yych <= 'z') goto yy238;
    5812           0 :                         goto yy223;
    5813             :                 }
    5814             :         }
    5815             : yy320:
    5816             :         YYDEBUG(320, *YYCURSOR);
    5817           0 :         yych = *++YYCURSOR;
    5818           0 :         if (yych == 'M') goto yy321;
    5819           0 :         if (yych != 'm') goto yy57;
    5820             : yy321:
    5821             :         YYDEBUG(321, *YYCURSOR);
    5822           0 :         yych = *++YYCURSOR;
    5823           0 :         if (yych <= 0x1F) {
    5824           0 :                 if (yych <= 0x00) goto yy278;
    5825           0 :                 if (yych == '\t') goto yy278;
    5826           0 :                 goto yy57;
    5827             :         } else {
    5828           0 :                 if (yych <= ' ') goto yy278;
    5829           0 :                 if (yych != '.') goto yy57;
    5830             :         }
    5831             : yy322:
    5832             :         YYDEBUG(322, *YYCURSOR);
    5833           0 :         yych = *++YYCURSOR;
    5834           0 :         if (yych <= '\t') {
    5835           0 :                 if (yych <= 0x00) goto yy278;
    5836           0 :                 if (yych <= 0x08) goto yy57;
    5837           0 :                 goto yy278;
    5838             :         } else {
    5839           0 :                 if (yych == ' ') goto yy278;
    5840           0 :                 goto yy57;
    5841             :         }
    5842             : yy323:
    5843             :         YYDEBUG(323, *YYCURSOR);
    5844           0 :         yyaccept = 7;
    5845           0 :         yych = *(YYMARKER = ++YYCURSOR);
    5846           0 :         if (yych <= '-') {
    5847           0 :                 if (yych <= 0x1F) {
    5848           0 :                         if (yych <= 0x00) goto yy278;
    5849           0 :                         if (yych == '\t') goto yy278;
    5850           0 :                         goto yy223;
    5851             :                 } else {
    5852           0 :                         if (yych <= '(') {
    5853           0 :                                 if (yych <= ' ') goto yy278;
    5854           0 :                                 goto yy223;
    5855             :                         } else {
    5856           0 :                                 if (yych <= ')') goto yy228;
    5857           0 :                                 if (yych <= ',') goto yy223;
    5858           0 :                                 goto yy244;
    5859             :                         }
    5860             :                 }
    5861             :         } else {
    5862           0 :                 if (yych <= 'Z') {
    5863           0 :                         if (yych <= '.') goto yy322;
    5864           0 :                         if (yych <= '/') goto yy244;
    5865           0 :                         if (yych <= '@') goto yy223;
    5866           0 :                         goto yy238;
    5867             :                 } else {
    5868           0 :                         if (yych <= '_') {
    5869           0 :                                 if (yych <= '^') goto yy223;
    5870           0 :                                 goto yy244;
    5871             :                         } else {
    5872           0 :                                 if (yych <= '`') goto yy223;
    5873           0 :                                 if (yych <= 'z') goto yy243;
    5874           0 :                                 goto yy223;
    5875             :                         }
    5876             :                 }
    5877             :         }
    5878             : yy324:
    5879             :         YYDEBUG(324, *YYCURSOR);
    5880           0 :         yyaccept = 6;
    5881           0 :         yych = *(YYMARKER = ++YYCURSOR);
    5882           0 :         if (yych <= ':') {
    5883           0 :                 if (yych <= ' ') {
    5884           0 :                         if (yych == '\t') goto yy283;
    5885           0 :                         if (yych <= 0x1F) goto yy199;
    5886           0 :                         goto yy283;
    5887             :                 } else {
    5888           0 :                         if (yych <= '.') {
    5889           0 :                                 if (yych <= '-') goto yy199;
    5890           0 :                                 goto yy267;
    5891             :                         } else {
    5892           0 :                                 if (yych <= '/') goto yy199;
    5893           0 :                                 if (yych <= '9') goto yy289;
    5894           0 :                                 goto yy267;
    5895             :                         }
    5896             :                 }
    5897             :         } else {
    5898           0 :                 if (yych <= 'P') {
    5899           0 :                         if (yych == 'A') goto yy285;
    5900           0 :                         if (yych <= 'O') goto yy199;
    5901           0 :                         goto yy285;
    5902             :                 } else {
    5903           0 :                         if (yych <= 'a') {
    5904           0 :                                 if (yych <= '`') goto yy199;
    5905           0 :                                 goto yy285;
    5906             :                         } else {
    5907           0 :                                 if (yych == 'p') goto yy285;
    5908           0 :                                 goto yy199;
    5909             :                         }
    5910             :                 }
    5911             :         }
    5912             : yy325:
    5913             :         YYDEBUG(325, *YYCURSOR);
    5914           0 :         yyaccept = 6;
    5915           0 :         yych = *(YYMARKER = ++YYCURSOR);
    5916           0 :         if (yych <= ':') {
    5917           0 :                 if (yych <= ' ') {
    5918           0 :                         if (yych == '\t') goto yy283;
    5919           0 :                         if (yych <= 0x1F) goto yy199;
    5920           0 :                         goto yy283;
    5921             :                 } else {
    5922           0 :                         if (yych <= '.') {
    5923           0 :                                 if (yych <= '-') goto yy199;
    5924             :                         } else {
    5925           0 :                                 if (yych <= '/') goto yy199;
    5926           0 :                                 if (yych <= '9') goto yy289;
    5927             :                         }
    5928             :                 }
    5929             :         } else {
    5930           0 :                 if (yych <= 'P') {
    5931           0 :                         if (yych == 'A') goto yy285;
    5932           0 :                         if (yych <= 'O') goto yy199;
    5933           0 :                         goto yy285;
    5934             :                 } else {
    5935           0 :                         if (yych <= 'a') {
    5936           0 :                                 if (yych <= '`') goto yy199;
    5937           0 :                                 goto yy285;
    5938             :                         } else {
    5939           0 :                                 if (yych == 'p') goto yy285;
    5940           0 :                                 goto yy199;
    5941             :                         }
    5942             :                 }
    5943             :         }
    5944             : yy326:
    5945             :         YYDEBUG(326, *YYCURSOR);
    5946           0 :         yych = *++YYCURSOR;
    5947           0 :         if (yych <= '/') goto yy57;
    5948           0 :         if (yych <= '5') goto yy327;
    5949           0 :         if (yych <= '6') goto yy328;
    5950           0 :         if (yych <= '9') goto yy224;
    5951           0 :         goto yy57;
    5952             : yy327:
    5953             :         YYDEBUG(327, *YYCURSOR);
    5954           0 :         yyaccept = 7;
    5955           0 :         yych = *(YYMARKER = ++YYCURSOR);
    5956           0 :         if (yych <= '/') {
    5957           0 :                 if (yych == '.') goto yy225;
    5958           0 :                 goto yy223;
    5959             :         } else {
    5960           0 :                 if (yych <= '9') goto yy329;
    5961           0 :                 if (yych <= ':') goto yy225;
    5962           0 :                 goto yy223;
    5963             :         }
    5964             : yy328:
    5965             :         YYDEBUG(328, *YYCURSOR);
    5966           0 :         yyaccept = 7;
    5967           0 :         yych = *(YYMARKER = ++YYCURSOR);
    5968           0 :         if (yych <= '/') {
    5969           0 :                 if (yych == '.') goto yy225;
    5970           0 :                 goto yy223;
    5971             :         } else {
    5972           0 :                 if (yych <= '0') goto yy270;
    5973           0 :                 if (yych == ':') goto yy225;
    5974           0 :                 goto yy223;
    5975             :         }
    5976             : yy329:
    5977             :         YYDEBUG(329, *YYCURSOR);
    5978           0 :         yyaccept = 7;
    5979           0 :         yych = *(YYMARKER = ++YYCURSOR);
    5980           0 :         if (yych <= ',') {
    5981           0 :                 if (yych <= ' ') {
    5982           0 :                         if (yych == '\t') goto yy272;
    5983           0 :                         if (yych <= 0x1F) goto yy223;
    5984           0 :                         goto yy272;
    5985             :                 } else {
    5986           0 :                         if (yych <= '(') {
    5987           0 :                                 if (yych <= '\'') goto yy223;
    5988           0 :                                 goto yy272;
    5989             :                         } else {
    5990           0 :                                 if (yych == '+') goto yy272;
    5991           0 :                                 goto yy223;
    5992             :                         }
    5993             :                 }
    5994             :         } else {
    5995           0 :                 if (yych <= ':') {
    5996           0 :                         if (yych <= '-') goto yy272;
    5997           0 :                         if (yych <= '.') goto yy225;
    5998           0 :                         if (yych <= '9') goto yy223;
    5999           0 :                         goto yy225;
    6000             :                 } else {
    6001           0 :                         if (yych <= 'Z') {
    6002           0 :                                 if (yych <= '@') goto yy223;
    6003           0 :                                 goto yy272;
    6004             :                         } else {
    6005           0 :                                 if (yych <= '`') goto yy223;
    6006           0 :                                 if (yych <= 'z') goto yy272;
    6007           0 :                                 goto yy223;
    6008             :                         }
    6009             :                 }
    6010             :         }
    6011             : yy330:
    6012             :         YYDEBUG(330, *YYCURSOR);
    6013           0 :         yyaccept = 6;
    6014           0 :         yych = *(YYMARKER = ++YYCURSOR);
    6015           0 :         if (yych <= ':') {
    6016           0 :                 if (yych <= ' ') {
    6017           0 :                         if (yych == '\t') goto yy283;
    6018           0 :                         if (yych <= 0x1F) goto yy199;
    6019           0 :                         goto yy283;
    6020             :                 } else {
    6021           0 :                         if (yych <= '.') {
    6022           0 :                                 if (yych <= '-') goto yy199;
    6023           0 :                                 goto yy311;
    6024             :                         } else {
    6025           0 :                                 if (yych <= '/') goto yy199;
    6026           0 :                                 if (yych <= '9') goto yy289;
    6027           0 :                                 goto yy311;
    6028             :                         }
    6029             :                 }
    6030             :         } else {
    6031           0 :                 if (yych <= 'P') {
    6032           0 :                         if (yych == 'A') goto yy285;
    6033           0 :                         if (yych <= 'O') goto yy199;
    6034           0 :                         goto yy285;
    6035             :                 } else {
    6036           0 :                         if (yych <= 'a') {
    6037           0 :                                 if (yych <= '`') goto yy199;
    6038           0 :                                 goto yy285;
    6039             :                         } else {
    6040           0 :                                 if (yych == 'p') goto yy285;
    6041           0 :                                 goto yy199;
    6042             :                         }
    6043             :                 }
    6044             :         }
    6045             : yy331:
    6046             :         YYDEBUG(331, *YYCURSOR);
    6047           0 :         yyaccept = 6;
    6048           0 :         yych = *(YYMARKER = ++YYCURSOR);
    6049           0 :         if (yych <= '1') {
    6050           0 :                 if (yych <= '/') goto yy216;
    6051           0 :                 if (yych <= '0') goto yy333;
    6052           0 :                 goto yy334;
    6053             :         } else {
    6054           0 :                 if (yych <= '2') goto yy335;
    6055           0 :                 if (yych <= '5') goto yy336;
    6056           0 :                 if (yych <= '9') goto yy337;
    6057           0 :                 goto yy216;
    6058             :         }
    6059             : yy332:
    6060             :         YYDEBUG(332, *YYCURSOR);
    6061          23 :         yych = *++YYCURSOR;
    6062          23 :         if (yych <= '/') {
    6063           0 :                 if (yych == '.') goto yy221;
    6064           0 :                 goto yy57;
    6065             :         } else {
    6066          23 :                 if (yych <= '0') goto yy304;
    6067          23 :                 if (yych <= '9') goto yy305;
    6068           0 :                 if (yych <= ':') goto yy221;
    6069           0 :                 goto yy57;
    6070             :         }
    6071             : yy333:
    6072             :         YYDEBUG(333, *YYCURSOR);
    6073           0 :         yyaccept = 6;
    6074           0 :         yych = *(YYMARKER = ++YYCURSOR);
    6075           0 :         if (yych <= '/') {
    6076           0 :                 if (yych == '.') goto yy350;
    6077           0 :                 goto yy199;
    6078             :         } else {
    6079           0 :                 if (yych <= '0') goto yy349;
    6080           0 :                 if (yych <= '9') goto yy354;
    6081           0 :                 if (yych <= ':') goto yy350;
    6082           0 :                 goto yy199;
    6083             :         }
    6084             : yy334:
    6085             :         YYDEBUG(334, *YYCURSOR);
    6086           0 :         yyaccept = 6;
    6087           0 :         yych = *(YYMARKER = ++YYCURSOR);
    6088           0 :         if (yych <= '/') {
    6089           0 :                 if (yych == '.') goto yy338;
    6090           0 :                 goto yy199;
    6091             :         } else {
    6092           0 :                 if (yych <= '2') goto yy354;
    6093           0 :                 if (yych <= '9') goto yy349;
    6094           0 :                 if (yych <= ':') goto yy338;
    6095           0 :                 goto yy199;
    6096             :         }
    6097             : yy335:
    6098             :         YYDEBUG(335, *YYCURSOR);
    6099           0 :         yyaccept = 6;
    6100           0 :         yych = *(YYMARKER = ++YYCURSOR);
    6101           0 :         if (yych <= '/') {
    6102           0 :                 if (yych == '.') goto yy338;
    6103           0 :                 goto yy199;
    6104             :         } else {
    6105           0 :                 if (yych <= '4') goto yy349;
    6106           0 :                 if (yych <= '9') goto yy348;
    6107           0 :                 if (yych <= ':') goto yy338;
    6108           0 :                 goto yy199;
    6109             :         }
    6110             : yy336:
    6111             :         YYDEBUG(336, *YYCURSOR);
    6112           0 :         yyaccept = 6;
    6113           0 :         yych = *(YYMARKER = ++YYCURSOR);
    6114           0 :         if (yych <= '/') {
    6115           0 :                 if (yych == '.') goto yy338;
    6116           0 :                 goto yy199;
    6117             :         } else {
    6118           0 :                 if (yych <= '9') goto yy348;
    6119           0 :                 if (yych <= ':') goto yy338;
    6120           0 :                 goto yy199;
    6121             :         }
    6122             : yy337:
    6123             :         YYDEBUG(337, *YYCURSOR);
    6124           0 :         yyaccept = 6;
    6125           0 :         yych = *(YYMARKER = ++YYCURSOR);
    6126           0 :         if (yych <= '/') {
    6127           0 :                 if (yych != '.') goto yy199;
    6128             :         } else {
    6129           0 :                 if (yych <= '9') goto yy263;
    6130           0 :                 if (yych >= ';') goto yy199;
    6131             :         }
    6132             : yy338:
    6133             :         YYDEBUG(338, *YYCURSOR);
    6134           0 :         yych = *++YYCURSOR;
    6135           0 :         if (yych <= '/') goto yy57;
    6136           0 :         if (yych <= '5') goto yy339;
    6137           0 :         if (yych <= '6') goto yy340;
    6138           0 :         if (yych <= '9') goto yy266;
    6139           0 :         goto yy57;
    6140             : yy339:
    6141             :         YYDEBUG(339, *YYCURSOR);
    6142           0 :         yyaccept = 7;
    6143           0 :         yych = *(YYMARKER = ++YYCURSOR);
    6144           0 :         if (yych <= '/') {
    6145           0 :                 if (yych == '.') goto yy267;
    6146           0 :                 goto yy223;
    6147             :         } else {
    6148           0 :                 if (yych <= '9') goto yy341;
    6149           0 :                 if (yych <= ':') goto yy267;
    6150           0 :                 goto yy223;
    6151             :         }
    6152             : yy340:
    6153             :         YYDEBUG(340, *YYCURSOR);
    6154           0 :         yyaccept = 7;
    6155           0 :         yych = *(YYMARKER = ++YYCURSOR);
    6156           0 :         if (yych <= '/') {
    6157           0 :                 if (yych == '.') goto yy267;
    6158           0 :                 goto yy223;
    6159             :         } else {
    6160           0 :                 if (yych <= '0') goto yy229;
    6161           0 :                 if (yych == ':') goto yy267;
    6162           0 :                 goto yy223;
    6163             :         }
    6164             : yy341:
    6165             :         YYDEBUG(341, *YYCURSOR);
    6166           0 :         yyaccept = 7;
    6167           0 :         yych = *(YYMARKER = ++YYCURSOR);
    6168           0 :         if (yych <= ',') {
    6169           0 :                 if (yych <= ' ') {
    6170           0 :                         if (yych == '\t') goto yy343;
    6171           0 :                         if (yych <= 0x1F) goto yy223;
    6172           0 :                         goto yy343;
    6173             :                 } else {
    6174           0 :                         if (yych <= '(') {
    6175           0 :                                 if (yych <= '\'') goto yy223;
    6176           0 :                                 goto yy343;
    6177             :                         } else {
    6178           0 :                                 if (yych == '+') goto yy343;
    6179           0 :                                 goto yy223;
    6180             :                         }
    6181             :                 }
    6182             :         } else {
    6183           0 :                 if (yych <= ':') {
    6184           0 :                         if (yych <= '-') goto yy343;
    6185           0 :                         if (yych <= '.') goto yy267;
    6186           0 :                         if (yych <= '9') goto yy223;
    6187           0 :                         goto yy267;
    6188             :                 } else {
    6189           0 :                         if (yych <= 'Z') {
    6190           0 :                                 if (yych <= '@') goto yy223;
    6191           0 :                                 goto yy343;
    6192             :                         } else {
    6193           0 :                                 if (yych <= '`') goto yy223;
    6194           0 :                                 if (yych <= 'z') goto yy343;
    6195           0 :                                 goto yy223;
    6196             :                         }
    6197             :                 }
    6198             :         }
    6199             : yy342:
    6200             :         YYDEBUG(342, *YYCURSOR);
    6201           0 :         ++YYCURSOR;
    6202           0 :         if ((YYLIMIT - YYCURSOR) < 9) YYFILL(9);
    6203           0 :         yych = *YYCURSOR;
    6204             : yy343:
    6205             :         YYDEBUG(343, *YYCURSOR);
    6206           0 :         if (yych <= '@') {
    6207           0 :                 if (yych <= '\'') {
    6208           0 :                         if (yych <= '\t') {
    6209           0 :                                 if (yych <= 0x08) goto yy57;
    6210           0 :                                 goto yy342;
    6211             :                         } else {
    6212           0 :                                 if (yych == ' ') goto yy342;
    6213           0 :                                 goto yy57;
    6214             :                         }
    6215             :                 } else {
    6216           0 :                         if (yych <= '+') {
    6217           0 :                                 if (yych <= '(') goto yy234;
    6218           0 :                                 if (yych <= '*') goto yy57;
    6219           0 :                                 goto yy233;
    6220             :                         } else {
    6221           0 :                                 if (yych == '-') goto yy233;
    6222           0 :                                 goto yy57;
    6223             :                         }
    6224             :                 }
    6225             :         } else {
    6226           0 :                 if (yych <= 'Z') {
    6227           0 :                         if (yych <= 'G') {
    6228           0 :                                 if (yych <= 'A') goto yy344;
    6229           0 :                                 if (yych <= 'F') goto yy235;
    6230           0 :                                 goto yy232;
    6231             :                         } else {
    6232           0 :                                 if (yych != 'P') goto yy235;
    6233             :                         }
    6234             :                 } else {
    6235           0 :                         if (yych <= 'o') {
    6236           0 :                                 if (yych <= '`') goto yy57;
    6237           0 :                                 if (yych <= 'a') goto yy345;
    6238           0 :                                 goto yy236;
    6239             :                         } else {
    6240           0 :                                 if (yych <= 'p') goto yy345;
    6241           0 :                                 if (yych <= 'z') goto yy236;
    6242           0 :                                 goto yy57;
    6243             :                         }
    6244             :                 }
    6245             :         }
    6246             : yy344:
    6247             :         YYDEBUG(344, *YYCURSOR);
    6248           0 :         yyaccept = 7;
    6249           0 :         yych = *(YYMARKER = ++YYCURSOR);
    6250           0 :         if (yych <= 'L') {
    6251           0 :                 if (yych <= '-') {
    6252           0 :                         if (yych == ')') goto yy228;
    6253           0 :                         goto yy223;
    6254             :                 } else {
    6255           0 :                         if (yych <= '.') goto yy286;
    6256           0 :                         if (yych <= '@') goto yy223;
    6257           0 :                         goto yy237;
    6258             :                 }
    6259             :         } else {
    6260           0 :                 if (yych <= '`') {
    6261           0 :                         if (yych <= 'M') goto yy346;
    6262           0 :                         if (yych <= 'Z') goto yy237;
    6263           0 :                         goto yy223;
    6264             :                 } else {
    6265           0 :                         if (yych == 'm') goto yy347;
    6266           0 :                         if (yych <= 'z') goto yy242;
    6267           0 :                         goto yy223;
    6268             :                 }
    6269             :         }
    6270             : yy345:
    6271             :         YYDEBUG(345, *YYCURSOR);
    6272           0 :         yyaccept = 7;
    6273           0 :         yych = *(YYMARKER = ++YYCURSOR);
    6274           0 :         if (yych <= 'L') {
    6275           0 :                 if (yych <= '-') {
    6276           0 :                         if (yych == ')') goto yy228;
    6277           0 :                         goto yy223;
    6278             :                 } else {
    6279           0 :                         if (yych <= '.') goto yy286;
    6280           0 :                         if (yych <= '@') goto yy223;
    6281           0 :                         goto yy237;
    6282             :                 }
    6283             :         } else {
    6284           0 :                 if (yych <= '`') {
    6285           0 :                         if (yych <= 'M') goto yy346;
    6286           0 :                         if (yych <= 'Z') goto yy237;
    6287           0 :                         goto yy223;
    6288             :                 } else {
    6289           0 :                         if (yych == 'm') goto yy346;
    6290           0 :                         if (yych <= 'z') goto yy237;
    6291           0 :                         goto yy223;
    6292             :                 }
    6293             :         }
    6294             : yy346:
    6295             :         YYDEBUG(346, *YYCURSOR);
    6296           0 :         yyaccept = 7;
    6297           0 :         yych = *(YYMARKER = ++YYCURSOR);
    6298           0 :         if (yych <= ')') {
    6299           0 :                 if (yych <= '\t') {
    6300           0 :                         if (yych <= 0x00) goto yy278;
    6301           0 :                         if (yych <= 0x08) goto yy223;
    6302           0 :                         goto yy278;
    6303             :                 } else {
    6304           0 :                         if (yych == ' ') goto yy278;
    6305           0 :                         if (yych <= '(') goto yy223;
    6306           0 :                         goto yy228;
    6307             :                 }
    6308             :         } else {
    6309           0 :                 if (yych <= '@') {
    6310           0 :                         if (yych == '.') goto yy288;
    6311           0 :                         goto yy223;
    6312             :                 } else {
    6313           0 :                         if (yych <= 'Z') goto yy238;
    6314           0 :                         if (yych <= '`') goto yy223;
    6315           0 :                         if (yych <= 'z') goto yy238;
    6316           0 :                         goto yy223;
    6317             :                 }
    6318             :         }
    6319             : yy347:
    6320             :         YYDEBUG(347, *YYCURSOR);
    6321           0 :         yyaccept = 7;
    6322           0 :         yych = *(YYMARKER = ++YYCURSOR);
    6323           0 :         if (yych <= '-') {
    6324           0 :                 if (yych <= 0x1F) {
    6325           0 :                         if (yych <= 0x00) goto yy278;
    6326           0 :                         if (yych == '\t') goto yy278;
    6327           0 :                         goto yy223;
    6328             :                 } else {
    6329           0 :                         if (yych <= '(') {
    6330           0 :                                 if (yych <= ' ') goto yy278;
    6331           0 :                                 goto yy223;
    6332             :                         } else {
    6333           0 :                                 if (yych <= ')') goto yy228;
    6334           0 :                                 if (yych <= ',') goto yy223;
    6335           0 :                                 goto yy244;
    6336             :                         }
    6337             :                 }
    6338             :         } else {
    6339           0 :                 if (yych <= 'Z') {
    6340           0 :                         if (yych <= '.') goto yy288;
    6341           0 :                         if (yych <= '/') goto yy244;
    6342           0 :                         if (yych <= '@') goto yy223;
    6343           0 :                         goto yy238;
    6344             :                 } else {
    6345           0 :                         if (yych <= '_') {
    6346           0 :                                 if (yych <= '^') goto yy223;
    6347           0 :                                 goto yy244;
    6348             :                         } else {
    6349           0 :                                 if (yych <= '`') goto yy223;
    6350           0 :                                 if (yych <= 'z') goto yy243;
    6351           0 :                                 goto yy223;
    6352             :                         }
    6353             :                 }
    6354             :         }
    6355             : yy348:
    6356             :         YYDEBUG(348, *YYCURSOR);
    6357           0 :         yyaccept = 6;
    6358           0 :         yych = *(YYMARKER = ++YYCURSOR);
    6359           0 :         if (yych <= '/') {
    6360           0 :                 if (yych == '.') goto yy225;
    6361           0 :                 goto yy199;
    6362             :         } else {
    6363           0 :                 if (yych <= '9') goto yy289;
    6364           0 :                 if (yych <= ':') goto yy225;
    6365           0 :                 goto yy199;
    6366             :         }
    6367             : yy349:
    6368             :         YYDEBUG(349, *YYCURSOR);
    6369           0 :         yyaccept = 6;
    6370           0 :         yych = *(YYMARKER = ++YYCURSOR);
    6371           0 :         if (yych <= '/') {
    6372           0 :                 if (yych != '.') goto yy199;
    6373             :         } else {
    6374           0 :                 if (yych <= '9') goto yy289;
    6375           0 :                 if (yych >= ';') goto yy199;
    6376             :         }
    6377             : yy350:
    6378             :         YYDEBUG(350, *YYCURSOR);
    6379           0 :         yych = *++YYCURSOR;
    6380           0 :         if (yych <= '/') goto yy57;
    6381           0 :         if (yych <= '5') goto yy351;
    6382           0 :         if (yych <= '6') goto yy352;
    6383           0 :         if (yych <= '9') goto yy224;
    6384           0 :         goto yy57;
    6385             : yy351:
    6386             :         YYDEBUG(351, *YYCURSOR);
    6387           0 :         yyaccept = 7;
    6388           0 :         yych = *(YYMARKER = ++YYCURSOR);
    6389           0 :         if (yych <= '/') {
    6390           0 :                 if (yych == '.') goto yy225;
    6391           0 :                 goto yy223;
    6392             :         } else {
    6393           0 :                 if (yych <= '9') goto yy353;
    6394           0 :                 if (yych <= ':') goto yy225;
    6395           0 :                 goto yy223;
    6396             :         }
    6397             : yy352:
    6398             :         YYDEBUG(352, *YYCURSOR);
    6399           0 :         yyaccept = 7;
    6400           0 :         yych = *(YYMARKER = ++YYCURSOR);
    6401           0 :         if (yych <= '/') {
    6402           0 :                 if (yych == '.') goto yy225;
    6403           0 :                 goto yy223;
    6404             :         } else {
    6405           0 :                 if (yych <= '0') goto yy229;
    6406           0 :                 if (yych == ':') goto yy225;
    6407           0 :                 goto yy223;
    6408             :         }
    6409             : yy353:
    6410             :         YYDEBUG(353, *YYCURSOR);
    6411           0 :         yyaccept = 7;
    6412           0 :         yych = *(YYMARKER = ++YYCURSOR);
    6413           0 :         if (yych <= ',') {
    6414           0 :                 if (yych <= ' ') {
    6415           0 :                         if (yych == '\t') goto yy231;
    6416           0 :                         if (yych <= 0x1F) goto yy223;
    6417           0 :                         goto yy231;
    6418             :                 } else {
    6419           0 :                         if (yych <= '(') {
    6420           0 :                                 if (yych <= '\'') goto yy223;
    6421           0 :                                 goto yy231;
    6422             :                         } else {
    6423           0 :                                 if (yych == '+') goto yy231;
    6424           0 :                                 goto yy223;
    6425             :                         }
    6426             :                 }
    6427             :         } else {
    6428           0 :                 if (yych <= ':') {
    6429           0 :                         if (yych <= '-') goto yy231;
    6430           0 :                         if (yych <= '.') goto yy225;
    6431           0 :                         if (yych <= '9') goto yy223;
    6432           0 :                         goto yy225;
    6433             :                 } else {
    6434           0 :                         if (yych <= 'Z') {
    6435           0 :                                 if (yych <= '@') goto yy223;
    6436           0 :                                 goto yy231;
    6437             :                         } else {
    6438           0 :                                 if (yych <= '`') goto yy223;
    6439           0 :                                 if (yych <= 'z') goto yy231;
    6440           0 :                                 goto yy223;
    6441             :                         }
    6442             :                 }
    6443             :         }
    6444             : yy354:
    6445             :         YYDEBUG(354, *YYCURSOR);
    6446           0 :         yyaccept = 6;
    6447           0 :         yych = *(YYMARKER = ++YYCURSOR);
    6448           0 :         if (yych <= '/') {
    6449           0 :                 if (yych == '.') goto yy338;
    6450           0 :                 goto yy199;
    6451             :         } else {
    6452           0 :                 if (yych <= '9') goto yy289;
    6453           0 :                 if (yych <= ':') goto yy338;
    6454           0 :                 goto yy199;
    6455             :         }
    6456             : yy355:
    6457             :         YYDEBUG(355, *YYCURSOR);
    6458           0 :         yyaccept = 6;
    6459           0 :         yych = *(YYMARKER = ++YYCURSOR);
    6460           0 :         if (yych <= '9') {
    6461           0 :                 if (yych <= '/') {
    6462           0 :                         if (yych == '.') goto yy300;
    6463           0 :                         goto yy216;
    6464             :                 } else {
    6465           0 :                         if (yych <= '0') goto yy332;
    6466           0 :                         if (yych <= '1') goto yy302;
    6467           0 :                         if (yych <= '2') goto yy303;
    6468           0 :                         goto yy297;
    6469             :                 }
    6470             :         } else {
    6471           0 :                 if (yych <= 'q') {
    6472           0 :                         if (yych <= ':') goto yy264;
    6473           0 :                         if (yych == 'n') goto yy212;
    6474           0 :                         goto yy216;
    6475             :                 } else {
    6476           0 :                         if (yych <= 'r') goto yy213;
    6477           0 :                         if (yych <= 's') goto yy211;
    6478           0 :                         if (yych <= 't') goto yy214;
    6479           0 :                         goto yy216;
    6480             :                 }
    6481             :         }
    6482             : yy356:
    6483             :         YYDEBUG(356, *YYCURSOR);
    6484          21 :         yyaccept = 6;
    6485          21 :         yych = *(YYMARKER = ++YYCURSOR);
    6486          21 :         if (yych <= '9') {
    6487          13 :                 if (yych <= '/') {
    6488          13 :                         if (yych == '.') goto yy300;
    6489          13 :                         goto yy216;
    6490             :                 } else {
    6491           0 :                         if (yych <= '0') goto yy332;
    6492           0 :                         if (yych <= '1') goto yy302;
    6493           0 :                         if (yych <= '2') goto yy303;
    6494           0 :                         goto yy297;
    6495             :                 }
    6496             :         } else {
    6497           8 :                 if (yych <= 'q') {
    6498           2 :                         if (yych <= ':') goto yy264;
    6499           0 :                         if (yych == 'n') goto yy212;
    6500           0 :                         goto yy216;
    6501             :                 } else {
    6502           6 :                         if (yych <= 'r') goto yy213;
    6503           6 :                         if (yych <= 's') goto yy211;
    6504           6 :                         if (yych <= 't') goto yy214;
    6505           0 :                         goto yy216;
    6506             :                 }
    6507             :         }
    6508             : yy357:
    6509             :         YYDEBUG(357, *YYCURSOR);
    6510           0 :         yyaccept = 6;
    6511           0 :         yych = *(YYMARKER = ++YYCURSOR);
    6512           0 :         if (yych <= 'm') {
    6513           0 :                 if (yych <= '1') {
    6514           0 :                         if (yych <= '/') goto yy216;
    6515           0 :                         if (yych <= '0') goto yy360;
    6516           0 :                         goto yy361;
    6517             :                 } else {
    6518           0 :                         if (yych <= '2') goto yy368;
    6519           0 :                         if (yych <= '9') goto yy369;
    6520           0 :                         goto yy216;
    6521             :                 }
    6522             :         } else {
    6523           0 :                 if (yych <= 'r') {
    6524           0 :                         if (yych <= 'n') goto yy212;
    6525           0 :                         if (yych <= 'q') goto yy216;
    6526           0 :                         goto yy213;
    6527             :                 } else {
    6528           0 :                         if (yych <= 's') goto yy211;
    6529           0 :                         if (yych <= 't') goto yy214;
    6530           0 :                         goto yy216;
    6531             :                 }
    6532             :         }
    6533             : yy358:
    6534             :         YYDEBUG(358, *YYCURSOR);
    6535           1 :         yyaccept = 6;
    6536           1 :         yych = *(YYMARKER = ++YYCURSOR);
    6537           1 :         if (yych <= 'm') {
    6538           1 :                 if (yych <= '1') {
    6539           0 :                         if (yych <= '/') goto yy216;
    6540           0 :                         if (yych <= '0') goto yy360;
    6541           0 :                         goto yy361;
    6542             :                 } else {
    6543           1 :                         if (yych <= '2') goto yy368;
    6544           1 :                         if (yych <= '9') goto yy369;
    6545           0 :                         goto yy216;
    6546             :                 }
    6547             :         } else {
    6548           0 :                 if (yych <= 'r') {
    6549           0 :                         if (yych <= 'n') goto yy212;
    6550           0 :                         if (yych <= 'q') goto yy216;
    6551           0 :                         goto yy213;
    6552             :                 } else {
    6553           0 :                         if (yych <= 's') goto yy211;
    6554           0 :                         if (yych <= 't') goto yy214;
    6555           0 :                         goto yy216;
    6556             :                 }
    6557             :         }
    6558             : yy359:
    6559             :         YYDEBUG(359, *YYCURSOR);
    6560           0 :         yyaccept = 6;
    6561           0 :         yych = *(YYMARKER = ++YYCURSOR);
    6562           0 :         if (yych <= 'm') {
    6563           0 :                 if (yych <= '1') {
    6564           0 :                         if (yych <= '/') goto yy216;
    6565           0 :                         if (yych >= '1') goto yy361;
    6566             :                 } else {
    6567           0 :                         if (yych <= '2') goto yy209;
    6568           0 :                         if (yych <= '9') goto yy210;
    6569           0 :                         goto yy216;
    6570             :                 }
    6571             :         } else {
    6572           0 :                 if (yych <= 'r') {
    6573           0 :                         if (yych <= 'n') goto yy212;
    6574           0 :                         if (yych <= 'q') goto yy216;
    6575           0 :                         goto yy213;
    6576             :                 } else {
    6577           0 :                         if (yych <= 's') goto yy211;
    6578           0 :                         if (yych <= 't') goto yy214;
    6579           0 :                         goto yy216;
    6580             :                 }
    6581             :         }
    6582             : yy360:
    6583             :         YYDEBUG(360, *YYCURSOR);
    6584           0 :         yyaccept = 6;
    6585           0 :         yych = *(YYMARKER = ++YYCURSOR);
    6586           0 :         if (yych <= '9') {
    6587           0 :                 if (yych <= '/') {
    6588           0 :                         if (yych <= ',') goto yy216;
    6589           0 :                         if (yych <= '-') goto yy362;
    6590           0 :                         if (yych <= '.') goto yy331;
    6591           0 :                         goto yy216;
    6592             :                 } else {
    6593           0 :                         if (yych <= '0') goto yy332;
    6594           0 :                         if (yych <= '1') goto yy302;
    6595           0 :                         if (yych <= '2') goto yy303;
    6596           0 :                         goto yy297;
    6597             :                 }
    6598             :         } else {
    6599           0 :                 if (yych <= 'q') {
    6600           0 :                         if (yych <= ':') goto yy221;
    6601           0 :                         if (yych == 'n') goto yy212;
    6602           0 :                         goto yy216;
    6603             :                 } else {
    6604           0 :                         if (yych <= 'r') goto yy213;
    6605           0 :                         if (yych <= 's') goto yy211;
    6606           0 :                         if (yych <= 't') goto yy214;
    6607           0 :                         goto yy216;
    6608             :                 }
    6609             :         }
    6610             : yy361:
    6611             :         YYDEBUG(361, *YYCURSOR);
    6612           0 :         yyaccept = 6;
    6613           0 :         yych = *(YYMARKER = ++YYCURSOR);
    6614           0 :         if (yych <= '9') {
    6615           0 :                 if (yych <= '/') {
    6616           0 :                         if (yych <= ',') goto yy216;
    6617           0 :                         if (yych <= '-') goto yy362;
    6618           0 :                         if (yych <= '.') goto yy300;
    6619           0 :                         goto yy216;
    6620             :                 } else {
    6621           0 :                         if (yych <= '0') goto yy301;
    6622           0 :                         if (yych <= '1') goto yy302;
    6623           0 :                         if (yych <= '2') goto yy303;
    6624           0 :                         goto yy297;
    6625             :                 }
    6626             :         } else {
    6627           0 :                 if (yych <= 'q') {
    6628           0 :                         if (yych <= ':') goto yy264;
    6629           0 :                         if (yych == 'n') goto yy212;
    6630           0 :                         goto yy216;
    6631             :                 } else {
    6632           0 :                         if (yych <= 'r') goto yy213;
    6633           0 :                         if (yych <= 's') goto yy211;
    6634           0 :                         if (yych <= 't') goto yy214;
    6635           0 :                         goto yy216;
    6636             :                 }
    6637             :         }
    6638             : yy362:
    6639             :         YYDEBUG(362, *YYCURSOR);
    6640           1 :         yych = *++YYCURSOR;
    6641           1 :         if (yych <= '/') goto yy57;
    6642           1 :         if (yych >= ':') goto yy57;
    6643             :         YYDEBUG(363, *YYCURSOR);
    6644           1 :         ++YYCURSOR;
    6645           1 :         if ((yych = *YYCURSOR) <= '/') goto yy364;
    6646           1 :         if (yych <= '9') goto yy365;
    6647             : yy364:
    6648             :         YYDEBUG(364, *YYCURSOR);
    6649             : #line 1533 "ext/date/lib/parse_date.re"
    6650             :         {
    6651             :                 int length = 0;
    6652             :                 DEBUG_OUTPUT("pgtextshort");
    6653             :                 TIMELIB_INIT;
    6654             :                 TIMELIB_HAVE_DATE();
    6655             :                 s->time->m = timelib_get_month((char **) &ptr);
    6656             :                 s->time->d = timelib_get_nr((char **) &ptr, 2);
    6657             :                 s->time->y = timelib_get_nr_ex((char **) &ptr, 4, &length);
    6658             :                 TIMELIB_PROCESS_YEAR(s->time->y, length);
    6659             :                 TIMELIB_DEINIT;
    6660             :                 return TIMELIB_PG_TEXT;
    6661             :         }
    6662             : #line 6663 "ext/date/lib/parse_date.c"
    6663             : yy365:
    6664             :         YYDEBUG(365, *YYCURSOR);
    6665           1 :         yych = *++YYCURSOR;
    6666           1 :         if (yych <= '/') goto yy364;
    6667           1 :         if (yych >= ':') goto yy364;
    6668             :         YYDEBUG(366, *YYCURSOR);
    6669           1 :         yych = *++YYCURSOR;
    6670           1 :         if (yych <= '/') goto yy364;
    6671           1 :         if (yych >= ':') goto yy364;
    6672             :         YYDEBUG(367, *YYCURSOR);
    6673           1 :         yych = *++YYCURSOR;
    6674           1 :         goto yy364;
    6675             : yy368:
    6676             :         YYDEBUG(368, *YYCURSOR);
    6677           0 :         yyaccept = 6;
    6678           0 :         yych = *(YYMARKER = ++YYCURSOR);
    6679           0 :         if (yych <= '9') {
    6680           0 :                 if (yych <= '/') {
    6681           0 :                         if (yych <= ',') goto yy216;
    6682           0 :                         if (yych <= '-') goto yy362;
    6683           0 :                         if (yych <= '.') goto yy300;
    6684           0 :                         goto yy216;
    6685             :                 } else {
    6686           0 :                         if (yych <= '0') goto yy332;
    6687           0 :                         if (yych <= '1') goto yy302;
    6688           0 :                         if (yych <= '2') goto yy303;
    6689           0 :                         goto yy297;
    6690             :                 }
    6691             :         } else {
    6692           0 :                 if (yych <= 'q') {
    6693           0 :                         if (yych <= ':') goto yy264;
    6694           0 :                         if (yych == 'n') goto yy212;
    6695           0 :                         goto yy216;
    6696             :                 } else {
    6697           0 :                         if (yych <= 'r') goto yy213;
    6698           0 :                         if (yych <= 's') goto yy211;
    6699           0 :                         if (yych <= 't') goto yy214;
    6700           0 :                         goto yy216;
    6701             :                 }
    6702             :         }
    6703             : yy369:
    6704             :         YYDEBUG(369, *YYCURSOR);
    6705           1 :         yyaccept = 6;
    6706           1 :         yych = *(YYMARKER = ++YYCURSOR);
    6707           1 :         if (yych <= '9') {
    6708           1 :                 if (yych <= '/') {
    6709           1 :                         if (yych <= ',') goto yy216;
    6710           1 :                         if (yych <= '-') goto yy362;
    6711           0 :                         if (yych <= '.') goto yy300;
    6712           0 :                         goto yy216;
    6713             :                 } else {
    6714           0 :                         if (yych <= '0') goto yy332;
    6715           0 :                         if (yych <= '1') goto yy302;
    6716           0 :                         if (yych <= '2') goto yy303;
    6717           0 :                         goto yy297;
    6718             :                 }
    6719             :         } else {
    6720           0 :                 if (yych <= 'q') {
    6721           0 :                         if (yych <= ':') goto yy264;
    6722           0 :                         if (yych == 'n') goto yy212;
    6723           0 :                         goto yy216;
    6724             :                 } else {
    6725           0 :                         if (yych <= 'r') goto yy213;
    6726           0 :                         if (yych <= 's') goto yy211;
    6727           0 :                         if (yych <= 't') goto yy214;
    6728           0 :                         goto yy216;
    6729             :                 }
    6730             :         }
    6731             : yy370:
    6732             :         YYDEBUG(370, *YYCURSOR);
    6733          18 :         yyaccept = 0;
    6734          18 :         yych = *(YYMARKER = ++YYCURSOR);
    6735          18 :         if (yych <= 'B') {
    6736           0 :                 if (yych <= '-') {
    6737           0 :                         if (yych == ')') goto yy140;
    6738           0 :                         if (yych <= ',') goto yy4;
    6739           0 :                         goto yy148;
    6740             :                 } else {
    6741           0 :                         if (yych == '/') goto yy148;
    6742           0 :                         if (yych <= '@') goto yy4;
    6743           0 :                         goto yy142;
    6744             :                 }
    6745             :         } else {
    6746          18 :                 if (yych <= '_') {
    6747           0 :                         if (yych <= 'C') goto yy193;
    6748           0 :                         if (yych <= 'Z') goto yy142;
    6749           0 :                         if (yych <= '^') goto yy4;
    6750           0 :                         goto yy148;
    6751             :                 } else {
    6752          18 :                         if (yych <= 'b') {
    6753           0 :                                 if (yych <= '`') goto yy4;
    6754           0 :                                 goto yy147;
    6755             :                         } else {
    6756          18 :                                 if (yych <= 'c') goto yy371;
    6757           1 :                                 if (yych <= 'z') goto yy147;
    6758           0 :                                 goto yy4;
    6759             :                         }
    6760             :                 }
    6761             :         }
    6762             : yy371:
    6763             :         YYDEBUG(371, *YYCURSOR);
    6764          17 :         yyaccept = 5;
    6765          17 :         yych = *(YYMARKER = ++YYCURSOR);
    6766          17 :         if (yych <= '9') {
    6767          10 :                 if (yych <= '(') {
    6768           9 :                         if (yych <= '\t') {
    6769           0 :                                 if (yych <= 0x08) goto yy194;
    6770           0 :                                 goto yy196;
    6771             :                         } else {
    6772           9 :                                 if (yych == ' ') goto yy196;
    6773           0 :                                 goto yy194;
    6774             :                         }
    6775             :                 } else {
    6776           1 :                         if (yych <= '-') {
    6777           0 :                                 if (yych <= ')') goto yy140;
    6778           0 :                                 if (yych <= ',') goto yy194;
    6779             :                         } else {
    6780           1 :                                 if (yych == '/') goto yy148;
    6781           1 :                                 goto yy196;
    6782             :                         }
    6783             :                 }
    6784             :         } else {
    6785           7 :                 if (yych <= '^') {
    6786           0 :                         if (yych <= 'D') {
    6787           0 :                                 if (yych <= '@') goto yy194;
    6788           0 :                                 goto yy143;
    6789             :                         } else {
    6790           0 :                                 if (yych <= 'E') goto yy202;
    6791           0 :                                 if (yych <= 'Z') goto yy143;
    6792           0 :                                 goto yy194;
    6793             :                         }
    6794             :                 } else {
    6795           7 :                         if (yych <= 'd') {
    6796           0 :                                 if (yych <= '_') goto yy148;
    6797           0 :                                 if (yych <= '`') goto yy194;
    6798           0 :                                 goto yy151;
    6799             :                         } else {
    6800           7 :                                 if (yych <= 'e') goto yy373;
    6801           0 :                                 if (yych <= 'z') goto yy151;
    6802           0 :                                 goto yy194;
    6803             :                         }
    6804             :                 }
    6805             :         }
    6806             : yy372:
    6807             :         YYDEBUG(372, *YYCURSOR);
    6808           1 :         yych = *++YYCURSOR;
    6809           1 :         if (yybm[0+yych] & 8) {
    6810           0 :                 goto yy149;
    6811             :         }
    6812           1 :         if (yych <= '/') goto yy196;
    6813           1 :         if (yych <= '0') goto yy357;
    6814           1 :         if (yych <= '2') goto yy358;
    6815           0 :         if (yych <= '3') goto yy359;
    6816           0 :         goto yy196;
    6817             : yy373:
    6818             :         YYDEBUG(373, *YYCURSOR);
    6819           7 :         yyaccept = 0;
    6820           7 :         yych = *(YYMARKER = ++YYCURSOR);
    6821           7 :         if (yych <= 'L') {
    6822           0 :                 if (yych <= '-') {
    6823           0 :                         if (yych == ')') goto yy140;
    6824           0 :                         if (yych <= ',') goto yy4;
    6825           0 :                         goto yy148;
    6826             :                 } else {
    6827           0 :                         if (yych == '/') goto yy148;
    6828           0 :                         if (yych <= '@') goto yy4;
    6829           0 :                         goto yy144;
    6830             :                 }
    6831             :         } else {
    6832           7 :                 if (yych <= '_') {
    6833           0 :                         if (yych <= 'M') goto yy203;
    6834           0 :                         if (yych <= 'Z') goto yy144;
    6835           0 :                         if (yych <= '^') goto yy4;
    6836           0 :                         goto yy148;
    6837             :                 } else {
    6838           7 :                         if (yych <= 'l') {
    6839           0 :                                 if (yych <= '`') goto yy4;
    6840           0 :                                 goto yy152;
    6841             :                         } else {
    6842           7 :                                 if (yych <= 'm') goto yy374;
    6843           0 :                                 if (yych <= 'z') goto yy152;
    6844           0 :                                 goto yy4;
    6845             :                         }
    6846             :                 }
    6847             :         }
    6848             : yy374:
    6849             :         YYDEBUG(374, *YYCURSOR);
    6850           7 :         yyaccept = 0;
    6851           7 :         yych = *(YYMARKER = ++YYCURSOR);
    6852           7 :         if (yych <= 'A') {
    6853           0 :                 if (yych <= '-') {
    6854           0 :                         if (yych == ')') goto yy140;
    6855           0 :                         if (yych <= ',') goto yy4;
    6856           0 :                         goto yy148;
    6857             :                 } else {
    6858           0 :                         if (yych == '/') goto yy148;
    6859           0 :                         if (yych <= '@') goto yy4;
    6860           0 :                         goto yy145;
    6861             :                 }
    6862             :         } else {
    6863           7 :                 if (yych <= '_') {
    6864           0 :                         if (yych <= 'B') goto yy204;
    6865           0 :                         if (yych <= 'Z') goto yy145;
    6866           0 :                         if (yych <= '^') goto yy4;
    6867           0 :                         goto yy148;
    6868             :                 } else {
    6869           7 :                         if (yych <= 'a') {
    6870           0 :                                 if (yych <= '`') goto yy4;
    6871           0 :                                 goto yy153;
    6872             :                         } else {
    6873           7 :                                 if (yych <= 'b') goto yy375;
    6874           0 :                                 if (yych <= 'z') goto yy153;
    6875           0 :                                 goto yy4;
    6876             :                         }
    6877             :                 }
    6878             :         }
    6879             : yy375:
    6880             :         YYDEBUG(375, *YYCURSOR);
    6881           7 :         yyaccept = 0;
    6882           7 :         yych = *(YYMARKER = ++YYCURSOR);
    6883           7 :         if (yych <= 'D') {
    6884           0 :                 if (yych <= ',') {
    6885           0 :                         if (yych == ')') goto yy140;
    6886           0 :                         goto yy4;
    6887             :                 } else {
    6888           0 :                         if (yych == '.') goto yy4;
    6889           0 :                         if (yych <= '/') goto yy148;
    6890           0 :                         goto yy4;
    6891             :                 }
    6892             :         } else {
    6893           7 :                 if (yych <= '`') {
    6894           0 :                         if (yych <= 'E') goto yy205;
    6895           0 :                         if (yych == '_') goto yy148;
    6896           0 :                         goto yy4;
    6897             :                 } else {
    6898           7 :                         if (yych == 'e') goto yy376;
    6899           0 :                         if (yych <= 'z') goto yy154;
    6900           0 :                         goto yy4;
    6901             :                 }
    6902             :         }
    6903             : yy376:
    6904             :         YYDEBUG(376, *YYCURSOR);
    6905           7 :         yych = *++YYCURSOR;
    6906           7 :         if (yych == 'R') goto yy206;
    6907           7 :         if (yych != 'r') goto yy155;
    6908             : yy377:
    6909             :         YYDEBUG(377, *YYCURSOR);
    6910          14 :         yyaccept = 5;
    6911          14 :         yych = *(YYMARKER = ++YYCURSOR);
    6912          14 :         if (yybm[0+yych] & 16) {
    6913           0 :                 goto yy154;
    6914             :         }
    6915          14 :         if (yych <= '-') {
    6916          14 :                 if (yych <= 0x1F) {
    6917           1 :                         if (yych == '\t') goto yy196;
    6918           1 :                         goto yy194;
    6919             :                 } else {
    6920          13 :                         if (yych <= ' ') goto yy196;
    6921           0 :                         if (yych <= ',') goto yy194;
    6922             :                 }
    6923             :         } else {
    6924           0 :                 if (yych <= '9') {
    6925           0 :                         if (yych == '/') goto yy148;
    6926           0 :                         goto yy196;
    6927             :                 } else {
    6928           0 :                         if (yych == '_') goto yy148;
    6929           0 :                         goto yy194;
    6930             :                 }
    6931             :         }
    6932             : yy378:
    6933             :         YYDEBUG(378, *YYCURSOR);
    6934           0 :         yych = *++YYCURSOR;
    6935           0 :         if (yybm[0+yych] & 8) {
    6936           0 :                 goto yy149;
    6937             :         }
    6938           0 :         goto yy196;
    6939             : yy379:
    6940             :         YYDEBUG(379, *YYCURSOR);
    6941           3 :         yych = *++YYCURSOR;
    6942           3 :         if (yych <= 'T') {
    6943           0 :                 if (yych <= ')') {
    6944           0 :                         if (yych <= '(') goto yy4;
    6945           0 :                         goto yy140;
    6946             :                 } else {
    6947           0 :                         if (yych <= '@') goto yy4;
    6948           0 :                         if (yych <= 'S') goto yy142;
    6949             :                 }
    6950             :         } else {
    6951           3 :                 if (yych <= 's') {
    6952           1 :                         if (yych <= 'Z') goto yy142;
    6953           1 :                         if (yych <= '`') goto yy4;
    6954           1 :                         goto yy142;
    6955             :                 } else {
    6956           2 :                         if (yych <= 't') goto yy380;
    6957           0 :                         if (yych <= 'z') goto yy142;
    6958           0 :                         goto yy4;
    6959             :                 }
    6960             :         }
    6961             : yy380:
    6962             :         YYDEBUG(380, *YYCURSOR);
    6963           2 :         yyaccept = 5;
    6964           2 :         yych = *(YYMARKER = ++YYCURSOR);
    6965           2 :         if (yych <= '/') {
    6966           0 :                 if (yych <= '(') {
    6967           0 :                         if (yych <= '\t') {
    6968           0 :                                 if (yych <= 0x08) goto yy194;
    6969           0 :                                 goto yy196;
    6970             :                         } else {
    6971           0 :                                 if (yych == ' ') goto yy196;
    6972           0 :                                 goto yy194;
    6973             :                         }
    6974             :                 } else {
    6975           0 :                         if (yych <= ',') {
    6976           0 :                                 if (yych <= ')') goto yy140;
    6977           0 :                                 goto yy194;
    6978             :                         } else {
    6979           0 :                                 if (yych <= '-') goto yy197;
    6980           0 :                                 if (yych <= '.') goto yy196;
    6981           0 :                                 goto yy194;
    6982             :                         }
    6983             :                 }
    6984             :         } else {
    6985           2 :                 if (yych <= 'Z') {
    6986           0 :                         if (yych <= '@') {
    6987           0 :                                 if (yych <= '9') goto yy196;
    6988           0 :                                 goto yy194;
    6989             :                         } else {
    6990           0 :                                 if (yych != 'O') goto yy143;
    6991             :                         }
    6992             :                 } else {
    6993           2 :                         if (yych <= 'n') {
    6994           0 :                                 if (yych <= '`') goto yy194;
    6995           0 :                                 goto yy143;
    6996             :                         } else {
    6997           2 :                                 if (yych <= 'o') goto yy381;
    6998           0 :                                 if (yych <= 'z') goto yy143;
    6999           0 :                                 goto yy194;
    7000             :                         }
    7001             :                 }
    7002             :         }
    7003             : yy381:
    7004             :         YYDEBUG(381, *YYCURSOR);
    7005           2 :         yych = *++YYCURSOR;
    7006           2 :         if (yych <= 'B') {
    7007           0 :                 if (yych <= ')') {
    7008           0 :                         if (yych <= '(') goto yy4;
    7009           0 :                         goto yy140;
    7010             :                 } else {
    7011           0 :                         if (yych <= '@') goto yy4;
    7012           0 :                         if (yych <= 'A') goto yy144;
    7013             :                 }
    7014             :         } else {
    7015           2 :                 if (yych <= 'a') {
    7016           0 :                         if (yych <= 'Z') goto yy144;
    7017           0 :                         if (yych <= '`') goto yy4;
    7018           0 :                         goto yy144;
    7019             :                 } else {
    7020           2 :                         if (yych <= 'b') goto yy382;
    7021           0 :                         if (yych <= 'z') goto yy144;
    7022           0 :                         goto yy4;
    7023             :                 }
    7024             :         }
    7025             : yy382:
    7026             :         YYDEBUG(382, *YYCURSOR);
    7027           2 :         yych = *++YYCURSOR;
    7028           2 :         if (yych <= 'E') {
    7029           0 :                 if (yych <= ')') {
    7030           0 :                         if (yych <= '(') goto yy4;
    7031           0 :                         goto yy140;
    7032             :                 } else {
    7033           0 :                         if (yych <= '@') goto yy4;
    7034           0 :                         if (yych <= 'D') goto yy145;
    7035             :                 }
    7036             :         } else {
    7037           2 :                 if (yych <= 'd') {
    7038           0 :                         if (yych <= 'Z') goto yy145;
    7039           0 :                         if (yych <= '`') goto yy4;
    7040           0 :                         goto yy145;
    7041             :                 } else {
    7042           2 :                         if (yych <= 'e') goto yy383;
    7043           0 :                         if (yych <= 'z') goto yy145;
    7044           0 :                         goto yy4;
    7045             :                 }
    7046             :         }
    7047             : yy383:
    7048             :         YYDEBUG(383, *YYCURSOR);
    7049           2 :         yych = *++YYCURSOR;
    7050           2 :         if (yych <= 'Q') {
    7051           0 :                 if (yych == ')') goto yy140;
    7052           0 :                 goto yy4;
    7053             :         } else {
    7054           2 :                 if (yych <= 'R') goto yy206;
    7055           2 :                 if (yych == 'r') goto yy206;
    7056           0 :                 goto yy4;
    7057             :         }
    7058             : yy384:
    7059             :         YYDEBUG(384, *YYCURSOR);
    7060           6 :         yyaccept = 0;
    7061           6 :         yych = *(YYMARKER = ++YYCURSOR);
    7062           6 :         if (yych <= 'S') {
    7063           0 :                 if (yych <= '-') {
    7064           0 :                         if (yych == ')') goto yy140;
    7065           0 :                         if (yych <= ',') goto yy4;
    7066           0 :                         goto yy148;
    7067             :                 } else {
    7068           0 :                         if (yych == '/') goto yy148;
    7069           0 :                         if (yych <= '@') goto yy4;
    7070           0 :                         goto yy142;
    7071             :                 }
    7072             :         } else {
    7073           6 :                 if (yych <= '_') {
    7074           0 :                         if (yych <= 'T') goto yy380;
    7075           0 :                         if (yych <= 'Z') goto yy142;
    7076           0 :                         if (yych <= '^') goto yy4;
    7077           0 :                         goto yy148;
    7078             :                 } else {
    7079           6 :                         if (yych <= 's') {
    7080           0 :                                 if (yych <= '`') goto yy4;
    7081           0 :                                 goto yy147;
    7082             :                         } else {
    7083           6 :                                 if (yych <= 't') goto yy385;
    7084           0 :                                 if (yych <= 'z') goto yy147;
    7085           0 :                                 goto yy4;
    7086             :                         }
    7087             :                 }
    7088             :         }
    7089             : yy385:
    7090             :         YYDEBUG(385, *YYCURSOR);
    7091           6 :         yyaccept = 5;
    7092           6 :         yych = *(YYMARKER = ++YYCURSOR);
    7093           6 :         if (yych <= '9') {
    7094           6 :                 if (yych <= '(') {
    7095           5 :                         if (yych <= '\t') {
    7096           0 :                                 if (yych <= 0x08) goto yy194;
    7097           0 :                                 goto yy196;
    7098             :                         } else {
    7099           5 :                                 if (yych == ' ') goto yy196;
    7100           0 :                                 goto yy194;
    7101             :                         }
    7102             :                 } else {
    7103           1 :                         if (yych <= '-') {
    7104           0 :                                 if (yych <= ')') goto yy140;
    7105           0 :                                 if (yych <= ',') goto yy194;
    7106           0 :                                 goto yy372;
    7107             :                         } else {
    7108           1 :                                 if (yych == '/') goto yy148;
    7109           1 :                                 goto yy196;
    7110             :                         }
    7111             :                 }
    7112             :         } else {
    7113           0 :                 if (yych <= '^') {
    7114           0 :                         if (yych <= 'N') {
    7115           0 :                                 if (yych <= '@') goto yy194;
    7116           0 :                                 goto yy143;
    7117             :                         } else {
    7118           0 :                                 if (yych <= 'O') goto yy381;
    7119           0 :                                 if (yych <= 'Z') goto yy143;
    7120           0 :                                 goto yy194;
    7121             :                         }
    7122             :                 } else {
    7123           0 :                         if (yych <= 'n') {
    7124           0 :                                 if (yych <= '_') goto yy148;
    7125           0 :                                 if (yych <= '`') goto yy194;
    7126           0 :                                 goto yy151;
    7127             :                         } else {
    7128           0 :                                 if (yych <= 'o') goto yy386;
    7129           0 :                                 if (yych <= 'z') goto yy151;
    7130           0 :                                 goto yy194;
    7131             :                         }
    7132             :                 }
    7133             :         }
    7134             : yy386:
    7135             :         YYDEBUG(386, *YYCURSOR);
    7136           0 :         yyaccept = 0;
    7137           0 :         yych = *(YYMARKER = ++YYCURSOR);
    7138           0 :         if (yych <= 'A') {
    7139           0 :                 if (yych <= '-') {
    7140           0 :                         if (yych == ')') goto yy140;
    7141           0 :                         if (yych <= ',') goto yy4;
    7142           0 :                         goto yy148;
    7143             :                 } else {
    7144           0 :                         if (yych == '/') goto yy148;
    7145           0 :                         if (yych <= '@') goto yy4;
    7146           0 :                         goto yy144;
    7147             :                 }
    7148             :         } else {
    7149           0 :                 if (yych <= '_') {
    7150           0 :                         if (yych <= 'B') goto yy382;
    7151           0 :                         if (yych <= 'Z') goto yy144;
    7152           0 :                         if (yych <= '^') goto yy4;
    7153           0 :                         goto yy148;
    7154             :                 } else {
    7155           0 :                         if (yych <= 'a') {
    7156           0 :                                 if (yych <= '`') goto yy4;
    7157           0 :                                 goto yy152;
    7158             :                         } else {
    7159           0 :                                 if (yych <= 'b') goto yy387;
    7160           0 :                                 if (yych <= 'z') goto yy152;
    7161           0 :                                 goto yy4;
    7162             :                         }
    7163             :                 }
    7164             :         }
    7165             : yy387:
    7166             :         YYDEBUG(387, *YYCURSOR);
    7167           0 :         yyaccept = 0;
    7168           0 :         yych = *(YYMARKER = ++YYCURSOR);
    7169           0 :         if (yych <= 'D') {
    7170           0 :                 if (yych <= '-') {
    7171           0 :                         if (yych == ')') goto yy140;
    7172           0 :                         if (yych <= ',') goto yy4;
    7173           0 :                         goto yy148;
    7174             :                 } else {
    7175           0 :                         if (yych == '/') goto yy148;
    7176           0 :                         if (yych <= '@') goto yy4;
    7177           0 :                         goto yy145;
    7178             :                 }
    7179             :         } else {
    7180           0 :                 if (yych <= '_') {
    7181           0 :                         if (yych <= 'E') goto yy383;
    7182           0 :                         if (yych <= 'Z') goto yy145;
    7183           0 :                         if (yych <= '^') goto yy4;
    7184           0 :                         goto yy148;
    7185             :                 } else {
    7186           0 :                         if (yych <= 'd') {
    7187           0 :                                 if (yych <= '`') goto yy4;
    7188           0 :                                 goto yy153;
    7189             :                         } else {
    7190           0 :                                 if (yych <= 'e') goto yy388;
    7191           0 :                                 if (yych <= 'z') goto yy153;
    7192           0 :                                 goto yy4;
    7193             :                         }
    7194             :                 }
    7195             :         }
    7196             : yy388:
    7197             :         YYDEBUG(388, *YYCURSOR);
    7198           0 :         yyaccept = 0;
    7199           0 :         yych = *(YYMARKER = ++YYCURSOR);
    7200           0 :         if (yych <= 'Q') {
    7201           0 :                 if (yych <= ',') {
    7202           0 :                         if (yych == ')') goto yy140;
    7203           0 :                         goto yy4;
    7204             :                 } else {
    7205           0 :                         if (yych == '.') goto yy4;
    7206           0 :                         if (yych <= '/') goto yy148;
    7207           0 :                         goto yy4;
    7208             :                 }
    7209             :         } else {
    7210           0 :                 if (yych <= '`') {
    7211           0 :                         if (yych <= 'R') goto yy206;
    7212           0 :                         if (yych == '_') goto yy148;
    7213           0 :                         goto yy4;
    7214             :                 } else {
    7215           0 :                         if (yych == 'r') goto yy377;
    7216           0 :                         if (yych <= 'z') goto yy154;
    7217           0 :                         goto yy4;
    7218             :                 }
    7219             :         }
    7220             : yy389:
    7221             :         YYDEBUG(389, *YYCURSOR);
    7222           0 :         yych = *++YYCURSOR;
    7223           0 :         if (yych <= 'G') {
    7224           0 :                 if (yych <= ')') {
    7225           0 :                         if (yych <= '(') goto yy4;
    7226           0 :                         goto yy140;
    7227             :                 } else {
    7228           0 :                         if (yych <= '@') goto yy4;
    7229           0 :                         if (yych <= 'F') goto yy142;
    7230           0 :                         goto yy397;
    7231             :                 }
    7232             :         } else {
    7233           0 :                 if (yych <= 'f') {
    7234           0 :                         if (yych <= 'Z') goto yy142;
    7235           0 :                         if (yych <= '`') goto yy4;
    7236           0 :                         goto yy142;
    7237             :                 } else {
    7238           0 :                         if (yych <= 'g') goto yy397;
    7239           0 :                         if (yych <= 'z') goto yy142;
    7240           0 :                         goto yy4;
    7241             :                 }
    7242             :         }
    7243             : yy390:
    7244             :         YYDEBUG(390, *YYCURSOR);
    7245           0 :         yych = *++YYCURSOR;
    7246           0 :         if (yych <= 'R') {
    7247           0 :                 if (yych <= ')') {
    7248           0 :                         if (yych <= '(') goto yy4;
    7249           0 :                         goto yy140;
    7250             :                 } else {
    7251           0 :                         if (yych <= '@') goto yy4;
    7252           0 :                         if (yych <= 'Q') goto yy142;
    7253           0 :                         goto yy394;
    7254             :                 }
    7255             :         } else {
    7256           0 :                 if (yych <= 'q') {
    7257           0 :                         if (yych <= 'Z') goto yy142;
    7258           0 :                         if (yych <= '`') goto yy4;
    7259           0 :                         goto yy142;
    7260             :                 } else {
    7261           0 :                         if (yych <= 'r') goto yy394;
    7262           0 :                         if (yych <= 'z') goto yy142;
    7263           0 :                         goto yy4;
    7264             :                 }
    7265             :         }
    7266             : yy391:
    7267             :         YYDEBUG(391, *YYCURSOR);
    7268           6 :         yych = *++YYCURSOR;
    7269           6 :         if (yych <= 'O') {
    7270           0 :                 if (yych <= ')') {
    7271           0 :                         if (yych <= '(') goto yy4;
    7272           0 :                         goto yy140;
    7273             :                 } else {
    7274           0 :                         if (yych <= '@') goto yy4;
    7275           0 :                         if (yych <= 'N') goto yy142;
    7276             :                 }
    7277             :         } else {
    7278           6 :                 if (yych <= 'n') {
    7279           0 :                         if (yych <= 'Z') goto yy142;
    7280           0 :                         if (yych <= '`') goto yy4;
    7281           0 :                         goto yy142;
    7282             :                 } else {
    7283           6 :                         if (yych <= 'o') goto yy392;
    7284           0 :                         if (yych <= 'z') goto yy142;
    7285           0 :                         goto yy4;
    7286             :                 }
    7287             :         }
    7288             : yy392:
    7289             :         YYDEBUG(392, *YYCURSOR);
    7290           6 :         ++YYCURSOR;
    7291           6 :         if ((yych = *YYCURSOR) <= '@') {
    7292           6 :                 if (yych == ')') goto yy140;
    7293             :         } else {
    7294           0 :                 if (yych <= 'Z') goto yy143;
    7295           0 :                 if (yych <= '`') goto yy393;
    7296           0 :                 if (yych <= 'z') goto yy143;
    7297             :         }
    7298             : yy393:
    7299             :         YYDEBUG(393, *YYCURSOR);
    7300             : #line 1591 "ext/date/lib/parse_date.re"
    7301             :         {
    7302             :                 DEBUG_OUTPUT("ago");
    7303             :                 TIMELIB_INIT;
    7304             :                 s->time->relative.y = 0 - s->time->relative.y;
    7305             :                 s->time->relative.m = 0 - s->time->relative.m;
    7306             :                 s->time->relative.d = 0 - s->time->relative.d;
    7307             :                 s->time->relative.h = 0 - s->time->relative.h;
    7308             :                 s->time->relative.i = 0 - s->time->relative.i;
    7309             :                 s->time->relative.s = 0 - s->time->relative.s;
    7310             :                 s->time->relative.weekday = 0 - s->time->relative.weekday;
    7311             :                 if (s->time->relative.weekday == 0) {
    7312             :                         s->time->relative.weekday = -7;
    7313             :                 }
    7314             :                 if (s->time->relative.have_special_relative && s->time->relative.special.type == TIMELIB_SPECIAL_WEEKDAY) {
    7315             :                         s->time->relative.special.amount = 0 - s->time->relative.special.amount;
    7316             :                 }
    7317             :                 TIMELIB_DEINIT;
    7318             :                 return TIMELIB_AGO;
    7319             :         }
    7320             : #line 7321 "ext/date/lib/parse_date.c"
    7321             : yy394:
    7322             :         YYDEBUG(394, *YYCURSOR);
    7323           0 :         yyaccept = 5;
    7324           0 :         yych = *(YYMARKER = ++YYCURSOR);
    7325           0 :         if (yych <= '/') {
    7326           0 :                 if (yych <= '(') {
    7327           0 :                         if (yych <= '\t') {
    7328           0 :                                 if (yych <= 0x08) goto yy194;
    7329           0 :                                 goto yy196;
    7330             :                         } else {
    7331           0 :                                 if (yych == ' ') goto yy196;
    7332           0 :                                 goto yy194;
    7333             :                         }
    7334             :                 } else {
    7335           0 :                         if (yych <= ',') {
    7336           0 :                                 if (yych <= ')') goto yy140;
    7337           0 :                                 goto yy194;
    7338             :                         } else {
    7339           0 :                                 if (yych <= '-') goto yy197;
    7340           0 :                                 if (yych <= '.') goto yy196;
    7341           0 :                                 goto yy194;
    7342             :                         }
    7343             :                 }
    7344             :         } else {
    7345           0 :                 if (yych <= 'Z') {
    7346           0 :                         if (yych <= '@') {
    7347           0 :                                 if (yych <= '9') goto yy196;
    7348           0 :                                 goto yy194;
    7349             :                         } else {
    7350           0 :                                 if (yych != 'I') goto yy143;
    7351             :                         }
    7352             :                 } else {
    7353           0 :                         if (yych <= 'h') {
    7354           0 :                                 if (yych <= '`') goto yy194;
    7355           0 :                                 goto yy143;
    7356             :                         } else {
    7357           0 :                                 if (yych <= 'i') goto yy395;
    7358           0 :                                 if (yych <= 'z') goto yy143;
    7359           0 :                                 goto yy194;
    7360             :                         }
    7361             :                 }
    7362             :         }
    7363             : yy395:
    7364             :         YYDEBUG(395, *YYCURSOR);
    7365           0 :         yych = *++YYCURSOR;
    7366           0 :         if (yych <= 'L') {
    7367           0 :                 if (yych <= ')') {
    7368           0 :                         if (yych <= '(') goto yy4;
    7369           0 :                         goto yy140;
    7370             :                 } else {
    7371           0 :                         if (yych <= '@') goto yy4;
    7372           0 :                         if (yych <= 'K') goto yy144;
    7373             :                 }
    7374             :         } else {
    7375           0 :                 if (yych <= 'k') {
    7376           0 :                         if (yych <= 'Z') goto yy144;
    7377           0 :                         if (yych <= '`') goto yy4;
    7378           0 :                         goto yy144;
    7379             :                 } else {
    7380           0 :                         if (yych <= 'l') goto yy396;
    7381           0 :                         if (yych <= 'z') goto yy144;
    7382           0 :                         goto yy4;
    7383             :                 }
    7384             :         }
    7385             : yy396:
    7386             :         YYDEBUG(396, *YYCURSOR);
    7387           3 :         yyaccept = 5;
    7388           3 :         yych = *(YYMARKER = ++YYCURSOR);
    7389           3 :         if (yych <= ',') {
    7390           3 :                 if (yych <= 0x1F) {
    7391           0 :                         if (yych == '\t') goto yy196;
    7392           0 :                         goto yy194;
    7393             :                 } else {
    7394           3 :                         if (yych <= ' ') goto yy196;
    7395           0 :                         if (yych == ')') goto yy140;
    7396           0 :                         goto yy194;
    7397             :                 }
    7398             :         } else {
    7399           0 :                 if (yych <= '@') {
    7400           0 :                         if (yych == '/') goto yy194;
    7401           0 :                         if (yych <= '9') goto yy196;
    7402           0 :                         goto yy194;
    7403             :                 } else {
    7404           0 :                         if (yych <= 'Z') goto yy145;
    7405           0 :                         if (yych <= '`') goto yy194;
    7406           0 :                         if (yych <= 'z') goto yy145;
    7407           0 :                         goto yy194;
    7408             :                 }
    7409             :         }
    7410             : yy397:
    7411             :         YYDEBUG(397, *YYCURSOR);
    7412           0 :         yyaccept = 5;
    7413           0 :         yych = *(YYMARKER = ++YYCURSOR);
    7414           0 :         if (yych <= '/') {
    7415           0 :                 if (yych <= '(') {
    7416           0 :                         if (yych <= '\t') {
    7417           0 :                                 if (yych <= 0x08) goto yy194;
    7418           0 :                                 goto yy196;
    7419             :                         } else {
    7420           0 :                                 if (yych == ' ') goto yy196;
    7421           0 :                                 goto yy194;
    7422             :                         }
    7423             :                 } else {
    7424           0 :                         if (yych <= ',') {
    7425           0 :                                 if (yych <= ')') goto yy140;
    7426           0 :                                 goto yy194;
    7427             :                         } else {
    7428           0 :                                 if (yych <= '-') goto yy197;
    7429           0 :                                 if (yych <= '.') goto yy196;
    7430           0 :                                 goto yy194;
    7431             :                         }
    7432             :                 }
    7433             :         } else {
    7434           0 :                 if (yych <= 'Z') {
    7435           0 :                         if (yych <= '@') {
    7436           0 :                                 if (yych <= '9') goto yy196;
    7437           0 :                                 goto yy194;
    7438             :                         } else {
    7439           0 :                                 if (yych != 'U') goto yy143;
    7440             :                         }
    7441             :                 } else {
    7442           0 :                         if (yych <= 't') {
    7443           0 :                                 if (yych <= '`') goto yy194;
    7444           0 :                                 goto yy143;
    7445             :                         } else {
    7446           0 :                                 if (yych <= 'u') goto yy398;
    7447           0 :                                 if (yych <= 'z') goto yy143;
    7448           0 :                                 goto yy194;
    7449             :                         }
    7450             :                 }
    7451             :         }
    7452             : yy398:
    7453             :         YYDEBUG(398, *YYCURSOR);
    7454           0 :         yych = *++YYCURSOR;
    7455           0 :         if (yych <= 'S') {
    7456           0 :                 if (yych <= ')') {
    7457           0 :                         if (yych <= '(') goto yy4;
    7458           0 :                         goto yy140;
    7459             :                 } else {
    7460           0 :                         if (yych <= '@') goto yy4;
    7461           0 :                         if (yych <= 'R') goto yy144;
    7462             :                 }
    7463             :         } else {
    7464           0 :                 if (yych <= 'r') {
    7465           0 :                         if (yych <= 'Z') goto yy144;
    7466           0 :                         if (yych <= '`') goto yy4;
    7467           0 :                         goto yy144;
    7468             :                 } else {
    7469           0 :                         if (yych <= 's') goto yy399;
    7470           0 :                         if (yych <= 'z') goto yy144;
    7471           0 :                         goto yy4;
    7472             :                 }
    7473             :         }
    7474             : yy399:
    7475             :         YYDEBUG(399, *YYCURSOR);
    7476           0 :         yych = *++YYCURSOR;
    7477           0 :         if (yych <= 'T') {
    7478           0 :                 if (yych <= ')') {
    7479           0 :                         if (yych <= '(') goto yy4;
    7480           0 :                         goto yy140;
    7481             :                 } else {
    7482           0 :                         if (yych <= '@') goto yy4;
    7483           0 :                         if (yych <= 'S') goto yy145;
    7484             :                 }
    7485             :         } else {
    7486           0 :                 if (yych <= 's') {
    7487           0 :                         if (yych <= 'Z') goto yy145;
    7488           0 :                         if (yych <= '`') goto yy4;
    7489           0 :                         goto yy145;
    7490             :                 } else {
    7491           0 :                         if (yych <= 't') goto yy400;
    7492           0 :                         if (yych <= 'z') goto yy145;
    7493           0 :                         goto yy4;
    7494             :                 }
    7495             :         }
    7496             : yy400:
    7497             :         YYDEBUG(400, *YYCURSOR);
    7498           0 :         yyaccept = 5;
    7499           0 :         yych = *(YYMARKER = ++YYCURSOR);
    7500           0 :         if (yych <= '(') {
    7501           0 :                 if (yych <= '\t') {
    7502           0 :                         if (yych <= 0x08) goto yy194;
    7503           0 :                         goto yy196;
    7504             :                 } else {
    7505           0 :                         if (yych == ' ') goto yy196;
    7506           0 :                         goto yy194;
    7507             :                 }
    7508             :         } else {
    7509           0 :                 if (yych <= '.') {
    7510           0 :                         if (yych <= ')') goto yy140;
    7511           0 :                         if (yych <= ',') goto yy194;
    7512           0 :                         goto yy196;
    7513             :                 } else {
    7514           0 :                         if (yych <= '/') goto yy194;
    7515           0 :                         if (yych <= '9') goto yy196;
    7516           0 :                         goto yy194;
    7517             :                 }
    7518             :         }
    7519             : yy401:
    7520             :         YYDEBUG(401, *YYCURSOR);
    7521          37 :         yyaccept = 0;
    7522          37 :         yych = *(YYMARKER = ++YYCURSOR);
    7523          37 :         if (yych <= 'F') {
    7524           0 :                 if (yych <= '-') {
    7525           0 :                         if (yych == ')') goto yy140;
    7526           0 :                         if (yych <= ',') goto yy4;
    7527           0 :                         goto yy148;
    7528             :                 } else {
    7529           0 :                         if (yych == '/') goto yy148;
    7530           0 :                         if (yych <= '@') goto yy4;
    7531           0 :                         goto yy142;
    7532             :                 }
    7533             :         } else {
    7534          37 :                 if (yych <= '_') {
    7535           0 :                         if (yych <= 'G') goto yy397;
    7536           0 :                         if (yych <= 'Z') goto yy142;
    7537           0 :                         if (yych <= '^') goto yy4;
    7538           0 :                         goto yy148;
    7539             :                 } else {
    7540          37 :                         if (yych <= 'f') {
    7541           0 :                                 if (yych <= '`') goto yy4;
    7542           0 :                                 goto yy147;
    7543             :                         } else {
    7544          37 :                                 if (yych <= 'g') goto yy408;
    7545          35 :                                 if (yych <= 'z') goto yy147;
    7546           0 :                                 goto yy4;
    7547             :                         }
    7548             :                 }
    7549             :         }
    7550             : yy402:
    7551             :         YYDEBUG(402, *YYCURSOR);
    7552           0 :         yyaccept = 0;
    7553           0 :         yych = *(YYMARKER = ++YYCURSOR);
    7554           0 :         if (yych <= 'Q') {
    7555           0 :                 if (yych <= '-') {
    7556           0 :                         if (yych == ')') goto yy140;
    7557           0 :                         if (yych <= ',') goto yy4;
    7558           0 :                         goto yy148;
    7559             :                 } else {
    7560           0 :                         if (yych == '/') goto yy148;
    7561           0 :                         if (yych <= '@') goto yy4;
    7562           0 :                         goto yy142;
    7563             :                 }
    7564             :         } else {
    7565           0 :                 if (yych <= '_') {
    7566           0 :                         if (yych <= 'R') goto yy394;
    7567           0 :                         if (yych <= 'Z') goto yy142;
    7568           0 :                         if (yych <= '^') goto yy4;
    7569           0 :                         goto yy148;
    7570             :                 } else {
    7571           0 :                         if (yych <= 'q') {
    7572           0 :                                 if (yych <= '`') goto yy4;
    7573           0 :                                 goto yy147;
    7574             :                         } else {
    7575           0 :                                 if (yych <= 'r') goto yy405;
    7576           0 :                                 if (yych <= 'z') goto yy147;
    7577           0 :                                 goto yy4;
    7578             :                         }
    7579             :                 }
    7580             :         }
    7581             : yy403:
    7582             :         YYDEBUG(403, *YYCURSOR);
    7583           0 :         yyaccept = 0;
    7584           0 :         yych = *(YYMARKER = ++YYCURSOR);
    7585           0 :         if (yych <= 'N') {
    7586           0 :                 if (yych <= '-') {
    7587           0 :                         if (yych == ')') goto yy140;
    7588           0 :                         if (yych <= ',') goto yy4;
    7589           0 :                         goto yy148;
    7590             :                 } else {
    7591           0 :                         if (yych == '/') goto yy148;
    7592           0 :                         if (yych <= '@') goto yy4;
    7593           0 :                         goto yy142;
    7594             :                 }
    7595             :         } else {
    7596           0 :                 if (yych <= '_') {
    7597           0 :                         if (yych <= 'O') goto yy392;
    7598           0 :                         if (yych <= 'Z') goto yy142;
    7599           0 :                         if (yych <= '^') goto yy4;
    7600           0 :                         goto yy148;
    7601             :                 } else {
    7602           0 :                         if (yych <= 'n') {
    7603           0 :                                 if (yych <= '`') goto yy4;
    7604           0 :                                 goto yy147;
    7605             :                         } else {
    7606           0 :                                 if (yych <= 'o') goto yy404;
    7607           0 :                                 if (yych <= 'z') goto yy147;
    7608           0 :                                 goto yy4;
    7609             :                         }
    7610             :                 }
    7611             :         }
    7612             : yy404:
    7613             :         YYDEBUG(404, *YYCURSOR);
    7614           0 :         yyaccept = 9;
    7615           0 :         yych = *(YYMARKER = ++YYCURSOR);
    7616           0 :         if (yych <= '/') {
    7617           0 :                 if (yych <= ',') {
    7618           0 :                         if (yych == ')') goto yy140;
    7619           0 :                         goto yy393;
    7620             :                 } else {
    7621           0 :                         if (yych == '.') goto yy393;
    7622           0 :                         goto yy148;
    7623             :                 }
    7624             :         } else {
    7625           0 :                 if (yych <= '^') {
    7626           0 :                         if (yych <= '@') goto yy393;
    7627           0 :                         if (yych <= 'Z') goto yy143;
    7628           0 :                         goto yy393;
    7629             :                 } else {
    7630           0 :                         if (yych <= '_') goto yy148;
    7631           0 :                         if (yych <= '`') goto yy393;
    7632           0 :                         if (yych <= 'z') goto yy151;
    7633           0 :                         goto yy393;
    7634             :                 }
    7635             :         }
    7636             : yy405:
    7637             :         YYDEBUG(405, *YYCURSOR);
    7638           0 :         yyaccept = 5;
    7639           0 :         yych = *(YYMARKER = ++YYCURSOR);
    7640           0 :         if (yych <= '9') {
    7641           0 :                 if (yych <= '(') {
    7642           0 :                         if (yych <= '\t') {
    7643           0 :                                 if (yych <= 0x08) goto yy194;
    7644           0 :                                 goto yy196;
    7645             :                         } else {
    7646           0 :                                 if (yych == ' ') goto yy196;
    7647           0 :                                 goto yy194;
    7648             :                         }
    7649             :                 } else {
    7650           0 :                         if (yych <= '-') {
    7651           0 :                                 if (yych <= ')') goto yy140;
    7652           0 :                                 if (yych <= ',') goto yy194;
    7653           0 :                                 goto yy372;
    7654             :                         } else {
    7655           0 :                                 if (yych == '/') goto yy148;
    7656           0 :                                 goto yy196;
    7657             :                         }
    7658             :                 }
    7659             :         } else {
    7660           0 :                 if (yych <= '^') {
    7661           0 :                         if (yych <= 'H') {
    7662           0 :                                 if (yych <= '@') goto yy194;
    7663           0 :                                 goto yy143;
    7664             :                         } else {
    7665           0 :                                 if (yych <= 'I') goto yy395;
    7666           0 :                                 if (yych <= 'Z') goto yy143;
    7667           0 :                                 goto yy194;
    7668             :                         }
    7669             :                 } else {
    7670           0 :                         if (yych <= 'h') {
    7671           0 :                                 if (yych <= '_') goto yy148;
    7672           0 :                                 if (yych <= '`') goto yy194;
    7673           0 :                                 goto yy151;
    7674             :                         } else {
    7675           0 :                                 if (yych <= 'i') goto yy406;
    7676           0 :                                 if (yych <= 'z') goto yy151;
    7677           0 :                                 goto yy194;
    7678             :                         }
    7679             :                 }
    7680             :         }
    7681             : yy406:
    7682             :         YYDEBUG(406, *YYCURSOR);
    7683           0 :         yyaccept = 0;
    7684           0 :         yych = *(YYMARKER = ++YYCURSOR);
    7685           0 :         if (yych <= 'K') {
    7686           0 :                 if (yych <= '-') {
    7687           0 :                         if (yych == ')') goto yy140;
    7688           0 :                         if (yych <= ',') goto yy4;
    7689           0 :                         goto yy148;
    7690             :                 } else {
    7691           0 :                         if (yych == '/') goto yy148;
    7692           0 :                         if (yych <= '@') goto yy4;
    7693           0 :                         goto yy144;
    7694             :                 }
    7695             :         } else {
    7696           0 :                 if (yych <= '_') {
    7697           0 :                         if (yych <= 'L') goto yy396;
    7698           0 :                         if (yych <= 'Z') goto yy144;
    7699           0 :                         if (yych <= '^') goto yy4;
    7700           0 :                         goto yy148;
    7701             :                 } else {
    7702           0 :                         if (yych <= 'k') {
    7703           0 :                                 if (yych <= '`') goto yy4;
    7704           0 :                                 goto yy152;
    7705             :                         } else {
    7706           0 :                                 if (yych <= 'l') goto yy407;
    7707           0 :                                 if (yych <= 'z') goto yy152;
    7708           0 :                                 goto yy4;
    7709             :                         }
    7710             :                 }
    7711             :         }
    7712             : yy407:
    7713             :         YYDEBUG(407, *YYCURSOR);
    7714           1 :         yyaccept = 5;
    7715           1 :         yych = *(YYMARKER = ++YYCURSOR);
    7716           1 :         if (yych <= '.') {
    7717           1 :                 if (yych <= ' ') {
    7718           1 :                         if (yych == '\t') goto yy196;
    7719           1 :                         if (yych <= 0x1F) goto yy194;
    7720           1 :                         goto yy196;
    7721             :                 } else {
    7722           0 :                         if (yych <= ')') {
    7723           0 :                                 if (yych <= '(') goto yy194;
    7724           0 :                                 goto yy140;
    7725             :                         } else {
    7726           0 :                                 if (yych <= ',') goto yy194;
    7727           0 :                                 if (yych <= '-') goto yy378;
    7728           0 :                                 goto yy196;
    7729             :                         }
    7730             :                 }
    7731             :         } else {
    7732           0 :                 if (yych <= 'Z') {
    7733           0 :                         if (yych <= '/') goto yy148;
    7734           0 :                         if (yych <= '9') goto yy196;
    7735           0 :                         if (yych <= '@') goto yy194;
    7736           0 :                         goto yy145;
    7737             :                 } else {
    7738           0 :                         if (yych <= '_') {
    7739           0 :                                 if (yych <= '^') goto yy194;
    7740           0 :                                 goto yy148;
    7741             :                         } else {
    7742           0 :                                 if (yych <= '`') goto yy194;
    7743           0 :                                 if (yych <= 'z') goto yy153;
    7744           0 :                                 goto yy194;
    7745             :                         }
    7746             :                 }
    7747             :         }
    7748             : yy408:
    7749             :         YYDEBUG(408, *YYCURSOR);
    7750           2 :         yyaccept = 5;
    7751           2 :         yych = *(YYMARKER = ++YYCURSOR);
    7752           2 :         if (yych <= '9') {
    7753           2 :                 if (yych <= '(') {
    7754           2 :                         if (yych <= '\t') {
    7755           0 :                                 if (yych <= 0x08) goto yy194;
    7756           0 :                                 goto yy196;
    7757             :                         } else {
    7758           2 :                                 if (yych == ' ') goto yy196;
    7759           0 :                                 goto yy194;
    7760             :                         }
    7761             :                 } else {
    7762           0 :                         if (yych <= '-') {
    7763           0 :                                 if (yych <= ')') goto yy140;
    7764           0 :                                 if (yych <= ',') goto yy194;
    7765           0 :                                 goto yy372;
    7766             :                         } else {
    7767           0 :                                 if (yych == '/') goto yy148;
    7768           0 :                                 goto yy196;
    7769             :                         }
    7770             :                 }
    7771             :         } else {
    7772           0 :                 if (yych <= '^') {
    7773           0 :                         if (yych <= 'T') {
    7774           0 :                                 if (yych <= '@') goto yy194;
    7775           0 :                                 goto yy143;
    7776             :                         } else {
    7777           0 :                                 if (yych <= 'U') goto yy398;
    7778           0 :                                 if (yych <= 'Z') goto yy143;
    7779           0 :                                 goto yy194;
    7780             :                         }
    7781             :                 } else {
    7782           0 :                         if (yych <= 't') {
    7783           0 :                                 if (yych <= '_') goto yy148;
    7784           0 :                                 if (yych <= '`') goto yy194;
    7785           0 :                                 goto yy151;
    7786             :                         } else {
    7787           0 :                                 if (yych <= 'u') goto yy409;
    7788           0 :                                 if (yych <= 'z') goto yy151;
    7789           0 :                                 goto yy194;
    7790             :                         }
    7791             :                 }
    7792             :         }
    7793             : yy409:
    7794             :         YYDEBUG(409, *YYCURSOR);
    7795           0 :         yyaccept = 0;
    7796           0 :         yych = *(YYMARKER = ++YYCURSOR);
    7797           0 :         if (yych <= 'R') {
    7798           0 :                 if (yych <= '-') {
    7799           0 :                         if (yych == ')') goto yy140;
    7800           0 :                         if (yych <= ',') goto yy4;
    7801           0 :                         goto yy148;
    7802             :                 } else {
    7803           0 :                         if (yych == '/') goto yy148;
    7804           0 :                         if (yych <= '@') goto yy4;
    7805           0 :                         goto yy144;
    7806             :                 }
    7807             :         } else {
    7808           0 :                 if (yych <= '_') {
    7809           0 :                         if (yych <= 'S') goto yy399;
    7810           0 :                         if (yych <= 'Z') goto yy144;
    7811           0 :                         if (yych <= '^') goto yy4;
    7812           0 :                         goto yy148;
    7813             :                 } else {
    7814           0 :                         if (yych <= 'r') {
    7815           0 :                                 if (yych <= '`') goto yy4;
    7816           0 :                                 goto yy152;
    7817             :                         } else {
    7818           0 :                                 if (yych <= 's') goto yy410;
    7819           0 :                                 if (yych <= 'z') goto yy152;
    7820           0 :                                 goto yy4;
    7821             :                         }
    7822             :                 }
    7823             :         }
    7824             : yy410:
    7825             :         YYDEBUG(410, *YYCURSOR);
    7826           0 :         yyaccept = 0;
    7827           0 :         yych = *(YYMARKER = ++YYCURSOR);
    7828           0 :         if (yych <= 'S') {
    7829           0 :                 if (yych <= '-') {
    7830           0 :                         if (yych == ')') goto yy140;
    7831           0 :                         if (yych <= ',') goto yy4;
    7832           0 :                         goto yy148;
    7833             :                 } else {
    7834           0 :                         if (yych == '/') goto yy148;
    7835           0 :                         if (yych <= '@') goto yy4;
    7836           0 :                         goto yy145;
    7837             :                 }
    7838             :         } else {
    7839           0 :                 if (yych <= '_') {
    7840           0 :                         if (yych <= 'T') goto yy400;
    7841           0 :                         if (yych <= 'Z') goto yy145;
    7842           0 :                         if (yych <= '^') goto yy4;
    7843           0 :                         goto yy148;
    7844             :                 } else {
    7845           0 :                         if (yych <= 's') {
    7846           0 :                                 if (yych <= '`') goto yy4;
    7847           0 :                                 goto yy153;
    7848             :                         } else {
    7849           0 :                                 if (yych <= 't') goto yy411;
    7850           0 :                                 if (yych <= 'z') goto yy153;
    7851           0 :                                 goto yy4;
    7852             :                         }
    7853             :                 }
    7854             :         }
    7855             : yy411:
    7856             :         YYDEBUG(411, *YYCURSOR);
    7857           0 :         yyaccept = 5;
    7858           0 :         yych = *(YYMARKER = ++YYCURSOR);
    7859           0 :         if (yybm[0+yych] & 16) {
    7860           0 :                 goto yy154;
    7861             :         }
    7862           0 :         if (yych <= ',') {
    7863           0 :                 if (yych <= 0x1F) {
    7864           0 :                         if (yych == '\t') goto yy196;
    7865           0 :                         goto yy194;
    7866             :                 } else {
    7867           0 :                         if (yych <= ' ') goto yy196;
    7868           0 :                         if (yych == ')') goto yy140;
    7869           0 :                         goto yy194;
    7870             :                 }
    7871             :         } else {
    7872           0 :                 if (yych <= '/') {
    7873           0 :                         if (yych <= '-') goto yy378;
    7874           0 :                         if (yych <= '.') goto yy196;
    7875           0 :                         goto yy148;
    7876             :                 } else {
    7877           0 :                         if (yych <= '9') goto yy196;
    7878           0 :                         if (yych == '_') goto yy148;
    7879           0 :                         goto yy194;
    7880             :                 }
    7881             :         }
    7882             : yy412:
    7883             :         YYDEBUG(412, *YYCURSOR);
    7884           1 :         yych = *++YYCURSOR;
    7885           1 :         if (yych <= 'N') {
    7886           0 :                 if (yych <= '@') {
    7887           0 :                         if (yych == ')') goto yy140;
    7888           0 :                         goto yy4;
    7889             :                 } else {
    7890           0 :                         if (yych == 'L') goto yy419;
    7891           0 :                         if (yych <= 'M') goto yy142;
    7892           0 :                         goto yy418;
    7893             :                 }
    7894             :         } else {
    7895           1 :                 if (yych <= 'l') {
    7896           0 :                         if (yych <= 'Z') goto yy142;
    7897           0 :                         if (yych <= '`') goto yy4;
    7898           0 :                         if (yych <= 'k') goto yy142;
    7899           0 :                         goto yy419;
    7900             :                 } else {
    7901           1 :                         if (yych == 'n') goto yy418;
    7902           1 :                         if (yych <= 'z') goto yy142;
    7903           0 :                         goto yy4;
    7904             :                 }
    7905             :         }
    7906             : yy413:
    7907             :         YYDEBUG(413, *YYCURSOR);
    7908           1 :         yych = *++YYCURSOR;
    7909           1 :         if (yych <= 'N') {
    7910           1 :                 if (yych <= ')') {
    7911           0 :                         if (yych <= '(') goto yy4;
    7912           0 :                         goto yy140;
    7913             :                 } else {
    7914           1 :                         if (yych <= '@') goto yy4;
    7915           1 :                         if (yych <= 'M') goto yy142;
    7916             :                 }
    7917             :         } else {
    7918           0 :                 if (yych <= 'm') {
    7919           0 :                         if (yych <= 'Z') goto yy142;
    7920           0 :                         if (yych <= '`') goto yy4;
    7921           0 :                         goto yy142;
    7922             :                 } else {
    7923           0 :                         if (yych <= 'n') goto yy414;
    7924           0 :                         if (yych <= 'z') goto yy142;
    7925           0 :                         goto yy4;
    7926             :                 }
    7927             :         }
    7928             : yy414:
    7929             :         YYDEBUG(414, *YYCURSOR);
    7930           1 :         yyaccept = 5;
    7931           1 :         yych = *(YYMARKER = ++YYCURSOR);
    7932           1 :         if (yych <= '/') {
    7933           1 :                 if (yych <= '(') {
    7934           1 :                         if (yych <= '\t') {
    7935           1 :                                 if (yych <= 0x08) goto yy194;
    7936           0 :                                 goto yy196;
    7937             :                         } else {
    7938           0 :                                 if (yych == ' ') goto yy196;
    7939           0 :                                 goto yy194;
    7940             :                         }
    7941             :                 } else {
    7942           0 :                         if (yych <= ',') {
    7943           0 :                                 if (yych <= ')') goto yy140;
    7944           0 :                                 goto yy194;
    7945             :                         } else {
    7946           0 :                                 if (yych <= '-') goto yy197;
    7947           0 :                                 if (yych <= '.') goto yy196;
    7948           0 :                                 goto yy194;
    7949             :                         }
    7950             :                 }
    7951             :         } else {
    7952           0 :                 if (yych <= 'Z') {
    7953           0 :                         if (yych <= '@') {
    7954           0 :                                 if (yych <= '9') goto yy196;
    7955           0 :                                 goto yy194;
    7956             :                         } else {
    7957           0 :                                 if (yych != 'U') goto yy143;
    7958             :                         }
    7959             :                 } else {
    7960           0 :                         if (yych <= 't') {
    7961           0 :                                 if (yych <= '`') goto yy194;
    7962           0 :                                 goto yy143;
    7963             :                         } else {
    7964           0 :                                 if (yych <= 'u') goto yy415;
    7965           0 :                                 if (yych <= 'z') goto yy143;
    7966           0 :                                 goto yy194;
    7967             :                         }
    7968             :                 }
    7969             :         }
    7970             : yy415:
    7971             :         YYDEBUG(415, *YYCURSOR);
    7972           0 :         yych = *++YYCURSOR;
    7973           0 :         if (yych <= 'A') {
    7974           0 :                 if (yych == ')') goto yy140;
    7975           0 :                 if (yych <= '@') goto yy4;
    7976             :         } else {
    7977           0 :                 if (yych <= '`') {
    7978           0 :                         if (yych <= 'Z') goto yy144;
    7979           0 :                         goto yy4;
    7980             :                 } else {
    7981           0 :                         if (yych <= 'a') goto yy416;
    7982           0 :                         if (yych <= 'z') goto yy144;
    7983           0 :                         goto yy4;
    7984             :                 }
    7985             :         }
    7986             : yy416:
    7987             :         YYDEBUG(416, *YYCURSOR);
    7988           0 :         yych = *++YYCURSOR;
    7989           0 :         if (yych <= 'R') {
    7990           0 :                 if (yych <= ')') {
    7991           0 :                         if (yych <= '(') goto yy4;
    7992           0 :                         goto yy140;
    7993             :                 } else {
    7994           0 :                         if (yych <= '@') goto yy4;
    7995           0 :                         if (yych <= 'Q') goto yy145;
    7996             :                 }
    7997             :         } else {
    7998           0 :                 if (yych <= 'q') {
    7999           0 :                         if (yych <= 'Z') goto yy145;
    8000           0 :                         if (yych <= '`') goto yy4;
    8001           0 :                         goto yy145;
    8002             :                 } else {
    8003           0 :                         if (yych <= 'r') goto yy417;
    8004           0 :                         if (yych <= 'z') goto yy145;
    8005           0 :                         goto yy4;
    8006             :                 }
    8007             :         }
    8008             : yy417:
    8009             :         YYDEBUG(417, *YYCURSOR);
    8010           0 :         yych = *++YYCURSOR;
    8011           0 :         if (yych <= 'X') {
    8012           0 :                 if (yych == ')') goto yy140;
    8013           0 :                 goto yy4;
    8014             :         } else {
    8015           0 :                 if (yych <= 'Y') goto yy206;
    8016           0 :                 if (yych == 'y') goto yy206;
    8017           0 :                 goto yy4;
    8018             :         }
    8019             : yy418:
    8020             :         YYDEBUG(418, *YYCURSOR);
    8021           0 :         yyaccept = 5;
    8022           0 :         yych = *(YYMARKER = ++YYCURSOR);
    8023           0 :         if (yych <= '/') {
    8024           0 :                 if (yych <= '(') {
    8025           0 :                         if (yych <= '\t') {
    8026           0 :                                 if (yych <= 0x08) goto yy194;
    8027           0 :                                 goto yy196;
    8028             :                         } else {
    8029           0 :                                 if (yych == ' ') goto yy196;
    8030           0 :                                 goto yy194;
    8031             :                         }
    8032             :                 } else {
    8033           0 :                         if (yych <= ',') {
    8034           0 :                                 if (yych <= ')') goto yy140;
    8035           0 :                                 goto yy194;
    8036             :                         } else {
    8037           0 :                                 if (yych <= '-') goto yy197;
    8038           0 :                                 if (yych <= '.') goto yy196;
    8039           0 :                                 goto yy194;
    8040             :                         }
    8041             :                 }
    8042             :         } else {
    8043           0 :                 if (yych <= 'Z') {
    8044           0 :                         if (yych <= '@') {
    8045           0 :                                 if (yych <= '9') goto yy196;
    8046           0 :                                 goto yy194;
    8047             :                         } else {
    8048           0 :                                 if (yych == 'E') goto yy420;
    8049           0 :                                 goto yy143;
    8050             :                         }
    8051             :                 } else {
    8052           0 :                         if (yych <= 'd') {
    8053           0 :                                 if (yych <= '`') goto yy194;
    8054           0 :                                 goto yy143;
    8055             :                         } else {
    8056           0 :                                 if (yych <= 'e') goto yy420;
    8057           0 :                                 if (yych <= 'z') goto yy143;
    8058           0 :                                 goto yy194;
    8059             :                         }
    8060             :                 }
    8061             :         }
    8062             : yy419:
    8063             :         YYDEBUG(419, *YYCURSOR);
    8064           0 :         yyaccept = 5;
    8065           0 :         yych = *(YYMARKER = ++YYCURSOR);
    8066           0 :         if (yych <= '/') {
    8067           0 :                 if (yych <= '(') {
    8068           0 :                         if (yych <= '\t') {
    8069           0 :                                 if (yych <= 0x08) goto yy194;
    8070           0 :                                 goto yy196;
    8071             :                         } else {
    8072           0 :                                 if (yych == ' ') goto yy196;
    8073           0 :                                 goto yy194;
    8074             :                         }
    8075             :                 } else {
    8076           0 :                         if (yych <= ',') {
    8077           0 :                                 if (yych <= ')') goto yy140;
    8078           0 :                                 goto yy194;
    8079             :                         } else {
    8080           0 :                                 if (yych <= '-') goto yy197;
    8081           0 :                                 if (yych <= '.') goto yy196;
    8082           0 :                                 goto yy194;
    8083             :                         }
    8084             :                 }
    8085             :         } else {
    8086           0 :                 if (yych <= 'Z') {
    8087           0 :                         if (yych <= '@') {
    8088           0 :                                 if (yych <= '9') goto yy196;
    8089           0 :                                 goto yy194;
    8090             :                         } else {
    8091           0 :                                 if (yych != 'Y') goto yy143;
    8092             :                         }
    8093             :                 } else {
    8094           0 :                         if (yych <= 'x') {
    8095           0 :                                 if (yych <= '`') goto yy194;
    8096           0 :                                 goto yy143;
    8097             :                         } else {
    8098           0 :                                 if (yych <= 'y') goto yy420;
    8099           0 :                                 if (yych <= 'z') goto yy143;
    8100           0 :                                 goto yy194;
    8101             :                         }
    8102             :                 }
    8103             :         }
    8104             : yy420:
    8105             :         YYDEBUG(420, *YYCURSOR);
    8106           0 :         yyaccept = 5;
    8107           0 :         yych = *(YYMARKER = ++YYCURSOR);
    8108           0 :         if (yych <= ',') {
    8109           0 :                 if (yych <= 0x1F) {
    8110           0 :                         if (yych == '\t') goto yy196;
    8111           0 :                         goto yy194;
    8112             :                 } else {
    8113           0 :                         if (yych <= ' ') goto yy196;
    8114           0 :                         if (yych == ')') goto yy140;
    8115           0 :                         goto yy194;
    8116             :                 }
    8117             :         } else {
    8118           0 :                 if (yych <= '@') {
    8119           0 :                         if (yych == '/') goto yy194;
    8120           0 :                         if (yych <= '9') goto yy196;
    8121           0 :                         goto yy194;
    8122             :                 } else {
    8123           0 :                         if (yych <= 'Z') goto yy144;
    8124           0 :                         if (yych <= '`') goto yy194;
    8125           0 :                         if (yych <= 'z') goto yy144;
    8126           0 :                         goto yy194;
    8127             :                 }
    8128             :         }
    8129             : yy421:
    8130             :         YYDEBUG(421, *YYCURSOR);
    8131           6 :         yyaccept = 0;
    8132           6 :         yych = *(YYMARKER = ++YYCURSOR);
    8133           6 :         if (yych <= 'M') {
    8134           0 :                 if (yych <= '.') {
    8135           0 :                         if (yych <= ')') {
    8136           0 :                                 if (yych <= '(') goto yy4;
    8137           0 :                                 goto yy140;
    8138             :                         } else {
    8139           0 :                                 if (yych == '-') goto yy148;
    8140           0 :                                 goto yy4;
    8141             :                         }
    8142             :                 } else {
    8143           0 :                         if (yych <= '@') {
    8144           0 :                                 if (yych <= '/') goto yy148;
    8145           0 :                                 goto yy4;
    8146             :                         } else {
    8147           0 :                                 if (yych == 'L') goto yy419;
    8148           0 :                                 goto yy142;
    8149             :                         }
    8150             :                 }
    8151             :         } else {
    8152           6 :                 if (yych <= '`') {
    8153           0 :                         if (yych <= 'Z') {
    8154           0 :                                 if (yych <= 'N') goto yy418;
    8155           0 :                                 goto yy142;
    8156             :                         } else {
    8157           0 :                                 if (yych == '_') goto yy148;
    8158           0 :                                 goto yy4;
    8159             :                         }
    8160             :                 } else {
    8161           6 :                         if (yych <= 'm') {
    8162           6 :                                 if (yych == 'l') goto yy428;
    8163           0 :                                 goto yy147;
    8164             :                         } else {
    8165           0 :                                 if (yych <= 'n') goto yy427;
    8166           0 :                                 if (yych <= 'z') goto yy147;
    8167           0 :                                 goto yy4;
    8168             :                         }
    8169             :                 }
    8170             :         }
    8171             : yy422:
    8172             :         YYDEBUG(422, *YYCURSOR);
    8173          13 :         yyaccept = 0;
    8174          13 :         yych = *(YYMARKER = ++YYCURSOR);
    8175          13 :         if (yych <= 'M') {
    8176           0 :                 if (yych <= '-') {
    8177           0 :                         if (yych == ')') goto yy140;
    8178           0 :                         if (yych <= ',') goto yy4;
    8179           0 :                         goto yy148;
    8180             :                 } else {
    8181           0 :                         if (yych == '/') goto yy148;
    8182           0 :                         if (yych <= '@') goto yy4;
    8183           0 :                         goto yy142;
    8184             :                 }
    8185             :         } else {
    8186          13 :                 if (yych <= '_') {
    8187           0 :                         if (yych <= 'N') goto yy414;
    8188           0 :                         if (yych <= 'Z') goto yy142;
    8189           0 :                         if (yych <= '^') goto yy4;
    8190           0 :                         goto yy148;
    8191             :                 } else {
    8192          13 :                         if (yych <= 'm') {
    8193           0 :                                 if (yych <= '`') goto yy4;
    8194           0 :                                 goto yy147;
    8195             :                         } else {
    8196          13 :                                 if (yych <= 'n') goto yy423;
    8197           0 :                                 if (yych <= 'z') goto yy147;
    8198           0 :                                 goto yy4;
    8199             :                         }
    8200             :                 }
    8201             :         }
    8202             : yy423:
    8203             :         YYDEBUG(423, *YYCURSOR);
    8204          13 :         yyaccept = 5;
    8205          13 :         yych = *(YYMARKER = ++YYCURSOR);
    8206          13 :         if (yych <= '9') {
    8207           6 :                 if (yych <= '(') {
    8208           5 :                         if (yych <= '\t') {
    8209           0 :                                 if (yych <= 0x08) goto yy194;
    8210           0 :                                 goto yy196;
    8211             :                         } else {
    8212           5 :                                 if (yych == ' ') goto yy196;
    8213           0 :                                 goto yy194;
    8214             :                         }
    8215             :                 } else {
    8216           1 :                         if (yych <= '-') {
    8217           1 :                                 if (yych <= ')') goto yy140;
    8218           1 :                                 if (yych <= ',') goto yy194;
    8219           1 :                                 goto yy372;
    8220             :                         } else {
    8221           0 :                                 if (yych == '/') goto yy148;
    8222           0 :                                 goto yy196;
    8223             :                         }
    8224             :                 }
    8225             :         } else {
    8226           7 :                 if (yych <= '^') {
    8227           0 :                         if (yych <= 'T') {
    8228           0 :                                 if (yych <= '@') goto yy194;
    8229           0 :                                 goto yy143;
    8230             :                         } else {
    8231           0 :                                 if (yych <= 'U') goto yy415;
    8232           0 :                                 if (yych <= 'Z') goto yy143;
    8233           0 :                                 goto yy194;
    8234             :                         }
    8235             :                 } else {
    8236           7 :                         if (yych <= 't') {
    8237           0 :                                 if (yych <= '_') goto yy148;
    8238           0 :                                 if (yych <= '`') goto yy194;
    8239           0 :                                 goto yy151;
    8240             :                         } else {
    8241           7 :                                 if (yych <= 'u') goto yy424;
    8242           0 :                                 if (yych <= 'z') goto yy151;
    8243           0 :                                 goto yy194;
    8244             :                         }
    8245             :                 }
    8246             :         }
    8247             : yy424:
    8248             :         YYDEBUG(424, *YYCURSOR);
    8249           7 :         yyaccept = 0;
    8250           7 :         yych = *(YYMARKER = ++YYCURSOR);
    8251           7 :         if (yych <= '@') {
    8252           0 :                 if (yych <= ',') {
    8253           0 :                         if (yych == ')') goto yy140;
    8254           0 :                         goto yy4;
    8255             :                 } else {
    8256           0 :                         if (yych == '.') goto yy4;
    8257           0 :                         if (yych <= '/') goto yy148;
    8258           0 :                         goto yy4;
    8259             :                 }
    8260             :         } else {
    8261           7 :                 if (yych <= '_') {
    8262           0 :                         if (yych <= 'A') goto yy416;
    8263           0 :                         if (yych <= 'Z') goto yy144;
    8264           0 :                         if (yych <= '^') goto yy4;
    8265           0 :                         goto yy148;
    8266             :                 } else {
    8267           7 :                         if (yych <= '`') goto yy4;
    8268           7 :                         if (yych <= 'a') goto yy425;
    8269           0 :                         if (yych <= 'z') goto yy152;
    8270           0 :                         goto yy4;
    8271             :                 }
    8272             :         }
    8273             : yy425:
    8274             :         YYDEBUG(425, *YYCURSOR);
    8275           7 :         yyaccept = 0;
    8276           7 :         yych = *(YYMARKER = ++YYCURSOR);
    8277           7 :         if (yych <= 'Q') {
    8278           0 :                 if (yych <= '-') {
    8279           0 :                         if (yych == ')') goto yy140;
    8280           0 :                         if (yych <= ',') goto yy4;
    8281           0 :                         goto yy148;
    8282             :                 } else {
    8283           0 :                         if (yych == '/') goto yy148;
    8284           0 :                         if (yych <= '@') goto yy4;
    8285           0 :                         goto yy145;
    8286             :                 }
    8287             :         } else {
    8288           7 :                 if (yych <= '_') {
    8289           0 :                         if (yych <= 'R') goto yy417;
    8290           0 :                         if (yych <= 'Z') goto yy145;
    8291           0 :                         if (yych <= '^') goto yy4;
    8292           0 :                         goto yy148;
    8293             :                 } else {
    8294           7 :                         if (yych <= 'q') {
    8295           0 :                                 if (yych <= '`') goto yy4;
    8296           0 :                                 goto yy153;
    8297             :                         } else {
    8298           7 :                                 if (yych <= 'r') goto yy426;
    8299           0 :                                 if (yych <= 'z') goto yy153;
    8300           0 :                                 goto yy4;
    8301             :                         }
    8302             :                 }
    8303             :         }
    8304             : yy426:
    8305             :         YYDEBUG(426, *YYCURSOR);
    8306           7 :         yyaccept = 0;
    8307           7 :         yych = *(YYMARKER = ++YYCURSOR);
    8308           7 :         if (yych <= 'X') {
    8309           0 :                 if (yych <= ',') {
    8310           0 :                         if (yych == ')') goto yy140;
    8311           0 :                         goto yy4;
    8312             :                 } else {
    8313           0 :                         if (yych == '.') goto yy4;
    8314           0 :                         if (yych <= '/') goto yy148;
    8315           0 :                         goto yy4;
    8316             :                 }
    8317             :         } else {
    8318           7 :                 if (yych <= '`') {
    8319           0 :                         if (yych <= 'Y') goto yy206;
    8320           0 :                         if (yych == '_') goto yy148;
    8321           0 :                         goto yy4;
    8322             :                 } else {
    8323           7 :                         if (yych == 'y') goto yy377;
    8324           0 :                         if (yych <= 'z') goto yy154;
    8325           0 :                         goto yy4;
    8326             :                 }
    8327             :         }
    8328             : yy427:
    8329             :         YYDEBUG(427, *YYCURSOR);
    8330           0 :         yyaccept = 5;
    8331           0 :         yych = *(YYMARKER = ++YYCURSOR);
    8332           0 :         if (yych <= '9') {
    8333           0 :                 if (yych <= '(') {
    8334           0 :                         if (yych <= '\t') {
    8335           0 :                                 if (yych <= 0x08) goto yy194;
    8336           0 :                                 goto yy196;
    8337             :                         } else {
    8338           0 :                                 if (yych == ' ') goto yy196;
    8339           0 :                                 goto yy194;
    8340             :                         }
    8341             :                 } else {
    8342           0 :                         if (yych <= '-') {
    8343           0 :                                 if (yych <= ')') goto yy140;
    8344           0 :                                 if (yych <= ',') goto yy194;
    8345           0 :                                 goto yy372;
    8346             :                         } else {
    8347           0 :                                 if (yych == '/') goto yy148;
    8348           0 :                                 goto yy196;
    8349             :                         }
    8350             :                 }
    8351             :         } else {
    8352           0 :                 if (yych <= '^') {
    8353           0 :                         if (yych <= 'D') {
    8354           0 :                                 if (yych <= '@') goto yy194;
    8355           0 :                                 goto yy143;
    8356             :                         } else {
    8357           0 :                                 if (yych <= 'E') goto yy420;
    8358           0 :                                 if (yych <= 'Z') goto yy143;
    8359           0 :                                 goto yy194;
    8360             :                         }
    8361             :                 } else {
    8362           0 :                         if (yych <= 'd') {
    8363           0 :                                 if (yych <= '_') goto yy148;
    8364           0 :                                 if (yych <= '`') goto yy194;
    8365           0 :                                 goto yy151;
    8366             :                         } else {
    8367           0 :                                 if (yych <= 'e') goto yy429;
    8368           0 :                                 if (yych <= 'z') goto yy151;
    8369           0 :                                 goto yy194;
    8370             :                         }
    8371             :                 }
    8372             :         }
    8373             : yy428:
    8374             :         YYDEBUG(428, *YYCURSOR);
    8375           6 :         yyaccept = 5;
    8376           6 :         yych = *(YYMARKER = ++YYCURSOR);
    8377           6 :         if (yych <= '9') {
    8378           0 :                 if (yych <= '(') {
    8379           0 :                         if (yych <= '\t') {
    8380           0 :                                 if (yych <= 0x08) goto yy194;
    8381           0 :                                 goto yy196;
    8382             :                         } else {
    8383           0 :                                 if (yych == ' ') goto yy196;
    8384           0 :                                 goto yy194;
    8385             :                         }
    8386             :                 } else {
    8387           0 :                         if (yych <= '-') {
    8388           0 :                                 if (yych <= ')') goto yy140;
    8389           0 :                                 if (yych <= ',') goto yy194;
    8390           0 :                                 goto yy372;
    8391             :                         } else {
    8392           0 :                                 if (yych == '/') goto yy148;
    8393           0 :                                 goto yy196;
    8394             :                         }
    8395             :                 }
    8396             :         } else {
    8397           6 :                 if (yych <= '^') {
    8398           0 :                         if (yych <= 'X') {
    8399           0 :                                 if (yych <= '@') goto yy194;
    8400           0 :                                 goto yy143;
    8401             :                         } else {
    8402           0 :                                 if (yych <= 'Y') goto yy420;
    8403           0 :                                 if (yych <= 'Z') goto yy143;
    8404           0 :                                 goto yy194;
    8405             :                         }
    8406             :                 } else {
    8407           6 :                         if (yych <= 'x') {
    8408           0 :                                 if (yych <= '_') goto yy148;
    8409           0 :                                 if (yych <= '`') goto yy194;
    8410           0 :                                 goto yy151;
    8411             :                         } else {
    8412           6 :                                 if (yych <= 'y') goto yy429;
    8413           0 :                                 if (yych <= 'z') goto yy151;
    8414           0 :                                 goto yy194;
    8415             :                         }
    8416             :                 }
    8417             :         }
    8418             : yy429:
    8419             :         YYDEBUG(429, *YYCURSOR);
    8420           6 :         yyaccept = 5;
    8421           6 :         yych = *(YYMARKER = ++YYCURSOR);
    8422           6 :         if (yych <= '.') {
    8423           6 :                 if (yych <= ' ') {
    8424           6 :                         if (yych == '\t') goto yy196;
    8425           6 :                         if (yych <= 0x1F) goto yy194;
    8426           6 :                         goto yy196;
    8427             :                 } else {
    8428           0 :                         if (yych <= ')') {
    8429           0 :                                 if (yych <= '(') goto yy194;
    8430           0 :                                 goto yy140;
    8431             :                         } else {
    8432           0 :                                 if (yych <= ',') goto yy194;
    8433           0 :                                 if (yych <= '-') goto yy378;
    8434           0 :                                 goto yy196;
    8435             :                         }
    8436             :                 }
    8437             :         } else {
    8438           0 :                 if (yych <= 'Z') {
    8439           0 :                         if (yych <= '/') goto yy148;
    8440           0 :                         if (yych <= '9') goto yy196;
    8441           0 :                         if (yych <= '@') goto yy194;
    8442           0 :                         goto yy144;
    8443             :                 } else {
    8444           0 :                         if (yych <= '_') {
    8445           0 :                                 if (yych <= '^') goto yy194;
    8446           0 :                                 goto yy148;
    8447             :                         } else {
    8448           0 :                                 if (yych <= '`') goto yy194;
    8449           0 :                                 if (yych <= 'z') goto yy152;
    8450           0 :                                 goto yy194;
    8451             :                         }
    8452             :                 }
    8453             :         }
    8454             : yy430:
    8455             :         YYDEBUG(430, *YYCURSOR);
    8456           0 :         yyaccept = 0;
    8457           0 :         yych = *(YYMARKER = ++YYCURSOR);
    8458           0 :         if (yych <= '.') {
    8459           0 :                 if (yych <= ' ') {
    8460           0 :                         if (yych == '\t') goto yy196;
    8461           0 :                         if (yych <= 0x1F) goto yy4;
    8462           0 :                         goto yy196;
    8463             :                 } else {
    8464           0 :                         if (yych == ')') goto yy140;
    8465           0 :                         if (yych <= ',') goto yy4;
    8466           0 :                         goto yy196;
    8467             :                 }
    8468             :         } else {
    8469           0 :                 if (yych <= 'H') {
    8470           0 :                         if (yych <= '/') goto yy4;
    8471           0 :                         if (yych <= '9') goto yy196;
    8472           0 :                         if (yych <= '@') goto yy4;
    8473           0 :                         goto yy142;
    8474             :                 } else {
    8475           0 :                         if (yych <= 'Z') {
    8476           0 :                                 if (yych >= 'J') goto yy142;
    8477             :                         } else {
    8478           0 :                                 if (yych <= '`') goto yy4;
    8479           0 :                                 if (yych <= 'z') goto yy142;
    8480           0 :                                 goto yy4;
    8481             :                         }
    8482             :                 }
    8483             :         }
    8484             : yy431:
    8485             :         YYDEBUG(431, *YYCURSOR);
    8486           0 :         yyaccept = 0;
    8487           0 :         yych = *(YYMARKER = ++YYCURSOR);
    8488           0 :         if (yych <= ',') {
    8489           0 :                 if (yych <= 0x1F) {
    8490           0 :                         if (yych == '\t') goto yy196;
    8491           0 :                         goto yy4;
    8492             :                 } else {
    8493           0 :                         if (yych <= ' ') goto yy196;
    8494           0 :                         if (yych == ')') goto yy140;
    8495           0 :                         goto yy4;
    8496             :                 }
    8497             :         } else {
    8498           0 :                 if (yych <= '@') {
    8499           0 :                         if (yych == '/') goto yy4;
    8500           0 :                         if (yych <= '9') goto yy196;
    8501           0 :                         goto yy4;
    8502             :                 } else {
    8503           0 :                         if (yych <= 'Z') goto yy143;
    8504           0 :                         if (yych <= '`') goto yy4;
    8505           0 :                         if (yych <= 'z') goto yy143;
    8506           0 :                         goto yy4;
    8507             :                 }
    8508             :         }
    8509             : yy432:
    8510             :         YYDEBUG(432, *YYCURSOR);
    8511           0 :         yyaccept = 0;
    8512           0 :         yych = *(YYMARKER = ++YYCURSOR);
    8513           0 :         if (yych <= '.') {
    8514           0 :                 if (yych <= ' ') {
    8515           0 :                         if (yych == '\t') goto yy196;
    8516           0 :                         if (yych <= 0x1F) goto yy4;
    8517           0 :                         goto yy196;
    8518             :                 } else {
    8519           0 :                         if (yych == ')') goto yy140;
    8520           0 :                         if (yych <= ',') goto yy4;
    8521           0 :                         goto yy196;
    8522             :                 }
    8523             :         } else {
    8524           0 :                 if (yych <= 'H') {
    8525           0 :                         if (yych <= '/') goto yy4;
    8526           0 :                         if (yych <= '9') goto yy196;
    8527           0 :                         if (yych <= '@') goto yy4;
    8528           0 :                         goto yy142;
    8529             :                 } else {
    8530           0 :                         if (yych <= 'Z') {
    8531           0 :                                 if (yych >= 'J') goto yy142;
    8532             :                         } else {
    8533           0 :                                 if (yych <= '`') goto yy4;
    8534           0 :                                 if (yych <= 'z') goto yy142;
    8535           0 :                                 goto yy4;
    8536             :                         }
    8537             :                 }
    8538             :         }
    8539             :         YYDEBUG(433, *YYCURSOR);
    8540           0 :         yyaccept = 0;
    8541           0 :         yych = *(YYMARKER = ++YYCURSOR);
    8542           0 :         if (yych <= '.') {
    8543           0 :                 if (yych <= ' ') {
    8544           0 :                         if (yych == '\t') goto yy196;
    8545           0 :                         if (yych <= 0x1F) goto yy4;
    8546           0 :                         goto yy196;
    8547             :                 } else {
    8548           0 :                         if (yych == ')') goto yy140;
    8549           0 :                         if (yych <= ',') goto yy4;
    8550           0 :                         goto yy196;
    8551             :                 }
    8552             :         } else {
    8553           0 :                 if (yych <= 'H') {
    8554           0 :                         if (yych <= '/') goto yy4;
    8555           0 :                         if (yych <= '9') goto yy196;
    8556           0 :                         if (yych <= '@') goto yy4;
    8557           0 :                         goto yy143;
    8558             :                 } else {
    8559           0 :                         if (yych <= 'Z') {
    8560           0 :                                 if (yych >= 'J') goto yy143;
    8561             :                         } else {
    8562           0 :                                 if (yych <= '`') goto yy4;
    8563           0 :                                 if (yych <= 'z') goto yy143;
    8564           0 :                                 goto yy4;
    8565             :                         }
    8566             :                 }
    8567             :         }
    8568             :         YYDEBUG(434, *YYCURSOR);
    8569           0 :         yyaccept = 0;
    8570           0 :         yych = *(YYMARKER = ++YYCURSOR);
    8571           0 :         if (yych <= ',') {
    8572           0 :                 if (yych <= 0x1F) {
    8573           0 :                         if (yych == '\t') goto yy196;
    8574           0 :                         goto yy4;
    8575             :                 } else {
    8576           0 :                         if (yych <= ' ') goto yy196;
    8577           0 :                         if (yych == ')') goto yy140;
    8578           0 :                         goto yy4;
    8579             :                 }
    8580             :         } else {
    8581           0 :                 if (yych <= '@') {
    8582           0 :                         if (yych == '/') goto yy4;
    8583           0 :                         if (yych <= '9') goto yy196;
    8584           0 :                         goto yy4;
    8585             :                 } else {
    8586           0 :                         if (yych <= 'Z') goto yy144;
    8587           0 :                         if (yych <= '`') goto yy4;
    8588           0 :                         if (yych <= 'z') goto yy144;
    8589           0 :                         goto yy4;
    8590             :                 }
    8591             :         }
    8592             : yy435:
    8593             :         YYDEBUG(435, *YYCURSOR);
    8594           0 :         yyaccept = 0;
    8595           0 :         yych = *(YYMARKER = ++YYCURSOR);
    8596           0 :         if (yych <= ',') {
    8597           0 :                 if (yych <= 0x1F) {
    8598           0 :                         if (yych == '\t') goto yy196;
    8599           0 :                         goto yy4;
    8600             :                 } else {
    8601           0 :                         if (yych <= ' ') goto yy196;
    8602           0 :                         if (yych == ')') goto yy140;
    8603           0 :                         goto yy4;
    8604             :                 }
    8605             :         } else {
    8606           0 :                 if (yych <= '@') {
    8607           0 :                         if (yych == '/') goto yy4;
    8608           0 :                         if (yych <= '9') goto yy196;
    8609           0 :                         goto yy4;
    8610             :                 } else {
    8611           0 :                         if (yych <= 'Z') goto yy142;
    8612           0 :                         if (yych <= '`') goto yy4;
    8613           0 :                         if (yych <= 'z') goto yy142;
    8614           0 :                         goto yy4;
    8615             :                 }
    8616             :         }
    8617             : yy436:
    8618             :         YYDEBUG(436, *YYCURSOR);
    8619           0 :         yyaccept = 0;
    8620           0 :         yych = *(YYMARKER = ++YYCURSOR);
    8621           0 :         if (yych <= '.') {
    8622           0 :                 if (yych <= ' ') {
    8623           0 :                         if (yych == '\t') goto yy196;
    8624           0 :                         if (yych <= 0x1F) goto yy4;
    8625           0 :                         goto yy196;
    8626             :                 } else {
    8627           0 :                         if (yych == ')') goto yy140;
    8628           0 :                         if (yych <= ',') goto yy4;
    8629           0 :                         goto yy196;
    8630             :                 }
    8631             :         } else {
    8632           0 :                 if (yych <= 'H') {
    8633           0 :                         if (yych <= '/') goto yy4;
    8634           0 :                         if (yych <= '9') goto yy196;
    8635           0 :                         if (yych <= '@') goto yy4;
    8636           0 :                         goto yy142;
    8637             :                 } else {
    8638           0 :                         if (yych <= 'Z') {
    8639           0 :                                 if (yych <= 'I') goto yy431;
    8640           0 :                                 goto yy142;
    8641             :                         } else {
    8642           0 :                                 if (yych <= '`') goto yy4;
    8643           0 :                                 if (yych <= 'z') goto yy142;
    8644           0 :                                 goto yy4;
    8645             :                         }
    8646             :                 }
    8647             :         }
    8648             : yy437:
    8649             :         YYDEBUG(437, *YYCURSOR);
    8650         288 :         yyaccept = 0;
    8651         288 :         yych = *(YYMARKER = ++YYCURSOR);
    8652         288 :         if (yych <= 'V') {
    8653         285 :                 if (yych <= 'D') {
    8654         285 :                         if (yych <= ' ') {
    8655          43 :                                 if (yych == '\t') goto yy61;
    8656          43 :                                 if (yych <= 0x1F) goto yy4;
    8657          40 :                                 goto yy61;
    8658             :                         } else {
    8659         242 :                                 if (yych <= '9') {
    8660         242 :                                         if (yych <= '/') goto yy4;
    8661         241 :                                         goto yy457;
    8662             :                                 } else {
    8663           0 :                                         if (yych <= ':') goto yy163;
    8664           0 :                                         if (yych <= 'C') goto yy4;
    8665           0 :                                         goto yy61;
    8666             :                                 }
    8667             :                         }
    8668             :                 } else {
    8669           0 :                         if (yych <= 'H') {
    8670           0 :                                 if (yych == 'F') goto yy61;
    8671           0 :                                 if (yych <= 'G') goto yy4;
    8672           0 :                                 goto yy61;
    8673             :                         } else {
    8674           0 :                                 if (yych <= 'M') {
    8675           0 :                                         if (yych <= 'L') goto yy4;
    8676           0 :                                         goto yy61;
    8677             :                                 } else {
    8678           0 :                                         if (yych <= 'R') goto yy4;
    8679           0 :                                         if (yych <= 'T') goto yy61;
    8680           0 :                                         goto yy4;
    8681             :                                 }
    8682             :                         }
    8683             :                 }
    8684             :         } else {
    8685           3 :                 if (yych <= 'h') {
    8686           1 :                         if (yych <= 'c') {
    8687           0 :                                 if (yych == 'X') goto yy4;
    8688           0 :                                 if (yych <= 'Y') goto yy61;
    8689           0 :                                 goto yy4;
    8690             :                         } else {
    8691           1 :                                 if (yych <= 'e') {
    8692           1 :                                         if (yych <= 'd') goto yy61;
    8693           0 :                                         goto yy4;
    8694             :                                 } else {
    8695           0 :                                         if (yych == 'g') goto yy4;
    8696           0 :                                         goto yy61;
    8697             :                                 }
    8698             :                         }
    8699             :                 } else {
    8700           2 :                         if (yych <= 't') {
    8701           1 :                                 if (yych == 'm') goto yy61;
    8702           0 :                                 if (yych <= 'r') goto yy4;
    8703           0 :                                 goto yy61;
    8704             :                         } else {
    8705           1 :                                 if (yych <= 'w') {
    8706           0 :                                         if (yych <= 'v') goto yy4;
    8707           0 :                                         goto yy61;
    8708             :                                 } else {
    8709           1 :                                         if (yych == 'y') goto yy61;
    8710           0 :                                         goto yy4;
    8711             :                                 }
    8712             :                         }
    8713             :                 }
    8714             :         }
    8715             : yy438:
    8716             :         YYDEBUG(438, *YYCURSOR);
    8717          67 :         yyaccept = 0;
    8718          67 :         yych = *(YYMARKER = ++YYCURSOR);
    8719          67 :         if (yych <= 'T') {
    8720          67 :                 if (yych <= ':') {
    8721          67 :                         if (yych <= ' ') {
    8722          33 :                                 if (yych == '\t') goto yy61;
    8723          32 :                                 if (yych <= 0x1F) goto yy4;
    8724          30 :                                 goto yy61;
    8725             :                         } else {
    8726          34 :                                 if (yych <= '4') {
    8727          29 :                                         if (yych <= '/') goto yy4;
    8728          29 :                                         goto yy457;
    8729             :                                 } else {
    8730           5 :                                         if (yych <= '5') goto yy442;
    8731           3 :                                         if (yych <= '9') goto yy443;
    8732           0 :                                         goto yy163;
    8733             :                                 }
    8734             :                         }
    8735             :                 } else {
    8736           0 :                         if (yych <= 'G') {
    8737           0 :                                 if (yych <= 'D') {
    8738           0 :                                         if (yych <= 'C') goto yy4;
    8739           0 :                                         goto yy61;
    8740             :                                 } else {
    8741           0 :                                         if (yych == 'F') goto yy61;
    8742           0 :                                         goto yy4;
    8743             :                                 }
    8744             :                         } else {
    8745           0 :                                 if (yych <= 'L') {
    8746           0 :                                         if (yych <= 'H') goto yy61;
    8747           0 :                                         goto yy4;
    8748             :                                 } else {
    8749           0 :                                         if (yych <= 'M') goto yy61;
    8750           0 :                                         if (yych <= 'R') goto yy4;
    8751           0 :                                         goto yy61;
    8752             :                                 }
    8753             :                         }
    8754             :                 }
    8755             :         } else {
    8756           0 :                 if (yych <= 'g') {
    8757           0 :                         if (yych <= 'Y') {
    8758           0 :                                 if (yych == 'W') goto yy61;
    8759           0 :                                 if (yych <= 'X') goto yy4;
    8760           0 :                                 goto yy61;
    8761             :                         } else {
    8762           0 :                                 if (yych <= 'd') {
    8763           0 :                                         if (yych <= 'c') goto yy4;
    8764           0 :                                         goto yy61;
    8765             :                                 } else {
    8766           0 :                                         if (yych == 'f') goto yy61;
    8767           0 :                                         goto yy4;
    8768             :                                 }
    8769             :                         }
    8770             :                 } else {
    8771           0 :                         if (yych <= 't') {
    8772           0 :                                 if (yych <= 'l') {
    8773           0 :                                         if (yych <= 'h') goto yy61;
    8774           0 :                                         goto yy4;
    8775             :                                 } else {
    8776           0 :                                         if (yych <= 'm') goto yy61;
    8777           0 :                                         if (yych <= 'r') goto yy4;
    8778           0 :                                         goto yy61;
    8779             :                                 }
    8780             :                         } else {
    8781           0 :                                 if (yych <= 'w') {
    8782           0 :                                         if (yych <= 'v') goto yy4;
    8783           0 :                                         goto yy61;
    8784             :                                 } else {
    8785           0 :                                         if (yych == 'y') goto yy61;
    8786           0 :                                         goto yy4;
    8787             :                                 }
    8788             :                         }
    8789             :                 }
    8790             :         }
    8791             : yy439:
    8792             :         YYDEBUG(439, *YYCURSOR);
    8793          84 :         yyaccept = 0;
    8794          84 :         yych = *(YYMARKER = ++YYCURSOR);
    8795          84 :         if (yych <= 'T') {
    8796          82 :                 if (yych <= 'C') {
    8797          82 :                         if (yych <= ' ') {
    8798          20 :                                 if (yych == '\t') goto yy61;
    8799          20 :                                 if (yych <= 0x1F) goto yy4;
    8800          20 :                                 goto yy61;
    8801             :                         } else {
    8802          62 :                                 if (yych <= '5') {
    8803          27 :                                         if (yych <= '/') goto yy4;
    8804          27 :                                         goto yy442;
    8805             :                                 } else {
    8806          35 :                                         if (yych <= '9') goto yy443;
    8807           1 :                                         if (yych <= ':') goto yy163;
    8808           0 :                                         goto yy4;
    8809             :                                 }
    8810             :                         }
    8811             :                 } else {
    8812           0 :                         if (yych <= 'G') {
    8813           0 :                                 if (yych == 'E') goto yy4;
    8814           0 :                                 if (yych <= 'F') goto yy61;
    8815           0 :                                 goto yy4;
    8816             :                         } else {
    8817           0 :                                 if (yych <= 'L') {
    8818           0 :                                         if (yych <= 'H') goto yy61;
    8819           0 :                                         goto yy4;
    8820             :                                 } else {
    8821           0 :                                         if (yych <= 'M') goto yy61;
    8822           0 :                                         if (yych <= 'R') goto yy4;
    8823           0 :                                         goto yy61;
    8824             :                                 }
    8825             :                         }
    8826             :                 }
    8827             :         } else {
    8828           2 :                 if (yych <= 'g') {
    8829           2 :                         if (yych <= 'Y') {
    8830           0 :                                 if (yych == 'W') goto yy61;
    8831           0 :                                 if (yych <= 'X') goto yy4;
    8832           0 :                                 goto yy61;
    8833             :                         } else {
    8834           2 :                                 if (yych <= 'd') {
    8835           2 :                                         if (yych <= 'c') goto yy4;
    8836           2 :                                         goto yy61;
    8837             :                                 } else {
    8838           0 :                                         if (yych == 'f') goto yy61;
    8839           0 :                                         goto yy4;
    8840             :                                 }
    8841             :                         }
    8842             :                 } else {
    8843           0 :                         if (yych <= 't') {
    8844           0 :                                 if (yych <= 'l') {
    8845           0 :                                         if (yych <= 'h') goto yy61;
    8846           0 :                                         goto yy4;
    8847             :                                 } else {
    8848           0 :                                         if (yych <= 'm') goto yy61;
    8849           0 :                                         if (yych <= 'r') goto yy4;
    8850           0 :                                         goto yy61;
    8851             :                                 }
    8852             :                         } else {
    8853           0 :                                 if (yych <= 'w') {
    8854           0 :                                         if (yych <= 'v') goto yy4;
    8855           0 :                                         goto yy61;
    8856             :                                 } else {
    8857           0 :                                         if (yych == 'y') goto yy61;
    8858           0 :                                         goto yy4;
    8859             :                                 }
    8860             :                         }
    8861             :                 }
    8862             :         }
    8863             : yy440:
    8864             :         YYDEBUG(440, *YYCURSOR);
    8865           4 :         ++YYCURSOR;
    8866           4 :         if (YYLIMIT <= YYCURSOR) YYFILL(1);
    8867           4 :         yych = *YYCURSOR;
    8868             :         YYDEBUG(441, *YYCURSOR);
    8869           4 :         if (yybm[0+yych] & 4) {
    8870           0 :                 goto yy58;
    8871             :         }
    8872           4 :         if (yych <= ',') {
    8873           0 :                 if (yych == '+') goto yy440;
    8874           0 :                 goto yy57;
    8875             :         } else {
    8876           4 :                 if (yych <= '-') goto yy440;
    8877           4 :                 if (yych <= '/') goto yy57;
    8878           4 :                 if (yych <= '9') goto yy55;
    8879           0 :                 goto yy57;
    8880             :         }
    8881             : yy442:
    8882             :         YYDEBUG(442, *YYCURSOR);
    8883          29 :         yyaccept = 0;
    8884          29 :         yych = *(YYMARKER = ++YYCURSOR);
    8885          29 :         if (yych <= 'V') {
    8886          29 :                 if (yych <= 'D') {
    8887          29 :                         if (yych <= ' ') {
    8888          16 :                                 if (yych == '\t') goto yy61;
    8889          16 :                                 if (yych <= 0x1F) goto yy4;
    8890          16 :                                 goto yy61;
    8891             :                         } else {
    8892          13 :                                 if (yych <= '/') goto yy4;
    8893          13 :                                 if (yych <= '9') goto yy456;
    8894           0 :                                 if (yych <= 'C') goto yy4;
    8895           0 :                                 goto yy61;
    8896             :                         }
    8897             :                 } else {
    8898           0 :                         if (yych <= 'H') {
    8899           0 :                                 if (yych == 'F') goto yy61;
    8900           0 :                                 if (yych <= 'G') goto yy4;
    8901           0 :                                 goto yy61;
    8902             :                         } else {
    8903           0 :                                 if (yych <= 'M') {
    8904           0 :                                         if (yych <= 'L') goto yy4;
    8905           0 :                                         goto yy61;
    8906             :                                 } else {
    8907           0 :                                         if (yych <= 'R') goto yy4;
    8908           0 :                                         if (yych <= 'T') goto yy61;
    8909           0 :                                         goto yy4;
    8910             :                                 }
    8911             :                         }
    8912             :                 }
    8913             :         } else {
    8914           0 :                 if (yych <= 'h') {
    8915           0 :                         if (yych <= 'c') {
    8916           0 :                                 if (yych == 'X') goto yy4;
    8917           0 :                                 if (yych <= 'Y') goto yy61;
    8918           0 :                                 goto yy4;
    8919             :                         } else {
    8920           0 :                                 if (yych <= 'e') {
    8921           0 :                                         if (yych <= 'd') goto yy61;
    8922           0 :                                         goto yy4;
    8923             :                                 } else {
    8924           0 :                                         if (yych == 'g') goto yy4;
    8925           0 :                                         goto yy61;
    8926             :                                 }
    8927             :                         }
    8928             :                 } else {
    8929           0 :                         if (yych <= 't') {
    8930           0 :                                 if (yych == 'm') goto yy61;
    8931           0 :                                 if (yych <= 'r') goto yy4;
    8932           0 :                                 goto yy61;
    8933             :                         } else {
    8934           0 :                                 if (yych <= 'w') {
    8935           0 :                                         if (yych <= 'v') goto yy4;
    8936           0 :                                         goto yy61;
    8937             :                                 } else {
    8938           0 :                                         if (yych == 'y') goto yy61;
    8939           0 :                                         goto yy4;
    8940             :                                 }
    8941             :                         }
    8942             :                 }
    8943             :         }
    8944             : yy443:
    8945             :         YYDEBUG(443, *YYCURSOR);
    8946          37 :         yyaccept = 0;
    8947          37 :         yych = *(YYMARKER = ++YYCURSOR);
    8948          37 :         if (yych <= 'V') {
    8949          37 :                 if (yych <= 'D') {
    8950          37 :                         if (yych <= ' ') {
    8951          23 :                                 if (yych == '\t') goto yy61;
    8952          23 :                                 if (yych <= 0x1F) goto yy4;
    8953          23 :                                 goto yy61;
    8954             :                         } else {
    8955          14 :                                 if (yych <= '/') goto yy4;
    8956          14 :                                 if (yych <= '9') goto yy444;
    8957           0 :                                 if (yych <= 'C') goto yy4;
    8958           0 :                                 goto yy61;
    8959             :                         }
    8960             :                 } else {
    8961           0 :                         if (yych <= 'H') {
    8962           0 :                                 if (yych == 'F') goto yy61;
    8963           0 :                                 if (yych <= 'G') goto yy4;
    8964           0 :                                 goto yy61;
    8965             :                         } else {
    8966           0 :                                 if (yych <= 'M') {
    8967           0 :                                         if (yych <= 'L') goto yy4;
    8968           0 :                                         goto yy61;
    8969             :                                 } else {
    8970           0 :                                         if (yych <= 'R') goto yy4;
    8971           0 :                                         if (yych <= 'T') goto yy61;
    8972           0 :                                         goto yy4;
    8973             :                                 }
    8974             :                         }
    8975             :                 }
    8976             :         } else {
    8977           0 :                 if (yych <= 'h') {
    8978           0 :                         if (yych <= 'c') {
    8979           0 :                                 if (yych == 'X') goto yy4;
    8980           0 :                                 if (yych <= 'Y') goto yy61;
    8981           0 :                                 goto yy4;
    8982             :                         } else {
    8983           0 :                                 if (yych <= 'e') {
    8984           0 :                                         if (yych <= 'd') goto yy61;
    8985           0 :                                         goto yy4;
    8986             :                                 } else {
    8987           0 :                                         if (yych == 'g') goto yy4;
    8988           0 :                                         goto yy61;
    8989             :                                 }
    8990             :                         }
    8991             :                 } else {
    8992           0 :                         if (yych <= 't') {
    8993           0 :                                 if (yych == 'm') goto yy61;
    8994           0 :                                 if (yych <= 'r') goto yy4;
    8995           0 :                                 goto yy61;
    8996             :                         } else {
    8997           0 :                                 if (yych <= 'w') {
    8998           0 :                                         if (yych <= 'v') goto yy4;
    8999           0 :                                         goto yy61;
    9000             :                                 } else {
    9001           0 :                                         if (yych == 'y') goto yy61;
    9002           0 :                                         goto yy4;
    9003             :                                 }
    9004             :                         }
    9005             :                 }
    9006             :         }
    9007             : yy444:
    9008             :         YYDEBUG(444, *YYCURSOR);
    9009          14 :         yych = *++YYCURSOR;
    9010          14 :         if (yych <= '/') goto yy61;
    9011          10 :         if (yych >= ':') goto yy61;
    9012             : yy445:
    9013             :         YYDEBUG(445, *YYCURSOR);
    9014          29 :         yych = *++YYCURSOR;
    9015          29 :         if (yybm[0+yych] & 2) {
    9016          28 :                 goto yy55;
    9017             :         }
    9018           1 :         if (yych != '-') goto yy61;
    9019             : yy446:
    9020             :         YYDEBUG(446, *YYCURSOR);
    9021           2 :         yych = *++YYCURSOR;
    9022           2 :         if (yych <= '/') goto yy57;
    9023           2 :         if (yych <= '0') goto yy447;
    9024           0 :         if (yych <= '1') goto yy448;
    9025           0 :         goto yy57;
    9026             : yy447:
    9027             :         YYDEBUG(447, *YYCURSOR);
    9028           2 :         yych = *++YYCURSOR;
    9029           2 :         if (yych <= '/') goto yy57;
    9030           2 :         if (yych <= '9') goto yy449;
    9031           0 :         goto yy57;
    9032             : yy448:
    9033             :         YYDEBUG(448, *YYCURSOR);
    9034           0 :         yych = *++YYCURSOR;
    9035           0 :         if (yych <= '/') goto yy57;
    9036           0 :         if (yych >= '3') goto yy57;
    9037             : yy449:
    9038             :         YYDEBUG(449, *YYCURSOR);
    9039           2 :         yych = *++YYCURSOR;
    9040           2 :         if (yych != '-') goto yy57;
    9041             :         YYDEBUG(450, *YYCURSOR);
    9042           2 :         yych = *++YYCURSOR;
    9043           2 :         if (yych <= '/') goto yy57;
    9044           2 :         if (yych <= '0') goto yy451;
    9045           1 :         if (yych <= '2') goto yy452;
    9046           0 :         if (yych <= '3') goto yy453;
    9047           0 :         goto yy57;
    9048             : yy451:
    9049             :         YYDEBUG(451, *YYCURSOR);
    9050           1 :         yych = *++YYCURSOR;
    9051           1 :         if (yych <= '/') goto yy57;
    9052           1 :         if (yych <= '9') goto yy454;
    9053           0 :         goto yy57;
    9054             : yy452:
    9055             :         YYDEBUG(452, *YYCURSOR);
    9056           1 :         yych = *++YYCURSOR;
    9057           1 :         if (yych <= '/') goto yy57;
    9058           1 :         if (yych <= '9') goto yy454;
    9059           0 :         goto yy57;
    9060             : yy453:
    9061             :         YYDEBUG(453, *YYCURSOR);
    9062           0 :         yych = *++YYCURSOR;
    9063           0 :         if (yych <= '/') goto yy57;
    9064           0 :         if (yych >= '2') goto yy57;
    9065             : yy454:
    9066             :         YYDEBUG(454, *YYCURSOR);
    9067           2 :         ++YYCURSOR;
    9068             : yy455:
    9069             :         YYDEBUG(455, *YYCURSOR);
    9070             : #line 1294 "ext/date/lib/parse_date.re"
    9071             :         {
    9072             :                 DEBUG_OUTPUT("iso8601date4 | iso8601date2 | iso8601dateslash | dateslash");
    9073             :                 TIMELIB_INIT;
    9074             :                 TIMELIB_HAVE_DATE();
    9075             :                 s->time->y = timelib_get_unsigned_nr((char **) &ptr, 4);
    9076             :                 s->time->m = timelib_get_nr((char **) &ptr, 2);
    9077             :                 s->time->d = timelib_get_nr((char **) &ptr, 2);
    9078             :                 TIMELIB_DEINIT;
    9079             :                 return TIMELIB_ISO_DATE;
    9080             :         }
    9081             : #line 9082 "ext/date/lib/parse_date.c"
    9082             : yy456:
    9083             :         YYDEBUG(456, *YYCURSOR);
    9084          37 :         yyaccept = 0;
    9085          37 :         yych = *(YYMARKER = ++YYCURSOR);
    9086          37 :         if (yych <= 'V') {
    9087          37 :                 if (yych <= 'D') {
    9088          37 :                         if (yych <= ' ') {
    9089          18 :                                 if (yych == '\t') goto yy61;
    9090          18 :                                 if (yych <= 0x1F) goto yy4;
    9091          18 :                                 goto yy61;
    9092             :                         } else {
    9093          19 :                                 if (yych <= '/') goto yy4;
    9094          19 :                                 if (yych <= '9') goto yy445;
    9095           0 :                                 if (yych <= 'C') goto yy4;
    9096           0 :                                 goto yy61;
    9097             :                         }
    9098             :                 } else {
    9099           0 :                         if (yych <= 'H') {
    9100           0 :                                 if (yych == 'F') goto yy61;
    9101           0 :                                 if (yych <= 'G') goto yy4;
    9102           0 :                                 goto yy61;
    9103             :                         } else {
    9104           0 :                                 if (yych <= 'M') {
    9105           0 :                                         if (yych <= 'L') goto yy4;
    9106           0 :                                         goto yy61;
    9107             :                                 } else {
    9108           0 :                                         if (yych <= 'R') goto yy4;
    9109           0 :                                         if (yych <= 'T') goto yy61;
    9110           0 :                                         goto yy4;
    9111             :                                 }
    9112             :                         }
    9113             :                 }
    9114             :         } else {
    9115           0 :                 if (yych <= 'h') {
    9116           0 :                         if (yych <= 'c') {
    9117           0 :                                 if (yych == 'X') goto yy4;
    9118           0 :                                 if (yych <= 'Y') goto yy61;
    9119           0 :                                 goto yy4;
    9120             :                         } else {
    9121           0 :                                 if (yych <= 'e') {
    9122           0 :                                         if (yych <= 'd') goto yy61;
    9123           0 :                                         goto yy4;
    9124             :                                 } else {
    9125           0 :                                         if (yych == 'g') goto yy4;
    9126           0 :                                         goto yy61;
    9127             :                                 }
    9128             :                         }
    9129             :                 } else {
    9130           0 :                         if (yych <= 't') {
    9131           0 :                                 if (yych == 'm') goto yy61;
    9132           0 :                                 if (yych <= 'r') goto yy4;
    9133           0 :                                 goto yy61;
    9134             :                         } else {
    9135           0 :                                 if (yych <= 'w') {
    9136           0 :                                         if (yych <= 'v') goto yy4;
    9137           0 :                                         goto yy61;
    9138             :                                 } else {
    9139           0 :                                         if (yych == 'y') goto yy61;
    9140           0 :                                         goto yy4;
    9141             :                                 }
    9142             :                         }
    9143             :                 }
    9144             :         }
    9145             : yy457:
    9146             :         YYDEBUG(457, *YYCURSOR);
    9147         270 :         yyaccept = 0;
    9148         270 :         yych = *(YYMARKER = ++YYCURSOR);
    9149         270 :         if (yych <= 'T') {
    9150         270 :                 if (yych <= 'C') {
    9151         270 :                         if (yych <= ' ') {
    9152          47 :                                 if (yych == '\t') goto yy61;
    9153          47 :                                 if (yych <= 0x1F) goto yy4;
    9154          32 :                                 goto yy61;
    9155             :                         } else {
    9156         223 :                                 if (yych <= '5') {
    9157         168 :                                         if (yych <= '/') goto yy4;
    9158             :                                 } else {
    9159          55 :                                         if (yych <= '9') goto yy456;
    9160          31 :                                         if (yych <= ':') goto yy163;
    9161           0 :                                         goto yy4;
    9162             :                                 }
    9163             :                         }
    9164             :                 } else {
    9165           0 :                         if (yych <= 'G') {
    9166           0 :                                 if (yych == 'E') goto yy4;
    9167           0 :                                 if (yych <= 'F') goto yy61;
    9168           0 :                                 goto yy4;
    9169             :                         } else {
    9170           0 :                                 if (yych <= 'L') {
    9171           0 :                                         if (yych <= 'H') goto yy61;
    9172           0 :                                         goto yy4;
    9173             :                                 } else {
    9174           0 :                                         if (yych <= 'M') goto yy61;
    9175           0 :                                         if (yych <= 'R') goto yy4;
    9176           0 :                                         goto yy61;
    9177             :                                 }
    9178             :                         }
    9179             :                 }
    9180             :         } else {
    9181           0 :                 if (yych <= 'g') {
    9182           0 :                         if (yych <= 'Y') {
    9183           0 :                                 if (yych == 'W') goto yy61;
    9184           0 :                                 if (yych <= 'X') goto yy4;
    9185           0 :                                 goto yy61;
    9186             :                         } else {
    9187           0 :                                 if (yych <= 'd') {
    9188           0 :                                         if (yych <= 'c') goto yy4;
    9189           0 :                                         goto yy61;
    9190             :                                 } else {
    9191           0 :                                         if (yych == 'f') goto yy61;
    9192           0 :                                         goto yy4;
    9193             :                                 }
    9194             :                         }
    9195             :                 } else {
    9196           0 :                         if (yych <= 't') {
    9197           0 :                                 if (yych <= 'l') {
    9198           0 :                                         if (yych <= 'h') goto yy61;
    9199           0 :                                         goto yy4;
    9200             :                                 } else {
    9201           0 :                                         if (yych <= 'm') goto yy61;
    9202           0 :                                         if (yych <= 'r') goto yy4;
    9203           0 :                                         goto yy61;
    9204             :                                 }
    9205             :                         } else {
    9206           0 :                                 if (yych <= 'w') {
    9207           0 :                                         if (yych <= 'v') goto yy4;
    9208           0 :                                         goto yy61;
    9209             :                                 } else {
    9210           0 :                                         if (yych == 'y') goto yy61;
    9211           0 :                                         goto yy4;
    9212             :                                 }
    9213             :                         }
    9214             :                 }
    9215             :         }
    9216             :         YYDEBUG(458, *YYCURSOR);
    9217         160 :         yyaccept = 0;
    9218         160 :         yych = *(YYMARKER = ++YYCURSOR);
    9219         160 :         if (yych <= 'V') {
    9220         160 :                 if (yych <= 'D') {
    9221         160 :                         if (yych <= ' ') {
    9222          16 :                                 if (yych == '\t') goto yy61;
    9223          16 :                                 if (yych <= 0x1F) goto yy4;
    9224          16 :                                 goto yy61;
    9225             :                         } else {
    9226         144 :                                 if (yych <= '/') goto yy4;
    9227         144 :                                 if (yych <= '9') goto yy459;
    9228           0 :                                 if (yych <= 'C') goto yy4;
    9229           0 :                                 goto yy61;
    9230             :                         }
    9231             :                 } else {
    9232           0 :                         if (yych <= 'H') {
    9233           0 :                                 if (yych == 'F') goto yy61;
    9234           0 :                                 if (yych <= 'G') goto yy4;
    9235           0 :                                 goto yy61;
    9236             :                         } else {
    9237           0 :                                 if (yych <= 'M') {
    9238           0 :                                         if (yych <= 'L') goto yy4;
    9239           0 :                                         goto yy61;
    9240             :                                 } else {
    9241           0 :                                         if (yych <= 'R') goto yy4;
    9242           0 :                                         if (yych <= 'T') goto yy61;
    9243           0 :                                         goto yy4;
    9244             :                                 }
    9245             :                         }
    9246             :                 }
    9247             :         } else {
    9248           0 :                 if (yych <= 'h') {
    9249           0 :                         if (yych <= 'c') {
    9250           0 :                                 if (yych == 'X') goto yy4;
    9251           0 :                                 if (yych <= 'Y') goto yy61;
    9252           0 :                                 goto yy4;
    9253             :                         } else {
    9254           0 :                                 if (yych <= 'e') {
    9255           0 :                                         if (yych <= 'd') goto yy61;
    9256           0 :                                         goto yy4;
    9257             :                                 } else {
    9258           0 :                                         if (yych == 'g') goto yy4;
    9259           0 :                                         goto yy61;
    9260             :                                 }
    9261             :                         }
    9262             :                 } else {
    9263           0 :                         if (yych <= 't') {
    9264           0 :                                 if (yych == 'm') goto yy61;
    9265           0 :                                 if (yych <= 'r') goto yy4;
    9266           0 :                                 goto yy61;
    9267             :                         } else {
    9268           0 :                                 if (yych <= 'w') {
    9269           0 :                                         if (yych <= 'v') goto yy4;
    9270           0 :                                         goto yy61;
    9271             :                                 } else {
    9272           0 :                                         if (yych == 'y') goto yy61;
    9273           0 :                                         goto yy4;
    9274             :                                 }
    9275             :                         }
    9276             :                 }
    9277             :         }
    9278             : yy459:
    9279             :         YYDEBUG(459, *YYCURSOR);
    9280         144 :         yyaccept = 0;
    9281         144 :         yych = *(YYMARKER = ++YYCURSOR);
    9282         144 :         if (yybm[0+yych] & 2) {
    9283          22 :                 goto yy55;
    9284             :         }
    9285         122 :         if (yych <= 'V') {
    9286         122 :                 if (yych <= 'D') {
    9287         122 :                         if (yych <= ' ') {
    9288         120 :                                 if (yych == '\t') goto yy61;
    9289         120 :                                 if (yych <= 0x1F) goto yy4;
    9290           4 :                                 goto yy61;
    9291             :                         } else {
    9292           2 :                                 if (yych == '-') goto yy446;
    9293           0 :                                 if (yych <= 'C') goto yy4;
    9294           0 :                                 goto yy61;
    9295             :                         }
    9296             :                 } else {
    9297           0 :                         if (yych <= 'H') {
    9298           0 :                                 if (yych == 'F') goto yy61;
    9299           0 :                                 if (yych <= 'G') goto yy4;
    9300           0 :                                 goto yy61;
    9301             :                         } else {
    9302           0 :                                 if (yych <= 'M') {
    9303           0 :                                         if (yych <= 'L') goto yy4;
    9304           0 :                                         goto yy61;
    9305             :                                 } else {
    9306           0 :                                         if (yych <= 'R') goto yy4;
    9307           0 :                                         if (yych <= 'T') goto yy61;
    9308           0 :                                         goto yy4;
    9309             :                                 }
    9310             :                         }
    9311             :                 }
    9312             :         } else {
    9313           0 :                 if (yych <= 'h') {
    9314           0 :                         if (yych <= 'c') {
    9315           0 :                                 if (yych == 'X') goto yy4;
    9316           0 :                                 if (yych <= 'Y') goto yy61;
    9317           0 :                                 goto yy4;
    9318             :                         } else {
    9319           0 :                                 if (yych <= 'e') {
    9320           0 :                                         if (yych <= 'd') goto yy61;
    9321           0 :                                         goto yy4;
    9322             :                                 } else {
    9323           0 :                                         if (yych == 'g') goto yy4;
    9324           0 :                                         goto yy61;
    9325             :                                 }
    9326             :                         }
    9327             :                 } else {
    9328           0 :                         if (yych <= 't') {
    9329           0 :                                 if (yych == 'm') goto yy61;
    9330           0 :                                 if (yych <= 'r') goto yy4;
    9331           0 :                                 goto yy61;
    9332             :                         } else {
    9333           0 :                                 if (yych <= 'w') {
    9334           0 :                                         if (yych <= 'v') goto yy4;
    9335           0 :                                         goto yy61;
    9336             :                                 } else {
    9337           0 :                                         if (yych == 'y') goto yy61;
    9338           0 :                                         goto yy4;
    9339             :                                 }
    9340             :                         }
    9341             :                 }
    9342             :         }
    9343             : yy460:
    9344             :         YYDEBUG(460, *YYCURSOR);
    9345           0 :         yych = *++YYCURSOR;
    9346           0 :         if (yych <= '/') goto yy462;
    9347           0 :         if (yych <= '0') goto yy736;
    9348           0 :         if (yych <= '1') goto yy737;
    9349           0 :         if (yych <= '9') goto yy738;
    9350           0 :         goto yy462;
    9351             : yy461:
    9352             :         YYDEBUG(461, *YYCURSOR);
    9353          45 :         ++YYCURSOR;
    9354          45 :         if ((YYLIMIT - YYCURSOR) < 13) YYFILL(13);
    9355          45 :         yych = *YYCURSOR;
    9356             : yy462:
    9357             :         YYDEBUG(462, *YYCURSOR);
    9358             :         YYDEBUG(-1, yych);
    9359         103 :         switch (yych) {
    9360             :         case '\t':
    9361          45 :         case ' ':       goto yy461;
    9362             :         case '-':
    9363           0 :         case '.':       goto yy577;
    9364             :         case 'A':
    9365           6 :         case 'a':       goto yy480;
    9366             :         case 'D':
    9367           3 :         case 'd':       goto yy466;
    9368             :         case 'F':
    9369           0 :         case 'f':       goto yy467;
    9370             :         case 'H':
    9371           2 :         case 'h':       goto yy64;
    9372           0 :         case 'I':       goto yy475;
    9373             :         case 'J':
    9374          15 :         case 'j':       goto yy479;
    9375             :         case 'M':
    9376           4 :         case 'm':       goto yy465;
    9377             :         case 'N':
    9378           0 :         case 'n':       goto yy482;
    9379             :         case 'O':
    9380           6 :         case 'o':       goto yy481;
    9381             :         case 'P':
    9382           3 :         case 'p':       goto yy484;
    9383             :         case 'S':
    9384           3 :         case 's':       goto yy463;
    9385             :         case 'T':
    9386          15 :         case 't':       goto yy69;
    9387           0 :         case 'V':       goto yy477;
    9388             :         case 'W':
    9389           0 :         case 'w':       goto yy68;
    9390           0 :         case 'X':       goto yy478;
    9391             :         case 'Y':
    9392           0 :         case 'y':       goto yy67;
    9393           1 :         default:        goto yy57;
    9394             :         }
    9395             : yy463:
    9396             :         YYDEBUG(463, *YYCURSOR);
    9397           3 :         yych = *++YYCURSOR;
    9398           3 :         if (yych <= 'U') {
    9399           0 :                 if (yych <= 'D') {
    9400           0 :                         if (yych == 'A') goto yy127;
    9401           0 :                         goto yy57;
    9402             :                 } else {
    9403           0 :                         if (yych <= 'E') goto yy1049;
    9404           0 :                         if (yych <= 'T') goto yy57;
    9405           0 :                         goto yy126;
    9406             :                 }
    9407             :         } else {
    9408           3 :                 if (yych <= 'd') {
    9409           0 :                         if (yych == 'a') goto yy127;
    9410           0 :                         goto yy57;
    9411             :                 } else {
    9412           3 :                         if (yych <= 'e') goto yy1049;
    9413           0 :                         if (yych == 'u') goto yy126;
    9414           0 :                         goto yy57;
    9415             :                 }
    9416             :         }
    9417             : yy464:
    9418             :         YYDEBUG(464, *YYCURSOR);
    9419           0 :         yych = *++YYCURSOR;
    9420           0 :         if (yych <= '`') {
    9421           0 :                 if (yych <= 'D') {
    9422           0 :                         if (yych == 'A') goto yy127;
    9423           0 :                         goto yy57;
    9424             :                 } else {
    9425           0 :                         if (yych <= 'E') goto yy1049;
    9426           0 :                         if (yych == 'U') goto yy126;
    9427           0 :                         goto yy57;
    9428             :                 }
    9429             :         } else {
    9430           0 :                 if (yych <= 'e') {
    9431           0 :                         if (yych <= 'a') goto yy127;
    9432           0 :                         if (yych <= 'd') goto yy57;
    9433           0 :                         goto yy1049;
    9434             :                 } else {
    9435           0 :                         if (yych <= 's') goto yy57;
    9436           0 :                         if (yych <= 't') goto yy729;
    9437           0 :                         if (yych <= 'u') goto yy126;
    9438           0 :                         goto yy57;
    9439             :                 }
    9440             :         }
    9441             : yy465:
    9442             :         YYDEBUG(465, *YYCURSOR);
    9443           5 :         yych = *++YYCURSOR;
    9444           5 :         if (yych <= 'O') {
    9445           0 :                 if (yych <= 'H') {
    9446           0 :                         if (yych == 'A') goto yy592;
    9447           0 :                         goto yy57;
    9448             :                 } else {
    9449           0 :                         if (yych <= 'I') goto yy118;
    9450           0 :                         if (yych <= 'N') goto yy57;
    9451           0 :                         goto yy117;
    9452             :                 }
    9453             :         } else {
    9454           5 :                 if (yych <= 'h') {
    9455           2 :                         if (yych == 'a') goto yy592;
    9456           0 :                         goto yy57;
    9457             :                 } else {
    9458           3 :                         if (yych <= 'i') goto yy118;
    9459           3 :                         if (yych == 'o') goto yy117;
    9460           0 :                         goto yy57;
    9461             :                 }
    9462             :         }
    9463             : yy466:
    9464             :         YYDEBUG(466, *YYCURSOR);
    9465           4 :         yych = *++YYCURSOR;
    9466           4 :         if (yych <= 'E') {
    9467           0 :                 if (yych == 'A') goto yy114;
    9468           0 :                 if (yych <= 'D') goto yy57;
    9469           0 :                 goto yy579;
    9470             :         } else {
    9471           4 :                 if (yych <= 'a') {
    9472           2 :                         if (yych <= '`') goto yy57;
    9473           2 :                         goto yy114;
    9474             :                 } else {
    9475           2 :                         if (yych == 'e') goto yy579;
    9476           0 :                         goto yy57;
    9477             :                 }
    9478             :         }
    9479             : yy467:
    9480             :         YYDEBUG(467, *YYCURSOR);
    9481          41 :         yych = *++YYCURSOR;
    9482          41 :         if (yych <= 'R') {
    9483           0 :                 if (yych <= 'N') {
    9484           0 :                         if (yych == 'E') goto yy595;
    9485           0 :                         goto yy57;
    9486             :                 } else {
    9487           0 :                         if (yych <= 'O') goto yy99;
    9488           0 :                         if (yych <= 'Q') goto yy57;
    9489           0 :                         goto yy98;
    9490             :                 }
    9491             :         } else {
    9492          41 :                 if (yych <= 'n') {
    9493          41 :                         if (yych == 'e') goto yy595;
    9494           0 :                         goto yy57;
    9495             :                 } else {
    9496           0 :                         if (yych <= 'o') goto yy99;
    9497           0 :                         if (yych == 'r') goto yy98;
    9498           0 :                         goto yy57;
    9499             :                 }
    9500             :         }
    9501             : yy468:
    9502             :         YYDEBUG(468, *YYCURSOR);
    9503           2 :         yych = *++YYCURSOR;
    9504           2 :         if (yych <= 'U') {
    9505           0 :                 if (yych == 'H') goto yy70;
    9506           0 :                 if (yych <= 'T') goto yy57;
    9507           0 :                 goto yy71;
    9508             :         } else {
    9509           2 :                 if (yych <= 'h') {
    9510           2 :                         if (yych <= 'g') goto yy57;
    9511           2 :                         goto yy1048;
    9512             :                 } else {
    9513           0 :                         if (yych == 'u') goto yy71;
    9514           0 :                         goto yy57;
    9515             :                 }
    9516             :         }
    9517             : yy469:
    9518             :         YYDEBUG(469, *YYCURSOR);
    9519           3 :         yych = *++YYCURSOR;
    9520           3 :         if (yych == '-') goto yy742;
    9521           3 :         if (yych <= '/') goto yy61;
    9522           3 :         if (yych <= '9') goto yy741;
    9523           0 :         goto yy61;
    9524             : yy470:
    9525             :         YYDEBUG(470, *YYCURSOR);
    9526           0 :         yych = *++YYCURSOR;
    9527           0 :         if (yych <= 'c') {
    9528           0 :                 if (yych == 'O') goto yy530;
    9529           0 :                 goto yy57;
    9530             :         } else {
    9531           0 :                 if (yych <= 'd') goto yy729;
    9532           0 :                 if (yych == 'o') goto yy530;
    9533           0 :                 goto yy57;
    9534             :         }
    9535             : yy471:
    9536             :         YYDEBUG(471, *YYCURSOR);
    9537           0 :         yych = *++YYCURSOR;
    9538           0 :         if (yych == 'd') goto yy729;
    9539           0 :         goto yy57;
    9540             : yy472:
    9541             :         YYDEBUG(472, *YYCURSOR);
    9542           6 :         yych = *++YYCURSOR;
    9543             :         YYDEBUG(-1, yych);
    9544           6 :         switch (yych) {
    9545             :         case '0':
    9546             :         case '1':
    9547           4 :         case '2':       goto yy666;
    9548           0 :         case '3':       goto yy668;
    9549             :         case '4':
    9550             :         case '5':
    9551             :         case '6':
    9552             :         case '7':
    9553             :         case '8':
    9554           0 :         case '9':       goto yy669;
    9555             :         case 'A':
    9556           0 :         case 'a':       goto yy673;
    9557             :         case 'D':
    9558           0 :         case 'd':       goto yy677;
    9559             :         case 'F':
    9560           0 :         case 'f':       goto yy671;
    9561             :         case 'J':
    9562           0 :         case 'j':       goto yy670;
    9563             :         case 'M':
    9564           0 :         case 'm':       goto yy672;
    9565             :         case 'N':
    9566           0 :         case 'n':       goto yy676;
    9567             :         case 'O':
    9568           2 :         case 'o':       goto yy675;
    9569             :         case 'S':
    9570           0 :         case 's':       goto yy674;
    9571           0 :         default:        goto yy57;
    9572             :         }
    9573             : yy473:
    9574             :         YYDEBUG(473, *YYCURSOR);
    9575           6 :         yych = *++YYCURSOR;
    9576             :         YYDEBUG(-1, yych);
    9577           6 :         switch (yych) {
    9578           5 :         case '0':       goto yy616;
    9579           0 :         case '1':       goto yy617;
    9580             :         case '2':
    9581             :         case '3':
    9582             :         case '4':
    9583             :         case '5':
    9584             :         case '6':
    9585             :         case '7':
    9586             :         case '8':
    9587           1 :         case '9':       goto yy618;
    9588             :         case 'A':
    9589           0 :         case 'a':       goto yy622;
    9590             :         case 'D':
    9591           0 :         case 'd':       goto yy626;
    9592             :         case 'F':
    9593           0 :         case 'f':       goto yy620;
    9594             :         case 'J':
    9595           0 :         case 'j':       goto yy619;
    9596             :         case 'M':
    9597           0 :         case 'm':       goto yy621;
    9598             :         case 'N':
    9599           0 :         case 'n':       goto yy625;
    9600             :         case 'O':
    9601           0 :         case 'o':       goto yy624;
    9602             :         case 'S':
    9603           0 :         case 's':       goto yy623;
    9604           0 :         default:        goto yy578;
    9605             :         }
    9606             : yy474:
    9607             :         YYDEBUG(474, *YYCURSOR);
    9608           9 :         yych = *++YYCURSOR;
    9609           9 :         if (yych <= '1') {
    9610           0 :                 if (yych <= '/') goto yy578;
    9611           0 :                 if (yych <= '0') goto yy568;
    9612           0 :                 goto yy569;
    9613             :         } else {
    9614           9 :                 if (yych <= '5') goto yy570;
    9615           1 :                 if (yych <= '9') goto yy571;
    9616           0 :                 goto yy578;
    9617             :         }
    9618             : yy475:
    9619             :         YYDEBUG(475, *YYCURSOR);
    9620           0 :         yyaccept = 10;
    9621           0 :         yych = *(YYMARKER = ++YYCURSOR);
    9622           0 :         if (yych <= '/') {
    9623           0 :                 if (yych <= 0x1F) {
    9624           0 :                         if (yych == '\t') goto yy532;
    9625             :                 } else {
    9626           0 :                         if (yych <= ' ') goto yy532;
    9627           0 :                         if (yych <= ',') goto yy476;
    9628           0 :                         if (yych <= '.') goto yy532;
    9629             :                 }
    9630             :         } else {
    9631           0 :                 if (yych <= 'U') {
    9632           0 :                         if (yych <= '9') goto yy534;
    9633           0 :                         if (yych == 'I') goto yy567;
    9634             :                 } else {
    9635           0 :                         if (yych == 'W') goto yy476;
    9636           0 :                         if (yych <= 'X') goto yy540;
    9637             :                 }
    9638             :         }
    9639             : yy476:
    9640             :         YYDEBUG(476, *YYCURSOR);
    9641             : #line 1431 "ext/date/lib/parse_date.re"
    9642             :         {
    9643             :                 DEBUG_OUTPUT("datenoyearrev");
    9644             :                 TIMELIB_INIT;
    9645             :                 TIMELIB_HAVE_DATE();
    9646             :                 s->time->d = timelib_get_nr((char **) &ptr, 2);
    9647             :                 timelib_skip_day_suffix((char **) &ptr);
    9648             :                 s->time->m = timelib_get_month((char **) &ptr);
    9649             :                 TIMELIB_DEINIT;
    9650             :                 return TIMELIB_DATE_TEXT;
    9651             :         }
    9652             : #line 9653 "ext/date/lib/parse_date.c"
    9653             : yy477:
    9654             :         YYDEBUG(477, *YYCURSOR);
    9655           1 :         yyaccept = 10;
    9656           1 :         yych = *(YYMARKER = ++YYCURSOR);
    9657           1 :         if (yych <= ',') {
    9658           0 :                 if (yych <= '\t') {
    9659           0 :                         if (yych <= 0x08) goto yy476;
    9660           0 :                         goto yy532;
    9661             :                 } else {
    9662           0 :                         if (yych == ' ') goto yy532;
    9663           0 :                         goto yy476;
    9664             :                 }
    9665             :         } else {
    9666           1 :                 if (yych <= '9') {
    9667           0 :                         if (yych <= '.') goto yy532;
    9668           0 :                         if (yych <= '/') goto yy476;
    9669           0 :                         goto yy534;
    9670             :                 } else {
    9671           1 :                         if (yych == 'I') goto yy565;
    9672           0 :                         goto yy476;
    9673             :                 }
    9674             :         }
    9675             : yy478:
    9676             :         YYDEBUG(478, *YYCURSOR);
    9677           0 :         yyaccept = 10;
    9678           0 :         yych = *(YYMARKER = ++YYCURSOR);
    9679           0 :         if (yych <= ',') {
    9680           0 :                 if (yych <= '\t') {
    9681           0 :                         if (yych <= 0x08) goto yy476;
    9682           0 :                         goto yy532;
    9683             :                 } else {
    9684           0 :                         if (yych == ' ') goto yy532;
    9685           0 :                         goto yy476;
    9686             :                 }
    9687             :         } else {
    9688           0 :                 if (yych <= '9') {
    9689           0 :                         if (yych <= '.') goto yy532;
    9690           0 :                         if (yych <= '/') goto yy476;
    9691           0 :                         goto yy534;
    9692             :                 } else {
    9693           0 :                         if (yych == 'I') goto yy564;
    9694           0 :                         goto yy476;
    9695             :                 }
    9696             :         }
    9697             : yy479:
    9698             :         YYDEBUG(479, *YYCURSOR);
    9699          25 :         yych = *++YYCURSOR;
    9700          25 :         if (yych <= 'U') {
    9701           0 :                 if (yych == 'A') goto yy557;
    9702           0 :                 if (yych <= 'T') goto yy57;
    9703           0 :                 goto yy556;
    9704             :         } else {
    9705          25 :                 if (yych <= 'a') {
    9706           7 :                         if (yych <= '`') goto yy57;
    9707           7 :                         goto yy557;
    9708             :                 } else {
    9709          18 :                         if (yych == 'u') goto yy556;
    9710           0 :                         goto yy57;
    9711             :                 }
    9712             :         }
    9713             : yy480:
    9714             :         YYDEBUG(480, *YYCURSOR);
    9715           6 :         yych = *++YYCURSOR;
    9716           6 :         if (yych <= 'T') {
    9717           2 :                 if (yych <= 'L') {
    9718           2 :                         if (yych == '.') goto yy485;
    9719           0 :                         goto yy57;
    9720             :                 } else {
    9721           0 :                         if (yych <= 'M') goto yy486;
    9722           0 :                         if (yych == 'P') goto yy550;
    9723           0 :                         goto yy57;
    9724             :                 }
    9725             :         } else {
    9726           4 :                 if (yych <= 'o') {
    9727           4 :                         if (yych <= 'U') goto yy549;
    9728           4 :                         if (yych == 'm') goto yy486;
    9729           0 :                         goto yy57;
    9730             :                 } else {
    9731           0 :                         if (yych <= 'p') goto yy550;
    9732           0 :                         if (yych == 'u') goto yy549;
    9733           0 :                         goto yy57;
    9734             :                 }
    9735             :         }
    9736             : yy481:
    9737             :         YYDEBUG(481, *YYCURSOR);
    9738           6 :         yych = *++YYCURSOR;
    9739           6 :         if (yych == 'C') goto yy544;
    9740           6 :         if (yych == 'c') goto yy544;
    9741           1 :         goto yy57;
    9742             : yy482:
    9743             :         YYDEBUG(482, *YYCURSOR);
    9744           6 :         yych = *++YYCURSOR;
    9745           6 :         if (yych == 'O') goto yy530;
    9746           6 :         if (yych == 'o') goto yy530;
    9747           0 :         goto yy57;
    9748             : yy483:
    9749             :         YYDEBUG(483, *YYCURSOR);
    9750        1201 :         yych = *++YYCURSOR;
    9751        1201 :         if (yych <= '/') goto yy57;
    9752        1201 :         if (yych <= '5') goto yy490;
    9753           0 :         if (yych <= '9') goto yy492;
    9754           0 :         goto yy57;
    9755             : yy484:
    9756             :         YYDEBUG(484, *YYCURSOR);
    9757           3 :         yych = *++YYCURSOR;
    9758           3 :         if (yych <= 'L') {
    9759           1 :                 if (yych != '.') goto yy57;
    9760             :         } else {
    9761           2 :                 if (yych <= 'M') goto yy486;
    9762           2 :                 if (yych == 'm') goto yy486;
    9763           0 :                 goto yy57;
    9764             :         }
    9765             : yy485:
    9766             :         YYDEBUG(485, *YYCURSOR);
    9767           3 :         yych = *++YYCURSOR;
    9768           3 :         if (yych == 'M') goto yy486;
    9769           3 :         if (yych != 'm') goto yy57;
    9770             : yy486:
    9771             :         YYDEBUG(486, *YYCURSOR);
    9772           9 :         yych = *++YYCURSOR;
    9773           9 :         if (yych <= 0x1F) {
    9774           4 :                 if (yych <= 0x00) goto yy488;
    9775           0 :                 if (yych == '\t') goto yy488;
    9776           0 :                 goto yy57;
    9777             :         } else {
    9778           5 :                 if (yych <= ' ') goto yy488;
    9779           3 :                 if (yych != '.') goto yy57;
    9780             :         }
    9781             :         YYDEBUG(487, *YYCURSOR);
    9782           3 :         yych = *++YYCURSOR;
    9783           3 :         if (yych <= '\t') {
    9784           3 :                 if (yych <= 0x00) goto yy488;
    9785           0 :                 if (yych <= 0x08) goto yy57;
    9786             :         } else {
    9787           0 :                 if (yych != ' ') goto yy57;
    9788             :         }
    9789             : yy488:
    9790             :         YYDEBUG(488, *YYCURSOR);
    9791          22 :         ++YYCURSOR;
    9792             :         YYDEBUG(489, *YYCURSOR);
    9793             : #line 1149 "ext/date/lib/parse_date.re"
    9794             :         {
    9795             :                 DEBUG_OUTPUT("timetiny12 | timeshort12 | timelong12");
    9796             :                 TIMELIB_INIT;
    9797             :                 TIMELIB_HAVE_TIME();
    9798             :                 s->time->h = timelib_get_nr((char **) &ptr, 2);
    9799             :                 if (*ptr == ':' || *ptr == '.') {
    9800             :                         s->time->i = timelib_get_nr((char **) &ptr, 2);
    9801             :                         if (*ptr == ':' || *ptr == '.') {
    9802             :                                 s->time->s = timelib_get_nr((char **) &ptr, 2);
    9803             :                         }
    9804             :                 }
    9805             :                 s->time->h += timelib_meridian((char **) &ptr, s->time->h);
    9806             :                 TIMELIB_DEINIT;
    9807             :                 return TIMELIB_TIME12;
    9808             :         }
    9809             : #line 9810 "ext/date/lib/parse_date.c"
    9810             : yy490:
    9811             :         YYDEBUG(490, *YYCURSOR);
    9812        1201 :         yyaccept = 11;
    9813        1201 :         yych = *(YYMARKER = ++YYCURSOR);
    9814        1201 :         if (yych <= '/') {
    9815           0 :                 if (yych == '.') goto yy493;
    9816             :         } else {
    9817        1201 :                 if (yych <= '9') goto yy507;
    9818           0 :                 if (yych <= ':') goto yy493;
    9819             :         }
    9820             : yy491:
    9821             :         YYDEBUG(491, *YYCURSOR);
    9822             : #line 1186 "ext/date/lib/parse_date.re"
    9823             :         {
    9824             :                 int tz_not_found;
    9825             :                 DEBUG_OUTPUT("timeshort24 | timelong24 | iso8601long");
    9826             :                 TIMELIB_INIT;
    9827             :                 TIMELIB_HAVE_TIME();
    9828             :                 s->time->h = timelib_get_nr((char **) &ptr, 2);
    9829             :                 s->time->i = timelib_get_nr((char **) &ptr, 2);
    9830             :                 if (*ptr == ':' || *ptr == '.') {
    9831             :                         s->time->s = timelib_get_nr((char **) &ptr, 2);
    9832             : 
    9833             :                         if (*ptr == '.') {
    9834             :                                 s->time->f = timelib_get_frac_nr((char **) &ptr, 8);
    9835             :                         }
    9836             :                 }
    9837             : 
    9838             :                 if (*ptr != '\0') {
    9839             :                         s->time->z = timelib_get_zone((char **) &ptr, &s->time->dst, s->time, &tz_not_found, s->tzdb, tz_get_wrapper);
    9840             :                         if (tz_not_found) {
    9841             :                                 add_error(s, "The timezone could not be found in the database");
    9842             :                         }
    9843             :                 }
    9844             :                 TIMELIB_DEINIT;
    9845             :                 return TIMELIB_TIME24_WITH_ZONE;
    9846             :         }
    9847             : #line 9848 "ext/date/lib/parse_date.c"
    9848             : yy492:
    9849             :         YYDEBUG(492, *YYCURSOR);
    9850           0 :         yyaccept = 11;
    9851           0 :         yych = *(YYMARKER = ++YYCURSOR);
    9852           0 :         if (yych == '.') goto yy493;
    9853           0 :         if (yych != ':') goto yy491;
    9854             : yy493:
    9855             :         YYDEBUG(493, *YYCURSOR);
    9856           0 :         yych = *++YYCURSOR;
    9857           0 :         if (yych <= '/') goto yy57;
    9858           0 :         if (yych <= '5') goto yy494;
    9859           0 :         if (yych <= '6') goto yy495;
    9860           0 :         if (yych <= '9') goto yy496;
    9861           0 :         goto yy57;
    9862             : yy494:
    9863             :         YYDEBUG(494, *YYCURSOR);
    9864           0 :         yyaccept = 11;
    9865           0 :         yych = *(YYMARKER = ++YYCURSOR);
    9866           0 :         if (yych == '.') goto yy497;
    9867           0 :         if (yych <= '/') goto yy491;
    9868           0 :         if (yych <= '9') goto yy500;
    9869           0 :         goto yy491;
    9870             : yy495:
    9871             :         YYDEBUG(495, *YYCURSOR);
    9872           0 :         yyaccept = 11;
    9873           0 :         yych = *(YYMARKER = ++YYCURSOR);
    9874           0 :         if (yych == '.') goto yy497;
    9875           0 :         if (yych == '0') goto yy500;
    9876           0 :         goto yy491;
    9877             : yy496:
    9878             :         YYDEBUG(496, *YYCURSOR);
    9879        2113 :         yyaccept = 11;
    9880        2113 :         yych = *(YYMARKER = ++YYCURSOR);
    9881        2113 :         if (yych != '.') goto yy491;
    9882             : yy497:
    9883             :         YYDEBUG(497, *YYCURSOR);
    9884          20 :         yych = *++YYCURSOR;
    9885          20 :         if (yych <= '/') goto yy57;
    9886          20 :         if (yych >= ':') goto yy57;
    9887             : yy498:
    9888             :         YYDEBUG(498, *YYCURSOR);
    9889         112 :         ++YYCURSOR;
    9890         112 :         if (YYLIMIT <= YYCURSOR) YYFILL(1);
    9891         112 :         yych = *YYCURSOR;
    9892             :         YYDEBUG(499, *YYCURSOR);
    9893         112 :         if (yych <= '/') goto yy491;
    9894          94 :         if (yych <= '9') goto yy498;
    9895           2 :         goto yy491;
    9896             : yy500:
    9897             :         YYDEBUG(500, *YYCURSOR);
    9898           0 :         yyaccept = 11;
    9899           0 :         yych = *(YYMARKER = ++YYCURSOR);
    9900           0 :         if (yych <= '@') {
    9901           0 :                 if (yych <= 0x1F) {
    9902           0 :                         if (yych != '\t') goto yy491;
    9903             :                 } else {
    9904           0 :                         if (yych <= ' ') goto yy501;
    9905           0 :                         if (yych == '.') goto yy497;
    9906           0 :                         goto yy491;
    9907             :                 }
    9908             :         } else {
    9909           0 :                 if (yych <= '`') {
    9910           0 :                         if (yych <= 'A') goto yy503;
    9911           0 :                         if (yych == 'P') goto yy503;
    9912           0 :                         goto yy491;
    9913             :                 } else {
    9914           0 :                         if (yych <= 'a') goto yy503;
    9915           0 :                         if (yych == 'p') goto yy503;
    9916           0 :                         goto yy491;
    9917             :                 }
    9918             :         }
    9919             : yy501:
    9920             :         YYDEBUG(501, *YYCURSOR);
    9921         863 :         ++YYCURSOR;
    9922         863 :         if ((YYLIMIT - YYCURSOR) < 5) YYFILL(5);
    9923         863 :         yych = *YYCURSOR;
    9924             :         YYDEBUG(502, *YYCURSOR);
    9925         863 :         if (yych <= 'A') {
    9926         116 :                 if (yych <= 0x1F) {
    9927           0 :                         if (yych == '\t') goto yy501;
    9928           0 :                         goto yy57;
    9929             :                 } else {
    9930         116 :                         if (yych <= ' ') goto yy501;
    9931         116 :                         if (yych <= '@') goto yy57;
    9932             :                 }
    9933             :         } else {
    9934         747 :                 if (yych <= '`') {
    9935         747 :                         if (yych != 'P') goto yy57;
    9936             :                 } else {
    9937           0 :                         if (yych <= 'a') goto yy503;
    9938           0 :                         if (yych != 'p') goto yy57;
    9939             :                 }
    9940             :         }
    9941             : yy503:
    9942             :         YYDEBUG(503, *YYCURSOR);
    9943           6 :         yych = *++YYCURSOR;
    9944           6 :         if (yych <= 'L') {
    9945           1 :                 if (yych != '.') goto yy57;