/* Generated by re2c 0.13.5 on Mon Apr 27 07:00:21 2009 */
#line 1 "scanner.l"
/*
 * This file is part of NetSurf, http://netsurf-browser.org/
 * Licensed under the GNU General Public License,
 *                http://www.opensource.org/licenses/gpl-license
 * Copyright 2004 James Bursa <bursa@users.sourceforge.net>
 */

/** \file
 * CSS tokeniser using re2c.
 *
 * see CSS2 Specification, chapter 4
 * http://www.w3.org/TR/REC-CSS2/syndata.html,
 * and errata
 * http://www.w3.org/Style/css2-updates/REC-CSS2-19980512-errata
 */

#include <stdbool.h>
#define CSS_INTERNALS
#include "css/css.h"
#include "css/parser.h"

#define YYCTYPE unsigned char
#define YYCURSOR (*buffer)
#define YYLIMIT end
#define YYMARKER marker
#define YYFILL(n) { return 0; }


/**
 * Identify a CSS source token.
 *
 * \param  buffer      source to tokenise, updated to new position
 * \param  end         end of source
 * \param  token_text  updated to start of recognized token
 * \return  token number
 */

int css_tokenise(unsigned char **buffer, unsigned char *end,
		unsigned char **token_text)
{
	unsigned char *marker;

start:
	*token_text = YYCURSOR;


#line 50 "<stdout>"
{
	YYCTYPE yych;
	unsigned int yyaccept = 0;

	if ((YYLIMIT - YYCURSOR) < 5) YYFILL(5);
	yych = *YYCURSOR;
	switch (yych) {
	case 0x00:
	case 0x01:
	case 0x02:
	case 0x03:
	case 0x04:
	case 0x05:
	case 0x06:
	case 0x07:
	case 0x08:
	case '\v':
	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 0x7F:	goto yy51;
	case '\t':
	case '\n':
	case '\f':
	case '\r':
	case ' ':	goto yy34;
	case '"':	goto yy10;
	case '#':	goto yy12;
	case '$':	goto yy40;
	case '\'':	goto yy11;
	case '(':	goto yy26;
	case ')':	goto yy28;
	case '*':	goto yy41;
	case '+':	goto yy13;
	case ',':	goto yy47;
	case '-':	goto yy2;
	case '.':	goto yy17;
	case '/':	goto yy36;
	case '0':
	case '1':
	case '2':
	case '3':
	case '4':
	case '5':
	case '6':
	case '7':
	case '8':
	case '9':	goto yy15;
	case ':':	goto yy45;
	case ';':	goto yy20;
	case '<':	goto yy19;
	case '=':	goto yy43;
	case '>':	goto yy49;
	case '@':	goto yy9;
	case 'U':	goto yy6;
	case '[':	goto yy30;
	case '\\':	goto yy8;
	case ']':	goto yy32;
	case '^':	goto yy39;
	case 'u':	goto yy7;
	case '{':	goto yy22;
	case '|':	goto yy38;
	case '}':	goto yy24;
	case '~':	goto yy37;
	default:	goto yy4;
	}
yy2:
	yyaccept = 0;
	yych = *(YYMARKER = ++YYCURSOR);
	if (yych <= 'Z') {
		if (yych <= '.') {
			if (yych <= ',') goto yy3;
			if (yych <= '-') goto yy197;
			goto yy95;
		} else {
			if (yych <= '/') goto yy3;
			if (yych <= '9') goto yy96;
			if (yych >= 'A') goto yy137;
		}
	} else {
		if (yych <= '_') {
			if (yych == '\\') goto yy196;
			if (yych >= '_') goto yy137;
		} else {
			if (yych <= '`') goto yy3;
			if (yych <= 'z') goto yy137;
			if (yych >= 0x80) goto yy137;
		}
	}
yy3:
#line 109 "scanner.l"
	{ return DELIM; }
#line 163 "<stdout>"
yy4:
	yyaccept = 1;
	yych = *(YYMARKER = ++YYCURSOR);
	goto yy138;
yy5:
#line 63 "scanner.l"
	{ return IDENT; }
#line 171 "<stdout>"
yy6:
	yyaccept = 1;
	yych = *(YYMARKER = ++YYCURSOR);
	if (yych == '+') goto yy189;
	goto yy138;
yy7:
	yyaccept = 1;
	yych = *(YYMARKER = ++YYCURSOR);
	if (yych == 'r') goto yy148;
	goto yy138;
yy8:
	yych = *++YYCURSOR;
	if (yych <= '\r') {
		if (yych == '\n') goto yy3;
		if (yych <= '\v') goto yy137;
		goto yy3;
	} else {
		if (yych <= '9') {
			if (yych <= '/') goto yy137;
			goto yy139;
		} else {
			if (yych <= '`') goto yy137;
			if (yych <= 'f') goto yy139;
			goto yy137;
		}
	}
yy9:
	yyaccept = 0;
	yych = *(YYMARKER = ++YYCURSOR);
	if (yych <= '\\') {
		if (yych <= '@') {
			if (yych == '-') goto yy125;
			goto yy3;
		} else {
			if (yych <= 'Z') goto yy126;
			if (yych <= '[') goto yy3;
			goto yy129;
		}
	} else {
		if (yych <= '`') {
			if (yych == '_') goto yy126;
			goto yy3;
		} else {
			if (yych <= 'z') goto yy126;
			if (yych <= 0x7F) goto yy3;
			goto yy126;
		}
	}
yy10:
	yyaccept = 0;
	yych = *(YYMARKER = ++YYCURSOR);
	if (yych <= 0x1F) {
		if (yych == '\t') goto yy117;
		goto yy3;
	} else {
		if (yych == 0x7F) goto yy3;
		goto yy117;
	}
yy11:
	yyaccept = 0;
	yych = *(YYMARKER = ++YYCURSOR);
	if (yych <= 0x1F) {
		if (yych == '\t') goto yy106;
		goto yy3;
	} else {
		if (yych == 0x7F) goto yy3;
		goto yy106;
	}
yy12:
	yyaccept = 0;
	yych = *(YYMARKER = ++YYCURSOR);
	if (yych <= '[') {
		if (yych <= '/') {
			if (yych == '-') goto yy98;
			goto yy3;
		} else {
			if (yych <= '9') goto yy98;
			if (yych <= '@') goto yy3;
			if (yych <= 'Z') goto yy98;
			goto yy3;
		}
	} else {
		if (yych <= '_') {
			if (yych <= '\\') goto yy101;
			if (yych <= '^') goto yy3;
			goto yy98;
		} else {
			if (yych <= '`') goto yy3;
			if (yych <= 'z') goto yy98;
			if (yych <= 0x7F) goto yy3;
			goto yy98;
		}
	}
yy13:
	yyaccept = 2;
	yych = *(YYMARKER = ++YYCURSOR);
	if (yych == '.') goto yy95;
	if (yych <= '/') goto yy14;
	if (yych <= '9') goto yy96;
yy14:
#line 104 "scanner.l"
	{ return PLUS; }
#line 274 "<stdout>"
yy15:
	yyaccept = 3;
	yych = *(YYMARKER = ++YYCURSOR);
	goto yy97;
yy16:
#line 68 "scanner.l"
	{ return NUMBER; }
#line 282 "<stdout>"
yy17:
	++YYCURSOR;
	if ((yych = *YYCURSOR) <= '/') goto yy18;
	if (yych <= '9') goto yy79;
yy18:
#line 106 "scanner.l"
	{ return DOT; }
#line 290 "<stdout>"
yy19:
	yyaccept = 0;
	yych = *(YYMARKER = ++YYCURSOR);
	if (yych == '!') goto yy74;
	goto yy3;
yy20:
	++YYCURSOR;
#line 80 "scanner.l"
	{ return SEMI; }
#line 300 "<stdout>"
yy22:
	++YYCURSOR;
#line 81 "scanner.l"
	{ return LBRACE; }
#line 305 "<stdout>"
yy24:
	++YYCURSOR;
#line 82 "scanner.l"
	{ return RBRACE; }
#line 310 "<stdout>"
yy26:
	++YYCURSOR;
#line 83 "scanner.l"
	{ return LPAREN; }
#line 315 "<stdout>"
yy28:
	++YYCURSOR;
#line 84 "scanner.l"
	{ return RPAREN; }
#line 320 "<stdout>"
yy30:
	++YYCURSOR;
#line 85 "scanner.l"
	{ return LBRAC; }
#line 325 "<stdout>"
yy32:
	++YYCURSOR;
#line 86 "scanner.l"
	{ return RBRAC; }
#line 330 "<stdout>"
yy34:
	++YYCURSOR;
	yych = *YYCURSOR;
	goto yy73;
yy35:
#line 88 "scanner.l"
	{ return S; }
#line 338 "<stdout>"
yy36:
	yyaccept = 0;
	yych = *(YYMARKER = ++YYCURSOR);
	if (yych == '*') goto yy62;
	goto yy3;
yy37:
	yych = *++YYCURSOR;
	if (yych == '=') goto yy60;
	goto yy3;
yy38:
	yych = *++YYCURSOR;
	if (yych == '=') goto yy58;
	goto yy3;
yy39:
	yych = *++YYCURSOR;
	if (yych == '=') goto yy56;
	goto yy3;
yy40:
	yych = *++YYCURSOR;
	if (yych == '=') goto yy54;
	goto yy3;
yy41:
	++YYCURSOR;
	if ((yych = *YYCURSOR) == '=') goto yy52;
#line 107 "scanner.l"
	{ return ASTERISK; }
#line 365 "<stdout>"
yy43:
	++YYCURSOR;
#line 101 "scanner.l"
	{ return EQUALS; }
#line 370 "<stdout>"
yy45:
	++YYCURSOR;
#line 102 "scanner.l"
	{ return COLON; }
#line 375 "<stdout>"
yy47:
	++YYCURSOR;
#line 103 "scanner.l"
	{ return COMMA; }
#line 380 "<stdout>"
yy49:
	++YYCURSOR;
#line 105 "scanner.l"
	{ return GT; }
#line 385 "<stdout>"
yy51:
	yych = *++YYCURSOR;
	goto yy3;
yy52:
	++YYCURSOR;
#line 99 "scanner.l"
	{ return SUBSTR; }
#line 393 "<stdout>"
yy54:
	++YYCURSOR;
#line 98 "scanner.l"
	{ return SUFFIX; }
#line 398 "<stdout>"
yy56:
	++YYCURSOR;
#line 97 "scanner.l"
	{ return PREFIX; }
#line 403 "<stdout>"
yy58:
	++YYCURSOR;
#line 96 "scanner.l"
	{ return DASHMATCH; }
#line 408 "<stdout>"
yy60:
	++YYCURSOR;
#line 95 "scanner.l"
	{ return INCLUDES; }
#line 413 "<stdout>"
yy62:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych != '*') goto yy62;
yy64:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych == '*') goto yy64;
	if (yych == '/') goto yy68;
yy66:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych == '*') goto yy70;
	goto yy66;
yy68:
	++YYCURSOR;
#line 91 "scanner.l"
	{ goto start; /* ignore comments */ }
#line 435 "<stdout>"
yy70:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych == '*') goto yy70;
	if (yych == '/') goto yy68;
	goto yy66;
yy72:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
yy73:
	if (yych <= '\v') {
		if (yych <= 0x08) goto yy35;
		if (yych <= '\n') goto yy72;
		goto yy35;
	} else {
		if (yych <= '\r') goto yy72;
		if (yych == ' ') goto yy72;
		goto yy35;
	}
yy74:
	yych = *++YYCURSOR;
	if (yych == '-') goto yy76;
yy75:
	YYCURSOR = YYMARKER;
	if (yyaccept <= 5) {
		if (yyaccept <= 2) {
			if (yyaccept <= 1) {
				if (yyaccept <= 0) {
					goto yy3;
				} else {
					goto yy5;
				}
			} else {
				goto yy14;
			}
		} else {
			if (yyaccept <= 4) {
				if (yyaccept <= 3) {
					goto yy16;
				} else {
					goto yy86;
				}
			} else {
				goto yy100;
			}
		}
	} else {
		if (yyaccept <= 8) {
			if (yyaccept <= 7) {
				if (yyaccept <= 6) {
					goto yy110;
				} else {
					goto yy128;
				}
			} else {
				goto yy144;
			}
		} else {
			if (yyaccept <= 9) {
				goto yy162;
			} else {
				goto yy192;
			}
		}
	}
yy76:
	yych = *++YYCURSOR;
	if (yych != '-') goto yy75;
	++YYCURSOR;
#line 77 "scanner.l"
	{ goto start; /* ignore CDO */ }
#line 509 "<stdout>"
yy79:
	yyaccept = 3;
	YYMARKER = ++YYCURSOR;
	if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3);
	yych = *YYCURSOR;
	if (yych <= 'Z') {
		if (yych <= '-') {
			if (yych == '%') goto yy81;
			if (yych <= ',') goto yy16;
			goto yy83;
		} else {
			if (yych <= '/') goto yy16;
			if (yych <= '9') goto yy79;
			if (yych <= '@') goto yy16;
			goto yy84;
		}
	} else {
		if (yych <= '_') {
			if (yych == '\\') goto yy87;
			if (yych <= '^') goto yy16;
			goto yy84;
		} else {
			if (yych <= '`') goto yy16;
			if (yych <= 'z') goto yy84;
			if (yych <= 0x7F) goto yy16;
			goto yy84;
		}
	}
yy81:
	++YYCURSOR;
#line 69 "scanner.l"
	{ return PERCENTAGE; }
#line 542 "<stdout>"
yy83:
	yych = *++YYCURSOR;
	if (yych <= '^') {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy75;
		} else {
			if (yych == '\\') goto yy87;
			goto yy75;
		}
	} else {
		if (yych <= '`') {
			if (yych >= '`') goto yy75;
		} else {
			if (yych <= 'z') goto yy84;
			if (yych <= 0x7F) goto yy75;
		}
	}
yy84:
	yyaccept = 4;
	YYMARKER = ++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
yy85:
	if (yych <= '[') {
		if (yych <= '/') {
			if (yych == '-') goto yy84;
		} else {
			if (yych <= '9') goto yy84;
			if (yych <= '@') goto yy86;
			if (yych <= 'Z') goto yy84;
		}
	} else {
		if (yych <= '_') {
			if (yych <= '\\') goto yy91;
			if (yych >= '_') goto yy84;
		} else {
			if (yych <= '`') goto yy86;
			if (yych <= 'z') goto yy84;
			if (yych >= 0x80) goto yy84;
		}
	}
yy86:
#line 70 "scanner.l"
	{ return DIMENSION; }
#line 587 "<stdout>"
yy87:
	yych = *++YYCURSOR;
	if (yych <= '\r') {
		if (yych == '\n') goto yy75;
		if (yych <= '\v') goto yy84;
		goto yy75;
	} else {
		if (yych <= '9') {
			if (yych <= '/') goto yy84;
		} else {
			if (yych <= '`') goto yy84;
			if (yych >= 'g') goto yy84;
		}
	}
yy88:
	yyaccept = 4;
	YYMARKER = ++YYCURSOR;
	if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
	yych = *YYCURSOR;
	if (yych <= '9') {
		if (yych <= '\r') {
			if (yych <= '\n') {
				if (yych <= 0x08) goto yy86;
				goto yy84;
			} else {
				if (yych <= '\v') goto yy86;
				if (yych <= '\f') goto yy84;
			}
		} else {
			if (yych <= ',') {
				if (yych == ' ') goto yy84;
				goto yy86;
			} else {
				if (yych <= '-') goto yy84;
				if (yych <= '/') goto yy86;
				goto yy88;
			}
		}
	} else {
		if (yych <= '^') {
			if (yych <= 'Z') {
				if (yych <= '@') goto yy86;
				goto yy84;
			} else {
				if (yych == '\\') goto yy91;
				goto yy86;
			}
		} else {
			if (yych <= 'f') {
				if (yych <= '_') goto yy84;
				if (yych <= '`') goto yy86;
				goto yy88;
			} else {
				if (yych <= 'z') goto yy84;
				if (yych <= 0x7F) goto yy86;
				goto yy84;
			}
		}
	}
	yyaccept = 4;
	yych = *(YYMARKER = ++YYCURSOR);
	if (yych == '\n') goto yy84;
	goto yy85;
yy91:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '\r') {
		if (yych == '\n') goto yy75;
		if (yych <= '\v') goto yy84;
		goto yy75;
	} else {
		if (yych <= '9') {
			if (yych <= '/') goto yy84;
		} else {
			if (yych <= '`') goto yy84;
			if (yych >= 'g') goto yy84;
		}
	}
yy92:
	yyaccept = 4;
	YYMARKER = ++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '9') {
		if (yych <= '\r') {
			if (yych <= '\n') {
				if (yych <= 0x08) goto yy86;
				goto yy84;
			} else {
				if (yych <= '\v') goto yy86;
				if (yych <= '\f') goto yy84;
			}
		} else {
			if (yych <= ',') {
				if (yych == ' ') goto yy84;
				goto yy86;
			} else {
				if (yych <= '-') goto yy84;
				if (yych <= '/') goto yy86;
				goto yy92;
			}
		}
	} else {
		if (yych <= '^') {
			if (yych <= 'Z') {
				if (yych <= '@') goto yy86;
				goto yy84;
			} else {
				if (yych == '\\') goto yy91;
				goto yy86;
			}
		} else {
			if (yych <= 'f') {
				if (yych <= '_') goto yy84;
				if (yych <= '`') goto yy86;
				goto yy92;
			} else {
				if (yych <= 'z') goto yy84;
				if (yych <= 0x7F) goto yy86;
				goto yy84;
			}
		}
	}
	yyaccept = 4;
	YYMARKER = ++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= 'Z') {
		if (yych <= '-') {
			if (yych == '\n') goto yy84;
			if (yych <= ',') goto yy86;
			goto yy84;
		} else {
			if (yych <= '/') goto yy86;
			if (yych <= '9') goto yy84;
			if (yych <= '@') goto yy86;
			goto yy84;
		}
	} else {
		if (yych <= '_') {
			if (yych == '\\') goto yy91;
			if (yych <= '^') goto yy86;
			goto yy84;
		} else {
			if (yych <= '`') goto yy86;
			if (yych <= 'z') goto yy84;
			if (yych <= 0x7F) goto yy86;
			goto yy84;
		}
	}
yy95:
	yych = *++YYCURSOR;
	if (yych <= '/') goto yy75;
	if (yych <= '9') goto yy79;
	goto yy75;
yy96:
	yyaccept = 3;
	YYMARKER = ++YYCURSOR;
	if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3);
	yych = *YYCURSOR;
yy97:
	if (yych <= '@') {
		if (yych <= '-') {
			if (yych == '%') goto yy81;
			if (yych <= ',') goto yy16;
			goto yy83;
		} else {
			if (yych <= '.') goto yy95;
			if (yych <= '/') goto yy16;
			if (yych <= '9') goto yy96;
			goto yy16;
		}
	} else {
		if (yych <= '^') {
			if (yych <= 'Z') goto yy84;
			if (yych == '\\') goto yy87;
			goto yy16;
		} else {
			if (yych <= '`') {
				if (yych <= '_') goto yy84;
				goto yy16;
			} else {
				if (yych <= 'z') goto yy84;
				if (yych <= 0x7F) goto yy16;
				goto yy84;
			}
		}
	}
yy98:
	yyaccept = 5;
	YYMARKER = ++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '[') {
		if (yych <= '/') {
			if (yych == '-') goto yy98;
		} else {
			if (yych <= '9') goto yy98;
			if (yych <= '@') goto yy100;
			if (yych <= 'Z') goto yy98;
		}
	} else {
		if (yych <= '_') {
			if (yych <= '\\') goto yy101;
			if (yych >= '_') goto yy98;
		} else {
			if (yych <= '`') goto yy100;
			if (yych <= 'z') goto yy98;
			if (yych >= 0x80) goto yy98;
		}
	}
yy100:
#line 66 "scanner.l"
	{ return HASH; }
#line 803 "<stdout>"
yy101:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '\r') {
		if (yych == '\n') goto yy75;
		if (yych <= '\v') goto yy98;
		goto yy75;
	} else {
		if (yych <= '9') {
			if (yych <= '/') goto yy98;
		} else {
			if (yych <= '`') goto yy98;
			if (yych >= 'g') goto yy98;
		}
	}
yy102:
	yyaccept = 5;
	YYMARKER = ++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '9') {
		if (yych <= '\r') {
			if (yych <= '\n') {
				if (yych <= 0x08) goto yy100;
				goto yy98;
			} else {
				if (yych <= '\v') goto yy100;
				if (yych <= '\f') goto yy98;
			}
		} else {
			if (yych <= ',') {
				if (yych == ' ') goto yy98;
				goto yy100;
			} else {
				if (yych <= '-') goto yy98;
				if (yych <= '/') goto yy100;
				goto yy102;
			}
		}
	} else {
		if (yych <= '^') {
			if (yych <= 'Z') {
				if (yych <= '@') goto yy100;
				goto yy98;
			} else {
				if (yych == '\\') goto yy101;
				goto yy100;
			}
		} else {
			if (yych <= 'f') {
				if (yych <= '_') goto yy98;
				if (yych <= '`') goto yy100;
				goto yy102;
			} else {
				if (yych <= 'z') goto yy98;
				if (yych <= 0x7F) goto yy100;
				goto yy98;
			}
		}
	}
	yyaccept = 5;
	YYMARKER = ++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= 'Z') {
		if (yych <= '-') {
			if (yych == '\n') goto yy98;
			if (yych <= ',') goto yy100;
			goto yy98;
		} else {
			if (yych <= '/') goto yy100;
			if (yych <= '9') goto yy98;
			if (yych <= '@') goto yy100;
			goto yy98;
		}
	} else {
		if (yych <= '_') {
			if (yych == '\\') goto yy101;
			if (yych <= '^') goto yy100;
			goto yy98;
		} else {
			if (yych <= '`') goto yy100;
			if (yych <= 'z') goto yy98;
			if (yych <= 0x7F) goto yy100;
			goto yy98;
		}
	}
yy105:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
yy106:
	if (yych <= '\'') {
		if (yych <= '\t') {
			if (yych <= 0x08) goto yy75;
			goto yy105;
		} else {
			if (yych <= 0x1F) goto yy75;
			if (yych <= '&') goto yy105;
			goto yy109;
		}
	} else {
		if (yych <= '\\') {
			if (yych <= '[') goto yy105;
		} else {
			if (yych == 0x7F) goto yy75;
			goto yy105;
		}
	}
yy107:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '/') {
		if (yych <= '\r') {
			if (yych <= '\f') goto yy105;
			goto yy114;
		} else {
			if (yych == '\'') goto yy111;
			goto yy105;
		}
	} else {
		if (yych <= '\\') {
			if (yych <= '9') goto yy112;
			if (yych <= '[') goto yy105;
			goto yy107;
		} else {
			if (yych <= '`') goto yy105;
			if (yych <= 'f') goto yy112;
			goto yy105;
		}
	}
yy109:
	++YYCURSOR;
yy110:
#line 65 "scanner.l"
	{ return STRING; }
#line 942 "<stdout>"
yy111:
	yyaccept = 6;
	YYMARKER = ++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '\'') {
		if (yych <= '\t') {
			if (yych <= 0x08) goto yy110;
			goto yy105;
		} else {
			if (yych <= 0x1F) goto yy110;
			if (yych <= '&') goto yy105;
			goto yy109;
		}
	} else {
		if (yych <= '\\') {
			if (yych <= '[') goto yy105;
			goto yy107;
		} else {
			if (yych == 0x7F) goto yy110;
			goto yy105;
		}
	}
yy112:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '\'') {
		if (yych <= '\f') {
			if (yych <= 0x08) goto yy75;
			if (yych == '\v') goto yy75;
			goto yy105;
		} else {
			if (yych <= '\r') goto yy115;
			if (yych <= 0x1F) goto yy75;
			if (yych <= '&') goto yy105;
			goto yy109;
		}
	} else {
		if (yych <= '\\') {
			if (yych <= '/') goto yy105;
			if (yych <= '9') goto yy112;
			if (yych <= '[') goto yy105;
			goto yy107;
		} else {
			if (yych <= 'f') {
				if (yych <= '`') goto yy105;
				goto yy112;
			} else {
				if (yych == 0x7F) goto yy75;
				goto yy105;
			}
		}
	}
yy114:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '\'') {
		if (yych <= '\n') {
			if (yych <= 0x08) goto yy75;
			goto yy105;
		} else {
			if (yych <= 0x1F) goto yy75;
			if (yych <= '&') goto yy105;
			goto yy109;
		}
	} else {
		if (yych <= '\\') {
			if (yych <= '[') goto yy105;
			goto yy107;
		} else {
			if (yych == 0x7F) goto yy75;
			goto yy105;
		}
	}
yy115:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '\'') {
		if (yych <= '\n') {
			if (yych <= 0x08) goto yy75;
			goto yy105;
		} else {
			if (yych <= 0x1F) goto yy75;
			if (yych <= '&') goto yy105;
			goto yy109;
		}
	} else {
		if (yych <= '\\') {
			if (yych <= '[') goto yy105;
			goto yy107;
		} else {
			if (yych == 0x7F) goto yy75;
			goto yy105;
		}
	}
yy116:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
yy117:
	if (yych <= '"') {
		if (yych <= '\t') {
			if (yych <= 0x08) goto yy75;
			goto yy116;
		} else {
			if (yych <= 0x1F) goto yy75;
			if (yych <= '!') goto yy116;
			goto yy109;
		}
	} else {
		if (yych <= '\\') {
			if (yych <= '[') goto yy116;
		} else {
			if (yych == 0x7F) goto yy75;
			goto yy116;
		}
	}
yy118:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '/') {
		if (yych <= '\r') {
			if (yych <= '\f') goto yy116;
			goto yy123;
		} else {
			if (yych != '"') goto yy116;
		}
	} else {
		if (yych <= '\\') {
			if (yych <= '9') goto yy121;
			if (yych <= '[') goto yy116;
			goto yy118;
		} else {
			if (yych <= '`') goto yy116;
			if (yych <= 'f') goto yy121;
			goto yy116;
		}
	}
	yyaccept = 6;
	YYMARKER = ++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '"') {
		if (yych <= '\t') {
			if (yych <= 0x08) goto yy110;
			goto yy116;
		} else {
			if (yych <= 0x1F) goto yy110;
			if (yych <= '!') goto yy116;
			goto yy109;
		}
	} else {
		if (yych <= '\\') {
			if (yych <= '[') goto yy116;
			goto yy118;
		} else {
			if (yych == 0x7F) goto yy110;
			goto yy116;
		}
	}
yy121:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '"') {
		if (yych <= '\f') {
			if (yych <= 0x08) goto yy75;
			if (yych == '\v') goto yy75;
			goto yy116;
		} else {
			if (yych <= '\r') goto yy124;
			if (yych <= 0x1F) goto yy75;
			if (yych <= '!') goto yy116;
			goto yy109;
		}
	} else {
		if (yych <= '\\') {
			if (yych <= '/') goto yy116;
			if (yych <= '9') goto yy121;
			if (yych <= '[') goto yy116;
			goto yy118;
		} else {
			if (yych <= 'f') {
				if (yych <= '`') goto yy116;
				goto yy121;
			} else {
				if (yych == 0x7F) goto yy75;
				goto yy116;
			}
		}
	}
yy123:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '"') {
		if (yych <= '\n') {
			if (yych <= 0x08) goto yy75;
			goto yy116;
		} else {
			if (yych <= 0x1F) goto yy75;
			if (yych <= '!') goto yy116;
			goto yy109;
		}
	} else {
		if (yych <= '\\') {
			if (yych <= '[') goto yy116;
			goto yy118;
		} else {
			if (yych == 0x7F) goto yy75;
			goto yy116;
		}
	}
yy124:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '"') {
		if (yych <= '\n') {
			if (yych <= 0x08) goto yy75;
			goto yy116;
		} else {
			if (yych <= 0x1F) goto yy75;
			if (yych <= '!') goto yy116;
			goto yy109;
		}
	} else {
		if (yych <= '\\') {
			if (yych <= '[') goto yy116;
			goto yy118;
		} else {
			if (yych == 0x7F) goto yy75;
			goto yy116;
		}
	}
yy125:
	yych = *++YYCURSOR;
	if (yych <= '^') {
		if (yych <= 'Z') {
			if (yych <= '@') goto yy75;
		} else {
			if (yych == '\\') goto yy129;
			goto yy75;
		}
	} else {
		if (yych <= '`') {
			if (yych >= '`') goto yy75;
		} else {
			if (yych <= 'z') goto yy126;
			if (yych <= 0x7F) goto yy75;
		}
	}
yy126:
	yyaccept = 7;
	YYMARKER = ++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
yy127:
	if (yych <= '[') {
		if (yych <= '/') {
			if (yych == '-') goto yy126;
		} else {
			if (yych <= '9') goto yy126;
			if (yych <= '@') goto yy128;
			if (yych <= 'Z') goto yy126;
		}
	} else {
		if (yych <= '_') {
			if (yych <= '\\') goto yy133;
			if (yych >= '_') goto yy126;
		} else {
			if (yych <= '`') goto yy128;
			if (yych <= 'z') goto yy126;
			if (yych >= 0x80) goto yy126;
		}
	}
yy128:
#line 64 "scanner.l"
	{ return ATKEYWORD; }
#line 1226 "<stdout>"
yy129:
	yych = *++YYCURSOR;
	if (yych <= '\r') {
		if (yych == '\n') goto yy75;
		if (yych <= '\v') goto yy126;
		goto yy75;
	} else {
		if (yych <= '9') {
			if (yych <= '/') goto yy126;
		} else {
			if (yych <= '`') goto yy126;
			if (yych >= 'g') goto yy126;
		}
	}
yy130:
	yyaccept = 7;
	YYMARKER = ++YYCURSOR;
	if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
	yych = *YYCURSOR;
	if (yych <= '9') {
		if (yych <= '\r') {
			if (yych <= '\n') {
				if (yych <= 0x08) goto yy128;
				goto yy126;
			} else {
				if (yych <= '\v') goto yy128;
				if (yych <= '\f') goto yy126;
			}
		} else {
			if (yych <= ',') {
				if (yych == ' ') goto yy126;
				goto yy128;
			} else {
				if (yych <= '-') goto yy126;
				if (yych <= '/') goto yy128;
				goto yy130;
			}
		}
	} else {
		if (yych <= '^') {
			if (yych <= 'Z') {
				if (yych <= '@') goto yy128;
				goto yy126;
			} else {
				if (yych == '\\') goto yy133;
				goto yy128;
			}
		} else {
			if (yych <= 'f') {
				if (yych <= '_') goto yy126;
				if (yych <= '`') goto yy128;
				goto yy130;
			} else {
				if (yych <= 'z') goto yy126;
				if (yych <= 0x7F) goto yy128;
				goto yy126;
			}
		}
	}
	yyaccept = 7;
	yych = *(YYMARKER = ++YYCURSOR);
	if (yych == '\n') goto yy126;
	goto yy127;
yy133:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '\r') {
		if (yych == '\n') goto yy75;
		if (yych <= '\v') goto yy126;
		goto yy75;
	} else {
		if (yych <= '9') {
			if (yych <= '/') goto yy126;
		} else {
			if (yych <= '`') goto yy126;
			if (yych >= 'g') goto yy126;
		}
	}
yy134:
	yyaccept = 7;
	YYMARKER = ++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '9') {
		if (yych <= '\r') {
			if (yych <= '\n') {
				if (yych <= 0x08) goto yy128;
				goto yy126;
			} else {
				if (yych <= '\v') goto yy128;
				if (yych <= '\f') goto yy126;
			}
		} else {
			if (yych <= ',') {
				if (yych == ' ') goto yy126;
				goto yy128;
			} else {
				if (yych <= '-') goto yy126;
				if (yych <= '/') goto yy128;
				goto yy134;
			}
		}
	} else {
		if (yych <= '^') {
			if (yych <= 'Z') {
				if (yych <= '@') goto yy128;
				goto yy126;
			} else {
				if (yych == '\\') goto yy133;
				goto yy128;
			}
		} else {
			if (yych <= 'f') {
				if (yych <= '_') goto yy126;
				if (yych <= '`') goto yy128;
				goto yy134;
			} else {
				if (yych <= 'z') goto yy126;
				if (yych <= 0x7F) goto yy128;
				goto yy126;
			}
		}
	}
	yyaccept = 7;
	YYMARKER = ++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= 'Z') {
		if (yych <= '-') {
			if (yych == '\n') goto yy126;
			if (yych <= ',') goto yy128;
			goto yy126;
		} else {
			if (yych <= '/') goto yy128;
			if (yych <= '9') goto yy126;
			if (yych <= '@') goto yy128;
			goto yy126;
		}
	} else {
		if (yych <= '_') {
			if (yych == '\\') goto yy133;
			if (yych <= '^') goto yy128;
			goto yy126;
		} else {
			if (yych <= '`') goto yy128;
			if (yych <= 'z') goto yy126;
			if (yych <= 0x7F) goto yy128;
			goto yy126;
		}
	}
yy137:
	yyaccept = 1;
	YYMARKER = ++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
yy138:
	if (yych <= 'Z') {
		if (yych <= '-') {
			if (yych == '(') goto yy143;
			if (yych <= ',') goto yy5;
			goto yy137;
		} else {
			if (yych <= '/') goto yy5;
			if (yych <= '9') goto yy137;
			if (yych <= '@') goto yy5;
			goto yy137;
		}
	} else {
		if (yych <= '_') {
			if (yych == '\\') goto yy142;
			if (yych <= '^') goto yy5;
			goto yy137;
		} else {
			if (yych <= '`') goto yy5;
			if (yych <= 'z') goto yy137;
			if (yych <= 0x7F) goto yy5;
			goto yy137;
		}
	}
yy139:
	yyaccept = 1;
	YYMARKER = ++YYCURSOR;
	if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
	yych = *YYCURSOR;
	if (yych <= '/') {
		if (yych <= 0x1F) {
			if (yych <= '\v') {
				if (yych <= 0x08) goto yy5;
				if (yych <= '\n') goto yy137;
				goto yy5;
			} else {
				if (yych <= '\f') goto yy137;
				if (yych >= 0x0E) goto yy5;
			}
		} else {
			if (yych <= '(') {
				if (yych <= ' ') goto yy137;
				if (yych <= '\'') goto yy5;
				goto yy143;
			} else {
				if (yych == '-') goto yy137;
				goto yy5;
			}
		}
	} else {
		if (yych <= '^') {
			if (yych <= 'Z') {
				if (yych <= '9') goto yy139;
				if (yych <= '@') goto yy5;
				goto yy137;
			} else {
				if (yych == '\\') goto yy142;
				goto yy5;
			}
		} else {
			if (yych <= 'f') {
				if (yych <= '_') goto yy137;
				if (yych <= '`') goto yy5;
				goto yy139;
			} else {
				if (yych <= 'z') goto yy137;
				if (yych <= 0x7F) goto yy5;
				goto yy137;
			}
		}
	}
	yyaccept = 1;
	yych = *(YYMARKER = ++YYCURSOR);
	if (yych == '\n') goto yy137;
	goto yy138;
yy142:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '\r') {
		if (yych == '\n') goto yy75;
		if (yych <= '\v') goto yy137;
		goto yy75;
	} else {
		if (yych <= '9') {
			if (yych <= '/') goto yy137;
			goto yy145;
		} else {
			if (yych <= '`') goto yy137;
			if (yych <= 'f') goto yy145;
			goto yy137;
		}
	}
yy143:
	++YYCURSOR;
yy144:
#line 93 "scanner.l"
	{ return FUNCTION; }
#line 1481 "<stdout>"
yy145:
	yyaccept = 1;
	YYMARKER = ++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '/') {
		if (yych <= 0x1F) {
			if (yych <= '\v') {
				if (yych <= 0x08) goto yy5;
				if (yych <= '\n') goto yy137;
				goto yy5;
			} else {
				if (yych <= '\f') goto yy137;
				if (yych >= 0x0E) goto yy5;
			}
		} else {
			if (yych <= '(') {
				if (yych <= ' ') goto yy137;
				if (yych <= '\'') goto yy5;
				goto yy143;
			} else {
				if (yych == '-') goto yy137;
				goto yy5;
			}
		}
	} else {
		if (yych <= '^') {
			if (yych <= 'Z') {
				if (yych <= '9') goto yy145;
				if (yych <= '@') goto yy5;
				goto yy137;
			} else {
				if (yych == '\\') goto yy142;
				goto yy5;
			}
		} else {
			if (yych <= 'f') {
				if (yych <= '_') goto yy137;
				if (yych <= '`') goto yy5;
				goto yy145;
			} else {
				if (yych <= 'z') goto yy137;
				if (yych <= 0x7F) goto yy5;
				goto yy137;
			}
		}
	}
	yyaccept = 1;
	YYMARKER = ++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '@') {
		if (yych <= '(') {
			if (yych == '\n') goto yy137;
			if (yych <= '\'') goto yy5;
			goto yy143;
		} else {
			if (yych <= '-') {
				if (yych <= ',') goto yy5;
				goto yy137;
			} else {
				if (yych <= '/') goto yy5;
				if (yych <= '9') goto yy137;
				goto yy5;
			}
		}
	} else {
		if (yych <= '^') {
			if (yych <= 'Z') goto yy137;
			if (yych == '\\') goto yy142;
			goto yy5;
		} else {
			if (yych <= '`') {
				if (yych <= '_') goto yy137;
				goto yy5;
			} else {
				if (yych <= 'z') goto yy137;
				if (yych <= 0x7F) goto yy5;
				goto yy137;
			}
		}
	}
yy148:
	yyaccept = 1;
	yych = *(YYMARKER = ++YYCURSOR);
	if (yych != 'l') goto yy138;
	yyaccept = 1;
	yych = *(YYMARKER = ++YYCURSOR);
	if (yych != '(') goto yy138;
	yyaccept = 8;
	yych = *(YYMARKER = ++YYCURSOR);
	if (yych <= 0x1F) {
		if (yych <= '\n') {
			if (yych <= 0x08) goto yy144;
			goto yy152;
		} else {
			if (yych <= '\v') goto yy144;
			if (yych <= '\r') goto yy152;
			goto yy144;
		}
	} else {
		if (yych <= '(') {
			if (yych <= '\'') goto yy152;
			goto yy144;
		} else {
			if (yych == 0x7F) goto yy144;
			goto yy152;
		}
	}
yy151:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
yy152:
	if (yych <= '"') {
		if (yych <= '\r') {
			if (yych <= 0x08) goto yy75;
			if (yych == '\v') goto yy75;
			goto yy151;
		} else {
			if (yych <= 0x1F) goto yy75;
			if (yych <= ' ') goto yy151;
			if (yych <= '!') goto yy157;
		}
	} else {
		if (yych <= ')') {
			if (yych <= '&') goto yy157;
			if (yych <= '\'') goto yy155;
			if (yych <= '(') goto yy75;
			goto yy161;
		} else {
			if (yych <= '\\') {
				if (yych <= '[') goto yy157;
				goto yy159;
			} else {
				if (yych == 0x7F) goto yy75;
				goto yy157;
			}
		}
	}
yy153:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '"') {
		if (yych <= '\t') {
			if (yych <= 0x08) goto yy75;
			goto yy153;
		} else {
			if (yych <= 0x1F) goto yy75;
			if (yych <= '!') goto yy153;
			goto yy171;
		}
	} else {
		if (yych <= '\\') {
			if (yych <= '[') goto yy153;
			goto yy180;
		} else {
			if (yych == 0x7F) goto yy75;
			goto yy153;
		}
	}
yy155:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '\'') {
		if (yych <= '\t') {
			if (yych <= 0x08) goto yy75;
			goto yy155;
		} else {
			if (yych <= 0x1F) goto yy75;
			if (yych <= '&') goto yy155;
			goto yy171;
		}
	} else {
		if (yych <= '\\') {
			if (yych <= '[') goto yy155;
			goto yy169;
		} else {
			if (yych == 0x7F) goto yy75;
			goto yy155;
		}
	}
yy157:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '"') {
		if (yych <= '\r') {
			if (yych <= 0x08) goto yy75;
			if (yych == '\v') goto yy75;
			goto yy166;
		} else {
			if (yych <= 0x1F) goto yy75;
			if (yych <= ' ') goto yy166;
			if (yych <= '!') goto yy157;
			goto yy75;
		}
	} else {
		if (yych <= '[') {
			if (yych <= '&') goto yy157;
			if (yych <= '(') goto yy75;
			if (yych <= ')') goto yy161;
			goto yy157;
		} else {
			if (yych <= '\\') goto yy159;
			if (yych == 0x7F) goto yy75;
			goto yy157;
		}
	}
yy159:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= ')') {
		if (yych <= '\v') {
			if (yych == '\n') goto yy166;
			goto yy157;
		} else {
			if (yych <= '\r') goto yy166;
			if (yych <= '(') goto yy157;
			goto yy163;
		}
	} else {
		if (yych <= '[') {
			if (yych <= '/') goto yy157;
			if (yych <= '9') goto yy164;
			goto yy157;
		} else {
			if (yych <= '\\') goto yy159;
			if (yych <= '`') goto yy157;
			if (yych <= 'f') goto yy164;
			goto yy157;
		}
	}
yy161:
	++YYCURSOR;
yy162:
#line 73 "scanner.l"
	{ return URI; }
#line 1723 "<stdout>"
yy163:
	yyaccept = 9;
	YYMARKER = ++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '"') {
		if (yych <= '\r') {
			if (yych <= 0x08) goto yy162;
			if (yych == '\v') goto yy162;
			goto yy166;
		} else {
			if (yych <= 0x1F) goto yy162;
			if (yych <= ' ') goto yy166;
			if (yych <= '!') goto yy157;
			goto yy162;
		}
	} else {
		if (yych <= '[') {
			if (yych <= '&') goto yy157;
			if (yych <= '(') goto yy162;
			if (yych <= ')') goto yy161;
			goto yy157;
		} else {
			if (yych <= '\\') goto yy159;
			if (yych == 0x7F) goto yy162;
			goto yy157;
		}
	}
yy164:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '(') {
		if (yych <= '\r') {
			if (yych <= '\n') {
				if (yych <= 0x08) goto yy75;
				goto yy157;
			} else {
				if (yych <= '\v') goto yy75;
				if (yych <= '\f') goto yy157;
				goto yy168;
			}
		} else {
			if (yych <= '!') {
				if (yych <= 0x1F) goto yy75;
				goto yy157;
			} else {
				if (yych <= '"') goto yy75;
				if (yych <= '&') goto yy157;
				goto yy75;
			}
		}
	} else {
		if (yych <= '\\') {
			if (yych <= '/') {
				if (yych <= ')') goto yy161;
				goto yy157;
			} else {
				if (yych <= '9') goto yy164;
				if (yych <= '[') goto yy157;
				goto yy159;
			}
		} else {
			if (yych <= 'f') {
				if (yych <= '`') goto yy157;
				goto yy164;
			} else {
				if (yych == 0x7F) goto yy75;
				goto yy157;
			}
		}
	}
yy166:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '\r') {
		if (yych <= 0x08) goto yy75;
		if (yych == '\v') goto yy75;
		goto yy166;
	} else {
		if (yych <= ' ') {
			if (yych <= 0x1F) goto yy75;
			goto yy166;
		} else {
			if (yych == ')') goto yy161;
			goto yy75;
		}
	}
yy168:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '!') {
		if (yych <= '\v') {
			if (yych <= 0x08) goto yy75;
			if (yych <= '\t') goto yy166;
			if (yych <= '\n') goto yy157;
			goto yy75;
		} else {
			if (yych <= '\r') goto yy166;
			if (yych <= 0x1F) goto yy75;
			if (yych <= ' ') goto yy166;
			goto yy157;
		}
	} else {
		if (yych <= ')') {
			if (yych <= '"') goto yy75;
			if (yych <= '&') goto yy157;
			if (yych <= '(') goto yy75;
			goto yy161;
		} else {
			if (yych <= '\\') {
				if (yych <= '[') goto yy157;
				goto yy159;
			} else {
				if (yych == 0x7F) goto yy75;
				goto yy157;
			}
		}
	}
yy169:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '/') {
		if (yych <= '\r') {
			if (yych <= '\f') goto yy155;
			goto yy177;
		} else {
			if (yych == '\'') goto yy173;
			goto yy155;
		}
	} else {
		if (yych <= '\\') {
			if (yych <= '9') goto yy175;
			if (yych <= '[') goto yy155;
			goto yy169;
		} else {
			if (yych <= '`') goto yy155;
			if (yych <= 'f') goto yy175;
			goto yy155;
		}
	}
yy171:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '\r') {
		if (yych <= 0x08) goto yy75;
		if (yych == '\v') goto yy75;
		goto yy171;
	} else {
		if (yych <= ' ') {
			if (yych <= 0x1F) goto yy75;
			goto yy171;
		} else {
			if (yych == ')') goto yy161;
			goto yy75;
		}
	}
yy173:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '&') {
		if (yych <= '\v') {
			if (yych <= 0x08) goto yy75;
			if (yych <= '\t') goto yy173;
			if (yych <= '\n') goto yy171;
			goto yy75;
		} else {
			if (yych <= '\r') goto yy171;
			if (yych <= 0x1F) goto yy75;
			if (yych <= ' ') goto yy173;
			goto yy155;
		}
	} else {
		if (yych <= '[') {
			if (yych <= '\'') goto yy171;
			if (yych == ')') goto yy179;
			goto yy155;
		} else {
			if (yych <= '\\') goto yy169;
			if (yych == 0x7F) goto yy75;
			goto yy155;
		}
	}
yy175:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '\'') {
		if (yych <= '\f') {
			if (yych <= 0x08) goto yy75;
			if (yych == '\v') goto yy75;
			goto yy155;
		} else {
			if (yych <= '\r') goto yy178;
			if (yych <= 0x1F) goto yy75;
			if (yych <= '&') goto yy155;
			goto yy171;
		}
	} else {
		if (yych <= '\\') {
			if (yych <= '/') goto yy155;
			if (yych <= '9') goto yy175;
			if (yych <= '[') goto yy155;
			goto yy169;
		} else {
			if (yych <= 'f') {
				if (yych <= '`') goto yy155;
				goto yy175;
			} else {
				if (yych == 0x7F) goto yy75;
				goto yy155;
			}
		}
	}
yy177:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '\'') {
		if (yych <= '\n') {
			if (yych <= 0x08) goto yy75;
			goto yy155;
		} else {
			if (yych <= 0x1F) goto yy75;
			if (yych <= '&') goto yy155;
			goto yy171;
		}
	} else {
		if (yych <= '\\') {
			if (yych <= '[') goto yy155;
			goto yy169;
		} else {
			if (yych == 0x7F) goto yy75;
			goto yy155;
		}
	}
yy178:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '\'') {
		if (yych <= '\n') {
			if (yych <= 0x08) goto yy75;
			goto yy155;
		} else {
			if (yych <= 0x1F) goto yy75;
			if (yych <= '&') goto yy155;
			goto yy171;
		}
	} else {
		if (yych <= '\\') {
			if (yych <= '[') goto yy155;
			goto yy169;
		} else {
			if (yych == 0x7F) goto yy75;
			goto yy155;
		}
	}
yy179:
	yyaccept = 9;
	YYMARKER = ++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '\'') {
		if (yych <= '\t') {
			if (yych <= 0x08) goto yy162;
			goto yy155;
		} else {
			if (yych <= 0x1F) goto yy162;
			if (yych <= '&') goto yy155;
			goto yy171;
		}
	} else {
		if (yych <= '\\') {
			if (yych <= '[') goto yy155;
			goto yy169;
		} else {
			if (yych == 0x7F) goto yy162;
			goto yy155;
		}
	}
yy180:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '/') {
		if (yych <= '\r') {
			if (yych <= '\f') goto yy153;
			goto yy186;
		} else {
			if (yych != '"') goto yy153;
		}
	} else {
		if (yych <= '\\') {
			if (yych <= '9') goto yy184;
			if (yych <= '[') goto yy153;
			goto yy180;
		} else {
			if (yych <= '`') goto yy153;
			if (yych <= 'f') goto yy184;
			goto yy153;
		}
	}
yy182:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '!') {
		if (yych <= '\v') {
			if (yych <= 0x08) goto yy75;
			if (yych <= '\t') goto yy182;
			if (yych <= '\n') goto yy171;
			goto yy75;
		} else {
			if (yych <= '\r') goto yy171;
			if (yych <= 0x1F) goto yy75;
			if (yych <= ' ') goto yy182;
			goto yy153;
		}
	} else {
		if (yych <= '[') {
			if (yych <= '"') goto yy171;
			if (yych == ')') goto yy188;
			goto yy153;
		} else {
			if (yych <= '\\') goto yy180;
			if (yych == 0x7F) goto yy75;
			goto yy153;
		}
	}
yy184:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '"') {
		if (yych <= '\f') {
			if (yych <= 0x08) goto yy75;
			if (yych == '\v') goto yy75;
			goto yy153;
		} else {
			if (yych <= '\r') goto yy187;
			if (yych <= 0x1F) goto yy75;
			if (yych <= '!') goto yy153;
			goto yy171;
		}
	} else {
		if (yych <= '\\') {
			if (yych <= '/') goto yy153;
			if (yych <= '9') goto yy184;
			if (yych <= '[') goto yy153;
			goto yy180;
		} else {
			if (yych <= 'f') {
				if (yych <= '`') goto yy153;
				goto yy184;
			} else {
				if (yych == 0x7F) goto yy75;
				goto yy153;
			}
		}
	}
yy186:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '"') {
		if (yych <= '\n') {
			if (yych <= 0x08) goto yy75;
			goto yy153;
		} else {
			if (yych <= 0x1F) goto yy75;
			if (yych <= '!') goto yy153;
			goto yy171;
		}
	} else {
		if (yych <= '\\') {
			if (yych <= '[') goto yy153;
			goto yy180;
		} else {
			if (yych == 0x7F) goto yy75;
			goto yy153;
		}
	}
yy187:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '"') {
		if (yych <= '\n') {
			if (yych <= 0x08) goto yy75;
			goto yy153;
		} else {
			if (yych <= 0x1F) goto yy75;
			if (yych <= '!') goto yy153;
			goto yy171;
		}
	} else {
		if (yych <= '\\') {
			if (yych <= '[') goto yy153;
			goto yy180;
		} else {
			if (yych == 0x7F) goto yy75;
			goto yy153;
		}
	}
yy188:
	yyaccept = 9;
	YYMARKER = ++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '"') {
		if (yych <= '\t') {
			if (yych <= 0x08) goto yy162;
			goto yy153;
		} else {
			if (yych <= 0x1F) goto yy162;
			if (yych <= '!') goto yy153;
			goto yy171;
		}
	} else {
		if (yych <= '\\') {
			if (yych <= '[') goto yy153;
			goto yy180;
		} else {
			if (yych == 0x7F) goto yy162;
			goto yy153;
		}
	}
yy189:
	yych = *++YYCURSOR;
	if (yych <= '>') {
		if (yych <= '/') goto yy75;
		if (yych >= ':') goto yy75;
	} else {
		if (yych == '@') goto yy75;
		if (yych >= 'G') goto yy75;
	}
yy190:
	yyaccept = 10;
	YYMARKER = ++YYCURSOR;
	if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
	yych = *YYCURSOR;
	if (yych <= '9') {
		if (yych == '-') goto yy193;
		if (yych >= '0') goto yy190;
	} else {
		if (yych <= '?') {
			if (yych >= '?') goto yy190;
		} else {
			if (yych <= '@') goto yy192;
			if (yych <= 'F') goto yy190;
		}
	}
yy192:
#line 75 "scanner.l"
	{ return UNICODE_RANGE; }
#line 2185 "<stdout>"
yy193:
	yych = *++YYCURSOR;
	if (yych <= '/') goto yy75;
	if (yych <= '9') goto yy194;
	if (yych <= '@') goto yy75;
	if (yych >= 'G') goto yy75;
yy194:
	++YYCURSOR;
	if (YYLIMIT <= YYCURSOR) YYFILL(1);
	yych = *YYCURSOR;
	if (yych <= '/') goto yy192;
	if (yych <= '9') goto yy194;
	if (yych <= '@') goto yy192;
	if (yych <= 'F') goto yy194;
	goto yy192;
yy196:
	yych = *++YYCURSOR;
	if (yych <= '\r') {
		if (yych == '\n') goto yy75;
		if (yych <= '\v') goto yy137;
		goto yy75;
	} else {
		if (yych <= '9') {
			if (yych <= '/') goto yy137;
			goto yy139;
		} else {
			if (yych <= '`') goto yy137;
			if (yych <= 'f') goto yy139;
			goto yy137;
		}
	}
yy197:
	yych = *++YYCURSOR;
	if (yych != '>') goto yy75;
	++YYCURSOR;
#line 78 "scanner.l"
	{ goto start; /* ignore CDC */ }
#line 2223 "<stdout>"
}
#line 110 "scanner.l"


}
