/* Generated by re2c 0.13.5 on Tue May  1 13:17:59 2012 */
#line 1 "lib/Nana/toke.re"
/* vim: set filetype=cpp: */
#include "EXTERN.h"
#include "perl.h"
#include "XSUB.h"

#include "../../ppport.h"

#include <stdio.h>
#include <stdlib.h>
#include "token.h"

/**
 * Take a token from string.
 *
 * @args src: source string.
 * @args len: length for 'src'.
 * @args output *used: used chars in src
 * @args output *found_end: make true if found __END__
 * @args output *lineno_inc: incremented line numbers.
 * @args output *yylval: value itself in string
 * @return int token id.
 */
int token_op(char *src, size_t len, int *used, int *found_end, int *lineno_inc, SV**yylval) {
#define OP(type) do { *used+=(cursor-orig); return type; } while (0)
    *used = skip_ws(src, len, found_end, lineno_inc);
    if (*found_end) {
        return TOKEN_EOF;
    }
    if (*used == len) {
        return TOKEN_EOF;
    }
    char *cursor = src+*used;
    char *orig = cursor;
    char *marker = cursor;

    #line 52 "lib/Nana/toke.re"


    
#line 43 "lib/Nana/toke.c"
	{
		char yych;
		unsigned int yyaccept = 0;

		yych = (char)*cursor;
		switch (yych) {
		case '!':	goto yy43;
		case '"':	goto yy65;
		case '$':	goto yy27;
		case '%':	goto yy39;
		case '&':	goto yy53;
		case '\'':	goto yy67;
		case '(':	goto yy33;
		case '*':	goto yy61;
		case '+':	goto yy31;
		case ',':	goto yy41;
		case '-':	goto yy71;
		case '.':	goto yy49;
		case '/':	goto yy37;
		case '0':	goto yy20;
		case '1':
		case '2':
		case '3':
		case '4':
		case '5':
		case '6':
		case '7':
		case '8':
		case '9':	goto yy22;
		case '<':	goto yy35;
		case '=':	goto yy45;
		case '>':	goto yy55;
		case '?':	goto yy29;
		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':
		case 'g':
		case 'h':
		case 'j':
		case 'k':
		case 'p':
		case 'v':
		case 'y':
		case 'z':	goto yy24;
		case '[':	goto yy69;
		case '\\':	goto yy57;
		case '^':	goto yy47;
		case '_':	goto yy19;
		case 'a':	goto yy13;
		case 'b':	goto yy25;
		case 'c':	goto yy2;
		case 'd':	goto yy7;
		case 'e':	goto yy14;
		case 'f':	goto yy17;
		case 'i':	goto yy6;
		case 'l':	goto yy15;
		case 'm':	goto yy18;
		case 'n':	goto yy9;
		case 'o':	goto yy11;
		case 'q':	goto yy26;
		case 'r':	goto yy4;
		case 's':	goto yy8;
		case 't':	goto yy10;
		case 'u':	goto yy5;
		case 'w':	goto yy16;
		case 'x':	goto yy12;
		case '{':	goto yy63;
		case '|':	goto yy51;
		case '~':	goto yy59;
		default:	goto yy73;
		}
yy2:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'l':	goto yy271;
		default:	goto yy149;
		}
yy3:
#line 94 "lib/Nana/toke.re"
		{
            *yylval = sv_2mortal(newSVpvn(orig, cursor-orig));
            OP(TOKEN_IDENT);
        }
#line 151 "lib/Nana/toke.c"
yy4:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'e':	goto yy265;
		default:	goto yy149;
		}
yy5:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'n':	goto yy252;
		case 's':	goto yy253;
		default:	goto yy149;
		}
yy6:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'f':	goto yy250;
		default:	goto yy149;
		}
yy7:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'i':	goto yy245;
		case 'o':	goto yy246;
		default:	goto yy149;
		}
yy8:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'e':	goto yy238;
		case 'u':	goto yy239;
		default:	goto yy149;
		}
yy9:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'e':	goto yy231;
		case 'o':	goto yy232;
		default:	goto yy149;
		}
yy10:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'r':	goto yy225;
		default:	goto yy149;
		}
yy11:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'r':	goto yy223;
		default:	goto yy149;
		}
yy12:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'o':	goto yy220;
		default:	goto yy149;
		}
yy13:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'n':	goto yy217;
		default:	goto yy149;
		}
yy14:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'l':	goto yy210;
		default:	goto yy149;
		}
yy15:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'a':	goto yy206;
		default:	goto yy149;
		}
yy16:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'h':	goto yy201;
		default:	goto yy149;
		}
yy17:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'a':	goto yy193;
		case 'o':	goto yy194;
		default:	goto yy149;
		}
yy18:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'y':	goto yy191;
		default:	goto yy149;
		}
yy19:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case '_':	goto yy176;
		default:	goto yy149;
		}
yy20:
		yyaccept = 1;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case '.':	goto yy168;
		case 'x':	goto yy172;
		default:	goto yy21;
		}
yy21:
#line 82 "lib/Nana/toke.re"
		{
            *yylval = sv_2mortal(newSViv(0));
            OP(TOKEN_INTEGER);
        }
#line 283 "lib/Nana/toke.c"
yy22:
		yyaccept = 2;
		yych = (char)*(marker = ++cursor);
		goto yy167;
yy23:
#line 86 "lib/Nana/toke.re"
		{
            *yylval = sv_2mortal(newSViv(strtol(orig, &cursor, 10)));
            OP(TOKEN_INTEGER);
        }
#line 294 "lib/Nana/toke.c"
yy24:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		goto yy149;
yy25:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case '"':	goto yy162;
		case '\'':	goto yy164;
		default:	goto yy149;
		}
yy26:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case '!':
		case '"':
		case '\'':
		case '(':
		case '[':
		case '{':	goto yy143;
		case 'q':	goto yy147;
		case 'r':	goto yy146;
		case 'w':	goto yy145;
		default:	goto yy149;
		}
yy27:
		++cursor;
		switch ((yych = (char)*cursor)) {
		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':
		case '_':
		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 yy140;
		case '{':	goto yy138;
		default:	goto yy28;
		}
yy28:
#line 178 "lib/Nana/toke.re"
		{ return TOKEN_EOF; }
#line 384 "lib/Nana/toke.c"
yy29:
		++cursor;
#line 110 "lib/Nana/toke.re"
		{ OP(TOKEN_QUESTION); }
#line 389 "lib/Nana/toke.c"
yy31:
		++cursor;
		switch ((yych = (char)*cursor)) {
		case '+':	goto yy136;
		case '=':	goto yy134;
		default:	goto yy32;
		}
yy32:
#line 113 "lib/Nana/toke.re"
		{ OP(TOKEN_PLUS);  }
#line 400 "lib/Nana/toke.c"
yy33:
		++cursor;
#line 116 "lib/Nana/toke.re"
		{ OP(TOKEN_LPAREN);  }
#line 405 "lib/Nana/toke.c"
yy35:
		++cursor;
		switch ((yych = (char)*cursor)) {
		case '<':	goto yy126;
		case '=':	goto yy124;
		default:	goto yy36;
		}
yy36:
#line 147 "lib/Nana/toke.re"
		{ OP(TOKEN_LT); }
#line 416 "lib/Nana/toke.c"
yy37:
		++cursor;
		switch ((yych = (char)*cursor)) {
		case '=':	goto yy122;
		default:	goto yy38;
		}
yy38:
#line 119 "lib/Nana/toke.re"
		{ OP(TOKEN_DIV); }
#line 426 "lib/Nana/toke.c"
yy39:
		++cursor;
		switch ((yych = (char)*cursor)) {
		case '=':	goto yy120;
		default:	goto yy40;
		}
yy40:
#line 121 "lib/Nana/toke.re"
		{ OP(TOKEN_MOD); }
#line 436 "lib/Nana/toke.c"
yy41:
		++cursor;
#line 122 "lib/Nana/toke.re"
		{ OP(TOKEN_COMMA); }
#line 441 "lib/Nana/toke.c"
yy43:
		++cursor;
		switch ((yych = (char)*cursor)) {
		case '=':	goto yy118;
		case '~':	goto yy116;
		default:	goto yy44;
		}
yy44:
#line 125 "lib/Nana/toke.re"
		{ OP(TOKEN_NOT); }
#line 452 "lib/Nana/toke.c"
yy45:
		++cursor;
		switch ((yych = (char)*cursor)) {
		case '=':	goto yy114;
		case '>':	goto yy112;
		case '~':	goto yy110;
		default:	goto yy46;
		}
yy46:
#line 129 "lib/Nana/toke.re"
		{ OP(TOKEN_ASSIGN); }
#line 464 "lib/Nana/toke.c"
yy47:
		++cursor;
		switch ((yych = (char)*cursor)) {
		case '=':	goto yy108;
		default:	goto yy48;
		}
yy48:
#line 131 "lib/Nana/toke.re"
		{ OP(TOKEN_XOR); }
#line 474 "lib/Nana/toke.c"
yy49:
		++cursor;
		switch ((yych = (char)*cursor)) {
		case '.':	goto yy104;
		default:	goto yy50;
		}
yy50:
#line 134 "lib/Nana/toke.re"
		{ OP(TOKEN_DOT); }
#line 484 "lib/Nana/toke.c"
yy51:
		++cursor;
		switch ((yych = (char)*cursor)) {
		case '=':	goto yy98;
		case '|':	goto yy100;
		default:	goto yy52;
		}
yy52:
#line 138 "lib/Nana/toke.re"
		{ OP(TOKEN_OR); }
#line 495 "lib/Nana/toke.c"
yy53:
		++cursor;
		switch ((yych = (char)*cursor)) {
		case '&':	goto yy96;
		case '=':	goto yy94;
		default:	goto yy54;
		}
yy54:
#line 141 "lib/Nana/toke.re"
		{ OP(TOKEN_AND); }
#line 506 "lib/Nana/toke.c"
yy55:
		++cursor;
		switch ((yych = (char)*cursor)) {
		case '=':	goto yy88;
		case '>':	goto yy90;
		default:	goto yy56;
		}
yy56:
#line 151 "lib/Nana/toke.re"
		{ OP(TOKEN_GT); }
#line 517 "lib/Nana/toke.c"
yy57:
		++cursor;
#line 152 "lib/Nana/toke.re"
		{ OP(TOKEN_REF); }
#line 522 "lib/Nana/toke.c"
yy59:
		++cursor;
#line 153 "lib/Nana/toke.re"
		{ OP(TOKEN_TILDE); }
#line 527 "lib/Nana/toke.c"
yy61:
		++cursor;
		switch ((yych = (char)*cursor)) {
		case '*':	goto yy84;
		case '=':	goto yy82;
		default:	goto yy62;
		}
yy62:
#line 158 "lib/Nana/toke.re"
		{ OP(TOKEN_MUL); }
#line 538 "lib/Nana/toke.c"
yy63:
		++cursor;
#line 162 "lib/Nana/toke.re"
		{ OP(TOKEN_LBRACE); }
#line 543 "lib/Nana/toke.c"
yy65:
		++cursor;
#line 170 "lib/Nana/toke.re"
		{ OP(TOKEN_STRING_DQ); }
#line 548 "lib/Nana/toke.c"
yy67:
		++cursor;
#line 171 "lib/Nana/toke.re"
		{ OP(TOKEN_STRING_SQ); }
#line 553 "lib/Nana/toke.c"
yy69:
		++cursor;
#line 172 "lib/Nana/toke.re"
		{ OP(TOKEN_LBRACKET); }
#line 558 "lib/Nana/toke.c"
yy71:
		++cursor;
		switch ((yych = (char)*cursor)) {
		case '-':	goto yy78;
		case '=':	goto yy74;
		case '>':	goto yy76;
		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 yy80;
		default:	goto yy72;
		}
yy72:
#line 177 "lib/Nana/toke.re"
		{ OP(TOKEN_MINUS); }
#line 596 "lib/Nana/toke.c"
yy73:
		yych = (char)*++cursor;
		goto yy28;
yy74:
		++cursor;
#line 176 "lib/Nana/toke.re"
		{ OP(TOKEN_MINUS_ASSIGN); }
#line 604 "lib/Nana/toke.c"
yy76:
		++cursor;
#line 175 "lib/Nana/toke.re"
		{ OP(TOKEN_LAMBDA); }
#line 609 "lib/Nana/toke.c"
yy78:
		++cursor;
#line 174 "lib/Nana/toke.re"
		{ OP(TOKEN_MINUSMINUS); }
#line 614 "lib/Nana/toke.c"
yy80:
		++cursor;
#line 173 "lib/Nana/toke.re"
		{ OP(TOKEN_FILETEST); }
#line 619 "lib/Nana/toke.c"
yy82:
		++cursor;
#line 157 "lib/Nana/toke.re"
		{ OP(TOKEN_MUL_ASSIGN); }
#line 624 "lib/Nana/toke.c"
yy84:
		++cursor;
		switch ((yych = (char)*cursor)) {
		case '=':	goto yy86;
		default:	goto yy85;
		}
yy85:
#line 156 "lib/Nana/toke.re"
		{ OP(TOKEN_POW); }
#line 634 "lib/Nana/toke.c"
yy86:
		++cursor;
#line 155 "lib/Nana/toke.re"
		{ OP(TOKEN_POW_ASSIGN); }
#line 639 "lib/Nana/toke.c"
yy88:
		++cursor;
#line 150 "lib/Nana/toke.re"
		{ OP(TOKEN_GE); }
#line 644 "lib/Nana/toke.c"
yy90:
		++cursor;
		switch ((yych = (char)*cursor)) {
		case '=':	goto yy92;
		default:	goto yy91;
		}
yy91:
#line 149 "lib/Nana/toke.re"
		{ OP(TOKEN_RSHIFT); }
#line 654 "lib/Nana/toke.c"
yy92:
		++cursor;
#line 148 "lib/Nana/toke.re"
		{ OP(TOKEN_RSHIFT_ASSIGN); }
#line 659 "lib/Nana/toke.c"
yy94:
		++cursor;
#line 140 "lib/Nana/toke.re"
		{ OP(TOKEN_AND_ASSIGN); }
#line 664 "lib/Nana/toke.c"
yy96:
		++cursor;
#line 139 "lib/Nana/toke.re"
		{ OP(TOKEN_ANDAND); }
#line 669 "lib/Nana/toke.c"
yy98:
		++cursor;
#line 137 "lib/Nana/toke.re"
		{ OP(TOKEN_OR_ASSIGN); }
#line 674 "lib/Nana/toke.c"
yy100:
		++cursor;
		switch ((yych = (char)*cursor)) {
		case '=':	goto yy102;
		default:	goto yy101;
		}
yy101:
#line 136 "lib/Nana/toke.re"
		{ OP(TOKEN_OROR); }
#line 684 "lib/Nana/toke.c"
yy102:
		++cursor;
#line 135 "lib/Nana/toke.re"
		{ OP(TOKEN_OROR_ASSIGN); }
#line 689 "lib/Nana/toke.c"
yy104:
		++cursor;
		switch ((yych = (char)*cursor)) {
		case '.':	goto yy106;
		default:	goto yy105;
		}
yy105:
#line 133 "lib/Nana/toke.re"
		{ OP(TOKEN_DOTDOT); }
#line 699 "lib/Nana/toke.c"
yy106:
		++cursor;
#line 132 "lib/Nana/toke.re"
		{ OP(TOKEN_DOTDOTDOT); }
#line 704 "lib/Nana/toke.c"
yy108:
		++cursor;
#line 130 "lib/Nana/toke.re"
		{ OP(TOKEN_XOR_ASSIGN); }
#line 709 "lib/Nana/toke.c"
yy110:
		++cursor;
#line 128 "lib/Nana/toke.re"
		{ OP(TOKEN_REGEXP_MATCH); }
#line 714 "lib/Nana/toke.c"
yy112:
		++cursor;
#line 127 "lib/Nana/toke.re"
		{ OP(TOKEN_FAT_COMMA); }
#line 719 "lib/Nana/toke.c"
yy114:
		++cursor;
#line 126 "lib/Nana/toke.re"
		{ OP(TOKEN_EQUAL_EQUAL); }
#line 724 "lib/Nana/toke.c"
yy116:
		++cursor;
#line 124 "lib/Nana/toke.re"
		{ OP(TOKEN_REGEXP_NOT_MATCH); }
#line 729 "lib/Nana/toke.c"
yy118:
		++cursor;
#line 123 "lib/Nana/toke.re"
		{ OP(TOKEN_NOT_EQUAL); }
#line 734 "lib/Nana/toke.c"
yy120:
		++cursor;
#line 120 "lib/Nana/toke.re"
		{ OP(TOKEN_MOD_ASSIGN); }
#line 739 "lib/Nana/toke.c"
yy122:
		++cursor;
#line 118 "lib/Nana/toke.re"
		{ OP(TOKEN_DIV_ASSIGN); }
#line 744 "lib/Nana/toke.c"
yy124:
		++cursor;
		switch ((yych = (char)*cursor)) {
		case '>':	goto yy132;
		default:	goto yy125;
		}
yy125:
#line 146 "lib/Nana/toke.re"
		{ OP(TOKEN_LE); }
#line 754 "lib/Nana/toke.c"
yy126:
		++cursor;
		switch ((yych = (char)*cursor)) {
		case '\'':	goto yy128;
		case '=':	goto yy130;
		default:	goto yy127;
		}
yy127:
#line 144 "lib/Nana/toke.re"
		{ OP(TOKEN_LSHIFT); }
#line 765 "lib/Nana/toke.c"
yy128:
		++cursor;
#line 117 "lib/Nana/toke.re"
		{ OP(TOKEN_HEREDOC_SQ_START);  }
#line 770 "lib/Nana/toke.c"
yy130:
		++cursor;
#line 142 "lib/Nana/toke.re"
		{ OP(TOKEN_LSHIFT_ASSIGN); }
#line 775 "lib/Nana/toke.c"
yy132:
		++cursor;
#line 145 "lib/Nana/toke.re"
		{ OP(TOKEN_CMP); }
#line 780 "lib/Nana/toke.c"
yy134:
		++cursor;
#line 112 "lib/Nana/toke.re"
		{ OP(TOKEN_PLUS_ASSIGN);  }
#line 785 "lib/Nana/toke.c"
yy136:
		++cursor;
#line 111 "lib/Nana/toke.re"
		{ OP(TOKEN_PLUSPLUS); }
#line 790 "lib/Nana/toke.c"
yy138:
		++cursor;
#line 154 "lib/Nana/toke.re"
		{ OP(TOKEN_DEREF); }
#line 795 "lib/Nana/toke.c"
yy140:
		++cursor;
		yych = (char)*cursor;
		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 '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':
		case '_':
		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 yy140;
		default:	goto yy142;
		}
yy142:
#line 102 "lib/Nana/toke.re"
		{
            *yylval = sv_2mortal(newSVpvn(orig, cursor-orig));
            OP(TOKEN_VARIABLE);
        }
#line 871 "lib/Nana/toke.c"
yy143:
		++cursor;
#line 169 "lib/Nana/toke.re"
		{ OP(TOKEN_STRING_Q_START); }
#line 876 "lib/Nana/toke.c"
yy145:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case '!':
		case '"':
		case '\'':
		case '(':
		case '[':
		case '{':	goto yy160;
		default:	goto yy149;
		}
yy146:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case '!':
		case '"':
		case '\'':
		case '(':
		case '[':
		case '{':	goto yy158;
		default:	goto yy149;
		}
yy147:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case '!':
		case '"':
		case '\'':
		case '(':
		case '[':
		case '{':	goto yy156;
		default:	goto yy149;
		}
yy148:
		yyaccept = 0;
		marker = ++cursor;
		yych = (char)*cursor;
yy149:
		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 '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':
		case '_':
		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 yy148;
		case ':':	goto yy150;
		default:	goto yy3;
		}
yy150:
		++cursor;
		yych = (char)*cursor;
		switch (yych) {
		case ':':	goto yy152;
		default:	goto yy151;
		}
yy151:
		cursor = marker;
		switch (yyaccept) {
		case 0: 	goto yy3;
		case 1: 	goto yy21;
		case 2: 	goto yy23;
		case 3: 	goto yy155;
		case 4: 	goto yy184;
		case 5: 	goto yy190;
		case 6: 	goto yy192;
		case 7: 	goto yy196;
		case 8: 	goto yy200;
		case 9: 	goto yy205;
		case 10: 	goto yy209;
		case 11: 	goto yy213;
		case 12: 	goto yy216;
		case 13: 	goto yy219;
		case 14: 	goto yy222;
		case 15: 	goto yy224;
		case 16: 	goto yy227;
		case 17: 	goto yy230;
		case 18: 	goto yy234;
		case 19: 	goto yy237;
		case 20: 	goto yy241;
		case 21: 	goto yy244;
		case 22: 	goto yy247;
		case 23: 	goto yy249;
		case 24: 	goto yy251;
		case 25: 	goto yy255;
		case 26: 	goto yy260;
		case 27: 	goto yy264;
		case 28: 	goto yy270;
		case 29: 	goto yy275;
		}
yy152:
		++cursor;
		yych = (char)*cursor;
		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':
		case '_':
		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 yy153;
		default:	goto yy151;
		}
yy153:
		yyaccept = 3;
		marker = ++cursor;
		yych = (char)*cursor;
		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 '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':
		case '_':
		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 yy153;
		case ':':	goto yy150;
		default:	goto yy155;
		}
yy155:
#line 98 "lib/Nana/toke.re"
		{
            *yylval = sv_2mortal(newSVpvn(orig, cursor-orig));
            OP(TOKEN_CLASS_NAME);
        }
#line 1162 "lib/Nana/toke.c"
yy156:
		++cursor;
#line 166 "lib/Nana/toke.re"
		{ OP(TOKEN_STRING_QQ_START); }
#line 1167 "lib/Nana/toke.c"
yy158:
		++cursor;
#line 167 "lib/Nana/toke.re"
		{ OP(TOKEN_REGEXP_QR_START); }
#line 1172 "lib/Nana/toke.c"
yy160:
		++cursor;
#line 168 "lib/Nana/toke.re"
		{ OP(TOKEN_QW_START); }
#line 1177 "lib/Nana/toke.c"
yy162:
		++cursor;
#line 114 "lib/Nana/toke.re"
		{ OP(TOKEN_BYTES_DQ);  }
#line 1182 "lib/Nana/toke.c"
yy164:
		++cursor;
#line 115 "lib/Nana/toke.re"
		{ OP(TOKEN_BYTES_SQ);  }
#line 1187 "lib/Nana/toke.c"
yy166:
		yyaccept = 2;
		marker = ++cursor;
		yych = (char)*cursor;
yy167:
		switch (yych) {
		case '.':	goto yy168;
		case '0':
		case '1':
		case '2':
		case '3':
		case '4':
		case '5':
		case '6':
		case '7':
		case '8':
		case '9':	goto yy166;
		default:	goto yy23;
		}
yy168:
		yych = (char)*++cursor;
		switch (yych) {
		case '0':
		case '1':
		case '2':
		case '3':
		case '4':
		case '5':
		case '6':
		case '7':
		case '8':
		case '9':	goto yy169;
		default:	goto yy151;
		}
yy169:
		++cursor;
		yych = (char)*cursor;
		switch (yych) {
		case '0':
		case '1':
		case '2':
		case '3':
		case '4':
		case '5':
		case '6':
		case '7':
		case '8':
		case '9':	goto yy169;
		default:	goto yy171;
		}
yy171:
#line 106 "lib/Nana/toke.re"
		{
            *yylval = sv_2mortal(newSVnv(strtod(orig, &cursor)));
            OP(TOKEN_DOUBLE);
        }
#line 1244 "lib/Nana/toke.c"
yy172:
		yych = (char)*++cursor;
		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 yy173;
		default:	goto yy151;
		}
yy173:
		++cursor;
		yych = (char)*cursor;
		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 yy173;
		default:	goto yy175;
		}
yy175:
#line 90 "lib/Nana/toke.re"
		{
            *yylval = sv_2mortal(newSViv(strtol(orig+2, &cursor, 16)));
            OP(TOKEN_INTEGER);
        }
#line 1306 "lib/Nana/toke.c"
yy176:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'F':	goto yy177;
		case 'L':	goto yy178;
		default:	goto yy149;
		}
yy177:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'I':	goto yy185;
		default:	goto yy149;
		}
yy178:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'I':	goto yy179;
		default:	goto yy149;
		}
yy179:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'N':	goto yy180;
		default:	goto yy149;
		}
yy180:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'E':	goto yy181;
		default:	goto yy149;
		}
yy181:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case '_':	goto yy182;
		default:	goto yy149;
		}
yy182:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case '_':	goto yy183;
		default:	goto yy149;
		}
yy183:
		yyaccept = 4;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case '0':
		case '1':
		case '2':
		case '3':
		case '4':
		case '5':
		case '6':
		case '7':
		case '8':
		case '9':
		case ':':
		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':
		case '_':
		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 yy149;
		default:	goto yy184;
		}
yy184:
#line 80 "lib/Nana/toke.re"
		{ OP(TOKEN_LINE); }
#line 1430 "lib/Nana/toke.c"
yy185:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'L':	goto yy186;
		default:	goto yy149;
		}
yy186:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'E':	goto yy187;
		default:	goto yy149;
		}
yy187:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case '_':	goto yy188;
		default:	goto yy149;
		}
yy188:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case '_':	goto yy189;
		default:	goto yy149;
		}
yy189:
		yyaccept = 5;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case '0':
		case '1':
		case '2':
		case '3':
		case '4':
		case '5':
		case '6':
		case '7':
		case '8':
		case '9':
		case ':':
		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':
		case '_':
		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 yy149;
		default:	goto yy190;
		}
yy190:
#line 79 "lib/Nana/toke.re"
		{ OP(TOKEN_FILE); }
#line 1532 "lib/Nana/toke.c"
yy191:
		yyaccept = 6;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case '0':
		case '1':
		case '2':
		case '3':
		case '4':
		case '5':
		case '6':
		case '7':
		case '8':
		case '9':
		case ':':
		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':
		case '_':
		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 yy149;
		default:	goto yy192;
		}
yy192:
#line 74 "lib/Nana/toke.re"
		{ OP(TOKEN_MY); }
#line 1606 "lib/Nana/toke.c"
yy193:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'l':	goto yy197;
		default:	goto yy149;
		}
yy194:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'r':	goto yy195;
		default:	goto yy149;
		}
yy195:
		yyaccept = 7;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case '0':
		case '1':
		case '2':
		case '3':
		case '4':
		case '5':
		case '6':
		case '7':
		case '8':
		case '9':
		case ':':
		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':
		case '_':
		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 yy149;
		default:	goto yy196;
		}
yy196:
#line 73 "lib/Nana/toke.re"
		{ OP(TOKEN_FOR); }
#line 1694 "lib/Nana/toke.c"
yy197:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 's':	goto yy198;
		default:	goto yy149;
		}
yy198:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'e':	goto yy199;
		default:	goto yy149;
		}
yy199:
		yyaccept = 8;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case '0':
		case '1':
		case '2':
		case '3':
		case '4':
		case '5':
		case '6':
		case '7':
		case '8':
		case '9':
		case ':':
		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':
		case '_':
		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 yy149;
		default:	goto yy200;
		}
yy200:
#line 77 "lib/Nana/toke.re"
		{ OP(TOKEN_FALSE); }
#line 1782 "lib/Nana/toke.c"
yy201:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'i':	goto yy202;
		default:	goto yy149;
		}
yy202:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'l':	goto yy203;
		default:	goto yy149;
		}
yy203:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'e':	goto yy204;
		default:	goto yy149;
		}
yy204:
		yyaccept = 9;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case '0':
		case '1':
		case '2':
		case '3':
		case '4':
		case '5':
		case '6':
		case '7':
		case '8':
		case '9':
		case ':':
		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':
		case '_':
		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 yy149;
		default:	goto yy205;
		}
yy205:
#line 72 "lib/Nana/toke.re"
		{ OP(TOKEN_WHILE); }
#line 1877 "lib/Nana/toke.c"
yy206:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 's':	goto yy207;
		default:	goto yy149;
		}
yy207:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 't':	goto yy208;
		default:	goto yy149;
		}
yy208:
		yyaccept = 10;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case '0':
		case '1':
		case '2':
		case '3':
		case '4':
		case '5':
		case '6':
		case '7':
		case '8':
		case '9':
		case ':':
		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':
		case '_':
		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 yy149;
		default:	goto yy209;
		}
yy209:
#line 69 "lib/Nana/toke.re"
		{ OP(TOKEN_LAST); }
#line 1965 "lib/Nana/toke.c"
yy210:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 's':	goto yy211;
		default:	goto yy149;
		}
yy211:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'e':	goto yy212;
		case 'i':	goto yy214;
		default:	goto yy149;
		}
yy212:
		yyaccept = 11;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case '0':
		case '1':
		case '2':
		case '3':
		case '4':
		case '5':
		case '6':
		case '7':
		case '8':
		case '9':
		case ':':
		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':
		case '_':
		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 yy149;
		default:	goto yy213;
		}
yy213:
#line 71 "lib/Nana/toke.re"
		{ OP(TOKEN_ELSE); }
#line 2054 "lib/Nana/toke.c"
yy214:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'f':	goto yy215;
		default:	goto yy149;
		}
yy215:
		yyaccept = 12;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case '0':
		case '1':
		case '2':
		case '3':
		case '4':
		case '5':
		case '6':
		case '7':
		case '8':
		case '9':
		case ':':
		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':
		case '_':
		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 yy149;
		default:	goto yy216;
		}
yy216:
#line 68 "lib/Nana/toke.re"
		{ OP(TOKEN_ELSIF); }
#line 2135 "lib/Nana/toke.c"
yy217:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'd':	goto yy218;
		default:	goto yy149;
		}
yy218:
		yyaccept = 13;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case '0':
		case '1':
		case '2':
		case '3':
		case '4':
		case '5':
		case '6':
		case '7':
		case '8':
		case '9':
		case ':':
		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':
		case '_':
		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 yy149;
		default:	goto yy219;
		}
yy219:
#line 67 "lib/Nana/toke.re"
		{ OP(TOKEN_STR_AND); }
#line 2216 "lib/Nana/toke.c"
yy220:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'r':	goto yy221;
		default:	goto yy149;
		}
yy221:
		yyaccept = 14;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case '0':
		case '1':
		case '2':
		case '3':
		case '4':
		case '5':
		case '6':
		case '7':
		case '8':
		case '9':
		case ':':
		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':
		case '_':
		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 yy149;
		default:	goto yy222;
		}
yy222:
#line 66 "lib/Nana/toke.re"
		{ OP(TOKEN_STR_XOR); }
#line 2297 "lib/Nana/toke.c"
yy223:
		yyaccept = 15;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case '0':
		case '1':
		case '2':
		case '3':
		case '4':
		case '5':
		case '6':
		case '7':
		case '8':
		case '9':
		case ':':
		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':
		case '_':
		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 yy149;
		default:	goto yy224;
		}
yy224:
#line 65 "lib/Nana/toke.re"
		{ OP(TOKEN_STR_OR); }
#line 2371 "lib/Nana/toke.c"
yy225:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'u':	goto yy228;
		case 'y':	goto yy226;
		default:	goto yy149;
		}
yy226:
		yyaccept = 16;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case '0':
		case '1':
		case '2':
		case '3':
		case '4':
		case '5':
		case '6':
		case '7':
		case '8':
		case '9':
		case ':':
		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':
		case '_':
		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 yy149;
		default:	goto yy227;
		}
yy227:
#line 64 "lib/Nana/toke.re"
		{ OP(TOKEN_TRY); }
#line 2453 "lib/Nana/toke.c"
yy228:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'e':	goto yy229;
		default:	goto yy149;
		}
yy229:
		yyaccept = 17;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case '0':
		case '1':
		case '2':
		case '3':
		case '4':
		case '5':
		case '6':
		case '7':
		case '8':
		case '9':
		case ':':
		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':
		case '_':
		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 yy149;
		default:	goto yy230;
		}
yy230:
#line 76 "lib/Nana/toke.re"
		{ OP(TOKEN_TRUE); }
#line 2534 "lib/Nana/toke.c"
yy231:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'x':	goto yy235;
		default:	goto yy149;
		}
yy232:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 't':	goto yy233;
		default:	goto yy149;
		}
yy233:
		yyaccept = 18;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case '0':
		case '1':
		case '2':
		case '3':
		case '4':
		case '5':
		case '6':
		case '7':
		case '8':
		case '9':
		case ':':
		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':
		case '_':
		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 yy149;
		default:	goto yy234;
		}
yy234:
#line 62 "lib/Nana/toke.re"
		{ OP(TOKEN_STR_NOT); }
#line 2622 "lib/Nana/toke.c"
yy235:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 't':	goto yy236;
		default:	goto yy149;
		}
yy236:
		yyaccept = 19;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case '0':
		case '1':
		case '2':
		case '3':
		case '4':
		case '5':
		case '6':
		case '7':
		case '8':
		case '9':
		case ':':
		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':
		case '_':
		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 yy149;
		default:	goto yy237;
		}
yy237:
#line 70 "lib/Nana/toke.re"
		{ OP(TOKEN_NEXT); }
#line 2703 "lib/Nana/toke.c"
yy238:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'l':	goto yy242;
		default:	goto yy149;
		}
yy239:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'b':	goto yy240;
		default:	goto yy149;
		}
yy240:
		yyaccept = 20;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case '0':
		case '1':
		case '2':
		case '3':
		case '4':
		case '5':
		case '6':
		case '7':
		case '8':
		case '9':
		case ':':
		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':
		case '_':
		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 yy149;
		default:	goto yy241;
		}
yy241:
#line 61 "lib/Nana/toke.re"
		{ OP(TOKEN_SUB); }
#line 2791 "lib/Nana/toke.c"
yy242:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'f':	goto yy243;
		default:	goto yy149;
		}
yy243:
		yyaccept = 21;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case '0':
		case '1':
		case '2':
		case '3':
		case '4':
		case '5':
		case '6':
		case '7':
		case '8':
		case '9':
		case ':':
		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':
		case '_':
		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 yy149;
		default:	goto yy244;
		}
yy244:
#line 78 "lib/Nana/toke.re"
		{ OP(TOKEN_SELF); }
#line 2872 "lib/Nana/toke.c"
yy245:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'e':	goto yy248;
		default:	goto yy149;
		}
yy246:
		yyaccept = 22;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case '0':
		case '1':
		case '2':
		case '3':
		case '4':
		case '5':
		case '6':
		case '7':
		case '8':
		case '9':
		case ':':
		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':
		case '_':
		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 yy149;
		default:	goto yy247;
		}
yy247:
#line 60 "lib/Nana/toke.re"
		{ OP(TOKEN_DO); }
#line 2953 "lib/Nana/toke.c"
yy248:
		yyaccept = 23;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case '0':
		case '1':
		case '2':
		case '3':
		case '4':
		case '5':
		case '6':
		case '7':
		case '8':
		case '9':
		case ':':
		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':
		case '_':
		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 yy149;
		default:	goto yy249;
		}
yy249:
#line 63 "lib/Nana/toke.re"
		{ OP(TOKEN_DIE); }
#line 3027 "lib/Nana/toke.c"
yy250:
		yyaccept = 24;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case '0':
		case '1':
		case '2':
		case '3':
		case '4':
		case '5':
		case '6':
		case '7':
		case '8':
		case '9':
		case ':':
		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':
		case '_':
		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 yy149;
		default:	goto yy251;
		}
yy251:
#line 59 "lib/Nana/toke.re"
		{ OP(TOKEN_IF); }
#line 3101 "lib/Nana/toke.c"
yy252:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'd':	goto yy257;
		case 'l':	goto yy256;
		default:	goto yy149;
		}
yy253:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'e':	goto yy254;
		default:	goto yy149;
		}
yy254:
		yyaccept = 25;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case '0':
		case '1':
		case '2':
		case '3':
		case '4':
		case '5':
		case '6':
		case '7':
		case '8':
		case '9':
		case ':':
		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':
		case '_':
		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 yy149;
		default:	goto yy255;
		}
yy255:
#line 57 "lib/Nana/toke.re"
		{ OP(TOKEN_USE); }
#line 3190 "lib/Nana/toke.c"
yy256:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'e':	goto yy261;
		default:	goto yy149;
		}
yy257:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'e':	goto yy258;
		default:	goto yy149;
		}
yy258:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'f':	goto yy259;
		default:	goto yy149;
		}
yy259:
		yyaccept = 26;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case '0':
		case '1':
		case '2':
		case '3':
		case '4':
		case '5':
		case '6':
		case '7':
		case '8':
		case '9':
		case ':':
		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':
		case '_':
		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 yy149;
		default:	goto yy260;
		}
yy260:
#line 75 "lib/Nana/toke.re"
		{ OP(TOKEN_UNDEF); }
#line 3285 "lib/Nana/toke.c"
yy261:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 's':	goto yy262;
		default:	goto yy149;
		}
yy262:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 's':	goto yy263;
		default:	goto yy149;
		}
yy263:
		yyaccept = 27;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case '0':
		case '1':
		case '2':
		case '3':
		case '4':
		case '5':
		case '6':
		case '7':
		case '8':
		case '9':
		case ':':
		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':
		case '_':
		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 yy149;
		default:	goto yy264;
		}
yy264:
#line 58 "lib/Nana/toke.re"
		{ OP(TOKEN_UNLESS); }
#line 3373 "lib/Nana/toke.c"
yy265:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 't':	goto yy266;
		default:	goto yy149;
		}
yy266:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'u':	goto yy267;
		default:	goto yy149;
		}
yy267:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'r':	goto yy268;
		default:	goto yy149;
		}
yy268:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'n':	goto yy269;
		default:	goto yy149;
		}
yy269:
		yyaccept = 28;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case '0':
		case '1':
		case '2':
		case '3':
		case '4':
		case '5':
		case '6':
		case '7':
		case '8':
		case '9':
		case ':':
		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':
		case '_':
		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 yy149;
		default:	goto yy270;
		}
yy270:
#line 56 "lib/Nana/toke.re"
		{ OP(TOKEN_RETURN); }
#line 3475 "lib/Nana/toke.c"
yy271:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 'a':	goto yy272;
		default:	goto yy149;
		}
yy272:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 's':	goto yy273;
		default:	goto yy149;
		}
yy273:
		yyaccept = 0;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case 's':	goto yy274;
		default:	goto yy149;
		}
yy274:
		yyaccept = 29;
		yych = (char)*(marker = ++cursor);
		switch (yych) {
		case '0':
		case '1':
		case '2':
		case '3':
		case '4':
		case '5':
		case '6':
		case '7':
		case '8':
		case '9':
		case ':':
		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':
		case '_':
		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 yy149;
		default:	goto yy275;
		}
yy275:
#line 55 "lib/Nana/toke.re"
		{ OP(TOKEN_CLASS);  }
#line 3570 "lib/Nana/toke.c"
	}
#line 180 "lib/Nana/toke.re"

    abort(); /* should not reach here */
}
