]> granicus.if.org Git - php/commitdiff
MFB51:
authorIlia Alshanetsky <iliaa@php.net>
Tue, 29 Nov 2005 01:31:52 +0000 (01:31 +0000)
committerIlia Alshanetsky <iliaa@php.net>
Tue, 29 Nov 2005 01:31:52 +0000 (01:31 +0000)
Fixed bug #35422 (strtotime() does not parse times with UTC as timezone).
Fixed bug #35414 (strtotime() no longer works with ordinal suffix).

ext/date/lib/parse_date.c
ext/date/lib/parse_date.re
ext/date/lib/timezonemap.h
ext/date/tests/bug35414.phpt [new file with mode: 0644]
ext/date/tests/bug35422.phpt [new file with mode: 0644]

index 7b75909c7726d74602a3377e93f40e21b6fb6c96..2c4cff05f01336b917161b729a44694b10b35464 100644 (file)
@@ -1,4 +1,4 @@
-/* Generated by re2c 0.9.8 on Mon Nov 28 17:23:45 2005 */
+/* Generated by re2c 0.9.8 on Mon Nov 28 20:22:18 2005 */
 #line 1 "parse_date.re"
 /*
    +----------------------------------------------------------------------+
@@ -826,7 +826,7 @@ yy2:        ++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy132;
-       case 'e':       goto yy1335;
+       case 'e':       goto yy1392;
        default:        goto yy3;
        }
 yy3:
@@ -883,16 +883,16 @@ yy4:      yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy132;
-       case 'E':       case 'e':       goto yy612;
-       case 'I':       case 'i':       goto yy613;
-       case 'O':       goto yy608;
-       case 'o':       goto yy1329;
+       case 'E':       case 'e':       goto yy614;
+       case 'I':       case 'i':       goto yy615;
+       case 'O':       goto yy610;
+       case 'o':       goto yy1386;
        default:        goto yy3;
        }
 yy5:   yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
-       case 'A':       case 'a':       goto yy707;
+       case 'A':       case 'a':       goto yy709;
        case 'B':
        case 'C':
        case 'D':
@@ -936,8 +936,8 @@ yy5:        yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy132;
-       case 'O':       case 'o':       goto yy710;
-       case 'i':       goto yy1323;
+       case 'O':       case 'o':       goto yy712;
+       case 'i':       goto yy1380;
        default:        goto yy3;
        }
 yy6:   yych = *++YYCURSOR;
@@ -980,13 +980,13 @@ yy6:      yych = *++YYCURSOR;
        case 'H':       case 'h':       goto yy475;
        case 'U':       case 'u':       goto yy476;
        case 'W':       case 'w':       goto yy477;
-       case 'o':       goto yy1311;
+       case 'o':       goto yy1368;
        default:        goto yy3;
        }
 yy7:   yyaccept = 0;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '-':       goto yy1307;
+       case '-':       goto yy1364;
        case '1':
        case '2':
        case '3':
@@ -995,7 +995,7 @@ yy7:        yyaccept = 0;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1308;
+       case '9':       goto yy1365;
        default:        goto yy8;
        }
 yy8:
@@ -1029,14 +1029,11 @@ yy9:    yyaccept = 0;
        case 'T':       case 'V':
        case 'W':
        case 'X':
-       case 'Y':       case 'a':       case 'd':       case 'f':       case 'h':       case 'j':       case 'm':
-       case 'n':
-       case 'o':       case 's':
-       case 't':       case 'w':       case 'y':       goto yy1264;
-       case '-':       goto yy791;
-       case '.':       goto yy1273;
-       case '/':       goto yy790;
-       case '0':       goto yy1306;
+       case 'Y':       goto yy1328;
+       case '-':       goto yy807;
+       case '.':       goto yy1330;
+       case '/':       goto yy806;
+       case '0':       goto yy1363;
        case '1':
        case '2':
        case '3':
@@ -1045,8 +1042,26 @@ yy9:     yyaccept = 0;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1305;
-       case ':':       goto yy1274;
+       case '9':       goto yy1362;
+       case ':':       goto yy1331;
+       case 'a':       goto yy1326;
+       case 'b':
+       case 'c':       case 'e':       case 'g':       case 'i':       case 'k':
+       case 'l':       case 'p':
+       case 'q':
+       case 'r':       case 'u':
+       case 'v':       case 'x':       case 'z':       goto yy801;
+       case 'd':       goto yy793;
+       case 'f':       goto yy796;
+       case 'h':       goto yy791;
+       case 'j':       goto yy802;
+       case 'm':       goto yy790;
+       case 'n':       goto yy803;
+       case 'o':       goto yy804;
+       case 's':       goto yy788;
+       case 't':       goto yy798;
+       case 'w':       goto yy794;
+       case 'y':       goto yy797;
        default:        goto yy8;
        }
 yy10:  yyaccept = 0;
@@ -1073,25 +1088,39 @@ yy10:   yyaccept = 0;
        case 'T':       case 'V':
        case 'W':
        case 'X':
-       case 'Y':       case 'a':       case 'd':       case 'f':       case 'h':       case 'j':       case 'm':
-       case 'n':
-       case 'o':
-       case 'p':       case 's':
-       case 't':       case 'w':       case 'y':       goto yy784;
-       case '-':       goto yy791;
-       case '.':       goto yy794;
-       case '/':       goto yy790;
+       case 'Y':       goto yy786;
+       case '-':       goto yy807;
+       case '.':       goto yy810;
+       case '/':       goto yy806;
        case '0':
        case '1':
-       case '2':       goto yy1305;
+       case '2':       goto yy1362;
        case '3':
        case '4':
        case '5':
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1272;
-       case ':':       goto yy803;
+       case '9':       goto yy1329;
+       case ':':       goto yy819;
+       case 'a':       goto yy800;
+       case 'b':
+       case 'c':       case 'e':       case 'g':       case 'i':       case 'k':
+       case 'l':       case 'q':
+       case 'r':       case 'u':
+       case 'v':       case 'x':       case 'z':       goto yy801;
+       case 'd':       goto yy793;
+       case 'f':       goto yy796;
+       case 'h':       goto yy791;
+       case 'j':       goto yy802;
+       case 'm':       goto yy790;
+       case 'n':       goto yy803;
+       case 'o':       goto yy804;
+       case 'p':       goto yy805;
+       case 's':       goto yy788;
+       case 't':       goto yy798;
+       case 'w':       goto yy794;
+       case 'y':       goto yy797;
        default:        goto yy8;
        }
 yy11:  yyaccept = 0;
@@ -1118,25 +1147,39 @@ yy11:   yyaccept = 0;
        case 'T':       case 'V':
        case 'W':
        case 'X':
-       case 'Y':       case 'a':       case 'd':       case 'f':       case 'h':       case 'j':       case 'm':
-       case 'n':
-       case 'o':
-       case 'p':       case 's':
-       case 't':       case 'w':       case 'y':       goto yy784;
-       case '-':       goto yy791;
-       case '.':       goto yy794;
-       case '/':       goto yy790;
+       case 'Y':       goto yy786;
+       case '-':       goto yy807;
+       case '.':       goto yy810;
+       case '/':       goto yy806;
        case '0':
        case '1':
        case '2':
-       case '3':       goto yy1272;
+       case '3':       goto yy1329;
        case '4':
        case '5':
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1262;
-       case ':':       goto yy803;
+       case '9':       goto yy1325;
+       case ':':       goto yy819;
+       case 'a':       goto yy800;
+       case 'b':
+       case 'c':       case 'e':       case 'g':       case 'i':       case 'k':
+       case 'l':       case 'q':
+       case 'r':       case 'u':
+       case 'v':       case 'x':       case 'z':       goto yy801;
+       case 'd':       goto yy793;
+       case 'f':       goto yy796;
+       case 'h':       goto yy791;
+       case 'j':       goto yy802;
+       case 'm':       goto yy790;
+       case 'n':       goto yy803;
+       case 'o':       goto yy804;
+       case 'p':       goto yy805;
+       case 's':       goto yy788;
+       case 't':       goto yy798;
+       case 'w':       goto yy794;
+       case 'y':       goto yy797;
        default:        goto yy8;
        }
 yy12:  yyaccept = 0;
@@ -1163,16 +1206,12 @@ yy12:   yyaccept = 0;
        case 'T':       case 'V':
        case 'W':
        case 'X':
-       case 'Y':       case 'a':       case 'd':       case 'f':       case 'h':       case 'j':       case 'm':
-       case 'n':
-       case 'o':
-       case 'p':       case 's':
-       case 't':       case 'w':       case 'y':       goto yy784;
-       case '-':       goto yy791;
-       case '.':       goto yy794;
-       case '/':       goto yy790;
+       case 'Y':       goto yy786;
+       case '-':       goto yy807;
+       case '.':       goto yy810;
+       case '/':       goto yy806;
        case '0':
-       case '1':       goto yy1262;
+       case '1':       goto yy1325;
        case '2':
        case '3':
        case '4':
@@ -1180,8 +1219,26 @@ yy12:    yyaccept = 0;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy789;
-       case ':':       goto yy803;
+       case '9':       goto yy799;
+       case ':':       goto yy819;
+       case 'a':       goto yy800;
+       case 'b':
+       case 'c':       case 'e':       case 'g':       case 'i':       case 'k':
+       case 'l':       case 'q':
+       case 'r':       case 'u':
+       case 'v':       case 'x':       case 'z':       goto yy801;
+       case 'd':       goto yy793;
+       case 'f':       goto yy796;
+       case 'h':       goto yy791;
+       case 'j':       goto yy802;
+       case 'm':       goto yy790;
+       case 'n':       goto yy803;
+       case 'o':       goto yy804;
+       case 'p':       goto yy805;
+       case 's':       goto yy788;
+       case 't':       goto yy798;
+       case 'w':       goto yy794;
+       case 'y':       goto yy797;
        default:        goto yy8;
        }
 yy13:  yyaccept = 0;
@@ -1208,14 +1265,10 @@ yy13:   yyaccept = 0;
        case 'T':       case 'V':
        case 'W':
        case 'X':
-       case 'Y':       case 'a':       case 'd':       case 'f':       case 'h':       case 'j':       case 'm':
-       case 'n':
-       case 'o':
-       case 'p':       case 's':
-       case 't':       case 'w':       case 'y':       goto yy784;
-       case '-':       goto yy791;
-       case '.':       goto yy794;
-       case '/':       goto yy790;
+       case 'Y':       goto yy786;
+       case '-':       goto yy807;
+       case '.':       goto yy810;
+       case '/':       goto yy806;
        case '0':
        case '1':
        case '2':
@@ -1225,8 +1278,26 @@ yy13:    yyaccept = 0;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy789;
-       case ':':       goto yy803;
+       case '9':       goto yy799;
+       case ':':       goto yy819;
+       case 'a':       goto yy800;
+       case 'b':
+       case 'c':       case 'e':       case 'g':       case 'i':       case 'k':
+       case 'l':       case 'q':
+       case 'r':       case 'u':
+       case 'v':       case 'x':       case 'z':       goto yy801;
+       case 'd':       goto yy793;
+       case 'f':       goto yy796;
+       case 'h':       goto yy791;
+       case 'j':       goto yy802;
+       case 'm':       goto yy790;
+       case 'n':       goto yy803;
+       case 'o':       goto yy804;
+       case 'p':       goto yy805;
+       case 's':       goto yy788;
+       case 't':       goto yy798;
+       case 'w':       goto yy794;
+       case 'y':       goto yy797;
        default:        goto yy8;
        }
 yy14:  yyaccept = 1;
@@ -1275,8 +1346,8 @@ yy14:     yyaccept = 1;
        case 'T':
        case 'U':       case 'W':       case 'Y':
        case 'Z':       goto yy132;
-       case 'I':       goto yy782;
-       case 'V':       case 'X':       goto yy781;
+       case 'I':       goto yy784;
+       case 'V':       case 'X':       goto yy783;
        case 'a':
        case 'b':
        case 'c':
@@ -1355,7 +1426,7 @@ yy15:     yyaccept = 1;
        case 'X':
        case 'Y':
        case 'Z':       goto yy132;
-       case 'I':       goto yy779;
+       case 'I':       goto yy781;
        case 'a':
        case 'b':
        case 'c':
@@ -1434,7 +1505,7 @@ yy16:     yyaccept = 1;
        case 'X':
        case 'Y':
        case 'Z':       goto yy132;
-       case 'I':       goto yy777;
+       case 'I':       goto yy779;
        case 'a':
        case 'b':
        case 'c':
@@ -1466,7 +1537,7 @@ yy16:     yyaccept = 1;
 yy17:  yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
-       case 'A':       goto yy760;
+       case 'A':       goto yy762;
        case 'B':
        case 'C':
        case 'D':
@@ -1490,8 +1561,8 @@ yy17:     yych = *++YYCURSOR;
        case 'X':
        case 'Y':
        case 'Z':       goto yy132;
-       case 'U':       goto yy759;
-       case 'a':       goto yy769;
+       case 'U':       goto yy761;
+       case 'a':       goto yy771;
        case 'b':
        case 'c':
        case 'd':
@@ -1515,13 +1586,13 @@ yy17:   yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy135;
-       case 'u':       goto yy768;
+       case 'u':       goto yy770;
        default:        goto yy3;
        }
 yy18:  yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
-       case 'A':       case 'a':       goto yy760;
+       case 'A':       case 'a':       goto yy762;
        case 'B':
        case 'C':
        case 'D':
@@ -1567,7 +1638,7 @@ yy18:     yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy132;
-       case 'U':       case 'u':       goto yy759;
+       case 'U':       case 'u':       goto yy761;
        default:        goto yy3;
        }
 yy19:  yych = *++YYCURSOR;
@@ -1591,10 +1662,10 @@ yy19:   yych = *++YYCURSOR;
        case 'X':
        case 'Y':
        case 'Z':       goto yy132;
-       case 'E':       goto yy723;
-       case 'I':       goto yy724;
-       case 'O':       goto yy725;
-       case 'R':       goto yy726;
+       case 'E':       goto yy725;
+       case 'I':       goto yy726;
+       case 'O':       goto yy727;
+       case 'R':       goto yy728;
        case 'a':
        case 'b':
        case 'c':
@@ -1613,10 +1684,10 @@ yy19:   yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy135;
-       case 'e':       goto yy741;
-       case 'i':       goto yy742;
-       case 'o':       goto yy743;
-       case 'r':       goto yy744;
+       case 'e':       goto yy743;
+       case 'i':       goto yy744;
+       case 'o':       goto yy745;
+       case 'r':       goto yy746;
        default:        goto yy3;
        }
 yy20:  yych = *++YYCURSOR;
@@ -1657,16 +1728,16 @@ yy20:   yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy132;
-       case 'E':       case 'e':       goto yy723;
-       case 'I':       case 'i':       goto yy724;
-       case 'O':       case 'o':       goto yy725;
-       case 'R':       case 'r':       goto yy726;
+       case 'E':       case 'e':       goto yy725;
+       case 'I':       case 'i':       goto yy726;
+       case 'O':       case 'o':       goto yy727;
+       case 'R':       case 'r':       goto yy728;
        default:        goto yy3;
        }
 yy21:  yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
-       case 'A':       goto yy707;
+       case 'A':       goto yy709;
        case 'B':
        case 'C':
        case 'D':
@@ -1690,8 +1761,8 @@ yy21:     yych = *++YYCURSOR;
        case 'X':
        case 'Y':
        case 'Z':       goto yy132;
-       case 'O':       goto yy710;
-       case 'a':       goto yy708;
+       case 'O':       goto yy712;
+       case 'a':       goto yy710;
        case 'b':
        case 'c':
        case 'd':
@@ -1715,7 +1786,7 @@ yy21:     yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy135;
-       case 'o':       goto yy709;
+       case 'o':       goto yy711;
        default:        goto yy3;
        }
 yy22:  yych = *++YYCURSOR;
@@ -1741,9 +1812,9 @@ yy22:     yych = *++YYCURSOR;
        case 'X':
        case 'Y':
        case 'Z':       goto yy132;
-       case 'G':       goto yy690;
-       case 'P':       goto yy689;
-       case 'U':       goto yy688;
+       case 'G':       goto yy692;
+       case 'P':       goto yy691;
+       case 'U':       goto yy690;
        case 'a':
        case 'b':
        case 'c':
@@ -1764,9 +1835,9 @@ yy22:     yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy135;
-       case 'g':       goto yy700;
-       case 'p':       goto yy699;
-       case 'u':       goto yy698;
+       case 'g':       goto yy702;
+       case 'p':       goto yy701;
+       case 'u':       goto yy700;
        default:        goto yy3;
        }
 yy23:  yych = *++YYCURSOR;
@@ -1811,15 +1882,15 @@ yy23:   yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy132;
-       case 'G':       case 'g':       goto yy690;
-       case 'P':       case 'p':       goto yy689;
-       case 'U':       case 'u':       goto yy688;
+       case 'G':       case 'g':       goto yy692;
+       case 'P':       case 'p':       goto yy691;
+       case 'U':       case 'u':       goto yy690;
        default:        goto yy3;
        }
 yy24:  yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
-       case 'A':       goto yy641;
+       case 'A':       goto yy643;
        case 'B':
        case 'C':
        case 'D':       case 'F':
@@ -1839,10 +1910,10 @@ yy24:   yych = *++YYCURSOR;
        case 'X':
        case 'Y':
        case 'Z':       goto yy132;
-       case 'E':       goto yy640;
-       case 'I':       goto yy642;
-       case 'U':       goto yy643;
-       case 'a':       goto yy665;
+       case 'E':       goto yy642;
+       case 'I':       goto yy644;
+       case 'U':       goto yy645;
+       case 'a':       goto yy667;
        case 'b':
        case 'c':
        case 'd':       case 'f':
@@ -1862,15 +1933,15 @@ yy24:   yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy135;
-       case 'e':       goto yy664;
-       case 'i':       goto yy666;
-       case 'u':       goto yy667;
+       case 'e':       goto yy666;
+       case 'i':       goto yy668;
+       case 'u':       goto yy669;
        default:        goto yy3;
        }
 yy25:  yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
-       case 'A':       case 'a':       goto yy641;
+       case 'A':       case 'a':       goto yy643;
        case 'B':
        case 'C':
        case 'D':       case 'F':
@@ -1908,9 +1979,9 @@ yy25:     yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy132;
-       case 'E':       case 'e':       goto yy640;
-       case 'I':       case 'i':       goto yy642;
-       case 'U':       case 'u':       goto yy643;
+       case 'E':       case 'e':       goto yy642;
+       case 'I':       case 'i':       goto yy644;
+       case 'U':       case 'u':       goto yy645;
        default:        goto yy3;
        }
 yy26:  yych = *++YYCURSOR;
@@ -1940,7 +2011,7 @@ yy26:     yych = *++YYCURSOR;
        case 'X':
        case 'Y':
        case 'Z':       goto yy132;
-       case 'C':       goto yy630;
+       case 'C':       goto yy632;
        case 'a':
        case 'b':       case 'd':
        case 'e':
@@ -1965,7 +2036,7 @@ yy26:     yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy135;
-       case 'c':       goto yy635;
+       case 'c':       goto yy637;
        default:        goto yy3;
        }
 yy27:  yych = *++YYCURSOR;
@@ -2018,7 +2089,7 @@ yy27:     yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy132;
-       case 'C':       case 'c':       goto yy630;
+       case 'C':       case 'c':       goto yy632;
        default:        goto yy3;
        }
 yy28:  yych = *++YYCURSOR;
@@ -2044,9 +2115,9 @@ yy28:     yych = *++YYCURSOR;
        case 'X':
        case 'Y':
        case 'Z':       goto yy132;
-       case 'E':       goto yy612;
-       case 'I':       goto yy613;
-       case 'O':       goto yy608;
+       case 'E':       goto yy614;
+       case 'I':       goto yy615;
+       case 'O':       goto yy610;
        case 'a':
        case 'b':
        case 'c':
@@ -2067,9 +2138,9 @@ yy28:     yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy135;
-       case 'e':       goto yy610;
-       case 'i':       goto yy611;
-       case 'o':       goto yy609;
+       case 'e':       goto yy612;
+       case 'i':       goto yy613;
+       case 'o':       goto yy611;
        default:        goto yy3;
        }
 yy29:  yych = *++YYCURSOR;
@@ -2124,7 +2195,7 @@ yy29:     yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy135;
-       case 'e':       goto yy601;
+       case 'e':       goto yy603;
        default:        goto yy3;
        }
 yy30:  yych = *++YYCURSOR;
@@ -2865,7 +2936,7 @@ yy45:
 {
                goto std;
        }
-#line 2869 "<stdout>"
+#line 2940 "<stdout>"
 yy46:  yych = *++YYCURSOR;
        goto yy45;
 yy47:  ++YYCURSOR;
@@ -2876,7 +2947,7 @@ yy48:
                s->pos = cursor; s->line++;
                goto std;
        }
-#line 2880 "<stdout>"
+#line 2951 "<stdout>"
 yy49:  yych = *++YYCURSOR;
        goto yy8;
 yy50:  ++YYCURSOR;
@@ -2907,26 +2978,28 @@ yy51:   switch(yych){
        }
 yy52:  YYCURSOR = YYMARKER;
        switch(yyaccept){
-       case 12:        goto yy810;
-       case 21:        goto yy1277;
-       case 22:        goto yy1285;
-       case 13:        goto yy955;
-       case 19:        goto yy1184;
-       case 9: goto yy570;
-       case 18:        goto yy1049;
+       case 16:        goto yy823;
+       case 12:        goto yy826;
+       case 23:        goto yy1334;
+       case 24:        goto yy1342;
+       case 14:        goto yy973;
+       case 21:        goto yy1223;
+       case 13:        goto yy967;
+       case 9: goto yy572;
+       case 20:        goto yy1088;
        case 7: goto yy515;
-       case 11:        goto yy796;
-       case 17:        goto yy1082;
-       case 20:        goto yy1093;
-       case 16:        goto yy1075;
-       case 14:        goto yy988;
-       case 15:        goto yy1040;
-       case 10:        goto yy692;
+       case 11:        goto yy812;
+       case 19:        goto yy1121;
+       case 22:        goto yy1132;
+       case 18:        goto yy1114;
+       case 15:        goto yy1006;
+       case 17:        goto yy1079;
+       case 10:        goto yy694;
        case 6: goto yy195;
        case 5: goto yy163;
        case 4: goto yy156;
        case 1: goto yy3;
-       case 8: goto yy533;
+       case 8: goto yy535;
        case 3: goto yy72;
        case 2: goto yy45;
        case 0: goto yy8;
@@ -3102,7 +3175,7 @@ yy72:
                TIMELIB_DEINIT;
                return TIMELIB_RELATIVE;
        }
-#line 3106 "<stdout>"
+#line 3179 "<stdout>"
 yy73:  ++YYCURSOR;
        if(YYLIMIT == YYCURSOR) YYFILL(1);
        yych = *YYCURSOR;
@@ -4272,7 +4345,7 @@ yy156:
                DEBUG_OUTPUT("dayabbr");
                goto std;
        }
-#line 4276 "<stdout>"
+#line 4349 "<stdout>"
 yy157: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
@@ -4319,7 +4392,7 @@ yy163:
                TIMELIB_DEINIT;
                return TIMELIB_RELATIVE;
        }
-#line 4323 "<stdout>"
+#line 4396 "<stdout>"
 yy164: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
@@ -4807,7 +4880,7 @@ yy195:
                TIMELIB_DEINIT;
                return TIMELIB_RELATIVE;
        }
-#line 4811 "<stdout>"
+#line 4884 "<stdout>"
 yy196: ++YYCURSOR;
        if(YYLIMIT == YYCURSOR) YYFILL(1);
        yych = *YYCURSOR;
@@ -12548,14 +12621,15 @@ yy512:        yyaccept = 1;
        }
 yy513: yych = *++YYCURSOR;
        switch(yych){
-       case '0':       goto yy590;
+       case '0':       goto yy592;
        case '1':
-       case '2':       goto yy591;
-       case '3':       goto yy592;
+       case '2':       goto yy593;
+       case '3':       goto yy594;
        default:        goto yy511;
        }
-yy514: ++YYCURSOR;
-       switch((yych = *YYCURSOR)) {
+yy514: yyaccept = 7;
+       yych = *(YYMARKER = ++YYCURSOR);
+       switch(yych){
        case '0':
        case '1':       case '3':
        case '4':
@@ -12563,9 +12637,28 @@ yy514: ++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy572;
-       case '2':       goto yy589;
-       default:        goto yy526;
+       case '9':       goto yy574;
+       case '2':       goto yy591;
+       case 'a':
+       case 'b':
+       case 'c':       case 'e':
+       case 'f':
+       case 'g':       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':       case 'o':
+       case 'p':
+       case 'q':       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy525;
+       case 'd':       case 'h':       case 'n':       case 'r':
+       case 's':
+       case 't':       goto yy526;
+       default:        goto yy528;
        }
 yy515:
 #line 1088 "parse_date.re"
@@ -12580,11 +12673,12 @@ yy515:
                TIMELIB_DEINIT;
                return TIMELIB_DATE_TEXT;
        }
-#line 12584 "<stdout>"
-yy516: yych = *++YYCURSOR;
+#line 12677 "<stdout>"
+yy516: yyaccept = 7;
+       yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case '0':
-       case '1':       goto yy572;
+       case '1':       goto yy574;
        case '2':       goto yy523;
        case '3':
        case '4':
@@ -12593,9 +12687,29 @@ yy516: yych = *++YYCURSOR;
        case '7':
        case '8':
        case '9':       goto yy524;
-       default:        goto yy526;
+       case 'a':
+       case 'b':
+       case 'c':       case 'e':
+       case 'f':
+       case 'g':       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':       case 'o':
+       case 'p':
+       case 'q':       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy525;
+       case 'd':       case 'h':       case 'n':       case 'r':
+       case 's':
+       case 't':       goto yy526;
+       default:        goto yy528;
        }
-yy517: yych = *++YYCURSOR;
+yy517: yyaccept = 7;
+       yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case '0':
        case '1':       goto yy522;
@@ -12607,7 +12721,26 @@ yy517: yych = *++YYCURSOR;
        case '7':
        case '8':
        case '9':       goto yy524;
-       default:        goto yy526;
+       case 'a':
+       case 'b':
+       case 'c':       case 'e':
+       case 'f':
+       case 'g':       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':       case 'o':
+       case 'p':
+       case 'q':       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy525;
+       case 'd':       case 'h':       case 'n':       case 'r':
+       case 's':
+       case 't':       goto yy526;
+       default:        goto yy528;
        }
 yy518: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
@@ -12634,7 +12767,7 @@ yy521:  yych = *++YYCURSOR;
 yy522: yyaccept = 7;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       case ':':       goto yy531;
+       case '.':       case ':':       goto yy533;
        case '0':
        case '1':
        case '2':
@@ -12644,29 +12777,29 @@ yy522:        yyaccept = 7;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy571;
+       case '9':       goto yy573;
        default:        goto yy515;
        }
 yy523: yyaccept = 7;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       case ':':       goto yy531;
+       case '.':       case ':':       goto yy533;
        case '0':
        case '1':
        case '2':
-       case '3':       goto yy571;
+       case '3':       goto yy573;
        case '4':
        case '5':
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy568;
+       case '9':       goto yy570;
        default:        goto yy515;
        }
 yy524: yyaccept = 7;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       case ':':       goto yy531;
+       case '.':       case ':':       goto yy533;
        case '0':
        case '1':
        case '2':
@@ -12676,33 +12809,83 @@ yy524:        yyaccept = 7;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy568;
+       case '9':       goto yy570;
        default:        goto yy515;
        }
-yy525: ++YYCURSOR;
+yy525: yych = *++YYCURSOR;
+       switch(yych){
+       case 'a':
+       case 'b':
+       case 'c':
+       case 'd':
+       case 'e':
+       case 'f':
+       case 'g':
+       case 'h':
+       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':
+       case 'n':
+       case 'o':
+       case 'p':
+       case 'q':
+       case 'r':
+       case 's':
+       case 't':
+       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy527;
+       default:        goto yy52;
+       }
+yy526: yych = *++YYCURSOR;
+       switch(yych){
+       case 'a':
+       case 'b':
+       case 'c':       case 'e':
+       case 'f':
+       case 'g':       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':       case 'o':
+       case 'p':
+       case 'q':       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy527;
+       default:        goto yy528;
+       }
+yy527: ++YYCURSOR;
        if((YYLIMIT - YYCURSOR) < 14) YYFILL(14);
        yych = *YYCURSOR;
-       goto yy526;
-yy526: switch(yych){
+       goto yy528;
+yy528: switch(yych){
        case ' ':       case ',':       case '.':       case 'd':       case 'h':       case 'n':       case 'r':
        case 's':
-       case 't':       goto yy525;
+       case 't':       goto yy527;
        case '0':
-       case '1':       goto yy527;
-       case '2':       goto yy528;
+       case '1':       goto yy529;
+       case '2':       goto yy530;
        case '3':
        case '4':
        case '5':
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy529;
+       case '9':       goto yy531;
        default:        goto yy515;
        }
-yy527: yyaccept = 7;
+yy529: yyaccept = 7;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       case ':':       goto yy531;
+       case '.':       case ':':       goto yy533;
        case '0':
        case '1':
        case '2':
@@ -12712,29 +12895,29 @@ yy527:        yyaccept = 7;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy567;
+       case '9':       goto yy569;
        default:        goto yy515;
        }
-yy528: yyaccept = 7;
+yy530: yyaccept = 7;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       case ':':       goto yy531;
+       case '.':       case ':':       goto yy533;
        case '0':
        case '1':
        case '2':
-       case '3':       goto yy567;
+       case '3':       goto yy569;
        case '4':
        case '5':
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy530;
+       case '9':       goto yy532;
        default:        goto yy515;
        }
-yy529: yyaccept = 7;
+yy531: yyaccept = 7;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       case ':':       goto yy531;
+       case '.':       case ':':       goto yy533;
        case '0':
        case '1':
        case '2':
@@ -12744,10 +12927,10 @@ yy529:        yyaccept = 7;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy530;
+       case '9':       goto yy532;
        default:        goto yy515;
        }
-yy530: yych = *++YYCURSOR;
+yy532: yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -12758,27 +12941,27 @@ yy530:        yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy565;
+       case '9':       goto yy567;
        default:        goto yy515;
        }
-yy531: yych = *++YYCURSOR;
+yy533: yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy532;
+       case '5':       goto yy534;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy534;
+       case '9':       goto yy536;
        default:        goto yy52;
        }
-yy532: yyaccept = 8;
+yy534: yyaccept = 8;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       case ':':       goto yy535;
+       case '.':       case ':':       goto yy537;
        case '0':
        case '1':
        case '2':
@@ -12788,10 +12971,10 @@ yy532:        yyaccept = 8;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy534;
-       default:        goto yy533;
+       case '9':       goto yy536;
+       default:        goto yy535;
        }
-yy533:
+yy535:
 #line 1317 "parse_date.re"
 {
                int tz_not_found;
@@ -12819,28 +13002,28 @@ yy533:
                TIMELIB_DEINIT;
                return TIMELIB_SHORTDATE_WITH_TIME;
        }
-#line 12823 "<stdout>"
-yy534: yyaccept = 8;
+#line 13006 "<stdout>"
+yy536: yyaccept = 8;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       case ':':       goto yy535;
-       default:        goto yy533;
+       case '.':       case ':':       goto yy537;
+       default:        goto yy535;
        }
-yy535: yych = *++YYCURSOR;
+yy537: yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy536;
-       case '6':       goto yy537;
+       case '5':       goto yy538;
+       case '6':       goto yy539;
        case '7':
        case '8':
-       case '9':       goto yy538;
+       case '9':       goto yy540;
        default:        goto yy52;
        }
-yy536: yych = *++YYCURSOR;
+yy538: yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -12851,22 +13034,22 @@ yy536:        yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy539;
-       default:        goto yy533;
+       case '9':       goto yy541;
+       default:        goto yy535;
        }
-yy537: yych = *++YYCURSOR;
+yy539: yych = *++YYCURSOR;
        switch(yych){
-       case '0':       goto yy539;
-       default:        goto yy533;
+       case '0':       goto yy541;
+       default:        goto yy535;
        }
-yy538: yych = *++YYCURSOR;
-       goto yy533;
-yy539: yyaccept = 8;
+yy540: yych = *++YYCURSOR;
+       goto yy535;
+yy541: yyaccept = 8;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case ' ':       goto yy540;
-       case '(':       goto yy543;
-       case '+':       case '-':       goto yy542;
+       case ' ':       goto yy542;
+       case '(':       goto yy545;
+       case '+':       case '-':       goto yy544;
        case 'A':
        case 'B':
        case 'C':
@@ -12892,7 +13075,7 @@ yy539:  yyaccept = 8;
        case 'W':
        case 'X':
        case 'Y':
-       case 'Z':       goto yy544;
+       case 'Z':       goto yy546;
        case 'a':
        case 'b':
        case 'c':
@@ -12918,17 +13101,17 @@ yy539:        yyaccept = 8;
        case 'w':
        case 'x':
        case 'y':
-       case 'z':       goto yy545;
-       default:        goto yy533;
+       case 'z':       goto yy547;
+       default:        goto yy535;
        }
-yy540: ++YYCURSOR;
+yy542: ++YYCURSOR;
        if((YYLIMIT - YYCURSOR) < 6) YYFILL(6);
        yych = *YYCURSOR;
-       goto yy541;
-yy541: switch(yych){
-       case ' ':       goto yy540;
-       case '(':       goto yy543;
-       case '+':       case '-':       goto yy542;
+       goto yy543;
+yy543: switch(yych){
+       case ' ':       goto yy542;
+       case '(':       goto yy545;
+       case '+':       case '-':       goto yy544;
        case 'A':
        case 'B':
        case 'C':
@@ -12954,7 +13137,7 @@ yy541:  switch(yych){
        case 'W':
        case 'X':
        case 'Y':
-       case 'Z':       goto yy544;
+       case 'Z':       goto yy546;
        case 'a':
        case 'b':
        case 'c':
@@ -12980,24 +13163,24 @@ yy541:        switch(yych){
        case 'w':
        case 'x':
        case 'y':
-       case 'z':       goto yy545;
+       case 'z':       goto yy547;
        default:        goto yy52;
        }
-yy542: yych = *++YYCURSOR;
+yy544: yych = *++YYCURSOR;
        switch(yych){
        case '0':
-       case '1':       goto yy558;
-       case '2':       goto yy559;
+       case '1':       goto yy560;
+       case '2':       goto yy561;
        case '3':
        case '4':
        case '5':
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy560;
+       case '9':       goto yy562;
        default:        goto yy52;
        }
-yy543: yych = *++YYCURSOR;
+yy545: yych = *++YYCURSOR;
        switch(yych){
        case 'A':
        case 'B':
@@ -13049,12 +13232,12 @@ yy543:        yych = *++YYCURSOR;
        case 'w':
        case 'x':
        case 'y':
-       case 'z':       goto yy545;
+       case 'z':       goto yy547;
        default:        goto yy52;
        }
-yy544: yych = *++YYCURSOR;
+yy546: yych = *++YYCURSOR;
        switch(yych){
-       case ')':       goto yy538;
+       case ')':       goto yy540;
        case 'A':
        case 'B':
        case 'C':
@@ -13080,7 +13263,7 @@ yy544:  yych = *++YYCURSOR;
        case 'W':
        case 'X':
        case 'Y':
-       case 'Z':       goto yy546;
+       case 'Z':       goto yy548;
        case 'a':
        case 'b':
        case 'c':
@@ -13106,12 +13289,12 @@ yy544:        yych = *++YYCURSOR;
        case 'w':
        case 'x':
        case 'y':
-       case 'z':       goto yy549;
-       default:        goto yy533;
+       case 'z':       goto yy551;
+       default:        goto yy535;
        }
-yy545: yych = *++YYCURSOR;
+yy547: yych = *++YYCURSOR;
        switch(yych){
-       case ')':       goto yy538;
+       case ')':       goto yy540;
        case 'A':
        case 'B':
        case 'C':
@@ -13162,12 +13345,12 @@ yy545:        yych = *++YYCURSOR;
        case 'w':
        case 'x':
        case 'y':
-       case 'z':       goto yy546;
-       default:        goto yy533;
+       case 'z':       goto yy548;
+       default:        goto yy535;
        }
-yy546: yych = *++YYCURSOR;
+yy548: yych = *++YYCURSOR;
        switch(yych){
-       case ')':       goto yy538;
+       case ')':       goto yy540;
        case 'A':
        case 'B':
        case 'C':
@@ -13218,12 +13401,12 @@ yy546:        yych = *++YYCURSOR;
        case 'w':
        case 'x':
        case 'y':
-       case 'z':       goto yy547;
-       default:        goto yy533;
+       case 'z':       goto yy549;
+       default:        goto yy535;
        }
-yy547: yych = *++YYCURSOR;
+yy549: yych = *++YYCURSOR;
        switch(yych){
-       case ')':       goto yy538;
+       case ')':       goto yy540;
        case 'A':
        case 'B':
        case 'C':
@@ -13274,19 +13457,19 @@ yy547:        yych = *++YYCURSOR;
        case 'w':
        case 'x':
        case 'y':
-       case 'z':       goto yy548;
-       default:        goto yy533;
+       case 'z':       goto yy550;
+       default:        goto yy535;
        }
-yy548: yych = *++YYCURSOR;
+yy550: yych = *++YYCURSOR;
        switch(yych){
-       case ')':       goto yy538;
-       default:        goto yy533;
+       case ')':       goto yy540;
+       default:        goto yy535;
        }
-yy549: yyaccept = 8;
+yy551: yyaccept = 8;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case ')':       goto yy538;
-       case '/':       case '_':       goto yy551;
+       case ')':       goto yy540;
+       case '/':       case '_':       goto yy553;
        case 'A':
        case 'B':
        case 'C':
@@ -13312,7 +13495,7 @@ yy549:  yyaccept = 8;
        case 'W':
        case 'X':
        case 'Y':
-       case 'Z':       goto yy547;
+       case 'Z':       goto yy549;
        case 'a':
        case 'b':
        case 'c':
@@ -13338,14 +13521,14 @@ yy549:        yyaccept = 8;
        case 'w':
        case 'x':
        case 'y':
-       case 'z':       goto yy550;
-       default:        goto yy533;
+       case 'z':       goto yy552;
+       default:        goto yy535;
        }
-yy550: yyaccept = 8;
+yy552: yyaccept = 8;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case ')':       goto yy538;
-       case '/':       case '_':       goto yy551;
+       case ')':       goto yy540;
+       case '/':       case '_':       goto yy553;
        case 'A':
        case 'B':
        case 'C':
@@ -13371,7 +13554,7 @@ yy550:  yyaccept = 8;
        case 'W':
        case 'X':
        case 'Y':
-       case 'Z':       goto yy548;
+       case 'Z':       goto yy550;
        case 'a':
        case 'b':
        case 'c':
@@ -13397,10 +13580,10 @@ yy550:        yyaccept = 8;
        case 'w':
        case 'x':
        case 'y':
-       case 'z':       goto yy555;
-       default:        goto yy533;
+       case 'z':       goto yy557;
+       default:        goto yy535;
        }
-yy551: ++YYCURSOR;
+yy553: ++YYCURSOR;
        if(YYLIMIT == YYCURSOR) YYFILL(1);
        yych = *YYCURSOR;
        switch(yych){
@@ -13429,10 +13612,10 @@ yy551:        ++YYCURSOR;
        case 'W':
        case 'X':
        case 'Y':
-       case 'Z':       goto yy552;
+       case 'Z':       goto yy554;
        default:        goto yy52;
        }
-yy552: ++YYCURSOR;
+yy554: ++YYCURSOR;
        if(YYLIMIT == YYCURSOR) YYFILL(1);
        yych = *YYCURSOR;
        switch(yych){
@@ -13461,16 +13644,16 @@ yy552:        ++YYCURSOR;
        case 'w':
        case 'x':
        case 'y':
-       case 'z':       goto yy553;
+       case 'z':       goto yy555;
        default:        goto yy52;
        }
-yy553: yyaccept = 8;
+yy555: yyaccept = 8;
        YYMARKER = ++YYCURSOR;
        if(YYLIMIT == YYCURSOR) YYFILL(1);
        yych = *YYCURSOR;
-       goto yy554;
-yy554: switch(yych){
-       case '/':       case '_':       goto yy551;
+       goto yy556;
+yy556: switch(yych){
+       case '/':       case '_':       goto yy553;
        case 'a':
        case 'b':
        case 'c':
@@ -13496,14 +13679,14 @@ yy554:        switch(yych){
        case 'w':
        case 'x':
        case 'y':
-       case 'z':       goto yy553;
-       default:        goto yy533;
+       case 'z':       goto yy555;
+       default:        goto yy535;
        }
-yy555: yyaccept = 8;
+yy557: yyaccept = 8;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case ')':       goto yy538;
-       case '/':       case '_':       goto yy551;
+       case ')':       goto yy540;
+       case '/':       case '_':       goto yy553;
        case 'a':
        case 'b':
        case 'c':
@@ -13529,15 +13712,15 @@ yy555:        yyaccept = 8;
        case 'w':
        case 'x':
        case 'y':
-       case 'z':       goto yy556;
-       default:        goto yy533;
+       case 'z':       goto yy558;
+       default:        goto yy535;
        }
-yy556: ++YYCURSOR;
+yy558: ++YYCURSOR;
        if(YYLIMIT == YYCURSOR) YYFILL(1);
        yych = *YYCURSOR;
-       goto yy557;
-yy557: switch(yych){
-       case '/':       case '_':       goto yy551;
+       goto yy559;
+yy559: switch(yych){
+       case '/':       case '_':       goto yy553;
        case 'a':
        case 'b':
        case 'c':
@@ -13563,37 +13746,37 @@ yy557:        switch(yych){
        case 'w':
        case 'x':
        case 'y':
-       case 'z':       goto yy556;
+       case 'z':       goto yy558;
        default:        goto yy52;
        }
-yy558: yych = *++YYCURSOR;
+yy560: yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy563;
+       case '5':       goto yy565;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy560;
-       case ':':       goto yy561;
-       default:        goto yy533;
+       case '9':       goto yy562;
+       case ':':       goto yy563;
+       default:        goto yy535;
        }
-yy559: yyaccept = 8;
+yy561: yyaccept = 8;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case '0':
        case '1':
        case '2':
-       case '3':       goto yy563;
+       case '3':       goto yy565;
        case '4':
-       case '5':       goto yy562;
-       case ':':       goto yy561;
-       default:        goto yy533;
+       case '5':       goto yy564;
+       case ':':       goto yy563;
+       default:        goto yy535;
        }
-yy560: yyaccept = 8;
+yy562: yyaccept = 8;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case '0':
@@ -13601,11 +13784,11 @@ yy560:        yyaccept = 8;
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy562;
-       case ':':       goto yy561;
-       default:        goto yy533;
+       case '5':       goto yy564;
+       case ':':       goto yy563;
+       default:        goto yy535;
        }
-yy561: yyaccept = 8;
+yy563: yyaccept = 8;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case '0':
@@ -13613,10 +13796,10 @@ yy561:        yyaccept = 8;
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy562;
-       default:        goto yy533;
+       case '5':       goto yy564;
+       default:        goto yy535;
        }
-yy562: yych = *++YYCURSOR;
+yy564: yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -13627,25 +13810,25 @@ yy562:        yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy538;
+       case '9':       goto yy540;
        default:        goto yy52;
        }
-yy563: yych = *++YYCURSOR;
+yy565: yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy564;
+       case '5':       goto yy566;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy538;
-       case ':':       goto yy561;
-       default:        goto yy533;
+       case '9':       goto yy540;
+       case ':':       goto yy563;
+       default:        goto yy535;
        }
-yy564: yych = *++YYCURSOR;
+yy566: yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -13656,10 +13839,10 @@ yy564:        yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy538;
-       default:        goto yy533;
+       case '9':       goto yy540;
+       default:        goto yy535;
        }
-yy565: yych = *++YYCURSOR;
+yy567: yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -13670,15 +13853,15 @@ yy565:        yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy566;
+       case '9':       goto yy568;
        default:        goto yy515;
        }
-yy566: yych = *++YYCURSOR;
+yy568: yych = *++YYCURSOR;
        goto yy515;
-yy567: yyaccept = 7;
+yy569: yyaccept = 7;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       case ':':       goto yy531;
+       case '.':       case ':':       goto yy533;
        case '0':
        case '1':
        case '2':
@@ -13688,10 +13871,10 @@ yy567:        yyaccept = 7;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy565;
+       case '9':       goto yy567;
        default:        goto yy515;
        }
-yy568: yych = *++YYCURSOR;
+yy570: yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -13702,10 +13885,10 @@ yy568:        yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy569;
+       case '9':       goto yy571;
        default:        goto yy515;
        }
-yy569: ++YYCURSOR;
+yy571: ++YYCURSOR;
        switch((yych = *YYCURSOR)) {
        case '0':
        case '1':
@@ -13716,10 +13899,10 @@ yy569:        ++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy566;
-       default:        goto yy570;
+       case '9':       goto yy568;
+       default:        goto yy572;
        }
-yy570:
+yy572:
 #line 1062 "parse_date.re"
 {
                DEBUG_OUTPUT("datenoday");
@@ -13732,11 +13915,11 @@ yy570:
                TIMELIB_DEINIT;
                return TIMELIB_DATE_NO_DAY;
        }
-#line 13736 "<stdout>"
-yy571: yyaccept = 7;
+#line 13919 "<stdout>"
+yy573: yyaccept = 7;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       case ':':       goto yy531;
+       case '.':       case ':':       goto yy533;
        case '0':
        case '1':
        case '2':
@@ -13746,44 +13929,63 @@ yy571:        yyaccept = 7;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy569;
+       case '9':       goto yy571;
        default:        goto yy515;
        }
-yy572: yyaccept = 7;
+yy574: yyaccept = 7;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       goto yy573;
+       case '.':       goto yy575;
        case '0':
-       case '1':       goto yy574;
-       case '2':       goto yy575;
+       case '1':       goto yy576;
+       case '2':       goto yy577;
        case '3':
        case '4':
        case '5':
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy576;
-       case ':':       goto yy531;
-       default:        goto yy526;
+       case '9':       goto yy578;
+       case ':':       goto yy533;
+       case 'a':
+       case 'b':
+       case 'c':       case 'e':
+       case 'f':
+       case 'g':       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':       case 'o':
+       case 'p':
+       case 'q':       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy525;
+       case 'd':       case 'h':       case 'n':       case 'r':
+       case 's':
+       case 't':       goto yy526;
+       default:        goto yy528;
        }
-yy573: yych = *++YYCURSOR;
+yy575: yych = *++YYCURSOR;
        switch(yych){
        case '0':
-       case '1':       goto yy579;
-       case '2':       goto yy580;
+       case '1':       goto yy581;
+       case '2':       goto yy582;
        case '3':
        case '4':
-       case '5':       goto yy581;
+       case '5':       goto yy583;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy582;
-       default:        goto yy526;
+       case '9':       goto yy584;
+       default:        goto yy528;
        }
-yy574: yyaccept = 7;
+yy576: yyaccept = 7;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       case ':':       goto yy531;
+       case '.':       case ':':       goto yy533;
        case '0':
        case '1':
        case '2':
@@ -13793,29 +13995,29 @@ yy574:        yyaccept = 7;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy578;
+       case '9':       goto yy580;
        default:        goto yy515;
        }
-yy575: yyaccept = 7;
+yy577: yyaccept = 7;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       case ':':       goto yy531;
+       case '.':       case ':':       goto yy533;
        case '0':
        case '1':
        case '2':
-       case '3':       goto yy578;
+       case '3':       goto yy580;
        case '4':
        case '5':
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy577;
+       case '9':       goto yy579;
        default:        goto yy515;
        }
-yy576: yyaccept = 7;
+yy578: yyaccept = 7;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       case ':':       goto yy531;
+       case '.':       case ':':       goto yy533;
        case '0':
        case '1':
        case '2':
@@ -13825,10 +14027,10 @@ yy576:        yyaccept = 7;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy577;
+       case '9':       goto yy579;
        default:        goto yy515;
        }
-yy577: yych = *++YYCURSOR;
+yy579: yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -13839,13 +14041,13 @@ yy577:        yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy565;
-       default:        goto yy570;
+       case '9':       goto yy567;
+       default:        goto yy572;
        }
-yy578: yyaccept = 9;
+yy580: yyaccept = 9;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       case ':':       goto yy531;
+       case '.':       case ':':       goto yy533;
        case '0':
        case '1':
        case '2':
@@ -13855,13 +14057,13 @@ yy578:        yyaccept = 9;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy565;
-       default:        goto yy570;
+       case '9':       goto yy567;
+       default:        goto yy572;
        }
-yy579: yyaccept = 7;
+yy581: yyaccept = 7;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       case ':':       goto yy583;
+       case '.':       case ':':       goto yy585;
        case '0':
        case '1':
        case '2':
@@ -13871,29 +14073,29 @@ yy579:        yyaccept = 7;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy588;
+       case '9':       goto yy590;
        default:        goto yy515;
        }
-yy580: yyaccept = 7;
+yy582: yyaccept = 7;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       case ':':       goto yy583;
+       case '.':       case ':':       goto yy585;
        case '0':
        case '1':
        case '2':
-       case '3':       goto yy588;
+       case '3':       goto yy590;
        case '4':
        case '5':
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy587;
+       case '9':       goto yy589;
        default:        goto yy515;
        }
-yy581: yyaccept = 7;
+yy583: yyaccept = 7;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       case ':':       goto yy583;
+       case '.':       case ':':       goto yy585;
        case '0':
        case '1':
        case '2':
@@ -13903,13 +14105,13 @@ yy581:        yyaccept = 7;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy587;
+       case '9':       goto yy589;
        default:        goto yy515;
        }
-yy582: yyaccept = 7;
+yy584: yyaccept = 7;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       case ':':       goto yy583;
+       case '.':       case ':':       goto yy585;
        case '0':
        case '1':
        case '2':
@@ -13919,27 +14121,27 @@ yy582:        yyaccept = 7;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy530;
+       case '9':       goto yy532;
        default:        goto yy515;
        }
-yy583: yych = *++YYCURSOR;
+yy585: yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy584;
-       case '6':       goto yy585;
+       case '5':       goto yy586;
+       case '6':       goto yy587;
        case '7':
        case '8':
-       case '9':       goto yy534;
+       case '9':       goto yy536;
        default:        goto yy52;
        }
-yy584: yyaccept = 8;
+yy586: yyaccept = 8;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       case ':':       goto yy535;
+       case '.':       case ':':       goto yy537;
        case '0':
        case '1':
        case '2':
@@ -13949,23 +14151,23 @@ yy584:        yyaccept = 8;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy586;
-       default:        goto yy533;
+       case '9':       goto yy588;
+       default:        goto yy535;
        }
-yy585: yyaccept = 8;
+yy587: yyaccept = 8;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       case ':':       goto yy535;
-       case '0':       goto yy539;
-       default:        goto yy533;
+       case '.':       case ':':       goto yy537;
+       case '0':       goto yy541;
+       default:        goto yy535;
        }
-yy586: yyaccept = 8;
+yy588: yyaccept = 8;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case ' ':       goto yy540;
-       case '(':       goto yy543;
-       case '+':       case '-':       goto yy542;
-       case '.':       case ':':       goto yy535;
+       case ' ':       goto yy542;
+       case '(':       goto yy545;
+       case '+':       case '-':       goto yy544;
+       case '.':       case ':':       goto yy537;
        case 'A':
        case 'B':
        case 'C':
@@ -13991,7 +14193,7 @@ yy586:  yyaccept = 8;
        case 'W':
        case 'X':
        case 'Y':
-       case 'Z':       goto yy544;
+       case 'Z':       goto yy546;
        case 'a':
        case 'b':
        case 'c':
@@ -14017,13 +14219,13 @@ yy586:        yyaccept = 8;
        case 'w':
        case 'x':
        case 'y':
-       case 'z':       goto yy545;
-       default:        goto yy533;
+       case 'z':       goto yy547;
+       default:        goto yy535;
        }
-yy587: yyaccept = 7;
+yy589: yyaccept = 7;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       case ':':       goto yy535;
+       case '.':       case ':':       goto yy537;
        case '0':
        case '1':
        case '2':
@@ -14033,13 +14235,13 @@ yy587:        yyaccept = 7;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy565;
+       case '9':       goto yy567;
        default:        goto yy515;
        }
-yy588: yyaccept = 7;
+yy590: yyaccept = 7;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       case ':':       goto yy583;
+       case '.':       case ':':       goto yy585;
        case '0':
        case '1':
        case '2':
@@ -14049,56 +14251,116 @@ yy588:       yyaccept = 7;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy565;
+       case '9':       goto yy567;
        default:        goto yy515;
        }
-yy589: yyaccept = 7;
+yy591: yyaccept = 7;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       goto yy573;
+       case '.':       goto yy575;
        case '0':
-       case '1':       goto yy574;
-       case '2':       goto yy575;
+       case '1':       goto yy576;
+       case '2':       goto yy577;
        case '3':
        case '4':
        case '5':
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy576;
-       case ':':       goto yy531;
-       default:        goto yy526;
+       case '9':       goto yy578;
+       case ':':       goto yy533;
+       case 'a':
+       case 'b':
+       case 'c':       case 'e':
+       case 'f':
+       case 'g':       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':       case 'o':
+       case 'p':
+       case 'q':       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy525;
+       case 'd':       case 'h':       case 'n':       case 'r':
+       case 's':
+       case 't':       goto yy526;
+       default:        goto yy528;
        }
-yy590: yych = *++YYCURSOR;
+yy592: yyaccept = 7;
+       yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '0':       goto yy572;
+       case '0':       goto yy574;
        case '1':       case '3':
        case '4':
        case '5':
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy593;
-       case '2':       goto yy600;
-       default:        goto yy526;
-       }
-yy591: yych = *++YYCURSOR;
-       switch(yych){
-       case '0':
-       case '1':       case '3':
-       case '4':
-       case '5':
-       case '6':
-       case '7':
+       case '9':       goto yy595;
+       case '2':       goto yy602;
+       case 'a':
+       case 'b':
+       case 'c':       case 'e':
+       case 'f':
+       case 'g':       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':       case 'o':
+       case 'p':
+       case 'q':       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy525;
+       case 'd':       case 'h':       case 'n':       case 'r':
+       case 's':
+       case 't':       goto yy526;
+       default:        goto yy528;
+       }
+yy593: yyaccept = 7;
+       yych = *(YYMARKER = ++YYCURSOR);
+       switch(yych){
+       case '0':
+       case '1':       case '3':
+       case '4':
+       case '5':
+       case '6':
+       case '7':
        case '8':
-       case '9':       goto yy593;
-       case '2':       goto yy600;
-       default:        goto yy526;
+       case '9':       goto yy595;
+       case '2':       goto yy602;
+       case 'a':
+       case 'b':
+       case 'c':       case 'e':
+       case 'f':
+       case 'g':       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':       case 'o':
+       case 'p':
+       case 'q':       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy525;
+       case 'd':       case 'h':       case 'n':       case 'r':
+       case 's':
+       case 't':       goto yy526;
+       default:        goto yy528;
        }
-yy592: yych = *++YYCURSOR;
+yy594: yyaccept = 7;
+       yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case '0':
-       case '1':       goto yy593;
+       case '1':       goto yy595;
        case '2':       goto yy523;
        case '3':
        case '4':
@@ -14107,27 +14369,65 @@ yy592:        yych = *++YYCURSOR;
        case '7':
        case '8':
        case '9':       goto yy524;
-       default:        goto yy526;
+       case 'a':
+       case 'b':
+       case 'c':       case 'e':
+       case 'f':
+       case 'g':       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':       case 'o':
+       case 'p':
+       case 'q':       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy525;
+       case 'd':       case 'h':       case 'n':       case 'r':
+       case 's':
+       case 't':       goto yy526;
+       default:        goto yy528;
        }
-yy593: yyaccept = 7;
+yy595: yyaccept = 7;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '-':       goto yy594;
-       case '.':       goto yy573;
+       case '-':       goto yy596;
+       case '.':       goto yy575;
        case '0':
-       case '1':       goto yy574;
-       case '2':       goto yy575;
+       case '1':       goto yy576;
+       case '2':       goto yy577;
        case '3':
        case '4':
        case '5':
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy576;
-       case ':':       goto yy531;
-       default:        goto yy526;
+       case '9':       goto yy578;
+       case ':':       goto yy533;
+       case 'a':
+       case 'b':
+       case 'c':       case 'e':
+       case 'f':
+       case 'g':       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':       case 'o':
+       case 'p':
+       case 'q':       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy525;
+       case 'd':       case 'h':       case 'n':       case 'r':
+       case 's':
+       case 't':       goto yy526;
+       default:        goto yy528;
        }
-yy594: yych = *++YYCURSOR;
+yy596: yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -14138,10 +14438,10 @@ yy594:        yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy595;
+       case '9':       goto yy597;
        default:        goto yy52;
        }
-yy595: ++YYCURSOR;
+yy597: ++YYCURSOR;
        switch((yych = *YYCURSOR)) {
        case '0':
        case '1':
@@ -14152,10 +14452,10 @@ yy595:        ++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy597;
-       default:        goto yy596;
+       case '9':       goto yy599;
+       default:        goto yy598;
        }
-yy596:
+yy598:
 #line 1197 "parse_date.re"
 {
                DEBUG_OUTPUT("pgtextshort");
@@ -14168,8 +14468,8 @@ yy596:
                TIMELIB_DEINIT;
                return TIMELIB_PG_TEXT;
        }
-#line 14172 "<stdout>"
-yy597: yych = *++YYCURSOR;
+#line 14472 "<stdout>"
+yy599: yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -14180,10 +14480,10 @@ yy597:        yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy598;
-       default:        goto yy596;
+       case '9':       goto yy600;
+       default:        goto yy598;
        }
-yy598: yych = *++YYCURSOR;
+yy600: yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -14194,30 +14494,49 @@ yy598:        yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy599;
-       default:        goto yy596;
+       case '9':       goto yy601;
+       default:        goto yy598;
        }
-yy599: yych = *++YYCURSOR;
-       goto yy596;
-yy600: yyaccept = 7;
+yy601: yych = *++YYCURSOR;
+       goto yy598;
+yy602: yyaccept = 7;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '-':       goto yy594;
-       case '.':       goto yy573;
+       case '-':       goto yy596;
+       case '.':       goto yy575;
        case '0':
-       case '1':       goto yy574;
-       case '2':       goto yy575;
+       case '1':       goto yy576;
+       case '2':       goto yy577;
        case '3':
        case '4':
        case '5':
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy576;
-       case ':':       goto yy531;
-       default:        goto yy526;
+       case '9':       goto yy578;
+       case ':':       goto yy533;
+       case 'a':
+       case 'b':
+       case 'c':       case 'e':
+       case 'f':
+       case 'g':       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':       case 'o':
+       case 'p':
+       case 'q':       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy525;
+       case 'd':       case 'h':       case 'n':       case 'r':
+       case 's':
+       case 't':       goto yy526;
+       default:        goto yy528;
        }
-yy601: yyaccept = 1;
+yy603: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -14271,10 +14590,10 @@ yy601:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy136;
-       case 'c':       goto yy602;
+       case 'c':       goto yy604;
        default:        goto yy3;
        }
-yy602: yyaccept = 1;
+yy604: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -14349,10 +14668,10 @@ yy602:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy141;
-       case 'e':       goto yy603;
+       case 'e':       goto yy605;
        default:        goto yy3;
        }
-yy603: yyaccept = 1;
+yy605: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -14382,22 +14701,22 @@ yy603:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy142;
-       case 'm':       goto yy604;
+       case 'm':       goto yy606;
        default:        goto yy3;
        }
-yy604: yych = *++YYCURSOR;
+yy606: yych = *++YYCURSOR;
        switch(yych){
        case 'B':       goto yy520;
-       case 'b':       goto yy605;
+       case 'b':       goto yy607;
        default:        goto yy143;
        }
-yy605: yych = *++YYCURSOR;
+yy607: yych = *++YYCURSOR;
        switch(yych){
        case 'E':       goto yy521;
-       case 'e':       goto yy606;
+       case 'e':       goto yy608;
        default:        goto yy143;
        }
-yy606: yych = *++YYCURSOR;
+yy608: yych = *++YYCURSOR;
        switch(yych){
        case '/':       case '_':       goto yy137;
        case 'R':       goto yy510;
@@ -14425,10 +14744,10 @@ yy606:        yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy142;
-       case 'r':       goto yy607;
+       case 'r':       goto yy609;
        default:        goto yy52;
        }
-yy607: yych = *++YYCURSOR;
+yy609: yych = *++YYCURSOR;
        switch(yych){
        case '/':       case '_':       goto yy137;
        case 'a':
@@ -14459,7 +14778,7 @@ yy607:  yych = *++YYCURSOR;
        case 'z':       goto yy142;
        default:        goto yy511;
        }
-yy608: yych = *++YYCURSOR;
+yy610: yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -14509,10 +14828,10 @@ yy608:        yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy133;
-       case 'V':       case 'v':       goto yy620;
+       case 'V':       case 'v':       goto yy622;
        default:        goto yy3;
        }
-yy609: yyaccept = 1;
+yy611: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -14541,7 +14860,7 @@ yy609:  yyaccept = 1;
        case 'X':
        case 'Y':
        case 'Z':       goto yy133;
-       case 'V':       goto yy620;
+       case 'V':       goto yy622;
        case 'a':
        case 'b':
        case 'c':
@@ -14566,10 +14885,10 @@ yy609:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy136;
-       case 'v':       goto yy621;
+       case 'v':       goto yy623;
        default:        goto yy3;
        }
-yy610: yyaccept = 1;
+yy612: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -14598,7 +14917,7 @@ yy610:  yyaccept = 1;
        case 'V':
        case 'W':       case 'Y':
        case 'Z':       goto yy133;
-       case 'X':       goto yy616;
+       case 'X':       goto yy618;
        case 'a':
        case 'b':
        case 'c':
@@ -14623,10 +14942,10 @@ yy610:        yyaccept = 1;
        case 'v':
        case 'w':       case 'y':
        case 'z':       goto yy136;
-       case 'x':       goto yy619;
+       case 'x':       goto yy621;
        default:        goto yy3;
        }
-yy611: yyaccept = 1;
+yy613: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -14655,7 +14974,7 @@ yy611:  yyaccept = 1;
        case 'X':
        case 'Y':
        case 'Z':       goto yy133;
-       case 'N':       goto yy614;
+       case 'N':       goto yy616;
        case 'a':
        case 'b':
        case 'c':
@@ -14680,10 +14999,10 @@ yy611:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy136;
-       case 'n':       goto yy617;
+       case 'n':       goto yy619;
        default:        goto yy3;
        }
-yy612: yych = *++YYCURSOR;
+yy614: yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -14733,10 +15052,10 @@ yy612:        yych = *++YYCURSOR;
        case 'v':
        case 'w':       case 'y':
        case 'z':       goto yy133;
-       case 'X':       case 'x':       goto yy616;
+       case 'X':       case 'x':       goto yy618;
        default:        goto yy3;
        }
-yy613: yych = *++YYCURSOR;
+yy615: yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -14786,10 +15105,10 @@ yy613:        yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy133;
-       case 'N':       case 'n':       goto yy614;
+       case 'N':       case 'n':       goto yy616;
        default:        goto yy3;
        }
-yy614: yych = *++YYCURSOR;
+yy616: yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -14839,17 +15158,17 @@ yy614:        yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy134;
-       case 'T':       case 't':       goto yy615;
+       case 'T':       case 't':       goto yy617;
        default:        goto yy3;
        }
-yy615: yyaccept = 1;
+yy617: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
        case 'H':       case 'h':       goto yy178;
        default:        goto yy3;
        }
-yy616: yych = *++YYCURSOR;
+yy618: yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -14902,7 +15221,7 @@ yy616:  yych = *++YYCURSOR;
        case 'T':       case 't':       goto yy454;
        default:        goto yy3;
        }
-yy617: yyaccept = 1;
+yy619: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -14931,7 +15250,7 @@ yy617:  yyaccept = 1;
        case 'X':
        case 'Y':
        case 'Z':       goto yy134;
-       case 'T':       goto yy615;
+       case 'T':       goto yy617;
        case 'a':
        case 'b':
        case 'c':
@@ -14956,10 +15275,10 @@ yy617:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy141;
-       case 't':       goto yy618;
+       case 't':       goto yy620;
        default:        goto yy3;
        }
-yy618: yyaccept = 1;
+yy620: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -14992,7 +15311,7 @@ yy618:  yyaccept = 1;
        case 'h':       goto yy319;
        default:        goto yy3;
        }
-yy619: yyaccept = 1;
+yy621: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -15049,7 +15368,7 @@ yy619:  yyaccept = 1;
        case 't':       goto yy457;
        default:        goto yy3;
        }
-yy620: yyaccept = 1;
+yy622: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -15121,10 +15440,10 @@ yy620:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy134;
-       case 'E':       case 'e':       goto yy622;
+       case 'E':       case 'e':       goto yy624;
        default:        goto yy3;
        }
-yy621: yyaccept = 1;
+yy623: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -15174,7 +15493,7 @@ yy621:  yyaccept = 1;
        case 'X':
        case 'Y':
        case 'Z':       goto yy134;
-       case 'E':       goto yy622;
+       case 'E':       goto yy624;
        case 'a':
        case 'b':
        case 'c':
@@ -15199,22 +15518,22 @@ yy621:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy141;
-       case 'e':       goto yy623;
+       case 'e':       goto yy625;
        default:        goto yy3;
        }
-yy622: yyaccept = 1;
+yy624: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
-       case 'M':       case 'm':       goto yy624;
+       case 'M':       case 'm':       goto yy626;
        default:        goto yy3;
        }
-yy623: yyaccept = 1;
+yy625: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
        case '/':       case '_':       goto yy137;
-       case 'M':       goto yy624;
+       case 'M':       goto yy626;
        case 'a':
        case 'b':
        case 'c':
@@ -15239,37 +15558,37 @@ yy623:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy142;
-       case 'm':       goto yy625;
+       case 'm':       goto yy627;
        default:        goto yy3;
        }
-yy624: yych = *++YYCURSOR;
+yy626: yych = *++YYCURSOR;
        switch(yych){
-       case 'B':       case 'b':       goto yy626;
+       case 'B':       case 'b':       goto yy628;
        default:        goto yy52;
        }
-yy625: yych = *++YYCURSOR;
+yy627: yych = *++YYCURSOR;
        switch(yych){
-       case 'B':       goto yy626;
-       case 'b':       goto yy627;
+       case 'B':       goto yy628;
+       case 'b':       goto yy629;
        default:        goto yy143;
        }
-yy626: yych = *++YYCURSOR;
+yy628: yych = *++YYCURSOR;
        switch(yych){
-       case 'E':       case 'e':       goto yy628;
+       case 'E':       case 'e':       goto yy630;
        default:        goto yy52;
        }
-yy627: yych = *++YYCURSOR;
+yy629: yych = *++YYCURSOR;
        switch(yych){
-       case 'E':       goto yy628;
-       case 'e':       goto yy629;
+       case 'E':       goto yy630;
+       case 'e':       goto yy631;
        default:        goto yy143;
        }
-yy628: yych = *++YYCURSOR;
+yy630: yych = *++YYCURSOR;
        switch(yych){
        case 'R':       case 'r':       goto yy510;
        default:        goto yy52;
        }
-yy629: yych = *++YYCURSOR;
+yy631: yych = *++YYCURSOR;
        switch(yych){
        case '/':       case '_':       goto yy137;
        case 'R':       goto yy510;
@@ -15297,10 +15616,10 @@ yy629:        yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy142;
-       case 'r':       goto yy607;
+       case 'r':       goto yy609;
        default:        goto yy52;
        }
-yy630: yych = *++YYCURSOR;
+yy632: yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -15350,10 +15669,10 @@ yy630:        yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy133;
-       case 'T':       case 't':       goto yy631;
+       case 'T':       case 't':       goto yy633;
        default:        goto yy3;
        }
-yy631: yyaccept = 1;
+yy633: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -15425,27 +15744,27 @@ yy631:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy134;
-       case 'O':       case 'o':       goto yy632;
+       case 'O':       case 'o':       goto yy634;
        default:        goto yy3;
        }
-yy632: yyaccept = 1;
+yy634: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
-       case 'B':       case 'b':       goto yy633;
+       case 'B':       case 'b':       goto yy635;
        default:        goto yy3;
        }
-yy633: yych = *++YYCURSOR;
+yy635: yych = *++YYCURSOR;
        switch(yych){
-       case 'E':       case 'e':       goto yy634;
+       case 'E':       case 'e':       goto yy636;
        default:        goto yy52;
        }
-yy634: yych = *++YYCURSOR;
+yy636: yych = *++YYCURSOR;
        switch(yych){
        case 'R':       case 'r':       goto yy510;
        default:        goto yy52;
        }
-yy635: yyaccept = 1;
+yy637: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -15474,7 +15793,7 @@ yy635:  yyaccept = 1;
        case 'X':
        case 'Y':
        case 'Z':       goto yy133;
-       case 'T':       goto yy631;
+       case 'T':       goto yy633;
        case 'a':
        case 'b':
        case 'c':
@@ -15499,10 +15818,10 @@ yy635:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy136;
-       case 't':       goto yy636;
+       case 't':       goto yy638;
        default:        goto yy3;
        }
-yy636: yyaccept = 1;
+yy638: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -15552,7 +15871,7 @@ yy636:  yyaccept = 1;
        case 'X':
        case 'Y':
        case 'Z':       goto yy134;
-       case 'O':       goto yy632;
+       case 'O':       goto yy634;
        case 'a':
        case 'b':
        case 'c':
@@ -15577,15 +15896,15 @@ yy636:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy141;
-       case 'o':       goto yy637;
+       case 'o':       goto yy639;
        default:        goto yy3;
        }
-yy637: yyaccept = 1;
+yy639: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
        case '/':       case '_':       goto yy137;
-       case 'B':       goto yy633;
+       case 'B':       goto yy635;
        case 'a':       case 'c':
        case 'd':
        case 'e':
@@ -15610,16 +15929,16 @@ yy637:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy142;
-       case 'b':       goto yy638;
+       case 'b':       goto yy640;
        default:        goto yy3;
        }
-yy638: yych = *++YYCURSOR;
+yy640: yych = *++YYCURSOR;
        switch(yych){
-       case 'E':       goto yy634;
-       case 'e':       goto yy639;
+       case 'E':       goto yy636;
+       case 'e':       goto yy641;
        default:        goto yy143;
        }
-yy639: yych = *++YYCURSOR;
+yy641: yych = *++YYCURSOR;
        switch(yych){
        case '/':       case '_':       goto yy137;
        case 'R':       goto yy510;
@@ -15647,10 +15966,10 @@ yy639:        yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy142;
-       case 'r':       goto yy607;
+       case 'r':       goto yy609;
        default:        goto yy52;
        }
-yy640: yych = *++YYCURSOR;
+yy642: yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -15692,12 +16011,12 @@ yy640:        yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy133;
-       case 'C':       case 'c':       goto yy655;
-       case 'P':       case 'p':       goto yy654;
-       case 'V':       case 'v':       goto yy656;
+       case 'C':       case 'c':       goto yy657;
+       case 'P':       case 'p':       goto yy656;
+       case 'V':       case 'v':       goto yy658;
        default:        goto yy3;
        }
-yy641: yych = *++YYCURSOR;
+yy643: yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -15747,10 +16066,10 @@ yy641:        yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy133;
-       case 'T':       case 't':       goto yy649;
+       case 'T':       case 't':       goto yy651;
        default:        goto yy3;
        }
-yy642: yych = *++YYCURSOR;
+yy644: yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -15800,10 +16119,10 @@ yy642:        yych = *++YYCURSOR;
        case 'v':
        case 'w':       case 'y':
        case 'z':       goto yy133;
-       case 'X':       case 'x':       goto yy647;
+       case 'X':       case 'x':       goto yy649;
        default:        goto yy3;
        }
-yy643: yych = *++YYCURSOR;
+yy645: yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -15853,10 +16172,10 @@ yy643:        yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy133;
-       case 'N':       case 'n':       goto yy644;
+       case 'N':       case 'n':       goto yy646;
        default:        goto yy3;
        }
-yy644: yych = *++YYCURSOR;
+yy646: yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -15906,22 +16225,22 @@ yy644:        yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy134;
-       case 'D':       case 'd':       goto yy645;
+       case 'D':       case 'd':       goto yy647;
        default:        goto yy156;
        }
-yy645: yyaccept = 1;
+yy647: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
-       case 'A':       case 'a':       goto yy646;
+       case 'A':       case 'a':       goto yy648;
        default:        goto yy3;
        }
-yy646: yych = *++YYCURSOR;
+yy648: yych = *++YYCURSOR;
        switch(yych){
        case 'Y':       case 'y':       goto yy162;
        default:        goto yy52;
        }
-yy647: yych = *++YYCURSOR;
+yy649: yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -15971,17 +16290,17 @@ yy647:        yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy134;
-       case 'T':       case 't':       goto yy648;
+       case 'T':       case 't':       goto yy650;
        default:        goto yy3;
        }
-yy648: yyaccept = 1;
+yy650: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
        case 'H':       case 'h':       goto yy178;
        default:        goto yy3;
        }
-yy649: yych = *++YYCURSOR;
+yy651: yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -16031,32 +16350,32 @@ yy649:        yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy134;
-       case 'U':       case 'u':       goto yy650;
+       case 'U':       case 'u':       goto yy652;
        default:        goto yy156;
        }
-yy650: yyaccept = 1;
+yy652: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
-       case 'R':       case 'r':       goto yy651;
+       case 'R':       case 'r':       goto yy653;
        default:        goto yy3;
        }
-yy651: yych = *++YYCURSOR;
+yy653: yych = *++YYCURSOR;
        switch(yych){
-       case 'D':       case 'd':       goto yy652;
+       case 'D':       case 'd':       goto yy654;
        default:        goto yy52;
        }
-yy652: yych = *++YYCURSOR;
+yy654: yych = *++YYCURSOR;
        switch(yych){
-       case 'A':       case 'a':       goto yy653;
+       case 'A':       case 'a':       goto yy655;
        default:        goto yy52;
        }
-yy653: yych = *++YYCURSOR;
+yy655: yych = *++YYCURSOR;
        switch(yych){
        case 'Y':       case 'y':       goto yy162;
        default:        goto yy52;
        }
-yy654: yyaccept = 1;
+yy656: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -16128,10 +16447,10 @@ yy654:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy134;
-       case 'T':       case 't':       goto yy659;
+       case 'T':       case 't':       goto yy661;
        default:        goto yy3;
        }
-yy655: yych = *++YYCURSOR;
+yy657: yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -16181,10 +16500,10 @@ yy655:        yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy134;
-       case 'O':       case 'o':       goto yy658;
+       case 'O':       case 'o':       goto yy660;
        default:        goto yy3;
        }
-yy656: yych = *++YYCURSOR;
+yy658: yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -16234,24 +16553,24 @@ yy656:        yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy134;
-       case 'E':       case 'e':       goto yy657;
+       case 'E':       case 'e':       goto yy659;
        default:        goto yy3;
        }
-yy657: yyaccept = 1;
+yy659: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
        case 'N':       case 'n':       goto yy235;
        default:        goto yy3;
        }
-yy658: yyaccept = 1;
+yy660: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
        case 'N':       case 'n':       goto yy238;
        default:        goto yy3;
        }
-yy659: yyaccept = 1;
+yy661: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -16276,30 +16595,30 @@ yy659:        yyaccept = 1;
        case '9':       goto yy511;
        case ')':       goto yy512;
        case '-':       goto yy513;
-       case 'E':       case 'e':       goto yy660;
+       case 'E':       case 'e':       goto yy662;
        default:        goto yy3;
        }
-yy660: yych = *++YYCURSOR;
+yy662: yych = *++YYCURSOR;
        switch(yych){
-       case 'M':       case 'm':       goto yy661;
+       case 'M':       case 'm':       goto yy663;
        default:        goto yy52;
        }
-yy661: yych = *++YYCURSOR;
+yy663: yych = *++YYCURSOR;
        switch(yych){
-       case 'B':       case 'b':       goto yy662;
+       case 'B':       case 'b':       goto yy664;
        default:        goto yy52;
        }
-yy662: yych = *++YYCURSOR;
+yy664: yych = *++YYCURSOR;
        switch(yych){
-       case 'E':       case 'e':       goto yy663;
+       case 'E':       case 'e':       goto yy665;
        default:        goto yy52;
        }
-yy663: yych = *++YYCURSOR;
+yy665: yych = *++YYCURSOR;
        switch(yych){
        case 'R':       case 'r':       goto yy510;
        default:        goto yy52;
        }
-yy664: yyaccept = 1;
+yy666: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -16324,9 +16643,9 @@ yy664:  yyaccept = 1;
        case 'X':
        case 'Y':
        case 'Z':       goto yy133;
-       case 'C':       goto yy655;
-       case 'P':       goto yy654;
-       case 'V':       goto yy656;
+       case 'C':       goto yy657;
+       case 'P':       goto yy656;
+       case 'V':       goto yy658;
        case 'a':
        case 'b':       case 'd':
        case 'e':
@@ -16347,12 +16666,12 @@ yy664:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy136;
-       case 'c':       goto yy679;
-       case 'p':       goto yy678;
-       case 'v':       goto yy680;
+       case 'c':       goto yy681;
+       case 'p':       goto yy680;
+       case 'v':       goto yy682;
        default:        goto yy3;
        }
-yy665: yyaccept = 1;
+yy667: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -16381,7 +16700,7 @@ yy665:  yyaccept = 1;
        case 'X':
        case 'Y':
        case 'Z':       goto yy133;
-       case 'T':       goto yy649;
+       case 'T':       goto yy651;
        case 'a':
        case 'b':
        case 'c':
@@ -16406,10 +16725,10 @@ yy665:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy136;
-       case 't':       goto yy673;
+       case 't':       goto yy675;
        default:        goto yy3;
        }
-yy666: yyaccept = 1;
+yy668: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -16438,7 +16757,7 @@ yy666:  yyaccept = 1;
        case 'V':
        case 'W':       case 'Y':
        case 'Z':       goto yy133;
-       case 'X':       goto yy647;
+       case 'X':       goto yy649;
        case 'a':
        case 'b':
        case 'c':
@@ -16463,10 +16782,10 @@ yy666:        yyaccept = 1;
        case 'v':
        case 'w':       case 'y':
        case 'z':       goto yy136;
-       case 'x':       goto yy671;
+       case 'x':       goto yy673;
        default:        goto yy3;
        }
-yy667: yyaccept = 1;
+yy669: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -16495,7 +16814,7 @@ yy667:  yyaccept = 1;
        case 'X':
        case 'Y':
        case 'Z':       goto yy133;
-       case 'N':       goto yy644;
+       case 'N':       goto yy646;
        case 'a':
        case 'b':
        case 'c':
@@ -16520,10 +16839,10 @@ yy667:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy136;
-       case 'n':       goto yy668;
+       case 'n':       goto yy670;
        default:        goto yy3;
        }
-yy668: yyaccept = 4;
+yy670: yyaccept = 4;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -16552,7 +16871,7 @@ yy668:  yyaccept = 4;
        case 'X':
        case 'Y':
        case 'Z':       goto yy134;
-       case 'D':       goto yy645;
+       case 'D':       goto yy647;
        case 'a':
        case 'b':
        case 'c':       case 'e':
@@ -16577,16 +16896,16 @@ yy668:        yyaccept = 4;
        case 'x':
        case 'y':
        case 'z':       goto yy141;
-       case 'd':       goto yy669;
+       case 'd':       goto yy671;
        default:        goto yy156;
        }
-yy669: yyaccept = 1;
+yy671: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
        case '/':       case '_':       goto yy137;
-       case 'A':       goto yy646;
-       case 'a':       goto yy670;
+       case 'A':       goto yy648;
+       case 'a':       goto yy672;
        case 'b':
        case 'c':
        case 'd':
@@ -16614,13 +16933,13 @@ yy669:        yyaccept = 1;
        case 'z':       goto yy142;
        default:        goto yy3;
        }
-yy670: yych = *++YYCURSOR;
+yy672: yych = *++YYCURSOR;
        switch(yych){
        case 'Y':       goto yy162;
        case 'y':       goto yy171;
        default:        goto yy143;
        }
-yy671: yyaccept = 1;
+yy673: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -16649,7 +16968,7 @@ yy671:  yyaccept = 1;
        case 'X':
        case 'Y':
        case 'Z':       goto yy134;
-       case 'T':       goto yy648;
+       case 'T':       goto yy650;
        case 'a':
        case 'b':
        case 'c':
@@ -16674,10 +16993,10 @@ yy671:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy141;
-       case 't':       goto yy672;
+       case 't':       goto yy674;
        default:        goto yy3;
        }
-yy672: yyaccept = 1;
+yy674: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -16710,7 +17029,7 @@ yy672:  yyaccept = 1;
        case 'h':       goto yy319;
        default:        goto yy3;
        }
-yy673: yyaccept = 4;
+yy675: yyaccept = 4;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -16739,7 +17058,7 @@ yy673:  yyaccept = 4;
        case 'X':
        case 'Y':
        case 'Z':       goto yy134;
-       case 'U':       goto yy650;
+       case 'U':       goto yy652;
        case 'a':
        case 'b':
        case 'c':
@@ -16764,15 +17083,15 @@ yy673:        yyaccept = 4;
        case 'x':
        case 'y':
        case 'z':       goto yy141;
-       case 'u':       goto yy674;
+       case 'u':       goto yy676;
        default:        goto yy156;
        }
-yy674: yyaccept = 1;
+yy676: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
        case '/':       case '_':       goto yy137;
-       case 'R':       goto yy651;
+       case 'R':       goto yy653;
        case 'a':
        case 'b':
        case 'c':
@@ -16797,28 +17116,28 @@ yy674:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy142;
-       case 'r':       goto yy675;
+       case 'r':       goto yy677;
        default:        goto yy3;
        }
-yy675: yych = *++YYCURSOR;
+yy677: yych = *++YYCURSOR;
        switch(yych){
-       case 'D':       goto yy652;
-       case 'd':       goto yy676;
+       case 'D':       goto yy654;
+       case 'd':       goto yy678;
        default:        goto yy143;
        }
-yy676: yych = *++YYCURSOR;
+yy678: yych = *++YYCURSOR;
        switch(yych){
-       case 'A':       goto yy653;
-       case 'a':       goto yy677;
+       case 'A':       goto yy655;
+       case 'a':       goto yy679;
        default:        goto yy143;
        }
-yy677: yych = *++YYCURSOR;
+yy679: yych = *++YYCURSOR;
        switch(yych){
        case 'Y':       goto yy162;
        case 'y':       goto yy171;
        default:        goto yy143;
        }
-yy678: yyaccept = 1;
+yy680: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -16868,7 +17187,7 @@ yy678:  yyaccept = 1;
        case 'X':
        case 'Y':
        case 'Z':       goto yy134;
-       case 'T':       goto yy659;
+       case 'T':       goto yy661;
        case 'a':
        case 'b':
        case 'c':
@@ -16893,10 +17212,10 @@ yy678:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy141;
-       case 't':       goto yy683;
+       case 't':       goto yy685;
        default:        goto yy3;
        }
-yy679: yyaccept = 1;
+yy681: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -16925,7 +17244,7 @@ yy679:  yyaccept = 1;
        case 'X':
        case 'Y':
        case 'Z':       goto yy134;
-       case 'O':       goto yy658;
+       case 'O':       goto yy660;
        case 'a':
        case 'b':
        case 'c':
@@ -16950,10 +17269,10 @@ yy679:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy141;
-       case 'o':       goto yy682;
+       case 'o':       goto yy684;
        default:        goto yy3;
        }
-yy680: yyaccept = 1;
+yy682: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -16982,7 +17301,7 @@ yy680:  yyaccept = 1;
        case 'X':
        case 'Y':
        case 'Z':       goto yy134;
-       case 'E':       goto yy657;
+       case 'E':       goto yy659;
        case 'a':
        case 'b':
        case 'c':
@@ -17007,10 +17326,10 @@ yy680:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy141;
-       case 'e':       goto yy681;
+       case 'e':       goto yy683;
        default:        goto yy3;
        }
-yy681: yyaccept = 1;
+yy683: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -17043,7 +17362,7 @@ yy681:  yyaccept = 1;
        case 'n':       goto yy360;
        default:        goto yy3;
        }
-yy682: yyaccept = 1;
+yy684: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -17076,7 +17395,7 @@ yy682:  yyaccept = 1;
        case 'n':       goto yy363;
        default:        goto yy3;
        }
-yy683: yyaccept = 1;
+yy685: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -17102,7 +17421,7 @@ yy683:  yyaccept = 1;
        case ')':       goto yy512;
        case '-':       goto yy513;
        case '/':       case '_':       goto yy137;
-       case 'E':       goto yy660;
+       case 'E':       goto yy662;
        case 'a':
        case 'b':
        case 'c':
@@ -17127,28 +17446,28 @@ yy683:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy142;
-       case 'e':       goto yy684;
+       case 'e':       goto yy686;
        default:        goto yy3;
        }
-yy684: yych = *++YYCURSOR;
+yy686: yych = *++YYCURSOR;
        switch(yych){
-       case 'M':       goto yy661;
-       case 'm':       goto yy685;
+       case 'M':       goto yy663;
+       case 'm':       goto yy687;
        default:        goto yy143;
        }
-yy685: yych = *++YYCURSOR;
+yy687: yych = *++YYCURSOR;
        switch(yych){
-       case 'B':       goto yy662;
-       case 'b':       goto yy686;
+       case 'B':       goto yy664;
+       case 'b':       goto yy688;
        default:        goto yy143;
        }
-yy686: yych = *++YYCURSOR;
+yy688: yych = *++YYCURSOR;
        switch(yych){
-       case 'E':       goto yy663;
-       case 'e':       goto yy687;
+       case 'E':       goto yy665;
+       case 'e':       goto yy689;
        default:        goto yy143;
        }
-yy687: yych = *++YYCURSOR;
+yy689: yych = *++YYCURSOR;
        switch(yych){
        case '/':       case '_':       goto yy137;
        case 'R':       goto yy510;
@@ -17176,10 +17495,10 @@ yy687:        yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy142;
-       case 'r':       goto yy607;
+       case 'r':       goto yy609;
        default:        goto yy52;
        }
-yy688: yych = *++YYCURSOR;
+yy690: yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -17229,10 +17548,10 @@ yy688:        yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy133;
-       case 'G':       case 'g':       goto yy695;
+       case 'G':       case 'g':       goto yy697;
        default:        goto yy3;
        }
-yy689: yych = *++YYCURSOR;
+yy691: yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -17282,10 +17601,10 @@ yy689:        yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy133;
-       case 'R':       case 'r':       goto yy693;
+       case 'R':       case 'r':       goto yy695;
        default:        goto yy3;
        }
-yy690: yych = *++YYCURSOR;
+yy692: yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -17335,10 +17654,10 @@ yy690:        yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy133;
-       case 'O':       case 'o':       goto yy691;
+       case 'O':       case 'o':       goto yy693;
        default:        goto yy3;
        }
-yy691: ++YYCURSOR;
+yy693: ++YYCURSOR;
        switch((yych = *YYCURSOR)) {
        case ')':       goto yy131;
        case 'A':
@@ -17392,9 +17711,9 @@ yy691:  ++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy134;
-       default:        goto yy692;
+       default:        goto yy694;
        }
-yy692:
+yy694:
 #line 1251 "parse_date.re"
 {
                DEBUG_OUTPUT("ago");
@@ -17409,8 +17728,8 @@ yy692:
                TIMELIB_DEINIT;
                return TIMELIB_AGO;
        }
-#line 17413 "<stdout>"
-yy693: yyaccept = 1;
+#line 17732 "<stdout>"
+yy695: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -17482,17 +17801,17 @@ yy693:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy134;
-       case 'I':       case 'i':       goto yy694;
+       case 'I':       case 'i':       goto yy696;
        default:        goto yy3;
        }
-yy694: yyaccept = 1;
+yy696: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
        case 'L':       case 'l':       goto yy510;
        default:        goto yy3;
        }
-yy695: yyaccept = 1;
+yy697: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -17564,22 +17883,22 @@ yy695:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy134;
-       case 'U':       case 'u':       goto yy696;
+       case 'U':       case 'u':       goto yy698;
        default:        goto yy3;
        }
-yy696: yyaccept = 1;
+yy698: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
-       case 'S':       case 's':       goto yy697;
+       case 'S':       case 's':       goto yy699;
        default:        goto yy3;
        }
-yy697: yych = *++YYCURSOR;
+yy699: yych = *++YYCURSOR;
        switch(yych){
        case 'T':       case 't':       goto yy510;
        default:        goto yy52;
        }
-yy698: yyaccept = 1;
+yy700: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -17608,7 +17927,7 @@ yy698:  yyaccept = 1;
        case 'X':
        case 'Y':
        case 'Z':       goto yy133;
-       case 'G':       goto yy695;
+       case 'G':       goto yy697;
        case 'a':
        case 'b':
        case 'c':
@@ -17633,10 +17952,10 @@ yy698:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy136;
-       case 'g':       goto yy704;
+       case 'g':       goto yy706;
        default:        goto yy3;
        }
-yy699: yyaccept = 1;
+yy701: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -17665,7 +17984,7 @@ yy699:  yyaccept = 1;
        case 'X':
        case 'Y':
        case 'Z':       goto yy133;
-       case 'R':       goto yy693;
+       case 'R':       goto yy695;
        case 'a':
        case 'b':
        case 'c':
@@ -17690,10 +18009,10 @@ yy699:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy136;
-       case 'r':       goto yy702;
+       case 'r':       goto yy704;
        default:        goto yy3;
        }
-yy700: yyaccept = 1;
+yy702: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -17722,7 +18041,7 @@ yy700:  yyaccept = 1;
        case 'X':
        case 'Y':
        case 'Z':       goto yy133;
-       case 'O':       goto yy691;
+       case 'O':       goto yy693;
        case 'a':
        case 'b':
        case 'c':
@@ -17747,10 +18066,10 @@ yy700:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy136;
-       case 'o':       goto yy701;
+       case 'o':       goto yy703;
        default:        goto yy3;
        }
-yy701: yyaccept = 10;
+yy703: yyaccept = 10;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -17807,9 +18126,9 @@ yy701:  yyaccept = 10;
        case 'x':
        case 'y':
        case 'z':       goto yy141;
-       default:        goto yy692;
+       default:        goto yy694;
        }
-yy702: yyaccept = 1;
+yy704: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -17859,7 +18178,7 @@ yy702:  yyaccept = 1;
        case 'X':
        case 'Y':
        case 'Z':       goto yy134;
-       case 'I':       goto yy694;
+       case 'I':       goto yy696;
        case 'a':
        case 'b':
        case 'c':
@@ -17884,10 +18203,10 @@ yy702:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy141;
-       case 'i':       goto yy703;
+       case 'i':       goto yy705;
        default:        goto yy3;
        }
-yy703: yyaccept = 1;
+yy705: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -17917,10 +18236,10 @@ yy703:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy142;
-       case 'l':       goto yy607;
+       case 'l':       goto yy609;
        default:        goto yy3;
        }
-yy704: yyaccept = 1;
+yy706: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -17970,7 +18289,7 @@ yy704:  yyaccept = 1;
        case 'X':
        case 'Y':
        case 'Z':       goto yy134;
-       case 'U':       goto yy696;
+       case 'U':       goto yy698;
        case 'a':
        case 'b':
        case 'c':
@@ -17995,15 +18314,15 @@ yy704:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy141;
-       case 'u':       goto yy705;
+       case 'u':       goto yy707;
        default:        goto yy3;
        }
-yy705: yyaccept = 1;
+yy707: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
        case '/':       case '_':       goto yy137;
-       case 'S':       goto yy697;
+       case 'S':       goto yy699;
        case 'a':
        case 'b':
        case 'c':
@@ -18028,10 +18347,10 @@ yy705:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy142;
-       case 's':       goto yy706;
+       case 's':       goto yy708;
        default:        goto yy3;
        }
-yy706: yych = *++YYCURSOR;
+yy708: yych = *++YYCURSOR;
        switch(yych){
        case '/':       case '_':       goto yy137;
        case 'T':       goto yy510;
@@ -18059,10 +18378,10 @@ yy706:        yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy142;
-       case 't':       goto yy607;
+       case 't':       goto yy609;
        default:        goto yy52;
        }
-yy707: yych = *++YYCURSOR;
+yy709: yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -18108,11 +18427,11 @@ yy707:        yych = *++YYCURSOR;
        case 'v':
        case 'w':
        case 'x':       case 'z':       goto yy133;
-       case 'R':       case 'r':       goto yy717;
-       case 'Y':       case 'y':       goto yy719;
+       case 'R':       case 'r':       goto yy719;
+       case 'Y':       case 'y':       goto yy721;
        default:        goto yy3;
        }
-yy708: yyaccept = 1;
+yy710: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -18139,8 +18458,8 @@ yy708:  yyaccept = 1;
        case 'V':
        case 'W':
        case 'X':       case 'Z':       goto yy133;
-       case 'R':       goto yy717;
-       case 'Y':       goto yy719;
+       case 'R':       goto yy719;
+       case 'Y':       goto yy721;
        case 'a':
        case 'b':
        case 'c':
@@ -18163,11 +18482,11 @@ yy708:        yyaccept = 1;
        case 'v':
        case 'w':
        case 'x':       case 'z':       goto yy136;
-       case 'r':       goto yy718;
-       case 'y':       goto yy720;
+       case 'r':       goto yy720;
+       case 'y':       goto yy722;
        default:        goto yy3;
        }
-yy709: yyaccept = 1;
+yy711: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -18196,7 +18515,7 @@ yy709:  yyaccept = 1;
        case 'X':
        case 'Y':
        case 'Z':       goto yy133;
-       case 'N':       goto yy711;
+       case 'N':       goto yy713;
        case 'a':
        case 'b':
        case 'c':
@@ -18221,10 +18540,10 @@ yy709:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy136;
-       case 'n':       goto yy714;
+       case 'n':       goto yy716;
        default:        goto yy3;
        }
-yy710: yych = *++YYCURSOR;
+yy712: yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -18274,10 +18593,10 @@ yy710:        yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy133;
-       case 'N':       case 'n':       goto yy711;
+       case 'N':       case 'n':       goto yy713;
        default:        goto yy3;
        }
-yy711: yych = *++YYCURSOR;
+yy713: yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -18327,22 +18646,22 @@ yy711:        yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy134;
-       case 'D':       case 'd':       goto yy712;
+       case 'D':       case 'd':       goto yy714;
        default:        goto yy156;
        }
-yy712: yyaccept = 1;
+yy714: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
-       case 'A':       case 'a':       goto yy713;
+       case 'A':       case 'a':       goto yy715;
        default:        goto yy3;
        }
-yy713: yych = *++YYCURSOR;
+yy715: yych = *++YYCURSOR;
        switch(yych){
        case 'Y':       case 'y':       goto yy162;
        default:        goto yy52;
        }
-yy714: yyaccept = 4;
+yy716: yyaccept = 4;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -18371,7 +18690,7 @@ yy714:  yyaccept = 4;
        case 'X':
        case 'Y':
        case 'Z':       goto yy134;
-       case 'D':       goto yy712;
+       case 'D':       goto yy714;
        case 'a':
        case 'b':
        case 'c':       case 'e':
@@ -18396,16 +18715,16 @@ yy714:        yyaccept = 4;
        case 'x':
        case 'y':
        case 'z':       goto yy141;
-       case 'd':       goto yy715;
+       case 'd':       goto yy717;
        default:        goto yy156;
        }
-yy715: yyaccept = 1;
+yy717: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
        case '/':       case '_':       goto yy137;
-       case 'A':       goto yy713;
-       case 'a':       goto yy716;
+       case 'A':       goto yy715;
+       case 'a':       goto yy718;
        case 'b':
        case 'c':
        case 'd':
@@ -18433,13 +18752,13 @@ yy715:        yyaccept = 1;
        case 'z':       goto yy142;
        default:        goto yy3;
        }
-yy716: yych = *++YYCURSOR;
+yy718: yych = *++YYCURSOR;
        switch(yych){
        case 'Y':       goto yy162;
        case 'y':       goto yy171;
        default:        goto yy143;
        }
-yy717: yyaccept = 1;
+yy719: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -18511,10 +18830,10 @@ yy717:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy134;
-       case 'C':       case 'c':       goto yy721;
+       case 'C':       case 'c':       goto yy723;
        default:        goto yy3;
        }
-yy718: yyaccept = 1;
+yy720: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -18564,7 +18883,7 @@ yy718:  yyaccept = 1;
        case 'X':
        case 'Y':
        case 'Z':       goto yy134;
-       case 'C':       goto yy721;
+       case 'C':       goto yy723;
        case 'a':
        case 'b':       case 'd':
        case 'e':
@@ -18589,10 +18908,10 @@ yy718:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy141;
-       case 'c':       goto yy722;
+       case 'c':       goto yy724;
        default:        goto yy3;
        }
-yy719: yyaccept = 1;
+yy721: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -18670,7 +18989,7 @@ yy719:  yyaccept = 1;
        case 'z':       goto yy134;
        default:        goto yy3;
        }
-yy720: yyaccept = 1;
+yy722: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -18750,14 +19069,14 @@ yy720:        yyaccept = 1;
        case 'z':       goto yy141;
        default:        goto yy3;
        }
-yy721: yyaccept = 1;
+yy723: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
        case 'H':       case 'h':       goto yy510;
        default:        goto yy3;
        }
-yy722: yyaccept = 1;
+yy724: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -18787,10 +19106,10 @@ yy722:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy142;
-       case 'h':       goto yy607;
+       case 'h':       goto yy609;
        default:        goto yy3;
        }
-yy723: yych = *++YYCURSOR;
+yy725: yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':       case 'C':
@@ -18840,10 +19159,10 @@ yy723:        yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy133;
-       case 'B':       case 'b':       goto yy736;
+       case 'B':       case 'b':       goto yy738;
        default:        goto yy3;
        }
-yy724: yych = *++YYCURSOR;
+yy726: yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -18889,11 +19208,11 @@ yy724:        yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy133;
-       case 'F':       case 'f':       goto yy733;
-       case 'R':       case 'r':       goto yy732;
+       case 'F':       case 'f':       goto yy735;
+       case 'R':       case 'r':       goto yy734;
        default:        goto yy3;
        }
-yy725: yych = *++YYCURSOR;
+yy727: yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -18943,10 +19262,10 @@ yy725:        yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy133;
-       case 'U':       case 'u':       goto yy730;
+       case 'U':       case 'u':       goto yy732;
        default:        goto yy3;
        }
-yy726: yych = *++YYCURSOR;
+yy728: yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -18996,10 +19315,10 @@ yy726:        yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy133;
-       case 'I':       case 'i':       goto yy727;
+       case 'I':       case 'i':       goto yy729;
        default:        goto yy3;
        }
-yy727: yych = *++YYCURSOR;
+yy729: yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -19049,22 +19368,22 @@ yy727:        yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy134;
-       case 'D':       case 'd':       goto yy728;
+       case 'D':       case 'd':       goto yy730;
        default:        goto yy156;
        }
-yy728: yyaccept = 1;
+yy730: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
-       case 'A':       case 'a':       goto yy729;
+       case 'A':       case 'a':       goto yy731;
        default:        goto yy3;
        }
-yy729: yych = *++YYCURSOR;
+yy731: yych = *++YYCURSOR;
        switch(yych){
        case 'Y':       case 'y':       goto yy162;
        default:        goto yy52;
        }
-yy730: yych = *++YYCURSOR;
+yy732: yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -19114,17 +19433,17 @@ yy730:        yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy134;
-       case 'R':       case 'r':       goto yy731;
+       case 'R':       case 'r':       goto yy733;
        default:        goto yy3;
        }
-yy731: yyaccept = 1;
+yy733: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
        case 'T':       case 't':       goto yy248;
        default:        goto yy3;
        }
-yy732: yych = *++YYCURSOR;
+yy734: yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -19174,10 +19493,10 @@ yy732:        yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy134;
-       case 'S':       case 's':       goto yy735;
+       case 'S':       case 's':       goto yy737;
        default:        goto yy3;
        }
-yy733: yych = *++YYCURSOR;
+yy735: yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -19227,24 +19546,24 @@ yy733:        yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy134;
-       case 'T':       case 't':       goto yy734;
+       case 'T':       case 't':       goto yy736;
        default:        goto yy3;
        }
-yy734: yyaccept = 1;
+yy736: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
        case 'H':       case 'h':       goto yy178;
        default:        goto yy3;
        }
-yy735: yyaccept = 1;
+yy737: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
        case 'T':       case 't':       goto yy178;
        default:        goto yy3;
        }
-yy736: yyaccept = 1;
+yy738: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -19316,32 +19635,32 @@ yy736:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy134;
-       case 'R':       case 'r':       goto yy737;
+       case 'R':       case 'r':       goto yy739;
        default:        goto yy3;
        }
-yy737: yyaccept = 1;
+yy739: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
-       case 'U':       case 'u':       goto yy738;
+       case 'U':       case 'u':       goto yy740;
        default:        goto yy3;
        }
-yy738: yych = *++YYCURSOR;
+yy740: yych = *++YYCURSOR;
        switch(yych){
-       case 'A':       case 'a':       goto yy739;
+       case 'A':       case 'a':       goto yy741;
        default:        goto yy52;
        }
-yy739: yych = *++YYCURSOR;
+yy741: yych = *++YYCURSOR;
        switch(yych){
-       case 'R':       case 'r':       goto yy740;
+       case 'R':       case 'r':       goto yy742;
        default:        goto yy52;
        }
-yy740: yych = *++YYCURSOR;
+yy742: yych = *++YYCURSOR;
        switch(yych){
        case 'Y':       case 'y':       goto yy510;
        default:        goto yy52;
        }
-yy741: yyaccept = 1;
+yy743: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -19370,7 +19689,7 @@ yy741:  yyaccept = 1;
        case 'X':
        case 'Y':
        case 'Z':       goto yy133;
-       case 'B':       goto yy736;
+       case 'B':       goto yy738;
        case 'a':       case 'c':
        case 'd':
        case 'e':
@@ -19395,10 +19714,10 @@ yy741:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy136;
-       case 'b':       goto yy754;
+       case 'b':       goto yy756;
        default:        goto yy3;
        }
-yy742: yyaccept = 1;
+yy744: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -19425,8 +19744,8 @@ yy742:  yyaccept = 1;
        case 'X':
        case 'Y':
        case 'Z':       goto yy133;
-       case 'F':       goto yy733;
-       case 'R':       goto yy732;
+       case 'F':       goto yy735;
+       case 'R':       goto yy734;
        case 'a':
        case 'b':
        case 'c':
@@ -19449,11 +19768,11 @@ yy742:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy136;
-       case 'f':       goto yy751;
-       case 'r':       goto yy750;
+       case 'f':       goto yy753;
+       case 'r':       goto yy752;
        default:        goto yy3;
        }
-yy743: yyaccept = 1;
+yy745: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -19482,7 +19801,7 @@ yy743:  yyaccept = 1;
        case 'X':
        case 'Y':
        case 'Z':       goto yy133;
-       case 'U':       goto yy730;
+       case 'U':       goto yy732;
        case 'a':
        case 'b':
        case 'c':
@@ -19507,10 +19826,10 @@ yy743:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy136;
-       case 'u':       goto yy748;
+       case 'u':       goto yy750;
        default:        goto yy3;
        }
-yy744: yyaccept = 1;
+yy746: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -19539,7 +19858,7 @@ yy744:  yyaccept = 1;
        case 'X':
        case 'Y':
        case 'Z':       goto yy133;
-       case 'I':       goto yy727;
+       case 'I':       goto yy729;
        case 'a':
        case 'b':
        case 'c':
@@ -19564,10 +19883,10 @@ yy744:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy136;
-       case 'i':       goto yy745;
+       case 'i':       goto yy747;
        default:        goto yy3;
        }
-yy745: yyaccept = 4;
+yy747: yyaccept = 4;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -19596,7 +19915,7 @@ yy745:  yyaccept = 4;
        case 'X':
        case 'Y':
        case 'Z':       goto yy134;
-       case 'D':       goto yy728;
+       case 'D':       goto yy730;
        case 'a':
        case 'b':
        case 'c':       case 'e':
@@ -19621,16 +19940,16 @@ yy745:        yyaccept = 4;
        case 'x':
        case 'y':
        case 'z':       goto yy141;
-       case 'd':       goto yy746;
+       case 'd':       goto yy748;
        default:        goto yy156;
        }
-yy746: yyaccept = 1;
+yy748: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
        case '/':       case '_':       goto yy137;
-       case 'A':       goto yy729;
-       case 'a':       goto yy747;
+       case 'A':       goto yy731;
+       case 'a':       goto yy749;
        case 'b':
        case 'c':
        case 'd':
@@ -19658,13 +19977,13 @@ yy746:        yyaccept = 1;
        case 'z':       goto yy142;
        default:        goto yy3;
        }
-yy747: yych = *++YYCURSOR;
+yy749: yych = *++YYCURSOR;
        switch(yych){
        case 'Y':       goto yy162;
        case 'y':       goto yy171;
        default:        goto yy143;
        }
-yy748: yyaccept = 1;
+yy750: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -19693,7 +20012,7 @@ yy748:  yyaccept = 1;
        case 'X':
        case 'Y':
        case 'Z':       goto yy134;
-       case 'R':       goto yy731;
+       case 'R':       goto yy733;
        case 'a':
        case 'b':
        case 'c':
@@ -19718,10 +20037,10 @@ yy748:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy141;
-       case 'r':       goto yy749;
+       case 'r':       goto yy751;
        default:        goto yy3;
        }
-yy749: yyaccept = 1;
+yy751: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -19754,7 +20073,7 @@ yy749:  yyaccept = 1;
        case 't':       goto yy378;
        default:        goto yy3;
        }
-yy750: yyaccept = 1;
+yy752: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -19783,7 +20102,7 @@ yy750:  yyaccept = 1;
        case 'X':
        case 'Y':
        case 'Z':       goto yy134;
-       case 'S':       goto yy735;
+       case 'S':       goto yy737;
        case 'a':
        case 'b':
        case 'c':
@@ -19808,10 +20127,10 @@ yy750:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy141;
-       case 's':       goto yy753;
+       case 's':       goto yy755;
        default:        goto yy3;
        }
-yy751: yyaccept = 1;
+yy753: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -19840,7 +20159,7 @@ yy751:  yyaccept = 1;
        case 'X':
        case 'Y':
        case 'Z':       goto yy134;
-       case 'T':       goto yy734;
+       case 'T':       goto yy736;
        case 'a':
        case 'b':
        case 'c':
@@ -19865,10 +20184,10 @@ yy751:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy141;
-       case 't':       goto yy752;
+       case 't':       goto yy754;
        default:        goto yy3;
        }
-yy752: yyaccept = 1;
+yy754: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -19901,7 +20220,7 @@ yy752:  yyaccept = 1;
        case 'h':       goto yy319;
        default:        goto yy3;
        }
-yy753: yyaccept = 1;
+yy755: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -19934,7 +20253,7 @@ yy753:  yyaccept = 1;
        case 't':       goto yy319;
        default:        goto yy3;
        }
-yy754: yyaccept = 1;
+yy756: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -19984,7 +20303,7 @@ yy754:  yyaccept = 1;
        case 'X':
        case 'Y':
        case 'Z':       goto yy134;
-       case 'R':       goto yy737;
+       case 'R':       goto yy739;
        case 'a':
        case 'b':
        case 'c':
@@ -20009,15 +20328,15 @@ yy754:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy141;
-       case 'r':       goto yy755;
+       case 'r':       goto yy757;
        default:        goto yy3;
        }
-yy755: yyaccept = 1;
+yy757: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
        case '/':       case '_':       goto yy137;
-       case 'U':       goto yy738;
+       case 'U':       goto yy740;
        case 'a':
        case 'b':
        case 'c':
@@ -20042,22 +20361,22 @@ yy755:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy142;
-       case 'u':       goto yy756;
+       case 'u':       goto yy758;
        default:        goto yy3;
        }
-yy756: yych = *++YYCURSOR;
+yy758: yych = *++YYCURSOR;
        switch(yych){
-       case 'A':       goto yy739;
-       case 'a':       goto yy757;
+       case 'A':       goto yy741;
+       case 'a':       goto yy759;
        default:        goto yy143;
        }
-yy757: yych = *++YYCURSOR;
+yy759: yych = *++YYCURSOR;
        switch(yych){
-       case 'R':       goto yy740;
-       case 'r':       goto yy758;
+       case 'R':       goto yy742;
+       case 'r':       goto yy760;
        default:        goto yy143;
        }
-yy758: yych = *++YYCURSOR;
+yy760: yych = *++YYCURSOR;
        switch(yych){
        case '/':       case '_':       goto yy137;
        case 'Y':       goto yy510;
@@ -20085,10 +20404,10 @@ yy758:        yych = *++YYCURSOR;
        case 'v':
        case 'w':
        case 'x':       case 'z':       goto yy142;
-       case 'y':       goto yy607;
+       case 'y':       goto yy609;
        default:        goto yy52;
        }
-yy759: yych = *++YYCURSOR;
+yy761: yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -20134,11 +20453,11 @@ yy759:        yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy133;
-       case 'L':       case 'l':       goto yy766;
-       case 'N':       case 'n':       goto yy765;
+       case 'L':       case 'l':       goto yy768;
+       case 'N':       case 'n':       goto yy767;
        default:        goto yy3;
        }
-yy760: yych = *++YYCURSOR;
+yy762: yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -20188,10 +20507,10 @@ yy760:        yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy133;
-       case 'N':       case 'n':       goto yy761;
+       case 'N':       case 'n':       goto yy763;
        default:        goto yy3;
        }
-yy761: yyaccept = 1;
+yy763: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -20263,27 +20582,27 @@ yy761:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy134;
-       case 'U':       case 'u':       goto yy762;
+       case 'U':       case 'u':       goto yy764;
        default:        goto yy3;
        }
-yy762: yyaccept = 1;
+yy764: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
-       case 'A':       case 'a':       goto yy763;
+       case 'A':       case 'a':       goto yy765;
        default:        goto yy3;
        }
-yy763: yych = *++YYCURSOR;
+yy765: yych = *++YYCURSOR;
        switch(yych){
-       case 'R':       case 'r':       goto yy764;
+       case 'R':       case 'r':       goto yy766;
        default:        goto yy52;
        }
-yy764: yych = *++YYCURSOR;
+yy766: yych = *++YYCURSOR;
        switch(yych){
        case 'Y':       case 'y':       goto yy510;
        default:        goto yy52;
        }
-yy765: yyaccept = 1;
+yy767: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -20355,10 +20674,10 @@ yy765:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy134;
-       case 'E':       case 'e':       goto yy767;
+       case 'E':       case 'e':       goto yy769;
        default:        goto yy3;
        }
-yy766: yyaccept = 1;
+yy768: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -20430,10 +20749,10 @@ yy766:        yyaccept = 1;
        case 'v':
        case 'w':
        case 'x':       case 'z':       goto yy134;
-       case 'Y':       case 'y':       goto yy767;
+       case 'Y':       case 'y':       goto yy769;
        default:        goto yy3;
        }
-yy767: yyaccept = 1;
+yy769: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -20461,7 +20780,7 @@ yy767:  yyaccept = 1;
        case ')':       goto yy512;
        default:        goto yy3;
        }
-yy768: yyaccept = 1;
+yy770: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -20488,8 +20807,8 @@ yy768:  yyaccept = 1;
        case 'X':
        case 'Y':
        case 'Z':       goto yy133;
-       case 'L':       goto yy766;
-       case 'N':       goto yy765;
+       case 'L':       goto yy768;
+       case 'N':       goto yy767;
        case 'a':
        case 'b':
        case 'c':
@@ -20512,11 +20831,11 @@ yy768:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy136;
-       case 'l':       goto yy775;
-       case 'n':       goto yy774;
+       case 'l':       goto yy777;
+       case 'n':       goto yy776;
        default:        goto yy3;
        }
-yy769: yyaccept = 1;
+yy771: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
@@ -20545,7 +20864,7 @@ yy769:  yyaccept = 1;
        case 'X':
        case 'Y':
        case 'Z':       goto yy133;
-       case 'N':       goto yy761;
+       case 'N':       goto yy763;
        case 'a':
        case 'b':
        case 'c':
@@ -20570,10 +20889,10 @@ yy769:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy136;
-       case 'n':       goto yy770;
+       case 'n':       goto yy772;
        default:        goto yy3;
        }
-yy770: yyaccept = 1;
+yy772: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -20623,7 +20942,7 @@ yy770:  yyaccept = 1;
        case 'X':
        case 'Y':
        case 'Z':       goto yy134;
-       case 'U':       goto yy762;
+       case 'U':       goto yy764;
        case 'a':
        case 'b':
        case 'c':
@@ -20648,16 +20967,16 @@ yy770:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy141;
-       case 'u':       goto yy771;
+       case 'u':       goto yy773;
        default:        goto yy3;
        }
-yy771: yyaccept = 1;
+yy773: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
        case '/':       case '_':       goto yy137;
-       case 'A':       goto yy763;
-       case 'a':       goto yy772;
+       case 'A':       goto yy765;
+       case 'a':       goto yy774;
        case 'b':
        case 'c':
        case 'd':
@@ -20685,13 +21004,13 @@ yy771:        yyaccept = 1;
        case 'z':       goto yy142;
        default:        goto yy3;
        }
-yy772: yych = *++YYCURSOR;
+yy774: yych = *++YYCURSOR;
        switch(yych){
-       case 'R':       goto yy764;
-       case 'r':       goto yy773;
+       case 'R':       goto yy766;
+       case 'r':       goto yy775;
        default:        goto yy143;
        }
-yy773: yych = *++YYCURSOR;
+yy775: yych = *++YYCURSOR;
        switch(yych){
        case '/':       case '_':       goto yy137;
        case 'Y':       goto yy510;
@@ -20719,10 +21038,10 @@ yy773:        yych = *++YYCURSOR;
        case 'v':
        case 'w':
        case 'x':       case 'z':       goto yy142;
-       case 'y':       goto yy607;
+       case 'y':       goto yy609;
        default:        goto yy52;
        }
-yy774: yyaccept = 1;
+yy776: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -20772,7 +21091,7 @@ yy774:  yyaccept = 1;
        case 'X':
        case 'Y':
        case 'Z':       goto yy134;
-       case 'E':       goto yy767;
+       case 'E':       goto yy769;
        case 'a':
        case 'b':
        case 'c':
@@ -20797,10 +21116,10 @@ yy774:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy141;
-       case 'e':       goto yy776;
+       case 'e':       goto yy778;
        default:        goto yy3;
        }
-yy775: yyaccept = 1;
+yy777: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -20850,7 +21169,7 @@ yy775:  yyaccept = 1;
        case 'V':
        case 'W':
        case 'X':       case 'Z':       goto yy134;
-       case 'Y':       goto yy767;
+       case 'Y':       goto yy769;
        case 'a':
        case 'b':
        case 'c':
@@ -20875,10 +21194,10 @@ yy775:        yyaccept = 1;
        case 'v':
        case 'w':
        case 'x':       case 'z':       goto yy141;
-       case 'y':       goto yy776;
+       case 'y':       goto yy778;
        default:        goto yy3;
        }
-yy776: yyaccept = 1;
+yy778: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -20933,7 +21252,7 @@ yy776:  yyaccept = 1;
        case 'z':       goto yy142;
        default:        goto yy3;
        }
-yy777: yyaccept = 1;
+yy779: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -21008,10 +21327,10 @@ yy777:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy133;
-       case 'I':       goto yy778;
+       case 'I':       goto yy780;
        default:        goto yy3;
        }
-yy778: yyaccept = 1;
+yy780: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -21090,7 +21409,7 @@ yy778:  yyaccept = 1;
        case 'z':       goto yy134;
        default:        goto yy3;
        }
-yy779: yyaccept = 1;
+yy781: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -21165,10 +21484,10 @@ yy779:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy133;
-       case 'I':       goto yy780;
+       case 'I':       goto yy782;
        default:        goto yy3;
        }
-yy780: yyaccept = 1;
+yy782: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -21243,10 +21562,10 @@ yy780:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy134;
-       case 'I':       goto yy767;
+       case 'I':       goto yy769;
        default:        goto yy3;
        }
-yy781: yyaccept = 1;
+yy783: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -21325,7 +21644,7 @@ yy781:  yyaccept = 1;
        case 'z':       goto yy133;
        default:        goto yy3;
        }
-yy782: yyaccept = 1;
+yy784: yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -21400,15 +21719,15 @@ yy782:        yyaccept = 1;
        case 'x':
        case 'y':
        case 'z':       goto yy133;
-       case 'I':       goto yy778;
+       case 'I':       goto yy780;
        default:        goto yy3;
        }
-yy783: ++YYCURSOR;
+yy785: ++YYCURSOR;
        if((YYLIMIT - YYCURSOR) < 13) YYFILL(13);
        yych = *YYCURSOR;
-       goto yy784;
-yy784: switch(yych){
-       case ' ':       goto yy783;
+       goto yy786;
+yy786: switch(yych){
+       case ' ':       goto yy785;
        case '!':
        case '"':
        case '#':
@@ -21422,55 +21741,298 @@ yy784:       switch(yych){
        case '+':
        case ',':
        case '-':
-       case '.':       goto yy792;
-       case 'A':       case 'a':       goto yy800;
-       case 'D':       case 'd':       goto yy787;
-       case 'F':       case 'f':       goto yy788;
+       case '.':       goto yy808;
+       case 'A':       case 'a':       goto yy816;
+       case 'D':       case 'd':       goto yy792;
+       case 'F':       case 'f':       goto yy795;
        case 'H':       case 'h':       goto yy59;
-       case 'I':       goto yy795;
-       case 'J':       case 'j':       goto yy799;
-       case 'M':       case 'm':       goto yy786;
-       case 'N':       case 'n':       goto yy802;
-       case 'O':       case 'o':       goto yy801;
-       case 'P':       case 'p':       goto yy804;
-       case 'S':       case 's':       goto yy785;
+       case 'I':       goto yy811;
+       case 'J':       case 'j':       goto yy815;
+       case 'M':       case 'm':       goto yy789;
+       case 'N':       case 'n':       goto yy818;
+       case 'O':       case 'o':       goto yy817;
+       case 'P':       case 'p':       goto yy820;
+       case 'S':       case 's':       goto yy787;
        case 'T':       case 't':       goto yy64;
-       case 'V':       goto yy797;
+       case 'V':       goto yy813;
        case 'W':       case 'w':       goto yy61;
-       case 'X':       goto yy798;
+       case 'X':       goto yy814;
        case 'Y':       case 'y':       goto yy63;
        default:        goto yy52;
        }
-yy785: yych = *++YYCURSOR;
+yy787: yych = *++YYCURSOR;
        switch(yych){
        case 'A':       case 'a':       goto yy117;
-       case 'E':       case 'e':       goto yy1261;
+       case 'E':       case 'e':       goto yy1320;
        case 'U':       case 'u':       goto yy118;
        default:        goto yy52;
        }
-yy786: yych = *++YYCURSOR;
+yy788: yych = *++YYCURSOR;
        switch(yych){
-       case 'A':       case 'a':       goto yy891;
+       case 'A':       goto yy117;
+       case 'E':       goto yy1320;
+       case 'U':       goto yy118;
+       case 'a':       goto yy1322;
+       case 'b':
+       case 'c':
+       case 'd':       case 'f':
+       case 'g':
+       case 'h':
+       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':
+       case 'n':
+       case 'o':
+       case 'p':
+       case 'q':
+       case 'r':
+       case 's':
+       case 't':       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy1032;
+       case 'e':       goto yy1321;
+       case 'u':       goto yy1323;
+       default:        goto yy52;
+       }
+yy789: yych = *++YYCURSOR;
+       switch(yych){
+       case 'A':       case 'a':       goto yy907;
        case 'I':       case 'i':       goto yy109;
        case 'O':       case 'o':       goto yy108;
        default:        goto yy52;
        }
-yy787: yych = *++YYCURSOR;
+yy790: yych = *++YYCURSOR;
        switch(yych){
-       case 'A':       case 'a':       goto yy105;
-       case 'E':       case 'e':       goto yy878;
+       case 'A':       goto yy907;
+       case 'I':       goto yy109;
+       case 'O':       goto yy108;
+       case 'a':       goto yy1315;
+       case 'b':
+       case 'c':
+       case 'd':
+       case 'e':
+       case 'f':
+       case 'g':
+       case 'h':       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':
+       case 'n':       case 'p':
+       case 'q':
+       case 'r':
+       case 's':
+       case 't':
+       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy1032;
+       case 'i':       goto yy1316;
+       case 'o':       goto yy1317;
        default:        goto yy52;
        }
-yy788: yych = *++YYCURSOR;
+yy791: yych = *++YYCURSOR;
+       switch(yych){
+       case 'O':       goto yy106;
+       case 'a':
+       case 'b':
+       case 'c':
+       case 'd':
+       case 'e':
+       case 'f':
+       case 'g':
+       case 'h':
+       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':
+       case 'n':       case 'p':
+       case 'q':
+       case 'r':
+       case 's':
+       case 't':
+       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy1032;
+       case 'o':       goto yy1314;
+       default:        goto yy52;
+       }
+yy792: yych = *++YYCURSOR;
        switch(yych){
+       case 'A':       case 'a':       goto yy105;
        case 'E':       case 'e':       goto yy894;
+       default:        goto yy52;
+       }
+yy793: yych = *++YYCURSOR;
+       switch(yych){
+       case 'A':       goto yy105;
+       case 'E':       goto yy894;
+       case 'a':       goto yy1313;
+       case 'b':
+       case 'c':
+       case 'd':       case 'f':
+       case 'g':
+       case 'h':
+       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':
+       case 'n':
+       case 'o':
+       case 'p':
+       case 'q':
+       case 'r':
+       case 's':
+       case 't':
+       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy1032;
+       case 'e':       goto yy1312;
+       default:        goto yy52;
+       }
+yy794: yych = *++YYCURSOR;
+       switch(yych){
+       case 'E':       goto yy97;
+       case 'a':
+       case 'b':
+       case 'c':
+       case 'd':       case 'f':
+       case 'g':
+       case 'h':
+       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':
+       case 'n':
+       case 'o':
+       case 'p':
+       case 'q':
+       case 'r':
+       case 's':
+       case 't':
+       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy1032;
+       case 'e':       goto yy1310;
+       default:        goto yy52;
+       }
+yy795: yych = *++YYCURSOR;
+       switch(yych){
+       case 'E':       case 'e':       goto yy910;
        case 'O':       case 'o':       goto yy82;
        case 'R':       case 'r':       goto yy81;
        default:        goto yy52;
        }
-yy789: yych = *++YYCURSOR;
+yy796: yych = *++YYCURSOR;
+       switch(yych){
+       case 'E':       goto yy910;
+       case 'O':       goto yy82;
+       case 'R':       goto yy81;
+       case 'a':
+       case 'b':
+       case 'c':
+       case 'd':       case 'f':
+       case 'g':
+       case 'h':
+       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':
+       case 'n':       case 'p':
+       case 'q':       case 's':
+       case 't':
+       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy1032;
+       case 'e':       goto yy1306;
+       case 'o':       goto yy1307;
+       case 'r':       goto yy1308;
+       default:        goto yy52;
+       }
+yy797: yych = *++YYCURSOR;
+       switch(yych){
+       case 'E':       goto yy78;
+       case 'a':
+       case 'b':
+       case 'c':
+       case 'd':       case 'f':
+       case 'g':
+       case 'h':
+       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':
+       case 'n':
+       case 'o':
+       case 'p':
+       case 'q':
+       case 'r':
+       case 's':
+       case 't':
+       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy1032;
+       case 'e':       goto yy1304;
+       default:        goto yy52;
+       }
+yy798: yych = *++YYCURSOR;
+       switch(yych){
+       case 'H':       goto yy65;
+       case 'U':       goto yy66;
+       case 'a':
+       case 'b':
+       case 'c':
+       case 'd':
+       case 'e':
+       case 'f':
+       case 'g':       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':
+       case 'n':
+       case 'o':
+       case 'p':
+       case 'q':
+       case 'r':
+       case 's':
+       case 't':       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy1032;
+       case 'h':       goto yy1302;
+       case 'u':       goto yy1303;
+       default:        goto yy52;
+       }
+yy799: yych = *++YYCURSOR;
        switch(yych){
-       case '-':       goto yy1012;
+       case '-':       goto yy1051;
        case '0':
        case '1':
        case '2':
@@ -21480,35 +22042,218 @@ yy789:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1011;
+       case '9':       goto yy1050;
        default:        goto yy56;
        }
-yy790: yych = *++YYCURSOR;
+yy800: yych = *++YYCURSOR;
        switch(yych){
-       case '0':
-       case '1':
-       case '2':       goto yy954;
-       case '3':       goto yy956;
-       case '4':
-       case '5':
-       case '6':
+       case '.':       goto yy821;
+       case 'M':       goto yy822;
+       case 'P':       goto yy867;
+       case 'U':       goto yy866;
+       case 'a':
+       case 'b':
+       case 'c':
+       case 'd':
+       case 'e':
+       case 'f':
+       case 'g':
+       case 'h':
+       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':       case 'n':
+       case 'o':       case 'q':
+       case 'r':
+       case 's':
+       case 't':       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy1032;
+       case 'm':       goto yy1031;
+       case 'p':       goto yy1049;
+       case 'u':       goto yy1048;
+       default:        goto yy52;
+       }
+yy801: yych = *++YYCURSOR;
+       switch(yych){
+       case 'a':
+       case 'b':
+       case 'c':
+       case 'd':
+       case 'e':
+       case 'f':
+       case 'g':
+       case 'h':
+       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':
+       case 'n':
+       case 'o':
+       case 'p':
+       case 'q':
+       case 'r':
+       case 's':
+       case 't':
+       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy1032;
+       default:        goto yy52;
+       }
+yy802: yych = *++YYCURSOR;
+       switch(yych){
+       case 'A':       goto yy874;
+       case 'U':       goto yy873;
+       case 'a':       goto yy1045;
+       case 'b':
+       case 'c':
+       case 'd':
+       case 'e':
+       case 'f':
+       case 'g':
+       case 'h':
+       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':
+       case 'n':
+       case 'o':
+       case 'p':
+       case 'q':
+       case 'r':
+       case 's':
+       case 't':       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy1032;
+       case 'u':       goto yy1044;
+       default:        goto yy52;
+       }
+yy803: yych = *++YYCURSOR;
+       switch(yych){
+       case 'O':       goto yy847;
+       case 'a':
+       case 'b':
+       case 'c':
+       case 'd':
+       case 'e':
+       case 'f':
+       case 'g':
+       case 'h':
+       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':
+       case 'n':       case 'p':
+       case 'q':
+       case 'r':
+       case 's':
+       case 't':
+       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy1032;
+       case 'o':       goto yy1042;
+       default:        goto yy52;
+       }
+yy804: yych = *++YYCURSOR;
+       switch(yych){
+       case 'C':       goto yy861;
+       case 'a':
+       case 'b':       case 'd':
+       case 'e':
+       case 'f':
+       case 'g':
+       case 'h':
+       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':
+       case 'n':
+       case 'o':
+       case 'p':
+       case 'q':
+       case 'r':
+       case 's':
+       case 't':
+       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy1032;
+       case 'c':       goto yy1041;
+       default:        goto yy52;
+       }
+yy805: yych = *++YYCURSOR;
+       switch(yych){
+       case '.':       goto yy821;
+       case 'M':       goto yy822;
+       case 'a':
+       case 'b':
+       case 'c':
+       case 'd':
+       case 'e':
+       case 'f':
+       case 'g':
+       case 'h':
+       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':       case 'n':
+       case 'o':
+       case 'p':
+       case 'q':
+       case 'r':
+       case 's':
+       case 't':
+       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy1032;
+       case 'm':       goto yy1031;
+       default:        goto yy52;
+       }
+yy806: yych = *++YYCURSOR;
+       switch(yych){
+       case '0':
+       case '1':
+       case '2':       goto yy972;
+       case '3':       goto yy974;
+       case '4':
+       case '5':
+       case '6':
        case '7':
        case '8':
-       case '9':       goto yy957;
-       case 'A':       case 'a':       goto yy961;
-       case 'D':       case 'd':       goto yy965;
-       case 'F':       case 'f':       goto yy959;
-       case 'J':       case 'j':       goto yy958;
-       case 'M':       case 'm':       goto yy960;
-       case 'N':       case 'n':       goto yy964;
-       case 'O':       case 'o':       goto yy963;
-       case 'S':       case 's':       goto yy962;
+       case '9':       goto yy975;
+       case 'A':       case 'a':       goto yy979;
+       case 'D':       case 'd':       goto yy983;
+       case 'F':       case 'f':       goto yy977;
+       case 'J':       case 'j':       goto yy976;
+       case 'M':       case 'm':       goto yy978;
+       case 'N':       case 'n':       goto yy982;
+       case 'O':       case 'o':       goto yy981;
+       case 'S':       case 's':       goto yy980;
        default:        goto yy52;
        }
-yy791: yych = *++YYCURSOR;
+yy807: yych = *++YYCURSOR;
        switch(yych){
-       case '0':       goto yy910;
-       case '1':       goto yy911;
+       case '0':       goto yy926;
+       case '1':       goto yy927;
        case '2':
        case '3':
        case '4':
@@ -21516,22 +22261,22 @@ yy791:        yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy912;
-       case 'A':       case 'a':       goto yy916;
-       case 'D':       case 'd':       goto yy920;
-       case 'F':       case 'f':       goto yy914;
-       case 'J':       case 'j':       goto yy913;
-       case 'M':       case 'm':       goto yy915;
-       case 'N':       case 'n':       goto yy919;
-       case 'O':       case 'o':       goto yy918;
-       case 'S':       case 's':       goto yy917;
-       default:        goto yy793;
+       case '9':       goto yy928;
+       case 'A':       case 'a':       goto yy932;
+       case 'D':       case 'd':       goto yy936;
+       case 'F':       case 'f':       goto yy930;
+       case 'J':       case 'j':       goto yy929;
+       case 'M':       case 'm':       goto yy931;
+       case 'N':       case 'n':       goto yy935;
+       case 'O':       case 'o':       goto yy934;
+       case 'S':       case 's':       goto yy933;
+       default:        goto yy809;
        }
-yy792: ++YYCURSOR;
+yy808: ++YYCURSOR;
        if((YYLIMIT - YYCURSOR) < 13) YYFILL(13);
        yych = *YYCURSOR;
-       goto yy793;
-yy793: switch(yych){
+       goto yy809;
+yy809: switch(yych){
        case ' ':
        case '!':
        case '"':
@@ -21546,35 +22291,35 @@ yy793:        switch(yych){
        case '+':
        case ',':
        case '-':
-       case '.':       goto yy792;
-       case 'A':       case 'a':       goto yy875;
-       case 'D':       case 'd':       goto yy877;
-       case 'F':       case 'f':       goto yy873;
-       case 'I':       goto yy795;
-       case 'J':       case 'j':       goto yy799;
-       case 'M':       case 'm':       goto yy874;
-       case 'N':       case 'n':       goto yy802;
-       case 'O':       case 'o':       goto yy801;
-       case 'S':       case 's':       goto yy876;
-       case 'V':       goto yy797;
-       case 'X':       goto yy798;
+       case '.':       goto yy808;
+       case 'A':       case 'a':       goto yy891;
+       case 'D':       case 'd':       goto yy893;
+       case 'F':       case 'f':       goto yy889;
+       case 'I':       goto yy811;
+       case 'J':       case 'j':       goto yy815;
+       case 'M':       case 'm':       goto yy890;
+       case 'N':       case 'n':       goto yy818;
+       case 'O':       case 'o':       goto yy817;
+       case 'S':       case 's':       goto yy892;
+       case 'V':       goto yy813;
+       case 'X':       goto yy814;
        default:        goto yy52;
        }
-yy794: yych = *++YYCURSOR;
+yy810: yych = *++YYCURSOR;
        switch(yych){
-       case '0':       goto yy869;
-       case '1':       goto yy870;
+       case '0':       goto yy885;
+       case '1':       goto yy886;
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy871;
+       case '5':       goto yy887;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy872;
-       default:        goto yy793;
+       case '9':       goto yy888;
+       default:        goto yy809;
        }
-yy795: yyaccept = 11;
+yy811: yyaccept = 11;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -21591,7 +22336,7 @@ yy795:  yyaccept = 11;
        case '+':
        case ',':
        case '-':
-       case '.':       goto yy833;
+       case '.':       goto yy849;
        case '0':
        case '1':
        case '2':
@@ -21601,12 +22346,12 @@ yy795:        yyaccept = 11;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy835;
-       case 'I':       goto yy868;
-       case 'V':       case 'X':       goto yy841;
-       default:        goto yy796;
+       case '9':       goto yy851;
+       case 'I':       goto yy884;
+       case 'V':       case 'X':       goto yy857;
+       default:        goto yy812;
        }
-yy796:
+yy812:
 #line 1101 "parse_date.re"
 {
                DEBUG_OUTPUT("datenoyearrev");
@@ -21617,8 +22362,8 @@ yy796:
                TIMELIB_DEINIT;
                return TIMELIB_DATE_TEXT;
        }
-#line 21621 "<stdout>"
-yy797: yyaccept = 11;
+#line 22366 "<stdout>"
+yy813: yyaccept = 11;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -21635,7 +22380,7 @@ yy797:  yyaccept = 11;
        case '+':
        case ',':
        case '-':
-       case '.':       goto yy833;
+       case '.':       goto yy849;
        case '0':
        case '1':
        case '2':
@@ -21645,11 +22390,11 @@ yy797:        yyaccept = 11;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy835;
-       case 'I':       goto yy866;
-       default:        goto yy796;
+       case '9':       goto yy851;
+       case 'I':       goto yy882;
+       default:        goto yy812;
        }
-yy798: yyaccept = 11;
+yy814: yyaccept = 11;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -21666,7 +22411,7 @@ yy798:  yyaccept = 11;
        case '+':
        case ',':
        case '-':
-       case '.':       goto yy833;
+       case '.':       goto yy849;
        case '0':
        case '1':
        case '2':
@@ -21676,65 +22421,65 @@ yy798:        yyaccept = 11;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy835;
-       case 'I':       goto yy865;
-       default:        goto yy796;
+       case '9':       goto yy851;
+       case 'I':       goto yy881;
+       default:        goto yy812;
        }
-yy799: yych = *++YYCURSOR;
+yy815: yych = *++YYCURSOR;
        switch(yych){
-       case 'A':       case 'a':       goto yy858;
-       case 'U':       case 'u':       goto yy857;
+       case 'A':       case 'a':       goto yy874;
+       case 'U':       case 'u':       goto yy873;
        default:        goto yy52;
        }
-yy800: yych = *++YYCURSOR;
+yy816: yych = *++YYCURSOR;
        switch(yych){
-       case '.':       goto yy805;
-       case 'M':       case 'm':       goto yy806;
-       case 'P':       case 'p':       goto yy851;
-       case 'U':       case 'u':       goto yy850;
+       case '.':       goto yy821;
+       case 'M':       case 'm':       goto yy822;
+       case 'P':       case 'p':       goto yy867;
+       case 'U':       case 'u':       goto yy866;
        default:        goto yy52;
        }
-yy801: yych = *++YYCURSOR;
+yy817: yych = *++YYCURSOR;
        switch(yych){
-       case 'C':       case 'c':       goto yy845;
+       case 'C':       case 'c':       goto yy861;
        default:        goto yy52;
        }
-yy802: yych = *++YYCURSOR;
+yy818: yych = *++YYCURSOR;
        switch(yych){
-       case 'O':       case 'o':       goto yy831;
+       case 'O':       case 'o':       goto yy847;
        default:        goto yy52;
        }
-yy803: yych = *++YYCURSOR;
+yy819: yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy809;
+       case '5':       goto yy825;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy811;
+       case '9':       goto yy827;
        default:        goto yy52;
        }
-yy804: yych = *++YYCURSOR;
+yy820: yych = *++YYCURSOR;
        switch(yych){
-       case '.':       goto yy805;
-       case 'M':       case 'm':       goto yy806;
+       case '.':       goto yy821;
+       case 'M':       case 'm':       goto yy822;
        default:        goto yy52;
        }
-yy805: yych = *++YYCURSOR;
+yy821: yych = *++YYCURSOR;
        switch(yych){
-       case 'M':       case 'm':       goto yy806;
+       case 'M':       case 'm':       goto yy822;
        default:        goto yy52;
        }
-yy806: ++YYCURSOR;
+yy822: ++YYCURSOR;
        switch((yych = *YYCURSOR)) {
-       case '.':       goto yy808;
-       default:        goto yy807;
+       case '.':       goto yy824;
+       default:        goto yy823;
        }
-yy807:
+yy823:
 #line 892 "parse_date.re"
 {
                DEBUG_OUTPUT("timetiny12 | timeshort12 | timelong12");
@@ -21751,13 +22496,13 @@ yy807:
                TIMELIB_DEINIT;
                return TIMELIB_TIME12;
        }
-#line 21755 "<stdout>"
-yy808: yych = *++YYCURSOR;
-       goto yy807;
-yy809: yyaccept = 12;
+#line 22500 "<stdout>"
+yy824: yych = *++YYCURSOR;
+       goto yy823;
+yy825: yyaccept = 12;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       case ':':       goto yy812;
+       case '.':       case ':':       goto yy828;
        case '0':
        case '1':
        case '2':
@@ -21767,10 +22512,10 @@ yy809:        yyaccept = 12;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy825;
-       default:        goto yy810;
+       case '9':       goto yy841;
+       default:        goto yy826;
        }
-yy810:
+yy826:
 #line 909 "parse_date.re"
 {
                int tz_not_found;
@@ -21794,31 +22539,31 @@ yy810:
                TIMELIB_DEINIT;
                return TIMELIB_TIME24_WITH_ZONE;
        }
-#line 21798 "<stdout>"
-yy811: yyaccept = 12;
+#line 22543 "<stdout>"
+yy827: yyaccept = 12;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       case ':':       goto yy812;
-       default:        goto yy810;
+       case '.':       case ':':       goto yy828;
+       default:        goto yy826;
        }
-yy812: yych = *++YYCURSOR;
+yy828: yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy813;
-       case '6':       goto yy814;
+       case '5':       goto yy829;
+       case '6':       goto yy830;
        case '7':
        case '8':
-       case '9':       goto yy815;
+       case '9':       goto yy831;
        default:        goto yy52;
        }
-yy813: yyaccept = 12;
+yy829: yyaccept = 12;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       goto yy816;
+       case '.':       goto yy832;
        case '0':
        case '1':
        case '2':
@@ -21828,23 +22573,23 @@ yy813:        yyaccept = 12;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy819;
-       default:        goto yy810;
+       case '9':       goto yy835;
+       default:        goto yy826;
        }
-yy814: yyaccept = 12;
+yy830: yyaccept = 12;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       goto yy816;
-       case '0':       goto yy819;
-       default:        goto yy810;
+       case '.':       goto yy832;
+       case '0':       goto yy835;
+       default:        goto yy826;
        }
-yy815: yyaccept = 12;
+yy831: yyaccept = 12;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       goto yy816;
-       default:        goto yy810;
+       case '.':       goto yy832;
+       default:        goto yy826;
        }
-yy816: yych = *++YYCURSOR;
+yy832: yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -21855,14 +22600,14 @@ yy816:        yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy817;
+       case '9':       goto yy833;
        default:        goto yy52;
        }
-yy817: ++YYCURSOR;
+yy833: ++YYCURSOR;
        if(YYLIMIT == YYCURSOR) YYFILL(1);
        yych = *YYCURSOR;
-       goto yy818;
-yy818: switch(yych){
+       goto yy834;
+yy834: switch(yych){
        case '0':
        case '1':
        case '2':
@@ -21872,81 +22617,81 @@ yy818:        switch(yych){
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy817;
-       default:        goto yy810;
+       case '9':       goto yy833;
+       default:        goto yy826;
        }
-yy819: yyaccept = 12;
+yy835: yyaccept = 12;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case ' ':       goto yy820;
-       case '.':       goto yy816;
-       case 'A':       case 'P':       case 'a':       case 'p':       goto yy822;
-       default:        goto yy810;
+       case ' ':       goto yy836;
+       case '.':       goto yy832;
+       case 'A':       case 'P':       case 'a':       case 'p':       goto yy838;
+       default:        goto yy826;
        }
-yy820: ++YYCURSOR;
+yy836: ++YYCURSOR;
        if((YYLIMIT - YYCURSOR) < 4) YYFILL(4);
        yych = *YYCURSOR;
-       goto yy821;
-yy821: switch(yych){
-       case ' ':       goto yy820;
-       case 'A':       case 'P':       case 'a':       case 'p':       goto yy822;
+       goto yy837;
+yy837: switch(yych){
+       case ' ':       goto yy836;
+       case 'A':       case 'P':       case 'a':       case 'p':       goto yy838;
        default:        goto yy52;
        }
-yy822: yych = *++YYCURSOR;
+yy838: yych = *++YYCURSOR;
        switch(yych){
-       case '.':       goto yy823;
-       case 'M':       case 'm':       goto yy824;
+       case '.':       goto yy839;
+       case 'M':       case 'm':       goto yy840;
        default:        goto yy52;
        }
-yy823: yych = *++YYCURSOR;
+yy839: yych = *++YYCURSOR;
        switch(yych){
-       case 'M':       case 'm':       goto yy824;
+       case 'M':       case 'm':       goto yy840;
        default:        goto yy52;
        }
-yy824: yych = *++YYCURSOR;
+yy840: yych = *++YYCURSOR;
        switch(yych){
-       case '.':       goto yy808;
-       default:        goto yy807;
+       case '.':       goto yy824;
+       default:        goto yy823;
        }
-yy825: yyaccept = 12;
+yy841: yyaccept = 12;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case ' ':       goto yy826;
-       case '.':       case ':':       goto yy812;
-       case 'A':       case 'P':       case 'a':       case 'p':       goto yy828;
-       default:        goto yy810;
+       case ' ':       goto yy842;
+       case '.':       case ':':       goto yy828;
+       case 'A':       case 'P':       case 'a':       case 'p':       goto yy844;
+       default:        goto yy826;
        }
-yy826: ++YYCURSOR;
+yy842: ++YYCURSOR;
        if((YYLIMIT - YYCURSOR) < 4) YYFILL(4);
        yych = *YYCURSOR;
-       goto yy827;
-yy827: switch(yych){
-       case ' ':       goto yy826;
-       case 'A':       case 'P':       case 'a':       case 'p':       goto yy828;
+       goto yy843;
+yy843: switch(yych){
+       case ' ':       goto yy842;
+       case 'A':       case 'P':       case 'a':       case 'p':       goto yy844;
        default:        goto yy52;
        }
-yy828: yych = *++YYCURSOR;
+yy844: yych = *++YYCURSOR;
        switch(yych){
-       case '.':       goto yy829;
-       case 'M':       case 'm':       goto yy830;
+       case '.':       goto yy845;
+       case 'M':       case 'm':       goto yy846;
        default:        goto yy52;
        }
-yy829: yych = *++YYCURSOR;
+yy845: yych = *++YYCURSOR;
        switch(yych){
-       case 'M':       case 'm':       goto yy830;
+       case 'M':       case 'm':       goto yy846;
        default:        goto yy52;
        }
-yy830: yych = *++YYCURSOR;
+yy846: yych = *++YYCURSOR;
        switch(yych){
-       case '.':       goto yy808;
-       default:        goto yy807;
+       case '.':       goto yy824;
+       default:        goto yy823;
        }
-yy831: yych = *++YYCURSOR;
+yy847: yych = *++YYCURSOR;
        switch(yych){
-       case 'V':       case 'v':       goto yy832;
+       case 'V':       case 'v':       goto yy848;
        default:        goto yy52;
        }
-yy832: yyaccept = 11;
+yy848: yyaccept = 11;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -21963,7 +22708,7 @@ yy832:  yyaccept = 11;
        case '+':
        case ',':
        case '-':
-       case '.':       goto yy833;
+       case '.':       goto yy849;
        case '0':
        case '1':
        case '2':
@@ -21973,15 +22718,15 @@ yy832:        yyaccept = 11;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy835;
-       case 'E':       case 'e':       goto yy837;
-       default:        goto yy796;
+       case '9':       goto yy851;
+       case 'E':       case 'e':       goto yy853;
+       default:        goto yy812;
        }
-yy833: ++YYCURSOR;
+yy849: ++YYCURSOR;
        if((YYLIMIT - YYCURSOR) < 4) YYFILL(4);
        yych = *YYCURSOR;
-       goto yy834;
-yy834: switch(yych){
+       goto yy850;
+yy850: switch(yych){
        case ' ':
        case '!':
        case '"':
@@ -21996,7 +22741,7 @@ yy834:  switch(yych){
        case '+':
        case ',':
        case '-':
-       case '.':       goto yy833;
+       case '.':       goto yy849;
        case '0':
        case '1':
        case '2':
@@ -22006,10 +22751,10 @@ yy834:        switch(yych){
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy835;
+       case '9':       goto yy851;
        default:        goto yy52;
        }
-yy835: ++YYCURSOR;
+yy851: ++YYCURSOR;
        switch((yych = *YYCURSOR)) {
        case '0':
        case '1':
@@ -22020,10 +22765,10 @@ yy835:        ++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy842;
-       default:        goto yy836;
+       case '9':       goto yy858;
+       default:        goto yy852;
        }
-yy836:
+yy852:
 #line 1036 "parse_date.re"
 {
                DEBUG_OUTPUT("datefull");
@@ -22036,28 +22781,28 @@ yy836:
                TIMELIB_DEINIT;
                return TIMELIB_DATE_FULL;
        }
-#line 22040 "<stdout>"
-yy837: yych = *++YYCURSOR;
+#line 22785 "<stdout>"
+yy853: yych = *++YYCURSOR;
        switch(yych){
-       case 'M':       case 'm':       goto yy838;
+       case 'M':       case 'm':       goto yy854;
        default:        goto yy52;
        }
-yy838: yych = *++YYCURSOR;
+yy854: yych = *++YYCURSOR;
        switch(yych){
-       case 'B':       case 'b':       goto yy839;
+       case 'B':       case 'b':       goto yy855;
        default:        goto yy52;
        }
-yy839: yych = *++YYCURSOR;
+yy855: yych = *++YYCURSOR;
        switch(yych){
-       case 'E':       case 'e':       goto yy840;
+       case 'E':       case 'e':       goto yy856;
        default:        goto yy52;
        }
-yy840: yych = *++YYCURSOR;
+yy856: yych = *++YYCURSOR;
        switch(yych){
-       case 'R':       case 'r':       goto yy841;
+       case 'R':       case 'r':       goto yy857;
        default:        goto yy52;
        }
-yy841: yyaccept = 11;
+yy857: yyaccept = 11;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -22074,7 +22819,7 @@ yy841:  yyaccept = 11;
        case '+':
        case ',':
        case '-':
-       case '.':       goto yy833;
+       case '.':       goto yy849;
        case '0':
        case '1':
        case '2':
@@ -22084,10 +22829,10 @@ yy841:        yyaccept = 11;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy835;
-       default:        goto yy796;
+       case '9':       goto yy851;
+       default:        goto yy812;
        }
-yy842: yych = *++YYCURSOR;
+yy858: yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -22098,10 +22843,10 @@ yy842:        yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy843;
-       default:        goto yy836;
+       case '9':       goto yy859;
+       default:        goto yy852;
        }
-yy843: yych = *++YYCURSOR;
+yy859: yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -22112,17 +22857,17 @@ yy843:        yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy844;
-       default:        goto yy836;
+       case '9':       goto yy860;
+       default:        goto yy852;
        }
-yy844: yych = *++YYCURSOR;
-       goto yy836;
-yy845: yych = *++YYCURSOR;
+yy860: yych = *++YYCURSOR;
+       goto yy852;
+yy861: yych = *++YYCURSOR;
        switch(yych){
-       case 'T':       case 't':       goto yy846;
+       case 'T':       case 't':       goto yy862;
        default:        goto yy52;
        }
-yy846: yyaccept = 11;
+yy862: yyaccept = 11;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -22139,7 +22884,7 @@ yy846:  yyaccept = 11;
        case '+':
        case ',':
        case '-':
-       case '.':       goto yy833;
+       case '.':       goto yy849;
        case '0':
        case '1':
        case '2':
@@ -22149,36 +22894,36 @@ yy846:        yyaccept = 11;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy835;
-       case 'O':       case 'o':       goto yy847;
-       default:        goto yy796;
+       case '9':       goto yy851;
+       case 'O':       case 'o':       goto yy863;
+       default:        goto yy812;
        }
-yy847: yych = *++YYCURSOR;
+yy863: yych = *++YYCURSOR;
        switch(yych){
-       case 'B':       case 'b':       goto yy848;
+       case 'B':       case 'b':       goto yy864;
        default:        goto yy52;
        }
-yy848: yych = *++YYCURSOR;
+yy864: yych = *++YYCURSOR;
        switch(yych){
-       case 'E':       case 'e':       goto yy849;
+       case 'E':       case 'e':       goto yy865;
        default:        goto yy52;
        }
-yy849: yych = *++YYCURSOR;
+yy865: yych = *++YYCURSOR;
        switch(yych){
-       case 'R':       case 'r':       goto yy841;
+       case 'R':       case 'r':       goto yy857;
        default:        goto yy52;
        }
-yy850: yych = *++YYCURSOR;
+yy866: yych = *++YYCURSOR;
        switch(yych){
-       case 'G':       case 'g':       goto yy854;
+       case 'G':       case 'g':       goto yy870;
        default:        goto yy52;
        }
-yy851: yych = *++YYCURSOR;
+yy867: yych = *++YYCURSOR;
        switch(yych){
-       case 'R':       case 'r':       goto yy852;
+       case 'R':       case 'r':       goto yy868;
        default:        goto yy52;
        }
-yy852: yyaccept = 11;
+yy868: yyaccept = 11;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -22195,7 +22940,7 @@ yy852:  yyaccept = 11;
        case '+':
        case ',':
        case '-':
-       case '.':       goto yy833;
+       case '.':       goto yy849;
        case '0':
        case '1':
        case '2':
@@ -22205,16 +22950,16 @@ yy852:        yyaccept = 11;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy835;
-       case 'I':       case 'i':       goto yy853;
-       default:        goto yy796;
+       case '9':       goto yy851;
+       case 'I':       case 'i':       goto yy869;
+       default:        goto yy812;
        }
-yy853: yych = *++YYCURSOR;
+yy869: yych = *++YYCURSOR;
        switch(yych){
-       case 'L':       case 'l':       goto yy841;
+       case 'L':       case 'l':       goto yy857;
        default:        goto yy52;
        }
-yy854: yyaccept = 11;
+yy870: yyaccept = 11;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -22231,7 +22976,7 @@ yy854:  yyaccept = 11;
        case '+':
        case ',':
        case '-':
-       case '.':       goto yy833;
+       case '.':       goto yy849;
        case '0':
        case '1':
        case '2':
@@ -22241,32 +22986,32 @@ yy854:        yyaccept = 11;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy835;
-       case 'U':       case 'u':       goto yy855;
-       default:        goto yy796;
+       case '9':       goto yy851;
+       case 'U':       case 'u':       goto yy871;
+       default:        goto yy812;
        }
-yy855: yych = *++YYCURSOR;
+yy871: yych = *++YYCURSOR;
        switch(yych){
-       case 'S':       case 's':       goto yy856;
+       case 'S':       case 's':       goto yy872;
        default:        goto yy52;
        }
-yy856: yych = *++YYCURSOR;
+yy872: yych = *++YYCURSOR;
        switch(yych){
-       case 'T':       case 't':       goto yy841;
+       case 'T':       case 't':       goto yy857;
        default:        goto yy52;
        }
-yy857: yych = *++YYCURSOR;
+yy873: yych = *++YYCURSOR;
        switch(yych){
-       case 'L':       case 'l':       goto yy864;
-       case 'N':       case 'n':       goto yy863;
+       case 'L':       case 'l':       goto yy880;
+       case 'N':       case 'n':       goto yy879;
        default:        goto yy52;
        }
-yy858: yych = *++YYCURSOR;
+yy874: yych = *++YYCURSOR;
        switch(yych){
-       case 'N':       case 'n':       goto yy859;
+       case 'N':       case 'n':       goto yy875;
        default:        goto yy52;
        }
-yy859: yyaccept = 11;
+yy875: yyaccept = 11;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -22283,7 +23028,7 @@ yy859:  yyaccept = 11;
        case '+':
        case ',':
        case '-':
-       case '.':       goto yy833;
+       case '.':       goto yy849;
        case '0':
        case '1':
        case '2':
@@ -22293,26 +23038,26 @@ yy859:        yyaccept = 11;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy835;
-       case 'U':       case 'u':       goto yy860;
-       default:        goto yy796;
+       case '9':       goto yy851;
+       case 'U':       case 'u':       goto yy876;
+       default:        goto yy812;
        }
-yy860: yych = *++YYCURSOR;
+yy876: yych = *++YYCURSOR;
        switch(yych){
-       case 'A':       case 'a':       goto yy861;
+       case 'A':       case 'a':       goto yy877;
        default:        goto yy52;
        }
-yy861: yych = *++YYCURSOR;
+yy877: yych = *++YYCURSOR;
        switch(yych){
-       case 'R':       case 'r':       goto yy862;
+       case 'R':       case 'r':       goto yy878;
        default:        goto yy52;
        }
-yy862: yych = *++YYCURSOR;
+yy878: yych = *++YYCURSOR;
        switch(yych){
-       case 'Y':       case 'y':       goto yy841;
+       case 'Y':       case 'y':       goto yy857;
        default:        goto yy52;
        }
-yy863: yyaccept = 11;
+yy879: yyaccept = 11;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -22329,7 +23074,7 @@ yy863:  yyaccept = 11;
        case '+':
        case ',':
        case '-':
-       case '.':       goto yy833;
+       case '.':       goto yy849;
        case '0':
        case '1':
        case '2':
@@ -22339,11 +23084,11 @@ yy863:        yyaccept = 11;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy835;
-       case 'E':       case 'e':       goto yy841;
-       default:        goto yy796;
+       case '9':       goto yy851;
+       case 'E':       case 'e':       goto yy857;
+       default:        goto yy812;
        }
-yy864: yyaccept = 11;
+yy880: yyaccept = 11;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -22360,7 +23105,7 @@ yy864:  yyaccept = 11;
        case '+':
        case ',':
        case '-':
-       case '.':       goto yy833;
+       case '.':       goto yy849;
        case '0':
        case '1':
        case '2':
@@ -22370,11 +23115,11 @@ yy864:        yyaccept = 11;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy835;
-       case 'Y':       case 'y':       goto yy841;
-       default:        goto yy796;
+       case '9':       goto yy851;
+       case 'Y':       case 'y':       goto yy857;
+       default:        goto yy812;
        }
-yy865: yyaccept = 11;
+yy881: yyaccept = 11;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -22391,7 +23136,7 @@ yy865:  yyaccept = 11;
        case '+':
        case ',':
        case '-':
-       case '.':       goto yy833;
+       case '.':       goto yy849;
        case '0':
        case '1':
        case '2':
@@ -22401,11 +23146,11 @@ yy865:        yyaccept = 11;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy835;
-       case 'I':       goto yy841;
-       default:        goto yy796;
+       case '9':       goto yy851;
+       case 'I':       goto yy857;
+       default:        goto yy812;
        }
-yy866: yyaccept = 11;
+yy882: yyaccept = 11;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -22422,7 +23167,7 @@ yy866:  yyaccept = 11;
        case '+':
        case ',':
        case '-':
-       case '.':       goto yy833;
+       case '.':       goto yy849;
        case '0':
        case '1':
        case '2':
@@ -22432,11 +23177,11 @@ yy866:        yyaccept = 11;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy835;
-       case 'I':       goto yy867;
-       default:        goto yy796;
+       case '9':       goto yy851;
+       case 'I':       goto yy883;
+       default:        goto yy812;
        }
-yy867: yyaccept = 11;
+yy883: yyaccept = 11;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -22453,7 +23198,7 @@ yy867:  yyaccept = 11;
        case '+':
        case ',':
        case '-':
-       case '.':       goto yy833;
+       case '.':       goto yy849;
        case '0':
        case '1':
        case '2':
@@ -22463,11 +23208,11 @@ yy867:        yyaccept = 11;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy835;
-       case 'I':       goto yy841;
-       default:        goto yy796;
+       case '9':       goto yy851;
+       case 'I':       goto yy857;
+       default:        goto yy812;
        }
-yy868: yyaccept = 11;
+yy884: yyaccept = 11;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -22484,7 +23229,7 @@ yy868:  yyaccept = 11;
        case '+':
        case ',':
        case '-':
-       case '.':       goto yy833;
+       case '.':       goto yy849;
        case '0':
        case '1':
        case '2':
@@ -22494,14 +23239,14 @@ yy868:        yyaccept = 11;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy835;
-       case 'I':       goto yy841;
-       default:        goto yy796;
+       case '9':       goto yy851;
+       case 'I':       goto yy857;
+       default:        goto yy812;
        }
-yy869: yyaccept = 12;
+yy885: yyaccept = 12;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       goto yy900;
+       case '.':       goto yy916;
        case '0':
        case '1':
        case '2':
@@ -22511,31 +23256,31 @@ yy869:        yyaccept = 12;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy909;
-       case ':':       goto yy812;
-       default:        goto yy810;
+       case '9':       goto yy925;
+       case ':':       goto yy828;
+       default:        goto yy826;
        }
-yy870: yyaccept = 12;
+yy886: yyaccept = 12;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       goto yy900;
+       case '.':       goto yy916;
        case '0':
        case '1':
-       case '2':       goto yy909;
+       case '2':       goto yy925;
        case '3':
        case '4':
        case '5':
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy825;
-       case ':':       goto yy812;
-       default:        goto yy810;
+       case '9':       goto yy841;
+       case ':':       goto yy828;
+       default:        goto yy826;
        }
-yy871: yyaccept = 12;
+yy887: yyaccept = 12;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       goto yy900;
+       case '.':       goto yy916;
        case '0':
        case '1':
        case '2':
@@ -22545,49 +23290,49 @@ yy871:        yyaccept = 12;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy825;
-       case ':':       goto yy812;
-       default:        goto yy810;
+       case '9':       goto yy841;
+       case ':':       goto yy828;
+       default:        goto yy826;
        }
-yy872: yyaccept = 12;
+yy888: yyaccept = 12;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       goto yy900;
-       case ':':       goto yy812;
-       default:        goto yy810;
+       case '.':       goto yy916;
+       case ':':       goto yy828;
+       default:        goto yy826;
        }
-yy873: yych = *++YYCURSOR;
+yy889: yych = *++YYCURSOR;
        switch(yych){
-       case 'E':       case 'e':       goto yy894;
+       case 'E':       case 'e':       goto yy910;
        default:        goto yy52;
        }
-yy874: yych = *++YYCURSOR;
+yy890: yych = *++YYCURSOR;
        switch(yych){
-       case 'A':       case 'a':       goto yy891;
+       case 'A':       case 'a':       goto yy907;
        default:        goto yy52;
        }
-yy875: yych = *++YYCURSOR;
+yy891: yych = *++YYCURSOR;
        switch(yych){
-       case 'P':       case 'p':       goto yy851;
-       case 'U':       case 'u':       goto yy850;
+       case 'P':       case 'p':       goto yy867;
+       case 'U':       case 'u':       goto yy866;
        default:        goto yy52;
        }
-yy876: yych = *++YYCURSOR;
+yy892: yych = *++YYCURSOR;
        switch(yych){
-       case 'E':       case 'e':       goto yy884;
+       case 'E':       case 'e':       goto yy900;
        default:        goto yy52;
        }
-yy877: yych = *++YYCURSOR;
+yy893: yych = *++YYCURSOR;
        switch(yych){
-       case 'E':       case 'e':       goto yy878;
+       case 'E':       case 'e':       goto yy894;
        default:        goto yy52;
        }
-yy878: yych = *++YYCURSOR;
+yy894: yych = *++YYCURSOR;
        switch(yych){
-       case 'C':       case 'c':       goto yy879;
+       case 'C':       case 'c':       goto yy895;
        default:        goto yy52;
        }
-yy879: yyaccept = 11;
+yy895: yyaccept = 11;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -22604,7 +23349,7 @@ yy879:  yyaccept = 11;
        case '+':
        case ',':
        case '-':
-       case '.':       goto yy833;
+       case '.':       goto yy849;
        case '0':
        case '1':
        case '2':
@@ -22614,36 +23359,36 @@ yy879:        yyaccept = 11;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy835;
-       case 'E':       case 'e':       goto yy880;
-       default:        goto yy796;
+       case '9':       goto yy851;
+       case 'E':       case 'e':       goto yy896;
+       default:        goto yy812;
        }
-yy880: yych = *++YYCURSOR;
+yy896: yych = *++YYCURSOR;
        switch(yych){
-       case 'M':       case 'm':       goto yy881;
+       case 'M':       case 'm':       goto yy897;
        default:        goto yy52;
        }
-yy881: yych = *++YYCURSOR;
+yy897: yych = *++YYCURSOR;
        switch(yych){
-       case 'B':       case 'b':       goto yy882;
+       case 'B':       case 'b':       goto yy898;
        default:        goto yy52;
        }
-yy882: yych = *++YYCURSOR;
+yy898: yych = *++YYCURSOR;
        switch(yych){
-       case 'E':       case 'e':       goto yy883;
+       case 'E':       case 'e':       goto yy899;
        default:        goto yy52;
        }
-yy883: yych = *++YYCURSOR;
+yy899: yych = *++YYCURSOR;
        switch(yych){
-       case 'R':       case 'r':       goto yy841;
+       case 'R':       case 'r':       goto yy857;
        default:        goto yy52;
        }
-yy884: yych = *++YYCURSOR;
+yy900: yych = *++YYCURSOR;
        switch(yych){
-       case 'P':       case 'p':       goto yy885;
+       case 'P':       case 'p':       goto yy901;
        default:        goto yy52;
        }
-yy885: yyaccept = 11;
+yy901: yyaccept = 11;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -22660,7 +23405,7 @@ yy885:  yyaccept = 11;
        case '+':
        case ',':
        case '-':
-       case '.':       goto yy833;
+       case '.':       goto yy849;
        case '0':
        case '1':
        case '2':
@@ -22670,11 +23415,11 @@ yy885:        yyaccept = 11;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy835;
-       case 'T':       case 't':       goto yy886;
-       default:        goto yy796;
+       case '9':       goto yy851;
+       case 'T':       case 't':       goto yy902;
+       default:        goto yy812;
        }
-yy886: yyaccept = 11;
+yy902: yyaccept = 11;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -22691,7 +23436,7 @@ yy886:  yyaccept = 11;
        case '+':
        case ',':
        case '-':
-       case '.':       goto yy833;
+       case '.':       goto yy849;
        case '0':
        case '1':
        case '2':
@@ -22701,37 +23446,37 @@ yy886:        yyaccept = 11;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy835;
-       case 'E':       case 'e':       goto yy887;
-       default:        goto yy796;
+       case '9':       goto yy851;
+       case 'E':       case 'e':       goto yy903;
+       default:        goto yy812;
        }
-yy887: yych = *++YYCURSOR;
+yy903: yych = *++YYCURSOR;
        switch(yych){
-       case 'M':       case 'm':       goto yy888;
+       case 'M':       case 'm':       goto yy904;
        default:        goto yy52;
        }
-yy888: yych = *++YYCURSOR;
+yy904: yych = *++YYCURSOR;
        switch(yych){
-       case 'B':       case 'b':       goto yy889;
+       case 'B':       case 'b':       goto yy905;
        default:        goto yy52;
        }
-yy889: yych = *++YYCURSOR;
+yy905: yych = *++YYCURSOR;
        switch(yych){
-       case 'E':       case 'e':       goto yy890;
+       case 'E':       case 'e':       goto yy906;
        default:        goto yy52;
        }
-yy890: yych = *++YYCURSOR;
+yy906: yych = *++YYCURSOR;
        switch(yych){
-       case 'R':       case 'r':       goto yy841;
+       case 'R':       case 'r':       goto yy857;
        default:        goto yy52;
        }
-yy891: yych = *++YYCURSOR;
+yy907: yych = *++YYCURSOR;
        switch(yych){
-       case 'R':       case 'r':       goto yy892;
-       case 'Y':       case 'y':       goto yy841;
+       case 'R':       case 'r':       goto yy908;
+       case 'Y':       case 'y':       goto yy857;
        default:        goto yy52;
        }
-yy892: yyaccept = 11;
+yy908: yyaccept = 11;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -22748,7 +23493,7 @@ yy892:  yyaccept = 11;
        case '+':
        case ',':
        case '-':
-       case '.':       goto yy833;
+       case '.':       goto yy849;
        case '0':
        case '1':
        case '2':
@@ -22758,21 +23503,21 @@ yy892:        yyaccept = 11;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy835;
-       case 'C':       case 'c':       goto yy893;
-       default:        goto yy796;
+       case '9':       goto yy851;
+       case 'C':       case 'c':       goto yy909;
+       default:        goto yy812;
        }
-yy893: yych = *++YYCURSOR;
+yy909: yych = *++YYCURSOR;
        switch(yych){
-       case 'H':       case 'h':       goto yy841;
+       case 'H':       case 'h':       goto yy857;
        default:        goto yy52;
        }
-yy894: yych = *++YYCURSOR;
+yy910: yych = *++YYCURSOR;
        switch(yych){
-       case 'B':       case 'b':       goto yy895;
+       case 'B':       case 'b':       goto yy911;
        default:        goto yy52;
        }
-yy895: yyaccept = 11;
+yy911: yyaccept = 11;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -22789,7 +23534,7 @@ yy895:  yyaccept = 11;
        case '+':
        case ',':
        case '-':
-       case '.':       goto yy833;
+       case '.':       goto yy849;
        case '0':
        case '1':
        case '2':
@@ -22799,48 +23544,48 @@ yy895:        yyaccept = 11;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy835;
-       case 'R':       case 'r':       goto yy896;
-       default:        goto yy796;
+       case '9':       goto yy851;
+       case 'R':       case 'r':       goto yy912;
+       default:        goto yy812;
        }
-yy896: yych = *++YYCURSOR;
+yy912: yych = *++YYCURSOR;
        switch(yych){
-       case 'U':       case 'u':       goto yy897;
+       case 'U':       case 'u':       goto yy913;
        default:        goto yy52;
        }
-yy897: yych = *++YYCURSOR;
+yy913: yych = *++YYCURSOR;
        switch(yych){
-       case 'A':       case 'a':       goto yy898;
+       case 'A':       case 'a':       goto yy914;
        default:        goto yy52;
        }
-yy898: yych = *++YYCURSOR;
+yy914: yych = *++YYCURSOR;
        switch(yych){
-       case 'R':       case 'r':       goto yy899;
+       case 'R':       case 'r':       goto yy915;
        default:        goto yy52;
        }
-yy899: yych = *++YYCURSOR;
+yy915: yych = *++YYCURSOR;
        switch(yych){
-       case 'Y':       case 'y':       goto yy841;
+       case 'Y':       case 'y':       goto yy857;
        default:        goto yy52;
        }
-yy900: yych = *++YYCURSOR;
+yy916: yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy901;
-       case '6':       goto yy902;
+       case '5':       goto yy917;
+       case '6':       goto yy918;
        case '7':
        case '8':
-       case '9':       goto yy903;
+       case '9':       goto yy919;
        default:        goto yy52;
        }
-yy901: yyaccept = 12;
+yy917: yyaccept = 12;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       goto yy816;
+       case '.':       goto yy832;
        case '0':
        case '1':
        case '2':
@@ -22850,14 +23595,14 @@ yy901:        yyaccept = 12;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy908;
-       default:        goto yy810;
+       case '9':       goto yy924;
+       default:        goto yy826;
        }
-yy902: yyaccept = 12;
+yy918: yyaccept = 12;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       goto yy816;
-       case '0':       goto yy908;
+       case '.':       goto yy832;
+       case '0':       goto yy924;
        case '1':
        case '2':
        case '3':
@@ -22866,13 +23611,13 @@ yy902:        yyaccept = 12;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy904;
-       default:        goto yy810;
+       case '9':       goto yy920;
+       default:        goto yy826;
        }
-yy903: yyaccept = 12;
+yy919: yyaccept = 12;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       goto yy816;
+       case '.':       goto yy832;
        case '0':
        case '1':
        case '2':
@@ -22882,10 +23627,10 @@ yy903:        yyaccept = 12;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy904;
-       default:        goto yy810;
+       case '9':       goto yy920;
+       default:        goto yy826;
        }
-yy904: ++YYCURSOR;
+yy920: ++YYCURSOR;
        switch((yych = *YYCURSOR)) {
        case '0':
        case '1':
@@ -22896,10 +23641,10 @@ yy904:        ++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy906;
-       default:        goto yy905;
+       case '9':       goto yy922;
+       default:        goto yy921;
        }
-yy905:
+yy921:
 #line 1049 "parse_date.re"
 {
                DEBUG_OUTPUT("pointed date");
@@ -22912,8 +23657,8 @@ yy905:
                TIMELIB_DEINIT;
                return TIMELIB_DATE_FULL_POINTED;
        }
-#line 22916 "<stdout>"
-yy906: yych = *++YYCURSOR;
+#line 23661 "<stdout>"
+yy922: yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -22924,16 +23669,16 @@ yy906:        yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy907;
-       default:        goto yy905;
+       case '9':       goto yy923;
+       default:        goto yy921;
        }
-yy907: yych = *++YYCURSOR;
-       goto yy905;
-yy908: yyaccept = 12;
+yy923: yych = *++YYCURSOR;
+       goto yy921;
+yy924: yyaccept = 12;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case ' ':       goto yy820;
-       case '.':       goto yy816;
+       case ' ':       goto yy836;
+       case '.':       goto yy832;
        case '0':
        case '1':
        case '2':
@@ -22943,22 +23688,22 @@ yy908:        yyaccept = 12;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy906;
-       case 'A':       case 'P':       case 'a':       case 'p':       goto yy822;
-       default:        goto yy810;
+       case '9':       goto yy922;
+       case 'A':       case 'P':       case 'a':       case 'p':       goto yy838;
+       default:        goto yy826;
        }
-yy909: yyaccept = 12;
+yy925: yyaccept = 12;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case ' ':       goto yy826;
-       case '.':       goto yy900;
-       case ':':       goto yy812;
-       case 'A':       case 'P':       case 'a':       case 'p':       goto yy828;
-       default:        goto yy810;
+       case ' ':       goto yy842;
+       case '.':       goto yy916;
+       case ':':       goto yy828;
+       case 'A':       case 'P':       case 'a':       case 'p':       goto yy844;
+       default:        goto yy826;
        }
-yy910: yych = *++YYCURSOR;
+yy926: yych = *++YYCURSOR;
        switch(yych){
-       case '-':       goto yy949;
+       case '-':       goto yy965;
        case '0':
        case '1':
        case '2':
@@ -22968,70 +23713,70 @@ yy910:        yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy912;
+       case '9':       goto yy928;
        default:        goto yy52;
        }
-yy911: yych = *++YYCURSOR;
+yy927: yych = *++YYCURSOR;
        switch(yych){
-       case '-':       goto yy949;
+       case '-':       goto yy965;
        case '0':
        case '1':
-       case '2':       goto yy912;
+       case '2':       goto yy928;
        default:        goto yy52;
        }
-yy912: yych = *++YYCURSOR;
+yy928: yych = *++YYCURSOR;
        switch(yych){
-       case '-':       goto yy949;
+       case '-':       goto yy965;
        default:        goto yy52;
        }
-yy913: yych = *++YYCURSOR;
+yy929: yych = *++YYCURSOR;
        switch(yych){
-       case 'A':       case 'a':       goto yy945;
-       case 'U':       case 'u':       goto yy944;
+       case 'A':       case 'a':       goto yy961;
+       case 'U':       case 'u':       goto yy960;
        default:        goto yy52;
        }
-yy914: yych = *++YYCURSOR;
+yy930: yych = *++YYCURSOR;
        switch(yych){
-       case 'E':       case 'e':       goto yy942;
+       case 'E':       case 'e':       goto yy958;
        default:        goto yy52;
        }
-yy915: yych = *++YYCURSOR;
+yy931: yych = *++YYCURSOR;
        switch(yych){
-       case 'A':       case 'a':       goto yy939;
+       case 'A':       case 'a':       goto yy955;
        default:        goto yy52;
        }
-yy916: yych = *++YYCURSOR;
+yy932: yych = *++YYCURSOR;
        switch(yych){
-       case 'P':       case 'p':       goto yy936;
-       case 'U':       case 'u':       goto yy935;
+       case 'P':       case 'p':       goto yy952;
+       case 'U':       case 'u':       goto yy951;
        default:        goto yy52;
        }
-yy917: yych = *++YYCURSOR;
+yy933: yych = *++YYCURSOR;
        switch(yych){
-       case 'E':       case 'e':       goto yy932;
+       case 'E':       case 'e':       goto yy948;
        default:        goto yy52;
        }
-yy918: yych = *++YYCURSOR;
+yy934: yych = *++YYCURSOR;
        switch(yych){
-       case 'C':       case 'c':       goto yy930;
+       case 'C':       case 'c':       goto yy946;
        default:        goto yy52;
        }
-yy919: yych = *++YYCURSOR;
+yy935: yych = *++YYCURSOR;
        switch(yych){
-       case 'O':       case 'o':       goto yy928;
+       case 'O':       case 'o':       goto yy944;
        default:        goto yy52;
        }
-yy920: yych = *++YYCURSOR;
+yy936: yych = *++YYCURSOR;
        switch(yych){
-       case 'E':       case 'e':       goto yy921;
+       case 'E':       case 'e':       goto yy937;
        default:        goto yy52;
        }
-yy921: yych = *++YYCURSOR;
+yy937: yych = *++YYCURSOR;
        switch(yych){
-       case 'C':       case 'c':       goto yy922;
+       case 'C':       case 'c':       goto yy938;
        default:        goto yy52;
        }
-yy922: yyaccept = 11;
+yy938: yyaccept = 11;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -23046,8 +23791,8 @@ yy922:  yyaccept = 11;
        case ')':
        case '*':
        case '+':
-       case ',':       case '.':       goto yy833;
-       case '-':       goto yy923;
+       case ',':       case '.':       goto yy849;
+       case '-':       goto yy939;
        case '0':
        case '1':
        case '2':
@@ -23057,21 +23802,21 @@ yy922:        yyaccept = 11;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy835;
-       case 'E':       case 'e':       goto yy880;
-       default:        goto yy796;
+       case '9':       goto yy851;
+       case 'E':       case 'e':       goto yy896;
+       default:        goto yy812;
        }
-yy923: yych = *++YYCURSOR;
+yy939: yych = *++YYCURSOR;
        switch(yych){
-       case '0':       goto yy924;
+       case '0':       goto yy940;
        case '1':
-       case '2':       goto yy925;
-       case '3':       goto yy926;
-       default:        goto yy834;
+       case '2':       goto yy941;
+       case '3':       goto yy942;
+       default:        goto yy850;
        }
-yy924: yych = *++YYCURSOR;
+yy940: yych = *++YYCURSOR;
        switch(yych){
-       case '0':       goto yy842;
+       case '0':       goto yy858;
        case '1':
        case '2':
        case '3':
@@ -23080,10 +23825,10 @@ yy924:        yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy927;
-       default:        goto yy836;
+       case '9':       goto yy943;
+       default:        goto yy852;
        }
-yy925: yych = *++YYCURSOR;
+yy941: yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -23094,13 +23839,13 @@ yy925:        yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy927;
-       default:        goto yy836;
+       case '9':       goto yy943;
+       default:        goto yy852;
        }
-yy926: yych = *++YYCURSOR;
+yy942: yych = *++YYCURSOR;
        switch(yych){
        case '0':
-       case '1':       goto yy927;
+       case '1':       goto yy943;
        case '2':
        case '3':
        case '4':
@@ -23108,10 +23853,10 @@ yy926:        yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy842;
-       default:        goto yy836;
+       case '9':       goto yy858;
+       default:        goto yy852;
        }
-yy927: yych = *++YYCURSOR;
+yy943: yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -23122,15 +23867,15 @@ yy927:        yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy843;
-       default:        goto yy836;
+       case '9':       goto yy859;
+       default:        goto yy852;
        }
-yy928: yych = *++YYCURSOR;
+yy944: yych = *++YYCURSOR;
        switch(yych){
-       case 'V':       case 'v':       goto yy929;
+       case 'V':       case 'v':       goto yy945;
        default:        goto yy52;
        }
-yy929: yyaccept = 11;
+yy945: yyaccept = 11;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -23145,8 +23890,8 @@ yy929:  yyaccept = 11;
        case ')':
        case '*':
        case '+':
-       case ',':       case '.':       goto yy833;
-       case '-':       goto yy923;
+       case ',':       case '.':       goto yy849;
+       case '-':       goto yy939;
        case '0':
        case '1':
        case '2':
@@ -23156,16 +23901,16 @@ yy929:        yyaccept = 11;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy835;
-       case 'E':       case 'e':       goto yy837;
-       default:        goto yy796;
+       case '9':       goto yy851;
+       case 'E':       case 'e':       goto yy853;
+       default:        goto yy812;
        }
-yy930: yych = *++YYCURSOR;
+yy946: yych = *++YYCURSOR;
        switch(yych){
-       case 'T':       case 't':       goto yy931;
+       case 'T':       case 't':       goto yy947;
        default:        goto yy52;
        }
-yy931: yyaccept = 11;
+yy947: yyaccept = 11;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -23180,8 +23925,8 @@ yy931:  yyaccept = 11;
        case ')':
        case '*':
        case '+':
-       case ',':       case '.':       goto yy833;
-       case '-':       goto yy923;
+       case ',':       case '.':       goto yy849;
+       case '-':       goto yy939;
        case '0':
        case '1':
        case '2':
@@ -23191,16 +23936,16 @@ yy931:        yyaccept = 11;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy835;
-       case 'O':       case 'o':       goto yy847;
-       default:        goto yy796;
+       case '9':       goto yy851;
+       case 'O':       case 'o':       goto yy863;
+       default:        goto yy812;
        }
-yy932: yych = *++YYCURSOR;
+yy948: yych = *++YYCURSOR;
        switch(yych){
-       case 'P':       case 'p':       goto yy933;
+       case 'P':       case 'p':       goto yy949;
        default:        goto yy52;
        }
-yy933: yyaccept = 11;
+yy949: yyaccept = 11;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -23215,8 +23960,8 @@ yy933:  yyaccept = 11;
        case ')':
        case '*':
        case '+':
-       case ',':       case '.':       goto yy833;
-       case '-':       goto yy923;
+       case ',':       case '.':       goto yy849;
+       case '-':       goto yy939;
        case '0':
        case '1':
        case '2':
@@ -23226,11 +23971,11 @@ yy933:        yyaccept = 11;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy835;
-       case 'T':       case 't':       goto yy934;
-       default:        goto yy796;
+       case '9':       goto yy851;
+       case 'T':       case 't':       goto yy950;
+       default:        goto yy812;
        }
-yy934: yyaccept = 11;
+yy950: yyaccept = 11;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -23245,8 +23990,8 @@ yy934:  yyaccept = 11;
        case ')':
        case '*':
        case '+':
-       case ',':       case '.':       goto yy833;
-       case '-':       goto yy923;
+       case ',':       case '.':       goto yy849;
+       case '-':       goto yy939;
        case '0':
        case '1':
        case '2':
@@ -23256,21 +24001,21 @@ yy934:        yyaccept = 11;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy835;
-       case 'E':       case 'e':       goto yy887;
-       default:        goto yy796;
+       case '9':       goto yy851;
+       case 'E':       case 'e':       goto yy903;
+       default:        goto yy812;
        }
-yy935: yych = *++YYCURSOR;
+yy951: yych = *++YYCURSOR;
        switch(yych){
-       case 'G':       case 'g':       goto yy938;
+       case 'G':       case 'g':       goto yy954;
        default:        goto yy52;
        }
-yy936: yych = *++YYCURSOR;
+yy952: yych = *++YYCURSOR;
        switch(yych){
-       case 'R':       case 'r':       goto yy937;
+       case 'R':       case 'r':       goto yy953;
        default:        goto yy52;
        }
-yy937: yyaccept = 11;
+yy953: yyaccept = 11;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -23285,8 +24030,8 @@ yy937:  yyaccept = 11;
        case ')':
        case '*':
        case '+':
-       case ',':       case '.':       goto yy833;
-       case '-':       goto yy923;
+       case ',':       case '.':       goto yy849;
+       case '-':       goto yy939;
        case '0':
        case '1':
        case '2':
@@ -23296,11 +24041,11 @@ yy937:        yyaccept = 11;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy835;
-       case 'I':       case 'i':       goto yy853;
-       default:        goto yy796;
+       case '9':       goto yy851;
+       case 'I':       case 'i':       goto yy869;
+       default:        goto yy812;
        }
-yy938: yyaccept = 11;
+yy954: yyaccept = 11;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -23315,8 +24060,8 @@ yy938:  yyaccept = 11;
        case ')':
        case '*':
        case '+':
-       case ',':       case '.':       goto yy833;
-       case '-':       goto yy923;
+       case ',':       case '.':       goto yy849;
+       case '-':       goto yy939;
        case '0':
        case '1':
        case '2':
@@ -23326,17 +24071,17 @@ yy938:        yyaccept = 11;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy835;
-       case 'U':       case 'u':       goto yy855;
-       default:        goto yy796;
+       case '9':       goto yy851;
+       case 'U':       case 'u':       goto yy871;
+       default:        goto yy812;
        }
-yy939: yych = *++YYCURSOR;
+yy955: yych = *++YYCURSOR;
        switch(yych){
-       case 'R':       case 'r':       goto yy940;
-       case 'Y':       case 'y':       goto yy941;
+       case 'R':       case 'r':       goto yy956;
+       case 'Y':       case 'y':       goto yy957;
        default:        goto yy52;
        }
-yy940: yyaccept = 11;
+yy956: yyaccept = 11;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -23351,8 +24096,8 @@ yy940:  yyaccept = 11;
        case ')':
        case '*':
        case '+':
-       case ',':       case '.':       goto yy833;
-       case '-':       goto yy923;
+       case ',':       case '.':       goto yy849;
+       case '-':       goto yy939;
        case '0':
        case '1':
        case '2':
@@ -23362,11 +24107,11 @@ yy940:        yyaccept = 11;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy835;
-       case 'C':       case 'c':       goto yy893;
-       default:        goto yy796;
+       case '9':       goto yy851;
+       case 'C':       case 'c':       goto yy909;
+       default:        goto yy812;
        }
-yy941: yyaccept = 11;
+yy957: yyaccept = 11;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -23381,8 +24126,8 @@ yy941:  yyaccept = 11;
        case ')':
        case '*':
        case '+':
-       case ',':       case '.':       goto yy833;
-       case '-':       goto yy923;
+       case ',':       case '.':       goto yy849;
+       case '-':       goto yy939;
        case '0':
        case '1':
        case '2':
@@ -23392,15 +24137,15 @@ yy941:        yyaccept = 11;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy835;
-       default:        goto yy796;
+       case '9':       goto yy851;
+       default:        goto yy812;
        }
-yy942: yych = *++YYCURSOR;
+yy958: yych = *++YYCURSOR;
        switch(yych){
-       case 'B':       case 'b':       goto yy943;
+       case 'B':       case 'b':       goto yy959;
        default:        goto yy52;
        }
-yy943: yyaccept = 11;
+yy959: yyaccept = 11;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -23415,8 +24160,8 @@ yy943:  yyaccept = 11;
        case ')':
        case '*':
        case '+':
-       case ',':       case '.':       goto yy833;
-       case '-':       goto yy923;
+       case ',':       case '.':       goto yy849;
+       case '-':       goto yy939;
        case '0':
        case '1':
        case '2':
@@ -23426,22 +24171,22 @@ yy943:        yyaccept = 11;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy835;
-       case 'R':       case 'r':       goto yy896;
-       default:        goto yy796;
+       case '9':       goto yy851;
+       case 'R':       case 'r':       goto yy912;
+       default:        goto yy812;
        }
-yy944: yych = *++YYCURSOR;
+yy960: yych = *++YYCURSOR;
        switch(yych){
-       case 'L':       case 'l':       goto yy948;
-       case 'N':       case 'n':       goto yy947;
+       case 'L':       case 'l':       goto yy964;
+       case 'N':       case 'n':       goto yy963;
        default:        goto yy52;
        }
-yy945: yych = *++YYCURSOR;
+yy961: yych = *++YYCURSOR;
        switch(yych){
-       case 'N':       case 'n':       goto yy946;
+       case 'N':       case 'n':       goto yy962;
        default:        goto yy52;
        }
-yy946: yyaccept = 11;
+yy962: yyaccept = 11;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -23456,8 +24201,8 @@ yy946:  yyaccept = 11;
        case ')':
        case '*':
        case '+':
-       case ',':       case '.':       goto yy833;
-       case '-':       goto yy923;
+       case ',':       case '.':       goto yy849;
+       case '-':       goto yy939;
        case '0':
        case '1':
        case '2':
@@ -23467,11 +24212,11 @@ yy946:        yyaccept = 11;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy835;
-       case 'U':       case 'u':       goto yy860;
-       default:        goto yy796;
+       case '9':       goto yy851;
+       case 'U':       case 'u':       goto yy876;
+       default:        goto yy812;
        }
-yy947: yyaccept = 11;
+yy963: yyaccept = 11;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -23486,8 +24231,8 @@ yy947:  yyaccept = 11;
        case ')':
        case '*':
        case '+':
-       case ',':       case '.':       goto yy833;
-       case '-':       goto yy923;
+       case ',':       case '.':       goto yy849;
+       case '-':       goto yy939;
        case '0':
        case '1':
        case '2':
@@ -23497,11 +24242,11 @@ yy947:        yyaccept = 11;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy835;
-       case 'E':       case 'e':       goto yy841;
-       default:        goto yy796;
+       case '9':       goto yy851;
+       case 'E':       case 'e':       goto yy857;
+       default:        goto yy812;
        }
-yy948: yyaccept = 11;
+yy964: yyaccept = 11;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -23516,8 +24261,8 @@ yy948:  yyaccept = 11;
        case ')':
        case '*':
        case '+':
-       case ',':       case '.':       goto yy833;
-       case '-':       goto yy923;
+       case ',':       case '.':       goto yy849;
+       case '-':       goto yy939;
        case '0':
        case '1':
        case '2':
@@ -23527,26 +24272,27 @@ yy948:        yyaccept = 11;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy835;
-       case 'Y':       case 'y':       goto yy841;
-       default:        goto yy796;
+       case '9':       goto yy851;
+       case 'Y':       case 'y':       goto yy857;
+       default:        goto yy812;
        }
-yy949: yych = *++YYCURSOR;
+yy965: yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
-       case '2':       goto yy950;
-       case '3':       goto yy952;
+       case '2':       goto yy966;
+       case '3':       goto yy968;
        case '4':
        case '5':
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy953;
+       case '9':       goto yy969;
        default:        goto yy52;
        }
-yy950: ++YYCURSOR;
-       switch((yych = *YYCURSOR)) {
+yy966: yyaccept = 13;
+       yych = *(YYMARKER = ++YYCURSOR);
+       switch(yych){
        case '0':
        case '1':
        case '2':
@@ -23556,10 +24302,36 @@ yy950:        ++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy953;
-       default:        goto yy951;
+       case '9':       goto yy969;
+       case 'a':
+       case 'b':
+       case 'c':
+       case 'd':
+       case 'e':
+       case 'f':
+       case 'g':
+       case 'h':
+       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':
+       case 'n':
+       case 'o':
+       case 'p':
+       case 'q':
+       case 'r':
+       case 's':
+       case 't':
+       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy970;
+       default:        goto yy967;
        }
-yy951:
+yy967:
 #line 1023 "parse_date.re"
 {
                DEBUG_OUTPUT("gnudateshort");
@@ -23572,19 +24344,107 @@ yy951:
                TIMELIB_DEINIT;
                return TIMELIB_ISO_DATE;
        }
-#line 23576 "<stdout>"
-yy952: yych = *++YYCURSOR;
+#line 24348 "<stdout>"
+yy968: yyaccept = 13;
+       yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case '0':
-       case '1':       goto yy953;
-       default:        goto yy951;
+       case '1':       goto yy969;
+       case 'a':
+       case 'b':
+       case 'c':
+       case 'd':
+       case 'e':
+       case 'f':
+       case 'g':
+       case 'h':
+       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':
+       case 'n':
+       case 'o':
+       case 'p':
+       case 'q':
+       case 'r':
+       case 's':
+       case 't':
+       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy970;
+       default:        goto yy967;
+       }
+yy969: yyaccept = 13;
+       yych = *(YYMARKER = ++YYCURSOR);
+       switch(yych){
+       case 'a':
+       case 'b':
+       case 'c':
+       case 'd':
+       case 'e':
+       case 'f':
+       case 'g':
+       case 'h':
+       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':
+       case 'n':
+       case 'o':
+       case 'p':
+       case 'q':
+       case 'r':
+       case 's':
+       case 't':
+       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy970;
+       default:        goto yy967;
+       }
+yy970: yych = *++YYCURSOR;
+       switch(yych){
+       case 'a':
+       case 'b':
+       case 'c':
+       case 'd':
+       case 'e':
+       case 'f':
+       case 'g':
+       case 'h':
+       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':
+       case 'n':
+       case 'o':
+       case 'p':
+       case 'q':
+       case 'r':
+       case 's':
+       case 't':
+       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy971;
+       default:        goto yy52;
        }
-yy953: yych = *++YYCURSOR;
-       goto yy951;
-yy954: yyaccept = 13;
+yy971: yych = *++YYCURSOR;
+       goto yy967;
+yy972: yyaccept = 14;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '/':       goto yy1006;
+       case '/':       goto yy1025;
        case '0':
        case '1':
        case '2':
@@ -23594,10 +24454,36 @@ yy954:        yyaccept = 13;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy957;
-       default:        goto yy955;
+       case '9':       goto yy975;
+       case 'a':
+       case 'b':
+       case 'c':
+       case 'd':
+       case 'e':
+       case 'f':
+       case 'g':
+       case 'h':
+       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':
+       case 'n':
+       case 'o':
+       case 'p':
+       case 'q':
+       case 'r':
+       case 's':
+       case 't':
+       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy1024;
+       default:        goto yy973;
        }
-yy955:
+yy973:
 #line 996 "parse_date.re"
 {
                DEBUG_OUTPUT("americanshort | american");
@@ -23612,74 +24498,126 @@ yy955:
                TIMELIB_DEINIT;
                return TIMELIB_AMERICAN;
        }
-#line 23616 "<stdout>"
-yy956: yyaccept = 13;
+#line 24502 "<stdout>"
+yy974: yyaccept = 14;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '/':       goto yy1006;
+       case '/':       goto yy1025;
        case '0':
-       case '1':       goto yy957;
-       default:        goto yy955;
+       case '1':       goto yy975;
+       case 'a':
+       case 'b':
+       case 'c':
+       case 'd':
+       case 'e':
+       case 'f':
+       case 'g':
+       case 'h':
+       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':
+       case 'n':
+       case 'o':
+       case 'p':
+       case 'q':
+       case 'r':
+       case 's':
+       case 't':
+       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy1024;
+       default:        goto yy973;
        }
-yy957: yyaccept = 13;
+yy975: yyaccept = 14;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '/':       goto yy1006;
-       default:        goto yy955;
+       case '/':       goto yy1025;
+       case 'a':
+       case 'b':
+       case 'c':
+       case 'd':
+       case 'e':
+       case 'f':
+       case 'g':
+       case 'h':
+       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':
+       case 'n':
+       case 'o':
+       case 'p':
+       case 'q':
+       case 'r':
+       case 's':
+       case 't':
+       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy1024;
+       default:        goto yy973;
        }
-yy958: yych = *++YYCURSOR;
+yy976: yych = *++YYCURSOR;
        switch(yych){
-       case 'A':       case 'a':       goto yy1005;
-       case 'U':       case 'u':       goto yy1004;
+       case 'A':       case 'a':       goto yy1023;
+       case 'U':       case 'u':       goto yy1022;
        default:        goto yy52;
        }
-yy959: yych = *++YYCURSOR;
+yy977: yych = *++YYCURSOR;
        switch(yych){
-       case 'E':       case 'e':       goto yy1003;
+       case 'E':       case 'e':       goto yy1021;
        default:        goto yy52;
        }
-yy960: yych = *++YYCURSOR;
+yy978: yych = *++YYCURSOR;
        switch(yych){
-       case 'A':       case 'a':       goto yy1002;
+       case 'A':       case 'a':       goto yy1020;
        default:        goto yy52;
        }
-yy961: yych = *++YYCURSOR;
+yy979: yych = *++YYCURSOR;
        switch(yych){
-       case 'P':       case 'p':       goto yy1001;
-       case 'U':       case 'u':       goto yy1000;
+       case 'P':       case 'p':       goto yy1019;
+       case 'U':       case 'u':       goto yy1018;
        default:        goto yy52;
        }
-yy962: yych = *++YYCURSOR;
+yy980: yych = *++YYCURSOR;
        switch(yych){
-       case 'E':       case 'e':       goto yy998;
+       case 'E':       case 'e':       goto yy1016;
        default:        goto yy52;
        }
-yy963: yych = *++YYCURSOR;
+yy981: yych = *++YYCURSOR;
        switch(yych){
-       case 'C':       case 'c':       goto yy997;
+       case 'C':       case 'c':       goto yy1015;
        default:        goto yy52;
        }
-yy964: yych = *++YYCURSOR;
+yy982: yych = *++YYCURSOR;
        switch(yych){
-       case 'O':       case 'o':       goto yy996;
+       case 'O':       case 'o':       goto yy1014;
        default:        goto yy52;
        }
-yy965: yych = *++YYCURSOR;
+yy983: yych = *++YYCURSOR;
        switch(yych){
-       case 'E':       case 'e':       goto yy966;
+       case 'E':       case 'e':       goto yy984;
        default:        goto yy52;
        }
-yy966: yych = *++YYCURSOR;
+yy984: yych = *++YYCURSOR;
        switch(yych){
-       case 'C':       case 'c':       goto yy967;
+       case 'C':       case 'c':       goto yy985;
        default:        goto yy52;
        }
-yy967: yych = *++YYCURSOR;
+yy985: yych = *++YYCURSOR;
        switch(yych){
-       case '/':       goto yy968;
+       case '/':       goto yy986;
        default:        goto yy52;
        }
-yy968: yych = *++YYCURSOR;
+yy986: yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -23690,10 +24628,10 @@ yy968:        yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy969;
+       case '9':       goto yy987;
        default:        goto yy52;
        }
-yy969: yych = *++YYCURSOR;
+yy987: yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -23704,10 +24642,10 @@ yy969:        yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy970;
+       case '9':       goto yy988;
        default:        goto yy52;
        }
-yy970: yych = *++YYCURSOR;
+yy988: yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -23718,10 +24656,10 @@ yy970:        yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy971;
+       case '9':       goto yy989;
        default:        goto yy52;
        }
-yy971: yych = *++YYCURSOR;
+yy989: yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -23732,22 +24670,22 @@ yy971:        yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy972;
+       case '9':       goto yy990;
        default:        goto yy52;
        }
-yy972: yych = *++YYCURSOR;
+yy990: yych = *++YYCURSOR;
        switch(yych){
-       case ':':       goto yy973;
+       case ':':       goto yy991;
        default:        goto yy52;
        }
-yy973: yych = *++YYCURSOR;
+yy991: yych = *++YYCURSOR;
        switch(yych){
        case '0':
-       case '1':       goto yy974;
-       case '2':       goto yy975;
+       case '1':       goto yy992;
+       case '2':       goto yy993;
        default:        goto yy52;
        }
-yy974: yych = *++YYCURSOR;
+yy992: yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -23758,33 +24696,33 @@ yy974:        yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy976;
+       case '9':       goto yy994;
        default:        goto yy52;
        }
-yy975: yych = *++YYCURSOR;
+yy993: yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
-       case '3':       goto yy976;
+       case '3':       goto yy994;
        default:        goto yy52;
        }
-yy976: yych = *++YYCURSOR;
+yy994: yych = *++YYCURSOR;
        switch(yych){
-       case ':':       goto yy977;
+       case ':':       goto yy995;
        default:        goto yy52;
        }
-yy977: yych = *++YYCURSOR;
+yy995: yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy978;
+       case '5':       goto yy996;
        default:        goto yy52;
        }
-yy978: yych = *++YYCURSOR;
+yy996: yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -23795,26 +24733,26 @@ yy978:        yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy979;
+       case '9':       goto yy997;
        default:        goto yy52;
        }
-yy979: yych = *++YYCURSOR;
+yy997: yych = *++YYCURSOR;
        switch(yych){
-       case ':':       goto yy980;
+       case ':':       goto yy998;
        default:        goto yy52;
        }
-yy980: yych = *++YYCURSOR;
+yy998: yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy981;
-       case '6':       goto yy982;
+       case '5':       goto yy999;
+       case '6':       goto yy1000;
        default:        goto yy52;
        }
-yy981: yych = *++YYCURSOR;
+yy999: yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -23825,58 +24763,58 @@ yy981:        yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy983;
+       case '9':       goto yy1001;
        default:        goto yy52;
        }
-yy982: yych = *++YYCURSOR;
+yy1000:        yych = *++YYCURSOR;
        switch(yych){
-       case '0':       goto yy983;
+       case '0':       goto yy1001;
        default:        goto yy52;
        }
-yy983: yych = *++YYCURSOR;
+yy1001:        yych = *++YYCURSOR;
        switch(yych){
-       case ' ':       goto yy984;
+       case ' ':       goto yy1002;
        default:        goto yy52;
        }
-yy984: ++YYCURSOR;
+yy1002:        ++YYCURSOR;
        if((YYLIMIT - YYCURSOR) < 6) YYFILL(6);
        yych = *YYCURSOR;
-       goto yy985;
-yy985: switch(yych){
-       case ' ':       goto yy984;
-       case '+':       case '-':       goto yy986;
+       goto yy1003;
+yy1003:        switch(yych){
+       case ' ':       goto yy1002;
+       case '+':       case '-':       goto yy1004;
        default:        goto yy52;
        }
-yy986: yych = *++YYCURSOR;
+yy1004:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
-       case '1':       goto yy987;
-       case '2':       goto yy989;
+       case '1':       goto yy1005;
+       case '2':       goto yy1007;
        case '3':
        case '4':
        case '5':
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy990;
+       case '9':       goto yy1008;
        default:        goto yy52;
        }
-yy987: ++YYCURSOR;
+yy1005:        ++YYCURSOR;
        switch((yych = *YYCURSOR)) {
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy994;
+       case '5':       goto yy1012;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy990;
-       case ':':       goto yy991;
-       default:        goto yy988;
+       case '9':       goto yy1008;
+       case ':':       goto yy1009;
+       default:        goto yy1006;
        }
-yy988:
+yy1006:
 #line 1223 "parse_date.re"
 {
                int tz_not_found;
@@ -23895,20 +24833,20 @@ yy988:
                TIMELIB_DEINIT;
                return TIMELIB_CLF;
        }
-#line 23899 "<stdout>"
-yy989: yyaccept = 14;
+#line 24837 "<stdout>"
+yy1007:        yyaccept = 15;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case '0':
        case '1':
        case '2':
-       case '3':       goto yy994;
+       case '3':       goto yy1012;
        case '4':
-       case '5':       goto yy992;
-       case ':':       goto yy991;
-       default:        goto yy988;
+       case '5':       goto yy1010;
+       case ':':       goto yy1009;
+       default:        goto yy1006;
        }
-yy990: yyaccept = 14;
+yy1008:        yyaccept = 15;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case '0':
@@ -23916,11 +24854,11 @@ yy990:        yyaccept = 14;
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy992;
-       case ':':       goto yy991;
-       default:        goto yy988;
+       case '5':       goto yy1010;
+       case ':':       goto yy1009;
+       default:        goto yy1006;
        }
-yy991: yyaccept = 14;
+yy1009:        yyaccept = 15;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case '0':
@@ -23928,10 +24866,10 @@ yy991:        yyaccept = 14;
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy992;
-       default:        goto yy988;
+       case '5':       goto yy1010;
+       default:        goto yy1006;
        }
-yy992: yych = *++YYCURSOR;
+yy1010:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -23942,27 +24880,27 @@ yy992:        yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy993;
+       case '9':       goto yy1011;
        default:        goto yy52;
        }
-yy993: yych = *++YYCURSOR;
-       goto yy988;
-yy994: yych = *++YYCURSOR;
+yy1011:        yych = *++YYCURSOR;
+       goto yy1006;
+yy1012:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy995;
+       case '5':       goto yy1013;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy993;
-       case ':':       goto yy991;
-       default:        goto yy988;
+       case '9':       goto yy1011;
+       case ':':       goto yy1009;
+       default:        goto yy1006;
        }
-yy995: yych = *++YYCURSOR;
+yy1013:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -23973,61 +24911,91 @@ yy995:        yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy993;
-       default:        goto yy988;
+       case '9':       goto yy1011;
+       default:        goto yy1006;
        }
-yy996: yych = *++YYCURSOR;
+yy1014:        yych = *++YYCURSOR;
        switch(yych){
-       case 'V':       case 'v':       goto yy967;
+       case 'V':       case 'v':       goto yy985;
        default:        goto yy52;
        }
-yy997: yych = *++YYCURSOR;
+yy1015:        yych = *++YYCURSOR;
        switch(yych){
-       case 'T':       case 't':       goto yy967;
+       case 'T':       case 't':       goto yy985;
        default:        goto yy52;
        }
-yy998: yych = *++YYCURSOR;
+yy1016:        yych = *++YYCURSOR;
        switch(yych){
-       case 'P':       case 'p':       goto yy999;
+       case 'P':       case 'p':       goto yy1017;
        default:        goto yy52;
        }
-yy999: yych = *++YYCURSOR;
+yy1017:        yych = *++YYCURSOR;
        switch(yych){
-       case '/':       goto yy968;
-       case 'T':       case 't':       goto yy967;
+       case '/':       goto yy986;
+       case 'T':       case 't':       goto yy985;
        default:        goto yy52;
        }
-yy1000:        yych = *++YYCURSOR;
+yy1018:        yych = *++YYCURSOR;
        switch(yych){
-       case 'G':       case 'g':       goto yy967;
+       case 'G':       case 'g':       goto yy985;
        default:        goto yy52;
        }
-yy1001:        yych = *++YYCURSOR;
+yy1019:        yych = *++YYCURSOR;
        switch(yych){
-       case 'R':       case 'r':       goto yy967;
+       case 'R':       case 'r':       goto yy985;
        default:        goto yy52;
        }
-yy1002:        yych = *++YYCURSOR;
+yy1020:        yych = *++YYCURSOR;
        switch(yych){
-       case 'R':       case 'Y':       case 'r':       case 'y':       goto yy967;
+       case 'R':       case 'Y':       case 'r':       case 'y':       goto yy985;
        default:        goto yy52;
        }
-yy1003:        yych = *++YYCURSOR;
+yy1021:        yych = *++YYCURSOR;
        switch(yych){
-       case 'B':       case 'b':       goto yy967;
+       case 'B':       case 'b':       goto yy985;
        default:        goto yy52;
        }
-yy1004:        yych = *++YYCURSOR;
+yy1022:        yych = *++YYCURSOR;
+       switch(yych){
+       case 'L':       case 'N':       case 'l':       case 'n':       goto yy985;
+       default:        goto yy52;
+       }
+yy1023:        yych = *++YYCURSOR;
        switch(yych){
-       case 'L':       case 'N':       case 'l':       case 'n':       goto yy967;
+       case 'N':       case 'n':       goto yy985;
        default:        goto yy52;
        }
-yy1005:        yych = *++YYCURSOR;
+yy1024:        yych = *++YYCURSOR;
        switch(yych){
-       case 'N':       case 'n':       goto yy967;
+       case 'a':
+       case 'b':
+       case 'c':
+       case 'd':
+       case 'e':
+       case 'f':
+       case 'g':
+       case 'h':
+       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':
+       case 'n':
+       case 'o':
+       case 'p':
+       case 'q':
+       case 'r':
+       case 's':
+       case 't':
+       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy1030;
        default:        goto yy52;
        }
-yy1006:        yych = *++YYCURSOR;
+yy1025:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -24038,10 +25006,10 @@ yy1006:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1007;
+       case '9':       goto yy1026;
        default:        goto yy52;
        }
-yy1007:        yych = *++YYCURSOR;
+yy1026:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -24052,10 +25020,10 @@ yy1007:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1008;
-       default:        goto yy955;
+       case '9':       goto yy1027;
+       default:        goto yy973;
        }
-yy1008:        yych = *++YYCURSOR;
+yy1027:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -24066,10 +25034,10 @@ yy1008:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1009;
-       default:        goto yy955;
+       case '9':       goto yy1028;
+       default:        goto yy973;
        }
-yy1009:        yych = *++YYCURSOR;
+yy1028:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -24080,16 +25048,65 @@ yy1009:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1010;
-       default:        goto yy955;
+       case '9':       goto yy1029;
+       default:        goto yy973;
        }
-yy1010:        yych = *++YYCURSOR;
-       goto yy955;
-yy1011:        yych = *++YYCURSOR;
+yy1029:        yych = *++YYCURSOR;
+       goto yy973;
+yy1030:        yyaccept = 14;
+       yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '-':       goto yy1012;
-       case '0':
-       case '1':
+       case '/':       goto yy1025;
+       default:        goto yy973;
+       }
+yy1031:        yyaccept = 16;
+       yych = *(YYMARKER = ++YYCURSOR);
+       switch(yych){
+       case ' ':
+       case '!':
+       case '"':
+       case '#':
+       case '$':
+       case '%':
+       case '&':
+       case '\'':
+       case '(':
+       case ')':
+       case '*':
+       case '+':
+       case ',':
+       case '-':       case 'A':       case 'D':       case 'F':       case 'I':
+       case 'J':       case 'M':
+       case 'N':
+       case 'O':       case 'S':       case 'V':       case 'X':       case 'a':       case 'd':       case 'f':       case 'j':       case 'm':
+       case 'n':
+       case 'o':       case 's':       goto yy809;
+       case '.':       goto yy1040;
+       case '/':       goto yy1033;
+       default:        goto yy823;
+       }
+yy1032:        yych = *++YYCURSOR;
+       switch(yych){
+       case '.':       goto yy1034;
+       case '/':       goto yy1033;
+       default:        goto yy809;
+       }
+yy1033:        yych = *++YYCURSOR;
+       switch(yych){
+       case 'A':       case 'a':       goto yy979;
+       case 'D':       case 'd':       goto yy983;
+       case 'F':       case 'f':       goto yy977;
+       case 'J':       case 'j':       goto yy976;
+       case 'M':       case 'm':       goto yy978;
+       case 'N':       case 'n':       goto yy982;
+       case 'O':       case 'o':       goto yy981;
+       case 'S':       case 's':       goto yy980;
+       default:        goto yy52;
+       }
+yy1034:        yych = *++YYCURSOR;
+       switch(yych){
+       case '0':       goto yy1035;
+       case '1':       goto yy1036;
        case '2':
        case '3':
        case '4':
@@ -24097,13 +25114,14 @@ yy1011:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1039;
-       default:        goto yy56;
+       case '9':       goto yy1037;
+       default:        goto yy809;
        }
-yy1012:        yych = *++YYCURSOR;
+yy1035:        yych = *++YYCURSOR;
        switch(yych){
-       case '0':       goto yy910;
-       case '1':       goto yy911;
+       case '.':       goto yy1038;
+       case '0':
+       case '1':
        case '2':
        case '3':
        case '4':
@@ -24111,79 +25129,25 @@ yy1012:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy912;
-       case 'A':       case 'a':       goto yy1016;
-       case 'D':       case 'd':       goto yy1020;
-       case 'F':       case 'f':       goto yy1014;
-       case 'J':       case 'j':       goto yy1013;
-       case 'M':       case 'm':       goto yy1015;
-       case 'N':       case 'n':       goto yy1019;
-       case 'O':       case 'o':       goto yy1018;
-       case 'S':       case 's':       goto yy1017;
-       default:        goto yy52;
-       }
-yy1013:        yych = *++YYCURSOR;
-       switch(yych){
-       case 'A':       case 'a':       goto yy1038;
-       case 'U':       case 'u':       goto yy1037;
-       default:        goto yy52;
-       }
-yy1014:        yych = *++YYCURSOR;
-       switch(yych){
-       case 'E':       case 'e':       goto yy1036;
-       default:        goto yy52;
-       }
-yy1015:        yych = *++YYCURSOR;
-       switch(yych){
-       case 'A':       case 'a':       goto yy1035;
-       default:        goto yy52;
-       }
-yy1016:        yych = *++YYCURSOR;
-       switch(yych){
-       case 'P':       case 'p':       goto yy1034;
-       case 'U':       case 'u':       goto yy1033;
+       case '9':       goto yy1037;
        default:        goto yy52;
        }
-yy1017:        yych = *++YYCURSOR;
-       switch(yych){
-       case 'E':       case 'e':       goto yy1031;
-       default:        goto yy52;
-       }
-yy1018:        yych = *++YYCURSOR;
-       switch(yych){
-       case 'C':       case 'c':       goto yy1030;
-       default:        goto yy52;
-       }
-yy1019:        yych = *++YYCURSOR;
-       switch(yych){
-       case 'O':       case 'o':       goto yy1029;
-       default:        goto yy52;
-       }
-yy1020:        yych = *++YYCURSOR;
-       switch(yych){
-       case 'E':       case 'e':       goto yy1021;
-       default:        goto yy52;
-       }
-yy1021:        yych = *++YYCURSOR;
-       switch(yych){
-       case 'C':       case 'c':       goto yy1022;
-       default:        goto yy52;
-       }
-yy1022:        yych = *++YYCURSOR;
+yy1036:        yych = *++YYCURSOR;
        switch(yych){
-       case '-':       goto yy1023;
+       case '.':       goto yy1038;
+       case '0':
+       case '1':
+       case '2':       goto yy1037;
        default:        goto yy52;
        }
-yy1023:        yych = *++YYCURSOR;
+yy1037:        yych = *++YYCURSOR;
        switch(yych){
-       case '0':       goto yy1024;
-       case '1':
-       case '2':       goto yy1025;
-       case '3':       goto yy1026;
+       case '.':       goto yy1038;
        default:        goto yy52;
        }
-yy1024:        yych = *++YYCURSOR;
+yy1038:        yych = *++YYCURSOR;
        switch(yych){
+       case '0':
        case '1':
        case '2':
        case '3':
@@ -24192,10 +25156,10 @@ yy1024:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1027;
+       case '9':       goto yy1039;
        default:        goto yy52;
        }
-yy1025:        yych = *++YYCURSOR;
+yy1039:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -24206,18 +25170,317 @@ yy1025:      yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1027;
-       default:        goto yy52;
+       case '9':       goto yy920;
+       default:        goto yy921;
        }
-yy1026:        yych = *++YYCURSOR;
+yy1040:        yyaccept = 16;
+       yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '0':
-       case '1':       goto yy1027;
-       default:        goto yy52;
+       case ' ':
+       case '!':
+       case '"':
+       case '#':
+       case '$':
+       case '%':
+       case '&':
+       case '\'':
+       case '(':
+       case ')':
+       case '*':
+       case '+':
+       case ',':
+       case '-':
+       case '.':       case 'A':       case 'D':       case 'F':       case 'I':
+       case 'J':       case 'M':
+       case 'N':
+       case 'O':       case 'S':       case 'V':       case 'X':       case 'a':       case 'd':       case 'f':       case 'j':       case 'm':
+       case 'n':
+       case 'o':       case 's':       goto yy809;
+       case '0':       goto yy1035;
+       case '1':       goto yy1036;
+       case '2':
+       case '3':
+       case '4':
+       case '5':
+       case '6':
+       case '7':
+       case '8':
+       case '9':       goto yy1037;
+       default:        goto yy823;
        }
-yy1027:        ++YYCURSOR;
-       goto yy1028;
-yy1028:
+yy1041:        yych = *++YYCURSOR;
+       switch(yych){
+       case '.':       goto yy1034;
+       case '/':       goto yy1033;
+       case 'T':       case 't':       goto yy862;
+       default:        goto yy809;
+       }
+yy1042:        yych = *++YYCURSOR;
+       switch(yych){
+       case '.':       goto yy1034;
+       case '/':       goto yy1033;
+       case 'V':       goto yy1043;
+       case 'v':       goto yy848;
+       default:        goto yy809;
+       }
+yy1043:        yyaccept = 11;
+       yych = *(YYMARKER = ++YYCURSOR);
+       switch(yych){
+       case ' ':
+       case '!':
+       case '"':
+       case '#':
+       case '$':
+       case '%':
+       case '&':
+       case '\'':
+       case '(':
+       case ')':
+       case '*':
+       case '+':
+       case ',':
+       case '-':
+       case '.':       goto yy849;
+       case '0':
+       case '1':
+       case '2':
+       case '3':
+       case '4':
+       case '5':
+       case '6':
+       case '7':
+       case '8':
+       case '9':       goto yy851;
+       case 'E':       case 'e':       goto yy853;
+       case 'I':       goto yy882;
+       default:        goto yy812;
+       }
+yy1044:        yych = *++YYCURSOR;
+       switch(yych){
+       case '.':       goto yy1034;
+       case '/':       goto yy1033;
+       case 'L':       case 'l':       goto yy880;
+       case 'N':       case 'n':       goto yy1047;
+       default:        goto yy809;
+       }
+yy1045:        yych = *++YYCURSOR;
+       switch(yych){
+       case '.':       goto yy1034;
+       case '/':       goto yy1033;
+       case 'N':       case 'n':       goto yy1046;
+       default:        goto yy809;
+       }
+yy1046:        yyaccept = 11;
+       yych = *(YYMARKER = ++YYCURSOR);
+       switch(yych){
+       case ' ':
+       case '!':
+       case '"':
+       case '#':
+       case '$':
+       case '%':
+       case '&':
+       case '\'':
+       case '(':
+       case ')':
+       case '*':
+       case '+':
+       case ',':
+       case '-':
+       case '.':       goto yy849;
+       case '0':
+       case '1':
+       case '2':
+       case '3':
+       case '4':
+       case '5':
+       case '6':
+       case '7':
+       case '8':
+       case '9':       goto yy851;
+       case 'O':       case 'o':       goto yy847;
+       case 'U':       case 'u':       goto yy876;
+       default:        goto yy812;
+       }
+yy1047:        yyaccept = 11;
+       yych = *(YYMARKER = ++YYCURSOR);
+       switch(yych){
+       case ' ':
+       case '!':
+       case '"':
+       case '#':
+       case '$':
+       case '%':
+       case '&':
+       case '\'':
+       case '(':
+       case ')':
+       case '*':
+       case '+':
+       case ',':
+       case '-':
+       case '.':       goto yy849;
+       case '0':
+       case '1':
+       case '2':
+       case '3':
+       case '4':
+       case '5':
+       case '6':
+       case '7':
+       case '8':
+       case '9':       goto yy851;
+       case 'E':       case 'e':       goto yy857;
+       case 'O':       case 'o':       goto yy847;
+       default:        goto yy812;
+       }
+yy1048:        yych = *++YYCURSOR;
+       switch(yych){
+       case '.':       goto yy1034;
+       case '/':       goto yy1033;
+       case 'G':       case 'g':       goto yy870;
+       default:        goto yy809;
+       }
+yy1049:        yych = *++YYCURSOR;
+       switch(yych){
+       case '.':       goto yy1034;
+       case '/':       goto yy1033;
+       case 'R':       case 'r':       goto yy868;
+       default:        goto yy809;
+       }
+yy1050:        yych = *++YYCURSOR;
+       switch(yych){
+       case '-':       goto yy1051;
+       case '0':
+       case '1':
+       case '2':
+       case '3':
+       case '4':
+       case '5':
+       case '6':
+       case '7':
+       case '8':
+       case '9':       goto yy1078;
+       default:        goto yy56;
+       }
+yy1051:        yych = *++YYCURSOR;
+       switch(yych){
+       case '0':       goto yy926;
+       case '1':       goto yy927;
+       case '2':
+       case '3':
+       case '4':
+       case '5':
+       case '6':
+       case '7':
+       case '8':
+       case '9':       goto yy928;
+       case 'A':       case 'a':       goto yy1055;
+       case 'D':       case 'd':       goto yy1059;
+       case 'F':       case 'f':       goto yy1053;
+       case 'J':       case 'j':       goto yy1052;
+       case 'M':       case 'm':       goto yy1054;
+       case 'N':       case 'n':       goto yy1058;
+       case 'O':       case 'o':       goto yy1057;
+       case 'S':       case 's':       goto yy1056;
+       default:        goto yy52;
+       }
+yy1052:        yych = *++YYCURSOR;
+       switch(yych){
+       case 'A':       case 'a':       goto yy1077;
+       case 'U':       case 'u':       goto yy1076;
+       default:        goto yy52;
+       }
+yy1053:        yych = *++YYCURSOR;
+       switch(yych){
+       case 'E':       case 'e':       goto yy1075;
+       default:        goto yy52;
+       }
+yy1054:        yych = *++YYCURSOR;
+       switch(yych){
+       case 'A':       case 'a':       goto yy1074;
+       default:        goto yy52;
+       }
+yy1055:        yych = *++YYCURSOR;
+       switch(yych){
+       case 'P':       case 'p':       goto yy1073;
+       case 'U':       case 'u':       goto yy1072;
+       default:        goto yy52;
+       }
+yy1056:        yych = *++YYCURSOR;
+       switch(yych){
+       case 'E':       case 'e':       goto yy1070;
+       default:        goto yy52;
+       }
+yy1057:        yych = *++YYCURSOR;
+       switch(yych){
+       case 'C':       case 'c':       goto yy1069;
+       default:        goto yy52;
+       }
+yy1058:        yych = *++YYCURSOR;
+       switch(yych){
+       case 'O':       case 'o':       goto yy1068;
+       default:        goto yy52;
+       }
+yy1059:        yych = *++YYCURSOR;
+       switch(yych){
+       case 'E':       case 'e':       goto yy1060;
+       default:        goto yy52;
+       }
+yy1060:        yych = *++YYCURSOR;
+       switch(yych){
+       case 'C':       case 'c':       goto yy1061;
+       default:        goto yy52;
+       }
+yy1061:        yych = *++YYCURSOR;
+       switch(yych){
+       case '-':       goto yy1062;
+       default:        goto yy52;
+       }
+yy1062:        yych = *++YYCURSOR;
+       switch(yych){
+       case '0':       goto yy1063;
+       case '1':
+       case '2':       goto yy1064;
+       case '3':       goto yy1065;
+       default:        goto yy52;
+       }
+yy1063:        yych = *++YYCURSOR;
+       switch(yych){
+       case '1':
+       case '2':
+       case '3':
+       case '4':
+       case '5':
+       case '6':
+       case '7':
+       case '8':
+       case '9':       goto yy1066;
+       default:        goto yy52;
+       }
+yy1064:        yych = *++YYCURSOR;
+       switch(yych){
+       case '0':
+       case '1':
+       case '2':
+       case '3':
+       case '4':
+       case '5':
+       case '6':
+       case '7':
+       case '8':
+       case '9':       goto yy1066;
+       default:        goto yy52;
+       }
+yy1065:        yych = *++YYCURSOR;
+       switch(yych){
+       case '0':
+       case '1':       goto yy1066;
+       default:        goto yy52;
+       }
+yy1066:        ++YYCURSOR;
+       goto yy1067;
+yy1067:
 #line 1210 "parse_date.re"
 {
                DEBUG_OUTPUT("pgtextreverse");
@@ -24230,59 +25493,59 @@ yy1028:
                TIMELIB_DEINIT;
                return TIMELIB_PG_TEXT;
        }
-#line 24234 "<stdout>"
-yy1029:        yych = *++YYCURSOR;
+#line 25497 "<stdout>"
+yy1068:        yych = *++YYCURSOR;
        switch(yych){
-       case 'V':       case 'v':       goto yy1022;
+       case 'V':       case 'v':       goto yy1061;
        default:        goto yy52;
        }
-yy1030:        yych = *++YYCURSOR;
+yy1069:        yych = *++YYCURSOR;
        switch(yych){
-       case 'T':       case 't':       goto yy1022;
+       case 'T':       case 't':       goto yy1061;
        default:        goto yy52;
        }
-yy1031:        yych = *++YYCURSOR;
+yy1070:        yych = *++YYCURSOR;
        switch(yych){
-       case 'P':       case 'p':       goto yy1032;
+       case 'P':       case 'p':       goto yy1071;
        default:        goto yy52;
        }
-yy1032:        yych = *++YYCURSOR;
+yy1071:        yych = *++YYCURSOR;
        switch(yych){
-       case '-':       goto yy1023;
-       case 'T':       case 't':       goto yy1022;
+       case '-':       goto yy1062;
+       case 'T':       case 't':       goto yy1061;
        default:        goto yy52;
        }
-yy1033:        yych = *++YYCURSOR;
+yy1072:        yych = *++YYCURSOR;
        switch(yych){
-       case 'G':       case 'g':       goto yy1022;
+       case 'G':       case 'g':       goto yy1061;
        default:        goto yy52;
        }
-yy1034:        yych = *++YYCURSOR;
+yy1073:        yych = *++YYCURSOR;
        switch(yych){
-       case 'R':       case 'r':       goto yy1022;
+       case 'R':       case 'r':       goto yy1061;
        default:        goto yy52;
        }
-yy1035:        yych = *++YYCURSOR;
+yy1074:        yych = *++YYCURSOR;
        switch(yych){
-       case 'R':       case 'Y':       case 'r':       case 'y':       goto yy1022;
+       case 'R':       case 'Y':       case 'r':       case 'y':       goto yy1061;
        default:        goto yy52;
        }
-yy1036:        yych = *++YYCURSOR;
+yy1075:        yych = *++YYCURSOR;
        switch(yych){
-       case 'B':       case 'b':       goto yy1022;
+       case 'B':       case 'b':       goto yy1061;
        default:        goto yy52;
        }
-yy1037:        yych = *++YYCURSOR;
+yy1076:        yych = *++YYCURSOR;
        switch(yych){
-       case 'L':       case 'N':       case 'l':       case 'n':       goto yy1022;
+       case 'L':       case 'N':       case 'l':       case 'n':       goto yy1061;
        default:        goto yy52;
        }
-yy1038:        yych = *++YYCURSOR;
+yy1077:        yych = *++YYCURSOR;
        switch(yych){
-       case 'N':       case 'n':       goto yy1022;
+       case 'N':       case 'n':       goto yy1061;
        default:        goto yy52;
        }
-yy1039:        yyaccept = 15;
+yy1078:        yyaccept = 17;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -24306,24 +25569,24 @@ yy1039:       yyaccept = 15;
        case 'Y':       case 'a':       case 'd':       case 'f':       case 'h':       case 'j':       case 'm':
        case 'n':
        case 'o':       case 's':
-       case 't':       case 'w':       case 'y':       goto yy1044;
-       case '-':       goto yy1041;
-       case '.':       goto yy1047;
-       case '/':       goto yy1042;
-       case '0':       goto yy1060;
-       case '1':       goto yy1061;
-       case '2':       goto yy1062;
-       case '3':       goto yy1063;
+       case 't':       case 'w':       case 'y':       goto yy1083;
+       case '-':       goto yy1080;
+       case '.':       goto yy1086;
+       case '/':       goto yy1081;
+       case '0':       goto yy1099;
+       case '1':       goto yy1100;
+       case '2':       goto yy1101;
+       case '3':       goto yy1102;
        case '4':
        case '5':
        case '6':
        case '7':
        case '8':
        case '9':       goto yy50;
-       case 'W':       goto yy1064;
-       default:        goto yy1040;
+       case 'W':       goto yy1103;
+       default:        goto yy1079;
        }
-yy1040:
+yy1079:
 #line 1242 "parse_date.re"
 {
                DEBUG_OUTPUT("year4");
@@ -24332,11 +25595,11 @@ yy1040:
                TIMELIB_DEINIT;
                return TIMELIB_CLF;
        }
-#line 24336 "<stdout>"
-yy1041:        yych = *++YYCURSOR;
+#line 25599 "<stdout>"
+yy1080:        yych = *++YYCURSOR;
        switch(yych){
-       case '0':       goto yy1201;
-       case '1':       goto yy1202;
+       case '0':       goto yy1242;
+       case '1':       goto yy1243;
        case '2':
        case '3':
        case '4':
@@ -24344,21 +25607,21 @@ yy1041:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy912;
-       case 'A':       case 'a':       goto yy1196;
-       case 'D':       case 'd':       goto yy1200;
-       case 'F':       case 'f':       goto yy1194;
-       case 'J':       case 'j':       goto yy1193;
-       case 'M':       case 'm':       goto yy1195;
-       case 'N':       case 'n':       goto yy1199;
-       case 'O':       case 'o':       goto yy1198;
-       case 'S':       case 's':       goto yy1197;
-       default:        goto yy1046;
+       case '9':       goto yy928;
+       case 'A':       case 'a':       goto yy1237;
+       case 'D':       case 'd':       goto yy1241;
+       case 'F':       case 'f':       goto yy1235;
+       case 'J':       case 'j':       goto yy1234;
+       case 'M':       case 'm':       goto yy1236;
+       case 'N':       case 'n':       goto yy1240;
+       case 'O':       case 'o':       goto yy1239;
+       case 'S':       case 's':       goto yy1238;
+       default:        goto yy1085;
        }
-yy1042:        yych = *++YYCURSOR;
+yy1081:        yych = *++YYCURSOR;
        switch(yych){
-       case '0':       goto yy1179;
-       case '1':       goto yy1180;
+       case '0':       goto yy1218;
+       case '1':       goto yy1219;
        case '2':
        case '3':
        case '4':
@@ -24366,15 +25629,15 @@ yy1042:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1181;
+       case '9':       goto yy1220;
        default:        goto yy52;
        }
-yy1043:        ++YYCURSOR;
+yy1082:        ++YYCURSOR;
        if((YYLIMIT - YYCURSOR) < 9) YYFILL(9);
        yych = *YYCURSOR;
-       goto yy1044;
-yy1044:        switch(yych){
-       case ' ':       goto yy1043;
+       goto yy1083;
+yy1083:        switch(yych){
+       case ' ':       goto yy1082;
        case '!':
        case '"':
        case '#':
@@ -24388,29 +25651,29 @@ yy1044:       switch(yych){
        case '+':
        case ',':
        case '-':
-       case '.':       goto yy1045;
-       case 'A':       case 'a':       goto yy1055;
-       case 'D':       case 'd':       goto yy1059;
-       case 'F':       case 'f':       goto yy1053;
+       case '.':       goto yy1084;
+       case 'A':       case 'a':       goto yy1094;
+       case 'D':       case 'd':       goto yy1098;
+       case 'F':       case 'f':       goto yy1092;
        case 'H':       case 'h':       goto yy59;
-       case 'I':       goto yy1048;
-       case 'J':       case 'j':       goto yy1052;
-       case 'M':       case 'm':       goto yy1054;
-       case 'N':       case 'n':       goto yy1058;
-       case 'O':       case 'o':       goto yy1057;
-       case 'S':       case 's':       goto yy1056;
+       case 'I':       goto yy1087;
+       case 'J':       case 'j':       goto yy1091;
+       case 'M':       case 'm':       goto yy1093;
+       case 'N':       case 'n':       goto yy1097;
+       case 'O':       case 'o':       goto yy1096;
+       case 'S':       case 's':       goto yy1095;
        case 'T':       case 't':       goto yy64;
-       case 'V':       goto yy1050;
+       case 'V':       goto yy1089;
        case 'W':       case 'w':       goto yy61;
-       case 'X':       goto yy1051;
+       case 'X':       goto yy1090;
        case 'Y':       case 'y':       goto yy63;
        default:        goto yy52;
        }
-yy1045:        ++YYCURSOR;
+yy1084:        ++YYCURSOR;
        if((YYLIMIT - YYCURSOR) < 9) YYFILL(9);
        yych = *YYCURSOR;
-       goto yy1046;
-yy1046:        switch(yych){
+       goto yy1085;
+yy1085:        switch(yych){
        case ' ':
        case '!':
        case '"':
@@ -24425,35 +25688,35 @@ yy1046:       switch(yych){
        case '+':
        case ',':
        case '-':
-       case '.':       goto yy1045;
-       case 'A':       case 'a':       goto yy1055;
-       case 'D':       case 'd':       goto yy1171;
-       case 'F':       case 'f':       goto yy1168;
-       case 'I':       goto yy1048;
-       case 'J':       case 'j':       goto yy1052;
-       case 'M':       case 'm':       goto yy1169;
-       case 'N':       case 'n':       goto yy1058;
-       case 'O':       case 'o':       goto yy1057;
-       case 'S':       case 's':       goto yy1170;
-       case 'V':       goto yy1050;
-       case 'X':       goto yy1051;
+       case '.':       goto yy1084;
+       case 'A':       case 'a':       goto yy1094;
+       case 'D':       case 'd':       goto yy1210;
+       case 'F':       case 'f':       goto yy1207;
+       case 'I':       goto yy1087;
+       case 'J':       case 'j':       goto yy1091;
+       case 'M':       case 'm':       goto yy1208;
+       case 'N':       case 'n':       goto yy1097;
+       case 'O':       case 'o':       goto yy1096;
+       case 'S':       case 's':       goto yy1209;
+       case 'V':       goto yy1089;
+       case 'X':       goto yy1090;
        default:        goto yy52;
        }
-yy1047:        yych = *++YYCURSOR;
+yy1086:        yych = *++YYCURSOR;
        switch(yych){
-       case '0':       goto yy1165;
+       case '0':       goto yy1204;
        case '1':
-       case '2':       goto yy1166;
-       case '3':       goto yy1167;
-       default:        goto yy1046;
+       case '2':       goto yy1205;
+       case '3':       goto yy1206;
+       default:        goto yy1085;
        }
-yy1048:        ++YYCURSOR;
+yy1087:        ++YYCURSOR;
        switch((yych = *YYCURSOR)) {
-       case 'I':       goto yy1164;
-       case 'V':       case 'X':       goto yy1118;
-       default:        goto yy1049;
+       case 'I':       goto yy1203;
+       case 'V':       case 'X':       goto yy1157;
+       default:        goto yy1088;
        }
-yy1049:
+yy1088:
 #line 1075 "parse_date.re"
 {
                DEBUG_OUTPUT("datenodayrev");
@@ -24466,69 +25729,69 @@ yy1049:
                TIMELIB_DEINIT;
                return TIMELIB_DATE_NO_DAY;
        }
-#line 24470 "<stdout>"
-yy1050:        yych = *++YYCURSOR;
+#line 25733 "<stdout>"
+yy1089:        yych = *++YYCURSOR;
        switch(yych){
-       case 'I':       goto yy1162;
-       default:        goto yy1049;
+       case 'I':       goto yy1201;
+       default:        goto yy1088;
        }
-yy1051:        yych = *++YYCURSOR;
+yy1090:        yych = *++YYCURSOR;
        switch(yych){
-       case 'I':       goto yy1161;
-       default:        goto yy1049;
+       case 'I':       goto yy1200;
+       default:        goto yy1088;
        }
-yy1052:        yych = *++YYCURSOR;
+yy1091:        yych = *++YYCURSOR;
        switch(yych){
-       case 'A':       case 'a':       goto yy1154;
-       case 'U':       case 'u':       goto yy1153;
+       case 'A':       case 'a':       goto yy1193;
+       case 'U':       case 'u':       goto yy1192;
        default:        goto yy52;
        }
-yy1053:        yych = *++YYCURSOR;
+yy1092:        yych = *++YYCURSOR;
        switch(yych){
-       case 'E':       case 'e':       goto yy1147;
+       case 'E':       case 'e':       goto yy1186;
        case 'O':       case 'o':       goto yy82;
        case 'R':       case 'r':       goto yy81;
        default:        goto yy52;
        }
-yy1054:        yych = *++YYCURSOR;
+yy1093:        yych = *++YYCURSOR;
        switch(yych){
-       case 'A':       case 'a':       goto yy1144;
+       case 'A':       case 'a':       goto yy1183;
        case 'I':       case 'i':       goto yy109;
        case 'O':       case 'o':       goto yy108;
        default:        goto yy52;
        }
-yy1055:        yych = *++YYCURSOR;
+yy1094:        yych = *++YYCURSOR;
        switch(yych){
-       case 'P':       case 'p':       goto yy1138;
-       case 'U':       case 'u':       goto yy1137;
+       case 'P':       case 'p':       goto yy1177;
+       case 'U':       case 'u':       goto yy1176;
        default:        goto yy52;
        }
-yy1056:        yych = *++YYCURSOR;
+yy1095:        yych = *++YYCURSOR;
        switch(yych){
        case 'A':       case 'a':       goto yy117;
-       case 'E':       case 'e':       goto yy1130;
+       case 'E':       case 'e':       goto yy1169;
        case 'U':       case 'u':       goto yy118;
        default:        goto yy52;
        }
-yy1057:        yych = *++YYCURSOR;
+yy1096:        yych = *++YYCURSOR;
        switch(yych){
-       case 'C':       case 'c':       goto yy1125;
+       case 'C':       case 'c':       goto yy1164;
        default:        goto yy52;
        }
-yy1058:        yych = *++YYCURSOR;
+yy1097:        yych = *++YYCURSOR;
        switch(yych){
-       case 'O':       case 'o':       goto yy1119;
+       case 'O':       case 'o':       goto yy1158;
        default:        goto yy52;
        }
-yy1059:        yych = *++YYCURSOR;
+yy1098:        yych = *++YYCURSOR;
        switch(yych){
        case 'A':       case 'a':       goto yy105;
-       case 'E':       case 'e':       goto yy1112;
+       case 'E':       case 'e':       goto yy1151;
        default:        goto yy52;
        }
-yy1060:        yych = *++YYCURSOR;
+yy1099:        yych = *++YYCURSOR;
        switch(yych){
-       case '0':       goto yy1110;
+       case '0':       goto yy1149;
        case '1':
        case '2':
        case '3':
@@ -24537,24 +25800,24 @@ yy1060:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1111;
+       case '9':       goto yy1150;
        default:        goto yy56;
        }
-yy1061:        yych = *++YYCURSOR;
+yy1100:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
-       case '2':       goto yy1077;
+       case '2':       goto yy1116;
        case '3':
        case '4':
        case '5':
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1076;
+       case '9':       goto yy1115;
        default:        goto yy56;
        }
-yy1062:        yych = *++YYCURSOR;
+yy1101:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -24565,35 +25828,35 @@ yy1062:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1076;
+       case '9':       goto yy1115;
        default:        goto yy56;
        }
-yy1063:        yych = *++YYCURSOR;
+yy1102:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy1072;
-       case '6':       goto yy1073;
+       case '5':       goto yy1111;
+       case '6':       goto yy1112;
        case '7':
        case '8':
        case '9':       goto yy50;
        default:        goto yy56;
        }
-yy1064:        yych = *++YYCURSOR;
+yy1103:        yych = *++YYCURSOR;
        switch(yych){
-       case '0':       goto yy1065;
+       case '0':       goto yy1104;
        case '1':
        case '2':
        case '3':
-       case '4':       goto yy1066;
-       case '5':       goto yy1067;
+       case '4':       goto yy1105;
+       case '5':       goto yy1106;
        case 'E':       case 'e':       goto yy97;
        default:        goto yy52;
        }
-yy1065:        yych = *++YYCURSOR;
+yy1104:        yych = *++YYCURSOR;
        switch(yych){
        case '1':
        case '2':
@@ -24603,10 +25866,10 @@ yy1065:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1068;
+       case '9':       goto yy1107;
        default:        goto yy52;
        }
-yy1066:        yych = *++YYCURSOR;
+yy1105:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -24617,18 +25880,18 @@ yy1066:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1068;
+       case '9':       goto yy1107;
        default:        goto yy52;
        }
-yy1067:        yych = *++YYCURSOR;
+yy1106:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
-       case '3':       goto yy1068;
+       case '3':       goto yy1107;
        default:        goto yy52;
        }
-yy1068:        ++YYCURSOR;
+yy1107:        ++YYCURSOR;
        switch((yych = *YYCURSOR)) {
        case '0':
        case '1':
@@ -24637,10 +25900,10 @@ yy1068:       ++YYCURSOR;
        case '4':
        case '5':
        case '6':
-       case '7':       goto yy1070;
-       default:        goto yy1069;
+       case '7':       goto yy1109;
+       default:        goto yy1108;
        }
-yy1069:
+yy1108:
 #line 1178 "parse_date.re"
 {
                timelib_sll w, d;
@@ -24659,10 +25922,10 @@ yy1069:
                TIMELIB_DEINIT;
                return TIMELIB_ISO_WEEK;
        }
-#line 24663 "<stdout>"
-yy1070:        ++YYCURSOR;
-       goto yy1071;
-yy1071:
+#line 25926 "<stdout>"
+yy1109:        ++YYCURSOR;
+       goto yy1110;
+yy1110:
 #line 1159 "parse_date.re"
 {
                timelib_sll w, d;
@@ -24681,8 +25944,8 @@ yy1071:
                TIMELIB_DEINIT;
                return TIMELIB_ISO_WEEK;
        }
-#line 24685 "<stdout>"
-yy1072:        yych = *++YYCURSOR;
+#line 25948 "<stdout>"
+yy1111:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -24693,10 +25956,10 @@ yy1072:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1074;
+       case '9':       goto yy1113;
        default:        goto yy56;
        }
-yy1073:        yych = *++YYCURSOR;
+yy1112:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -24704,13 +25967,13 @@ yy1073:       yych = *++YYCURSOR;
        case '3':
        case '4':
        case '5':
-       case '6':       goto yy1074;
+       case '6':       goto yy1113;
        case '7':
        case '8':
        case '9':       goto yy50;
        default:        goto yy56;
        }
-yy1074:        yyaccept = 16;
+yy1113:        yyaccept = 18;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':       case 'D':       case 'F':       case 'H':       case 'M':       case 'S':
@@ -24726,9 +25989,9 @@ yy1074: yyaccept = 16;
        case '7':
        case '8':
        case '9':       goto yy50;
-       default:        goto yy1075;
+       default:        goto yy1114;
        }
-yy1075:
+yy1114:
 #line 1146 "parse_date.re"
 {
                DEBUG_OUTPUT("pgydotd");
@@ -24741,8 +26004,8 @@ yy1075:
                TIMELIB_DEINIT;
                return TIMELIB_PG_YEARDAY;
        }
-#line 24745 "<stdout>"
-yy1076:        yych = *++YYCURSOR;
+#line 26008 "<stdout>"
+yy1115:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -24753,24 +26016,24 @@ yy1076:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1074;
+       case '9':       goto yy1113;
        default:        goto yy56;
        }
-yy1077:        yych = *++YYCURSOR;
+yy1116:        yych = *++YYCURSOR;
        switch(yych){
-       case '0':       goto yy1078;
+       case '0':       goto yy1117;
        case '1':
-       case '2':       goto yy1079;
-       case '3':       goto yy1080;
+       case '2':       goto yy1118;
+       case '3':       goto yy1119;
        case '4':
        case '5':
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1074;
+       case '9':       goto yy1113;
        default:        goto yy56;
        }
-yy1078:        yyaccept = 16;
+yy1117:        yyaccept = 18;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':       case 'D':       case 'F':       case 'H':       case 'M':       case 'S':
@@ -24785,10 +26048,10 @@ yy1078:       yyaccept = 16;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1081;
-       default:        goto yy1075;
+       case '9':       goto yy1120;
+       default:        goto yy1114;
        }
-yy1079:        yyaccept = 16;
+yy1118:        yyaccept = 18;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':       case 'D':       case 'F':       case 'H':       case 'M':       case 'S':
@@ -24803,17 +26066,17 @@ yy1079:       yyaccept = 16;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1081;
-       default:        goto yy1075;
+       case '9':       goto yy1120;
+       default:        goto yy1114;
        }
-yy1080:        yyaccept = 16;
+yy1119:        yyaccept = 18;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':       case 'D':       case 'F':       case 'H':       case 'M':       case 'S':
        case 'T':       case 'W':       case 'Y':       case 'd':       case 'f':       case 'h':       case 'm':       case 's':
        case 't':       case 'w':       case 'y':       goto yy56;
        case '0':
-       case '1':       goto yy1081;
+       case '1':       goto yy1120;
        case '2':
        case '3':
        case '4':
@@ -24822,9 +26085,9 @@ yy1080: yyaccept = 16;
        case '7':
        case '8':
        case '9':       goto yy50;
-       default:        goto yy1075;
+       default:        goto yy1114;
        }
-yy1081:        yyaccept = 17;
+yy1120:        yyaccept = 19;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':       goto yy55;
@@ -24843,13 +26106,13 @@ yy1081:       yyaccept = 17;
        case 'H':       case 'h':       goto yy59;
        case 'M':       case 'm':       goto yy58;
        case 'S':       case 's':       goto yy57;
-       case 'T':       goto yy1083;
+       case 'T':       goto yy1122;
        case 'W':       case 'w':       goto yy61;
        case 'Y':       case 'y':       goto yy63;
-       case 't':       goto yy1084;
-       default:        goto yy1082;
+       case 't':       goto yy1123;
+       default:        goto yy1121;
        }
-yy1082:
+yy1121:
 #line 1112 "parse_date.re"
 {
                DEBUG_OUTPUT("datenocolon");
@@ -24861,74 +26124,74 @@ yy1082:
                TIMELIB_DEINIT;
                return TIMELIB_DATE_NOCOLON;
        }
-#line 24865 "<stdout>"
-yy1083:        yych = *++YYCURSOR;
+#line 26128 "<stdout>"
+yy1122:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
-       case '1':       goto yy1100;
-       case '2':       goto yy1101;
+       case '1':       goto yy1139;
+       case '2':       goto yy1140;
        case '3':
        case '4':
        case '5':
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1102;
+       case '9':       goto yy1141;
        case 'H':       case 'h':       goto yy65;
        case 'U':       case 'u':       goto yy66;
        default:        goto yy52;
        }
-yy1084:        yych = *++YYCURSOR;
+yy1123:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
-       case '1':       goto yy1085;
-       case '2':       goto yy1086;
+       case '1':       goto yy1124;
+       case '2':       goto yy1125;
        case '3':
        case '4':
        case '5':
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1087;
+       case '9':       goto yy1126;
        case 'H':       case 'h':       goto yy65;
        case 'U':       case 'u':       goto yy66;
        default:        goto yy52;
        }
-yy1085:        yych = *++YYCURSOR;
+yy1124:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy1094;
+       case '5':       goto yy1133;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1087;
+       case '9':       goto yy1126;
        default:        goto yy52;
        }
-yy1086:        yych = *++YYCURSOR;
+yy1125:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
-       case '3':       goto yy1094;
+       case '3':       goto yy1133;
        case '4':
-       case '5':       goto yy1088;
+       case '5':       goto yy1127;
        default:        goto yy52;
        }
-yy1087:        yych = *++YYCURSOR;
+yy1126:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy1088;
+       case '5':       goto yy1127;
        default:        goto yy52;
        }
-yy1088:        yych = *++YYCURSOR;
+yy1127:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -24939,21 +26202,21 @@ yy1088:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1089;
+       case '9':       goto yy1128;
        default:        goto yy52;
        }
-yy1089:        yych = *++YYCURSOR;
+yy1128:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy1090;
-       case '6':       goto yy1091;
+       case '5':       goto yy1129;
+       case '6':       goto yy1130;
        default:        goto yy52;
        }
-yy1090:        yych = *++YYCURSOR;
+yy1129:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -24964,17 +26227,17 @@ yy1090:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1092;
+       case '9':       goto yy1131;
        default:        goto yy52;
        }
-yy1091:        yych = *++YYCURSOR;
+yy1130:        yych = *++YYCURSOR;
        switch(yych){
-       case '0':       goto yy1092;
+       case '0':       goto yy1131;
        default:        goto yy52;
        }
-yy1092:        ++YYCURSOR;
-       goto yy1093;
-yy1093:
+yy1131:        ++YYCURSOR;
+       goto yy1132;
+yy1132:
 #line 1124 "parse_date.re"
 {
                int tz_not_found;
@@ -24996,61 +26259,61 @@ yy1093:
                TIMELIB_DEINIT;
                return TIMELIB_XMLRPC_SOAP;
        }
-#line 25000 "<stdout>"
-yy1094:        yych = *++YYCURSOR;
+#line 26263 "<stdout>"
+yy1133:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy1095;
+       case '5':       goto yy1134;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1089;
+       case '9':       goto yy1128;
        default:        goto yy52;
        }
-yy1095:        yych = *++YYCURSOR;
+yy1134:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy1096;
-       case '6':       goto yy1097;
+       case '5':       goto yy1135;
+       case '6':       goto yy1136;
        case '7':
        case '8':
-       case '9':       goto yy1089;
+       case '9':       goto yy1128;
        default:        goto yy52;
        }
-yy1096:        yych = *++YYCURSOR;
+yy1135:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy1098;
-       case '6':       goto yy1099;
+       case '5':       goto yy1137;
+       case '6':       goto yy1138;
        case '7':
        case '8':
-       case '9':       goto yy1092;
+       case '9':       goto yy1131;
        default:        goto yy52;
        }
-yy1097:        yych = *++YYCURSOR;
+yy1136:        yych = *++YYCURSOR;
        switch(yych){
-       case '0':       goto yy1098;
+       case '0':       goto yy1137;
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy1090;
-       case '6':       goto yy1091;
+       case '5':       goto yy1129;
+       case '6':       goto yy1130;
        default:        goto yy52;
        }
-yy1098:        yych = *++YYCURSOR;
+yy1137:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -25061,62 +26324,62 @@ yy1098:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1092;
-       default:        goto yy1093;
+       case '9':       goto yy1131;
+       default:        goto yy1132;
        }
-yy1099:        yych = *++YYCURSOR;
+yy1138:        yych = *++YYCURSOR;
        switch(yych){
-       case '0':       goto yy1092;
-       default:        goto yy1093;
+       case '0':       goto yy1131;
+       default:        goto yy1132;
        }
-yy1100:        yych = *++YYCURSOR;
+yy1139:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy1109;
+       case '5':       goto yy1148;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1102;
-       case ':':       goto yy1103;
+       case '9':       goto yy1141;
+       case ':':       goto yy1142;
        default:        goto yy52;
        }
-yy1101:        yych = *++YYCURSOR;
+yy1140:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
-       case '3':       goto yy1109;
+       case '3':       goto yy1148;
        case '4':
-       case '5':       goto yy1088;
-       case ':':       goto yy1103;
+       case '5':       goto yy1127;
+       case ':':       goto yy1142;
        default:        goto yy52;
        }
-yy1102:        yych = *++YYCURSOR;
+yy1141:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy1088;
-       case ':':       goto yy1103;
+       case '5':       goto yy1127;
+       case ':':       goto yy1142;
        default:        goto yy52;
        }
-yy1103:        yych = *++YYCURSOR;
+yy1142:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy1104;
+       case '5':       goto yy1143;
        default:        goto yy52;
        }
-yy1104:        yych = *++YYCURSOR;
+yy1143:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -25127,26 +26390,26 @@ yy1104:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1105;
+       case '9':       goto yy1144;
        default:        goto yy52;
        }
-yy1105:        yych = *++YYCURSOR;
+yy1144:        yych = *++YYCURSOR;
        switch(yych){
-       case ':':       goto yy1106;
+       case ':':       goto yy1145;
        default:        goto yy52;
        }
-yy1106:        yych = *++YYCURSOR;
+yy1145:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy1107;
-       case '6':       goto yy1108;
+       case '5':       goto yy1146;
+       case '6':       goto yy1147;
        default:        goto yy52;
        }
-yy1107:        yych = *++YYCURSOR;
+yy1146:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -25157,30 +26420,30 @@ yy1107:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1092;
+       case '9':       goto yy1131;
        default:        goto yy52;
        }
-yy1108:        yych = *++YYCURSOR;
+yy1147:        yych = *++YYCURSOR;
        switch(yych){
-       case '0':       goto yy1092;
+       case '0':       goto yy1131;
        default:        goto yy52;
        }
-yy1109:        yych = *++YYCURSOR;
+yy1148:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy1095;
+       case '5':       goto yy1134;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1089;
-       case ':':       goto yy1103;
+       case '9':       goto yy1128;
+       case ':':       goto yy1142;
        default:        goto yy52;
        }
-yy1110:        yych = *++YYCURSOR;
+yy1149:        yych = *++YYCURSOR;
        switch(yych){
        case '0':       goto yy50;
        case '1':
@@ -25191,300 +26454,300 @@ yy1110:     yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1074;
+       case '9':       goto yy1113;
        default:        goto yy56;
        }
-yy1111:        yych = *++YYCURSOR;
+yy1150:        yych = *++YYCURSOR;
        switch(yych){
-       case '0':       goto yy1078;
+       case '0':       goto yy1117;
        case '1':
-       case '2':       goto yy1079;
-       case '3':       goto yy1080;
+       case '2':       goto yy1118;
+       case '3':       goto yy1119;
        case '4':
        case '5':
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1074;
+       case '9':       goto yy1113;
        default:        goto yy56;
        }
-yy1112:        yych = *++YYCURSOR;
+yy1151:        yych = *++YYCURSOR;
        switch(yych){
-       case 'C':       case 'c':       goto yy1113;
+       case 'C':       case 'c':       goto yy1152;
        default:        goto yy52;
        }
-yy1113:        yyaccept = 18;
+yy1152:        yyaccept = 20;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case 'E':       case 'e':       goto yy1114;
-       default:        goto yy1049;
+       case 'E':       case 'e':       goto yy1153;
+       default:        goto yy1088;
        }
-yy1114:        yych = *++YYCURSOR;
+yy1153:        yych = *++YYCURSOR;
        switch(yych){
-       case 'M':       case 'm':       goto yy1115;
+       case 'M':       case 'm':       goto yy1154;
        default:        goto yy52;
        }
-yy1115:        yych = *++YYCURSOR;
+yy1154:        yych = *++YYCURSOR;
        switch(yych){
-       case 'B':       case 'b':       goto yy1116;
+       case 'B':       case 'b':       goto yy1155;
        default:        goto yy52;
        }
-yy1116:        yych = *++YYCURSOR;
+yy1155:        yych = *++YYCURSOR;
        switch(yych){
-       case 'E':       case 'e':       goto yy1117;
+       case 'E':       case 'e':       goto yy1156;
        default:        goto yy52;
        }
-yy1117:        yych = *++YYCURSOR;
+yy1156:        yych = *++YYCURSOR;
        switch(yych){
-       case 'R':       case 'r':       goto yy1118;
+       case 'R':       case 'r':       goto yy1157;
        default:        goto yy52;
        }
-yy1118:        yych = *++YYCURSOR;
-       goto yy1049;
-yy1119:        yych = *++YYCURSOR;
+yy1157:        yych = *++YYCURSOR;
+       goto yy1088;
+yy1158:        yych = *++YYCURSOR;
        switch(yych){
-       case 'V':       case 'v':       goto yy1120;
+       case 'V':       case 'v':       goto yy1159;
        default:        goto yy52;
        }
-yy1120:        yyaccept = 18;
+yy1159:        yyaccept = 20;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case 'E':       case 'e':       goto yy1121;
-       default:        goto yy1049;
+       case 'E':       case 'e':       goto yy1160;
+       default:        goto yy1088;
        }
-yy1121:        yych = *++YYCURSOR;
+yy1160:        yych = *++YYCURSOR;
        switch(yych){
-       case 'M':       case 'm':       goto yy1122;
+       case 'M':       case 'm':       goto yy1161;
        default:        goto yy52;
        }
-yy1122:        yych = *++YYCURSOR;
+yy1161:        yych = *++YYCURSOR;
        switch(yych){
-       case 'B':       case 'b':       goto yy1123;
+       case 'B':       case 'b':       goto yy1162;
        default:        goto yy52;
        }
-yy1123:        yych = *++YYCURSOR;
+yy1162:        yych = *++YYCURSOR;
        switch(yych){
-       case 'E':       case 'e':       goto yy1124;
+       case 'E':       case 'e':       goto yy1163;
        default:        goto yy52;
        }
-yy1124:        yych = *++YYCURSOR;
+yy1163:        yych = *++YYCURSOR;
        switch(yych){
-       case 'R':       case 'r':       goto yy1118;
+       case 'R':       case 'r':       goto yy1157;
        default:        goto yy52;
        }
-yy1125:        yych = *++YYCURSOR;
+yy1164:        yych = *++YYCURSOR;
        switch(yych){
-       case 'T':       case 't':       goto yy1126;
+       case 'T':       case 't':       goto yy1165;
        default:        goto yy52;
        }
-yy1126:        yyaccept = 18;
+yy1165:        yyaccept = 20;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case 'O':       case 'o':       goto yy1127;
-       default:        goto yy1049;
+       case 'O':       case 'o':       goto yy1166;
+       default:        goto yy1088;
        }
-yy1127:        yych = *++YYCURSOR;
+yy1166:        yych = *++YYCURSOR;
        switch(yych){
-       case 'B':       case 'b':       goto yy1128;
+       case 'B':       case 'b':       goto yy1167;
        default:        goto yy52;
        }
-yy1128:        yych = *++YYCURSOR;
+yy1167:        yych = *++YYCURSOR;
        switch(yych){
-       case 'E':       case 'e':       goto yy1129;
+       case 'E':       case 'e':       goto yy1168;
        default:        goto yy52;
        }
-yy1129:        yych = *++YYCURSOR;
+yy1168:        yych = *++YYCURSOR;
        switch(yych){
-       case 'R':       case 'r':       goto yy1118;
+       case 'R':       case 'r':       goto yy1157;
        default:        goto yy52;
        }
-yy1130:        yych = *++YYCURSOR;
+yy1169:        yych = *++YYCURSOR;
        switch(yych){
        case 'C':       case 'c':       goto yy120;
-       case 'P':       case 'p':       goto yy1131;
+       case 'P':       case 'p':       goto yy1170;
        default:        goto yy52;
        }
-yy1131:        yych = *++YYCURSOR;
+yy1170:        yych = *++YYCURSOR;
        switch(yych){
-       case 'T':       case 't':       goto yy1132;
-       default:        goto yy1049;
+       case 'T':       case 't':       goto yy1171;
+       default:        goto yy1088;
        }
-yy1132:        yyaccept = 18;
+yy1171:        yyaccept = 20;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case 'E':       case 'e':       goto yy1133;
-       default:        goto yy1049;
+       case 'E':       case 'e':       goto yy1172;
+       default:        goto yy1088;
        }
-yy1133:        yych = *++YYCURSOR;
+yy1172:        yych = *++YYCURSOR;
        switch(yych){
-       case 'M':       case 'm':       goto yy1134;
+       case 'M':       case 'm':       goto yy1173;
        default:        goto yy52;
        }
-yy1134:        yych = *++YYCURSOR;
+yy1173:        yych = *++YYCURSOR;
        switch(yych){
-       case 'B':       case 'b':       goto yy1135;
+       case 'B':       case 'b':       goto yy1174;
        default:        goto yy52;
        }
-yy1135:        yych = *++YYCURSOR;
+yy1174:        yych = *++YYCURSOR;
        switch(yych){
-       case 'E':       case 'e':       goto yy1136;
+       case 'E':       case 'e':       goto yy1175;
        default:        goto yy52;
        }
-yy1136:        yych = *++YYCURSOR;
+yy1175:        yych = *++YYCURSOR;
        switch(yych){
-       case 'R':       case 'r':       goto yy1118;
+       case 'R':       case 'r':       goto yy1157;
        default:        goto yy52;
        }
-yy1137:        yych = *++YYCURSOR;
+yy1176:        yych = *++YYCURSOR;
        switch(yych){
-       case 'G':       case 'g':       goto yy1141;
+       case 'G':       case 'g':       goto yy1180;
        default:        goto yy52;
        }
-yy1138:        yych = *++YYCURSOR;
+yy1177:        yych = *++YYCURSOR;
        switch(yych){
-       case 'R':       case 'r':       goto yy1139;
+       case 'R':       case 'r':       goto yy1178;
        default:        goto yy52;
        }
-yy1139:        yyaccept = 18;
+yy1178:        yyaccept = 20;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case 'I':       case 'i':       goto yy1140;
-       default:        goto yy1049;
+       case 'I':       case 'i':       goto yy1179;
+       default:        goto yy1088;
        }
-yy1140:        yych = *++YYCURSOR;
+yy1179:        yych = *++YYCURSOR;
        switch(yych){
-       case 'L':       case 'l':       goto yy1118;
+       case 'L':       case 'l':       goto yy1157;
        default:        goto yy52;
        }
-yy1141:        yyaccept = 18;
+yy1180:        yyaccept = 20;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case 'U':       case 'u':       goto yy1142;
-       default:        goto yy1049;
+       case 'U':       case 'u':       goto yy1181;
+       default:        goto yy1088;
        }
-yy1142:        yych = *++YYCURSOR;
+yy1181:        yych = *++YYCURSOR;
        switch(yych){
-       case 'S':       case 's':       goto yy1143;
+       case 'S':       case 's':       goto yy1182;
        default:        goto yy52;
        }
-yy1143:        yych = *++YYCURSOR;
+yy1182:        yych = *++YYCURSOR;
        switch(yych){
-       case 'T':       case 't':       goto yy1118;
+       case 'T':       case 't':       goto yy1157;
        default:        goto yy52;
        }
-yy1144:        yych = *++YYCURSOR;
+yy1183:        yych = *++YYCURSOR;
        switch(yych){
-       case 'R':       case 'r':       goto yy1145;
-       case 'Y':       case 'y':       goto yy1118;
+       case 'R':       case 'r':       goto yy1184;
+       case 'Y':       case 'y':       goto yy1157;
        default:        goto yy52;
        }
-yy1145:        yyaccept = 18;
+yy1184:        yyaccept = 20;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case 'C':       case 'c':       goto yy1146;
-       default:        goto yy1049;
+       case 'C':       case 'c':       goto yy1185;
+       default:        goto yy1088;
        }
-yy1146:        yych = *++YYCURSOR;
+yy1185:        yych = *++YYCURSOR;
        switch(yych){
-       case 'H':       case 'h':       goto yy1118;
+       case 'H':       case 'h':       goto yy1157;
        default:        goto yy52;
        }
-yy1147:        yych = *++YYCURSOR;
+yy1186:        yych = *++YYCURSOR;
        switch(yych){
-       case 'B':       case 'b':       goto yy1148;
+       case 'B':       case 'b':       goto yy1187;
        default:        goto yy52;
        }
-yy1148:        yyaccept = 18;
+yy1187:        yyaccept = 20;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case 'R':       case 'r':       goto yy1149;
-       default:        goto yy1049;
+       case 'R':       case 'r':       goto yy1188;
+       default:        goto yy1088;
        }
-yy1149:        yych = *++YYCURSOR;
+yy1188:        yych = *++YYCURSOR;
        switch(yych){
-       case 'U':       case 'u':       goto yy1150;
+       case 'U':       case 'u':       goto yy1189;
        default:        goto yy52;
        }
-yy1150:        yych = *++YYCURSOR;
+yy1189:        yych = *++YYCURSOR;
        switch(yych){
-       case 'A':       case 'a':       goto yy1151;
+       case 'A':       case 'a':       goto yy1190;
        default:        goto yy52;
        }
-yy1151:        yych = *++YYCURSOR;
+yy1190:        yych = *++YYCURSOR;
        switch(yych){
-       case 'R':       case 'r':       goto yy1152;
+       case 'R':       case 'r':       goto yy1191;
        default:        goto yy52;
        }
-yy1152:        yych = *++YYCURSOR;
+yy1191:        yych = *++YYCURSOR;
        switch(yych){
-       case 'Y':       case 'y':       goto yy1118;
+       case 'Y':       case 'y':       goto yy1157;
        default:        goto yy52;
        }
-yy1153:        yych = *++YYCURSOR;
+yy1192:        yych = *++YYCURSOR;
        switch(yych){
-       case 'L':       case 'l':       goto yy1160;
-       case 'N':       case 'n':       goto yy1159;
+       case 'L':       case 'l':       goto yy1199;
+       case 'N':       case 'n':       goto yy1198;
        default:        goto yy52;
        }
-yy1154:        yych = *++YYCURSOR;
+yy1193:        yych = *++YYCURSOR;
        switch(yych){
-       case 'N':       case 'n':       goto yy1155;
+       case 'N':       case 'n':       goto yy1194;
        default:        goto yy52;
        }
-yy1155:        yyaccept = 18;
+yy1194:        yyaccept = 20;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case 'U':       case 'u':       goto yy1156;
-       default:        goto yy1049;
+       case 'U':       case 'u':       goto yy1195;
+       default:        goto yy1088;
        }
-yy1156:        yych = *++YYCURSOR;
+yy1195:        yych = *++YYCURSOR;
        switch(yych){
-       case 'A':       case 'a':       goto yy1157;
+       case 'A':       case 'a':       goto yy1196;
        default:        goto yy52;
        }
-yy1157:        yych = *++YYCURSOR;
+yy1196:        yych = *++YYCURSOR;
        switch(yych){
-       case 'R':       case 'r':       goto yy1158;
+       case 'R':       case 'r':       goto yy1197;
        default:        goto yy52;
        }
-yy1158:        yych = *++YYCURSOR;
+yy1197:        yych = *++YYCURSOR;
        switch(yych){
-       case 'Y':       case 'y':       goto yy1118;
+       case 'Y':       case 'y':       goto yy1157;
        default:        goto yy52;
        }
-yy1159:        yych = *++YYCURSOR;
+yy1198:        yych = *++YYCURSOR;
        switch(yych){
-       case 'E':       case 'e':       goto yy1118;
-       default:        goto yy1049;
+       case 'E':       case 'e':       goto yy1157;
+       default:        goto yy1088;
        }
-yy1160:        yych = *++YYCURSOR;
+yy1199:        yych = *++YYCURSOR;
        switch(yych){
-       case 'Y':       case 'y':       goto yy1118;
-       default:        goto yy1049;
+       case 'Y':       case 'y':       goto yy1157;
+       default:        goto yy1088;
        }
-yy1161:        yych = *++YYCURSOR;
+yy1200:        yych = *++YYCURSOR;
        switch(yych){
-       case 'I':       goto yy1118;
-       default:        goto yy1049;
+       case 'I':       goto yy1157;
+       default:        goto yy1088;
        }
-yy1162:        yych = *++YYCURSOR;
+yy1201:        yych = *++YYCURSOR;
        switch(yych){
-       case 'I':       goto yy1163;
-       default:        goto yy1049;
+       case 'I':       goto yy1202;
+       default:        goto yy1088;
        }
-yy1163:        yych = *++YYCURSOR;
+yy1202:        yych = *++YYCURSOR;
        switch(yych){
-       case 'I':       goto yy1118;
-       default:        goto yy1049;
+       case 'I':       goto yy1157;
+       default:        goto yy1088;
        }
-yy1164:        yych = *++YYCURSOR;
+yy1203:        yych = *++YYCURSOR;
        switch(yych){
-       case 'I':       goto yy1118;
-       default:        goto yy1049;
+       case 'I':       goto yy1157;
+       default:        goto yy1088;
        }
-yy1165:        yych = *++YYCURSOR;
+yy1204:        yych = *++YYCURSOR;
        switch(yych){
-       case '0':       goto yy1178;
+       case '0':       goto yy1217;
        case '1':
        case '2':
        case '3':
@@ -25493,10 +26756,10 @@ yy1165:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1177;
+       case '9':       goto yy1216;
        default:        goto yy52;
        }
-yy1166:        yych = *++YYCURSOR;
+yy1205:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -25507,46 +26770,46 @@ yy1166:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1176;
+       case '9':       goto yy1215;
        default:        goto yy52;
        }
-yy1167:        yych = *++YYCURSOR;
+yy1206:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy1174;
-       case '6':       goto yy1173;
+       case '5':       goto yy1213;
+       case '6':       goto yy1212;
        default:        goto yy52;
        }
-yy1168:        yych = *++YYCURSOR;
+yy1207:        yych = *++YYCURSOR;
        switch(yych){
-       case 'E':       case 'e':       goto yy1147;
+       case 'E':       case 'e':       goto yy1186;
        default:        goto yy52;
        }
-yy1169:        yych = *++YYCURSOR;
+yy1208:        yych = *++YYCURSOR;
        switch(yych){
-       case 'A':       case 'a':       goto yy1144;
+       case 'A':       case 'a':       goto yy1183;
        default:        goto yy52;
        }
-yy1170:        yych = *++YYCURSOR;
+yy1209:        yych = *++YYCURSOR;
        switch(yych){
-       case 'E':       case 'e':       goto yy1172;
+       case 'E':       case 'e':       goto yy1211;
        default:        goto yy52;
        }
-yy1171:        yych = *++YYCURSOR;
+yy1210:        yych = *++YYCURSOR;
        switch(yych){
-       case 'E':       case 'e':       goto yy1112;
+       case 'E':       case 'e':       goto yy1151;
        default:        goto yy52;
        }
-yy1172:        yych = *++YYCURSOR;
+yy1211:        yych = *++YYCURSOR;
        switch(yych){
-       case 'P':       case 'p':       goto yy1131;
+       case 'P':       case 'p':       goto yy1170;
        default:        goto yy52;
        }
-yy1173:        yych = *++YYCURSOR;
+yy1212:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -25554,10 +26817,10 @@ yy1173:       yych = *++YYCURSOR;
        case '3':
        case '4':
        case '5':
-       case '6':       goto yy1175;
+       case '6':       goto yy1214;
        default:        goto yy52;
        }
-yy1174:        yych = *++YYCURSOR;
+yy1213:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -25568,12 +26831,12 @@ yy1174:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1175;
+       case '9':       goto yy1214;
        default:        goto yy52;
        }
-yy1175:        yych = *++YYCURSOR;
-       goto yy1075;
-yy1176:        yych = *++YYCURSOR;
+yy1214:        yych = *++YYCURSOR;
+       goto yy1114;
+yy1215:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -25584,10 +26847,10 @@ yy1176:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1175;
+       case '9':       goto yy1214;
        default:        goto yy52;
        }
-yy1177:        yych = *++YYCURSOR;
+yy1216:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -25598,10 +26861,10 @@ yy1177:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1175;
+       case '9':       goto yy1214;
        default:        goto yy52;
        }
-yy1178:        yych = *++YYCURSOR;
+yy1217:        yych = *++YYCURSOR;
        switch(yych){
        case '1':
        case '2':
@@ -25611,13 +26874,13 @@ yy1178:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1175;
+       case '9':       goto yy1214;
        default:        goto yy52;
        }
-yy1179:        yych = *++YYCURSOR;
+yy1218:        yych = *++YYCURSOR;
        switch(yych){
-       case '/':       goto yy1182;
-       case '0':       goto yy1181;
+       case '/':       goto yy1221;
+       case '0':       goto yy1220;
        case '1':
        case '2':
        case '3':
@@ -25626,38 +26889,39 @@ yy1179:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1187;
+       case '9':       goto yy1228;
        default:        goto yy52;
        }
-yy1180:        yych = *++YYCURSOR;
+yy1219:        yych = *++YYCURSOR;
        switch(yych){
-       case '/':       goto yy1182;
+       case '/':       goto yy1221;
        case '0':
        case '1':
-       case '2':       goto yy1187;
+       case '2':       goto yy1228;
        default:        goto yy52;
        }
-yy1181:        yych = *++YYCURSOR;
+yy1220:        yych = *++YYCURSOR;
        switch(yych){
-       case '/':       goto yy1182;
+       case '/':       goto yy1221;
        default:        goto yy52;
        }
-yy1182:        yych = *++YYCURSOR;
+yy1221:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
-       case '2':       goto yy1183;
-       case '3':       goto yy1185;
+       case '2':       goto yy1222;
+       case '3':       goto yy1224;
        case '4':
        case '5':
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1186;
+       case '9':       goto yy1225;
        default:        goto yy52;
        }
-yy1183:        ++YYCURSOR;
-       switch((yych = *YYCURSOR)) {
+yy1222:        yyaccept = 21;
+       yych = *(YYMARKER = ++YYCURSOR);
+       switch(yych){
        case '0':
        case '1':
        case '2':
@@ -25667,10 +26931,36 @@ yy1183:       ++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1186;
-       default:        goto yy1184;
+       case '9':       goto yy1225;
+       case 'a':
+       case 'b':
+       case 'c':
+       case 'd':
+       case 'e':
+       case 'f':
+       case 'g':
+       case 'h':
+       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':
+       case 'n':
+       case 'o':
+       case 'p':
+       case 'q':
+       case 'r':
+       case 's':
+       case 't':
+       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy1226;
+       default:        goto yy1223;
        }
-yy1184:
+yy1223:
 #line 1011 "parse_date.re"
 {
                DEBUG_OUTPUT("iso8601date | iso8601dateslash | dateslash");
@@ -25682,49 +26972,165 @@ yy1184:
                TIMELIB_DEINIT;
                return TIMELIB_ISO_DATE;
        }
-#line 25686 "<stdout>"
-yy1185:        yych = *++YYCURSOR;
+#line 26976 "<stdout>"
+yy1224:        yyaccept = 21;
+       yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case '0':
-       case '1':       goto yy1186;
-       default:        goto yy1184;
-       }
-yy1186:        yych = *++YYCURSOR;
-       goto yy1184;
-yy1187:        yych = *++YYCURSOR;
-       switch(yych){
-       case '/':       goto yy1188;
-       default:        goto yy52;
-       }
-yy1188:        yych = *++YYCURSOR;
-       switch(yych){
-       case '0':       goto yy1189;
-       case '1':
-       case '2':       goto yy1190;
-       case '3':       goto yy1191;
-       case '4':
-       case '5':
-       case '6':
-       case '7':
-       case '8':
-       case '9':       goto yy1186;
-       default:        goto yy52;
-       }
-yy1189:        yych = *++YYCURSOR;
-       switch(yych){
-       case '0':       goto yy1186;
-       case '1':
-       case '2':
-       case '3':
-       case '4':
-       case '5':
-       case '6':
-       case '7':
-       case '8':
-       case '9':       goto yy1192;
-       default:        goto yy1184;
+       case '1':       goto yy1225;
+       case 'a':
+       case 'b':
+       case 'c':
+       case 'd':
+       case 'e':
+       case 'f':
+       case 'g':
+       case 'h':
+       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':
+       case 'n':
+       case 'o':
+       case 'p':
+       case 'q':
+       case 'r':
+       case 's':
+       case 't':
+       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy1226;
+       default:        goto yy1223;
        }
-yy1190:        yych = *++YYCURSOR;
+yy1225:        yyaccept = 21;
+       yych = *(YYMARKER = ++YYCURSOR);
+       switch(yych){
+       case 'a':
+       case 'b':
+       case 'c':
+       case 'd':
+       case 'e':
+       case 'f':
+       case 'g':
+       case 'h':
+       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':
+       case 'n':
+       case 'o':
+       case 'p':
+       case 'q':
+       case 'r':
+       case 's':
+       case 't':
+       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy1226;
+       default:        goto yy1223;
+       }
+yy1226:        yych = *++YYCURSOR;
+       switch(yych){
+       case 'a':
+       case 'b':
+       case 'c':
+       case 'd':
+       case 'e':
+       case 'f':
+       case 'g':
+       case 'h':
+       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':
+       case 'n':
+       case 'o':
+       case 'p':
+       case 'q':
+       case 'r':
+       case 's':
+       case 't':
+       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy1227;
+       default:        goto yy52;
+       }
+yy1227:        yych = *++YYCURSOR;
+       goto yy1223;
+yy1228:        yych = *++YYCURSOR;
+       switch(yych){
+       case '/':       goto yy1229;
+       default:        goto yy52;
+       }
+yy1229:        yych = *++YYCURSOR;
+       switch(yych){
+       case '0':       goto yy1230;
+       case '1':
+       case '2':       goto yy1231;
+       case '3':       goto yy1232;
+       case '4':
+       case '5':
+       case '6':
+       case '7':
+       case '8':
+       case '9':       goto yy1225;
+       default:        goto yy52;
+       }
+yy1230:        yyaccept = 21;
+       yych = *(YYMARKER = ++YYCURSOR);
+       switch(yych){
+       case '0':       goto yy1225;
+       case '1':
+       case '2':
+       case '3':
+       case '4':
+       case '5':
+       case '6':
+       case '7':
+       case '8':
+       case '9':       goto yy1233;
+       case 'a':
+       case 'b':
+       case 'c':
+       case 'd':
+       case 'e':
+       case 'f':
+       case 'g':
+       case 'h':
+       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':
+       case 'n':
+       case 'o':
+       case 'p':
+       case 'q':
+       case 'r':
+       case 's':
+       case 't':
+       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy1226;
+       default:        goto yy1223;
+       }
+yy1231:        yyaccept = 21;
+       yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case '0':
        case '1':
@@ -25735,66 +27141,146 @@ yy1190:      yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1192;
-       default:        goto yy1184;
+       case '9':       goto yy1233;
+       case 'a':
+       case 'b':
+       case 'c':
+       case 'd':
+       case 'e':
+       case 'f':
+       case 'g':
+       case 'h':
+       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':
+       case 'n':
+       case 'o':
+       case 'p':
+       case 'q':
+       case 'r':
+       case 's':
+       case 't':
+       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy1226;
+       default:        goto yy1223;
        }
-yy1191:        yych = *++YYCURSOR;
+yy1232:        yyaccept = 21;
+       yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case '0':
-       case '1':       goto yy1192;
-       default:        goto yy1184;
+       case '1':       goto yy1233;
+       case 'a':
+       case 'b':
+       case 'c':
+       case 'd':
+       case 'e':
+       case 'f':
+       case 'g':
+       case 'h':
+       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':
+       case 'n':
+       case 'o':
+       case 'p':
+       case 'q':
+       case 'r':
+       case 's':
+       case 't':
+       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy1226;
+       default:        goto yy1223;
        }
-yy1192:        yych = *++YYCURSOR;
+yy1233:        yyaccept = 21;
+       yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '/':       goto yy1186;
-       default:        goto yy1184;
+       case '/':       goto yy1227;
+       case 'a':
+       case 'b':
+       case 'c':
+       case 'd':
+       case 'e':
+       case 'f':
+       case 'g':
+       case 'h':
+       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':
+       case 'n':
+       case 'o':
+       case 'p':
+       case 'q':
+       case 'r':
+       case 's':
+       case 't':
+       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy1226;
+       default:        goto yy1223;
        }
-yy1193:        yych = *++YYCURSOR;
+yy1234:        yych = *++YYCURSOR;
        switch(yych){
-       case 'A':       case 'a':       goto yy1257;
-       case 'U':       case 'u':       goto yy1256;
+       case 'A':       case 'a':       goto yy1298;
+       case 'U':       case 'u':       goto yy1297;
        default:        goto yy52;
        }
-yy1194:        yych = *++YYCURSOR;
+yy1235:        yych = *++YYCURSOR;
        switch(yych){
-       case 'E':       case 'e':       goto yy1254;
+       case 'E':       case 'e':       goto yy1295;
        default:        goto yy52;
        }
-yy1195:        yych = *++YYCURSOR;
+yy1236:        yych = *++YYCURSOR;
        switch(yych){
-       case 'A':       case 'a':       goto yy1251;
+       case 'A':       case 'a':       goto yy1292;
        default:        goto yy52;
        }
-yy1196:        yych = *++YYCURSOR;
+yy1237:        yych = *++YYCURSOR;
        switch(yych){
-       case 'P':       case 'p':       goto yy1248;
-       case 'U':       case 'u':       goto yy1247;
+       case 'P':       case 'p':       goto yy1289;
+       case 'U':       case 'u':       goto yy1288;
        default:        goto yy52;
        }
-yy1197:        yych = *++YYCURSOR;
+yy1238:        yych = *++YYCURSOR;
        switch(yych){
-       case 'E':       case 'e':       goto yy1244;
+       case 'E':       case 'e':       goto yy1285;
        default:        goto yy52;
        }
-yy1198:        yych = *++YYCURSOR;
+yy1239:        yych = *++YYCURSOR;
        switch(yych){
-       case 'C':       case 'c':       goto yy1242;
+       case 'C':       case 'c':       goto yy1283;
        default:        goto yy52;
        }
-yy1199:        yych = *++YYCURSOR;
+yy1240:        yych = *++YYCURSOR;
        switch(yych){
-       case 'O':       case 'o':       goto yy1240;
+       case 'O':       case 'o':       goto yy1281;
        default:        goto yy52;
        }
-yy1200:        yych = *++YYCURSOR;
+yy1241:        yych = *++YYCURSOR;
        switch(yych){
-       case 'E':       case 'e':       goto yy1238;
+       case 'E':       case 'e':       goto yy1279;
        default:        goto yy52;
        }
-yy1201:        yych = *++YYCURSOR;
+yy1242:        yych = *++YYCURSOR;
        switch(yych){
-       case '-':       goto yy949;
-       case '0':       goto yy912;
+       case '-':       goto yy965;
+       case '0':       goto yy928;
        case '1':
        case '2':
        case '3':
@@ -25803,39 +27289,40 @@ yy1201:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1203;
+       case '9':       goto yy1244;
        default:        goto yy52;
        }
-yy1202:        yych = *++YYCURSOR;
+yy1243:        yych = *++YYCURSOR;
        switch(yych){
-       case '-':       goto yy949;
+       case '-':       goto yy965;
        case '0':
        case '1':
-       case '2':       goto yy1203;
+       case '2':       goto yy1244;
        default:        goto yy52;
        }
-yy1203:        yych = *++YYCURSOR;
+yy1244:        yych = *++YYCURSOR;
        switch(yych){
-       case '-':       goto yy1204;
+       case '-':       goto yy1245;
        default:        goto yy52;
        }
-yy1204:        yych = *++YYCURSOR;
+yy1245:        yych = *++YYCURSOR;
        switch(yych){
-       case '0':       goto yy1205;
+       case '0':       goto yy1246;
        case '1':
-       case '2':       goto yy1206;
-       case '3':       goto yy1207;
+       case '2':       goto yy1247;
+       case '3':       goto yy1248;
        case '4':
        case '5':
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy953;
+       case '9':       goto yy969;
        default:        goto yy52;
        }
-yy1205:        yych = *++YYCURSOR;
+yy1246:        yyaccept = 13;
+       yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '0':       goto yy953;
+       case '0':       goto yy969;
        case '1':
        case '2':
        case '3':
@@ -25844,10 +27331,37 @@ yy1205:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1208;
-       default:        goto yy951;
+       case '9':       goto yy1249;
+       case 'a':
+       case 'b':
+       case 'c':
+       case 'd':
+       case 'e':
+       case 'f':
+       case 'g':
+       case 'h':
+       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':
+       case 'n':
+       case 'o':
+       case 'p':
+       case 'q':
+       case 'r':
+       case 's':
+       case 't':
+       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy970;
+       default:        goto yy967;
        }
-yy1206:        yych = *++YYCURSOR;
+yy1247:        yyaccept = 13;
+       yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case '0':
        case '1':
@@ -25858,36 +27372,115 @@ yy1206:      yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1208;
-       default:        goto yy951;
+       case '9':       goto yy1249;
+       case 'a':
+       case 'b':
+       case 'c':
+       case 'd':
+       case 'e':
+       case 'f':
+       case 'g':
+       case 'h':
+       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':
+       case 'n':
+       case 'o':
+       case 'p':
+       case 'q':
+       case 'r':
+       case 's':
+       case 't':
+       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy970;
+       default:        goto yy967;
        }
-yy1207:        yych = *++YYCURSOR;
+yy1248:        yyaccept = 13;
+       yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case '0':
-       case '1':       goto yy1208;
-       default:        goto yy951;
+       case '1':       goto yy1249;
+       case 'a':
+       case 'b':
+       case 'c':
+       case 'd':
+       case 'e':
+       case 'f':
+       case 'g':
+       case 'h':
+       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':
+       case 'n':
+       case 'o':
+       case 'p':
+       case 'q':
+       case 'r':
+       case 's':
+       case 't':
+       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy970;
+       default:        goto yy967;
        }
-yy1208:        yyaccept = 19;
+yy1249:        yyaccept = 21;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case 'T':       goto yy1209;
-       default:        goto yy1184;
+       case 'T':       goto yy1250;
+       case 'a':
+       case 'b':
+       case 'c':
+       case 'd':
+       case 'e':
+       case 'f':
+       case 'g':
+       case 'h':
+       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':
+       case 'n':
+       case 'o':
+       case 'p':
+       case 'q':
+       case 'r':
+       case 's':
+       case 't':
+       case 'u':
+       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy970;
+       default:        goto yy1223;
        }
-yy1209:        yych = *++YYCURSOR;
+yy1250:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
-       case '1':       goto yy1210;
-       case '2':       goto yy1211;
+       case '1':       goto yy1251;
+       case '2':       goto yy1252;
        case '3':
        case '4':
        case '5':
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1212;
+       case '9':       goto yy1253;
        default:        goto yy52;
        }
-yy1210:        yych = *++YYCURSOR;
+yy1251:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -25898,35 +27491,35 @@ yy1210:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1219;
-       case ':':       goto yy1213;
+       case '9':       goto yy1260;
+       case ':':       goto yy1254;
        default:        goto yy52;
        }
-yy1211:        yych = *++YYCURSOR;
+yy1252:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
-       case '3':       goto yy1219;
-       case ':':       goto yy1213;
+       case '3':       goto yy1260;
+       case ':':       goto yy1254;
        default:        goto yy52;
        }
-yy1212:        yych = *++YYCURSOR;
+yy1253:        yych = *++YYCURSOR;
        switch(yych){
-       case ':':       goto yy1213;
+       case ':':       goto yy1254;
        default:        goto yy52;
        }
-yy1213:        yych = *++YYCURSOR;
+yy1254:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy1214;
+       case '5':       goto yy1255;
        default:        goto yy52;
        }
-yy1214:        yych = *++YYCURSOR;
+yy1255:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -25937,26 +27530,26 @@ yy1214:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1215;
+       case '9':       goto yy1256;
        default:        goto yy52;
        }
-yy1215:        yych = *++YYCURSOR;
+yy1256:        yych = *++YYCURSOR;
        switch(yych){
-       case ':':       goto yy1216;
+       case ':':       goto yy1257;
        default:        goto yy52;
        }
-yy1216:        yych = *++YYCURSOR;
+yy1257:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy1217;
-       case '6':       goto yy1218;
+       case '5':       goto yy1258;
+       case '6':       goto yy1259;
        default:        goto yy52;
        }
-yy1217:        yych = *++YYCURSOR;
+yy1258:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -25967,30 +27560,30 @@ yy1217:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1092;
+       case '9':       goto yy1131;
        default:        goto yy52;
        }
-yy1218:        yych = *++YYCURSOR;
+yy1259:        yych = *++YYCURSOR;
        switch(yych){
-       case '0':       goto yy1092;
+       case '0':       goto yy1131;
        default:        goto yy52;
        }
-yy1219:        yych = *++YYCURSOR;
+yy1260:        yych = *++YYCURSOR;
        switch(yych){
-       case ':':       goto yy1220;
+       case ':':       goto yy1261;
        default:        goto yy52;
        }
-yy1220:        yych = *++YYCURSOR;
+yy1261:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy1221;
+       case '5':       goto yy1262;
        default:        goto yy52;
        }
-yy1221:        yych = *++YYCURSOR;
+yy1262:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -26001,26 +27594,26 @@ yy1221:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1222;
+       case '9':       goto yy1263;
        default:        goto yy52;
        }
-yy1222:        yych = *++YYCURSOR;
+yy1263:        yych = *++YYCURSOR;
        switch(yych){
-       case ':':       goto yy1223;
+       case ':':       goto yy1264;
        default:        goto yy52;
        }
-yy1223:        yych = *++YYCURSOR;
+yy1264:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy1224;
-       case '6':       goto yy1225;
+       case '5':       goto yy1265;
+       case '6':       goto yy1266;
        default:        goto yy52;
        }
-yy1224:        yych = *++YYCURSOR;
+yy1265:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -26031,21 +27624,21 @@ yy1224:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1226;
+       case '9':       goto yy1267;
        default:        goto yy52;
        }
-yy1225:        yych = *++YYCURSOR;
+yy1266:        yych = *++YYCURSOR;
        switch(yych){
-       case '0':       goto yy1226;
+       case '0':       goto yy1267;
        default:        goto yy52;
        }
-yy1226:        yyaccept = 20;
+yy1267:        yyaccept = 22;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       goto yy1227;
-       default:        goto yy1093;
+       case '.':       goto yy1268;
+       default:        goto yy1132;
        }
-yy1227:        yych = *++YYCURSOR;
+yy1268:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -26056,15 +27649,15 @@ yy1227:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1228;
+       case '9':       goto yy1269;
        default:        goto yy52;
        }
-yy1228:        ++YYCURSOR;
+yy1269:        ++YYCURSOR;
        if((YYLIMIT - YYCURSOR) < 6) YYFILL(6);
        yych = *YYCURSOR;
-       goto yy1229;
-yy1229:        switch(yych){
-       case '+':       case '-':       goto yy1230;
+       goto yy1270;
+yy1270:        switch(yych){
+       case '+':       case '-':       goto yy1271;
        case '0':
        case '1':
        case '2':
@@ -26074,51 +27667,51 @@ yy1229:       switch(yych){
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1228;
+       case '9':       goto yy1269;
        default:        goto yy52;
        }
-yy1230:        yych = *++YYCURSOR;
+yy1271:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
-       case '1':       goto yy1231;
-       case '2':       goto yy1232;
+       case '1':       goto yy1272;
+       case '2':       goto yy1273;
        case '3':
        case '4':
        case '5':
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1233;
+       case '9':       goto yy1274;
        default:        goto yy52;
        }
-yy1231:        yych = *++YYCURSOR;
+yy1272:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy1236;
+       case '5':       goto yy1277;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1233;
-       case ':':       goto yy1234;
-       default:        goto yy1093;
+       case '9':       goto yy1274;
+       case ':':       goto yy1275;
+       default:        goto yy1132;
        }
-yy1232:        yyaccept = 20;
+yy1273:        yyaccept = 22;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case '0':
        case '1':
        case '2':
-       case '3':       goto yy1236;
+       case '3':       goto yy1277;
        case '4':
-       case '5':       goto yy1235;
-       case ':':       goto yy1234;
-       default:        goto yy1093;
+       case '5':       goto yy1276;
+       case ':':       goto yy1275;
+       default:        goto yy1132;
        }
-yy1233:        yyaccept = 20;
+yy1274:        yyaccept = 22;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case '0':
@@ -26126,11 +27719,11 @@ yy1233:       yyaccept = 20;
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy1235;
-       case ':':       goto yy1234;
-       default:        goto yy1093;
+       case '5':       goto yy1276;
+       case ':':       goto yy1275;
+       default:        goto yy1132;
        }
-yy1234:        yyaccept = 20;
+yy1275:        yyaccept = 22;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case '0':
@@ -26138,10 +27731,10 @@ yy1234:       yyaccept = 20;
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy1235;
-       default:        goto yy1093;
+       case '5':       goto yy1276;
+       default:        goto yy1132;
        }
-yy1235:        yych = *++YYCURSOR;
+yy1276:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -26152,25 +27745,25 @@ yy1235:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1092;
+       case '9':       goto yy1131;
        default:        goto yy52;
        }
-yy1236:        yych = *++YYCURSOR;
+yy1277:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy1237;
+       case '5':       goto yy1278;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1092;
-       case ':':       goto yy1234;
-       default:        goto yy1093;
+       case '9':       goto yy1131;
+       case ':':       goto yy1275;
+       default:        goto yy1132;
        }
-yy1237:        yych = *++YYCURSOR;
+yy1278:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -26181,180 +27774,205 @@ yy1237:     yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1092;
-       default:        goto yy1093;
+       case '9':       goto yy1131;
+       default:        goto yy1132;
        }
-yy1238:        yych = *++YYCURSOR;
+yy1279:        yych = *++YYCURSOR;
        switch(yych){
-       case 'C':       case 'c':       goto yy1239;
+       case 'C':       case 'c':       goto yy1280;
        default:        goto yy52;
        }
-yy1239:        yyaccept = 18;
+yy1280:        yyaccept = 20;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '-':       goto yy1023;
-       case 'E':       case 'e':       goto yy1114;
-       default:        goto yy1049;
+       case '-':       goto yy1062;
+       case 'E':       case 'e':       goto yy1153;
+       default:        goto yy1088;
        }
-yy1240:        yych = *++YYCURSOR;
+yy1281:        yych = *++YYCURSOR;
        switch(yych){
-       case 'V':       case 'v':       goto yy1241;
+       case 'V':       case 'v':       goto yy1282;
        default:        goto yy52;
        }
-yy1241:        yyaccept = 18;
+yy1282:        yyaccept = 20;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '-':       goto yy1023;
-       case 'E':       case 'e':       goto yy1121;
-       default:        goto yy1049;
+       case '-':       goto yy1062;
+       case 'E':       case 'e':       goto yy1160;
+       default:        goto yy1088;
        }
-yy1242:        yych = *++YYCURSOR;
+yy1283:        yych = *++YYCURSOR;
        switch(yych){
-       case 'T':       case 't':       goto yy1243;
+       case 'T':       case 't':       goto yy1284;
        default:        goto yy52;
        }
-yy1243:        yyaccept = 18;
+yy1284:        yyaccept = 20;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '-':       goto yy1023;
-       case 'O':       case 'o':       goto yy1127;
-       default:        goto yy1049;
+       case '-':       goto yy1062;
+       case 'O':       case 'o':       goto yy1166;
+       default:        goto yy1088;
        }
-yy1244:        yych = *++YYCURSOR;
+yy1285:        yych = *++YYCURSOR;
        switch(yych){
-       case 'P':       case 'p':       goto yy1245;
+       case 'P':       case 'p':       goto yy1286;
        default:        goto yy52;
        }
-yy1245:        yyaccept = 18;
+yy1286:        yyaccept = 20;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '-':       goto yy1023;
-       case 'T':       case 't':       goto yy1246;
-       default:        goto yy1049;
+       case '-':       goto yy1062;
+       case 'T':       case 't':       goto yy1287;
+       default:        goto yy1088;
        }
-yy1246:        yyaccept = 18;
+yy1287:        yyaccept = 20;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '-':       goto yy1023;
-       case 'E':       case 'e':       goto yy1133;
-       default:        goto yy1049;
+       case '-':       goto yy1062;
+       case 'E':       case 'e':       goto yy1172;
+       default:        goto yy1088;
        }
-yy1247:        yych = *++YYCURSOR;
+yy1288:        yych = *++YYCURSOR;
        switch(yych){
-       case 'G':       case 'g':       goto yy1250;
+       case 'G':       case 'g':       goto yy1291;
        default:        goto yy52;
        }
-yy1248:        yych = *++YYCURSOR;
+yy1289:        yych = *++YYCURSOR;
        switch(yych){
-       case 'R':       case 'r':       goto yy1249;
+       case 'R':       case 'r':       goto yy1290;
        default:        goto yy52;
        }
-yy1249:        yyaccept = 18;
+yy1290:        yyaccept = 20;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '-':       goto yy1023;
-       case 'I':       case 'i':       goto yy1140;
-       default:        goto yy1049;
+       case '-':       goto yy1062;
+       case 'I':       case 'i':       goto yy1179;
+       default:        goto yy1088;
        }
-yy1250:        yyaccept = 18;
+yy1291:        yyaccept = 20;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '-':       goto yy1023;
-       case 'U':       case 'u':       goto yy1142;
-       default:        goto yy1049;
+       case '-':       goto yy1062;
+       case 'U':       case 'u':       goto yy1181;
+       default:        goto yy1088;
        }
-yy1251:        yych = *++YYCURSOR;
+yy1292:        yych = *++YYCURSOR;
        switch(yych){
-       case 'R':       case 'r':       goto yy1252;
-       case 'Y':       case 'y':       goto yy1253;
+       case 'R':       case 'r':       goto yy1293;
+       case 'Y':       case 'y':       goto yy1294;
        default:        goto yy52;
        }
-yy1252:        yyaccept = 18;
+yy1293:        yyaccept = 20;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '-':       goto yy1023;
-       case 'C':       case 'c':       goto yy1146;
-       default:        goto yy1049;
+       case '-':       goto yy1062;
+       case 'C':       case 'c':       goto yy1185;
+       default:        goto yy1088;
        }
-yy1253:        yyaccept = 18;
+yy1294:        yyaccept = 20;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '-':       goto yy1023;
-       default:        goto yy1049;
+       case '-':       goto yy1062;
+       default:        goto yy1088;
        }
-yy1254:        yych = *++YYCURSOR;
+yy1295:        yych = *++YYCURSOR;
        switch(yych){
-       case 'B':       case 'b':       goto yy1255;
+       case 'B':       case 'b':       goto yy1296;
        default:        goto yy52;
        }
-yy1255:        yyaccept = 18;
+yy1296:        yyaccept = 20;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '-':       goto yy1023;
-       case 'R':       case 'r':       goto yy1149;
-       default:        goto yy1049;
+       case '-':       goto yy1062;
+       case 'R':       case 'r':       goto yy1188;
+       default:        goto yy1088;
        }
-yy1256:        yych = *++YYCURSOR;
+yy1297:        yych = *++YYCURSOR;
        switch(yych){
-       case 'L':       case 'l':       goto yy1260;
-       case 'N':       case 'n':       goto yy1259;
+       case 'L':       case 'l':       goto yy1301;
+       case 'N':       case 'n':       goto yy1300;
        default:        goto yy52;
        }
-yy1257:        yych = *++YYCURSOR;
+yy1298:        yych = *++YYCURSOR;
        switch(yych){
-       case 'N':       case 'n':       goto yy1258;
+       case 'N':       case 'n':       goto yy1299;
        default:        goto yy52;
        }
-yy1258:        yyaccept = 18;
+yy1299:        yyaccept = 20;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '-':       goto yy1023;
-       case 'U':       case 'u':       goto yy1156;
-       default:        goto yy1049;
+       case '-':       goto yy1062;
+       case 'U':       case 'u':       goto yy1195;
+       default:        goto yy1088;
        }
-yy1259:        yyaccept = 18;
+yy1300:        yyaccept = 20;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '-':       goto yy1023;
-       case 'E':       case 'e':       goto yy1118;
-       default:        goto yy1049;
+       case '-':       goto yy1062;
+       case 'E':       case 'e':       goto yy1157;
+       default:        goto yy1088;
        }
-yy1260:        yyaccept = 18;
+yy1301:        yyaccept = 20;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '-':       goto yy1023;
-       case 'Y':       case 'y':       goto yy1118;
-       default:        goto yy1049;
+       case '-':       goto yy1062;
+       case 'Y':       case 'y':       goto yy1157;
+       default:        goto yy1088;
        }
-yy1261:        yych = *++YYCURSOR;
+yy1302:        yych = *++YYCURSOR;
        switch(yych){
-       case 'C':       case 'c':       goto yy120;
-       case 'P':       case 'p':       goto yy885;
+       case '.':       goto yy1034;
+       case '/':       goto yy1033;
+       case 'U':       case 'u':       goto yy73;
+       default:        goto yy809;
+       }
+yy1303:        yych = *++YYCURSOR;
+       switch(yych){
+       case '.':       goto yy1034;
+       case '/':       goto yy1033;
+       case 'E':       case 'e':       goto yy67;
+       default:        goto yy809;
+       }
+yy1304:        yych = *++YYCURSOR;
+       switch(yych){
+       case '.':       goto yy1034;
+       case '/':       goto yy1033;
+       case 'A':       case 'a':       goto yy1305;
+       default:        goto yy809;
+       }
+yy1305:        yych = *++YYCURSOR;
+       switch(yych){
+       case 'P':       case 'p':       goto yy867;
+       case 'R':       case 'r':       goto yy80;
+       case 'U':       case 'u':       goto yy866;
        default:        goto yy52;
        }
-yy1262:        yych = *++YYCURSOR;
+yy1306:        yych = *++YYCURSOR;
        switch(yych){
-       case '-':       goto yy791;
-       case '.':       goto yy1265;
-       case '/':       goto yy1266;
-       case '0':
-       case '1':
-       case '2':
-       case '3':
-       case '4':
-       case '5':
-       case '6':
-       case '7':
-       case '8':
-       case '9':       goto yy1011;
-       default:        goto yy1264;
+       case '.':       goto yy1034;
+       case '/':       goto yy1033;
+       case 'B':       case 'b':       goto yy911;
+       default:        goto yy809;
        }
-yy1263:        ++YYCURSOR;
-       if((YYLIMIT - YYCURSOR) < 13) YYFILL(13);
-       yych = *YYCURSOR;
-       goto yy1264;
-yy1264:        switch(yych){
-       case ' ':       goto yy1263;
+yy1307:        yych = *++YYCURSOR;
+       switch(yych){
+       case '.':       goto yy1034;
+       case '/':       goto yy1033;
+       case 'R':       case 'r':       goto yy83;
+       default:        goto yy809;
+       }
+yy1308:        yych = *++YYCURSOR;
+       switch(yych){
+       case '.':       goto yy1034;
+       case '/':       goto yy1033;
+       case 'I':       goto yy1309;
+       case 'i':       goto yy94;
+       default:        goto yy809;
+       }
+yy1309:        yyaccept = 11;
+       yych = *(YYMARKER = ++YYCURSOR);
+       switch(yych){
+       case ' ':
        case '!':
        case '"':
        case '#':
@@ -26368,28 +27986,9 @@ yy1264:        switch(yych){
        case '+':
        case ',':
        case '-':
-       case '.':       goto yy792;
-       case 'A':       case 'a':       goto yy875;
-       case 'D':       case 'd':       goto yy787;
-       case 'F':       case 'f':       goto yy788;
-       case 'H':       case 'h':       goto yy59;
-       case 'I':       goto yy795;
-       case 'J':       case 'j':       goto yy799;
-       case 'M':       case 'm':       goto yy786;
-       case 'N':       case 'n':       goto yy802;
-       case 'O':       case 'o':       goto yy801;
-       case 'S':       case 's':       goto yy785;
-       case 'T':       case 't':       goto yy64;
-       case 'V':       goto yy797;
-       case 'W':       case 'w':       goto yy61;
-       case 'X':       goto yy798;
-       case 'Y':       case 'y':       goto yy63;
-       default:        goto yy52;
-       }
-yy1265:        yych = *++YYCURSOR;
-       switch(yych){
-       case '0':       goto yy1267;
-       case '1':       goto yy1268;
+       case '.':       goto yy849;
+       case '0':
+       case '1':
        case '2':
        case '3':
        case '4':
@@ -26397,51 +27996,80 @@ yy1265:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1269;
-       default:        goto yy793;
+       case '9':       goto yy851;
+       case 'D':       case 'd':       goto yy95;
+       case 'I':       goto yy884;
+       case 'V':       case 'X':       goto yy857;
+       default:        goto yy812;
        }
-yy1266:        yych = *++YYCURSOR;
+yy1310:        yych = *++YYCURSOR;
        switch(yych){
-       case 'A':       case 'a':       goto yy961;
-       case 'D':       case 'd':       goto yy965;
-       case 'F':       case 'f':       goto yy959;
-       case 'J':       case 'j':       goto yy958;
-       case 'M':       case 'm':       goto yy960;
-       case 'N':       case 'n':       goto yy964;
-       case 'O':       case 'o':       goto yy963;
-       case 'S':       case 's':       goto yy962;
-       default:        goto yy52;
+       case '.':       goto yy1034;
+       case '/':       goto yy1033;
+       case 'D':       case 'd':       goto yy1311;
+       case 'E':       case 'e':       goto yy98;
+       default:        goto yy809;
        }
-yy1267:        yych = *++YYCURSOR;
+yy1311:        yych = *++YYCURSOR;
        switch(yych){
-       case '.':       goto yy1270;
-       case '0':
-       case '1':
-       case '2':
-       case '3':
-       case '4':
-       case '5':
-       case '6':
-       case '7':
-       case '8':
-       case '9':       goto yy1269;
+       case 'E':       case 'e':       goto yy894;
+       case 'N':       case 'n':       goto yy100;
        default:        goto yy52;
        }
-yy1268:        yych = *++YYCURSOR;
+yy1312:        yych = *++YYCURSOR;
        switch(yych){
-       case '.':       goto yy1270;
-       case '0':
-       case '1':
-       case '2':       goto yy1269;
-       default:        goto yy52;
+       case '.':       goto yy1034;
+       case '/':       goto yy1033;
+       case 'C':       case 'c':       goto yy895;
+       default:        goto yy809;
+       }
+yy1313:        yych = *++YYCURSOR;
+       switch(yych){
+       case '.':       goto yy1034;
+       case '/':       goto yy1033;
+       case 'Y':       case 'y':       goto yy80;
+       default:        goto yy809;
+       }
+yy1314:        yych = *++YYCURSOR;
+       switch(yych){
+       case '.':       goto yy1034;
+       case '/':       goto yy1033;
+       case 'U':       case 'u':       goto yy107;
+       default:        goto yy809;
+       }
+yy1315:        yych = *++YYCURSOR;
+       switch(yych){
+       case '.':       goto yy1034;
+       case '/':       goto yy1033;
+       case 'R':       case 'r':       goto yy908;
+       case 'Y':       case 'y':       goto yy857;
+       default:        goto yy809;
        }
-yy1269:        yych = *++YYCURSOR;
+yy1316:        yych = *++YYCURSOR;
+       switch(yych){
+       case '.':       goto yy1034;
+       case '/':       goto yy1033;
+       case 'N':       case 'n':       goto yy1319;
+       default:        goto yy809;
+       }
+yy1317:        yych = *++YYCURSOR;
        switch(yych){
-       case '.':       goto yy1270;
+       case '.':       goto yy1034;
+       case '/':       goto yy1033;
+       case 'N':       case 'n':       goto yy1318;
+       default:        goto yy809;
+       }
+yy1318:        yych = *++YYCURSOR;
+       switch(yych){
+       case 'D':       case 'd':       goto yy114;
+       case 'O':       case 'o':       goto yy847;
+       case 'T':       case 't':       goto yy115;
        default:        goto yy52;
        }
-yy1270:        yych = *++YYCURSOR;
+yy1319:        yyaccept = 3;
+       yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
+       case ' ':       case '+':       case '-':       goto yy53;
        case '0':
        case '1':
        case '2':
@@ -26451,11 +28079,51 @@ yy1270:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1271;
+       case '9':       goto yy50;
+       case 'O':       case 'o':       goto yy847;
+       case 'S':       case 's':       goto yy71;
+       case 'U':       case 'u':       goto yy111;
+       default:        goto yy72;
+       }
+yy1320:        yych = *++YYCURSOR;
+       switch(yych){
+       case 'C':       case 'c':       goto yy120;
+       case 'P':       case 'p':       goto yy901;
        default:        goto yy52;
        }
-yy1271:        yych = *++YYCURSOR;
+yy1321:        yych = *++YYCURSOR;
+       switch(yych){
+       case '.':       goto yy1034;
+       case '/':       goto yy1033;
+       case 'C':       case 'c':       goto yy120;
+       case 'P':       case 'p':       goto yy901;
+       default:        goto yy809;
+       }
+yy1322:        yych = *++YYCURSOR;
        switch(yych){
+       case '.':       goto yy1034;
+       case '/':       goto yy1033;
+       case 'T':       case 't':       goto yy126;
+       default:        goto yy809;
+       }
+yy1323:        yych = *++YYCURSOR;
+       switch(yych){
+       case '.':       goto yy1034;
+       case '/':       goto yy1033;
+       case 'N':       case 'n':       goto yy1324;
+       default:        goto yy809;
+       }
+yy1324:        yych = *++YYCURSOR;
+       switch(yych){
+       case 'D':       case 'd':       goto yy124;
+       case 'O':       case 'o':       goto yy847;
+       default:        goto yy52;
+       }
+yy1325:        yych = *++YYCURSOR;
+       switch(yych){
+       case '-':       goto yy807;
+       case '.':       goto yy1034;
+       case '/':       goto yy1033;
        case '0':
        case '1':
        case '2':
@@ -26465,58 +28133,161 @@ yy1271:      yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy904;
-       default:        goto yy905;
+       case '9':       goto yy1050;
+       case 'a':       goto yy1326;
+       case 'b':
+       case 'c':       case 'e':       case 'g':       case 'i':       case 'k':
+       case 'l':       case 'p':
+       case 'q':
+       case 'r':       case 'u':
+       case 'v':       case 'x':       case 'z':       goto yy801;
+       case 'd':       goto yy793;
+       case 'f':       goto yy796;
+       case 'h':       goto yy791;
+       case 'j':       goto yy802;
+       case 'm':       goto yy790;
+       case 'n':       goto yy803;
+       case 'o':       goto yy804;
+       case 's':       goto yy788;
+       case 't':       goto yy798;
+       case 'w':       goto yy794;
+       case 'y':       goto yy797;
+       default:        goto yy1328;
        }
-yy1272:        yych = *++YYCURSOR;
+yy1326:        yych = *++YYCURSOR;
+       switch(yych){
+       case 'P':       goto yy867;
+       case 'U':       goto yy866;
+       case 'a':
+       case 'b':
+       case 'c':
+       case 'd':
+       case 'e':
+       case 'f':
+       case 'g':
+       case 'h':
+       case 'i':
+       case 'j':
+       case 'k':
+       case 'l':
+       case 'm':
+       case 'n':
+       case 'o':       case 'q':
+       case 'r':
+       case 's':
+       case 't':       case 'v':
+       case 'w':
+       case 'x':
+       case 'y':
+       case 'z':       goto yy1032;
+       case 'p':       goto yy1049;
+       case 'u':       goto yy1048;
+       default:        goto yy52;
+       }
+yy1327:        ++YYCURSOR;
+       if((YYLIMIT - YYCURSOR) < 13) YYFILL(13);
+       yych = *YYCURSOR;
+       goto yy1328;
+yy1328:        switch(yych){
+       case ' ':       goto yy1327;
+       case '!':
+       case '"':
+       case '#':
+       case '$':
+       case '%':
+       case '&':
+       case '\'':
+       case '(':
+       case ')':
+       case '*':
+       case '+':
+       case ',':
+       case '-':
+       case '.':       goto yy808;
+       case 'A':       case 'a':       goto yy891;
+       case 'D':       case 'd':       goto yy792;
+       case 'F':       case 'f':       goto yy795;
+       case 'H':       case 'h':       goto yy59;
+       case 'I':       goto yy811;
+       case 'J':       case 'j':       goto yy815;
+       case 'M':       case 'm':       goto yy789;
+       case 'N':       case 'n':       goto yy818;
+       case 'O':       case 'o':       goto yy817;
+       case 'S':       case 's':       goto yy787;
+       case 'T':       case 't':       goto yy64;
+       case 'V':       goto yy813;
+       case 'W':       case 'w':       goto yy61;
+       case 'X':       goto yy814;
+       case 'Y':       case 'y':       goto yy63;
+       default:        goto yy52;
+       }
+yy1329:        yych = *++YYCURSOR;
        switch(yych){
-       case '-':       goto yy791;
-       case '.':       goto yy1273;
-       case '/':       goto yy1266;
+       case '-':       goto yy807;
+       case '.':       goto yy1330;
+       case '/':       goto yy1033;
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy1275;
+       case '5':       goto yy1332;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1011;
-       case ':':       goto yy1274;
-       default:        goto yy1264;
+       case '9':       goto yy1050;
+       case ':':       goto yy1331;
+       case 'a':       goto yy1326;
+       case 'b':
+       case 'c':       case 'e':       case 'g':       case 'i':       case 'k':
+       case 'l':       case 'p':
+       case 'q':
+       case 'r':       case 'u':
+       case 'v':       case 'x':       case 'z':       goto yy801;
+       case 'd':       goto yy793;
+       case 'f':       goto yy796;
+       case 'h':       goto yy791;
+       case 'j':       goto yy802;
+       case 'm':       goto yy790;
+       case 'n':       goto yy803;
+       case 'o':       goto yy804;
+       case 's':       goto yy788;
+       case 't':       goto yy798;
+       case 'w':       goto yy794;
+       case 'y':       goto yy797;
+       default:        goto yy1328;
        }
-yy1273:        yych = *++YYCURSOR;
+yy1330:        yych = *++YYCURSOR;
        switch(yych){
-       case '0':       goto yy1297;
-       case '1':       goto yy1298;
+       case '0':       goto yy1354;
+       case '1':       goto yy1355;
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy1299;
+       case '5':       goto yy1356;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1300;
-       default:        goto yy793;
+       case '9':       goto yy1357;
+       default:        goto yy809;
        }
-yy1274:        yych = *++YYCURSOR;
+yy1331:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy1292;
+       case '5':       goto yy1349;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1293;
+       case '9':       goto yy1350;
        default:        goto yy52;
        }
-yy1275:        yych = *++YYCURSOR;
+yy1332:        yych = *++YYCURSOR;
        switch(yych){
-       case '-':       goto yy1012;
+       case '-':       goto yy1051;
        case '0':
        case '1':
        case '2':
@@ -26526,10 +28297,10 @@ yy1275:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1276;
+       case '9':       goto yy1333;
        default:        goto yy56;
        }
-yy1276:        yyaccept = 21;
+yy1333:        yyaccept = 23;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':
@@ -26553,24 +28324,24 @@ yy1276:       yyaccept = 21;
        case 'Y':       case 'a':       case 'd':       case 'f':       case 'h':       case 'j':       case 'm':
        case 'n':
        case 'o':       case 's':
-       case 't':       case 'w':       case 'y':       goto yy1044;
-       case '-':       goto yy1041;
-       case '.':       goto yy1047;
-       case '/':       goto yy1042;
-       case '0':       goto yy1278;
-       case '1':       goto yy1279;
-       case '2':       goto yy1280;
-       case '3':       goto yy1281;
+       case 't':       case 'w':       case 'y':       goto yy1083;
+       case '-':       goto yy1080;
+       case '.':       goto yy1086;
+       case '/':       goto yy1081;
+       case '0':       goto yy1335;
+       case '1':       goto yy1336;
+       case '2':       goto yy1337;
+       case '3':       goto yy1338;
        case '4':
-       case '5':       goto yy1282;
-       case '6':       goto yy1283;
+       case '5':       goto yy1339;
+       case '6':       goto yy1340;
        case '7':
        case '8':
        case '9':       goto yy50;
-       case 'W':       goto yy1064;
-       default:        goto yy1277;
+       case 'W':       goto yy1103;
+       default:        goto yy1334;
        }
-yy1277:
+yy1334:
 #line 933 "parse_date.re"
 {
                DEBUG_OUTPUT("gnunocolon");
@@ -26592,10 +28363,10 @@ yy1277:
                TIMELIB_DEINIT;
                return TIMELIB_GNU_NOCOLON;
        }
-#line 26596 "<stdout>"
-yy1278:        yych = *++YYCURSOR;
+#line 28367 "<stdout>"
+yy1335:        yych = *++YYCURSOR;
        switch(yych){
-       case '0':       goto yy1290;
+       case '0':       goto yy1347;
        case '1':
        case '2':
        case '3':
@@ -26604,24 +28375,24 @@ yy1278:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1291;
+       case '9':       goto yy1348;
        default:        goto yy56;
        }
-yy1279:        yych = *++YYCURSOR;
+yy1336:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
-       case '2':       goto yy1289;
+       case '2':       goto yy1346;
        case '3':
        case '4':
        case '5':
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1288;
+       case '9':       goto yy1345;
        default:        goto yy56;
        }
-yy1280:        yych = *++YYCURSOR;
+yy1337:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -26632,24 +28403,24 @@ yy1280:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1288;
+       case '9':       goto yy1345;
        default:        goto yy56;
        }
-yy1281:        yych = *++YYCURSOR;
+yy1338:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy1286;
-       case '6':       goto yy1287;
+       case '5':       goto yy1343;
+       case '6':       goto yy1344;
        case '7':
        case '8':
-       case '9':       goto yy1284;
+       case '9':       goto yy1341;
        default:        goto yy56;
        }
-yy1282:        yych = *++YYCURSOR;
+yy1339:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
@@ -26660,12 +28431,12 @@ yy1282:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1284;
+       case '9':       goto yy1341;
        default:        goto yy56;
        }
-yy1283:        yych = *++YYCURSOR;
+yy1340:        yych = *++YYCURSOR;
        switch(yych){
-       case '0':       goto yy1284;
+       case '0':       goto yy1341;
        case '1':
        case '2':
        case '3':
@@ -26677,7 +28448,7 @@ yy1283: yych = *++YYCURSOR;
        case '9':       goto yy50;
        default:        goto yy56;
        }
-yy1284:        yyaccept = 22;
+yy1341:        yyaccept = 24;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':       case 'D':       case 'F':       case 'H':       case 'M':       case 'S':
@@ -26693,9 +28464,9 @@ yy1284: yyaccept = 22;
        case '7':
        case '8':
        case '9':       goto yy50;
-       default:        goto yy1285;
+       default:        goto yy1342;
        }
-yy1285:
+yy1342:
 #line 978 "parse_date.re"
 {
                int tz_not_found;
@@ -26713,8 +28484,8 @@ yy1285:
                TIMELIB_DEINIT;
                return TIMELIB_ISO_NOCOLON;
        }
-#line 26717 "<stdout>"
-yy1286:        yyaccept = 22;
+#line 28488 "<stdout>"
+yy1343:        yyaccept = 24;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':       case 'D':       case 'F':       case 'H':       case 'M':       case 'S':
@@ -26729,10 +28500,10 @@ yy1286:       yyaccept = 22;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1074;
-       default:        goto yy1285;
+       case '9':       goto yy1113;
+       default:        goto yy1342;
        }
-yy1287:        yyaccept = 22;
+yy1344:        yyaccept = 24;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':       case 'D':       case 'F':       case 'H':       case 'M':       case 'S':
@@ -26744,13 +28515,13 @@ yy1287:       yyaccept = 22;
        case '3':
        case '4':
        case '5':
-       case '6':       goto yy1074;
+       case '6':       goto yy1113;
        case '7':
        case '8':
        case '9':       goto yy50;
-       default:        goto yy1285;
+       default:        goto yy1342;
        }
-yy1288:        yyaccept = 22;
+yy1345:        yyaccept = 24;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':       case 'D':       case 'F':       case 'H':       case 'M':       case 'S':
@@ -26765,28 +28536,28 @@ yy1288:       yyaccept = 22;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1074;
-       default:        goto yy1285;
+       case '9':       goto yy1113;
+       default:        goto yy1342;
        }
-yy1289:        yyaccept = 22;
+yy1346:        yyaccept = 24;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':       case 'D':       case 'F':       case 'H':       case 'M':       case 'S':
        case 'T':       case 'W':       case 'Y':       case 'd':       case 'f':       case 'h':       case 'm':       case 's':
        case 't':       case 'w':       case 'y':       goto yy56;
-       case '0':       goto yy1078;
+       case '0':       goto yy1117;
        case '1':
-       case '2':       goto yy1079;
-       case '3':       goto yy1080;
+       case '2':       goto yy1118;
+       case '3':       goto yy1119;
        case '4':
        case '5':
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1074;
-       default:        goto yy1285;
+       case '9':       goto yy1113;
+       default:        goto yy1342;
        }
-yy1290:        yyaccept = 22;
+yy1347:        yyaccept = 24;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':       case 'D':       case 'F':       case 'H':       case 'M':       case 'S':
@@ -26801,31 +28572,31 @@ yy1290:       yyaccept = 22;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1074;
-       default:        goto yy1285;
+       case '9':       goto yy1113;
+       default:        goto yy1342;
        }
-yy1291:        yyaccept = 22;
+yy1348:        yyaccept = 24;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ' ':       case 'D':       case 'F':       case 'H':       case 'M':       case 'S':
        case 'T':       case 'W':       case 'Y':       case 'd':       case 'f':       case 'h':       case 'm':       case 's':
        case 't':       case 'w':       case 'y':       goto yy56;
-       case '0':       goto yy1078;
+       case '0':       goto yy1117;
        case '1':
-       case '2':       goto yy1079;
-       case '3':       goto yy1080;
+       case '2':       goto yy1118;
+       case '3':       goto yy1119;
        case '4':
        case '5':
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1074;
-       default:        goto yy1285;
+       case '9':       goto yy1113;
+       default:        goto yy1342;
        }
-yy1292:        yyaccept = 12;
+yy1349:        yyaccept = 12;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       case ':':       goto yy1294;
+       case '.':       case ':':       goto yy1351;
        case '0':
        case '1':
        case '2':
@@ -26835,33 +28606,33 @@ yy1292:       yyaccept = 12;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1293;
-       default:        goto yy810;
+       case '9':       goto yy1350;
+       default:        goto yy826;
        }
-yy1293:        yyaccept = 12;
+yy1350:        yyaccept = 12;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       case ':':       goto yy1294;
-       default:        goto yy810;
+       case '.':       case ':':       goto yy1351;
+       default:        goto yy826;
        }
-yy1294:        yych = *++YYCURSOR;
+yy1351:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy1295;
-       case '6':       goto yy1296;
+       case '5':       goto yy1352;
+       case '6':       goto yy1353;
        case '7':
        case '8':
-       case '9':       goto yy815;
+       case '9':       goto yy831;
        default:        goto yy52;
        }
-yy1295:        yyaccept = 12;
+yy1352:        yyaccept = 12;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       goto yy816;
+       case '.':       goto yy832;
        case '0':
        case '1':
        case '2':
@@ -26871,20 +28642,20 @@ yy1295:       yyaccept = 12;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy815;
-       default:        goto yy810;
+       case '9':       goto yy831;
+       default:        goto yy826;
        }
-yy1296:        yyaccept = 12;
+yy1353:        yyaccept = 12;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       goto yy816;
-       case '0':       goto yy815;
-       default:        goto yy810;
+       case '.':       goto yy832;
+       case '0':       goto yy831;
+       default:        goto yy826;
        }
-yy1297:        yyaccept = 12;
+yy1354:        yyaccept = 12;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       goto yy1301;
+       case '.':       goto yy1358;
        case '0':
        case '1':
        case '2':
@@ -26894,31 +28665,31 @@ yy1297:       yyaccept = 12;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1300;
-       case ':':       goto yy1294;
-       default:        goto yy810;
+       case '9':       goto yy1357;
+       case ':':       goto yy1351;
+       default:        goto yy826;
        }
-yy1298:        yyaccept = 12;
+yy1355:        yyaccept = 12;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       goto yy1301;
+       case '.':       goto yy1358;
        case '0':
        case '1':
-       case '2':       goto yy1300;
+       case '2':       goto yy1357;
        case '3':
        case '4':
        case '5':
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1293;
-       case ':':       goto yy1294;
-       default:        goto yy810;
+       case '9':       goto yy1350;
+       case ':':       goto yy1351;
+       default:        goto yy826;
        }
-yy1299:        yyaccept = 12;
+yy1356:        yyaccept = 12;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       goto yy1301;
+       case '.':       goto yy1358;
        case '0':
        case '1':
        case '2':
@@ -26928,35 +28699,35 @@ yy1299:       yyaccept = 12;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1293;
-       case ':':       goto yy1294;
-       default:        goto yy810;
+       case '9':       goto yy1350;
+       case ':':       goto yy1351;
+       default:        goto yy826;
        }
-yy1300:        yyaccept = 12;
+yy1357:        yyaccept = 12;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       goto yy1301;
-       case ':':       goto yy1294;
-       default:        goto yy810;
+       case '.':       goto yy1358;
+       case ':':       goto yy1351;
+       default:        goto yy826;
        }
-yy1301:        yych = *++YYCURSOR;
+yy1358:        yych = *++YYCURSOR;
        switch(yych){
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy1302;
-       case '6':       goto yy1303;
+       case '5':       goto yy1359;
+       case '6':       goto yy1360;
        case '7':
        case '8':
-       case '9':       goto yy903;
+       case '9':       goto yy919;
        default:        goto yy52;
        }
-yy1302:        yyaccept = 12;
+yy1359:        yyaccept = 12;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       goto yy816;
+       case '.':       goto yy832;
        case '0':
        case '1':
        case '2':
@@ -26966,14 +28737,14 @@ yy1302:       yyaccept = 12;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1304;
-       default:        goto yy810;
+       case '9':       goto yy1361;
+       default:        goto yy826;
        }
-yy1303:        yyaccept = 12;
+yy1360:        yyaccept = 12;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       goto yy816;
-       case '0':       goto yy1304;
+       case '.':       goto yy832;
+       case '0':       goto yy1361;
        case '1':
        case '2':
        case '3':
@@ -26982,13 +28753,13 @@ yy1303:       yyaccept = 12;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy904;
-       default:        goto yy810;
+       case '9':       goto yy920;
+       default:        goto yy826;
        }
-yy1304:        yyaccept = 12;
+yy1361:        yyaccept = 12;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
-       case '.':       goto yy816;
+       case '.':       goto yy832;
        case '0':
        case '1':
        case '2':
@@ -26998,46 +28769,82 @@ yy1304:       yyaccept = 12;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy906;
-       default:        goto yy810;
+       case '9':       goto yy922;
+       default:        goto yy826;
        }
-yy1305:        yych = *++YYCURSOR;
+yy1362:        yych = *++YYCURSOR;
        switch(yych){
-       case '-':       goto yy791;
-       case '.':       goto yy794;
-       case '/':       goto yy790;
+       case '-':       goto yy807;
+       case '.':       goto yy810;
+       case '/':       goto yy806;
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy1275;
+       case '5':       goto yy1332;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1011;
-       case ':':       goto yy803;
-       default:        goto yy784;
+       case '9':       goto yy1050;
+       case ':':       goto yy819;
+       case 'a':       goto yy800;
+       case 'b':
+       case 'c':       case 'e':       case 'g':       case 'i':       case 'k':
+       case 'l':       case 'q':
+       case 'r':       case 'u':
+       case 'v':       case 'x':       case 'z':       goto yy801;
+       case 'd':       goto yy793;
+       case 'f':       goto yy796;
+       case 'h':       goto yy791;
+       case 'j':       goto yy802;
+       case 'm':       goto yy790;
+       case 'n':       goto yy803;
+       case 'o':       goto yy804;
+       case 'p':       goto yy805;
+       case 's':       goto yy788;
+       case 't':       goto yy798;
+       case 'w':       goto yy794;
+       case 'y':       goto yy797;
+       default:        goto yy786;
        }
-yy1306:        yych = *++YYCURSOR;
+yy1363:        yych = *++YYCURSOR;
        switch(yych){
-       case '-':       goto yy791;
-       case '.':       goto yy1273;
-       case '/':       goto yy790;
+       case '-':       goto yy807;
+       case '.':       goto yy1330;
+       case '/':       goto yy806;
        case '0':
        case '1':
        case '2':
        case '3':
        case '4':
-       case '5':       goto yy1275;
+       case '5':       goto yy1332;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1011;
-       case ':':       goto yy1274;
-       default:        goto yy1264;
+       case '9':       goto yy1050;
+       case ':':       goto yy1331;
+       case 'a':       goto yy1326;
+       case 'b':
+       case 'c':       case 'e':       case 'g':       case 'i':       case 'k':
+       case 'l':       case 'p':
+       case 'q':
+       case 'r':       case 'u':
+       case 'v':       case 'x':       case 'z':       goto yy801;
+       case 'd':       goto yy793;
+       case 'f':       goto yy796;
+       case 'h':       goto yy791;
+       case 'j':       goto yy802;
+       case 'm':       goto yy790;
+       case 'n':       goto yy803;
+       case 'o':       goto yy804;
+       case 's':       goto yy788;
+       case 't':       goto yy798;
+       case 'w':       goto yy794;
+       case 'y':       goto yy797;
+       default:        goto yy1328;
        }
-yy1307:        yych = *++YYCURSOR;
+yy1364:        yych = *++YYCURSOR;
        switch(yych){
        case '1':
        case '2':
@@ -27047,14 +28854,14 @@ yy1307:       yych = *++YYCURSOR;
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1308;
+       case '9':       goto yy1365;
        default:        goto yy52;
        }
-yy1308:        ++YYCURSOR;
+yy1365:        ++YYCURSOR;
        if(YYLIMIT == YYCURSOR) YYFILL(1);
        yych = *YYCURSOR;
-       goto yy1309;
-yy1309:        switch(yych){
+       goto yy1366;
+yy1366:        switch(yych){
        case '0':
        case '1':
        case '2':
@@ -27064,10 +28871,10 @@ yy1309:       switch(yych){
        case '6':
        case '7':
        case '8':
-       case '9':       goto yy1308;
-       default:        goto yy1310;
+       case '9':       goto yy1365;
+       default:        goto yy1367;
        }
-yy1310:
+yy1367:
 #line 868 "parse_date.re"
 {
                timelib_ull i;
@@ -27091,8 +28898,8 @@ yy1310:
                TIMELIB_DEINIT;
                return TIMELIB_RELATIVE;
        }
-#line 27095 "<stdout>"
-yy1311:        yych = *++YYCURSOR;
+#line 28902 "<stdout>"
+yy1368:        yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -27142,11 +28949,11 @@ yy1311:       yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy133;
-       case 'd':       goto yy1312;
-       case 'm':       goto yy1313;
+       case 'd':       goto yy1369;
+       case 'm':       goto yy1370;
        default:        goto yy3;
        }
-yy1312:        yych = *++YYCURSOR;
+yy1369:        yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -27199,10 +29006,10 @@ yy1312:       yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy134;
-       case 'a':       goto yy1320;
+       case 'a':       goto yy1377;
        default:        goto yy3;
        }
-yy1313:        yych = *++YYCURSOR;
+yy1370:        yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -27254,34 +29061,34 @@ yy1313:       yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy134;
-       case 'o':       goto yy1314;
+       case 'o':       goto yy1371;
        default:        goto yy3;
        }
-yy1314:        yyaccept = 1;
+yy1371:        yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
-       case 'r':       goto yy1315;
+       case 'r':       goto yy1372;
        default:        goto yy3;
        }
-yy1315:        yych = *++YYCURSOR;
+yy1372:        yych = *++YYCURSOR;
        switch(yych){
-       case 'r':       goto yy1316;
+       case 'r':       goto yy1373;
        default:        goto yy52;
        }
-yy1316:        yych = *++YYCURSOR;
+yy1373:        yych = *++YYCURSOR;
        switch(yych){
-       case 'o':       goto yy1317;
+       case 'o':       goto yy1374;
        default:        goto yy52;
        }
-yy1317:        yych = *++YYCURSOR;
+yy1374:        yych = *++YYCURSOR;
        switch(yych){
-       case 'w':       goto yy1318;
+       case 'w':       goto yy1375;
        default:        goto yy52;
        }
-yy1318:        ++YYCURSOR;
-       goto yy1319;
-yy1319:
+yy1375:        ++YYCURSOR;
+       goto yy1376;
+yy1376:
 #line 856 "parse_date.re"
 {
                DEBUG_OUTPUT("tomorrow");
@@ -27293,16 +29100,16 @@ yy1319:
                TIMELIB_DEINIT;
                return TIMELIB_RELATIVE;
        }
-#line 27297 "<stdout>"
-yy1320:        yych = *++YYCURSOR;
+#line 29104 "<stdout>"
+yy1377:        yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
-       case 'y':       goto yy1321;
+       case 'y':       goto yy1378;
        default:        goto yy3;
        }
-yy1321:        ++YYCURSOR;
-       goto yy1322;
-yy1322:
+yy1378:        ++YYCURSOR;
+       goto yy1379;
+yy1379:
 #line 846 "parse_date.re"
 {
                DEBUG_OUTPUT("midnight | today");
@@ -27312,8 +29119,8 @@ yy1322:
                TIMELIB_DEINIT;
                return TIMELIB_RELATIVE;
        }
-#line 27316 "<stdout>"
-yy1323:        yych = *++YYCURSOR;
+#line 29123 "<stdout>"
+yy1380:        yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -27365,10 +29172,10 @@ yy1323:       yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy133;
-       case 'd':       goto yy1324;
+       case 'd':       goto yy1381;
        default:        goto yy3;
        }
-yy1324:        yych = *++YYCURSOR;
+yy1381:        yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -27420,32 +29227,32 @@ yy1324:       yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy134;
-       case 'n':       goto yy1325;
+       case 'n':       goto yy1382;
        default:        goto yy3;
        }
-yy1325:        yyaccept = 1;
+yy1382:        yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
-       case 'i':       goto yy1326;
+       case 'i':       goto yy1383;
        default:        goto yy3;
        }
-yy1326:        yych = *++YYCURSOR;
+yy1383:        yych = *++YYCURSOR;
        switch(yych){
-       case 'g':       goto yy1327;
+       case 'g':       goto yy1384;
        default:        goto yy52;
        }
-yy1327:        yych = *++YYCURSOR;
+yy1384:        yych = *++YYCURSOR;
        switch(yych){
-       case 'h':       goto yy1328;
+       case 'h':       goto yy1385;
        default:        goto yy52;
        }
-yy1328:        yych = *++YYCURSOR;
+yy1385:        yych = *++YYCURSOR;
        switch(yych){
-       case 't':       goto yy1321;
+       case 't':       goto yy1378;
        default:        goto yy52;
        }
-yy1329:        yych = *++YYCURSOR;
+yy1386:        yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -27492,12 +29299,12 @@ yy1329:       yych = *++YYCURSOR;
        case 'u':       case 'x':
        case 'y':
        case 'z':       goto yy133;
-       case 'V':       case 'v':       goto yy620;
-       case 'o':       goto yy1332;
-       case 'w':       goto yy1330;
+       case 'V':       case 'v':       goto yy622;
+       case 'o':       goto yy1389;
+       case 'w':       goto yy1387;
        default:        goto yy3;
        }
-yy1330:        ++YYCURSOR;
+yy1387:        ++YYCURSOR;
        switch((yych = *YYCURSOR)) {
        case ')':       goto yy131;
        case 'A':
@@ -27551,9 +29358,9 @@ yy1330: ++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy134;
-       default:        goto yy1331;
+       default:        goto yy1388;
        }
-yy1331:
+yy1388:
 #line 825 "parse_date.re"
 {
                DEBUG_OUTPUT("now");
@@ -27562,8 +29369,8 @@ yy1331:
                TIMELIB_DEINIT;
                return TIMELIB_RELATIVE;
        }
-#line 27566 "<stdout>"
-yy1332:        yych = *++YYCURSOR;
+#line 29373 "<stdout>"
+yy1389:        yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -27615,15 +29422,15 @@ yy1332:       yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy134;
-       case 'n':       goto yy1333;
+       case 'n':       goto yy1390;
        default:        goto yy3;
        }
-yy1333:        ++YYCURSOR;
+yy1390:        ++YYCURSOR;
        switch((yych = *YYCURSOR)) {
        case ')':       goto yy131;
-       default:        goto yy1334;
+       default:        goto yy1391;
        }
-yy1334:
+yy1391:
 #line 834 "parse_date.re"
 {
                DEBUG_OUTPUT("noon");
@@ -27635,8 +29442,8 @@ yy1334:
                TIMELIB_DEINIT;
                return TIMELIB_RELATIVE;
        }
-#line 27639 "<stdout>"
-yy1335:        yych = *++YYCURSOR;
+#line 29446 "<stdout>"
+yy1392:        yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -27688,10 +29495,10 @@ yy1335:       yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy133;
-       case 's':       goto yy1336;
+       case 's':       goto yy1393;
        default:        goto yy3;
        }
-yy1336:        yych = *++YYCURSOR;
+yy1393:        yych = *++YYCURSOR;
        switch(yych){
        case ')':       goto yy131;
        case 'A':
@@ -27743,39 +29550,39 @@ yy1336:       yych = *++YYCURSOR;
        case 'x':
        case 'y':
        case 'z':       goto yy134;
-       case 't':       goto yy1337;
+       case 't':       goto yy1394;
        default:        goto yy3;
        }
-yy1337:        yyaccept = 1;
+yy1394:        yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
        switch(yych){
        case ')':       goto yy131;
-       case 'e':       goto yy1338;
+       case 'e':       goto yy1395;
        default:        goto yy3;
        }
-yy1338:        yych = *++YYCURSOR;
+yy1395:        yych = *++YYCURSOR;
        switch(yych){
-       case 'r':       goto yy1339;
+       case 'r':       goto yy1396;
        default:        goto yy52;
        }
-yy1339:        yych = *++YYCURSOR;
+yy1396:        yych = *++YYCURSOR;
        switch(yych){
-       case 'd':       goto yy1340;
+       case 'd':       goto yy1397;
        default:        goto yy52;
        }
-yy1340:        yych = *++YYCURSOR;
+yy1397:        yych = *++YYCURSOR;
        switch(yych){
-       case 'a':       goto yy1341;
+       case 'a':       goto yy1398;
        default:        goto yy52;
        }
-yy1341:        yych = *++YYCURSOR;
+yy1398:        yych = *++YYCURSOR;
        switch(yych){
-       case 'y':       goto yy1342;
+       case 'y':       goto yy1399;
        default:        goto yy52;
        }
-yy1342:        ++YYCURSOR;
-       goto yy1343;
-yy1343:
+yy1399:        ++YYCURSOR;
+       goto yy1400;
+yy1400:
 #line 813 "parse_date.re"
 {
                DEBUG_OUTPUT("yesterday");
@@ -27787,7 +29594,7 @@ yy1343:
                TIMELIB_DEINIT;
                return TIMELIB_RELATIVE;
        }
-#line 27791 "<stdout>"
+#line 29598 "<stdout>"
 }
 #line 1377 "parse_date.re"
 
index 0aacd600157e2c9cc11c46945f6a0f9c709fcd04..5e0ac4c1a96b006abe17422b278e6298f57a8bba 100644 (file)
@@ -719,7 +719,7 @@ tz = "("? [A-Za-z]{1,4} ")"? | [A-Z][a-z]+([_/][A-Z][a-z]+)+;
 tzcorrection = [+-] hour24 ":"? minutelz?;
 
 month = "0"? [0-9] | "1"[0-2];
-day   = [0-2]?[0-9] | "3"[01];
+day   = ([0-2]?[0-9] | "3"[01])([a-z][a-z])?;
 year  = [0-9]{1,4};
 year2 = [0-9]{2};
 year4 = [0-9]{4};
index 00a66d6374b144a0fded42814cca43c015cf1ba5..2cb341f6f399ea4dfb785fb640ca4b8e38d66b7f 100644 (file)
        { "gmt",   0,      0, "GB"                            },
        { "gmt",   0,      0, "GB-Eire"                       },
        { "gmt",   0,      0, "GMT"                           },
+       { "utc",   0,      0, "UTC"                           },
        { "gmt",   0,      0, "Iceland"                       },
        { "gst",   0,  14400, "Asia/Dubai"                    },
        { "gst",   0,  14400, "Asia/Bahrain"                  },
diff --git a/ext/date/tests/bug35414.phpt b/ext/date/tests/bug35414.phpt
new file mode 100644 (file)
index 0000000..5e530fb
--- /dev/null
@@ -0,0 +1,14 @@
+--TEST--
+Bug #35414 (strtotime() no longer works with ordinal suffix)
+--FILE--
+<?php
+date_default_timezone_set("UTC");
+
+echo date(DATE_ISO8601, strtotime("Sat 26th Nov 2005 18:18")) . "\n";
+echo date(DATE_ISO8601, strtotime("Dec. 4th, 2005")) . "\n";
+echo date(DATE_ISO8601, strtotime("December 4th, 2005")) . "\n";
+?>
+--EXPECT--
+2004-12-26T18:18:00+0000
+2005-12-04T00:00:00+0000
+2005-12-04T00:00:00+0000
diff --git a/ext/date/tests/bug35422.phpt b/ext/date/tests/bug35422.phpt
new file mode 100644 (file)
index 0000000..8273c75
--- /dev/null
@@ -0,0 +1,12 @@
+--TEST--
+Bug #35422 (strtotime() does not parse times with UTC as timezone)
+--FILE--
+<?php
+date_default_timezone_set("UTC");
+
+echo date(DATE_ISO8601, strtotime("July 1, 2000 00:00:00 UTC")) . "\n";
+echo date(DATE_ISO8601, strtotime("July 1, 2000 00:00:00 GMT")) . "\n";
+?>
+--EXPECT--
+2000-07-01T00:00:00+0000
+2000-07-01T00:00:00+0000