/* Generated by re2c 1.0.3 */
#line 1 "sapi/phpdbg/phpdbg_lexer.l"
/*
 * phpdbg_lexer.l
 */

#include "phpdbg.h"
#include "phpdbg_cmd.h"

#include "phpdbg_parser.h"

#define LEX(v) (PHPDBG_G(lexer).v)

#define YYCTYPE unsigned char
#define YYSETCONDITION(x) LEX(state) = x;
#define YYGETCONDITION() LEX(state)
#define YYCURSOR LEX(cursor)
#define YYMARKER LEX(marker)
#define YYCTXMARKER LEX(ctxmarker)
#define yyleng LEX(len)
#define yytext ((char*) LEX(text))
#undef YYDEBUG
#define YYDEBUG(a, b)
#define YYFILL(n)

#define NORMAL 0
#define PRE_RAW 1
#define RAW 2
#define INITIAL 3

ZEND_EXTERN_MODULE_GLOBALS(phpdbg)

void phpdbg_init_lexer (phpdbg_param_t *stack, char *input) {
	PHPDBG_G(parser_stack) = stack;

	YYSETCONDITION(INITIAL);

	LEX(text) = YYCURSOR = (unsigned char *) input;
	LEX(len) = strlen(input);
}

static int unescape_string(char *s) {
	switch (*s) {
		case '\'':
		case '\"': {
			char start = *s;
			size_t off = 1;
			do {
				if (s[off] == '\\') {
					off++;
				}
				*s = s[off];
			} while ((++s)[off] != start);
			return off + 1;
		}
	}

	return 0;
}

int phpdbg_lex (phpdbg_param_t* yylval) {

restart:
	LEX(text) = YYCURSOR;


#line 68 "sapi/phpdbg/phpdbg_lexer.c"
{
	YYCTYPE yych;
	unsigned int yyaccept = 0;
	if (YYGETCONDITION() < 2) {
		if (YYGETCONDITION() < 1) {
			goto yyc_NORMAL;
		} else {
			goto yyc_PRE_RAW;
		}
	} else {
		if (YYGETCONDITION() < 3) {
			goto yyc_RAW;
		} else {
			goto yyc_INITIAL;
		}
	}
/* *********************************** */
yyc_NORMAL:
	{
		static const unsigned char yybm[] = {
			/* table 1 .. 8: 0 */
			  0,  62,  62,  62,  62,  62,  62,  62, 
			 62,  40,   0,  62,  62,  40,  62,  62, 
			 62,  62,  62,  62,  62,  62,  62,  62, 
			 62,  62,  62,  62,  62,  62,  62,  62, 
			 40,  62,  50,  40,  62,  62,  62,  14, 
			 62,  62,  62,  62,  62,  62,  63,  62, 
			127, 127, 127, 127, 127, 127, 127, 127, 
			127, 127,  40,  62,  62,  62,  62,  62, 
			 62, 254, 254, 254, 254, 254, 254, 190, 
			190, 190, 190, 190, 190, 190, 190, 190, 
			190, 190, 190, 190, 190, 190, 190, 190, 
			190, 190, 190,  62,   2,  62,  62,  62, 
			 62, 254, 254, 254, 254, 254, 254, 190, 
			190, 190, 190, 190, 190, 190, 190, 190, 
			190, 190, 190, 190, 190, 190, 190, 190, 
			190, 190, 190,  62,  62,  62,  62,  62, 
			 62,  62,  62,  62,  62,  62,  62,  62, 
			 62,  62,  62,  62,  62,  62,  62,  62, 
			 62,  62,  62,  62,  62,  62,  62,  62, 
			 62,  62,  62,  62,  62,  62,  62,  62, 
			 62,  62,  62,  62,  62,  62,  62,  62, 
			 62,  62,  62,  62,  62,  62,  62,  62, 
			 62,  62,  62,  62,  62,  62,  62,  62, 
			 62,  62,  62,  62,  62,  62,  62,  62, 
			 62,  62,  62,  62,  62,  62,  62,  62, 
			 62,  62,  62,  62,  62,  62,  62,  62, 
			 62,  62,  62,  62,  62,  62,  62,  62, 
			 62,  62,  62,  62,  62,  62,  62,  62, 
			 62,  62,  62,  62,  62,  62,  62,  62, 
			 62,  62,  62,  62,  62,  62,  62,  62, 
			 62,  62,  62,  62,  62,  62,  62,  62, 
			 62,  62,  62,  62,  62,  62,  62,  62, 
			/* table 9 .. 10: 256 */
			  0,  64,  64,  64,  64,  64,  64,  64, 
			 64, 128,   0,  64,  64, 128,  64,  64, 
			 64,  64,  64,  64,  64,  64,  64,  64, 
			 64,  64,  64,  64,  64,  64,  64,  64, 
			128,  64,   0,   0,  64,  64,  64,   0, 
			 64,  64,  64,  64,  64,  64,  64,  64, 
			 64,  64,  64,  64,  64,  64,  64,  64, 
			 64,  64,   0,  64,  64,  64,  64,  64, 
			 64,  64,  64,  64,  64,  64,  64,  64, 
			 64,  64,  64,  64,  64,  64,  64,  64, 
			 64,  64,  64,  64,  64,  64,  64,  64, 
			 64,  64,  64,  64,  64,  64,  64,  64, 
			 64,  64,  64,  64,  64,  64,  64,  64, 
			 64,  64,  64,  64,  64,  64,  64,  64, 
			 64,  64,  64,  64,  64,  64,  64,  64, 
			 64,  64,  64,  64,  64,  64,  64,  64, 
			 64,  64,  64,  64,  64,  64,  64,  64, 
			 64,  64,  64,  64,  64,  64,  64,  64, 
			 64,  64,  64,  64,  64,  64,  64,  64, 
			 64,  64,  64,  64,  64,  64,  64,  64, 
			 64,  64,  64,  64,  64,  64,  64,  64, 
			 64,  64,  64,  64,  64,  64,  64,  64, 
			 64,  64,  64,  64,  64,  64,  64,  64, 
			 64,  64,  64,  64,  64,  64,  64,  64, 
			 64,  64,  64,  64,  64,  64,  64,  64, 
			 64,  64,  64,  64,  64,  64,  64,  64, 
			 64,  64,  64,  64,  64,  64,  64,  64, 
			 64,  64,  64,  64,  64,  64,  64,  64, 
			 64,  64,  64,  64,  64,  64,  64,  64, 
			 64,  64,  64,  64,  64,  64,  64,  64, 
			 64,  64,  64,  64,  64,  64,  64,  64, 
			 64,  64,  64,  64,  64,  64,  64,  64, 
		};
		YYDEBUG(1, *YYCURSOR);
		YYFILL(11);
		yych = *YYCURSOR;
		if (yybm[256+yych] & 128) {
			goto yy8;
		}
		switch (yych) {
		case 0x00:
		case '\t':
		case '\n':	goto yy3;
		case '"':	goto yy11;
		case '#':	goto yy13;
		case '\'':	goto yy15;
		case '-':	goto yy16;
		case '.':
		case '1':
		case '2':
		case '3':
		case '4':
		case '5':
		case '6':
		case '7':
		case '8':
		case '9':	goto yy17;
		case '0':	goto yy20;
		case ':':	goto yy21;
		case 'D':
		case 'd':	goto yy22;
		case 'E':
		case 'e':	goto yy23;
		case 'F':
		case 'f':	goto yy24;
		case 'I':
		case 'i':	goto yy25;
		case 'N':
		case 'n':	goto yy26;
		case 'O':
		case 'o':	goto yy27;
		case 'T':
		case 't':	goto yy28;
		case 'Y':
		case 'y':	goto yy29;
		case 'Z':	goto yy30;
		case 'z':	goto yy31;
		default:	goto yy5;
		}
yy3:
		YYDEBUG(3, *YYCURSOR);
		++YYCURSOR;
		YYDEBUG(4, *YYCURSOR);
		yyleng = (size_t) YYCURSOR - (size_t) yytext;
#line 89 "sapi/phpdbg/phpdbg_lexer.l"
		{
	return 0;
}
#line 211 "sapi/phpdbg/phpdbg_lexer.c"
yy5:
		YYDEBUG(5, *YYCURSOR);
		yyaccept = 0;
		YYMARKER = ++YYCURSOR;
		YYFILL(3);
		yych = *YYCURSOR;
yy6:
		YYDEBUG(6, *YYCURSOR);
		if (yybm[256+yych] & 64) {
			goto yy5;
		}
		if (yych <= ' ') goto yy7;
		if (yych == '#') goto yy7;
		if (yych <= '\'') goto yy32;
		goto yy34;
yy7:
		YYDEBUG(7, *YYCURSOR);
		yyleng = (size_t) YYCURSOR - (size_t) yytext;
#line 161 "sapi/phpdbg/phpdbg_lexer.l"
		{
	phpdbg_init_param(yylval, STR_PARAM);
	yylval->str = estrndup(yytext, yyleng - unescape_string(yytext));
	yylval->len = yyleng;
	return T_ID;
}
#line 237 "sapi/phpdbg/phpdbg_lexer.c"
yy8:
		YYDEBUG(8, *YYCURSOR);
		++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
		YYDEBUG(9, *YYCURSOR);
		if (yybm[256+yych] & 128) {
			goto yy8;
		}
		YYDEBUG(10, *YYCURSOR);
		yyleng = (size_t) YYCURSOR - (size_t) yytext;
#line 175 "sapi/phpdbg/phpdbg_lexer.l"
		{
	/* ignore whitespace */

	goto restart;
}
#line 255 "sapi/phpdbg/phpdbg_lexer.c"
yy11:
		YYDEBUG(11, *YYCURSOR);
		yych = *++YYCURSOR;
		if (yych == '"') goto yy32;
		goto yy36;
yy12:
		YYDEBUG(12, *YYCURSOR);
		YYCURSOR = YYMARKER;
		if (yyaccept <= 3) {
			if (yyaccept <= 1) {
				if (yyaccept == 0) {
					goto yy7;
				} else {
					goto yy14;
				}
			} else {
				if (yyaccept == 2) {
					goto yy19;
				} else {
					goto yy83;
				}
			}
		} else {
			if (yyaccept <= 5) {
				if (yyaccept == 4) {
					goto yy86;
				} else {
					goto yy102;
				}
			} else {
				goto yy119;
			}
		}
yy13:
		YYDEBUG(13, *YYCURSOR);
		yyaccept = 1;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych <= '.') {
			if (yych <= ',') goto yy14;
			if (yych <= '-') {
				YYCTXMARKER = YYCURSOR;
				goto yy41;
			}
			YYCTXMARKER = YYCURSOR;
			goto yy42;
		} else {
			if (yych <= '/') goto yy14;
			if (yych <= '9') {
				YYCTXMARKER = YYCURSOR;
				goto yy42;
			}
		}
yy14:
		YYDEBUG(14, *YYCURSOR);
		yyleng = (size_t) YYCURSOR - (size_t) yytext;
#line 110 "sapi/phpdbg/phpdbg_lexer.l"
		{
	YYSETCONDITION(INITIAL);
	return T_SEPARATOR;
}
#line 316 "sapi/phpdbg/phpdbg_lexer.c"
yy15:
		YYDEBUG(15, *YYCURSOR);
		yych = *++YYCURSOR;
		if (yych == '\'') goto yy32;
		goto yy46;
yy16:
		YYDEBUG(16, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yybm[0+yych] & 1) {
			goto yy17;
		}
		if (yych == 'r') goto yy51;
		goto yy6;
yy17:
		YYDEBUG(17, *YYCURSOR);
		yyaccept = 2;
		YYMARKER = ++YYCURSOR;
		YYFILL(3);
		yych = *YYCURSOR;
		YYDEBUG(18, *YYCURSOR);
		if (yybm[0+yych] & 1) {
			goto yy17;
		}
		if (yych <= ' ') {
			if (yych <= '\n') {
				if (yych <= 0x00) goto yy19;
				if (yych <= 0x08) goto yy5;
			} else {
				if (yych == '\r') goto yy19;
				if (yych <= 0x1F) goto yy5;
			}
		} else {
			if (yych <= '&') {
				if (yych <= '!') goto yy5;
				if (yych <= '"') goto yy32;
				if (yych >= '$') goto yy5;
			} else {
				if (yych <= '\'') goto yy32;
				if (yych <= '/') goto yy5;
				if (yych <= ':') goto yy34;
				goto yy5;
			}
		}
yy19:
		YYDEBUG(19, *YYCURSOR);
		yyleng = (size_t) YYCURSOR - (size_t) yytext;
#line 142 "sapi/phpdbg/phpdbg_lexer.l"
		{
	phpdbg_init_param(yylval, NUMERIC_PARAM);
	yylval->num = atoi(yytext);
	return T_DIGITS;
}
#line 370 "sapi/phpdbg/phpdbg_lexer.c"
yy20:
		YYDEBUG(20, *YYCURSOR);
		yyaccept = 2;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yybm[0+yych] & 1) {
			goto yy17;
		}
		if (yych <= 0x1F) {
			if (yych <= '\n') {
				if (yych <= 0x00) goto yy19;
				if (yych <= 0x08) goto yy6;
				goto yy19;
			} else {
				if (yych == '\r') goto yy19;
				goto yy6;
			}
		} else {
			if (yych <= '#') {
				if (yych <= ' ') goto yy19;
				if (yych <= '"') goto yy6;
				goto yy19;
			} else {
				if (yych == 'x') goto yy52;
				goto yy6;
			}
		}
yy21:
		YYDEBUG(21, *YYCURSOR);
		yych = *++YYCURSOR;
		if (yych == ':') goto yy55;
		if (yych == '\\') goto yy57;
		goto yy53;
yy22:
		YYDEBUG(22, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych == 'I') goto yy59;
		if (yych == 'i') goto yy59;
		goto yy6;
yy23:
		YYDEBUG(23, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych == 'N') goto yy60;
		if (yych == 'n') goto yy60;
		goto yy6;
yy24:
		YYDEBUG(24, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych == 'A') goto yy61;
		if (yych == 'a') goto yy61;
		goto yy6;
yy25:
		YYDEBUG(25, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych == 'F') goto yy62;
		if (yych == 'f') goto yy62;
		goto yy6;
yy26:
		YYDEBUG(26, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych == 'O') goto yy63;
		if (yych == 'o') goto yy63;
		goto yy6;
yy27:
		YYDEBUG(27, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych <= 'N') {
			if (yych == 'F') goto yy64;
			if (yych <= 'M') goto yy6;
			goto yy65;
		} else {
			if (yych <= 'f') {
				if (yych <= 'e') goto yy6;
				goto yy64;
			} else {
				if (yych == 'n') goto yy65;
				goto yy6;
			}
		}
yy28:
		YYDEBUG(28, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych == 'R') goto yy66;
		if (yych == 'r') goto yy66;
		goto yy6;
yy29:
		YYDEBUG(29, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych == 'E') goto yy67;
		if (yych == 'e') goto yy67;
		goto yy6;
yy30:
		YYDEBUG(30, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych == 'E') goto yy68;
		goto yy6;
yy31:
		YYDEBUG(31, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych == 'e') goto yy69;
		goto yy6;
yy32:
		YYDEBUG(32, *YYCURSOR);
		++YYCURSOR;
		YYFILL(3);
		yych = *YYCURSOR;
yy33:
		YYDEBUG(33, *YYCURSOR);
		if (yybm[0+yych] & 2) {
			goto yy32;
		}
		if (yych <= '#') goto yy12;
		goto yy70;
yy34:
		YYDEBUG(34, *YYCURSOR);
		yych = *++YYCURSOR;
		if (yych == '/') goto yy71;
		if (yych == '\\') goto yy57;
		goto yy12;
yy35:
		YYDEBUG(35, *YYCURSOR);
		++YYCURSOR;
		YYFILL(4);
		yych = *YYCURSOR;
yy36:
		YYDEBUG(36, *YYCURSOR);
		if (yybm[0+yych] & 4) {
			goto yy35;
		}
		if (yych <= ' ') {
			if (yych <= 0x00) goto yy12;
			if (yych == '\n') goto yy12;
		} else {
			if (yych <= '"') goto yy72;
			if (yych <= '#') goto yy37;
			if (yych <= ':') goto yy39;
			goto yy40;
		}
yy37:
		YYDEBUG(37, *YYCURSOR);
		++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
yy38:
		YYDEBUG(38, *YYCURSOR);
		if (yybm[0+yych] & 8) {
			goto yy37;
		}
		if (yych <= '\n') goto yy12;
		if (yych <= '"') goto yy73;
		goto yy74;
yy39:
		YYDEBUG(39, *YYCURSOR);
		yych = *++YYCURSOR;
		if (yych == '/') goto yy75;
		goto yy38;
yy40:
		YYDEBUG(40, *YYCURSOR);
		++YYCURSOR;
		YYFILL(3);
		yych = *YYCURSOR;
		if (yych <= ' ') {
			if (yych <= '\n') {
				if (yych <= 0x00) goto yy12;
				if (yych <= 0x08) goto yy32;
				goto yy12;
			} else {
				if (yych == '\r') goto yy12;
				if (yych <= 0x1F) goto yy32;
				goto yy12;
			}
		} else {
			if (yych <= '9') {
				if (yych <= '!') goto yy32;
				if (yych <= '"') goto yy35;
				if (yych <= '#') goto yy12;
				goto yy32;
			} else {
				if (yych <= ':') goto yy70;
				if (yych == '\\') goto yy35;
				goto yy32;
			}
		}
yy41:
		YYDEBUG(41, *YYCURSOR);
		yych = *++YYCURSOR;
		if (yych == '.') goto yy42;
		if (yych <= '/') goto yy12;
		if (yych >= ':') goto yy12;
yy42:
		YYDEBUG(42, *YYCURSOR);
		++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
		YYDEBUG(43, *YYCURSOR);
		if (yych == '.') goto yy42;
		if (yych <= '/') goto yy44;
		if (yych <= '9') goto yy42;
yy44:
		YYDEBUG(44, *YYCURSOR);
		YYCURSOR = YYCTXMARKER;
		yyleng = (size_t) YYCURSOR - (size_t) yytext;
#line 106 "sapi/phpdbg/phpdbg_lexer.l"
		{
	return T_POUND;
}
#line 586 "sapi/phpdbg/phpdbg_lexer.c"
yy45:
		YYDEBUG(45, *YYCURSOR);
		++YYCURSOR;
		YYFILL(4);
		yych = *YYCURSOR;
yy46:
		YYDEBUG(46, *YYCURSOR);
		if (yybm[0+yych] & 16) {
			goto yy45;
		}
		if (yych <= '\n') {
			if (yych <= 0x00) goto yy12;
			if (yych >= '\n') goto yy12;
		} else {
			if (yych <= '#') goto yy47;
			if (yych <= '\'') goto yy72;
			if (yych <= ':') goto yy49;
			goto yy50;
		}
yy47:
		YYDEBUG(47, *YYCURSOR);
		++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
yy48:
		YYDEBUG(48, *YYCURSOR);
		if (yybm[0+yych] & 32) {
			goto yy47;
		}
		if (yych <= '\n') goto yy12;
		if (yych <= '\'') goto yy73;
		goto yy76;
yy49:
		YYDEBUG(49, *YYCURSOR);
		yych = *++YYCURSOR;
		if (yych == '/') goto yy77;
		goto yy48;
yy50:
		YYDEBUG(50, *YYCURSOR);
		++YYCURSOR;
		YYFILL(3);
		yych = *YYCURSOR;
		if (yych <= '"') {
			if (yych <= '\f') {
				if (yych <= 0x00) goto yy12;
				if (yych <= 0x08) goto yy32;
				if (yych <= '\n') goto yy12;
				goto yy32;
			} else {
				if (yych <= '\r') goto yy12;
				if (yych == ' ') goto yy12;
				goto yy32;
			}
		} else {
			if (yych <= '9') {
				if (yych <= '#') goto yy12;
				if (yych == '\'') goto yy45;
				goto yy32;
			} else {
				if (yych <= ':') goto yy70;
				if (yych == '\\') goto yy45;
				goto yy32;
			}
		}
yy51:
		YYDEBUG(51, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych <= ' ') {
			if (yych <= '\f') {
				if (yych == '\t') goto yy78;
				goto yy6;
			} else {
				if (yych <= '\r') goto yy78;
				if (yych <= 0x1F) goto yy6;
				goto yy78;
			}
		} else {
			if (yych <= '.') {
				if (yych <= ',') goto yy6;
				if (yych <= '-') goto yy80;
				goto yy81;
			} else {
				if (yych <= '/') goto yy6;
				if (yych <= '9') goto yy81;
				goto yy6;
			}
		}
yy52:
		YYDEBUG(52, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yybm[0+yych] & 64) {
			goto yy84;
		}
		goto yy6;
yy53:
		YYDEBUG(53, *YYCURSOR);
		++YYCURSOR;
		YYDEBUG(54, *YYCURSOR);
		YYCURSOR -= 1;
		yyleng = (size_t) YYCURSOR - (size_t) yytext;
#line 119 "sapi/phpdbg/phpdbg_lexer.l"
		{
	return T_COLON;
}
#line 693 "sapi/phpdbg/phpdbg_lexer.c"
yy55:
		YYDEBUG(55, *YYCURSOR);
		++YYCURSOR;
		YYDEBUG(56, *YYCURSOR);
		yyleng = (size_t) YYCURSOR - (size_t) yytext;
#line 115 "sapi/phpdbg/phpdbg_lexer.l"
		{
	return T_DCOLON;
}
#line 703 "sapi/phpdbg/phpdbg_lexer.c"
yy57:
		YYDEBUG(57, *YYCURSOR);
		yyaccept = 0;
		YYMARKER = ++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
		YYDEBUG(58, *YYCURSOR);
		if (yych <= ' ') {
			if (yych <= '\n') {
				if (yych <= 0x00) goto yy7;
				if (yych <= 0x08) goto yy57;
				goto yy7;
			} else {
				if (yych == '\r') goto yy7;
				if (yych <= 0x1F) goto yy57;
				goto yy7;
			}
		} else {
			if (yych <= '&') {
				if (yych <= '!') goto yy57;
				if (yych <= '#') goto yy7;
				goto yy57;
			} else {
				if (yych <= '\'') goto yy7;
				if (yych == ':') goto yy87;
				goto yy57;
			}
		}
yy59:
		YYDEBUG(59, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych == 'S') goto yy88;
		if (yych == 's') goto yy88;
		goto yy6;
yy60:
		YYDEBUG(60, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych == 'A') goto yy89;
		if (yych == 'a') goto yy89;
		goto yy6;
yy61:
		YYDEBUG(61, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych == 'L') goto yy90;
		if (yych == 'l') goto yy90;
		goto yy6;
yy62:
		YYDEBUG(62, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych <= '\f') {
			if (yych == '\t') goto yy91;
			goto yy6;
		} else {
			if (yych <= '\r') goto yy91;
			if (yych == ' ') goto yy91;
			goto yy6;
		}
yy63:
		YYDEBUG(63, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych <= '\f') {
			if (yych <= 0x00) goto yy94;
			if (yych <= 0x08) goto yy6;
			if (yych <= '\n') goto yy94;
			goto yy6;
		} else {
			if (yych <= '\r') goto yy94;
			if (yych == ' ') goto yy94;
			goto yy6;
		}
yy64:
		YYDEBUG(64, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych == 'F') goto yy63;
		if (yych == 'f') goto yy63;
		goto yy6;
yy65:
		YYDEBUG(65, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych <= '\f') {
			if (yych <= 0x00) goto yy96;
			if (yych <= 0x08) goto yy6;
			if (yych <= '\n') goto yy96;
			goto yy6;
		} else {
			if (yych <= '\r') goto yy96;
			if (yych == ' ') goto yy96;
			goto yy6;
		}
yy66:
		YYDEBUG(66, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych == 'U') goto yy98;
		if (yych == 'u') goto yy98;
		goto yy6;
yy67:
		YYDEBUG(67, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych == 'S') goto yy65;
		if (yych == 's') goto yy65;
		goto yy6;
yy68:
		YYDEBUG(68, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych == 'N') goto yy99;
		goto yy6;
yy69:
		YYDEBUG(69, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych == 'n') goto yy100;
		goto yy6;
yy70:
		YYDEBUG(70, *YYCURSOR);
		yych = *++YYCURSOR;
		if (yych != '/') goto yy12;
yy71:
		YYDEBUG(71, *YYCURSOR);
		yych = *++YYCURSOR;
		if (yych == '/') goto yy101;
		goto yy12;
yy72:
		YYDEBUG(72, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych <= '\r') {
			if (yych <= 0x08) {
				if (yych <= 0x00) goto yy7;
				goto yy33;
			} else {
				if (yych <= '\n') goto yy7;
				if (yych <= '\f') goto yy33;
				goto yy7;
			}
		} else {
			if (yych <= ' ') {
				if (yych <= 0x1F) goto yy33;
				goto yy7;
			} else {
				if (yych == '#') goto yy7;
				goto yy33;
			}
		}
yy73:
		YYDEBUG(73, *YYCURSOR);
		++YYCURSOR;
		goto yy7;
yy74:
		YYDEBUG(74, *YYCURSOR);
		++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
		if (yych == '"') goto yy37;
		if (yych == '\\') goto yy37;
		goto yy12;
yy75:
		YYDEBUG(75, *YYCURSOR);
		yych = *++YYCURSOR;
		if (yych == '/') goto yy103;
		goto yy38;
yy76:
		YYDEBUG(76, *YYCURSOR);
		++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
		if (yych == '\'') goto yy47;
		if (yych == '\\') goto yy47;
		goto yy12;
yy77:
		YYDEBUG(77, *YYCURSOR);
		yych = *++YYCURSOR;
		if (yych == '/') goto yy104;
		goto yy48;
yy78:
		YYDEBUG(78, *YYCURSOR);
		++YYCURSOR;
		YYFILL(2);
		yych = *YYCURSOR;
		YYDEBUG(79, *YYCURSOR);
		if (yych <= ' ') {
			if (yych <= '\f') {
				if (yych == '\t') goto yy78;
				goto yy12;
			} else {
				if (yych <= '\r') goto yy78;
				if (yych <= 0x1F) goto yy12;
				goto yy78;
			}
		} else {
			if (yych <= '.') {
				if (yych <= ',') goto yy12;
				if (yych <= '-') goto yy105;
				goto yy106;
			} else {
				if (yych <= '/') goto yy12;
				if (yych <= '9') goto yy106;
				goto yy12;
			}
		}
yy80:
		YYDEBUG(80, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych == '.') goto yy81;
		if (yych <= '/') goto yy6;
		if (yych >= ':') goto yy6;
yy81:
		YYDEBUG(81, *YYCURSOR);
		yyaccept = 3;
		YYMARKER = ++YYCURSOR;
		YYFILL(3);
		yych = *YYCURSOR;
		YYDEBUG(82, *YYCURSOR);
		if (yych <= '"') {
			if (yych <= '\f') {
				if (yych <= 0x00) goto yy83;
				if (yych <= 0x08) goto yy5;
				if (yych >= '\v') goto yy5;
			} else {
				if (yych <= 0x1F) {
					if (yych >= 0x0E) goto yy5;
				} else {
					if (yych <= ' ') goto yy83;
					if (yych <= '!') goto yy5;
					goto yy32;
				}
			}
		} else {
			if (yych <= '-') {
				if (yych <= '#') goto yy83;
				if (yych == '\'') goto yy32;
				goto yy5;
			} else {
				if (yych <= '/') {
					if (yych <= '.') goto yy81;
					goto yy5;
				} else {
					if (yych <= '9') goto yy81;
					if (yych <= ':') goto yy34;
					goto yy5;
				}
			}
		}
yy83:
		YYDEBUG(83, *YYCURSOR);
		yyleng = (size_t) YYCURSOR - (size_t) yytext;
#line 93 "sapi/phpdbg/phpdbg_lexer.l"
		{
	char *text = yytext + 2;
	while (*++text < '0');
	yylval->num = atoi(text);
	return T_REQ_ID;
}
#line 967 "sapi/phpdbg/phpdbg_lexer.c"
yy84:
		YYDEBUG(84, *YYCURSOR);
		yyaccept = 4;
		YYMARKER = ++YYCURSOR;
		YYFILL(3);
		yych = *YYCURSOR;
		YYDEBUG(85, *YYCURSOR);
		if (yybm[0+yych] & 64) {
			goto yy84;
		}
		if (yych <= ' ') {
			if (yych <= '\n') {
				if (yych <= 0x00) goto yy86;
				if (yych <= 0x08) goto yy5;
			} else {
				if (yych == '\r') goto yy86;
				if (yych <= 0x1F) goto yy5;
			}
		} else {
			if (yych <= '&') {
				if (yych <= '!') goto yy5;
				if (yych <= '"') goto yy32;
				if (yych >= '$') goto yy5;
			} else {
				if (yych <= '\'') goto yy32;
				if (yych <= '/') goto yy5;
				if (yych <= ':') goto yy34;
				goto yy5;
			}
		}
yy86:
		YYDEBUG(86, *YYCURSOR);
		yyleng = (size_t) YYCURSOR - (size_t) yytext;
#line 148 "sapi/phpdbg/phpdbg_lexer.l"
		{
	phpdbg_init_param(yylval, ADDR_PARAM);
	yylval->addr = strtoul(yytext, 0, 16);
	return T_ADDR;
}
#line 1007 "sapi/phpdbg/phpdbg_lexer.c"
yy87:
		YYDEBUG(87, *YYCURSOR);
		++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
		if (yych == '\\') goto yy57;
		goto yy12;
yy88:
		YYDEBUG(88, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych == 'A') goto yy108;
		if (yych == 'a') goto yy108;
		goto yy6;
yy89:
		YYDEBUG(89, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych == 'B') goto yy109;
		if (yych == 'b') goto yy109;
		goto yy6;
yy90:
		YYDEBUG(90, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych == 'S') goto yy110;
		if (yych == 's') goto yy110;
		goto yy6;
yy91:
		YYDEBUG(91, *YYCURSOR);
		++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
		YYDEBUG(92, *YYCURSOR);
		if (yych <= '\f') {
			if (yych == '\t') goto yy91;
		} else {
			if (yych <= '\r') goto yy91;
			if (yych == ' ') goto yy91;
		}
		YYDEBUG(93, *YYCURSOR);
		yyleng = (size_t) YYCURSOR - (size_t) yytext;
#line 100 "sapi/phpdbg/phpdbg_lexer.l"
		{
	YYSETCONDITION(RAW);
	phpdbg_init_param(yylval, EMPTY_PARAM);
	return T_IF;
}
#line 1056 "sapi/phpdbg/phpdbg_lexer.c"
yy94:
		YYDEBUG(94, *YYCURSOR);
		++YYCURSOR;
		YYDEBUG(95, *YYCURSOR);
		YYCURSOR -= 1;
		yyleng = (size_t) YYCURSOR - (size_t) yytext;
#line 136 "sapi/phpdbg/phpdbg_lexer.l"
		{
	phpdbg_init_param(yylval, NUMERIC_PARAM);
	yylval->num = 0;
	return T_FALSY;
}
#line 1069 "sapi/phpdbg/phpdbg_lexer.c"
yy96:
		YYDEBUG(96, *YYCURSOR);
		++YYCURSOR;
		YYDEBUG(97, *YYCURSOR);
		YYCURSOR -= 1;
		yyleng = (size_t) YYCURSOR - (size_t) yytext;
#line 130 "sapi/phpdbg/phpdbg_lexer.l"
		{
	phpdbg_init_param(yylval, NUMERIC_PARAM);
	yylval->num = 1;
	return T_TRUTHY;
}
#line 1082 "sapi/phpdbg/phpdbg_lexer.c"
yy98:
		YYDEBUG(98, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych == 'E') goto yy65;
		if (yych == 'e') goto yy65;
		goto yy6;
yy99:
		YYDEBUG(99, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych == 'D') goto yy111;
		goto yy6;
yy100:
		YYDEBUG(100, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych == 'd') goto yy111;
		goto yy6;
yy101:
		YYDEBUG(101, *YYCURSOR);
		++YYCURSOR;
yy102:
		YYDEBUG(102, *YYCURSOR);
		yyleng = (size_t) YYCURSOR - (size_t) yytext;
#line 123 "sapi/phpdbg/phpdbg_lexer.l"
		{
	phpdbg_init_param(yylval, STR_PARAM);
	yylval->str = estrndup(yytext, yyleng);
	yylval->len = yyleng;
	return T_PROTO;
}
#line 1115 "sapi/phpdbg/phpdbg_lexer.c"
yy103:
		YYDEBUG(103, *YYCURSOR);
		yyaccept = 5;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych <= 0x00) goto yy102;
		if (yych == '\n') goto yy102;
		goto yy38;
yy104:
		YYDEBUG(104, *YYCURSOR);
		yyaccept = 5;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych <= 0x00) goto yy102;
		if (yych == '\n') goto yy102;
		goto yy48;
yy105:
		YYDEBUG(105, *YYCURSOR);
		yych = *++YYCURSOR;
		if (yych == '.') goto yy106;
		if (yych <= '/') goto yy12;
		if (yych >= ':') goto yy12;
yy106:
		YYDEBUG(106, *YYCURSOR);
		++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
		YYDEBUG(107, *YYCURSOR);
		if (yych == '.') goto yy106;
		if (yych <= '/') goto yy83;
		if (yych <= '9') goto yy106;
		goto yy83;
yy108:
		YYDEBUG(108, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych == 'B') goto yy112;
		if (yych == 'b') goto yy112;
		goto yy6;
yy109:
		YYDEBUG(109, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych == 'L') goto yy113;
		if (yych == 'l') goto yy113;
		goto yy6;
yy110:
		YYDEBUG(110, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych == 'E') goto yy63;
		if (yych == 'e') goto yy63;
		goto yy6;
yy111:
		YYDEBUG(111, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych == '_') goto yy114;
		goto yy6;
yy112:
		YYDEBUG(112, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych == 'L') goto yy115;
		if (yych == 'l') goto yy115;
		goto yy6;
yy113:
		YYDEBUG(113, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych == 'E') goto yy116;
		if (yych == 'e') goto yy116;
		goto yy6;
yy114:
		YYDEBUG(114, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yybm[0+yych] & 128) {
			goto yy117;
		}
		goto yy6;
yy115:
		YYDEBUG(115, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych == 'E') goto yy120;
		if (yych == 'e') goto yy120;
		goto yy6;
yy116:
		YYDEBUG(116, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych == 'D') goto yy65;
		if (yych == 'd') goto yy65;
		goto yy6;
yy117:
		YYDEBUG(117, *YYCURSOR);
		yyaccept = 6;
		YYMARKER = ++YYCURSOR;
		YYFILL(3);
		yych = *YYCURSOR;
		YYDEBUG(118, *YYCURSOR);
		if (yybm[0+yych] & 128) {
			goto yy117;
		}
		if (yych <= ' ') {
			if (yych <= '\n') {
				if (yych <= 0x00) goto yy119;
				if (yych <= 0x08) goto yy5;
			} else {
				if (yych == '\r') goto yy119;
				if (yych <= 0x1F) goto yy5;
			}
		} else {
			if (yych <= '&') {
				if (yych <= '!') goto yy5;
				if (yych <= '"') goto yy32;
				if (yych >= '$') goto yy5;
			} else {
				if (yych <= '\'') goto yy32;
				if (yych == ':') goto yy34;
				goto yy5;
			}
		}
yy119:
		YYDEBUG(119, *YYCURSOR);
		yyleng = (size_t) YYCURSOR - (size_t) yytext;
#line 154 "sapi/phpdbg/phpdbg_lexer.l"
		{
	phpdbg_init_param(yylval, OP_PARAM);
	yylval->str = estrndup(yytext, yyleng);
	yylval->len = yyleng;
	return T_OPCODE;
}
#line 1248 "sapi/phpdbg/phpdbg_lexer.c"
yy120:
		YYDEBUG(120, *YYCURSOR);
		yyaccept = 0;
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych == 'D') goto yy63;
		if (yych == 'd') goto yy63;
		goto yy6;
	}
/* *********************************** */
yyc_PRE_RAW:
	{
		static const unsigned char yybm[] = {
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,  64,   0,   0,   0,  64,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			 64,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0, 128,   0, 
			128, 128, 128, 128, 128, 128, 128, 128, 
			128, 128,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
		};
		YYDEBUG(121, *YYCURSOR);
		YYFILL(2);
		yych = *YYCURSOR;
		if (yych <= '\r') {
			if (yych == '\t') goto yy125;
			if (yych >= '\r') goto yy125;
		} else {
			if (yych <= ' ') {
				if (yych >= ' ') goto yy126;
			} else {
				if (yych == '-') goto yy129;
			}
		}
		YYDEBUG(123, *YYCURSOR);
		++YYCURSOR;
yy124:
		YYDEBUG(124, *YYCURSOR);
		yyleng = (size_t) YYCURSOR - (size_t) yytext;
#line 199 "sapi/phpdbg/phpdbg_lexer.l"
		{
	YYSETCONDITION(RAW);

	YYCURSOR = LEX(text);
	goto restart;
}
#line 1319 "sapi/phpdbg/phpdbg_lexer.c"
yy125:
		YYDEBUG(125, *YYCURSOR);
		yych = *++YYCURSOR;
		if (yybm[0+yych] & 64) {
			goto yy126;
		}
		goto yy124;
yy126:
		YYDEBUG(126, *YYCURSOR);
		++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
		YYDEBUG(127, *YYCURSOR);
		if (yybm[0+yych] & 64) {
			goto yy126;
		}
		YYDEBUG(128, *YYCURSOR);
		yyleng = (size_t) YYCURSOR - (size_t) yytext;
#line 175 "sapi/phpdbg/phpdbg_lexer.l"
		{
	/* ignore whitespace */

	goto restart;
}
#line 1344 "sapi/phpdbg/phpdbg_lexer.c"
yy129:
		YYDEBUG(129, *YYCURSOR);
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych != 'r') goto yy124;
yy130:
		YYDEBUG(130, *YYCURSOR);
		++YYCURSOR;
		YYFILL(2);
		yych = *YYCURSOR;
		YYDEBUG(131, *YYCURSOR);
		if (yybm[0+yych] & 128) {
			goto yy134;
		}
		if (yych <= '\r') {
			if (yych == '\t') goto yy130;
			if (yych >= '\r') goto yy130;
		} else {
			if (yych <= ' ') {
				if (yych >= ' ') goto yy130;
			} else {
				if (yych == '-') goto yy133;
			}
		}
yy132:
		YYDEBUG(132, *YYCURSOR);
		YYCURSOR = YYMARKER;
		goto yy124;
yy133:
		YYDEBUG(133, *YYCURSOR);
		yych = *++YYCURSOR;
		if (yybm[0+yych] & 128) {
			goto yy134;
		}
		goto yy132;
yy134:
		YYDEBUG(134, *YYCURSOR);
		++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
		YYDEBUG(135, *YYCURSOR);
		if (yybm[0+yych] & 128) {
			goto yy134;
		}
		YYDEBUG(136, *YYCURSOR);
		yyleng = (size_t) YYCURSOR - (size_t) yytext;
#line 93 "sapi/phpdbg/phpdbg_lexer.l"
		{
	char *text = yytext + 2;
	while (*++text < '0');
	yylval->num = atoi(text);
	return T_REQ_ID;
}
#line 1397 "sapi/phpdbg/phpdbg_lexer.c"
	}
/* *********************************** */
yyc_RAW:
	{
		static const unsigned char yybm[] = {
			  0, 232, 232, 232, 232, 232, 232, 232, 
			232, 232,   0, 232, 232, 232, 232, 232, 
			232, 232, 232, 232, 232, 232, 232, 232, 
			232, 232, 232, 232, 232, 232, 232, 232, 
			232, 232,  64, 224, 232, 232, 232,  32, 
			232, 232, 232, 232, 232, 232, 232, 232, 
			232, 232, 232, 232, 232, 232, 232, 232, 
			232, 232, 232, 232, 232, 232, 232, 232, 
			232, 232, 232, 232, 232, 232, 232, 232, 
			232, 232, 232, 232, 232, 232, 232, 232, 
			232, 232, 232, 232, 232, 232, 232, 232, 
			232, 232, 232, 232,  16, 232, 232, 232, 
			232, 232, 232, 232, 232, 232, 232, 232, 
			232, 232, 232, 232, 232, 232, 232, 232, 
			232, 232, 232, 232, 232, 232, 232, 232, 
			232, 232, 232, 232, 232, 232, 232, 232, 
			232, 232, 232, 232, 232, 232, 232, 232, 
			232, 232, 232, 232, 232, 232, 232, 232, 
			232, 232, 232, 232, 232, 232, 232, 232, 
			232, 232, 232, 232, 232, 232, 232, 232, 
			232, 232, 232, 232, 232, 232, 232, 232, 
			232, 232, 232, 232, 232, 232, 232, 232, 
			232, 232, 232, 232, 232, 232, 232, 232, 
			232, 232, 232, 232, 232, 232, 232, 232, 
			232, 232, 232, 232, 232, 232, 232, 232, 
			232, 232, 232, 232, 232, 232, 232, 232, 
			232, 232, 232, 232, 232, 232, 232, 232, 
			232, 232, 232, 232, 232, 232, 232, 232, 
			232, 232, 232, 232, 232, 232, 232, 232, 
			232, 232, 232, 232, 232, 232, 232, 232, 
			232, 232, 232, 232, 232, 232, 232, 232, 
			232, 232, 232, 232, 232, 232, 232, 232, 
		};
		YYDEBUG(137, *YYCURSOR);
		YYFILL(1);
		yych = *YYCURSOR;
		if (yybm[0+yych] & 8) {
			goto yy141;
		}
		if (yych <= '\n') goto yy139;
		if (yych <= '"') goto yy144;
		if (yych <= '#') goto yy146;
		if (yych <= '\'') goto yy148;
		goto yy149;
yy139:
		YYDEBUG(139, *YYCURSOR);
		++YYCURSOR;
		YYDEBUG(140, *YYCURSOR);
		yyleng = (size_t) YYCURSOR - (size_t) yytext;
#line 89 "sapi/phpdbg/phpdbg_lexer.l"
		{
	return 0;
}
#line 1456 "sapi/phpdbg/phpdbg_lexer.c"
yy141:
		YYDEBUG(141, *YYCURSOR);
		YYMARKER = ++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
		YYDEBUG(142, *YYCURSOR);
		if (yybm[0+yych] & 8) {
			goto yy141;
		}
		if (yych <= '\n') goto yy143;
		if (yych <= '"') goto yy144;
		if (yych <= '#') goto yy143;
		if (yych <= '\'') goto yy148;
		goto yy149;
yy143:
		YYDEBUG(143, *YYCURSOR);
		yyleng = (size_t) YYCURSOR - (size_t) yytext;
#line 168 "sapi/phpdbg/phpdbg_lexer.l"
		{
	phpdbg_init_param(yylval, STR_PARAM);
	yylval->str = estrdup(yytext);
	yylval->len = yyleng;
	return T_INPUT;
}
#line 1481 "sapi/phpdbg/phpdbg_lexer.c"
yy144:
		YYDEBUG(144, *YYCURSOR);
		++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
		if (yybm[0+yych] & 32) {
			goto yy151;
		}
		if (yych >= '#') goto yy153;
yy145:
		YYDEBUG(145, *YYCURSOR);
		YYCURSOR = YYMARKER;
		goto yy143;
yy146:
		YYDEBUG(146, *YYCURSOR);
		++YYCURSOR;
		YYDEBUG(147, *YYCURSOR);
		yyleng = (size_t) YYCURSOR - (size_t) yytext;
#line 110 "sapi/phpdbg/phpdbg_lexer.l"
		{
	YYSETCONDITION(INITIAL);
	return T_SEPARATOR;
}
#line 1505 "sapi/phpdbg/phpdbg_lexer.c"
yy148:
		YYDEBUG(148, *YYCURSOR);
		++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
		if (yybm[0+yych] & 64) {
			goto yy155;
		}
		if (yych <= '\'') goto yy145;
		goto yy157;
yy149:
		YYDEBUG(149, *YYCURSOR);
		++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
		YYDEBUG(150, *YYCURSOR);
		if (yybm[0+yych] & 16) {
			goto yy149;
		}
		if (yych <= '!') {
			if (yych <= 0x00) goto yy143;
			if (yych == '\n') goto yy143;
			goto yy141;
		} else {
			if (yych <= '"') goto yy159;
			if (yych == '\'') goto yy160;
			goto yy141;
		}
yy151:
		YYDEBUG(151, *YYCURSOR);
		++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
		YYDEBUG(152, *YYCURSOR);
		if (yybm[0+yych] & 32) {
			goto yy151;
		}
		if (yych <= '\n') goto yy145;
		if (yych <= '"') goto yy141;
yy153:
		YYDEBUG(153, *YYCURSOR);
		++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
		YYDEBUG(154, *YYCURSOR);
		if (yybm[0+yych] & 32) {
			goto yy151;
		}
		if (yych <= '\n') goto yy145;
		if (yych <= '"') goto yy161;
		goto yy153;
yy155:
		YYDEBUG(155, *YYCURSOR);
		++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
		YYDEBUG(156, *YYCURSOR);
		if (yybm[0+yych] & 64) {
			goto yy155;
		}
		if (yych <= '\n') goto yy145;
		if (yych <= '\'') goto yy141;
yy157:
		YYDEBUG(157, *YYCURSOR);
		++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
		YYDEBUG(158, *YYCURSOR);
		if (yybm[0+yych] & 64) {
			goto yy155;
		}
		if (yych <= '\n') goto yy145;
		if (yych <= '\'') goto yy163;
		goto yy157;
yy159:
		YYDEBUG(159, *YYCURSOR);
		YYMARKER = ++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
		if (yych <= '"') {
			if (yych <= '\t') {
				if (yych <= 0x00) goto yy143;
				goto yy161;
			} else {
				if (yych <= '\n') goto yy143;
				if (yych <= '!') goto yy161;
				goto yy144;
			}
		} else {
			if (yych <= '\'') {
				if (yych <= '#') goto yy151;
				if (yych <= '&') goto yy161;
				goto yy165;
			} else {
				if (yych == '\\') goto yy166;
				goto yy161;
			}
		}
yy160:
		YYDEBUG(160, *YYCURSOR);
		YYMARKER = ++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
		if (yych <= '"') {
			if (yych <= '\t') {
				if (yych <= 0x00) goto yy143;
				goto yy163;
			} else {
				if (yych <= '\n') goto yy143;
				if (yych <= '!') goto yy163;
				goto yy168;
			}
		} else {
			if (yych <= '\'') {
				if (yych <= '#') goto yy155;
				if (yych <= '&') goto yy163;
				goto yy148;
			} else {
				if (yych == '\\') goto yy169;
				goto yy163;
			}
		}
yy161:
		YYDEBUG(161, *YYCURSOR);
		YYMARKER = ++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
		YYDEBUG(162, *YYCURSOR);
		if (yych <= '"') {
			if (yych <= '\t') {
				if (yych <= 0x00) goto yy143;
				goto yy161;
			} else {
				if (yych <= '\n') goto yy143;
				if (yych <= '!') goto yy161;
				goto yy159;
			}
		} else {
			if (yych <= '\'') {
				if (yych <= '#') goto yy151;
				if (yych <= '&') goto yy161;
				goto yy165;
			} else {
				if (yych == '\\') goto yy166;
				goto yy161;
			}
		}
yy163:
		YYDEBUG(163, *YYCURSOR);
		YYMARKER = ++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
		YYDEBUG(164, *YYCURSOR);
		if (yych <= '"') {
			if (yych <= '\t') {
				if (yych <= 0x00) goto yy143;
				goto yy163;
			} else {
				if (yych <= '\n') goto yy143;
				if (yych <= '!') goto yy163;
				goto yy168;
			}
		} else {
			if (yych <= '\'') {
				if (yych <= '#') goto yy155;
				if (yych <= '&') goto yy163;
				goto yy160;
			} else {
				if (yych == '\\') goto yy169;
				goto yy163;
			}
		}
yy165:
		YYDEBUG(165, *YYCURSOR);
		++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
		if (yybm[0+yych] & 128) {
			goto yy171;
		}
		if (yych <= '\n') goto yy145;
		if (yych <= '"') goto yy163;
		if (yych <= '\'') goto yy151;
		goto yy173;
yy166:
		YYDEBUG(166, *YYCURSOR);
		++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
		YYDEBUG(167, *YYCURSOR);
		if (yych <= '&') {
			if (yych <= 0x00) goto yy143;
			if (yych == '\n') goto yy143;
			goto yy161;
		} else {
			if (yych <= '\'') goto yy175;
			if (yych == '\\') goto yy166;
			goto yy161;
		}
yy168:
		YYDEBUG(168, *YYCURSOR);
		++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
		if (yybm[0+yych] & 128) {
			goto yy171;
		}
		if (yych <= '\n') goto yy145;
		if (yych <= '"') goto yy155;
		if (yych <= '\'') goto yy161;
		goto yy173;
yy169:
		YYDEBUG(169, *YYCURSOR);
		++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
		YYDEBUG(170, *YYCURSOR);
		if (yych <= '!') {
			if (yych <= 0x00) goto yy143;
			if (yych == '\n') goto yy143;
			goto yy163;
		} else {
			if (yych <= '"') goto yy176;
			if (yych == '\\') goto yy169;
			goto yy163;
		}
yy171:
		YYDEBUG(171, *YYCURSOR);
		++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
		YYDEBUG(172, *YYCURSOR);
		if (yybm[0+yych] & 128) {
			goto yy171;
		}
		if (yych <= '\n') goto yy145;
		if (yych <= '"') goto yy163;
		if (yych <= '\'') goto yy161;
yy173:
		YYDEBUG(173, *YYCURSOR);
		++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
		YYDEBUG(174, *YYCURSOR);
		if (yybm[0+yych] & 128) {
			goto yy171;
		}
		if (yych <= '\n') goto yy145;
		if (yych <= '\'') goto yy177;
		goto yy173;
yy175:
		YYDEBUG(175, *YYCURSOR);
		YYMARKER = ++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
		if (yych <= '"') {
			if (yych <= '\t') {
				if (yych <= 0x00) goto yy143;
				goto yy177;
			} else {
				if (yych <= '\n') goto yy143;
				if (yych <= '!') goto yy177;
			}
		} else {
			if (yych <= '\'') {
				if (yych <= '#') goto yy171;
				if (yych <= '&') goto yy177;
				goto yy165;
			} else {
				if (yych == '\\') goto yy179;
				goto yy177;
			}
		}
yy176:
		YYDEBUG(176, *YYCURSOR);
		YYMARKER = ++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
		if (yych <= '"') {
			if (yych <= '\t') {
				if (yych <= 0x00) goto yy143;
			} else {
				if (yych <= '\n') goto yy143;
				if (yych >= '"') goto yy168;
			}
		} else {
			if (yych <= '\'') {
				if (yych <= '#') goto yy171;
				if (yych >= '\'') goto yy175;
			} else {
				if (yych == '\\') goto yy179;
			}
		}
yy177:
		YYDEBUG(177, *YYCURSOR);
		YYMARKER = ++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
		YYDEBUG(178, *YYCURSOR);
		if (yych <= '"') {
			if (yych <= '\t') {
				if (yych <= 0x00) goto yy143;
				goto yy177;
			} else {
				if (yych <= '\n') goto yy143;
				if (yych <= '!') goto yy177;
				goto yy176;
			}
		} else {
			if (yych <= '\'') {
				if (yych <= '#') goto yy171;
				if (yych <= '&') goto yy177;
				goto yy175;
			} else {
				if (yych != '\\') goto yy177;
			}
		}
yy179:
		YYDEBUG(179, *YYCURSOR);
		++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
		YYDEBUG(180, *YYCURSOR);
		if (yych <= '\n') {
			if (yych <= 0x00) goto yy143;
			if (yych <= '\t') goto yy177;
			goto yy143;
		} else {
			if (yych == '\\') goto yy179;
			goto yy177;
		}
	}
/* *********************************** */
yyc_INITIAL:
	{
		static const unsigned char yybm[] = {
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0, 128,   0,   0,   0, 128,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			128,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
			  0,   0,   0,   0,   0,   0,   0,   0, 
		};
		YYDEBUG(181, *YYCURSOR);
		YYFILL(4);
		yych = *YYCURSOR;
		if (yych <= 'E') {
			if (yych <= '\r') {
				if (yych == '\t') goto yy185;
				if (yych >= '\r') goto yy185;
			} else {
				if (yych == ' ') goto yy186;
				if (yych >= 'E') goto yy189;
			}
		} else {
			if (yych <= 'd') {
				if (yych <= 'Q') goto yy183;
				if (yych <= 'R') goto yy190;
				if (yych <= 'S') goto yy191;
			} else {
				if (yych <= 'q') {
					if (yych <= 'e') goto yy189;
				} else {
					if (yych <= 'r') goto yy192;
					if (yych <= 's') goto yy191;
				}
			}
		}
yy183:
		YYDEBUG(183, *YYCURSOR);
		++YYCURSOR;
yy184:
		YYDEBUG(184, *YYCURSOR);
		yyleng = (size_t) YYCURSOR - (size_t) yytext;
#line 206 "sapi/phpdbg/phpdbg_lexer.l"
		{
	YYSETCONDITION(NORMAL);

	YYCURSOR = LEX(text);
	goto restart;
}
#line 1913 "sapi/phpdbg/phpdbg_lexer.c"
yy185:
		YYDEBUG(185, *YYCURSOR);
		yych = *++YYCURSOR;
		if (yybm[0+yych] & 128) {
			goto yy186;
		}
		goto yy184;
yy186:
		YYDEBUG(186, *YYCURSOR);
		++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
		YYDEBUG(187, *YYCURSOR);
		if (yybm[0+yych] & 128) {
			goto yy186;
		}
		YYDEBUG(188, *YYCURSOR);
		yyleng = (size_t) YYCURSOR - (size_t) yytext;
#line 175 "sapi/phpdbg/phpdbg_lexer.l"
		{
	/* ignore whitespace */

	goto restart;
}
#line 1938 "sapi/phpdbg/phpdbg_lexer.c"
yy189:
		YYDEBUG(189, *YYCURSOR);
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych == 'V') goto yy193;
		if (yych == 'v') goto yy193;
		goto yy184;
yy190:
		YYDEBUG(190, *YYCURSOR);
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych == 'U') goto yy195;
		if (yych == 'u') goto yy195;
		goto yy184;
yy191:
		YYDEBUG(191, *YYCURSOR);
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych == 'H') goto yy196;
		if (yych == 'h') goto yy196;
		goto yy184;
yy192:
		YYDEBUG(192, *YYCURSOR);
		yych = *(YYMARKER = ++YYCURSOR);
		if (yych <= 0x1F) {
			if (yych <= '\t') {
				if (yych <= 0x08) goto yy184;
				goto yy197;
			} else {
				if (yych == '\r') goto yy197;
				goto yy184;
			}
		} else {
			if (yych <= 'U') {
				if (yych <= ' ') goto yy197;
				if (yych <= 'T') goto yy184;
				goto yy195;
			} else {
				if (yych == 'u') goto yy195;
				goto yy184;
			}
		}
yy193:
		YYDEBUG(193, *YYCURSOR);
		yych = *++YYCURSOR;
		if (yych <= '\f') {
			if (yych == '\t') goto yy200;
		} else {
			if (yych <= '\r') goto yy200;
			if (yych == ' ') goto yy200;
		}
yy194:
		YYDEBUG(194, *YYCURSOR);
		YYCURSOR = YYMARKER;
		goto yy184;
yy195:
		YYDEBUG(195, *YYCURSOR);
		yych = *++YYCURSOR;
		if (yych == 'N') goto yy203;
		if (yych == 'n') goto yy203;
		goto yy194;
yy196:
		YYDEBUG(196, *YYCURSOR);
		yych = *++YYCURSOR;
		if (yych <= '\f') {
			if (yych == '\t') goto yy204;
			goto yy194;
		} else {
			if (yych <= '\r') goto yy204;
			if (yych == ' ') goto yy204;
			goto yy194;
		}
yy197:
		YYDEBUG(197, *YYCURSOR);
		++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
		YYDEBUG(198, *YYCURSOR);
		if (yych <= '\f') {
			if (yych == '\t') goto yy197;
		} else {
			if (yych <= '\r') goto yy197;
			if (yych == ' ') goto yy197;
		}
		YYDEBUG(199, *YYCURSOR);
		yyleng = (size_t) YYCURSOR - (size_t) yytext;
#line 193 "sapi/phpdbg/phpdbg_lexer.l"
		{
	YYSETCONDITION(PRE_RAW);
	phpdbg_init_param(yylval, EMPTY_PARAM);
	return T_RUN;
}
#line 2028 "sapi/phpdbg/phpdbg_lexer.c"
yy200:
		YYDEBUG(200, *YYCURSOR);
		++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
		YYDEBUG(201, *YYCURSOR);
		if (yych <= '\f') {
			if (yych == '\t') goto yy200;
		} else {
			if (yych <= '\r') goto yy200;
			if (yych == ' ') goto yy200;
		}
		YYDEBUG(202, *YYCURSOR);
		yyleng = (size_t) YYCURSOR - (size_t) yytext;
#line 181 "sapi/phpdbg/phpdbg_lexer.l"
		{
	YYSETCONDITION(PRE_RAW);
	phpdbg_init_param(yylval, EMPTY_PARAM);
	return T_EVAL;
}
#line 2049 "sapi/phpdbg/phpdbg_lexer.c"
yy203:
		YYDEBUG(203, *YYCURSOR);
		yych = *++YYCURSOR;
		if (yych <= '\f') {
			if (yych == '\t') goto yy197;
			goto yy194;
		} else {
			if (yych <= '\r') goto yy197;
			if (yych == ' ') goto yy197;
			goto yy194;
		}
yy204:
		YYDEBUG(204, *YYCURSOR);
		++YYCURSOR;
		YYFILL(1);
		yych = *YYCURSOR;
		YYDEBUG(205, *YYCURSOR);
		if (yych <= '\f') {
			if (yych == '\t') goto yy204;
		} else {
			if (yych <= '\r') goto yy204;
			if (yych == ' ') goto yy204;
		}
		YYDEBUG(206, *YYCURSOR);
		yyleng = (size_t) YYCURSOR - (size_t) yytext;
#line 187 "sapi/phpdbg/phpdbg_lexer.l"
		{
	YYSETCONDITION(PRE_RAW);
	phpdbg_init_param(yylval, EMPTY_PARAM);
	return T_SHELL;
}
#line 2081 "sapi/phpdbg/phpdbg_lexer.c"
	}
}
#line 213 "sapi/phpdbg/phpdbg_lexer.l"

}
