+ case 'l': goto yy317;
+ default: goto yy62;
+ }
+yy239:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'V':
+ case 'v': goto yy318;
+ default: goto yy62;
+ }
+yy240:
+ yyaccept = 10;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 0x00:
+ case 0x01:
+ case 0x02:
+ case 0x03:
+ case 0x04:
+ case 0x05:
+ case 0x06:
+ case 0x07:
+ case 0x08:
+ case '\t':
+ case '\n':
+ case '\v':
+ case '\f':
+ case '\r':
+ case 0x0E:
+ case 0x0F:
+ case 0x10:
+ case 0x11:
+ case 0x12:
+ case 0x13:
+ case 0x14:
+ case 0x15:
+ case 0x16:
+ case 0x17:
+ case 0x18:
+ case 0x19:
+ case 0x1A:
+ case 0x1B:
+ case 0x1C:
+ case 0x1D:
+ case 0x1E:
+ case 0x1F:
+ case ' ':
+ case '!':
+ case '"':
+ case '#':
+ case '$':
+ case '%':
+ case '&':
+ case '\'':
+ case '(':
+ case ')':
+ case '*':
+ case '+':
+ case ',':
+ case '-':
+ case '.':
+ case '/':
+ case ':':
+ case ';':
+ case '<':
+ case '=':
+ case '>':
+ case '?':
+ case '@':
+ case '[':
+ case ']':
+ case '^':
+ case '`':
+ case '{':
+ case '|':
+ case '}':
+ case '~':
+ case 0x7F: goto yy241;
+ case '\\': goto yy146;
+ default: goto yy61;
+ }
+yy241:
+#line 424 "src/parser.re"
+ { NEWTOKEN(PSI_T_LET); goto start; }
+#line 2733 "src/parser.c"
+yy242:
+ yyaccept = 11;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 0x00:
+ case 0x01:
+ case 0x02:
+ case 0x03:
+ case 0x04:
+ case 0x05:
+ case 0x06:
+ case 0x07:
+ case 0x08:
+ case '\t':
+ case '\n':
+ case '\v':
+ case '\f':
+ case '\r':
+ case 0x0E:
+ case 0x0F:
+ case 0x10:
+ case 0x11:
+ case 0x12:
+ case 0x13:
+ case 0x14:
+ case 0x15:
+ case 0x16:
+ case 0x17:
+ case 0x18:
+ case 0x19:
+ case 0x1A:
+ case 0x1B:
+ case 0x1C:
+ case 0x1D:
+ case 0x1E:
+ case 0x1F:
+ case ' ':
+ case '!':
+ case '"':
+ case '#':
+ case '$':
+ case '%':
+ case '&':
+ case '\'':
+ case '(':
+ case ')':
+ case '*':
+ case '+':
+ case ',':
+ case '-':
+ case '.':
+ case '/':
+ case ':':
+ case ';':
+ case '<':
+ case '=':
+ case '>':
+ case '?':
+ case '@':
+ case '[':
+ case ']':
+ case '^':
+ case '`':
+ case '{':
+ case '|':
+ case '}':
+ case '~':
+ case 0x7F: goto yy243;
+ case '\\': goto yy146;
+ default: goto yy61;
+ }
+yy243:
+#line 423 "src/parser.re"
+ { NEWTOKEN(PSI_T_LIB); goto start; }
+#line 2808 "src/parser.c"
+yy244:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'E':
+ case 'e': goto yy319;
+ default: goto yy62;
+ }
+yy245:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'L':
+ case 'l': goto yy320;
+ default: goto yy62;
+ }
+yy246:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'E':
+ case 'e': goto yy322;
+ case 'V':
+ case 'v': goto yy323;
+ default: goto yy62;
+ }
+yy247:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'H':
+ case 'h': goto yy324;
+ default: goto yy62;
+ }
+yy248:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'T':
+ case 't': goto yy325;
+ default: goto yy62;
+ }
+yy249:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case '_': goto yy326;
+ default: goto yy62;
+ }
+yy250:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'U':
+ case 'u': goto yy327;
+ default: goto yy62;
+ }
+yy251:
+ yyaccept = 12;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 0x00:
+ case 0x01:
+ case 0x02:
+ case 0x03:
+ case 0x04:
+ case 0x05:
+ case 0x06:
+ case 0x07:
+ case 0x08:
+ case '\t':
+ case '\n':
+ case '\v':
+ case '\f':
+ case '\r':
+ case 0x0E:
+ case 0x0F:
+ case 0x10:
+ case 0x11:
+ case 0x12:
+ case 0x13:
+ case 0x14:
+ case 0x15:
+ case 0x16:
+ case 0x17:
+ case 0x18:
+ case 0x19:
+ case 0x1A:
+ case 0x1B:
+ case 0x1C:
+ case 0x1D:
+ case 0x1E:
+ case 0x1F:
+ case ' ':
+ case '!':
+ case '"':
+ case '#':
+ case '$':
+ case '%':
+ case '&':
+ case '\'':
+ case '(':
+ case ')':
+ case '*':
+ case '+':
+ case ',':
+ case '-':
+ case '.':
+ case '/':
+ case ':':
+ case ';':
+ case '<':
+ case '=':
+ case '>':
+ case '?':
+ case '@':
+ case '[':
+ case ']':
+ case '^':
+ case '`':
+ case '{':
+ case '|':
+ case '}':
+ case '~':
+ case 0x7F: goto yy252;
+ case '\\': goto yy146;
+ default: goto yy61;
+ }
+yy252:
+#line 425 "src/parser.re"
+ { NEWTOKEN(PSI_T_SET); goto start; }
+#line 2940 "src/parser.c"
+yy253:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'T':
+ case 't': goto yy328;
+ default: goto yy62;
+ }
+yy254:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'I':
+ case 'i': goto yy329;
+ case 'L':
+ case 'l': goto yy330;
+ case 'V':
+ case 'v': goto yy331;
+ default: goto yy62;
+ }
+yy255:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'P':
+ case 'p': goto yy332;
+ default: goto yy62;
+ }
+yy256:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'A':
+ case 'a': goto yy334;
+ case 'B':
+ case 'b': goto yy335;
+ case 'F':
+ case 'f': goto yy336;
+ case 'I':
+ case 'i': goto yy337;
+ case 'O':
+ case 'o': goto yy338;
+ case 'S':
+ case 's': goto yy339;
+ default: goto yy62;
+ }
+yy257:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'E':
+ case 'e': goto yy340;
+ default: goto yy62;
+ }
+yy258:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'E':
+ case 'e': goto yy342;
+ default: goto yy62;
+ }
+yy259:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'N':
+ case 'n': goto yy343;
+ default: goto yy62;
+ }
+yy260:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'L':
+ case 'l': goto yy344;
+ default: goto yy62;
+ }
+yy261:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 's': goto yy346;
+ case 't': goto yy347;
+ default: goto yy62;
+ }
+yy262:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'x': goto yy348;
+ default: goto yy62;
+ }
+yy263:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'n': goto yy349;
+ default: goto yy62;
+ }
+yy264:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'e': goto yy350;
+ default: goto yy62;
+ }
+yy265:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'L': goto yy300;
+ case 'l': goto yy351;
+ default: goto yy62;
+ }
+yy266:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'r': goto yy353;
+ default: goto yy62;
+ }
+yy267:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 's': goto yy355;
+ default: goto yy62;
+ }
+yy268:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'b': goto yy356;
+ default: goto yy62;
+ }
+yy269:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'm': goto yy357;
+ default: goto yy62;
+ }
+yy270:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'A': goto yy311;
+ case 'a': goto yy359;
+ default: goto yy62;
+ }
+yy271:
+ yyaccept = 13;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 0x00:
+ case 0x01:
+ case 0x02:
+ case 0x03:
+ case 0x04:
+ case 0x05:
+ case 0x06:
+ case 0x07:
+ case 0x08:
+ case '\t':
+ case '\n':
+ case '\v':
+ case '\f':
+ case '\r':
+ case 0x0E:
+ case 0x0F:
+ case 0x10:
+ case 0x11:
+ case 0x12:
+ case 0x13:
+ case 0x14:
+ case 0x15:
+ case 0x16:
+ case 0x17:
+ case 0x18:
+ case 0x19:
+ case 0x1A:
+ case 0x1B:
+ case 0x1C:
+ case 0x1D:
+ case 0x1E:
+ case 0x1F:
+ case ' ':
+ case '!':
+ case '"':
+ case '#':
+ case '$':
+ case '%':
+ case '&':
+ case '\'':
+ case '(':
+ case ')':
+ case '*':
+ case '+':
+ case ',':
+ case '-':
+ case '.':
+ case '/':
+ case ':':
+ case ';':
+ case '<':
+ case '=':
+ case '>':
+ case '?':
+ case '@':
+ case '[':
+ case ']':
+ case '^':
+ case '`':
+ case '{':
+ case '|':
+ case '}':
+ case '~':
+ case 0x7F: goto yy272;
+ case '1': goto yy360;
+ case '3': goto yy361;
+ case '6': goto yy362;
+ case '8': goto yy363;
+ case 'V':
+ case 'v': goto yy318;
+ case '\\': goto yy146;
+ default: goto yy61;
+ }
+yy272:
+#line 385 "src/parser.re"
+ { NEWTOKEN(PSI_T_INT); goto start; }
+#line 3172 "src/parser.c"
+yy273:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'e': goto yy364;
+ default: goto yy62;
+ }
+yy274:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'g': goto yy366;
+ default: goto yy62;
+ }
+yy275:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'g': goto yy368;
+ default: goto yy62;
+ }
+yy276:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'r': goto yy369;
+ default: goto yy62;
+ }
+yy277:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'n': goto yy370;
+ default: goto yy62;
+ }
+yy278:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'e': goto yy371;
+ default: goto yy62;
+ }
+yy279:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'I':
+ case 'i': goto yy329;
+ case 'L':
+ case 'l': goto yy330;
+ case 'V':
+ case 'v': goto yy331;
+ case 'u': goto yy372;
+ default: goto yy62;
+ }
+yy280:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'e': goto yy373;
+ default: goto yy62;
+ }
+yy281:
+ ++cur;
+ cur -= 1;
+#line 323 "src/parser.re"
+ { char_width = 1; }
+#line 3240 "src/parser.c"
+yy283:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 't': goto yy374;
+ default: goto yy62;
+ }
+yy284:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'o': goto yy375;
+ default: goto yy62;
+ }
+yy285:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'i': goto yy376;
+ default: goto yy62;
+ }
+yy286:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'd': goto yy377;
+ default: goto yy62;
+ }
+yy287:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'a': goto yy379;
+ default: goto yy62;
+ }
+yy288:
+ ++cur;
+ cur -= 2;
+#line 318 "src/parser.re"
+ { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_DD; cur += 2; goto start; }
+#line 3281 "src/parser.c"
+yy290:
+ ++cur;
+ cur -= 2;
+#line 317 "src/parser.re"
+ { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_DF; cur += 2; goto start; }
+#line 3287 "src/parser.c"
+yy292:
+ ++cur;
+ cur -= 2;
+#line 319 "src/parser.re"
+ { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_DL; cur += 2; goto start; }
+#line 3293 "src/parser.c"
+yy294:
+ ++cur;
+ cur -= 3;
+#line 312 "src/parser.re"
+ { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_ULL; cur += 3; goto start; }
+#line 3299 "src/parser.c"
+yy296:
+ ++cur;
+ if ((lim - cur) < 3) if (cur >= lim) goto done;;
+ yych = *cur;
+ switch (yych) {
+ case '0':
+ case '1':
+ case '2':
+ case '3':
+ case '4':
+ case '5':
+ case '6':
+ case '7':
+ case '8':
+ case '9':
+ case 'A':
+ case 'B':
+ case 'C':
+ case 'D':
+ case 'E':
+ case 'F':
+ case 'a':
+ case 'b':
+ case 'c':
+ case 'd':
+ case 'e':
+ case 'f': goto yy296;
+ case 'P':
+ case 'p': goto yy127;
+ default: goto yy114;
+ }
+yy298:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'Y':
+ case 'y': goto yy380;
+ default: goto yy62;
+ }
+yy299:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'A':
+ case 'a': goto yy382;
+ default: goto yy62;
+ }
+yy300:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'V':
+ case 'v': goto yy383;
+ default: goto yy62;
+ }
+yy301:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'A':
+ case 'a': goto yy384;
+ case 'B':
+ case 'b': goto yy385;
+ case 'O':
+ case 'o': goto yy386;
+ default: goto yy62;
+ }
+yy302:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'T':
+ case 't': goto yy387;
+ default: goto yy62;
+ }
+yy303:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'N':
+ case 'n': goto yy389;
+ default: goto yy62;
+ }
+yy304:
+ yyaccept = 14;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 0x00:
+ case 0x01:
+ case 0x02:
+ case 0x03:
+ case 0x04:
+ case 0x05:
+ case 0x06:
+ case 0x07:
+ case 0x08:
+ case '\t':
+ case '\n':
+ case '\v':
+ case '\f':
+ case '\r':
+ case 0x0E:
+ case 0x0F:
+ case 0x10:
+ case 0x11:
+ case 0x12:
+ case 0x13:
+ case 0x14:
+ case 0x15:
+ case 0x16:
+ case 0x17:
+ case 0x18:
+ case 0x19:
+ case 0x1A:
+ case 0x1B:
+ case 0x1C:
+ case 0x1D:
+ case 0x1E:
+ case 0x1F:
+ case ' ':
+ case '!':
+ case '"':
+ case '#':
+ case '$':
+ case '%':
+ case '&':
+ case '\'':
+ case '(':
+ case ')':
+ case '*':
+ case '+':
+ case ',':
+ case '-':
+ case '.':
+ case '/':
+ case ':':
+ case ';':
+ case '<':
+ case '=':
+ case '>':
+ case '?':
+ case '@':
+ case '[':
+ case ']':
+ case '^':
+ case '`':
+ case '{':
+ case '|':
+ case '}':
+ case '~':
+ case 0x7F: goto yy305;
+ case '\\': goto yy146;
+ default: goto yy61;
+ }
+yy305:
+#line 403 "src/parser.re"
+ { NEWTOKEN(PSI_T_ELIF); goto start; }
+#line 3457 "src/parser.c"
+yy306:
+ yyaccept = 15;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 0x00:
+ case 0x01:
+ case 0x02:
+ case 0x03:
+ case 0x04:
+ case 0x05:
+ case 0x06:
+ case 0x07:
+ case 0x08:
+ case '\t':
+ case '\n':
+ case '\v':
+ case '\f':
+ case '\r':
+ case 0x0E:
+ case 0x0F:
+ case 0x10:
+ case 0x11:
+ case 0x12:
+ case 0x13:
+ case 0x14:
+ case 0x15:
+ case 0x16:
+ case 0x17:
+ case 0x18:
+ case 0x19:
+ case 0x1A:
+ case 0x1B:
+ case 0x1C:
+ case 0x1D:
+ case 0x1E:
+ case 0x1F:
+ case ' ':
+ case '!':
+ case '"':
+ case '#':
+ case '$':
+ case '%':
+ case '&':
+ case '\'':
+ case '(':
+ case ')':
+ case '*':
+ case '+':
+ case ',':
+ case '-':
+ case '.':
+ case '/':
+ case ':':
+ case ';':
+ case '<':
+ case '=':
+ case '>':
+ case '?':
+ case '@':
+ case '[':
+ case ']':
+ case '^':
+ case '`':
+ case '{':
+ case '|':
+ case '}':
+ case '~':
+ case 0x7F: goto yy307;
+ case '\\': goto yy146;
+ default: goto yy61;
+ }
+yy307:
+#line 402 "src/parser.re"
+ { NEWTOKEN(PSI_T_ELSE); goto start; }
+#line 3532 "src/parser.c"
+yy308:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'F':
+ case 'f': goto yy390;
+ default: goto yy62;
+ }
+yy309:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'R':
+ case 'r': goto yy392;
+ default: goto yy62;
+ }
+yy310:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'E':
+ case 'e': goto yy394;
+ default: goto yy62;
+ }
+yy311:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'T':
+ case 't': goto yy396;
+ default: goto yy62;
+ }
+yy312:
+ yyaccept = 16;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 0x00:
+ case 0x01:
+ case 0x02:
+ case 0x03:
+ case 0x04:
+ case 0x05:
+ case 0x06:
+ case 0x07:
+ case 0x08:
+ case '\t':
+ case '\n':
+ case '\v':
+ case '\f':
+ case '\r':
+ case 0x0E:
+ case 0x0F:
+ case 0x10:
+ case 0x11:
+ case 0x12:
+ case 0x13:
+ case 0x14:
+ case 0x15:
+ case 0x16:
+ case 0x17:
+ case 0x18:
+ case 0x19:
+ case 0x1A:
+ case 0x1B:
+ case 0x1C:
+ case 0x1D:
+ case 0x1E:
+ case 0x1F:
+ case ' ':
+ case '!':
+ case '"':
+ case '#':
+ case '$':
+ case '%':
+ case '&':
+ case '\'':
+ case '(':
+ case ')':
+ case '*':
+ case '+':
+ case ',':
+ case '-':
+ case '.':
+ case '/':
+ case ':':
+ case ';':
+ case '<':
+ case '=':
+ case '>':
+ case '?':
+ case '@':
+ case '[':
+ case ']':
+ case '^':
+ case '`':
+ case '{':
+ case '|':
+ case '}':
+ case '~':
+ case 0x7F: goto yy313;
+ case '\\': goto yy146;
+ default: goto yy61;
+ }
+yy313:
+#line 429 "src/parser.re"
+ { NEWTOKEN(PSI_T_FREE); goto start; }
+#line 3639 "src/parser.c"
+yy314:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'T':
+ case 't': goto yy397;
+ default: goto yy62;
+ }
+yy315:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'F':
+ case 'f': goto yy398;
+ default: goto yy62;
+ }
+yy316:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'E':
+ case 'e': goto yy400;
+ default: goto yy62;
+ }
+yy317:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'U':
+ case 'u': goto yy401;
+ default: goto yy62;
+ }
+yy318:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'A':
+ case 'a': goto yy402;
+ default: goto yy62;
+ }
+yy319:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'D':
+ case 'd': goto yy403;
+ default: goto yy62;
+ }
+yy320:
+ yyaccept = 17;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 0x00:
+ case 0x01:
+ case 0x02:
+ case 0x03:
+ case 0x04:
+ case 0x05:
+ case 0x06:
+ case 0x07:
+ case 0x08:
+ case '\t':
+ case '\n':
+ case '\v':
+ case '\f':
+ case '\r':
+ case 0x0E:
+ case 0x0F:
+ case 0x10:
+ case 0x11:
+ case 0x12:
+ case 0x13:
+ case 0x14:
+ case 0x15:
+ case 0x16:
+ case 0x17:
+ case 0x18:
+ case 0x19:
+ case 0x1A:
+ case 0x1B:
+ case 0x1C:
+ case 0x1D:
+ case 0x1E:
+ case 0x1F:
+ case ' ':
+ case '!':
+ case '"':
+ case '#':
+ case '$':
+ case '%':
+ case '&':
+ case '\'':
+ case '(':
+ case ')':
+ case '*':
+ case '+':
+ case ',':
+ case '-':
+ case '.':
+ case '/':
+ case ':':
+ case ';':
+ case '<':
+ case '=':
+ case '>':
+ case '?':
+ case '@':
+ case '[':
+ case ']':
+ case '^':
+ case '`':
+ case '{':
+ case '|':
+ case '}':
+ case '~':
+ case 0x7F: goto yy321;
+ case '\\': goto yy146;
+ default: goto yy61;
+ }
+yy321:
+#line 414 "src/parser.re"
+ { NEWTOKEN(PSI_T_NULL); goto start; }
+#line 3762 "src/parser.c"
+yy322:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'C':
+ case 'c': goto yy405;
+ default: goto yy62;
+ }
+yy323:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'A':
+ case 'a': goto yy406;
+ default: goto yy62;
+ }
+yy324:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'V':
+ case 'v': goto yy407;
+ default: goto yy62;
+ }
+yy325:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case '_': goto yy408;
+ default: goto yy62;
+ }
+yy326:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'A':
+ case 'a': goto yy409;
+ default: goto yy62;
+ }
+yy327:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'R':
+ case 'r': goto yy410;
+ default: goto yy62;
+ }
+yy328:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'I':
+ case 'i': goto yy411;
+ default: goto yy62;
+ }
+yy329:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'N':
+ case 'n': goto yy412;
+ default: goto yy62;
+ }
+yy330:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'E':
+ case 'e': goto yy413;
+ default: goto yy62;
+ }
+yy331:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'A':
+ case 'a': goto yy414;
+ default: goto yy62;
+ }
+yy332:
+ yyaccept = 18;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 0x00:
+ case 0x01:
+ case 0x02:
+ case 0x03:
+ case 0x04:
+ case 0x05:
+ case 0x06:
+ case 0x07:
+ case 0x08:
+ case '\t':
+ case '\n':
+ case '\v':
+ case '\f':
+ case '\r':
+ case 0x0E:
+ case 0x0F:
+ case 0x10:
+ case 0x11:
+ case 0x12:
+ case 0x13:
+ case 0x14:
+ case 0x15:
+ case 0x16:
+ case 0x17:
+ case 0x18:
+ case 0x19:
+ case 0x1A:
+ case 0x1B:
+ case 0x1C:
+ case 0x1D:
+ case 0x1E:
+ case 0x1F:
+ case ' ':
+ case '!':
+ case '"':
+ case '#':
+ case '$':
+ case '%':
+ case '&':
+ case '\'':
+ case '(':
+ case ')':
+ case '*':
+ case '+':
+ case ',':
+ case '-':
+ case '.':
+ case '/':
+ case ':':
+ case ';':
+ case '<':
+ case '=':
+ case '>':
+ case '?':
+ case '@':
+ case '[':
+ case ']':
+ case '^':
+ case '`':
+ case '{':
+ case '|':
+ case '}':
+ case '~':
+ case 0x7F: goto yy333;
+ case '\\': goto yy146;
+ default: goto yy61;
+ }
+yy333:
+#line 430 "src/parser.re"
+ { NEWTOKEN(PSI_T_TEMP); goto start; }
+#line 3916 "src/parser.c"
+yy334:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'R':
+ case 'r': goto yy415;
+ default: goto yy62;
+ }
+yy335:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'O':
+ case 'o': goto yy416;
+ default: goto yy62;
+ }
+yy336:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'L':
+ case 'l': goto yy417;
+ default: goto yy62;
+ }
+yy337:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'N':
+ case 'n': goto yy418;
+ default: goto yy62;
+ }
+yy338:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'B':
+ case 'b': goto yy419;
+ default: goto yy62;
+ }
+yy339:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'T':
+ case 't': goto yy420;
+ default: goto yy62;
+ }
+yy340:
+ yyaccept = 19;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 0x00:
+ case 0x01:
+ case 0x02:
+ case 0x03:
+ case 0x04:
+ case 0x05:
+ case 0x06:
+ case 0x07:
+ case 0x08:
+ case '\t':
+ case '\n':
+ case '\v':
+ case '\f':
+ case '\r':
+ case 0x0E:
+ case 0x0F:
+ case 0x10:
+ case 0x11:
+ case 0x12:
+ case 0x13:
+ case 0x14:
+ case 0x15:
+ case 0x16:
+ case 0x17:
+ case 0x18:
+ case 0x19:
+ case 0x1A:
+ case 0x1B:
+ case 0x1C:
+ case 0x1D:
+ case 0x1E:
+ case 0x1F:
+ case ' ':
+ case '!':
+ case '"':
+ case '#':
+ case '$':
+ case '%':
+ case '&':
+ case '\'':
+ case '(':
+ case ')':
+ case '*':
+ case '+':
+ case ',':
+ case '-':
+ case '.':
+ case '/':
+ case ':':
+ case ';':
+ case '<':
+ case '=':
+ case '>':
+ case '?':
+ case '@':
+ case '[':
+ case ']':
+ case '^':
+ case '`':
+ case '{':
+ case '|':
+ case '}':
+ case '~':
+ case 0x7F: goto yy341;
+ case '\\': goto yy146;
+ default: goto yy61;
+ }
+yy341:
+#line 412 "src/parser.re"
+ { NEWTOKEN(PSI_T_TRUE); goto start; }
+#line 4039 "src/parser.c"
+yy342:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'F':
+ case 'f': goto yy421;
+ default: goto yy62;
+ }
+yy343:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'I':
+ case 'i': goto yy423;
+ default: goto yy62;