add T_POW (**) operator
authordatibbaw <datibbaw@php.net>
Tue, 19 Nov 2013 07:36:06 +0000 (15:36 +0800)
committerBob Weinand <bobwei9@hotmail.com>
Thu, 6 Feb 2014 13:41:21 +0000 (14:41 +0100)
Fixed recognition of the operator

Added opcode, still doing multiply instead of pow()

opcode now always returns int(42)

The right answer, but always a float

Yanked code from pow() implementation.

Should not handle negative long as exponent ourselves

Added test cases from pow()

Moved precedence higher than '~'

Added GMP operator overloading

Added ZEND_ASSIGN_POW (**=) operator.

Added pow() as a language construct.

Adjusted test cases for changed precedence.

Reduced pow() to shell function around ZEND_API pow_function()

Reduced test case to only contain edge cases
Added overloading test case

Moved unary minus above T_POW

Revert "Added pow() as a language construct."

Bad bad bad idea.

This reverts commit f60b98cf7a8371233d800a6faa286ddba4432d02.

Reverted unary minus behaviour due to previous revert.
Convert arrays to int(0)
Exponent with array as a base becomes int(0)

Rebase against master

Fixed tokenizer test case

20 files changed:
Zend/zend_ini_scanner.c
Zend/zend_ini_scanner_defs.h
Zend/zend_language_parser.y
Zend/zend_language_scanner.c
Zend/zend_language_scanner.l
Zend/zend_language_scanner_defs.h
Zend/zend_opcode.c
Zend/zend_operators.c
Zend/zend_operators.h
Zend/zend_vm_def.h
Zend/zend_vm_execute.h
Zend/zend_vm_opcodes.c
Zend/zend_vm_opcodes.h
ext/gmp/gmp.c
ext/gmp/tests/overloading.phpt
ext/standard/math.c
ext/standard/tests/math/pow-operator.phpt [new file with mode: 0644]
ext/standard/tests/math/pow_variation1.phpt
ext/standard/tests/math/pow_variation1_64bit.phpt
ext/tokenizer/tests/bug60097.phpt

index c73f3ceddae0771e47c58ddcd98779ed44eb373a..521e98e25713e0606d680b7c1f3d29404555922e 100644 (file)
-/* Generated by re2c 0.13.5 */\r
-#line 1 "Zend/zend_ini_scanner.l"\r
-/*\r
-   +----------------------------------------------------------------------+\r
-   | Zend Engine                                                          |\r
-   +----------------------------------------------------------------------+\r
-   | Copyright (c) 1998-2014 Zend Technologies Ltd. (http://www.zend.com) |\r
-   +----------------------------------------------------------------------+\r
-   | This source file is subject to version 2.00 of the Zend license,     |\r
-   | that is bundled with this package in the file LICENSE, and is        |\r
-   | available through the world-wide-web at the following url:           |\r
-   | http://www.zend.com/license/2_00.txt.                                |\r
-   | If you did not receive a copy of the Zend license and are unable to  |\r
-   | obtain it through the world-wide-web, please send a note to          |\r
-   | license@zend.com so we can mail you a copy immediately.              |\r
-   +----------------------------------------------------------------------+\r
-   | Authors: Zeev Suraski <zeev@zend.com>                                |\r
-   |          Jani Taskinen <jani@php.net>                                |\r
-   |          Marcus Boerger <helly@php.net>                              |\r
-   |          Nuno Lopes <nlopess@php.net>                                |\r
-   |          Scott MacVicar <scottmac@php.net>                           |\r
-   +----------------------------------------------------------------------+\r
-*/\r
-\r
-/* $Id$ */\r
-\r
-#include <errno.h>\r
-#include "zend.h"\r
-#include "zend_globals.h"\r
-#include <zend_ini_parser.h>\r
-#include "zend_ini_scanner.h"\r
-\r
-#if 0\r
-# define YYDEBUG(s, c) printf("state: %d char: %c\n", s, c)\r
-#else\r
-# define YYDEBUG(s, c)\r
-#endif\r
-\r
-#include "zend_ini_scanner_defs.h"\r
-\r
-#define YYCTYPE   unsigned char\r
-/* allow the scanner to read one null byte after the end of the string (from ZEND_MMAP_AHEAD)\r
- * so that if will be able to terminate to match the current token (e.g. non-enclosed string) */\r
-#define YYFILL(n) { if (YYCURSOR > YYLIMIT) return 0; }\r
-#define YYCURSOR  SCNG(yy_cursor)\r
-#define YYLIMIT   SCNG(yy_limit)\r
-#define YYMARKER  SCNG(yy_marker)\r
-\r
-#define YYGETCONDITION()  SCNG(yy_state)\r
-#define YYSETCONDITION(s) SCNG(yy_state) = s\r
-\r
-#define STATE(name)  yyc##name\r
-\r
-/* emulate flex constructs */\r
-#define BEGIN(state) YYSETCONDITION(STATE(state))\r
-#define YYSTATE      YYGETCONDITION()\r
-#define yytext       ((char*)SCNG(yy_text))\r
-#define yyleng       SCNG(yy_leng)\r
-#define yyless(x)    do {      YYCURSOR = (unsigned char*)yytext + x; \\r
-                                                       yyleng   = (unsigned int)x; } while(0)\r
-\r
-/* #define yymore()     goto yymore_restart */\r
-\r
-/* perform sanity check. If this message is triggered you should\r
-   increase the ZEND_MMAP_AHEAD value in the zend_streams.h file */\r
-#define YYMAXFILL 6\r
-#if ZEND_MMAP_AHEAD < (YYMAXFILL + 1)\r
-# error ZEND_MMAP_AHEAD should be greater than YYMAXFILL\r
-#endif\r
-\r
-\r
-/* How it works (for the core ini directives):\r
- * ===========================================\r
- *\r
- * 1. Scanner scans file for tokens and passes them to parser.\r
- * 2. Parser parses the tokens and passes the name/value pairs to the callback\r
- *    function which stores them in the configuration hash table.\r
- * 3. Later REGISTER_INI_ENTRIES() is called which triggers the actual\r
- *    registering of ini entries and uses zend_get_configuration_directive()\r
- *    to fetch the previously stored name/value pair from configuration hash table\r
- *    and registers the static ini entries which match the name to the value\r
- *    into EG(ini_directives) hash table.\r
- * 4. PATH section entries are used per-request from down to top, each overriding\r
- *    previous if one exists. zend_alter_ini_entry() is called for each entry.\r
- *    Settings in PATH section are ZEND_INI_SYSTEM accessible and thus mimics the\r
- *    php_admin_* directives used within Apache httpd.conf when PHP is compiled as\r
- *    module for Apache.\r
- * 5. User defined ini files (like .htaccess for apache) are parsed for each request and\r
- *    stored in separate hash defined by SAPI.\r
- */\r
-\r
-/* TODO: (ordered by importance :-)\r
- * ===============================================================================\r
- *\r
- *  - Separate constant lookup totally from plain strings (using CONSTANT pattern)\r
- *  - Add #if .. #else .. #endif and ==, !=, <, > , <=, >= operators\r
- *  - Add #include "some.ini"\r
- *  - Allow variables to refer to options also when using parse_ini_file()\r
- *\r
- */\r
-\r
-/* Globals Macros */\r
-#define SCNG   INI_SCNG\r
-#ifdef ZTS\r
-ZEND_API ts_rsrc_id ini_scanner_globals_id;\r
-#else\r
-ZEND_API zend_ini_scanner_globals ini_scanner_globals;\r
-#endif\r
-\r
-/* Eat leading whitespace */\r
-#define EAT_LEADING_WHITESPACE()                     \\r
-       while (yytext[0]) {                              \\r
-               if (yytext[0] == ' ' || yytext[0] == '\t') { \\r
-                       SCNG(yy_text)++;                         \\r
-                       yyleng--;                                \\r
-               } else {                                     \\r
-                       break;                                   \\r
-               }                                            \\r
-       }\r
-\r
-/* Eat trailing whitespace + extra char */\r
-#define EAT_TRAILING_WHITESPACE_EX(ch)              \\r
-       while (yyleng > 0 && (                          \\r
-               (ch != 'X' && yytext[yyleng - 1] ==  ch) || \\r
-               yytext[yyleng - 1] == '\n' ||               \\r
-               yytext[yyleng - 1] == '\r' ||               \\r
-               yytext[yyleng - 1] == '\t' ||               \\r
-               yytext[yyleng - 1] == ' ')                  \\r
-       ) {                                             \\r
-               yyleng--;                                   \\r
-       }\r
-\r
-/* Eat trailing whitespace */\r
-#define EAT_TRAILING_WHITESPACE()      EAT_TRAILING_WHITESPACE_EX('X')\r
-\r
-#define zend_ini_copy_value(retval, str, len) {  \\r
-       Z_STRVAL_P(retval) = zend_strndup(str, len); \\r
-       Z_STRLEN_P(retval) = len;                    \\r
-       Z_TYPE_P(retval) = IS_STRING;                \\r
-}\r
-\r
-#define RETURN_TOKEN(type, str, len) {           \\r
-       zend_ini_copy_value(ini_lval, str, len);     \\r
-       return type;                                 \\r
-}\r
-\r
-static void _yy_push_state(int new_state TSRMLS_DC)\r
-{\r
-       zend_stack_push(&SCNG(state_stack), (void *) &YYGETCONDITION(), sizeof(int));\r
-       YYSETCONDITION(new_state);\r
-}\r
-\r
-#define yy_push_state(state_and_tsrm) _yy_push_state(yyc##state_and_tsrm)\r
-\r
-static void yy_pop_state(TSRMLS_D)\r
-{\r
-       int *stack_state;\r
-       zend_stack_top(&SCNG(state_stack), (void **) &stack_state);\r
-       YYSETCONDITION(*stack_state);\r
-       zend_stack_del_top(&SCNG(state_stack));\r
-}\r
-\r
-static void yy_scan_buffer(char *str, unsigned int len TSRMLS_DC)\r
-{\r
-       YYCURSOR = (YYCTYPE*)str;\r
-       SCNG(yy_start) = YYCURSOR;\r
-       YYLIMIT  = YYCURSOR + len;\r
-}\r
-\r
-#define ini_filename SCNG(filename)\r
-\r
-/* {{{ init_ini_scanner()\r
-*/\r
-static int init_ini_scanner(int scanner_mode, zend_file_handle *fh TSRMLS_DC)\r
-{\r
-       /* Sanity check */\r
-       if (scanner_mode != ZEND_INI_SCANNER_NORMAL && scanner_mode != ZEND_INI_SCANNER_RAW) {\r
-               zend_error(E_WARNING, "Invalid scanner mode");\r
-               return FAILURE;\r
-       }\r
-\r
-       SCNG(lineno) = 1;\r
-       SCNG(scanner_mode) = scanner_mode;\r
-       SCNG(yy_in) = fh;\r
-\r
-       if (fh != NULL) {\r
-               ini_filename = zend_strndup(fh->filename, strlen(fh->filename));\r
-       } else {\r
-               ini_filename = NULL;\r
-       }\r
-\r
-       zend_stack_init(&SCNG(state_stack));\r
-       BEGIN(INITIAL);\r
-\r
-       return SUCCESS;\r
-}\r
-/* }}} */\r
-\r
-/* {{{ shutdown_ini_scanner()\r
-*/\r
-void shutdown_ini_scanner(TSRMLS_D)\r
-{\r
-       zend_stack_destroy(&SCNG(state_stack));\r
-       if (ini_filename) {\r
-               free(ini_filename);\r
-       }\r
-}\r
-/* }}} */\r
-\r
-/* {{{ zend_ini_scanner_get_lineno()\r
-*/\r
-int zend_ini_scanner_get_lineno(TSRMLS_D)\r
-{\r
-       return SCNG(lineno);\r
-}\r
-/* }}} */\r
-\r
-/* {{{ zend_ini_scanner_get_filename()\r
-*/\r
-char *zend_ini_scanner_get_filename(TSRMLS_D)\r
-{\r
-       return ini_filename ? ini_filename : "Unknown";\r
-}\r
-/* }}} */\r
-\r
-/* {{{ zend_ini_open_file_for_scanning()\r
-*/\r
-int zend_ini_open_file_for_scanning(zend_file_handle *fh, int scanner_mode TSRMLS_DC)\r
-{\r
-       char *buf;\r
-       size_t size;\r
-\r
-       if (zend_stream_fixup(fh, &buf, &size TSRMLS_CC) == FAILURE) {\r
-               return FAILURE;\r
-       }\r
-\r
-       if (init_ini_scanner(scanner_mode, fh TSRMLS_CC) == FAILURE) {\r
-               zend_file_handle_dtor(fh TSRMLS_CC);\r
-               return FAILURE;\r
-       }\r
-\r
-       yy_scan_buffer(buf, size TSRMLS_CC);\r
-\r
-       return SUCCESS;\r
-}\r
-/* }}} */\r
-\r
-/* {{{ zend_ini_prepare_string_for_scanning()\r
-*/\r
-int zend_ini_prepare_string_for_scanning(char *str, int scanner_mode TSRMLS_DC)\r
-{\r
-       int len = strlen(str);\r
-\r
-       if (init_ini_scanner(scanner_mode, NULL TSRMLS_CC) == FAILURE) {\r
-               return FAILURE;\r
-       }\r
-\r
-       yy_scan_buffer(str, len TSRMLS_CC);\r
-\r
-       return SUCCESS;\r
-}\r
-/* }}} */\r
-\r
-/* {{{ zend_ini_escape_string()\r
- */\r
-static void zend_ini_escape_string(zval *lval, char *str, int len, char quote_type TSRMLS_DC)\r
-{\r
-       register char *s, *t;\r
-       char *end;\r
-\r
-       zend_ini_copy_value(lval, str, len);\r
-\r
-       /* convert escape sequences */\r
-       s = t = Z_STRVAL_P(lval);\r
-       end = s + Z_STRLEN_P(lval);\r
-\r
-       while (s < end) {\r
-               if (*s == '\\') {\r
-                       s++;\r
-                       if (s >= end) {\r
-                               *t++ = '\\';\r
-                               continue;\r
-                       }\r
-                       switch (*s) {\r
-                               case '"':\r
-                                       if (*s != quote_type) {\r
-                                               *t++ = '\\';\r
-                                               *t++ = *s;\r
-                                               break;\r
-                                       }\r
-                               case '\\':\r
-                               case '$':\r
-                                       *t++ = *s;\r
-                                       Z_STRLEN_P(lval)--;\r
-                                       break;\r
-                               default:\r
-                                       *t++ = '\\';\r
-                                       *t++ = *s;\r
-                                       break;\r
-                       }\r
-               } else {\r
-                       *t++ = *s;\r
-               }\r
-               if (*s == '\n' || (*s == '\r' && (*(s+1) != '\n'))) {\r
-                       SCNG(lineno)++;\r
-               }\r
-               s++;\r
-       }\r
-       *t = 0;\r
-}\r
-/* }}} */\r
-\r
-int ini_lex(zval *ini_lval TSRMLS_DC)\r
-{\r
-restart:\r
-       SCNG(yy_text) = YYCURSOR;\r
-\r
-/* yymore_restart: */\r
-       /* detect EOF */\r
-       if (YYCURSOR >= YYLIMIT) {\r
-               if (YYSTATE == STATE(ST_VALUE) || YYSTATE == STATE(ST_RAW)) {\r
-                       BEGIN(INITIAL);\r
-                       return END_OF_LINE;\r
-               }\r
-               return 0;\r
-       }\r
-\r
-       /* Eat any UTF-8 BOM we find in the first 3 bytes */\r
-       if (YYCURSOR == SCNG(yy_start) && YYCURSOR + 3 < YYLIMIT) {\r
-               if (memcmp(YYCURSOR, "\xef\xbb\xbf", 3) == 0) {\r
-                       YYCURSOR += 3;\r
-                       goto restart;\r
-               }\r
-       }\r
-\r
-#line 337 "Zend/zend_ini_scanner.c"\r
-{\r
-       YYCTYPE yych;\r
-       unsigned int yyaccept = 0;\r
-       if (YYGETCONDITION() < 4) {\r
-               if (YYGETCONDITION() < 2) {\r
-                       if (YYGETCONDITION() < 1) {\r
-                               goto yyc_INITIAL;\r
-                       } else {\r
-                               goto yyc_ST_OFFSET;\r
-                       }\r
-               } else {\r
-                       if (YYGETCONDITION() < 3) {\r
-                               goto yyc_ST_SECTION_VALUE;\r
-                       } else {\r
-                               goto yyc_ST_VALUE;\r
-                       }\r
-               }\r
-       } else {\r
-               if (YYGETCONDITION() < 6) {\r
-                       if (YYGETCONDITION() < 5) {\r
-                               goto yyc_ST_SECTION_RAW;\r
-                       } else {\r
-                               goto yyc_ST_DOUBLE_QUOTES;\r
-                       }\r
-               } else {\r
-                       if (YYGETCONDITION() < 7) {\r
-                               goto yyc_ST_VARNAME;\r
-                       } else {\r
-                               goto yyc_ST_RAW;\r
-                       }\r
-               }\r
-       }\r
-/* *********************************** */\r
-yyc_INITIAL:\r
-       {\r
-               static const unsigned char yybm[] = {\r
-                       144, 144, 144, 144, 144, 144, 144, 144, \r
-                       144, 160,   0, 144, 144,   0, 144, 144, \r
-                       144, 144, 144, 144, 144, 144, 144, 144, \r
-                       144, 144, 144, 144, 144, 144, 144, 144, \r
-                       240, 128, 128, 144, 128, 144, 128, 144, \r
-                       128, 128, 144, 144, 144, 144, 144, 144, \r
-                       144, 144, 144, 144, 144, 144, 144, 144, \r
-                       144, 144, 144, 128, 144, 128, 144, 144, \r
-                       144, 144, 144, 144, 144, 144, 144, 144, \r
-                       144, 144, 144, 144, 144, 144, 144, 144, \r
-                       144, 144, 144, 144, 144, 144, 144, 144, \r
-                       144, 144, 144, 128, 144, 144, 128, 144, \r
-                       144, 144, 144, 144, 144, 144, 144, 144, \r
-                       144, 144, 144, 144, 144, 144, 144, 144, \r
-                       144, 144, 144, 144, 144, 144, 144, 144, \r
-                       144, 144, 144, 128, 128, 128, 128, 144, \r
-                       144, 144, 144, 144, 144, 144, 144, 144, \r
-                       144, 144, 144, 144, 144, 144, 144, 144, \r
-                       144, 144, 144, 144, 144, 144, 144, 144, \r
-                       144, 144, 144, 144, 144, 144, 144, 144, \r
-                       144, 144, 144, 144, 144, 144, 144, 144, \r
-                       144, 144, 144, 144, 144, 144, 144, 144, \r
-                       144, 144, 144, 144, 144, 144, 144, 144, \r
-                       144, 144, 144, 144, 144, 144, 144, 144, \r
-                       144, 144, 144, 144, 144, 144, 144, 144, \r
-                       144, 144, 144, 144, 144, 144, 144, 144, \r
-                       144, 144, 144, 144, 144, 144, 144, 144, \r
-                       144, 144, 144, 144, 144, 144, 144, 144, \r
-                       144, 144, 144, 144, 144, 144, 144, 144, \r
-                       144, 144, 144, 144, 144, 144, 144, 144, \r
-                       144, 144, 144, 144, 144, 144, 144, 144, \r
-                       144, 144, 144, 144, 144, 144, 144, 144, \r
-               };\r
-\r
-               YYDEBUG(0, *YYCURSOR);\r
-               YYFILL(5);\r
-               yych = *YYCURSOR;\r
-               YYDEBUG(-1, yych);\r
-               switch (yych) {\r
-               case '\t':      goto yy4;\r
-               case '\n':      goto yy6;\r
-               case '\r':      goto yy8;\r
-               case ' ':       goto yy9;\r
-               case '!':\r
-               case '"':\r
-               case '$':\r
-               case '&':\r
-               case '(':\r
-               case ')':\r
-               case '^':\r
-               case '{':\r
-               case '|':\r
-               case '}':\r
-               case '~':       goto yy10;\r
-               case '#':       goto yy12;\r
-               case '%':\r
-               case '\'':\r
-               case '*':\r
-               case '+':\r
-               case ',':\r
-               case '-':\r
-               case '.':\r
-               case '/':\r
-               case ':':\r
-               case '<':\r
-               case '>':\r
-               case '?':\r
-               case '@':\r
-               case ']':       goto yy13;\r
-               case ';':       goto yy14;\r
-               case '=':       goto yy16;\r
-               case 'F':\r
-               case 'f':       goto yy18;\r
-               case 'N':\r
-               case 'n':       goto yy19;\r
-               case 'O':\r
-               case 'o':       goto yy20;\r
-               case 'T':\r
-               case 't':       goto yy21;\r
-               case 'Y':\r
-               case 'y':       goto yy22;\r
-               case '[':       goto yy23;\r
-               default:        goto yy2;\r
-               }\r
-yy2:\r
-               YYDEBUG(2, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               yych = *YYCURSOR;\r
-               goto yy26;\r
-yy3:\r
-               YYDEBUG(3, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 429 "Zend/zend_ini_scanner.l"\r
-               { /* Get option name */\r
-       /* Eat leading whitespace */\r
-       EAT_LEADING_WHITESPACE();\r
-\r
-       /* Eat trailing whitespace */\r
-       EAT_TRAILING_WHITESPACE();\r
-\r
-       RETURN_TOKEN(TC_LABEL, yytext, yyleng);\r
-}\r
-#line 476 "Zend/zend_ini_scanner.c"\r
-yy4:\r
-               YYDEBUG(4, *YYCURSOR);\r
-               yyaccept = 0;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               goto yy68;\r
-yy5:\r
-               YYDEBUG(5, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 575 "Zend/zend_ini_scanner.l"\r
-               {\r
-       /* eat whitespace */\r
-       goto restart;\r
-}\r
-#line 490 "Zend/zend_ini_scanner.c"\r
-yy6:\r
-               YYDEBUG(6, *YYCURSOR);\r
-               ++YYCURSOR;\r
-yy7:\r
-               YYDEBUG(7, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 580 "Zend/zend_ini_scanner.l"\r
-               {\r
-       SCNG(lineno)++;\r
-       return END_OF_LINE;\r
-}\r
-#line 502 "Zend/zend_ini_scanner.c"\r
-yy8:\r
-               YYDEBUG(8, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               if (yych == '\n') goto yy71;\r
-               goto yy7;\r
-yy9:\r
-               YYDEBUG(9, *YYCURSOR);\r
-               yyaccept = 1;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               if (yych <= ' ') {\r
-                       if (yych <= '\n') {\r
-                               if (yych <= 0x08) goto yy26;\r
-                               if (yych <= '\t') goto yy67;\r
-                               goto yy71;\r
-                       } else {\r
-                               if (yych == '\r') goto yy72;\r
-                               if (yych <= 0x1F) goto yy26;\r
-                               goto yy69;\r
-                       }\r
-               } else {\r
-                       if (yych <= ':') {\r
-                               if (yych == '#') goto yy58;\r
-                               goto yy26;\r
-                       } else {\r
-                               if (yych <= ';') goto yy53;\r
-                               if (yych == '=') goto yy51;\r
-                               goto yy26;\r
-                       }\r
-               }\r
-yy10:\r
-               YYDEBUG(10, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYDEBUG(11, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 503 "Zend/zend_ini_scanner.l"\r
-               { /* Disallow these chars outside option values */\r
-       return yytext[0];\r
-}\r
-#line 541 "Zend/zend_ini_scanner.c"\r
-yy12:\r
-               YYDEBUG(12, *YYCURSOR);\r
-               yyaccept = 1;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               goto yy59;\r
-yy13:\r
-               YYDEBUG(13, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               goto yy26;\r
-yy14:\r
-               YYDEBUG(14, *YYCURSOR);\r
-               yyaccept = 2;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               goto yy54;\r
-               YYDEBUG(15, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 603 "Zend/zend_ini_scanner.l"\r
-               {\r
-       return 0;\r
-}\r
-#line 562 "Zend/zend_ini_scanner.c"\r
-yy16:\r
-               YYDEBUG(16, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               yych = *YYCURSOR;\r
-               goto yy52;\r
-yy17:\r
-               YYDEBUG(17, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 439 "Zend/zend_ini_scanner.l"\r
-               { /* Start option value */\r
-       if (SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW) {\r
-               yy_push_state(ST_RAW TSRMLS_CC);\r
-       } else {\r
-               yy_push_state(ST_VALUE TSRMLS_CC);\r
-       }\r
-       return '=';\r
-}\r
-#line 580 "Zend/zend_ini_scanner.c"\r
-yy18:\r
-               YYDEBUG(18, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               if (yych == 'A') goto yy48;\r
-               if (yych == 'a') goto yy48;\r
-               goto yy26;\r
-yy19:\r
-               YYDEBUG(19, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               if (yych <= 'U') {\r
-                       if (yych == 'O') goto yy44;\r
-                       if (yych <= 'T') goto yy26;\r
-                       goto yy45;\r
-               } else {\r
-                       if (yych <= 'o') {\r
-                               if (yych <= 'n') goto yy26;\r
-                               goto yy44;\r
-                       } else {\r
-                               if (yych == 'u') goto yy45;\r
-                               goto yy26;\r
-                       }\r
-               }\r
-yy20:\r
-               YYDEBUG(20, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               if (yych <= 'N') {\r
-                       if (yych == 'F') goto yy38;\r
-                       if (yych <= 'M') goto yy26;\r
-                       goto yy31;\r
-               } else {\r
-                       if (yych <= 'f') {\r
-                               if (yych <= 'e') goto yy26;\r
-                               goto yy38;\r
-                       } else {\r
-                               if (yych == 'n') goto yy31;\r
-                               goto yy26;\r
-                       }\r
-               }\r
-yy21:\r
-               YYDEBUG(21, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               if (yych == 'R') goto yy36;\r
-               if (yych == 'r') goto yy36;\r
-               goto yy26;\r
-yy22:\r
-               YYDEBUG(22, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               if (yych == 'E') goto yy27;\r
-               if (yych == 'e') goto yy27;\r
-               goto yy26;\r
-yy23:\r
-               YYDEBUG(23, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYDEBUG(24, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 358 "Zend/zend_ini_scanner.l"\r
-               { /* Section start */\r
-       /* Enter section data lookup state */\r
-       if (SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW) {\r
-               yy_push_state(ST_SECTION_RAW TSRMLS_CC);\r
-       } else {\r
-               yy_push_state(ST_SECTION_VALUE TSRMLS_CC);\r
-       }\r
-       return TC_SECTION;\r
-}\r
-#line 646 "Zend/zend_ini_scanner.c"\r
-yy25:\r
-               YYDEBUG(25, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-yy26:\r
-               YYDEBUG(26, *YYCURSOR);\r
-               if (yybm[0+yych] & 16) {\r
-                       goto yy25;\r
-               }\r
-               if (yych == '[') goto yy28;\r
-               goto yy3;\r
-yy27:\r
-               YYDEBUG(27, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               if (yych == 'S') goto yy31;\r
-               if (yych == 's') goto yy31;\r
-               goto yy26;\r
-yy28:\r
-               YYDEBUG(28, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               YYDEBUG(29, *YYCURSOR);\r
-               if (yybm[0+yych] & 32) {\r
-                       goto yy28;\r
-               }\r
-               YYDEBUG(30, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 383 "Zend/zend_ini_scanner.l"\r
-               { /* Start of option with offset */\r
-       /* Eat leading whitespace */\r
-       EAT_LEADING_WHITESPACE();\r
-       \r
-       /* Eat trailing whitespace and [ */\r
-       EAT_TRAILING_WHITESPACE_EX('[');\r
-\r
-       /* Enter offset lookup state */\r
-       yy_push_state(ST_OFFSET TSRMLS_CC);\r
-\r
-       RETURN_TOKEN(TC_OFFSET, yytext, yyleng);\r
-}\r
-#line 689 "Zend/zend_ini_scanner.c"\r
-yy31:\r
-               YYDEBUG(31, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               YYDEBUG(32, *YYCURSOR);\r
-               if (yybm[0+yych] & 64) {\r
-                       goto yy31;\r
-               }\r
-               if (yych <= '\'') {\r
-                       if (yych <= ' ') {\r
-                               if (yych <= '\n') {\r
-                                       if (yych <= 0x08) goto yy25;\r
-                                       if (yych <= '\t') goto yy34;\r
-                               } else {\r
-                                       if (yych != '\r') goto yy25;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '$') {\r
-                                       if (yych == '#') goto yy25;\r
-                               } else {\r
-                                       if (yych != '&') goto yy25;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= 'Z') {\r
-                               if (yych <= ';') {\r
-                                       if (yych <= ')') goto yy33;\r
-                                       if (yych <= ':') goto yy25;\r
-                               } else {\r
-                                       if (yych != '=') goto yy25;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '^') {\r
-                                       if (yych <= '[') goto yy28;\r
-                                       if (yych <= ']') goto yy25;\r
-                               } else {\r
-                                       if (yych <= 'z') goto yy25;\r
-                                       if (yych >= 0x7F) goto yy25;\r
-                               }\r
-                       }\r
-               }\r
-yy33:\r
-               YYDEBUG(33, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 421 "Zend/zend_ini_scanner.l"\r
-               { /* TRUE value (when used outside option value/offset this causes parse error!) */\r
-       RETURN_TOKEN(BOOL_TRUE, "1", 1);\r
-}\r
-#line 739 "Zend/zend_ini_scanner.c"\r
-yy34:\r
-               YYDEBUG(34, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               YYDEBUG(35, *YYCURSOR);\r
-               if (yych == '\t') goto yy34;\r
-               if (yych == ' ') goto yy34;\r
-               goto yy33;\r
-yy36:\r
-               YYDEBUG(36, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               if (yych == 'U') goto yy37;\r
-               if (yych != 'u') goto yy26;\r
-yy37:\r
-               YYDEBUG(37, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               if (yych == 'E') goto yy31;\r
-               if (yych == 'e') goto yy31;\r
-               goto yy26;\r
-yy38:\r
-               YYDEBUG(38, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               if (yych == 'F') goto yy39;\r
-               if (yych != 'f') goto yy26;\r
-yy39:\r
-               YYDEBUG(39, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               YYDEBUG(40, *YYCURSOR);\r
-               if (yych <= '&') {\r
-                       if (yych <= 0x1F) {\r
-                               if (yych <= '\n') {\r
-                                       if (yych <= 0x08) goto yy25;\r
-                                       if (yych <= '\t') goto yy42;\r
-                               } else {\r
-                                       if (yych != '\r') goto yy25;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '#') {\r
-                                       if (yych <= ' ') goto yy39;\r
-                                       if (yych >= '#') goto yy25;\r
-                               } else {\r
-                                       if (yych == '%') goto yy25;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= '=') {\r
-                               if (yych <= ':') {\r
-                                       if (yych <= '\'') goto yy25;\r
-                                       if (yych >= '*') goto yy25;\r
-                               } else {\r
-                                       if (yych == '<') goto yy25;\r
-                               }\r
-                       } else {\r
-                               if (yych <= ']') {\r
-                                       if (yych == '[') goto yy28;\r
-                                       goto yy25;\r
-                               } else {\r
-                                       if (yych <= '^') goto yy41;\r
-                                       if (yych <= 'z') goto yy25;\r
-                                       if (yych >= 0x7F) goto yy25;\r
-                               }\r
-                       }\r
-               }\r
-yy41:\r
-               YYDEBUG(41, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 425 "Zend/zend_ini_scanner.l"\r
-               { /* FALSE value (when used outside option value/offset this causes parse error!)*/\r
-       RETURN_TOKEN(BOOL_FALSE, "", 0);\r
-}\r
-#line 813 "Zend/zend_ini_scanner.c"\r
-yy42:\r
-               YYDEBUG(42, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               YYDEBUG(43, *YYCURSOR);\r
-               if (yych == '\t') goto yy42;\r
-               if (yych == ' ') goto yy42;\r
-               goto yy41;\r
-yy44:\r
-               YYDEBUG(44, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               if (yych <= '\'') {\r
-                       if (yych <= 0x1F) {\r
-                               if (yych <= '\n') {\r
-                                       if (yych <= 0x08) goto yy26;\r
-                                       if (yych <= '\t') goto yy42;\r
-                                       goto yy41;\r
-                               } else {\r
-                                       if (yych == '\r') goto yy41;\r
-                                       goto yy26;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '#') {\r
-                                       if (yych <= ' ') goto yy39;\r
-                                       if (yych <= '"') goto yy41;\r
-                                       goto yy26;\r
-                               } else {\r
-                                       if (yych == '%') goto yy26;\r
-                                       if (yych <= '&') goto yy41;\r
-                                       goto yy26;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= 'N') {\r
-                               if (yych <= ';') {\r
-                                       if (yych <= ')') goto yy41;\r
-                                       if (yych <= ':') goto yy26;\r
-                                       goto yy41;\r
-                               } else {\r
-                                       if (yych == '=') goto yy41;\r
-                                       if (yych <= 'M') goto yy26;\r
-                                       goto yy47;\r
-                               }\r
-                       } else {\r
-                               if (yych <= 'm') {\r
-                                       if (yych == '^') goto yy41;\r
-                                       goto yy26;\r
-                               } else {\r
-                                       if (yych <= 'n') goto yy47;\r
-                                       if (yych <= 'z') goto yy26;\r
-                                       if (yych <= '~') goto yy41;\r
-                                       goto yy26;\r
-                               }\r
-                       }\r
-               }\r
-yy45:\r
-               YYDEBUG(45, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               if (yych == 'L') goto yy46;\r
-               if (yych != 'l') goto yy26;\r
-yy46:\r
-               YYDEBUG(46, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               if (yych == 'L') goto yy39;\r
-               if (yych == 'l') goto yy39;\r
-               goto yy26;\r
-yy47:\r
-               YYDEBUG(47, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               if (yych == 'E') goto yy39;\r
-               if (yych == 'e') goto yy39;\r
-               goto yy26;\r
-yy48:\r
-               YYDEBUG(48, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               if (yych == 'L') goto yy49;\r
-               if (yych != 'l') goto yy26;\r
-yy49:\r
-               YYDEBUG(49, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               if (yych == 'S') goto yy50;\r
-               if (yych != 's') goto yy26;\r
-yy50:\r
-               YYDEBUG(50, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               if (yych == 'E') goto yy39;\r
-               if (yych == 'e') goto yy39;\r
-               goto yy26;\r
-yy51:\r
-               YYDEBUG(51, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-yy52:\r
-               YYDEBUG(52, *YYCURSOR);\r
-               if (yych == '\t') goto yy51;\r
-               if (yych == ' ') goto yy51;\r
-               goto yy17;\r
-yy53:\r
-               YYDEBUG(53, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYFILL(2);\r
-               yych = *YYCURSOR;\r
-yy54:\r
-               YYDEBUG(54, *YYCURSOR);\r
-               if (yybm[0+yych] & 128) {\r
-                       goto yy53;\r
-               }\r
-               if (yych >= '\r') goto yy57;\r
-yy55:\r
-               YYDEBUG(55, *YYCURSOR);\r
-               ++YYCURSOR;\r
-yy56:\r
-               YYDEBUG(56, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 585 "Zend/zend_ini_scanner.l"\r
-               { /* Comment */\r
-       BEGIN(INITIAL);\r
-       SCNG(lineno)++;\r
-       return END_OF_LINE;\r
-}\r
-#line 936 "Zend/zend_ini_scanner.c"\r
-yy57:\r
-               YYDEBUG(57, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               if (yych == '\n') goto yy55;\r
-               goto yy56;\r
-yy58:\r
-               YYDEBUG(58, *YYCURSOR);\r
-               yyaccept = 1;\r
-               YYMARKER = ++YYCURSOR;\r
-               YYFILL(2);\r
-               yych = *YYCURSOR;\r
-yy59:\r
-               YYDEBUG(59, *YYCURSOR);\r
-               if (yych <= '\'') {\r
-                       if (yych <= ' ') {\r
-                               if (yych <= '\n') {\r
-                                       if (yych <= 0x08) goto yy58;\r
-                                       if (yych >= '\n') goto yy64;\r
-                               } else {\r
-                                       if (yych == '\r') goto yy66;\r
-                                       goto yy58;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '$') {\r
-                                       if (yych == '#') goto yy58;\r
-                               } else {\r
-                                       if (yych != '&') goto yy58;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= 'Z') {\r
-                               if (yych <= ';') {\r
-                                       if (yych <= ')') goto yy60;\r
-                                       if (yych <= ':') goto yy58;\r
-                               } else {\r
-                                       if (yych != '=') goto yy58;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '^') {\r
-                                       if (yych <= '[') goto yy62;\r
-                                       if (yych <= ']') goto yy58;\r
-                               } else {\r
-                                       if (yych <= 'z') goto yy58;\r
-                                       if (yych >= 0x7F) goto yy58;\r
-                               }\r
-                       }\r
-               }\r
-yy60:\r
-               YYDEBUG(60, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYFILL(2);\r
-               yych = *YYCURSOR;\r
-               YYDEBUG(61, *YYCURSOR);\r
-               if (yych == '\n') goto yy64;\r
-               if (yych == '\r') goto yy66;\r
-               goto yy60;\r
-yy62:\r
-               YYDEBUG(62, *YYCURSOR);\r
-               yyaccept = 3;\r
-               YYMARKER = ++YYCURSOR;\r
-               YYFILL(2);\r
-               yych = *YYCURSOR;\r
-               YYDEBUG(63, *YYCURSOR);\r
-               if (yych <= '\f') {\r
-                       if (yych <= 0x08) goto yy60;\r
-                       if (yych <= '\t') goto yy62;\r
-                       if (yych >= '\v') goto yy60;\r
-               } else {\r
-                       if (yych <= '\r') goto yy66;\r
-                       if (yych == ' ') goto yy62;\r
-                       goto yy60;\r
-               }\r
-yy64:\r
-               YYDEBUG(64, *YYCURSOR);\r
-               ++YYCURSOR;\r
-yy65:\r
-               YYDEBUG(65, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 591 "Zend/zend_ini_scanner.l"\r
-               { /* #Comment */\r
-       zend_error(E_DEPRECATED, "Comments starting with '#' are deprecated in %s on line %d", zend_ini_scanner_get_filename(TSRMLS_C), SCNG(lineno));\r
-       BEGIN(INITIAL);\r
-       SCNG(lineno)++;\r
-       return END_OF_LINE;\r
-}\r
-#line 1022 "Zend/zend_ini_scanner.c"\r
-yy66:\r
-               YYDEBUG(66, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               if (yych == '\n') goto yy64;\r
-               goto yy65;\r
-yy67:\r
-               YYDEBUG(67, *YYCURSOR);\r
-               yyaccept = 0;\r
-               YYMARKER = ++YYCURSOR;\r
-               YYFILL(2);\r
-               yych = *YYCURSOR;\r
-yy68:\r
-               YYDEBUG(68, *YYCURSOR);\r
-               if (yych <= ' ') {\r
-                       if (yych <= '\n') {\r
-                               if (yych <= 0x08) goto yy5;\r
-                               if (yych <= '\t') goto yy67;\r
-                               goto yy71;\r
-                       } else {\r
-                               if (yych == '\r') goto yy72;\r
-                               if (yych <= 0x1F) goto yy5;\r
-                               goto yy67;\r
-                       }\r
-               } else {\r
-                       if (yych <= ':') {\r
-                               if (yych == '#') goto yy60;\r
-                               goto yy5;\r
-                       } else {\r
-                               if (yych <= ';') goto yy53;\r
-                               if (yych == '=') goto yy51;\r
-                               goto yy5;\r
-                       }\r
-               }\r
-yy69:\r
-               YYDEBUG(69, *YYCURSOR);\r
-               yyaccept = 1;\r
-               YYMARKER = ++YYCURSOR;\r
-               YYFILL(2);\r
-               yych = *YYCURSOR;\r
-               YYDEBUG(70, *YYCURSOR);\r
-               if (yych <= '&') {\r
-                       if (yych <= 0x1F) {\r
-                               if (yych <= '\n') {\r
-                                       if (yych <= 0x08) goto yy25;\r
-                                       if (yych <= '\t') goto yy67;\r
-                               } else {\r
-                                       if (yych == '\r') goto yy72;\r
-                                       goto yy25;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '#') {\r
-                                       if (yych <= ' ') goto yy69;\r
-                                       if (yych <= '"') goto yy3;\r
-                                       goto yy58;\r
-                               } else {\r
-                                       if (yych == '%') goto yy25;\r
-                                       goto yy3;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= '=') {\r
-                               if (yych <= ':') {\r
-                                       if (yych <= '\'') goto yy25;\r
-                                       if (yych <= ')') goto yy3;\r
-                                       goto yy25;\r
-                               } else {\r
-                                       if (yych <= ';') goto yy53;\r
-                                       if (yych <= '<') goto yy25;\r
-                                       goto yy51;\r
-                               }\r
-                       } else {\r
-                               if (yych <= ']') {\r
-                                       if (yych == '[') goto yy28;\r
-                                       goto yy25;\r
-                               } else {\r
-                                       if (yych <= '^') goto yy3;\r
-                                       if (yych <= 'z') goto yy25;\r
-                                       if (yych <= '~') goto yy3;\r
-                                       goto yy25;\r
-                               }\r
-                       }\r
-               }\r
-yy71:\r
-               YYDEBUG(71, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               goto yy7;\r
-yy72:\r
-               YYDEBUG(72, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               if ((yych = *YYCURSOR) == '\n') goto yy71;\r
-               goto yy7;\r
-       }\r
-/* *********************************** */\r
-yyc_ST_DOUBLE_QUOTES:\r
-       {\r
-               static const unsigned char yybm[] = {\r
-                         0,   0,   0,   0,   0,   0,   0,   0, \r
-                         0, 128,   0,   0,   0,   0,   0,   0, \r
-                         0,   0,   0,   0,   0,   0,   0,   0, \r
-                         0,   0,   0,   0,   0,   0,   0,   0, \r
-                       128,   0,   0,   0,   0,   0,   0,   0, \r
-                         0,   0,   0,   0,   0,   0,   0,   0, \r
-                         0,   0,   0,   0,   0,   0,   0,   0, \r
-                         0,   0,   0,   0,   0,   0,   0,   0, \r
-                         0,   0,   0,   0,   0,   0,   0,   0, \r
-                         0,   0,   0,   0,   0,   0,   0,   0, \r
-                         0,   0,   0,   0,   0,   0,   0,   0, \r
-                         0,   0,   0,   0,   0,   0,   0,   0, \r
-                         0,   0,   0,   0,   0,   0,   0,   0, \r
-                         0,   0,   0,   0,   0,   0,   0,   0, \r
-                         0,   0,   0,   0,   0,   0,   0,   0, \r
-                         0,   0,   0,   0,   0,   0,   0,   0, \r
-                         0,   0,   0,   0,   0,   0,   0,   0, \r
-                         0,   0,   0,   0,   0,   0,   0,   0, \r
-                         0,   0,   0,   0,   0,   0,   0,   0, \r
-                         0,   0,   0,   0,   0,   0,   0,   0, \r
-                         0,   0,   0,   0,   0,   0,   0,   0, \r
-                         0,   0,   0,   0,   0,   0,   0,   0, \r
-                         0,   0,   0,   0,   0,   0,   0,   0, \r
-                         0,   0,   0,   0,   0,   0,   0,   0, \r
-                         0,   0,   0,   0,   0,   0,   0,   0, \r
-                         0,   0,   0,   0,   0,   0,   0,   0, \r
-                         0,   0,   0,   0,   0,   0,   0,   0, \r
-                         0,   0,   0,   0,   0,   0,   0,   0, \r
-                         0,   0,   0,   0,   0,   0,   0,   0, \r
-                         0,   0,   0,   0,   0,   0,   0,   0, \r
-                         0,   0,   0,   0,   0,   0,   0,   0, \r
-                         0,   0,   0,   0,   0,   0,   0,   0, \r
-               };\r
-               YYDEBUG(73, *YYCURSOR);\r
-               YYFILL(2);\r
-               yych = *YYCURSOR;\r
-               if (yych == '"') goto yy77;\r
-               if (yych == '$') goto yy79;\r
-               YYDEBUG(75, *YYCURSOR);\r
-               ++YYCURSOR;\r
-yy76:\r
-               YYDEBUG(76, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 535 "Zend/zend_ini_scanner.l"\r
-               { /* Escape double quoted string contents */\r
-       if (YYCURSOR > YYLIMIT) {\r
-               return 0;\r
-       }\r
-       \r
-       while (YYCURSOR < YYLIMIT) {\r
-               switch (*YYCURSOR++) {\r
-                       case '"':\r
-                               if (YYCURSOR < YYLIMIT && YYCURSOR[-2] == '\\' && *YYCURSOR != '\r' && *YYCURSOR != '\n') {\r
-                                       continue;\r
-                               }\r
-                               break;\r
-                       case '$':\r
-                               if (*YYCURSOR == '{') {\r
-                                       break;\r
-                               }\r
-                               continue;\r
-                       case '\\':\r
-                               if (YYCURSOR < YYLIMIT && *YYCURSOR != '"') {\r
-                                       YYCURSOR++;\r
-                               }\r
-                               /* fall through */\r
-                       default:\r
-                               continue;\r
-               }\r
-               \r
-               YYCURSOR--;\r
-               break;\r
-       }\r
-\r
-       yyleng = YYCURSOR - SCNG(yy_text);\r
-       \r
-       zend_ini_escape_string(ini_lval, yytext, yyleng, '"' TSRMLS_CC);\r
-       return TC_QUOTED_STRING;\r
-}\r
-#line 1198 "Zend/zend_ini_scanner.c"\r
-yy77:\r
-               YYDEBUG(77, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               yych = *YYCURSOR;\r
-               goto yy83;\r
-yy78:\r
-               YYDEBUG(78, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 530 "Zend/zend_ini_scanner.l"\r
-               { /* Double quoted '"' string ends */\r
-       yy_pop_state(TSRMLS_C);\r
-       return '"';\r
-}\r
-#line 1212 "Zend/zend_ini_scanner.c"\r
-yy79:\r
-               YYDEBUG(79, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               if (yych != '{') goto yy76;\r
-               YYDEBUG(80, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYDEBUG(81, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 401 "Zend/zend_ini_scanner.l"\r
-               { /* Variable start */\r
-       yy_push_state(ST_VARNAME TSRMLS_CC);\r
-       return TC_DOLLAR_CURLY;\r
-}\r
-#line 1226 "Zend/zend_ini_scanner.c"\r
-yy82:\r
-               YYDEBUG(82, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-yy83:\r
-               YYDEBUG(83, *YYCURSOR);\r
-               if (yybm[0+yych] & 128) {\r
-                       goto yy82;\r
-               }\r
-               goto yy78;\r
-       }\r
-/* *********************************** */\r
-yyc_ST_OFFSET:\r
-       {\r
-               static const unsigned char yybm[] = {\r
-                        66,  66,  66,  66,  66,  66,  66,  66, \r
-                        66, 194,  64,  66,  66,  64,  66,  66, \r
-                        66,  66,  66,  66,  66,  66,  66,  66, \r
-                        66,  66,  66,  66,  66,  66,  66,  66, \r
-                       194,  66,  64,  66,  68,  66,  66,   0, \r
-                        66,  66,  66,  66,  66,  66,  66,  66, \r
-                       114, 114, 114, 114, 114, 114, 114, 114, \r
-                       114, 114,  66,  64,  66,  66,  66,  66, \r
-                        66,  82,  82,  82,  82,  82,  82,  82, \r
-                        82,  82,  82,  82,  82,  82,  82,  82, \r
-                        82,  82,  82,  82,  82,  82,  82,  82, \r
-                        82,  82,  82,  66,  72,  64,  66,  82, \r
-                        66,  82,  82,  82,  82,  82,  82,  82, \r
-                        82,  82,  82,  82,  82,  82,  82,  82, \r
-                        82,  82,  82,  82,  82,  82,  82,  82, \r
-                        82,  82,  82,  66,  66,  66,  66,  66, \r
-                        66,  66,  66,  66,  66,  66,  66,  66, \r
-                        66,  66,  66,  66,  66,  66,  66,  66, \r
-                        66,  66,  66,  66,  66,  66,  66,  66, \r
-                        66,  66,  66,  66,  66,  66,  66,  66, \r
-                        66,  66,  66,  66,  66,  66,  66,  66, \r
-                        66,  66,  66,  66,  66,  66,  66,  66, \r
-                        66,  66,  66,  66,  66,  66,  66,  66, \r
-                        66,  66,  66,  66,  66,  66,  66,  66, \r
-                        66,  66,  66,  66,  66,  66,  66,  66, \r
-                        66,  66,  66,  66,  66,  66,  66,  66, \r
-                        66,  66,  66,  66,  66,  66,  66,  66, \r
-                        66,  66,  66,  66,  66,  66,  66,  66, \r
-                        66,  66,  66,  66,  66,  66,  66,  66, \r
-                        66,  66,  66,  66,  66,  66,  66,  66, \r
-                        66,  66,  66,  66,  66,  66,  66,  66, \r
-                        66,  66,  66,  66,  66,  66,  66,  66, \r
-               };\r
-               YYDEBUG(84, *YYCURSOR);\r
-               YYFILL(2);\r
-               yych = *YYCURSOR;\r
-               if (yych <= '-') {\r
-                       if (yych <= ' ') {\r
-                               if (yych <= '\n') {\r
-                                       if (yych <= 0x08) goto yy86;\r
-                                       if (yych <= '\t') goto yy88;\r
-                                       goto yy89;\r
-                               } else {\r
-                                       if (yych == '\r') goto yy89;\r
-                                       if (yych >= ' ') goto yy88;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '$') {\r
-                                       if (yych == '"') goto yy91;\r
-                                       if (yych >= '$') goto yy93;\r
-                               } else {\r
-                                       if (yych == '\'') goto yy94;\r
-                                       if (yych >= '-') goto yy95;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= 'Z') {\r
-                               if (yych <= '9') {\r
-                                       if (yych <= '.') goto yy96;\r
-                                       if (yych >= '0') goto yy97;\r
-                               } else {\r
-                                       if (yych == ';') goto yy89;\r
-                                       if (yych >= 'A') goto yy99;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '^') {\r
-                                       if (yych <= '[') goto yy86;\r
-                                       if (yych <= '\\') goto yy101;\r
-                                       if (yych <= ']') goto yy102;\r
-                               } else {\r
-                                       if (yych == '`') goto yy86;\r
-                                       if (yych <= 'z') goto yy99;\r
-                               }\r
-                       }\r
-               }\r
-yy86:\r
-               YYDEBUG(86, *YYCURSOR);\r
-               yyaccept = 0;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               goto yy105;\r
-yy87:\r
-               YYDEBUG(87, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 521 "Zend/zend_ini_scanner.l"\r
-               { /* Get rest as section/offset value */\r
-       RETURN_TOKEN(TC_STRING, yytext, yyleng);\r
-}\r
-#line 1330 "Zend/zend_ini_scanner.c"\r
-yy88:\r
-               YYDEBUG(88, *YYCURSOR);\r
-               yyaccept = 0;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               if (yybm[0+yych] & 128) {\r
-                       goto yy131;\r
-               }\r
-               if (yych == '"') goto yy133;\r
-               if (yych == ']') goto yy134;\r
-               goto yy105;\r
-yy89:\r
-               YYDEBUG(89, *YYCURSOR);\r
-               ++YYCURSOR;\r
-yy90:\r
-               YYDEBUG(90, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 603 "Zend/zend_ini_scanner.l"\r
-               {\r
-       return 0;\r
-}\r
-#line 1351 "Zend/zend_ini_scanner.c"\r
-yy91:\r
-               YYDEBUG(91, *YYCURSOR);\r
-               ++YYCURSOR;\r
-yy92:\r
-               YYDEBUG(92, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 525 "Zend/zend_ini_scanner.l"\r
-               { /* Double quoted '"' string start */\r
-       yy_push_state(ST_DOUBLE_QUOTES TSRMLS_CC);\r
-       return '"';\r
-}\r
-#line 1363 "Zend/zend_ini_scanner.c"\r
-yy93:\r
-               YYDEBUG(93, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               if (yych <= '\\') {\r
-                       if (yych <= 0x00) goto yy90;\r
-                       if (yych <= '[') goto yy104;\r
-                       goto yy109;\r
-               } else {\r
-                       if (yych == '{') goto yy129;\r
-                       goto yy104;\r
-               }\r
-yy94:\r
-               YYDEBUG(94, *YYCURSOR);\r
-               yyaccept = 1;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               if (yybm[0+yych] & 64) {\r
-                       goto yy125;\r
-               }\r
-               goto yy90;\r
-yy95:\r
-               YYDEBUG(95, *YYCURSOR);\r
-               yyaccept = 0;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               if (yych <= '/') goto yy105;\r
-               if (yych <= '9') goto yy123;\r
-               goto yy105;\r
-yy96:\r
-               YYDEBUG(96, *YYCURSOR);\r
-               yyaccept = 0;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               if (yych <= '/') goto yy105;\r
-               if (yych <= '9') goto yy121;\r
-               goto yy105;\r
-yy97:\r
-               YYDEBUG(97, *YYCURSOR);\r
-               yyaccept = 2;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               if (yych <= '\'') {\r
-                       if (yych <= '\r') {\r
-                               if (yych == '\n') goto yy98;\r
-                               if (yych <= '\f') goto yy105;\r
-                       } else {\r
-                               if (yych == '"') goto yy98;\r
-                               if (yych <= '&') goto yy105;\r
-                       }\r
-               } else {\r
-                       if (yych <= '9') {\r
-                               if (yych == '.') goto yy117;\r
-                               if (yych <= '/') goto yy105;\r
-                               goto yy119;\r
-                       } else {\r
-                               if (yych <= ';') {\r
-                                       if (yych <= ':') goto yy105;\r
-                               } else {\r
-                                       if (yych != ']') goto yy105;\r
-                               }\r
-                       }\r
-               }\r
-yy98:\r
-               YYDEBUG(98, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 499 "Zend/zend_ini_scanner.l"\r
-               { /* Get number option value as string */\r
-       RETURN_TOKEN(TC_NUMBER, yytext, yyleng);\r
-}\r
-#line 1429 "Zend/zend_ini_scanner.c"\r
-yy99:\r
-               YYDEBUG(99, *YYCURSOR);\r
-               yyaccept = 3;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               if (yybm[0+yych] & 16) {\r
-                       goto yy115;\r
-               }\r
-               if (yych <= '"') {\r
-                       if (yych <= '\f') {\r
-                               if (yych != '\n') goto yy105;\r
-                       } else {\r
-                               if (yych <= '\r') goto yy100;\r
-                               if (yych <= '!') goto yy105;\r
-                       }\r
-               } else {\r
-                       if (yych <= ':') {\r
-                               if (yych != '\'') goto yy105;\r
-                       } else {\r
-                               if (yych <= ';') goto yy100;\r
-                               if (yych != ']') goto yy105;\r
-                       }\r
-               }\r
-yy100:\r
-               YYDEBUG(100, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 495 "Zend/zend_ini_scanner.l"\r
-               { /* Get constant option value */\r
-       RETURN_TOKEN(TC_CONSTANT, yytext, yyleng);\r
-}\r
-#line 1459 "Zend/zend_ini_scanner.c"\r
-yy101:\r
-               YYDEBUG(101, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               goto yy104;\r
-yy102:\r
-               YYDEBUG(102, *YYCURSOR);\r
-               ++YYCURSOR;\r
-yy103:\r
-               YYDEBUG(103, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 396 "Zend/zend_ini_scanner.l"\r
-               { /* End of section or an option offset */\r
-       BEGIN(INITIAL);\r
-       return ']';\r
-}\r
-#line 1475 "Zend/zend_ini_scanner.c"\r
-yy104:\r
-               YYDEBUG(104, *YYCURSOR);\r
-               yyaccept = 0;\r
-               YYMARKER = ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-yy105:\r
-               YYDEBUG(105, *YYCURSOR);\r
-               if (yybm[0+yych] & 2) {\r
-                       goto yy104;\r
-               }\r
-               if (yych == '$') goto yy107;\r
-               if (yych != '\\') goto yy87;\r
-yy106:\r
-               YYDEBUG(106, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               goto yy104;\r
-yy107:\r
-               YYDEBUG(107, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               if (yych <= '\\') {\r
-                       if (yych <= 0x00) goto yy108;\r
-                       if (yych <= '[') goto yy104;\r
-                       goto yy109;\r
-               } else {\r
-                       if (yych != '{') goto yy104;\r
-               }\r
-yy108:\r
-               YYDEBUG(108, *YYCURSOR);\r
-               YYCURSOR = YYMARKER;\r
-               if (yyaccept <= 1) {\r
-                       if (yyaccept <= 0) {\r
-                               goto yy87;\r
-                       } else {\r
-                               goto yy90;\r
-                       }\r
-               } else {\r
-                       if (yyaccept <= 2) {\r
-                               goto yy98;\r
-                       } else {\r
-                               goto yy100;\r
-                       }\r
-               }\r
-yy109:\r
-               YYDEBUG(109, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               if (yybm[0+yych] & 4) {\r
-                       goto yy110;\r
-               }\r
-               if (yych == '\\') goto yy112;\r
-               goto yy104;\r
-yy110:\r
-               YYDEBUG(110, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               YYDEBUG(111, *YYCURSOR);\r
-               if (yybm[0+yych] & 4) {\r
-                       goto yy110;\r
-               }\r
-               if (yych == '\\') goto yy114;\r
-               goto yy104;\r
-yy112:\r
-               YYDEBUG(112, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               YYDEBUG(113, *YYCURSOR);\r
-               if (yybm[0+yych] & 4) {\r
-                       goto yy110;\r
-               }\r
-               if (yych == '\\') goto yy112;\r
-               goto yy104;\r
-yy114:\r
-               YYDEBUG(114, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               if (yybm[0+yych] & 4) {\r
-                       goto yy110;\r
-               }\r
-               if (yych == '\\') goto yy112;\r
-               goto yy104;\r
-yy115:\r
-               YYDEBUG(115, *YYCURSOR);\r
-               yyaccept = 3;\r
-               YYMARKER = ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               YYDEBUG(116, *YYCURSOR);\r
-               if (yybm[0+yych] & 16) {\r
-                       goto yy115;\r
-               }\r
-               if (yych <= '$') {\r
-                       if (yych <= '\r') {\r
-                               if (yych == '\n') goto yy100;\r
-                               if (yych <= '\f') goto yy104;\r
-                               goto yy100;\r
-                       } else {\r
-                               if (yych == '"') goto yy100;\r
-                               if (yych <= '#') goto yy104;\r
-                               goto yy107;\r
-                       }\r
-               } else {\r
-                       if (yych <= ';') {\r
-                               if (yych == '\'') goto yy100;\r
-                               if (yych <= ':') goto yy104;\r
-                               goto yy100;\r
-                       } else {\r
-                               if (yych <= '[') goto yy104;\r
-                               if (yych <= '\\') goto yy106;\r
-                               if (yych <= ']') goto yy100;\r
-                               goto yy104;\r
-                       }\r
-               }\r
-yy117:\r
-               YYDEBUG(117, *YYCURSOR);\r
-               yyaccept = 2;\r
-               YYMARKER = ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               YYDEBUG(118, *YYCURSOR);\r
-               if (yybm[0+yych] & 32) {\r
-                       goto yy117;\r
-               }\r
-               if (yych <= '$') {\r
-                       if (yych <= '\r') {\r
-                               if (yych == '\n') goto yy98;\r
-                               if (yych <= '\f') goto yy104;\r
-                               goto yy98;\r
-                       } else {\r
-                               if (yych == '"') goto yy98;\r
-                               if (yych <= '#') goto yy104;\r
-                               goto yy107;\r
-                       }\r
-               } else {\r
-                       if (yych <= ';') {\r
-                               if (yych == '\'') goto yy98;\r
-                               if (yych <= ':') goto yy104;\r
-                               goto yy98;\r
-                       } else {\r
-                               if (yych <= '[') goto yy104;\r
-                               if (yych <= '\\') goto yy106;\r
-                               if (yych <= ']') goto yy98;\r
-                               goto yy104;\r
-                       }\r
-               }\r
-yy119:\r
-               YYDEBUG(119, *YYCURSOR);\r
-               yyaccept = 2;\r
-               YYMARKER = ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               YYDEBUG(120, *YYCURSOR);\r
-               if (yych <= '\'') {\r
-                       if (yych <= '!') {\r
-                               if (yych <= '\n') {\r
-                                       if (yych <= '\t') goto yy104;\r
-                                       goto yy98;\r
-                               } else {\r
-                                       if (yych == '\r') goto yy98;\r
-                                       goto yy104;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '#') {\r
-                                       if (yych <= '"') goto yy98;\r
-                                       goto yy104;\r
-                               } else {\r
-                                       if (yych <= '$') goto yy107;\r
-                                       if (yych <= '&') goto yy104;\r
-                                       goto yy98;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= ':') {\r
-                               if (yych <= '.') {\r
-                                       if (yych <= '-') goto yy104;\r
-                                       goto yy117;\r
-                               } else {\r
-                                       if (yych <= '/') goto yy104;\r
-                                       if (yych <= '9') goto yy119;\r
-                                       goto yy104;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '[') {\r
-                                       if (yych <= ';') goto yy98;\r
-                                       goto yy104;\r
-                               } else {\r
-                                       if (yych <= '\\') goto yy106;\r
-                                       if (yych <= ']') goto yy98;\r
-                                       goto yy104;\r
-                               }\r
-                       }\r
-               }\r
-yy121:\r
-               YYDEBUG(121, *YYCURSOR);\r
-               yyaccept = 2;\r
-               YYMARKER = ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               YYDEBUG(122, *YYCURSOR);\r
-               if (yych <= '&') {\r
-                       if (yych <= '\r') {\r
-                               if (yych == '\n') goto yy98;\r
-                               if (yych <= '\f') goto yy104;\r
-                               goto yy98;\r
-                       } else {\r
-                               if (yych <= '"') {\r
-                                       if (yych <= '!') goto yy104;\r
-                                       goto yy98;\r
-                               } else {\r
-                                       if (yych == '$') goto yy107;\r
-                                       goto yy104;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= ':') {\r
-                               if (yych <= '\'') goto yy98;\r
-                               if (yych <= '/') goto yy104;\r
-                               if (yych <= '9') goto yy121;\r
-                               goto yy104;\r
-                       } else {\r
-                               if (yych <= '[') {\r
-                                       if (yych <= ';') goto yy98;\r
-                                       goto yy104;\r
-                               } else {\r
-                                       if (yych <= '\\') goto yy106;\r
-                                       if (yych <= ']') goto yy98;\r
-                                       goto yy104;\r
-                               }\r
-                       }\r
-               }\r
-yy123:\r
-               YYDEBUG(123, *YYCURSOR);\r
-               yyaccept = 2;\r
-               YYMARKER = ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               YYDEBUG(124, *YYCURSOR);\r
-               if (yych <= '&') {\r
-                       if (yych <= '\r') {\r
-                               if (yych == '\n') goto yy98;\r
-                               if (yych <= '\f') goto yy104;\r
-                               goto yy98;\r
-                       } else {\r
-                               if (yych <= '"') {\r
-                                       if (yych <= '!') goto yy104;\r
-                                       goto yy98;\r
-                               } else {\r
-                                       if (yych == '$') goto yy107;\r
-                                       goto yy104;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= ':') {\r
-                               if (yych <= '\'') goto yy98;\r
-                               if (yych <= '/') goto yy104;\r
-                               if (yych <= '9') goto yy123;\r
-                               goto yy104;\r
-                       } else {\r
-                               if (yych <= '[') {\r
-                                       if (yych <= ';') goto yy98;\r
-                                       goto yy104;\r
-                               } else {\r
-                                       if (yych <= '\\') goto yy106;\r
-                                       if (yych <= ']') goto yy98;\r
-                                       goto yy104;\r
-                               }\r
-                       }\r
-               }\r
-yy125:\r
-               YYDEBUG(125, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               YYDEBUG(126, *YYCURSOR);\r
-               if (yybm[0+yych] & 64) {\r
-                       goto yy125;\r
-               }\r
-               YYDEBUG(127, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYDEBUG(128, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 368 "Zend/zend_ini_scanner.l"\r
-               { /* Raw string */\r
-       /* Eat leading and trailing single quotes */\r
-       if (yytext[0] == '\'' && yytext[yyleng - 1] == '\'') {\r
-               SCNG(yy_text)++;\r
-               yyleng = yyleng - 2;\r
-       }\r
-       RETURN_TOKEN(TC_RAW, yytext, yyleng);\r
-}\r
-#line 1774 "Zend/zend_ini_scanner.c"\r
-yy129:\r
-               YYDEBUG(129, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYDEBUG(130, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 401 "Zend/zend_ini_scanner.l"\r
-               { /* Variable start */\r
-       yy_push_state(ST_VARNAME TSRMLS_CC);\r
-       return TC_DOLLAR_CURLY;\r
-}\r
-#line 1785 "Zend/zend_ini_scanner.c"\r
-yy131:\r
-               YYDEBUG(131, *YYCURSOR);\r
-               yyaccept = 0;\r
-               YYMARKER = ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               YYDEBUG(132, *YYCURSOR);\r
-               if (yybm[0+yych] & 128) {\r
-                       goto yy131;\r
-               }\r
-               if (yych <= '$') {\r
-                       if (yych <= '\r') {\r
-                               if (yych == '\n') goto yy87;\r
-                               if (yych <= '\f') goto yy104;\r
-                               goto yy87;\r
-                       } else {\r
-                               if (yych == '"') goto yy133;\r
-                               if (yych <= '#') goto yy104;\r
-                               goto yy107;\r
-                       }\r
-               } else {\r
-                       if (yych <= ';') {\r
-                               if (yych == '\'') goto yy87;\r
-                               if (yych <= ':') goto yy104;\r
-                               goto yy87;\r
-                       } else {\r
-                               if (yych <= '[') goto yy104;\r
-                               if (yych <= '\\') goto yy106;\r
-                               if (yych <= ']') goto yy134;\r
-                               goto yy104;\r
-                       }\r
-               }\r
-yy133:\r
-               YYDEBUG(133, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               goto yy92;\r
-yy134:\r
-               YYDEBUG(134, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               yych = *YYCURSOR;\r
-               goto yy103;\r
-       }\r
-/* *********************************** */\r
-yyc_ST_RAW:\r
-       {\r
-               static const unsigned char yybm[] = {\r
-                        64,  64,  64,  64,  64,  64,  64,  64, \r
-                        64, 192,   0,  64,  64,   0,  64,  64, \r
-                        64,  64,  64,  64,  64,  64,  64,  64, \r
-                        64,  64,  64,  64,  64,  64,  64,  64, \r
-                       192,  64,  64,  64,  64,  64,  64,  64, \r
-                        64,  64,  64,  64,  64,  64,  64,  64, \r
-                        64,  64,  64,  64,  64,  64,  64,  64, \r
-                        64,  64,  64,  64,  64,  64,  64,  64, \r
-                        64,  64,  64,  64,  64,  64,  64,  64, \r
-                        64,  64,  64,  64,  64,  64,  64,  64, \r
-                        64,  64,  64,  64,  64,  64,  64,  64, \r
-                        64,  64,  64,  64,  64,  64,  64,  64, \r
-                        64,  64,  64,  64,  64,  64,  64,  64, \r
-                        64,  64,  64,  64,  64,  64,  64,  64, \r
-                        64,  64,  64,  64,  64,  64,  64,  64, \r
-                        64,  64,  64,  64,  64,  64,  64,  64, \r
-                        64,  64,  64,  64,  64,  64,  64,  64, \r
-                        64,  64,  64,  64,  64,  64,  64,  64, \r
-                        64,  64,  64,  64,  64,  64,  64,  64, \r
-                        64,  64,  64,  64,  64,  64,  64,  64, \r
-                        64,  64,  64,  64,  64,  64,  64,  64, \r
-                        64,  64,  64,  64,  64,  64,  64,  64, \r
-                        64,  64,  64,  64,  64,  64,  64,  64, \r
-                        64,  64,  64,  64,  64,  64,  64,  64, \r
-                        64,  64,  64,  64,  64,  64,  64,  64, \r
-                        64,  64,  64,  64,  64,  64,  64,  64, \r
-                        64,  64,  64,  64,  64,  64,  64,  64, \r
-                        64,  64,  64,  64,  64,  64,  64,  64, \r
-                        64,  64,  64,  64,  64,  64,  64,  64, \r
-                        64,  64,  64,  64,  64,  64,  64,  64, \r
-                        64,  64,  64,  64,  64,  64,  64,  64, \r
-                        64,  64,  64,  64,  64,  64,  64,  64, \r
-               };\r
-               YYDEBUG(135, *YYCURSOR);\r
-               YYFILL(3);\r
-               yych = *YYCURSOR;\r
-               if (yych <= '\f') {\r
-                       if (yych <= 0x08) {\r
-                               if (yych >= 0x01) goto yy139;\r
-                       } else {\r
-                               if (yych <= '\t') goto yy141;\r
-                               if (yych <= '\n') goto yy142;\r
-                               goto yy139;\r
-                       }\r
-               } else {\r
-                       if (yych <= ' ') {\r
-                               if (yych <= '\r') goto yy144;\r
-                               if (yych <= 0x1F) goto yy139;\r
-                               goto yy141;\r
-                       } else {\r
-                               if (yych == ';') goto yy145;\r
-                               goto yy139;\r
-                       }\r
-               }\r
-               YYDEBUG(137, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYDEBUG(138, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 598 "Zend/zend_ini_scanner.l"\r
-               { /* End of option value (if EOF is reached before EOL */\r
-       BEGIN(INITIAL);\r
-       return END_OF_LINE;\r
-}\r
-#line 1895 "Zend/zend_ini_scanner.c"\r
-yy139:\r
-               YYDEBUG(139, *YYCURSOR);\r
-               ++YYCURSOR;\r
-yy140:\r
-               YYDEBUG(140, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 448 "Zend/zend_ini_scanner.l"\r
-               { /* Raw value, only used when SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW. */\r
-       char *sc = NULL;\r
-       while (YYCURSOR < YYLIMIT) {\r
-               switch (*YYCURSOR) {\r
-                       case '\n':\r
-                       case '\r':\r
-                               goto end_raw_value_chars;\r
-                               break;\r
-                       case ';':\r
-                               if (sc == NULL) {\r
-                                       sc = YYCURSOR;\r
-                               }\r
-                               /* no break */\r
-                       default:\r
-                               YYCURSOR++;\r
-                               break;\r
-               }\r
-       }\r
-end_raw_value_chars:\r
-       yyleng = YYCURSOR - SCNG(yy_text);\r
-\r
-       /* Eat trailing semicolons */\r
-       while (yytext[yyleng - 1] == ';') {\r
-               yyleng--;\r
-       }\r
-\r
-       /* Eat leading and trailing double quotes */\r
-       if (yytext[0] == '"' && yytext[yyleng - 1] == '"') {\r
-               SCNG(yy_text)++;\r
-               yyleng = yyleng - 2;\r
-       } else if (sc) {\r
-               YYCURSOR = sc;\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-       }\r
-       RETURN_TOKEN(TC_RAW, yytext, yyleng);\r
-}\r
-#line 1939 "Zend/zend_ini_scanner.c"\r
-yy141:\r
-               YYDEBUG(141, *YYCURSOR);\r
-               yyaccept = 0;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               if (yych <= '\r') {\r
-                       if (yych <= 0x08) goto yy140;\r
-                       if (yych <= '\n') goto yy153;\r
-                       if (yych <= '\f') goto yy140;\r
-                       goto yy153;\r
-               } else {\r
-                       if (yych <= ' ') {\r
-                               if (yych <= 0x1F) goto yy140;\r
-                               goto yy153;\r
-                       } else {\r
-                               if (yych == ';') goto yy153;\r
-                               goto yy140;\r
-                       }\r
-               }\r
-yy142:\r
-               YYDEBUG(142, *YYCURSOR);\r
-               ++YYCURSOR;\r
-yy143:\r
-               YYDEBUG(143, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 489 "Zend/zend_ini_scanner.l"\r
-               { /* End of option value */\r
-       BEGIN(INITIAL);\r
-       SCNG(lineno)++;\r
-       return END_OF_LINE;\r
-}\r
-#line 1970 "Zend/zend_ini_scanner.c"\r
-yy144:\r
-               YYDEBUG(144, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               if (yych == '\n') goto yy151;\r
-               goto yy143;\r
-yy145:\r
-               YYDEBUG(145, *YYCURSOR);\r
-               yyaccept = 1;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               goto yy147;\r
-yy146:\r
-               YYDEBUG(146, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYFILL(2);\r
-               yych = *YYCURSOR;\r
-yy147:\r
-               YYDEBUG(147, *YYCURSOR);\r
-               if (yybm[0+yych] & 64) {\r
-                       goto yy146;\r
-               }\r
-               if (yych >= '\r') goto yy150;\r
-yy148:\r
-               YYDEBUG(148, *YYCURSOR);\r
-               ++YYCURSOR;\r
-yy149:\r
-               YYDEBUG(149, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 585 "Zend/zend_ini_scanner.l"\r
-               { /* Comment */\r
-       BEGIN(INITIAL);\r
-       SCNG(lineno)++;\r
-       return END_OF_LINE;\r
-}\r
-#line 2004 "Zend/zend_ini_scanner.c"\r
-yy150:\r
-               YYDEBUG(150, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               if (yych == '\n') goto yy148;\r
-               goto yy149;\r
-yy151:\r
-               YYDEBUG(151, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               goto yy143;\r
-yy152:\r
-               YYDEBUG(152, *YYCURSOR);\r
-               yyaccept = 2;\r
-               YYMARKER = ++YYCURSOR;\r
-               YYFILL(2);\r
-               yych = *YYCURSOR;\r
-yy153:\r
-               YYDEBUG(153, *YYCURSOR);\r
-               if (yybm[0+yych] & 128) {\r
-                       goto yy152;\r
-               }\r
-               if (yych <= '\f') {\r
-                       if (yych == '\n') goto yy151;\r
-               } else {\r
-                       if (yych <= '\r') goto yy155;\r
-                       if (yych == ';') goto yy146;\r
-               }\r
-               YYDEBUG(154, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 575 "Zend/zend_ini_scanner.l"\r
-               {\r
-       /* eat whitespace */\r
-       goto restart;\r
-}\r
-#line 2038 "Zend/zend_ini_scanner.c"\r
-yy155:\r
-               YYDEBUG(155, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               if ((yych = *YYCURSOR) == '\n') goto yy151;\r
-               goto yy143;\r
-       }\r
-/* *********************************** */\r
-yyc_ST_SECTION_RAW:\r
-       {\r
-               static const unsigned char yybm[] = {\r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 192,   0, 128, 128,   0, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       192, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128,   0, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-               };\r
-               YYDEBUG(156, *YYCURSOR);\r
-               YYFILL(3);\r
-               yych = *YYCURSOR;\r
-               if (yych <= '\f') {\r
-                       if (yych == '\n') goto yy160;\r
-               } else {\r
-                       if (yych <= '\r') goto yy160;\r
-                       if (yych == ']') goto yy162;\r
-               }\r
-               YYDEBUG(158, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               yych = *YYCURSOR;\r
-               goto yy169;\r
-yy159:\r
-               YYDEBUG(159, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 485 "Zend/zend_ini_scanner.l"\r
-               { /* Raw value, only used when SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW. */\r
-       RETURN_TOKEN(TC_RAW, yytext, yyleng);\r
-}\r
-#line 2102 "Zend/zend_ini_scanner.c"\r
-yy160:\r
-               YYDEBUG(160, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYDEBUG(161, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 603 "Zend/zend_ini_scanner.l"\r
-               {\r
-       return 0;\r
-}\r
-#line 2112 "Zend/zend_ini_scanner.c"\r
-yy162:\r
-               YYDEBUG(162, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               yych = *YYCURSOR;\r
-               goto yy165;\r
-yy163:\r
-               YYDEBUG(163, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 377 "Zend/zend_ini_scanner.l"\r
-               { /* End of section */\r
-       BEGIN(INITIAL);\r
-       SCNG(lineno)++;\r
-       return ']';\r
-}\r
-#line 2127 "Zend/zend_ini_scanner.c"\r
-yy164:\r
-               YYDEBUG(164, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYFILL(2);\r
-               yych = *YYCURSOR;\r
-yy165:\r
-               YYDEBUG(165, *YYCURSOR);\r
-               if (yybm[0+yych] & 64) {\r
-                       goto yy164;\r
-               }\r
-               if (yych == '\n') goto yy166;\r
-               if (yych == '\r') goto yy167;\r
-               goto yy163;\r
-yy166:\r
-               YYDEBUG(166, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               goto yy163;\r
-yy167:\r
-               YYDEBUG(167, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               if (yych == '\n') goto yy166;\r
-               goto yy163;\r
-yy168:\r
-               YYDEBUG(168, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-yy169:\r
-               YYDEBUG(169, *YYCURSOR);\r
-               if (yybm[0+yych] & 128) {\r
-                       goto yy168;\r
-               }\r
-               goto yy159;\r
-       }\r
-/* *********************************** */\r
-yyc_ST_SECTION_VALUE:\r
-       {\r
-               static const unsigned char yybm[] = {\r
-                       132, 132, 132, 132, 132, 132, 132, 132, \r
-                       132, 134, 128, 132, 132, 128, 132, 132, \r
-                       132, 132, 132, 132, 132, 132, 132, 132, \r
-                       132, 132, 132, 132, 132, 132, 132, 132, \r
-                       134, 132, 128, 132, 136, 132, 132,   0, \r
-                       132, 132, 132, 132, 132, 132, 132, 132, \r
-                       228, 228, 228, 228, 228, 228, 228, 228, \r
-                       228, 228, 132, 128, 132, 132, 132, 132, \r
-                       132, 164, 164, 164, 164, 164, 164, 164, \r
-                       164, 164, 164, 164, 164, 164, 164, 164, \r
-                       164, 164, 164, 164, 164, 164, 164, 164, \r
-                       164, 164, 164, 132, 144, 128, 132, 164, \r
-                       132, 164, 164, 164, 164, 164, 164, 164, \r
-                       164, 164, 164, 164, 164, 164, 164, 164, \r
-                       164, 164, 164, 164, 164, 164, 164, 164, \r
-                       164, 164, 164, 132, 132, 132, 132, 132, \r
-                       132, 132, 132, 132, 132, 132, 132, 132, \r
-                       132, 132, 132, 132, 132, 132, 132, 132, \r
-                       132, 132, 132, 132, 132, 132, 132, 132, \r
-                       132, 132, 132, 132, 132, 132, 132, 132, \r
-                       132, 132, 132, 132, 132, 132, 132, 132, \r
-                       132, 132, 132, 132, 132, 132, 132, 132, \r
-                       132, 132, 132, 132, 132, 132, 132, 132, \r
-                       132, 132, 132, 132, 132, 132, 132, 132, \r
-                       132, 132, 132, 132, 132, 132, 132, 132, \r
-                       132, 132, 132, 132, 132, 132, 132, 132, \r
-                       132, 132, 132, 132, 132, 132, 132, 132, \r
-                       132, 132, 132, 132, 132, 132, 132, 132, \r
-                       132, 132, 132, 132, 132, 132, 132, 132, \r
-                       132, 132, 132, 132, 132, 132, 132, 132, \r
-                       132, 132, 132, 132, 132, 132, 132, 132, \r
-                       132, 132, 132, 132, 132, 132, 132, 132, \r
-               };\r
-               YYDEBUG(170, *YYCURSOR);\r
-               YYFILL(3);\r
-               yych = *YYCURSOR;\r
-               if (yych <= '-') {\r
-                       if (yych <= ' ') {\r
-                               if (yych <= '\n') {\r
-                                       if (yych <= 0x08) goto yy172;\r
-                                       if (yych <= '\t') goto yy174;\r
-                                       goto yy175;\r
-                               } else {\r
-                                       if (yych == '\r') goto yy175;\r
-                                       if (yych >= ' ') goto yy174;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '$') {\r
-                                       if (yych == '"') goto yy177;\r
-                                       if (yych >= '$') goto yy179;\r
-                               } else {\r
-                                       if (yych == '\'') goto yy180;\r
-                                       if (yych >= '-') goto yy181;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= 'Z') {\r
-                               if (yych <= '9') {\r
-                                       if (yych <= '.') goto yy182;\r
-                                       if (yych >= '0') goto yy183;\r
-                               } else {\r
-                                       if (yych == ';') goto yy175;\r
-                                       if (yych >= 'A') goto yy185;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '^') {\r
-                                       if (yych <= '[') goto yy172;\r
-                                       if (yych <= '\\') goto yy187;\r
-                                       if (yych <= ']') goto yy188;\r
-                               } else {\r
-                                       if (yych == '`') goto yy172;\r
-                                       if (yych <= 'z') goto yy185;\r
-                               }\r
-                       }\r
-               }\r
-yy172:\r
-               YYDEBUG(172, *YYCURSOR);\r
-               yyaccept = 0;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               goto yy195;\r
-yy173:\r
-               YYDEBUG(173, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 521 "Zend/zend_ini_scanner.l"\r
-               { /* Get rest as section/offset value */\r
-       RETURN_TOKEN(TC_STRING, yytext, yyleng);\r
-}\r
-#line 2253 "Zend/zend_ini_scanner.c"\r
-yy174:\r
-               YYDEBUG(174, *YYCURSOR);\r
-               yyaccept = 0;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               if (yych <= 0x1F) {\r
-                       if (yych == '\t') goto yy221;\r
-                       goto yy195;\r
-               } else {\r
-                       if (yych <= ' ') goto yy221;\r
-                       if (yych == '"') goto yy223;\r
-                       goto yy195;\r
-               }\r
-yy175:\r
-               YYDEBUG(175, *YYCURSOR);\r
-               ++YYCURSOR;\r
-yy176:\r
-               YYDEBUG(176, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 603 "Zend/zend_ini_scanner.l"\r
-               {\r
-       return 0;\r
-}\r
-#line 2276 "Zend/zend_ini_scanner.c"\r
-yy177:\r
-               YYDEBUG(177, *YYCURSOR);\r
-               ++YYCURSOR;\r
-yy178:\r
-               YYDEBUG(178, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 525 "Zend/zend_ini_scanner.l"\r
-               { /* Double quoted '"' string start */\r
-       yy_push_state(ST_DOUBLE_QUOTES TSRMLS_CC);\r
-       return '"';\r
-}\r
-#line 2288 "Zend/zend_ini_scanner.c"\r
-yy179:\r
-               YYDEBUG(179, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               if (yych <= '\\') {\r
-                       if (yych <= 0x00) goto yy176;\r
-                       if (yych <= '[') goto yy194;\r
-                       goto yy199;\r
-               } else {\r
-                       if (yych == '{') goto yy219;\r
-                       goto yy194;\r
-               }\r
-yy180:\r
-               YYDEBUG(180, *YYCURSOR);\r
-               yyaccept = 1;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               if (yybm[0+yych] & 128) {\r
-                       goto yy215;\r
-               }\r
-               goto yy176;\r
-yy181:\r
-               YYDEBUG(181, *YYCURSOR);\r
-               yyaccept = 0;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               if (yych <= '/') goto yy195;\r
-               if (yych <= '9') goto yy213;\r
-               goto yy195;\r
-yy182:\r
-               YYDEBUG(182, *YYCURSOR);\r
-               yyaccept = 0;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               if (yych <= '/') goto yy195;\r
-               if (yych <= '9') goto yy211;\r
-               goto yy195;\r
-yy183:\r
-               YYDEBUG(183, *YYCURSOR);\r
-               yyaccept = 2;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               if (yych <= '\'') {\r
-                       if (yych <= '\r') {\r
-                               if (yych == '\n') goto yy184;\r
-                               if (yych <= '\f') goto yy195;\r
-                       } else {\r
-                               if (yych == '"') goto yy184;\r
-                               if (yych <= '&') goto yy195;\r
-                       }\r
-               } else {\r
-                       if (yych <= '9') {\r
-                               if (yych == '.') goto yy207;\r
-                               if (yych <= '/') goto yy195;\r
-                               goto yy209;\r
-                       } else {\r
-                               if (yych <= ';') {\r
-                                       if (yych <= ':') goto yy195;\r
-                               } else {\r
-                                       if (yych != ']') goto yy195;\r
-                               }\r
-                       }\r
-               }\r
-yy184:\r
-               YYDEBUG(184, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 499 "Zend/zend_ini_scanner.l"\r
-               { /* Get number option value as string */\r
-       RETURN_TOKEN(TC_NUMBER, yytext, yyleng);\r
-}\r
-#line 2354 "Zend/zend_ini_scanner.c"\r
-yy185:\r
-               YYDEBUG(185, *YYCURSOR);\r
-               yyaccept = 3;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               if (yybm[0+yych] & 32) {\r
-                       goto yy205;\r
-               }\r
-               if (yych <= '"') {\r
-                       if (yych <= '\f') {\r
-                               if (yych != '\n') goto yy195;\r
-                       } else {\r
-                               if (yych <= '\r') goto yy186;\r
-                               if (yych <= '!') goto yy195;\r
-                       }\r
-               } else {\r
-                       if (yych <= ':') {\r
-                               if (yych != '\'') goto yy195;\r
-                       } else {\r
-                               if (yych <= ';') goto yy186;\r
-                               if (yych != ']') goto yy195;\r
-                       }\r
-               }\r
-yy186:\r
-               YYDEBUG(186, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 495 "Zend/zend_ini_scanner.l"\r
-               { /* Get constant option value */\r
-       RETURN_TOKEN(TC_CONSTANT, yytext, yyleng);\r
-}\r
-#line 2384 "Zend/zend_ini_scanner.c"\r
-yy187:\r
-               YYDEBUG(187, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               goto yy194;\r
-yy188:\r
-               YYDEBUG(188, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               yych = *YYCURSOR;\r
-               goto yy191;\r
-yy189:\r
-               YYDEBUG(189, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 377 "Zend/zend_ini_scanner.l"\r
-               { /* End of section */\r
-       BEGIN(INITIAL);\r
-       SCNG(lineno)++;\r
-       return ']';\r
-}\r
-#line 2403 "Zend/zend_ini_scanner.c"\r
-yy190:\r
-               YYDEBUG(190, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYFILL(2);\r
-               yych = *YYCURSOR;\r
-yy191:\r
-               YYDEBUG(191, *YYCURSOR);\r
-               if (yybm[0+yych] & 2) {\r
-                       goto yy190;\r
-               }\r
-               if (yych == '\n') goto yy192;\r
-               if (yych == '\r') goto yy193;\r
-               goto yy189;\r
-yy192:\r
-               YYDEBUG(192, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               goto yy189;\r
-yy193:\r
-               YYDEBUG(193, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               if (yych == '\n') goto yy192;\r
-               goto yy189;\r
-yy194:\r
-               YYDEBUG(194, *YYCURSOR);\r
-               yyaccept = 0;\r
-               YYMARKER = ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-yy195:\r
-               YYDEBUG(195, *YYCURSOR);\r
-               if (yybm[0+yych] & 4) {\r
-                       goto yy194;\r
-               }\r
-               if (yych == '$') goto yy197;\r
-               if (yych != '\\') goto yy173;\r
-yy196:\r
-               YYDEBUG(196, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               goto yy194;\r
-yy197:\r
-               YYDEBUG(197, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               if (yych <= '\\') {\r
-                       if (yych <= 0x00) goto yy198;\r
-                       if (yych <= '[') goto yy194;\r
-                       goto yy199;\r
-               } else {\r
-                       if (yych != '{') goto yy194;\r
-               }\r
-yy198:\r
-               YYDEBUG(198, *YYCURSOR);\r
-               YYCURSOR = YYMARKER;\r
-               if (yyaccept <= 1) {\r
-                       if (yyaccept <= 0) {\r
-                               goto yy173;\r
-                       } else {\r
-                               goto yy176;\r
-                       }\r
-               } else {\r
-                       if (yyaccept <= 2) {\r
-                               goto yy184;\r
-                       } else {\r
-                               goto yy186;\r
-                       }\r
-               }\r
-yy199:\r
-               YYDEBUG(199, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               if (yybm[0+yych] & 8) {\r
-                       goto yy200;\r
-               }\r
-               if (yych == '\\') goto yy202;\r
-               goto yy194;\r
-yy200:\r
-               YYDEBUG(200, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               YYDEBUG(201, *YYCURSOR);\r
-               if (yybm[0+yych] & 8) {\r
-                       goto yy200;\r
-               }\r
-               if (yych == '\\') goto yy204;\r
-               goto yy194;\r
-yy202:\r
-               YYDEBUG(202, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               YYDEBUG(203, *YYCURSOR);\r
-               if (yybm[0+yych] & 8) {\r
-                       goto yy200;\r
-               }\r
-               if (yych == '\\') goto yy202;\r
-               goto yy194;\r
-yy204:\r
-               YYDEBUG(204, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               if (yybm[0+yych] & 8) {\r
-                       goto yy200;\r
-               }\r
-               if (yych == '\\') goto yy202;\r
-               goto yy194;\r
-yy205:\r
-               YYDEBUG(205, *YYCURSOR);\r
-               yyaccept = 3;\r
-               YYMARKER = ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               YYDEBUG(206, *YYCURSOR);\r
-               if (yybm[0+yych] & 32) {\r
-                       goto yy205;\r
-               }\r
-               if (yych <= '$') {\r
-                       if (yych <= '\r') {\r
-                               if (yych == '\n') goto yy186;\r
-                               if (yych <= '\f') goto yy194;\r
-                               goto yy186;\r
-                       } else {\r
-                               if (yych == '"') goto yy186;\r
-                               if (yych <= '#') goto yy194;\r
-                               goto yy197;\r
-                       }\r
-               } else {\r
-                       if (yych <= ';') {\r
-                               if (yych == '\'') goto yy186;\r
-                               if (yych <= ':') goto yy194;\r
-                               goto yy186;\r
-                       } else {\r
-                               if (yych <= '[') goto yy194;\r
-                               if (yych <= '\\') goto yy196;\r
-                               if (yych <= ']') goto yy186;\r
-                               goto yy194;\r
-                       }\r
-               }\r
-yy207:\r
-               YYDEBUG(207, *YYCURSOR);\r
-               yyaccept = 2;\r
-               YYMARKER = ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               YYDEBUG(208, *YYCURSOR);\r
-               if (yybm[0+yych] & 64) {\r
-                       goto yy207;\r
-               }\r
-               if (yych <= '$') {\r
-                       if (yych <= '\r') {\r
-                               if (yych == '\n') goto yy184;\r
-                               if (yych <= '\f') goto yy194;\r
-                               goto yy184;\r
-                       } else {\r
-                               if (yych == '"') goto yy184;\r
-                               if (yych <= '#') goto yy194;\r
-                               goto yy197;\r
-                       }\r
-               } else {\r
-                       if (yych <= ';') {\r
-                               if (yych == '\'') goto yy184;\r
-                               if (yych <= ':') goto yy194;\r
-                               goto yy184;\r
-                       } else {\r
-                               if (yych <= '[') goto yy194;\r
-                               if (yych <= '\\') goto yy196;\r
-                               if (yych <= ']') goto yy184;\r
-                               goto yy194;\r
-                       }\r
-               }\r
-yy209:\r
-               YYDEBUG(209, *YYCURSOR);\r
-               yyaccept = 2;\r
-               YYMARKER = ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               YYDEBUG(210, *YYCURSOR);\r
-               if (yych <= '\'') {\r
-                       if (yych <= '!') {\r
-                               if (yych <= '\n') {\r
-                                       if (yych <= '\t') goto yy194;\r
-                                       goto yy184;\r
-                               } else {\r
-                                       if (yych == '\r') goto yy184;\r
-                                       goto yy194;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '#') {\r
-                                       if (yych <= '"') goto yy184;\r
-                                       goto yy194;\r
-                               } else {\r
-                                       if (yych <= '$') goto yy197;\r
-                                       if (yych <= '&') goto yy194;\r
-                                       goto yy184;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= ':') {\r
-                               if (yych <= '.') {\r
-                                       if (yych <= '-') goto yy194;\r
-                                       goto yy207;\r
-                               } else {\r
-                                       if (yych <= '/') goto yy194;\r
-                                       if (yych <= '9') goto yy209;\r
-                                       goto yy194;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '[') {\r
-                                       if (yych <= ';') goto yy184;\r
-                                       goto yy194;\r
-                               } else {\r
-                                       if (yych <= '\\') goto yy196;\r
-                                       if (yych <= ']') goto yy184;\r
-                                       goto yy194;\r
-                               }\r
-                       }\r
-               }\r
-yy211:\r
-               YYDEBUG(211, *YYCURSOR);\r
-               yyaccept = 2;\r
-               YYMARKER = ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               YYDEBUG(212, *YYCURSOR);\r
-               if (yych <= '&') {\r
-                       if (yych <= '\r') {\r
-                               if (yych == '\n') goto yy184;\r
-                               if (yych <= '\f') goto yy194;\r
-                               goto yy184;\r
-                       } else {\r
-                               if (yych <= '"') {\r
-                                       if (yych <= '!') goto yy194;\r
-                                       goto yy184;\r
-                               } else {\r
-                                       if (yych == '$') goto yy197;\r
-                                       goto yy194;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= ':') {\r
-                               if (yych <= '\'') goto yy184;\r
-                               if (yych <= '/') goto yy194;\r
-                               if (yych <= '9') goto yy211;\r
-                               goto yy194;\r
-                       } else {\r
-                               if (yych <= '[') {\r
-                                       if (yych <= ';') goto yy184;\r
-                                       goto yy194;\r
-                               } else {\r
-                                       if (yych <= '\\') goto yy196;\r
-                                       if (yych <= ']') goto yy184;\r
-                                       goto yy194;\r
-                               }\r
-                       }\r
-               }\r
-yy213:\r
-               YYDEBUG(213, *YYCURSOR);\r
-               yyaccept = 2;\r
-               YYMARKER = ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               YYDEBUG(214, *YYCURSOR);\r
-               if (yych <= '&') {\r
-                       if (yych <= '\r') {\r
-                               if (yych == '\n') goto yy184;\r
-                               if (yych <= '\f') goto yy194;\r
-                               goto yy184;\r
-                       } else {\r
-                               if (yych <= '"') {\r
-                                       if (yych <= '!') goto yy194;\r
-                                       goto yy184;\r
-                               } else {\r
-                                       if (yych == '$') goto yy197;\r
-                                       goto yy194;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= ':') {\r
-                               if (yych <= '\'') goto yy184;\r
-                               if (yych <= '/') goto yy194;\r
-                               if (yych <= '9') goto yy213;\r
-                               goto yy194;\r
-                       } else {\r
-                               if (yych <= '[') {\r
-                                       if (yych <= ';') goto yy184;\r
-                                       goto yy194;\r
-                               } else {\r
-                                       if (yych <= '\\') goto yy196;\r
-                                       if (yych <= ']') goto yy184;\r
-                                       goto yy194;\r
-                               }\r
-                       }\r
-               }\r
-yy215:\r
-               YYDEBUG(215, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               YYDEBUG(216, *YYCURSOR);\r
-               if (yybm[0+yych] & 128) {\r
-                       goto yy215;\r
-               }\r
-               YYDEBUG(217, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYDEBUG(218, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 368 "Zend/zend_ini_scanner.l"\r
-               { /* Raw string */\r
-       /* Eat leading and trailing single quotes */\r
-       if (yytext[0] == '\'' && yytext[yyleng - 1] == '\'') {\r
-               SCNG(yy_text)++;\r
-               yyleng = yyleng - 2;\r
-       }\r
-       RETURN_TOKEN(TC_RAW, yytext, yyleng);\r
-}\r
-#line 2724 "Zend/zend_ini_scanner.c"\r
-yy219:\r
-               YYDEBUG(219, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYDEBUG(220, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 401 "Zend/zend_ini_scanner.l"\r
-               { /* Variable start */\r
-       yy_push_state(ST_VARNAME TSRMLS_CC);\r
-       return TC_DOLLAR_CURLY;\r
-}\r
-#line 2735 "Zend/zend_ini_scanner.c"\r
-yy221:\r
-               YYDEBUG(221, *YYCURSOR);\r
-               yyaccept = 0;\r
-               YYMARKER = ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               YYDEBUG(222, *YYCURSOR);\r
-               if (yych <= '"') {\r
-                       if (yych <= '\f') {\r
-                               if (yych <= 0x08) goto yy194;\r
-                               if (yych <= '\t') goto yy221;\r
-                               if (yych <= '\n') goto yy173;\r
-                               goto yy194;\r
-                       } else {\r
-                               if (yych <= 0x1F) {\r
-                                       if (yych <= '\r') goto yy173;\r
-                                       goto yy194;\r
-                               } else {\r
-                                       if (yych <= ' ') goto yy221;\r
-                                       if (yych <= '!') goto yy194;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= ':') {\r
-                               if (yych <= '$') {\r
-                                       if (yych <= '#') goto yy194;\r
-                                       goto yy197;\r
-                               } else {\r
-                                       if (yych == '\'') goto yy173;\r
-                                       goto yy194;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '[') {\r
-                                       if (yych <= ';') goto yy173;\r
-                                       goto yy194;\r
-                               } else {\r
-                                       if (yych <= '\\') goto yy196;\r
-                                       if (yych <= ']') goto yy173;\r
-                                       goto yy194;\r
-                               }\r
-                       }\r
-               }\r
-yy223:\r
-               YYDEBUG(223, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               yych = *YYCURSOR;\r
-               goto yy178;\r
-       }\r
-/* *********************************** */\r
-yyc_ST_VALUE:\r
-       {\r
-               static const unsigned char yybm[] = {\r
-                       160, 162, 162, 162, 162, 162, 162, 162, \r
-                       162, 176, 128, 162, 162, 128, 162, 162, \r
-                       162, 162, 162, 162, 162, 162, 162, 162, \r
-                       162, 162, 162, 162, 162, 162, 162, 162, \r
-                       176, 160, 160, 162, 168, 162, 160,  32, \r
-                       160, 160, 162, 162, 162, 162, 162, 162, \r
-                       230, 230, 230, 230, 230, 230, 230, 230, \r
-                       230, 230, 162, 160, 162, 160, 162, 162, \r
-                       162, 166, 166, 166, 166, 166, 166, 166, \r
-                       166, 166, 166, 166, 166, 166, 166, 166, \r
-                       166, 166, 166, 166, 166, 166, 166, 166, \r
-                       166, 166, 166, 162, 162, 162, 160, 166, \r
-                       162, 166, 166, 166, 166, 166, 166, 166, \r
-                       166, 166, 166, 166, 166, 166, 166, 166, \r
-                       166, 166, 166, 166, 166, 166, 166, 166, \r
-                       166, 166, 166, 162, 160, 162, 160, 162, \r
-                       162, 162, 162, 162, 162, 162, 162, 162, \r
-                       162, 162, 162, 162, 162, 162, 162, 162, \r
-                       162, 162, 162, 162, 162, 162, 162, 162, \r
-                       162, 162, 162, 162, 162, 162, 162, 162, \r
-                       162, 162, 162, 162, 162, 162, 162, 162, \r
-                       162, 162, 162, 162, 162, 162, 162, 162, \r
-                       162, 162, 162, 162, 162, 162, 162, 162, \r
-                       162, 162, 162, 162, 162, 162, 162, 162, \r
-                       162, 162, 162, 162, 162, 162, 162, 162, \r
-                       162, 162, 162, 162, 162, 162, 162, 162, \r
-                       162, 162, 162, 162, 162, 162, 162, 162, \r
-                       162, 162, 162, 162, 162, 162, 162, 162, \r
-                       162, 162, 162, 162, 162, 162, 162, 162, \r
-                       162, 162, 162, 162, 162, 162, 162, 162, \r
-                       162, 162, 162, 162, 162, 162, 162, 162, \r
-                       162, 162, 162, 162, 162, 162, 162, 162, \r
-               };\r
-               YYDEBUG(224, *YYCURSOR);\r
-               YYFILL(6);\r
-               yych = *YYCURSOR;\r
-               YYDEBUG(-1, yych);\r
-               switch (yych) {\r
-               case 0x00:      goto yy226;\r
-               case '\t':\r
-               case ' ':       goto yy230;\r
-               case '\n':      goto yy232;\r
-               case '\r':      goto yy234;\r
-               case '!':\r
-               case '&':\r
-               case '(':\r
-               case ')':\r
-               case '^':\r
-               case '|':\r
-               case '~':       goto yy235;\r
-               case '"':       goto yy237;\r
-               case '$':       goto yy239;\r
-               case '\'':      goto yy240;\r
-               case '-':       goto yy241;\r
-               case '.':       goto yy242;\r
-               case '0':\r
-               case '1':\r
-               case '2':\r
-               case '3':\r
-               case '4':\r
-               case '5':\r
-               case '6':\r
-               case '7':\r
-               case '8':\r
-               case '9':       goto yy243;\r
-               case ';':       goto yy245;\r
-               case '=':       goto yy246;\r
-               case 'A':\r
-               case 'B':\r
-               case 'C':\r
-               case 'D':\r
-               case 'E':\r
-               case 'G':\r
-               case 'H':\r
-               case 'I':\r
-               case 'J':\r
-               case 'K':\r
-               case 'L':\r
-               case 'M':\r
-               case 'P':\r
-               case 'Q':\r
-               case 'R':\r
-               case 'S':\r
-               case 'U':\r
-               case 'V':\r
-               case 'W':\r
-               case 'X':\r
-               case 'Z':\r
-               case '_':\r
-               case 'a':\r
-               case 'b':\r
-               case 'c':\r
-               case 'd':\r
-               case 'e':\r
-               case 'g':\r
-               case 'h':\r
-               case 'i':\r
-               case 'j':\r
-               case 'k':\r
-               case 'l':\r
-               case 'm':\r
-               case 'p':\r
-               case 'q':\r
-               case 'r':\r
-               case 's':\r
-               case 'u':\r
-               case 'v':\r
-               case 'w':\r
-               case 'x':\r
-               case 'z':       goto yy248;\r
-               case 'F':\r
-               case 'f':       goto yy250;\r
-               case 'N':\r
-               case 'n':       goto yy251;\r
-               case 'O':\r
-               case 'o':       goto yy252;\r
-               case 'T':\r
-               case 't':       goto yy253;\r
-               case 'Y':\r
-               case 'y':       goto yy254;\r
-               default:        goto yy228;\r
-               }\r
-yy226:\r
-               YYDEBUG(226, *YYCURSOR);\r
-               ++YYCURSOR;\r
-yy227:\r
-               YYDEBUG(227, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 598 "Zend/zend_ini_scanner.l"\r
-               { /* End of option value (if EOF is reached before EOL */\r
-       BEGIN(INITIAL);\r
-       return END_OF_LINE;\r
-}\r
-#line 2921 "Zend/zend_ini_scanner.c"\r
-yy228:\r
-               YYDEBUG(228, *YYCURSOR);\r
-               yyaccept = 0;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               goto yy256;\r
-yy229:\r
-               YYDEBUG(229, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 517 "Zend/zend_ini_scanner.l"\r
-               { /* Get everything else as option/offset value */\r
-       RETURN_TOKEN(TC_STRING, yytext, yyleng);\r
-}\r
-#line 2934 "Zend/zend_ini_scanner.c"\r
-yy230:\r
-               YYDEBUG(230, *YYCURSOR);\r
-               yyaccept = 1;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               goto yy306;\r
-yy231:\r
-               YYDEBUG(231, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 571 "Zend/zend_ini_scanner.l"\r
-               {\r
-       RETURN_TOKEN(TC_WHITESPACE, yytext, yyleng);\r
-}\r
-#line 2947 "Zend/zend_ini_scanner.c"\r
-yy232:\r
-               YYDEBUG(232, *YYCURSOR);\r
-               ++YYCURSOR;\r
-yy233:\r
-               YYDEBUG(233, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 489 "Zend/zend_ini_scanner.l"\r
-               { /* End of option value */\r
-       BEGIN(INITIAL);\r
-       SCNG(lineno)++;\r
-       return END_OF_LINE;\r
-}\r
-#line 2960 "Zend/zend_ini_scanner.c"\r
-yy234:\r
-               YYDEBUG(234, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               if (yych == '\n') goto yy304;\r
-               goto yy233;\r
-yy235:\r
-               YYDEBUG(235, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               yych = *YYCURSOR;\r
-               goto yy303;\r
-yy236:\r
-               YYDEBUG(236, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 507 "Zend/zend_ini_scanner.l"\r
-               { /* Boolean operators */\r
-       return yytext[0];\r
-}\r
-#line 2978 "Zend/zend_ini_scanner.c"\r
-yy237:\r
-               YYDEBUG(237, *YYCURSOR);\r
-               ++YYCURSOR;\r
-yy238:\r
-               YYDEBUG(238, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 525 "Zend/zend_ini_scanner.l"\r
-               { /* Double quoted '"' string start */\r
-       yy_push_state(ST_DOUBLE_QUOTES TSRMLS_CC);\r
-       return '"';\r
-}\r
-#line 2990 "Zend/zend_ini_scanner.c"\r
-yy239:\r
-               YYDEBUG(239, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               if (yych <= '\\') {\r
-                       if (yych <= 0x00) goto yy227;\r
-                       if (yych <= '[') goto yy255;\r
-                       goto yy262;\r
-               } else {\r
-                       if (yych == '{') goto yy300;\r
-                       goto yy255;\r
-               }\r
-yy240:\r
-               YYDEBUG(240, *YYCURSOR);\r
-               yyaccept = 2;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               if (yybm[0+yych] & 128) {\r
-                       goto yy296;\r
-               }\r
-               goto yy227;\r
-yy241:\r
-               YYDEBUG(241, *YYCURSOR);\r
-               yyaccept = 0;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               if (yych <= '/') goto yy256;\r
-               if (yych <= '9') goto yy294;\r
-               goto yy256;\r
-yy242:\r
-               YYDEBUG(242, *YYCURSOR);\r
-               yyaccept = 0;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               if (yych <= '/') goto yy256;\r
-               if (yych <= '9') goto yy292;\r
-               goto yy256;\r
-yy243:\r
-               YYDEBUG(243, *YYCURSOR);\r
-               yyaccept = 3;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               if (yych <= '/') {\r
-                       if (yych <= 0x1F) {\r
-                               if (yych <= '\n') {\r
-                                       if (yych <= 0x00) goto yy244;\r
-                                       if (yych <= 0x08) goto yy256;\r
-                               } else {\r
-                                       if (yych != '\r') goto yy256;\r
-                               }\r
-                       } else {\r
-                               if (yych <= ')') {\r
-                                       if (yych <= '"') goto yy244;\r
-                                       if (yych <= '%') goto yy256;\r
-                               } else {\r
-                                       if (yych == '.') goto yy288;\r
-                                       goto yy256;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= ']') {\r
-                               if (yych <= ';') {\r
-                                       if (yych <= '9') goto yy290;\r
-                                       if (yych <= ':') goto yy256;\r
-                               } else {\r
-                                       if (yych != '=') goto yy256;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '|') {\r
-                                       if (yych <= '^') goto yy244;\r
-                                       if (yych <= '{') goto yy256;\r
-                               } else {\r
-                                       if (yych != '~') goto yy256;\r
-                               }\r
-                       }\r
-               }\r
-yy244:\r
-               YYDEBUG(244, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 499 "Zend/zend_ini_scanner.l"\r
-               { /* Get number option value as string */\r
-       RETURN_TOKEN(TC_NUMBER, yytext, yyleng);\r
-}\r
-#line 3069 "Zend/zend_ini_scanner.c"\r
-yy245:\r
-               YYDEBUG(245, *YYCURSOR);\r
-               yyaccept = 2;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               goto yy284;\r
-yy246:\r
-               YYDEBUG(246, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYDEBUG(247, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 511 "Zend/zend_ini_scanner.l"\r
-               { /* Make = used in option value to trigger error */\r
-       yyless(0);\r
-       BEGIN(INITIAL);\r
-       return END_OF_LINE;\r
-}\r
-#line 3086 "Zend/zend_ini_scanner.c"\r
-yy248:\r
-               YYDEBUG(248, *YYCURSOR);\r
-               yyaccept = 4;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               if (yybm[0+yych] & 4) {\r
-                       goto yy257;\r
-               }\r
-               if (yych <= ':') {\r
-                       if (yych <= '\r') {\r
-                               if (yych <= 0x08) {\r
-                                       if (yych >= 0x01) goto yy256;\r
-                               } else {\r
-                                       if (yych <= '\n') goto yy249;\r
-                                       if (yych <= '\f') goto yy256;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '"') {\r
-                                       if (yych <= 0x1F) goto yy256;\r
-                               } else {\r
-                                       if (yych <= '%') goto yy256;\r
-                                       if (yych >= '*') goto yy256;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= '^') {\r
-                               if (yych <= '<') {\r
-                                       if (yych >= '<') goto yy256;\r
-                               } else {\r
-                                       if (yych <= '=') goto yy249;\r
-                                       if (yych <= ']') goto yy256;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '|') {\r
-                                       if (yych <= '{') goto yy256;\r
-                               } else {\r
-                                       if (yych != '~') goto yy256;\r
-                               }\r
-                       }\r
-               }\r
-yy249:\r
-               YYDEBUG(249, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 495 "Zend/zend_ini_scanner.l"\r
-               { /* Get constant option value */\r
-       RETURN_TOKEN(TC_CONSTANT, yytext, yyleng);\r
-}\r
-#line 3133 "Zend/zend_ini_scanner.c"\r
-yy250:\r
-               YYDEBUG(250, *YYCURSOR);\r
-               yyaccept = 4;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               if (yych <= '<') {\r
-                       if (yych <= '"') {\r
-                               if (yych <= '\n') {\r
-                                       if (yych <= 0x00) goto yy249;\r
-                                       if (yych <= 0x08) goto yy256;\r
-                                       goto yy249;\r
-                               } else {\r
-                                       if (yych == '\r') goto yy249;\r
-                                       if (yych <= 0x1F) goto yy256;\r
-                                       goto yy249;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '/') {\r
-                                       if (yych <= '%') goto yy256;\r
-                                       if (yych <= ')') goto yy249;\r
-                                       goto yy256;\r
-                               } else {\r
-                                       if (yych <= '9') goto yy257;\r
-                                       if (yych == ';') goto yy249;\r
-                                       goto yy256;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= '_') {\r
-                               if (yych <= 'A') {\r
-                                       if (yych <= '=') goto yy249;\r
-                                       if (yych <= '@') goto yy256;\r
-                                       goto yy280;\r
-                               } else {\r
-                                       if (yych <= 'Z') goto yy257;\r
-                                       if (yych <= ']') goto yy256;\r
-                                       if (yych <= '^') goto yy249;\r
-                                       goto yy257;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '{') {\r
-                                       if (yych <= '`') goto yy256;\r
-                                       if (yych <= 'a') goto yy280;\r
-                                       if (yych <= 'z') goto yy257;\r
-                                       goto yy256;\r
-                               } else {\r
-                                       if (yych == '}') goto yy256;\r
-                                       if (yych <= '~') goto yy249;\r
-                                       goto yy256;\r
-                               }\r
-                       }\r
-               }\r
-yy251:\r
-               YYDEBUG(251, *YYCURSOR);\r
-               yyaccept = 4;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               if (yych <= 'N') {\r
-                       if (yych <= '%') {\r
-                               if (yych <= '\f') {\r
-                                       if (yych <= 0x00) goto yy249;\r
-                                       if (yych <= 0x08) goto yy256;\r
-                                       if (yych <= '\n') goto yy249;\r
-                                       goto yy256;\r
-                               } else {\r
-                                       if (yych <= '\r') goto yy249;\r
-                                       if (yych <= 0x1F) goto yy256;\r
-                                       if (yych <= '"') goto yy249;\r
-                                       goto yy256;\r
-                               }\r
-                       } else {\r
-                               if (yych <= ':') {\r
-                                       if (yych <= ')') goto yy249;\r
-                                       if (yych <= '/') goto yy256;\r
-                                       if (yych <= '9') goto yy257;\r
-                                       goto yy256;\r
-                               } else {\r
-                                       if (yych <= '<') {\r
-                                               if (yych <= ';') goto yy249;\r
-                                               goto yy256;\r
-                                       } else {\r
-                                               if (yych <= '=') goto yy249;\r
-                                               if (yych <= '@') goto yy256;\r
-                                               goto yy257;\r
-                                       }\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= 'n') {\r
-                               if (yych <= 'Z') {\r
-                                       if (yych <= 'O') goto yy276;\r
-                                       if (yych == 'U') goto yy277;\r
-                                       goto yy257;\r
-                               } else {\r
-                                       if (yych <= '^') {\r
-                                               if (yych <= ']') goto yy256;\r
-                                               goto yy249;\r
-                                       } else {\r
-                                               if (yych == '`') goto yy256;\r
-                                               goto yy257;\r
-                                       }\r
-                               }\r
-                       } else {\r
-                               if (yych <= 'z') {\r
-                                       if (yych <= 'o') goto yy276;\r
-                                       if (yych == 'u') goto yy277;\r
-                                       goto yy257;\r
-                               } else {\r
-                                       if (yych <= '|') {\r
-                                               if (yych <= '{') goto yy256;\r
-                                               goto yy249;\r
-                                       } else {\r
-                                               if (yych == '~') goto yy249;\r
-                                               goto yy256;\r
-                                       }\r
-                               }\r
-                       }\r
-               }\r
-yy252:\r
-               YYDEBUG(252, *YYCURSOR);\r
-               yyaccept = 4;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               if (yych <= 'E') {\r
-                       if (yych <= '%') {\r
-                               if (yych <= '\f') {\r
-                                       if (yych <= 0x00) goto yy249;\r
-                                       if (yych <= 0x08) goto yy256;\r
-                                       if (yych <= '\n') goto yy249;\r
-                                       goto yy256;\r
-                               } else {\r
-                                       if (yych <= '\r') goto yy249;\r
-                                       if (yych <= 0x1F) goto yy256;\r
-                                       if (yych <= '"') goto yy249;\r
-                                       goto yy256;\r
-                               }\r
-                       } else {\r
-                               if (yych <= ':') {\r
-                                       if (yych <= ')') goto yy249;\r
-                                       if (yych <= '/') goto yy256;\r
-                                       if (yych <= '9') goto yy257;\r
-                                       goto yy256;\r
-                               } else {\r
-                                       if (yych <= '<') {\r
-                                               if (yych <= ';') goto yy249;\r
-                                               goto yy256;\r
-                                       } else {\r
-                                               if (yych <= '=') goto yy249;\r
-                                               if (yych <= '@') goto yy256;\r
-                                               goto yy257;\r
-                                       }\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= 'e') {\r
-                               if (yych <= 'Z') {\r
-                                       if (yych <= 'F') goto yy271;\r
-                                       if (yych == 'N') goto yy265;\r
-                                       goto yy257;\r
-                               } else {\r
-                                       if (yych <= '^') {\r
-                                               if (yych <= ']') goto yy256;\r
-                                               goto yy249;\r
-                                       } else {\r
-                                               if (yych == '`') goto yy256;\r
-                                               goto yy257;\r
-                                       }\r
-                               }\r
-                       } else {\r
-                               if (yych <= 'z') {\r
-                                       if (yych <= 'f') goto yy271;\r
-                                       if (yych == 'n') goto yy265;\r
-                                       goto yy257;\r
-                               } else {\r
-                                       if (yych <= '|') {\r
-                                               if (yych <= '{') goto yy256;\r
-                                               goto yy249;\r
-                                       } else {\r
-                                               if (yych == '~') goto yy249;\r
-                                               goto yy256;\r
-                                       }\r
-                               }\r
-                       }\r
-               }\r
-yy253:\r
-               YYDEBUG(253, *YYCURSOR);\r
-               yyaccept = 4;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               if (yych <= '=') {\r
-                       if (yych <= '"') {\r
-                               if (yych <= '\n') {\r
-                                       if (yych <= 0x00) goto yy249;\r
-                                       if (yych <= 0x08) goto yy256;\r
-                                       goto yy249;\r
-                               } else {\r
-                                       if (yych == '\r') goto yy249;\r
-                                       if (yych <= 0x1F) goto yy256;\r
-                                       goto yy249;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '9') {\r
-                                       if (yych <= '%') goto yy256;\r
-                                       if (yych <= ')') goto yy249;\r
-                                       if (yych <= '/') goto yy256;\r
-                                       goto yy257;\r
-                               } else {\r
-                                       if (yych == ';') goto yy249;\r
-                                       if (yych <= '<') goto yy256;\r
-                                       goto yy249;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= '`') {\r
-                               if (yych <= 'Z') {\r
-                                       if (yych <= '@') goto yy256;\r
-                                       if (yych == 'R') goto yy269;\r
-                                       goto yy257;\r
-                               } else {\r
-                                       if (yych <= ']') goto yy256;\r
-                                       if (yych <= '^') goto yy249;\r
-                                       if (yych <= '_') goto yy257;\r
-                                       goto yy256;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '{') {\r
-                                       if (yych == 'r') goto yy269;\r
-                                       if (yych <= 'z') goto yy257;\r
-                                       goto yy256;\r
-                               } else {\r
-                                       if (yych == '}') goto yy256;\r
-                                       if (yych <= '~') goto yy249;\r
-                                       goto yy256;\r
-                               }\r
-                       }\r
-               }\r
-yy254:\r
-               YYDEBUG(254, *YYCURSOR);\r
-               yyaccept = 4;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               if (yych <= '=') {\r
-                       if (yych <= '"') {\r
-                               if (yych <= '\n') {\r
-                                       if (yych <= 0x00) goto yy249;\r
-                                       if (yych <= 0x08) goto yy256;\r
-                                       goto yy249;\r
-                               } else {\r
-                                       if (yych == '\r') goto yy249;\r
-                                       if (yych <= 0x1F) goto yy256;\r
-                                       goto yy249;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '9') {\r
-                                       if (yych <= '%') goto yy256;\r
-                                       if (yych <= ')') goto yy249;\r
-                                       if (yych <= '/') goto yy256;\r
-                                       goto yy257;\r
-                               } else {\r
-                                       if (yych == ';') goto yy249;\r
-                                       if (yych <= '<') goto yy256;\r
-                                       goto yy249;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= '`') {\r
-                               if (yych <= 'Z') {\r
-                                       if (yych <= '@') goto yy256;\r
-                                       if (yych == 'E') goto yy259;\r
-                                       goto yy257;\r
-                               } else {\r
-                                       if (yych <= ']') goto yy256;\r
-                                       if (yych <= '^') goto yy249;\r
-                                       if (yych <= '_') goto yy257;\r
-                                       goto yy256;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '{') {\r
-                                       if (yych == 'e') goto yy259;\r
-                                       if (yych <= 'z') goto yy257;\r
-                                       goto yy256;\r
-                               } else {\r
-                                       if (yych == '}') goto yy256;\r
-                                       if (yych <= '~') goto yy249;\r
-                                       goto yy256;\r
-                               }\r
-                       }\r
-               }\r
-yy255:\r
-               YYDEBUG(255, *YYCURSOR);\r
-               yyaccept = 0;\r
-               YYMARKER = ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-yy256:\r
-               YYDEBUG(256, *YYCURSOR);\r
-               if (yybm[0+yych] & 2) {\r
-                       goto yy255;\r
-               }\r
-               if (yych == '$') goto yy260;\r
-               goto yy229;\r
-yy257:\r
-               YYDEBUG(257, *YYCURSOR);\r
-               yyaccept = 4;\r
-               YYMARKER = ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               YYDEBUG(258, *YYCURSOR);\r
-               if (yybm[0+yych] & 4) {\r
-                       goto yy257;\r
-               }\r
-               if (yych <= ')') {\r
-                       if (yych <= '\r') {\r
-                               if (yych <= 0x08) {\r
-                                       if (yych <= 0x00) goto yy249;\r
-                                       goto yy255;\r
-                               } else {\r
-                                       if (yych <= '\n') goto yy249;\r
-                                       if (yych <= '\f') goto yy255;\r
-                                       goto yy249;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '#') {\r
-                                       if (yych <= 0x1F) goto yy255;\r
-                                       if (yych <= '"') goto yy249;\r
-                                       goto yy255;\r
-                               } else {\r
-                                       if (yych <= '$') goto yy260;\r
-                                       if (yych <= '%') goto yy255;\r
-                                       goto yy249;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= ']') {\r
-                               if (yych <= ';') {\r
-                                       if (yych <= ':') goto yy255;\r
-                                       goto yy249;\r
-                               } else {\r
-                                       if (yych == '=') goto yy249;\r
-                                       goto yy255;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '|') {\r
-                                       if (yych <= '^') goto yy249;\r
-                                       if (yych <= '{') goto yy255;\r
-                                       goto yy249;\r
-                               } else {\r
-                                       if (yych == '~') goto yy249;\r
-                                       goto yy255;\r
-                               }\r
-                       }\r
-               }\r
-yy259:\r
-               YYDEBUG(259, *YYCURSOR);\r
-               yyaccept = 4;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               if (yych <= '=') {\r
-                       if (yych <= '"') {\r
-                               if (yych <= '\n') {\r
-                                       if (yych <= 0x00) goto yy249;\r
-                                       if (yych <= 0x08) goto yy256;\r
-                                       goto yy249;\r
-                               } else {\r
-                                       if (yych == '\r') goto yy249;\r
-                                       if (yych <= 0x1F) goto yy256;\r
-                                       goto yy249;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '9') {\r
-                                       if (yych <= '%') goto yy256;\r
-                                       if (yych <= ')') goto yy249;\r
-                                       if (yych <= '/') goto yy256;\r
-                                       goto yy257;\r
-                               } else {\r
-                                       if (yych == ';') goto yy249;\r
-                                       if (yych <= '<') goto yy256;\r
-                                       goto yy249;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= '`') {\r
-                               if (yych <= 'Z') {\r
-                                       if (yych <= '@') goto yy256;\r
-                                       if (yych == 'S') goto yy265;\r
-                                       goto yy257;\r
-                               } else {\r
-                                       if (yych <= ']') goto yy256;\r
-                                       if (yych <= '^') goto yy249;\r
-                                       if (yych <= '_') goto yy257;\r
-                                       goto yy256;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '{') {\r
-                                       if (yych == 's') goto yy265;\r
-                                       if (yych <= 'z') goto yy257;\r
-                                       goto yy256;\r
-                               } else {\r
-                                       if (yych == '}') goto yy256;\r
-                                       if (yych <= '~') goto yy249;\r
-                                       goto yy256;\r
-                               }\r
-                       }\r
-               }\r
-yy260:\r
-               YYDEBUG(260, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               if (yych <= '\\') {\r
-                       if (yych <= 0x00) goto yy261;\r
-                       if (yych <= '[') goto yy255;\r
-                       goto yy262;\r
-               } else {\r
-                       if (yych != '{') goto yy255;\r
-               }\r
-yy261:\r
-               YYDEBUG(261, *YYCURSOR);\r
-               YYCURSOR = YYMARKER;\r
-               if (yyaccept <= 3) {\r
-                       if (yyaccept <= 1) {\r
-                               if (yyaccept <= 0) {\r
-                                       goto yy229;\r
-                               } else {\r
-                                       goto yy231;\r
-                               }\r
-                       } else {\r
-                               if (yyaccept <= 2) {\r
-                                       goto yy227;\r
-                               } else {\r
-                                       goto yy244;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yyaccept <= 5) {\r
-                               if (yyaccept <= 4) {\r
-                                       goto yy249;\r
-                               } else {\r
-                                       goto yy266;\r
-                               }\r
-                       } else {\r
-                               goto yy273;\r
-                       }\r
-               }\r
-yy262:\r
-               YYDEBUG(262, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               if (yybm[0+yych] & 8) {\r
-                       goto yy263;\r
-               }\r
-               goto yy255;\r
-yy263:\r
-               YYDEBUG(263, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               YYDEBUG(264, *YYCURSOR);\r
-               if (yybm[0+yych] & 8) {\r
-                       goto yy263;\r
-               }\r
-               if (yych <= 0x00) goto yy229;\r
-               if (yych == '\\') goto yy262;\r
-               goto yy255;\r
-yy265:\r
-               YYDEBUG(265, *YYCURSOR);\r
-               yyaccept = 5;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               if (yybm[0+yych] & 16) {\r
-                       goto yy267;\r
-               }\r
-               if (yych <= ';') {\r
-                       if (yych <= ' ') {\r
-                               if (yych <= '\n') {\r
-                                       if (yych <= 0x00) goto yy266;\r
-                                       if (yych <= '\t') goto yy256;\r
-                               } else {\r
-                                       if (yych != '\r') goto yy256;\r
-                               }\r
-                       } else {\r
-                               if (yych <= ')') {\r
-                                       if (yych <= '"') goto yy266;\r
-                                       if (yych <= '%') goto yy256;\r
-                               } else {\r
-                                       if (yych <= '/') goto yy256;\r
-                                       if (yych <= '9') goto yy257;\r
-                                       if (yych <= ':') goto yy256;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= '_') {\r
-                               if (yych <= '@') {\r
-                                       if (yych != '=') goto yy256;\r
-                               } else {\r
-                                       if (yych <= 'Z') goto yy257;\r
-                                       if (yych <= ']') goto yy256;\r
-                                       if (yych >= '_') goto yy257;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '{') {\r
-                                       if (yych <= '`') goto yy256;\r
-                                       if (yych <= 'z') goto yy257;\r
-                                       goto yy256;\r
-                               } else {\r
-                                       if (yych == '}') goto yy256;\r
-                                       if (yych >= 0x7F) goto yy256;\r
-                               }\r
-                       }\r
-               }\r
-yy266:\r
-               YYDEBUG(266, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 421 "Zend/zend_ini_scanner.l"\r
-               { /* TRUE value (when used outside option value/offset this causes parse error!) */\r
-       RETURN_TOKEN(BOOL_TRUE, "1", 1);\r
-}\r
-#line 3645 "Zend/zend_ini_scanner.c"\r
-yy267:\r
-               YYDEBUG(267, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               YYDEBUG(268, *YYCURSOR);\r
-               if (yybm[0+yych] & 16) {\r
-                       goto yy267;\r
-               }\r
-               goto yy266;\r
-yy269:\r
-               YYDEBUG(269, *YYCURSOR);\r
-               yyaccept = 4;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               if (yych <= '=') {\r
-                       if (yych <= '"') {\r
-                               if (yych <= '\n') {\r
-                                       if (yych <= 0x00) goto yy249;\r
-                                       if (yych <= 0x08) goto yy256;\r
-                                       goto yy249;\r
-                               } else {\r
-                                       if (yych == '\r') goto yy249;\r
-                                       if (yych <= 0x1F) goto yy256;\r
-                                       goto yy249;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '9') {\r
-                                       if (yych <= '%') goto yy256;\r
-                                       if (yych <= ')') goto yy249;\r
-                                       if (yych <= '/') goto yy256;\r
-                                       goto yy257;\r
-                               } else {\r
-                                       if (yych == ';') goto yy249;\r
-                                       if (yych <= '<') goto yy256;\r
-                                       goto yy249;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= '`') {\r
-                               if (yych <= 'Z') {\r
-                                       if (yych <= '@') goto yy256;\r
-                                       if (yych != 'U') goto yy257;\r
-                               } else {\r
-                                       if (yych <= ']') goto yy256;\r
-                                       if (yych <= '^') goto yy249;\r
-                                       if (yych <= '_') goto yy257;\r
-                                       goto yy256;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '{') {\r
-                                       if (yych == 'u') goto yy270;\r
-                                       if (yych <= 'z') goto yy257;\r
-                                       goto yy256;\r
-                               } else {\r
-                                       if (yych == '}') goto yy256;\r
-                                       if (yych <= '~') goto yy249;\r
-                                       goto yy256;\r
-                               }\r
-                       }\r
-               }\r
-yy270:\r
-               YYDEBUG(270, *YYCURSOR);\r
-               yyaccept = 4;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               if (yych <= '=') {\r
-                       if (yych <= '"') {\r
-                               if (yych <= '\n') {\r
-                                       if (yych <= 0x00) goto yy249;\r
-                                       if (yych <= 0x08) goto yy256;\r
-                                       goto yy249;\r
-                               } else {\r
-                                       if (yych == '\r') goto yy249;\r
-                                       if (yych <= 0x1F) goto yy256;\r
-                                       goto yy249;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '9') {\r
-                                       if (yych <= '%') goto yy256;\r
-                                       if (yych <= ')') goto yy249;\r
-                                       if (yych <= '/') goto yy256;\r
-                                       goto yy257;\r
-                               } else {\r
-                                       if (yych == ';') goto yy249;\r
-                                       if (yych <= '<') goto yy256;\r
-                                       goto yy249;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= '`') {\r
-                               if (yych <= 'Z') {\r
-                                       if (yych <= '@') goto yy256;\r
-                                       if (yych == 'E') goto yy265;\r
-                                       goto yy257;\r
-                               } else {\r
-                                       if (yych <= ']') goto yy256;\r
-                                       if (yych <= '^') goto yy249;\r
-                                       if (yych <= '_') goto yy257;\r
-                                       goto yy256;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '{') {\r
-                                       if (yych == 'e') goto yy265;\r
-                                       if (yych <= 'z') goto yy257;\r
-                                       goto yy256;\r
-                               } else {\r
-                                       if (yych == '}') goto yy256;\r
-                                       if (yych <= '~') goto yy249;\r
-                                       goto yy256;\r
-                               }\r
-                       }\r
-               }\r
-yy271:\r
-               YYDEBUG(271, *YYCURSOR);\r
-               yyaccept = 4;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               if (yych <= '=') {\r
-                       if (yych <= '"') {\r
-                               if (yych <= '\n') {\r
-                                       if (yych <= 0x00) goto yy249;\r
-                                       if (yych <= 0x08) goto yy256;\r
-                                       goto yy249;\r
-                               } else {\r
-                                       if (yych == '\r') goto yy249;\r
-                                       if (yych <= 0x1F) goto yy256;\r
-                                       goto yy249;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '9') {\r
-                                       if (yych <= '%') goto yy256;\r
-                                       if (yych <= ')') goto yy249;\r
-                                       if (yych <= '/') goto yy256;\r
-                                       goto yy257;\r
-                               } else {\r
-                                       if (yych == ';') goto yy249;\r
-                                       if (yych <= '<') goto yy256;\r
-                                       goto yy249;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= '`') {\r
-                               if (yych <= 'Z') {\r
-                                       if (yych <= '@') goto yy256;\r
-                                       if (yych != 'F') goto yy257;\r
-                               } else {\r
-                                       if (yych <= ']') goto yy256;\r
-                                       if (yych <= '^') goto yy249;\r
-                                       if (yych <= '_') goto yy257;\r
-                                       goto yy256;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '{') {\r
-                                       if (yych == 'f') goto yy272;\r
-                                       if (yych <= 'z') goto yy257;\r
-                                       goto yy256;\r
-                               } else {\r
-                                       if (yych == '}') goto yy256;\r
-                                       if (yych <= '~') goto yy249;\r
-                                       goto yy256;\r
-                               }\r
-                       }\r
-               }\r
-yy272:\r
-               YYDEBUG(272, *YYCURSOR);\r
-               yyaccept = 6;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               if (yybm[0+yych] & 4) {\r
-                       goto yy257;\r
-               }\r
-               if (yych <= ')') {\r
-                       if (yych <= '\f') {\r
-                               if (yych <= 0x08) {\r
-                                       if (yych >= 0x01) goto yy256;\r
-                               } else {\r
-                                       if (yych <= '\t') goto yy274;\r
-                                       if (yych >= '\v') goto yy256;\r
-                               }\r
-                       } else {\r
-                               if (yych <= ' ') {\r
-                                       if (yych <= '\r') goto yy273;\r
-                                       if (yych <= 0x1F) goto yy256;\r
-                                       goto yy274;\r
-                               } else {\r
-                                       if (yych <= '"') goto yy273;\r
-                                       if (yych <= '%') goto yy256;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= ']') {\r
-                               if (yych <= ';') {\r
-                                       if (yych <= ':') goto yy256;\r
-                               } else {\r
-                                       if (yych != '=') goto yy256;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '|') {\r
-                                       if (yych <= '^') goto yy273;\r
-                                       if (yych <= '{') goto yy256;\r
-                               } else {\r
-                                       if (yych != '~') goto yy256;\r
-                               }\r
-                       }\r
-               }\r
-yy273:\r
-               YYDEBUG(273, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 425 "Zend/zend_ini_scanner.l"\r
-               { /* FALSE value (when used outside option value/offset this causes parse error!)*/\r
-       RETURN_TOKEN(BOOL_FALSE, "", 0);\r
-}\r
-#line 3855 "Zend/zend_ini_scanner.c"\r
-yy274:\r
-               YYDEBUG(274, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               YYDEBUG(275, *YYCURSOR);\r
-               if (yych == '\t') goto yy274;\r
-               if (yych == ' ') goto yy274;\r
-               goto yy273;\r
-yy276:\r
-               YYDEBUG(276, *YYCURSOR);\r
-               yyaccept = 6;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               if (yych <= '<') {\r
-                       if (yych <= ' ') {\r
-                               if (yych <= '\n') {\r
-                                       if (yych <= 0x00) goto yy273;\r
-                                       if (yych <= 0x08) goto yy256;\r
-                                       if (yych <= '\t') goto yy274;\r
-                                       goto yy273;\r
-                               } else {\r
-                                       if (yych == '\r') goto yy273;\r
-                                       if (yych <= 0x1F) goto yy256;\r
-                                       goto yy274;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '/') {\r
-                                       if (yych <= '"') goto yy273;\r
-                                       if (yych <= '%') goto yy256;\r
-                                       if (yych <= ')') goto yy273;\r
-                                       goto yy256;\r
-                               } else {\r
-                                       if (yych <= '9') goto yy257;\r
-                                       if (yych == ';') goto yy273;\r
-                                       goto yy256;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= '_') {\r
-                               if (yych <= 'N') {\r
-                                       if (yych <= '=') goto yy273;\r
-                                       if (yych <= '@') goto yy256;\r
-                                       if (yych <= 'M') goto yy257;\r
-                                       goto yy279;\r
-                               } else {\r
-                                       if (yych <= 'Z') goto yy257;\r
-                                       if (yych <= ']') goto yy256;\r
-                                       if (yych <= '^') goto yy273;\r
-                                       goto yy257;\r
-                               }\r
-                       } else {\r
-                               if (yych <= 'z') {\r
-                                       if (yych <= '`') goto yy256;\r
-                                       if (yych == 'n') goto yy279;\r
-                                       goto yy257;\r
-                               } else {\r
-                                       if (yych <= '|') {\r
-                                               if (yych <= '{') goto yy256;\r
-                                               goto yy273;\r
-                                       } else {\r
-                                               if (yych == '~') goto yy273;\r
-                                               goto yy256;\r
-                                       }\r
-                               }\r
-                       }\r
-               }\r
-yy277:\r
-               YYDEBUG(277, *YYCURSOR);\r
-               yyaccept = 4;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               if (yych <= '=') {\r
-                       if (yych <= '"') {\r
-                               if (yych <= '\n') {\r
-                                       if (yych <= 0x00) goto yy249;\r
-                                       if (yych <= 0x08) goto yy256;\r
-                                       goto yy249;\r
-                               } else {\r
-                                       if (yych == '\r') goto yy249;\r
-                                       if (yych <= 0x1F) goto yy256;\r
-                                       goto yy249;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '9') {\r
-                                       if (yych <= '%') goto yy256;\r
-                                       if (yych <= ')') goto yy249;\r
-                                       if (yych <= '/') goto yy256;\r
-                                       goto yy257;\r
-                               } else {\r
-                                       if (yych == ';') goto yy249;\r
-                                       if (yych <= '<') goto yy256;\r
-                                       goto yy249;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= '`') {\r
-                               if (yych <= 'Z') {\r
-                                       if (yych <= '@') goto yy256;\r
-                                       if (yych != 'L') goto yy257;\r
-                               } else {\r
-                                       if (yych <= ']') goto yy256;\r
-                                       if (yych <= '^') goto yy249;\r
-                                       if (yych <= '_') goto yy257;\r
-                                       goto yy256;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '{') {\r
-                                       if (yych == 'l') goto yy278;\r
-                                       if (yych <= 'z') goto yy257;\r
-                                       goto yy256;\r
-                               } else {\r
-                                       if (yych == '}') goto yy256;\r
-                                       if (yych <= '~') goto yy249;\r
-                                       goto yy256;\r
-                               }\r
-                       }\r
-               }\r
-yy278:\r
-               YYDEBUG(278, *YYCURSOR);\r
-               yyaccept = 4;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               if (yych <= '=') {\r
-                       if (yych <= '"') {\r
-                               if (yych <= '\n') {\r
-                                       if (yych <= 0x00) goto yy249;\r
-                                       if (yych <= 0x08) goto yy256;\r
-                                       goto yy249;\r
-                               } else {\r
-                                       if (yych == '\r') goto yy249;\r
-                                       if (yych <= 0x1F) goto yy256;\r
-                                       goto yy249;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '9') {\r
-                                       if (yych <= '%') goto yy256;\r
-                                       if (yych <= ')') goto yy249;\r
-                                       if (yych <= '/') goto yy256;\r
-                                       goto yy257;\r
-                               } else {\r
-                                       if (yych == ';') goto yy249;\r
-                                       if (yych <= '<') goto yy256;\r
-                                       goto yy249;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= '`') {\r
-                               if (yych <= 'Z') {\r
-                                       if (yych <= '@') goto yy256;\r
-                                       if (yych == 'L') goto yy272;\r
-                                       goto yy257;\r
-                               } else {\r
-                                       if (yych <= ']') goto yy256;\r
-                                       if (yych <= '^') goto yy249;\r
-                                       if (yych <= '_') goto yy257;\r
-                                       goto yy256;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '{') {\r
-                                       if (yych == 'l') goto yy272;\r
-                                       if (yych <= 'z') goto yy257;\r
-                                       goto yy256;\r
-                               } else {\r
-                                       if (yych == '}') goto yy256;\r
-                                       if (yych <= '~') goto yy249;\r
-                                       goto yy256;\r
-                               }\r
-                       }\r
-               }\r
-yy279:\r
-               YYDEBUG(279, *YYCURSOR);\r
-               yyaccept = 4;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               if (yych <= '=') {\r
-                       if (yych <= '"') {\r
-                               if (yych <= '\n') {\r
-                                       if (yych <= 0x00) goto yy249;\r
-                                       if (yych <= 0x08) goto yy256;\r
-                                       goto yy249;\r
-                               } else {\r
-                                       if (yych == '\r') goto yy249;\r
-                                       if (yych <= 0x1F) goto yy256;\r
-                                       goto yy249;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '9') {\r
-                                       if (yych <= '%') goto yy256;\r
-                                       if (yych <= ')') goto yy249;\r
-                                       if (yych <= '/') goto yy256;\r
-                                       goto yy257;\r
-                               } else {\r
-                                       if (yych == ';') goto yy249;\r
-                                       if (yych <= '<') goto yy256;\r
-                                       goto yy249;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= '`') {\r
-                               if (yych <= 'Z') {\r
-                                       if (yych <= '@') goto yy256;\r
-                                       if (yych == 'E') goto yy272;\r
-                                       goto yy257;\r
-                               } else {\r
-                                       if (yych <= ']') goto yy256;\r
-                                       if (yych <= '^') goto yy249;\r
-                                       if (yych <= '_') goto yy257;\r
-                                       goto yy256;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '{') {\r
-                                       if (yych == 'e') goto yy272;\r
-                                       if (yych <= 'z') goto yy257;\r
-                                       goto yy256;\r
-                               } else {\r
-                                       if (yych == '}') goto yy256;\r
-                                       if (yych <= '~') goto yy249;\r
-                                       goto yy256;\r
-                               }\r
-                       }\r
-               }\r
-yy280:\r
-               YYDEBUG(280, *YYCURSOR);\r
-               yyaccept = 4;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               if (yych <= '=') {\r
-                       if (yych <= '"') {\r
-                               if (yych <= '\n') {\r
-                                       if (yych <= 0x00) goto yy249;\r
-                                       if (yych <= 0x08) goto yy256;\r
-                                       goto yy249;\r
-                               } else {\r
-                                       if (yych == '\r') goto yy249;\r
-                                       if (yych <= 0x1F) goto yy256;\r
-                                       goto yy249;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '9') {\r
-                                       if (yych <= '%') goto yy256;\r
-                                       if (yych <= ')') goto yy249;\r
-                                       if (yych <= '/') goto yy256;\r
-                                       goto yy257;\r
-                               } else {\r
-                                       if (yych == ';') goto yy249;\r
-                                       if (yych <= '<') goto yy256;\r
-                                       goto yy249;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= '`') {\r
-                               if (yych <= 'Z') {\r
-                                       if (yych <= '@') goto yy256;\r
-                                       if (yych != 'L') goto yy257;\r
-                               } else {\r
-                                       if (yych <= ']') goto yy256;\r
-                                       if (yych <= '^') goto yy249;\r
-                                       if (yych <= '_') goto yy257;\r
-                                       goto yy256;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '{') {\r
-                                       if (yych == 'l') goto yy281;\r
-                                       if (yych <= 'z') goto yy257;\r
-                                       goto yy256;\r
-                               } else {\r
-                                       if (yych == '}') goto yy256;\r
-                                       if (yych <= '~') goto yy249;\r
-                                       goto yy256;\r
-                               }\r
-                       }\r
-               }\r
-yy281:\r
-               YYDEBUG(281, *YYCURSOR);\r
-               yyaccept = 4;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               if (yych <= '=') {\r
-                       if (yych <= '"') {\r
-                               if (yych <= '\n') {\r
-                                       if (yych <= 0x00) goto yy249;\r
-                                       if (yych <= 0x08) goto yy256;\r
-                                       goto yy249;\r
-                               } else {\r
-                                       if (yych == '\r') goto yy249;\r
-                                       if (yych <= 0x1F) goto yy256;\r
-                                       goto yy249;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '9') {\r
-                                       if (yych <= '%') goto yy256;\r
-                                       if (yych <= ')') goto yy249;\r
-                                       if (yych <= '/') goto yy256;\r
-                                       goto yy257;\r
-                               } else {\r
-                                       if (yych == ';') goto yy249;\r
-                                       if (yych <= '<') goto yy256;\r
-                                       goto yy249;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= '`') {\r
-                               if (yych <= 'Z') {\r
-                                       if (yych <= '@') goto yy256;\r
-                                       if (yych != 'S') goto yy257;\r
-                               } else {\r
-                                       if (yych <= ']') goto yy256;\r
-                                       if (yych <= '^') goto yy249;\r
-                                       if (yych <= '_') goto yy257;\r
-                                       goto yy256;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '{') {\r
-                                       if (yych == 's') goto yy282;\r
-                                       if (yych <= 'z') goto yy257;\r
-                                       goto yy256;\r
-                               } else {\r
-                                       if (yych == '}') goto yy256;\r
-                                       if (yych <= '~') goto yy249;\r
-                                       goto yy256;\r
-                               }\r
-                       }\r
-               }\r
-yy282:\r
-               YYDEBUG(282, *YYCURSOR);\r
-               yyaccept = 4;\r
-               yych = *(YYMARKER = ++YYCURSOR);\r
-               if (yych <= '=') {\r
-                       if (yych <= '"') {\r
-                               if (yych <= '\n') {\r
-                                       if (yych <= 0x00) goto yy249;\r
-                                       if (yych <= 0x08) goto yy256;\r
-                                       goto yy249;\r
-                               } else {\r
-                                       if (yych == '\r') goto yy249;\r
-                                       if (yych <= 0x1F) goto yy256;\r
-                                       goto yy249;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '9') {\r
-                                       if (yych <= '%') goto yy256;\r
-                                       if (yych <= ')') goto yy249;\r
-                                       if (yych <= '/') goto yy256;\r
-                                       goto yy257;\r
-                               } else {\r
-                                       if (yych == ';') goto yy249;\r
-                                       if (yych <= '<') goto yy256;\r
-                                       goto yy249;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= '`') {\r
-                               if (yych <= 'Z') {\r
-                                       if (yych <= '@') goto yy256;\r
-                                       if (yych == 'E') goto yy272;\r
-                                       goto yy257;\r
-                               } else {\r
-                                       if (yych <= ']') goto yy256;\r
-                                       if (yych <= '^') goto yy249;\r
-                                       if (yych <= '_') goto yy257;\r
-                                       goto yy256;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '{') {\r
-                                       if (yych == 'e') goto yy272;\r
-                                       if (yych <= 'z') goto yy257;\r
-                                       goto yy256;\r
-                               } else {\r
-                                       if (yych == '}') goto yy256;\r
-                                       if (yych <= '~') goto yy249;\r
-                                       goto yy256;\r
-                               }\r
-                       }\r
-               }\r
-yy283:\r
-               YYDEBUG(283, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYFILL(2);\r
-               yych = *YYCURSOR;\r
-yy284:\r
-               YYDEBUG(284, *YYCURSOR);\r
-               if (yybm[0+yych] & 32) {\r
-                       goto yy283;\r
-               }\r
-               if (yych >= '\r') goto yy287;\r
-yy285:\r
-               YYDEBUG(285, *YYCURSOR);\r
-               ++YYCURSOR;\r
-yy286:\r
-               YYDEBUG(286, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 585 "Zend/zend_ini_scanner.l"\r
-               { /* Comment */\r
-       BEGIN(INITIAL);\r
-       SCNG(lineno)++;\r
-       return END_OF_LINE;\r
-}\r
-#line 4248 "Zend/zend_ini_scanner.c"\r
-yy287:\r
-               YYDEBUG(287, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               if (yych == '\n') goto yy285;\r
-               goto yy286;\r
-yy288:\r
-               YYDEBUG(288, *YYCURSOR);\r
-               yyaccept = 3;\r
-               YYMARKER = ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               YYDEBUG(289, *YYCURSOR);\r
-               if (yybm[0+yych] & 64) {\r
-                       goto yy288;\r
-               }\r
-               if (yych <= ')') {\r
-                       if (yych <= '\r') {\r
-                               if (yych <= 0x08) {\r
-                                       if (yych <= 0x00) goto yy244;\r
-                                       goto yy255;\r
-                               } else {\r
-                                       if (yych <= '\n') goto yy244;\r
-                                       if (yych <= '\f') goto yy255;\r
-                                       goto yy244;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '#') {\r
-                                       if (yych <= 0x1F) goto yy255;\r
-                                       if (yych <= '"') goto yy244;\r
-                                       goto yy255;\r
-                               } else {\r
-                                       if (yych <= '$') goto yy260;\r
-                                       if (yych <= '%') goto yy255;\r
-                                       goto yy244;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= ']') {\r
-                               if (yych <= ';') {\r
-                                       if (yych <= ':') goto yy255;\r
-                                       goto yy244;\r
-                               } else {\r
-                                       if (yych == '=') goto yy244;\r
-                                       goto yy255;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '|') {\r
-                                       if (yych <= '^') goto yy244;\r
-                                       if (yych <= '{') goto yy255;\r
-                                       goto yy244;\r
-                               } else {\r
-                                       if (yych == '~') goto yy244;\r
-                                       goto yy255;\r
-                               }\r
-                       }\r
-               }\r
-yy290:\r
-               YYDEBUG(290, *YYCURSOR);\r
-               yyaccept = 3;\r
-               YYMARKER = ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               YYDEBUG(291, *YYCURSOR);\r
-               if (yych <= '.') {\r
-                       if (yych <= 0x1F) {\r
-                               if (yych <= '\n') {\r
-                                       if (yych <= 0x00) goto yy244;\r
-                                       if (yych <= 0x08) goto yy255;\r
-                                       goto yy244;\r
-                               } else {\r
-                                       if (yych == '\r') goto yy244;\r
-                                       goto yy255;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '$') {\r
-                                       if (yych <= '"') goto yy244;\r
-                                       if (yych <= '#') goto yy255;\r
-                                       goto yy260;\r
-                               } else {\r
-                                       if (yych <= '%') goto yy255;\r
-                                       if (yych <= ')') goto yy244;\r
-                                       if (yych <= '-') goto yy255;\r
-                                       goto yy288;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= '=') {\r
-                               if (yych <= ':') {\r
-                                       if (yych <= '/') goto yy255;\r
-                                       if (yych <= '9') goto yy290;\r
-                                       goto yy255;\r
-                               } else {\r
-                                       if (yych == '<') goto yy255;\r
-                                       goto yy244;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '{') {\r
-                                       if (yych == '^') goto yy244;\r
-                                       goto yy255;\r
-                               } else {\r
-                                       if (yych == '}') goto yy255;\r
-                                       if (yych <= '~') goto yy244;\r
-                                       goto yy255;\r
-                               }\r
-                       }\r
-               }\r
-yy292:\r
-               YYDEBUG(292, *YYCURSOR);\r
-               yyaccept = 3;\r
-               YYMARKER = ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               YYDEBUG(293, *YYCURSOR);\r
-               if (yych <= '/') {\r
-                       if (yych <= 0x1F) {\r
-                               if (yych <= '\n') {\r
-                                       if (yych <= 0x00) goto yy244;\r
-                                       if (yych <= 0x08) goto yy255;\r
-                                       goto yy244;\r
-                               } else {\r
-                                       if (yych == '\r') goto yy244;\r
-                                       goto yy255;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '$') {\r
-                                       if (yych <= '"') goto yy244;\r
-                                       if (yych <= '#') goto yy255;\r
-                                       goto yy260;\r
-                               } else {\r
-                                       if (yych <= '%') goto yy255;\r
-                                       if (yych <= ')') goto yy244;\r
-                                       goto yy255;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= ']') {\r
-                               if (yych <= ';') {\r
-                                       if (yych <= '9') goto yy292;\r
-                                       if (yych <= ':') goto yy255;\r
-                                       goto yy244;\r
-                               } else {\r
-                                       if (yych == '=') goto yy244;\r
-                                       goto yy255;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '|') {\r
-                                       if (yych <= '^') goto yy244;\r
-                                       if (yych <= '{') goto yy255;\r
-                                       goto yy244;\r
-                               } else {\r
-                                       if (yych == '~') goto yy244;\r
-                                       goto yy255;\r
-                               }\r
-                       }\r
-               }\r
-yy294:\r
-               YYDEBUG(294, *YYCURSOR);\r
-               yyaccept = 3;\r
-               YYMARKER = ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               YYDEBUG(295, *YYCURSOR);\r
-               if (yych <= '/') {\r
-                       if (yych <= 0x1F) {\r
-                               if (yych <= '\n') {\r
-                                       if (yych <= 0x00) goto yy244;\r
-                                       if (yych <= 0x08) goto yy255;\r
-                                       goto yy244;\r
-                               } else {\r
-                                       if (yych == '\r') goto yy244;\r
-                                       goto yy255;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '$') {\r
-                                       if (yych <= '"') goto yy244;\r
-                                       if (yych <= '#') goto yy255;\r
-                                       goto yy260;\r
-                               } else {\r
-                                       if (yych <= '%') goto yy255;\r
-                                       if (yych <= ')') goto yy244;\r
-                                       goto yy255;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= ']') {\r
-                               if (yych <= ';') {\r
-                                       if (yych <= '9') goto yy294;\r
-                                       if (yych <= ':') goto yy255;\r
-                                       goto yy244;\r
-                               } else {\r
-                                       if (yych == '=') goto yy244;\r
-                                       goto yy255;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '|') {\r
-                                       if (yych <= '^') goto yy244;\r
-                                       if (yych <= '{') goto yy255;\r
-                                       goto yy244;\r
-                               } else {\r
-                                       if (yych == '~') goto yy244;\r
-                                       goto yy255;\r
-                               }\r
-                       }\r
-               }\r
-yy296:\r
-               YYDEBUG(296, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-               YYDEBUG(297, *YYCURSOR);\r
-               if (yybm[0+yych] & 128) {\r
-                       goto yy296;\r
-               }\r
-               YYDEBUG(298, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYDEBUG(299, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 368 "Zend/zend_ini_scanner.l"\r
-               { /* Raw string */\r
-       /* Eat leading and trailing single quotes */\r
-       if (yytext[0] == '\'' && yytext[yyleng - 1] == '\'') {\r
-               SCNG(yy_text)++;\r
-               yyleng = yyleng - 2;\r
-       }\r
-       RETURN_TOKEN(TC_RAW, yytext, yyleng);\r
-}\r
-#line 4475 "Zend/zend_ini_scanner.c"\r
-yy300:\r
-               YYDEBUG(300, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYDEBUG(301, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 401 "Zend/zend_ini_scanner.l"\r
-               { /* Variable start */\r
-       yy_push_state(ST_VARNAME TSRMLS_CC);\r
-       return TC_DOLLAR_CURLY;\r
-}\r
-#line 4486 "Zend/zend_ini_scanner.c"\r
-yy302:\r
-               YYDEBUG(302, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-yy303:\r
-               YYDEBUG(303, *YYCURSOR);\r
-               if (yych == '\t') goto yy302;\r
-               if (yych == ' ') goto yy302;\r
-               goto yy236;\r
-yy304:\r
-               YYDEBUG(304, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               goto yy233;\r
-yy305:\r
-               YYDEBUG(305, *YYCURSOR);\r
-               yyaccept = 1;\r
-               YYMARKER = ++YYCURSOR;\r
-               YYFILL(2);\r
-               yych = *YYCURSOR;\r
-yy306:\r
-               YYDEBUG(306, *YYCURSOR);\r
-               if (yych <= 0x1F) {\r
-                       if (yych <= '\n') {\r
-                               if (yych <= 0x08) goto yy231;\r
-                               if (yych <= '\t') goto yy305;\r
-                               goto yy304;\r
-                       } else {\r
-                               if (yych == '\r') goto yy308;\r
-                               goto yy231;\r
-                       }\r
-               } else {\r
-                       if (yych <= '"') {\r
-                               if (yych <= ' ') goto yy305;\r
-                               if (yych <= '!') goto yy231;\r
-                       } else {\r
-                               if (yych == ';') goto yy283;\r
-                               goto yy231;\r
-                       }\r
-               }\r
-               YYDEBUG(307, *YYCURSOR);\r
-               yych = *++YYCURSOR;\r
-               goto yy238;\r
-yy308:\r
-               YYDEBUG(308, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               if ((yych = *YYCURSOR) == '\n') goto yy304;\r
-               goto yy233;\r
-       }\r
-/* *********************************** */\r
-yyc_ST_VARNAME:\r
-       {\r
-               static const unsigned char yybm[] = {\r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128,   0,   0, 128, 128,   0, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128,   0,   0, 128,   0, 128,   0, 128, \r
-                         0,   0, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128,   0, 128,   0, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128,   0, 128, 128,   0, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128,   0,   0,   0,   0, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-                       128, 128, 128, 128, 128, 128, 128, 128, \r
-               };\r
-               YYDEBUG(309, *YYCURSOR);\r
-               YYFILL(2);\r
-               yych = *YYCURSOR;\r
-               if (yych <= ')') {\r
-                       if (yych <= '"') {\r
-                               if (yych <= '\f') {\r
-                                       if (yych <= 0x08) goto yy311;\r
-                                       if (yych <= '\n') goto yy313;\r
-                               } else {\r
-                                       if (yych <= '\r') goto yy313;\r
-                                       if (yych >= '!') goto yy313;\r
-                               }\r
-                       } else {\r
-                               if (yych <= '%') {\r
-                                       if (yych == '$') goto yy313;\r
-                               } else {\r
-                                       if (yych != '\'') goto yy313;\r
-                               }\r
-                       }\r
-               } else {\r
-                       if (yych <= '[') {\r
-                               if (yych <= '<') {\r
-                                       if (yych == ';') goto yy313;\r
-                               } else {\r
-                                       if (yych <= '=') goto yy313;\r
-                                       if (yych >= '[') goto yy313;\r
-                               }\r
-                       } else {\r
-                               if (yych <= 'z') {\r
-                                       if (yych == '^') goto yy313;\r
-                               } else {\r
-                                       if (yych == '}') goto yy315;\r
-                                       if (yych <= '~') goto yy313;\r
-                               }\r
-                       }\r
-               }\r
-yy311:\r
-               YYDEBUG(311, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               yych = *YYCURSOR;\r
-               goto yy318;\r
-yy312:\r
-               YYDEBUG(312, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 406 "Zend/zend_ini_scanner.l"\r
-               { /* Variable name */\r
-       /* Eat leading whitespace */\r
-       EAT_LEADING_WHITESPACE();\r
-\r
-       /* Eat trailing whitespace */\r
-       EAT_TRAILING_WHITESPACE();\r
-\r
-       RETURN_TOKEN(TC_VARNAME, yytext, yyleng);\r
-}\r
-#line 4627 "Zend/zend_ini_scanner.c"\r
-yy313:\r
-               YYDEBUG(313, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYDEBUG(314, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 603 "Zend/zend_ini_scanner.l"\r
-               {\r
-       return 0;\r
-}\r
-#line 4637 "Zend/zend_ini_scanner.c"\r
-yy315:\r
-               YYDEBUG(315, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYDEBUG(316, *YYCURSOR);\r
-               yyleng = YYCURSOR - SCNG(yy_text);\r
-#line 416 "Zend/zend_ini_scanner.l"\r
-               { /* Variable end */\r
-       yy_pop_state(TSRMLS_C);\r
-       return '}';\r
-}\r
-#line 4648 "Zend/zend_ini_scanner.c"\r
-yy317:\r
-               YYDEBUG(317, *YYCURSOR);\r
-               ++YYCURSOR;\r
-               YYFILL(1);\r
-               yych = *YYCURSOR;\r
-yy318:\r
-               YYDEBUG(318, *YYCURSOR);\r
-               if (yybm[0+yych] & 128) {\r
-                       goto yy317;\r
-               }\r
-               goto yy312;\r
-       }\r
-}\r
-#line 607 "Zend/zend_ini_scanner.l"\r
-\r
-}\r
+/* Generated by re2c 0.13.5 */
+#line 1 "Zend/zend_ini_scanner.l"
+/*
+   +----------------------------------------------------------------------+
+   | Zend Engine                                                          |
+   +----------------------------------------------------------------------+
+   | Copyright (c) 1998-2014 Zend Technologies Ltd. (http://www.zend.com) |
+   +----------------------------------------------------------------------+
+   | This source file is subject to version 2.00 of the Zend license,     |
+   | that is bundled with this package in the file LICENSE, and is        |
+   | available through the world-wide-web at the following url:           |
+   | http://www.zend.com/license/2_00.txt.                                |
+   | If you did not receive a copy of the Zend license and are unable to  |
+   | obtain it through the world-wide-web, please send a note to          |
+   | license@zend.com so we can mail you a copy immediately.              |
+   +----------------------------------------------------------------------+
+   | Authors: Zeev Suraski <zeev@zend.com>                                |
+   |          Jani Taskinen <jani@php.net>                                |
+   |          Marcus Boerger <helly@php.net>                              |
+   |          Nuno Lopes <nlopess@php.net>                                |
+   |          Scott MacVicar <scottmac@php.net>                           |
+   +----------------------------------------------------------------------+
+*/
+
+/* $Id$ */
+
+#include <errno.h>
+#include "zend.h"
+#include "zend_globals.h"
+#include <zend_ini_parser.h>
+#include "zend_ini_scanner.h"
+
+#if 0
+# define YYDEBUG(s, c) printf("state: %d char: %c\n", s, c)
+#else
+# define YYDEBUG(s, c)
+#endif
+
+#include "zend_ini_scanner_defs.h"
+
+#define YYCTYPE   unsigned char
+/* allow the scanner to read one null byte after the end of the string (from ZEND_MMAP_AHEAD)
+ * so that if will be able to terminate to match the current token (e.g. non-enclosed string) */
+#define YYFILL(n) { if (YYCURSOR > YYLIMIT) return 0; }
+#define YYCURSOR  SCNG(yy_cursor)
+#define YYLIMIT   SCNG(yy_limit)
+#define YYMARKER  SCNG(yy_marker)
+
+#define YYGETCONDITION()  SCNG(yy_state)
+#define YYSETCONDITION(s) SCNG(yy_state) = s
+
+#define STATE(name)  yyc##name
+
+/* emulate flex constructs */
+#define BEGIN(state) YYSETCONDITION(STATE(state))
+#define YYSTATE      YYGETCONDITION()
+#define yytext       ((char*)SCNG(yy_text))
+#define yyleng       SCNG(yy_leng)
+#define yyless(x)    do {      YYCURSOR = (unsigned char*)yytext + x; \
+                                                       yyleng   = (unsigned int)x; } while(0)
+
+/* #define yymore()     goto yymore_restart */
+
+/* perform sanity check. If this message is triggered you should
+   increase the ZEND_MMAP_AHEAD value in the zend_streams.h file */
+#define YYMAXFILL 6
+#if ZEND_MMAP_AHEAD < (YYMAXFILL + 1)
+# error ZEND_MMAP_AHEAD should be greater than YYMAXFILL
+#endif
+
+
+/* How it works (for the core ini directives):
+ * ===========================================
+ *
+ * 1. Scanner scans file for tokens and passes them to parser.
+ * 2. Parser parses the tokens and passes the name/value pairs to the callback
+ *    function which stores them in the configuration hash table.
+ * 3. Later REGISTER_INI_ENTRIES() is called which triggers the actual
+ *    registering of ini entries and uses zend_get_configuration_directive()
+ *    to fetch the previously stored name/value pair from configuration hash table
+ *    and registers the static ini entries which match the name to the value
+ *    into EG(ini_directives) hash table.
+ * 4. PATH section entries are used per-request from down to top, each overriding
+ *    previous if one exists. zend_alter_ini_entry() is called for each entry.
+ *    Settings in PATH section are ZEND_INI_SYSTEM accessible and thus mimics the
+ *    php_admin_* directives used within Apache httpd.conf when PHP is compiled as
+ *    module for Apache.
+ * 5. User defined ini files (like .htaccess for apache) are parsed for each request and
+ *    stored in separate hash defined by SAPI.
+ */
+
+/* TODO: (ordered by importance :-)
+ * ===============================================================================
+ *
+ *  - Separate constant lookup totally from plain strings (using CONSTANT pattern)
+ *  - Add #if .. #else .. #endif and ==, !=, <, > , <=, >= operators
+ *  - Add #include "some.ini"
+ *  - Allow variables to refer to options also when using parse_ini_file()
+ *
+ */
+
+/* Globals Macros */
+#define SCNG   INI_SCNG
+#ifdef ZTS
+ZEND_API ts_rsrc_id ini_scanner_globals_id;
+#else
+ZEND_API zend_ini_scanner_globals ini_scanner_globals;
+#endif
+
+/* Eat leading whitespace */
+#define EAT_LEADING_WHITESPACE()                     \
+       while (yytext[0]) {                              \
+               if (yytext[0] == ' ' || yytext[0] == '\t') { \
+                       SCNG(yy_text)++;                         \
+                       yyleng--;                                \
+               } else {                                     \
+                       break;                                   \
+               }                                            \
+       }
+
+/* Eat trailing whitespace + extra char */
+#define EAT_TRAILING_WHITESPACE_EX(ch)              \
+       while (yyleng > 0 && (                          \
+               (ch != 'X' && yytext[yyleng - 1] ==  ch) || \
+               yytext[yyleng - 1] == '\n' ||               \
+               yytext[yyleng - 1] == '\r' ||               \
+               yytext[yyleng - 1] == '\t' ||               \
+               yytext[yyleng - 1] == ' ')                  \
+       ) {                                             \
+               yyleng--;                                   \
+       }
+
+/* Eat trailing whitespace */
+#define EAT_TRAILING_WHITESPACE()      EAT_TRAILING_WHITESPACE_EX('X')
+
+#define zend_ini_copy_value(retval, str, len) {  \
+       Z_STRVAL_P(retval) = zend_strndup(str, len); \
+       Z_STRLEN_P(retval) = len;                    \
+       Z_TYPE_P(retval) = IS_STRING;                \
+}
+
+#define RETURN_TOKEN(type, str, len) {           \
+       zend_ini_copy_value(ini_lval, str, len);     \
+       return type;                                 \
+}
+
+static void _yy_push_state(int new_state TSRMLS_DC)
+{
+       zend_stack_push(&SCNG(state_stack), (void *) &YYGETCONDITION(), sizeof(int));
+       YYSETCONDITION(new_state);
+}
+
+#define yy_push_state(state_and_tsrm) _yy_push_state(yyc##state_and_tsrm)
+
+static void yy_pop_state(TSRMLS_D)
+{
+       int *stack_state;
+       zend_stack_top(&SCNG(state_stack), (void **) &stack_state);
+       YYSETCONDITION(*stack_state);
+       zend_stack_del_top(&SCNG(state_stack));
+}
+
+static void yy_scan_buffer(char *str, unsigned int len TSRMLS_DC)
+{
+       YYCURSOR = (YYCTYPE*)str;
+       SCNG(yy_start) = YYCURSOR;
+       YYLIMIT  = YYCURSOR + len;
+}
+
+#define ini_filename SCNG(filename)
+
+/* {{{ init_ini_scanner()
+*/
+static int init_ini_scanner(int scanner_mode, zend_file_handle *fh TSRMLS_DC)
+{
+       /* Sanity check */
+       if (scanner_mode != ZEND_INI_SCANNER_NORMAL && scanner_mode != ZEND_INI_SCANNER_RAW) {
+               zend_error(E_WARNING, "Invalid scanner mode");
+               return FAILURE;
+       }
+
+       SCNG(lineno) = 1;
+       SCNG(scanner_mode) = scanner_mode;
+       SCNG(yy_in) = fh;
+
+       if (fh != NULL) {
+               ini_filename = zend_strndup(fh->filename, strlen(fh->filename));
+       } else {
+               ini_filename = NULL;
+       }
+
+       zend_stack_init(&SCNG(state_stack));
+       BEGIN(INITIAL);
+
+       return SUCCESS;
+}
+/* }}} */
+
+/* {{{ shutdown_ini_scanner()
+*/
+void shutdown_ini_scanner(TSRMLS_D)
+{
+       zend_stack_destroy(&SCNG(state_stack));
+       if (ini_filename) {
+               free(ini_filename);
+       }
+}
+/* }}} */
+
+/* {{{ zend_ini_scanner_get_lineno()
+*/
+int zend_ini_scanner_get_lineno(TSRMLS_D)
+{
+       return SCNG(lineno);
+}
+/* }}} */
+
+/* {{{ zend_ini_scanner_get_filename()
+*/
+char *zend_ini_scanner_get_filename(TSRMLS_D)
+{
+       return ini_filename ? ini_filename : "Unknown";
+}
+/* }}} */
+
+/* {{{ zend_ini_open_file_for_scanning()
+*/
+int zend_ini_open_file_for_scanning(zend_file_handle *fh, int scanner_mode TSRMLS_DC)
+{
+       char *buf;
+       size_t size;
+
+       if (zend_stream_fixup(fh, &buf, &size TSRMLS_CC) == FAILURE) {
+               return FAILURE;
+       }
+
+       if (init_ini_scanner(scanner_mode, fh TSRMLS_CC) == FAILURE) {
+               zend_file_handle_dtor(fh TSRMLS_CC);
+               return FAILURE;
+       }
+
+       yy_scan_buffer(buf, size TSRMLS_CC);
+
+       return SUCCESS;
+}
+/* }}} */
+
+/* {{{ zend_ini_prepare_string_for_scanning()
+*/
+int zend_ini_prepare_string_for_scanning(char *str, int scanner_mode TSRMLS_DC)
+{
+       int len = strlen(str);
+
+       if (init_ini_scanner(scanner_mode, NULL TSRMLS_CC) == FAILURE) {
+               return FAILURE;
+       }
+
+       yy_scan_buffer(str, len TSRMLS_CC);
+
+       return SUCCESS;
+}
+/* }}} */
+
+/* {{{ zend_ini_escape_string()
+ */
+static void zend_ini_escape_string(zval *lval, char *str, int len, char quote_type TSRMLS_DC)
+{
+       register char *s, *t;
+       char *end;
+
+       zend_ini_copy_value(lval, str, len);
+
+       /* convert escape sequences */
+       s = t = Z_STRVAL_P(lval);
+       end = s + Z_STRLEN_P(lval);
+
+       while (s < end) {
+               if (*s == '\\') {
+                       s++;
+                       if (s >= end) {
+                               *t++ = '\\';
+                               continue;
+                       }
+                       switch (*s) {
+                               case '"':
+                                       if (*s != quote_type) {
+                                               *t++ = '\\';
+                                               *t++ = *s;
+                                               break;
+                                       }
+                               case '\\':
+                               case '$':
+                                       *t++ = *s;
+                                       Z_STRLEN_P(lval)--;
+                                       break;
+                               default:
+                                       *t++ = '\\';
+                                       *t++ = *s;
+                                       break;
+                       }
+               } else {
+                       *t++ = *s;
+               }
+               if (*s == '\n' || (*s == '\r' && (*(s+1) != '\n'))) {
+                       SCNG(lineno)++;
+               }
+               s++;
+       }
+       *t = 0;
+}
+/* }}} */
+
+int ini_lex(zval *ini_lval TSRMLS_DC)
+{
+restart:
+       SCNG(yy_text) = YYCURSOR;
+
+/* yymore_restart: */
+       /* detect EOF */
+       if (YYCURSOR >= YYLIMIT) {
+               if (YYSTATE == STATE(ST_VALUE) || YYSTATE == STATE(ST_RAW)) {
+                       BEGIN(INITIAL);
+                       return END_OF_LINE;
+               }
+               return 0;
+       }
+
+       /* Eat any UTF-8 BOM we find in the first 3 bytes */
+       if (YYCURSOR == SCNG(yy_start) && YYCURSOR + 3 < YYLIMIT) {
+               if (memcmp(YYCURSOR, "\xef\xbb\xbf", 3) == 0) {
+                       YYCURSOR += 3;
+                       goto restart;
+               }
+       }
+
+#line 337 "Zend/zend_ini_scanner.c"
+{
+       YYCTYPE yych;
+       unsigned int yyaccept = 0;
+       if (YYGETCONDITION() < 4) {
+               if (YYGETCONDITION() < 2) {
+                       if (YYGETCONDITION() < 1) {
+                               goto yyc_INITIAL;
+                       } else {
+                               goto yyc_ST_OFFSET;
+                       }
+               } else {
+                       if (YYGETCONDITION() < 3) {
+                               goto yyc_ST_SECTION_VALUE;
+                       } else {
+                               goto yyc_ST_VALUE;
+                       }
+               }
+       } else {
+               if (YYGETCONDITION() < 6) {
+                       if (YYGETCONDITION() < 5) {
+                               goto yyc_ST_SECTION_RAW;
+                       } else {
+                               goto yyc_ST_DOUBLE_QUOTES;
+                       }
+               } else {
+                       if (YYGETCONDITION() < 7) {
+                               goto yyc_ST_VARNAME;
+                       } else {
+                               goto yyc_ST_RAW;
+                       }
+               }
+       }
+/* *********************************** */
+yyc_INITIAL:
+       {
+               static const unsigned char yybm[] = {
+                       144, 144, 144, 144, 144, 144, 144, 144, 
+                       144, 160,   0, 144, 144,   0, 144, 144, 
+                       144, 144, 144, 144, 144, 144, 144, 144, 
+                       144, 144, 144, 144, 144, 144, 144, 144, 
+                       240, 128, 128, 144, 128, 144, 128, 144, 
+                       128, 128, 144, 144, 144, 144, 144, 144, 
+                       144, 144, 144, 144, 144, 144, 144, 144, 
+                       144, 144, 144, 128, 144, 128, 144, 144, 
+                       144, 144, 144, 144, 144, 144, 144, 144, 
+                       144, 144, 144, 144, 144, 144, 144, 144, 
+                       144, 144, 144, 144, 144, 144, 144, 144, 
+                       144, 144, 144, 128, 144, 144, 128, 144, 
+                       144, 144, 144, 144, 144, 144, 144, 144, 
+                       144, 144, 144, 144, 144, 144, 144, 144, 
+                       144, 144, 144, 144, 144, 144, 144, 144, 
+                       144, 144, 144, 128, 128, 128, 128, 144, 
+                       144, 144, 144, 144, 144, 144, 144, 144, 
+                       144, 144, 144, 144, 144, 144, 144, 144, 
+                       144, 144, 144, 144, 144, 144, 144, 144, 
+                       144, 144, 144, 144, 144, 144, 144, 144, 
+                       144, 144, 144, 144, 144, 144, 144, 144, 
+                       144, 144, 144, 144, 144, 144, 144, 144, 
+                       144, 144, 144, 144, 144, 144, 144, 144, 
+                       144, 144, 144, 144, 144, 144, 144, 144, 
+                       144, 144, 144, 144, 144, 144, 144, 144, 
+                       144, 144, 144, 144, 144, 144, 144, 144, 
+                       144, 144, 144, 144, 144, 144, 144, 144, 
+                       144, 144, 144, 144, 144, 144, 144, 144, 
+                       144, 144, 144, 144, 144, 144, 144, 144, 
+                       144, 144, 144, 144, 144, 144, 144, 144, 
+                       144, 144, 144, 144, 144, 144, 144, 144, 
+                       144, 144, 144, 144, 144, 144, 144, 144, 
+               };
+
+               YYDEBUG(0, *YYCURSOR);
+               YYFILL(5);
+               yych = *YYCURSOR;
+               YYDEBUG(-1, yych);
+               switch (yych) {
+               case '\t':      goto yy4;
+               case '\n':      goto yy6;
+               case '\r':      goto yy8;
+               case ' ':       goto yy9;
+               case '!':
+               case '"':
+               case '$':
+               case '&':
+               case '(':
+               case ')':
+               case '^':
+               case '{':
+               case '|':
+               case '}':
+               case '~':       goto yy10;
+               case '#':       goto yy12;
+               case '%':
+               case '\'':
+               case '*':
+               case '+':
+               case ',':
+               case '-':
+               case '.':
+               case '/':
+               case ':':
+               case '<':
+               case '>':
+               case '?':
+               case '@':
+               case ']':       goto yy13;
+               case ';':       goto yy14;
+               case '=':       goto yy16;
+               case 'F':
+               case 'f':       goto yy18;
+               case 'N':
+               case 'n':       goto yy19;
+               case 'O':
+               case 'o':       goto yy20;
+               case 'T':
+               case 't':       goto yy21;
+               case 'Y':
+               case 'y':       goto yy22;
+               case '[':       goto yy23;
+               default:        goto yy2;
+               }
+yy2:
+               YYDEBUG(2, *YYCURSOR);
+               ++YYCURSOR;
+               yych = *YYCURSOR;
+               goto yy26;
+yy3:
+               YYDEBUG(3, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 429 "Zend/zend_ini_scanner.l"
+               { /* Get option name */
+       /* Eat leading whitespace */
+       EAT_LEADING_WHITESPACE();
+
+       /* Eat trailing whitespace */
+       EAT_TRAILING_WHITESPACE();
+
+       RETURN_TOKEN(TC_LABEL, yytext, yyleng);
+}
+#line 476 "Zend/zend_ini_scanner.c"
+yy4:
+               YYDEBUG(4, *YYCURSOR);
+               yyaccept = 0;
+               yych = *(YYMARKER = ++YYCURSOR);
+               goto yy68;
+yy5:
+               YYDEBUG(5, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 575 "Zend/zend_ini_scanner.l"
+               {
+       /* eat whitespace */
+       goto restart;
+}
+#line 490 "Zend/zend_ini_scanner.c"
+yy6:
+               YYDEBUG(6, *YYCURSOR);
+               ++YYCURSOR;
+yy7:
+               YYDEBUG(7, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 580 "Zend/zend_ini_scanner.l"
+               {
+       SCNG(lineno)++;
+       return END_OF_LINE;
+}
+#line 502 "Zend/zend_ini_scanner.c"
+yy8:
+               YYDEBUG(8, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych == '\n') goto yy71;
+               goto yy7;
+yy9:
+               YYDEBUG(9, *YYCURSOR);
+               yyaccept = 1;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yych <= ' ') {
+                       if (yych <= '\n') {
+                               if (yych <= 0x08) goto yy26;
+                               if (yych <= '\t') goto yy67;
+                               goto yy71;
+                       } else {
+                               if (yych == '\r') goto yy72;
+                               if (yych <= 0x1F) goto yy26;
+                               goto yy69;
+                       }
+               } else {
+                       if (yych <= ':') {
+                               if (yych == '#') goto yy58;
+                               goto yy26;
+                       } else {
+                               if (yych <= ';') goto yy53;
+                               if (yych == '=') goto yy51;
+                               goto yy26;
+                       }
+               }
+yy10:
+               YYDEBUG(10, *YYCURSOR);
+               ++YYCURSOR;
+               YYDEBUG(11, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 503 "Zend/zend_ini_scanner.l"
+               { /* Disallow these chars outside option values */
+       return yytext[0];
+}
+#line 541 "Zend/zend_ini_scanner.c"
+yy12:
+               YYDEBUG(12, *YYCURSOR);
+               yyaccept = 1;
+               yych = *(YYMARKER = ++YYCURSOR);
+               goto yy59;
+yy13:
+               YYDEBUG(13, *YYCURSOR);
+               yych = *++YYCURSOR;
+               goto yy26;
+yy14:
+               YYDEBUG(14, *YYCURSOR);
+               yyaccept = 2;
+               yych = *(YYMARKER = ++YYCURSOR);
+               goto yy54;
+               YYDEBUG(15, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 603 "Zend/zend_ini_scanner.l"
+               {
+       return 0;
+}
+#line 562 "Zend/zend_ini_scanner.c"
+yy16:
+               YYDEBUG(16, *YYCURSOR);
+               ++YYCURSOR;
+               yych = *YYCURSOR;
+               goto yy52;
+yy17:
+               YYDEBUG(17, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 439 "Zend/zend_ini_scanner.l"
+               { /* Start option value */
+       if (SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW) {
+               yy_push_state(ST_RAW TSRMLS_CC);
+       } else {
+               yy_push_state(ST_VALUE TSRMLS_CC);
+       }
+       return '=';
+}
+#line 580 "Zend/zend_ini_scanner.c"
+yy18:
+               YYDEBUG(18, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych == 'A') goto yy48;
+               if (yych == 'a') goto yy48;
+               goto yy26;
+yy19:
+               YYDEBUG(19, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych <= 'U') {
+                       if (yych == 'O') goto yy44;
+                       if (yych <= 'T') goto yy26;
+                       goto yy45;
+               } else {
+                       if (yych <= 'o') {
+                               if (yych <= 'n') goto yy26;
+                               goto yy44;
+                       } else {
+                               if (yych == 'u') goto yy45;
+                               goto yy26;
+                       }
+               }
+yy20:
+               YYDEBUG(20, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych <= 'N') {
+                       if (yych == 'F') goto yy38;
+                       if (yych <= 'M') goto yy26;
+                       goto yy31;
+               } else {
+                       if (yych <= 'f') {
+                               if (yych <= 'e') goto yy26;
+                               goto yy38;
+                       } else {
+                               if (yych == 'n') goto yy31;
+                               goto yy26;
+                       }
+               }
+yy21:
+               YYDEBUG(21, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych == 'R') goto yy36;
+               if (yych == 'r') goto yy36;
+               goto yy26;
+yy22:
+               YYDEBUG(22, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych == 'E') goto yy27;
+               if (yych == 'e') goto yy27;
+               goto yy26;
+yy23:
+               YYDEBUG(23, *YYCURSOR);
+               ++YYCURSOR;
+               YYDEBUG(24, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 358 "Zend/zend_ini_scanner.l"
+               { /* Section start */
+       /* Enter section data lookup state */
+       if (SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW) {
+               yy_push_state(ST_SECTION_RAW TSRMLS_CC);
+       } else {
+               yy_push_state(ST_SECTION_VALUE TSRMLS_CC);
+       }
+       return TC_SECTION;
+}
+#line 646 "Zend/zend_ini_scanner.c"
+yy25:
+               YYDEBUG(25, *YYCURSOR);
+               ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+yy26:
+               YYDEBUG(26, *YYCURSOR);
+               if (yybm[0+yych] & 16) {
+                       goto yy25;
+               }
+               if (yych == '[') goto yy28;
+               goto yy3;
+yy27:
+               YYDEBUG(27, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych == 'S') goto yy31;
+               if (yych == 's') goto yy31;
+               goto yy26;
+yy28:
+               YYDEBUG(28, *YYCURSOR);
+               ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               YYDEBUG(29, *YYCURSOR);
+               if (yybm[0+yych] & 32) {
+                       goto yy28;
+               }
+               YYDEBUG(30, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 383 "Zend/zend_ini_scanner.l"
+               { /* Start of option with offset */
+       /* Eat leading whitespace */
+       EAT_LEADING_WHITESPACE();
+       
+       /* Eat trailing whitespace and [ */
+       EAT_TRAILING_WHITESPACE_EX('[');
+
+       /* Enter offset lookup state */
+       yy_push_state(ST_OFFSET TSRMLS_CC);
+
+       RETURN_TOKEN(TC_OFFSET, yytext, yyleng);
+}
+#line 689 "Zend/zend_ini_scanner.c"
+yy31:
+               YYDEBUG(31, *YYCURSOR);
+               ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               YYDEBUG(32, *YYCURSOR);
+               if (yybm[0+yych] & 64) {
+                       goto yy31;
+               }
+               if (yych <= '\'') {
+                       if (yych <= ' ') {
+                               if (yych <= '\n') {
+                                       if (yych <= 0x08) goto yy25;
+                                       if (yych <= '\t') goto yy34;
+                               } else {
+                                       if (yych != '\r') goto yy25;
+                               }
+                       } else {
+                               if (yych <= '$') {
+                                       if (yych == '#') goto yy25;
+                               } else {
+                                       if (yych != '&') goto yy25;
+                               }
+                       }
+               } else {
+                       if (yych <= 'Z') {
+                               if (yych <= ';') {
+                                       if (yych <= ')') goto yy33;
+                                       if (yych <= ':') goto yy25;
+                               } else {
+                                       if (yych != '=') goto yy25;
+                               }
+                       } else {
+                               if (yych <= '^') {
+                                       if (yych <= '[') goto yy28;
+                                       if (yych <= ']') goto yy25;
+                               } else {
+                                       if (yych <= 'z') goto yy25;
+                                       if (yych >= 0x7F) goto yy25;
+                               }
+                       }
+               }
+yy33:
+               YYDEBUG(33, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 421 "Zend/zend_ini_scanner.l"
+               { /* TRUE value (when used outside option value/offset this causes parse error!) */
+       RETURN_TOKEN(BOOL_TRUE, "1", 1);
+}
+#line 739 "Zend/zend_ini_scanner.c"
+yy34:
+               YYDEBUG(34, *YYCURSOR);
+               ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               YYDEBUG(35, *YYCURSOR);
+               if (yych == '\t') goto yy34;
+               if (yych == ' ') goto yy34;
+               goto yy33;
+yy36:
+               YYDEBUG(36, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych == 'U') goto yy37;
+               if (yych != 'u') goto yy26;
+yy37:
+               YYDEBUG(37, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych == 'E') goto yy31;
+               if (yych == 'e') goto yy31;
+               goto yy26;
+yy38:
+               YYDEBUG(38, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych == 'F') goto yy39;
+               if (yych != 'f') goto yy26;
+yy39:
+               YYDEBUG(39, *YYCURSOR);
+               ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               YYDEBUG(40, *YYCURSOR);
+               if (yych <= '&') {
+                       if (yych <= 0x1F) {
+                               if (yych <= '\n') {
+                                       if (yych <= 0x08) goto yy25;
+                                       if (yych <= '\t') goto yy42;
+                               } else {
+                                       if (yych != '\r') goto yy25;
+                               }
+                       } else {
+                               if (yych <= '#') {
+                                       if (yych <= ' ') goto yy39;
+                                       if (yych >= '#') goto yy25;
+                               } else {
+                                       if (yych == '%') goto yy25;
+                               }
+                       }
+               } else {
+                       if (yych <= '=') {
+                               if (yych <= ':') {
+                                       if (yych <= '\'') goto yy25;
+                                       if (yych >= '*') goto yy25;
+                               } else {
+                                       if (yych == '<') goto yy25;
+                               }
+                       } else {
+                               if (yych <= ']') {
+                                       if (yych == '[') goto yy28;
+                                       goto yy25;
+                               } else {
+                                       if (yych <= '^') goto yy41;
+                                       if (yych <= 'z') goto yy25;
+                                       if (yych >= 0x7F) goto yy25;
+                               }
+                       }
+               }
+yy41:
+               YYDEBUG(41, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 425 "Zend/zend_ini_scanner.l"
+               { /* FALSE value (when used outside option value/offset this causes parse error!)*/
+       RETURN_TOKEN(BOOL_FALSE, "", 0);
+}
+#line 813 "Zend/zend_ini_scanner.c"
+yy42:
+               YYDEBUG(42, *YYCURSOR);
+               ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               YYDEBUG(43, *YYCURSOR);
+               if (yych == '\t') goto yy42;
+               if (yych == ' ') goto yy42;
+               goto yy41;
+yy44:
+               YYDEBUG(44, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych <= '\'') {
+                       if (yych <= 0x1F) {
+                               if (yych <= '\n') {
+                                       if (yych <= 0x08) goto yy26;
+                                       if (yych <= '\t') goto yy42;
+                                       goto yy41;
+                               } else {
+                                       if (yych == '\r') goto yy41;
+                                       goto yy26;
+                               }
+                       } else {
+                               if (yych <= '#') {
+                                       if (yych <= ' ') goto yy39;
+                                       if (yych <= '"') goto yy41;
+                                       goto yy26;
+                               } else {
+                                       if (yych == '%') goto yy26;
+                                       if (yych <= '&') goto yy41;
+                                       goto yy26;
+                               }
+                       }
+               } else {
+                       if (yych <= 'N') {
+                               if (yych <= ';') {
+                                       if (yych <= ')') goto yy41;
+                                       if (yych <= ':') goto yy26;
+                                       goto yy41;
+                               } else {
+                                       if (yych == '=') goto yy41;
+                                       if (yych <= 'M') goto yy26;
+                                       goto yy47;
+                               }
+                       } else {
+                               if (yych <= 'm') {
+                                       if (yych == '^') goto yy41;
+                                       goto yy26;
+                               } else {
+                                       if (yych <= 'n') goto yy47;
+                                       if (yych <= 'z') goto yy26;
+                                       if (yych <= '~') goto yy41;
+                                       goto yy26;
+                               }
+                       }
+               }
+yy45:
+               YYDEBUG(45, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych == 'L') goto yy46;
+               if (yych != 'l') goto yy26;
+yy46:
+               YYDEBUG(46, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych == 'L') goto yy39;
+               if (yych == 'l') goto yy39;
+               goto yy26;
+yy47:
+               YYDEBUG(47, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych == 'E') goto yy39;
+               if (yych == 'e') goto yy39;
+               goto yy26;
+yy48:
+               YYDEBUG(48, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych == 'L') goto yy49;
+               if (yych != 'l') goto yy26;
+yy49:
+               YYDEBUG(49, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych == 'S') goto yy50;
+               if (yych != 's') goto yy26;
+yy50:
+               YYDEBUG(50, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych == 'E') goto yy39;
+               if (yych == 'e') goto yy39;
+               goto yy26;
+yy51:
+               YYDEBUG(51, *YYCURSOR);
+               ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+yy52:
+               YYDEBUG(52, *YYCURSOR);
+               if (yych == '\t') goto yy51;
+               if (yych == ' ') goto yy51;
+               goto yy17;
+yy53:
+               YYDEBUG(53, *YYCURSOR);
+               ++YYCURSOR;
+               YYFILL(2);
+               yych = *YYCURSOR;
+yy54:
+               YYDEBUG(54, *YYCURSOR);
+               if (yybm[0+yych] & 128) {
+                       goto yy53;
+               }
+               if (yych >= '\r') goto yy57;
+yy55:
+               YYDEBUG(55, *YYCURSOR);
+               ++YYCURSOR;
+yy56:
+               YYDEBUG(56, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 585 "Zend/zend_ini_scanner.l"
+               { /* Comment */
+       BEGIN(INITIAL);
+       SCNG(lineno)++;
+       return END_OF_LINE;
+}
+#line 936 "Zend/zend_ini_scanner.c"
+yy57:
+               YYDEBUG(57, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych == '\n') goto yy55;
+               goto yy56;
+yy58:
+               YYDEBUG(58, *YYCURSOR);
+               yyaccept = 1;
+               YYMARKER = ++YYCURSOR;
+               YYFILL(2);
+               yych = *YYCURSOR;
+yy59:
+               YYDEBUG(59, *YYCURSOR);
+               if (yych <= '\'') {
+                       if (yych <= ' ') {
+                               if (yych <= '\n') {
+                                       if (yych <= 0x08) goto yy58;
+                                       if (yych >= '\n') goto yy64;
+                               } else {
+                                       if (yych == '\r') goto yy66;
+                                       goto yy58;
+                               }
+                       } else {
+                               if (yych <= '$') {
+                                       if (yych == '#') goto yy58;
+                               } else {
+                                       if (yych != '&') goto yy58;
+                               }
+                       }
+               } else {
+                       if (yych <= 'Z') {
+                               if (yych <= ';') {
+                                       if (yych <= ')') goto yy60;
+                                       if (yych <= ':') goto yy58;
+                               } else {
+                                       if (yych != '=') goto yy58;
+                               }
+                       } else {
+                               if (yych <= '^') {
+                                       if (yych <= '[') goto yy62;
+                                       if (yych <= ']') goto yy58;
+                               } else {
+                                       if (yych <= 'z') goto yy58;
+                                       if (yych >= 0x7F) goto yy58;
+                               }
+                       }
+               }
+yy60:
+               YYDEBUG(60, *YYCURSOR);
+               ++YYCURSOR;
+               YYFILL(2);
+               yych = *YYCURSOR;
+               YYDEBUG(61, *YYCURSOR);
+               if (yych == '\n') goto yy64;
+               if (yych == '\r') goto yy66;
+               goto yy60;
+yy62:
+               YYDEBUG(62, *YYCURSOR);
+               yyaccept = 3;
+               YYMARKER = ++YYCURSOR;
+               YYFILL(2);
+               yych = *YYCURSOR;
+               YYDEBUG(63, *YYCURSOR);
+               if (yych <= '\f') {
+                       if (yych <= 0x08) goto yy60;
+                       if (yych <= '\t') goto yy62;
+                       if (yych >= '\v') goto yy60;
+               } else {
+                       if (yych <= '\r') goto yy66;
+                       if (yych == ' ') goto yy62;
+                       goto yy60;
+               }
+yy64:
+               YYDEBUG(64, *YYCURSOR);
+               ++YYCURSOR;
+yy65:
+               YYDEBUG(65, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 591 "Zend/zend_ini_scanner.l"
+               { /* #Comment */
+       zend_error(E_DEPRECATED, "Comments starting with '#' are deprecated in %s on line %d", zend_ini_scanner_get_filename(TSRMLS_C), SCNG(lineno));
+       BEGIN(INITIAL);
+       SCNG(lineno)++;
+       return END_OF_LINE;
+}
+#line 1022 "Zend/zend_ini_scanner.c"
+yy66:
+               YYDEBUG(66, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych == '\n') goto yy64;
+               goto yy65;
+yy67:
+               YYDEBUG(67, *YYCURSOR);
+               yyaccept = 0;
+               YYMARKER = ++YYCURSOR;
+               YYFILL(2);
+               yych = *YYCURSOR;
+yy68:
+               YYDEBUG(68, *YYCURSOR);
+               if (yych <= ' ') {
+                       if (yych <= '\n') {
+                               if (yych <= 0x08) goto yy5;
+                               if (yych <= '\t') goto yy67;
+                               goto yy71;
+                       } else {
+                               if (yych == '\r') goto yy72;
+                               if (yych <= 0x1F) goto yy5;
+                               goto yy67;
+                       }
+               } else {
+                       if (yych <= ':') {
+                               if (yych == '#') goto yy60;
+                               goto yy5;
+                       } else {
+                               if (yych <= ';') goto yy53;
+                               if (yych == '=') goto yy51;
+                               goto yy5;
+                       }
+               }
+yy69:
+               YYDEBUG(69, *YYCURSOR);
+               yyaccept = 1;
+               YYMARKER = ++YYCURSOR;
+               YYFILL(2);
+               yych = *YYCURSOR;
+               YYDEBUG(70, *YYCURSOR);
+               if (yych <= '&') {
+                       if (yych <= 0x1F) {
+                               if (yych <= '\n') {
+                                       if (yych <= 0x08) goto yy25;
+                                       if (yych <= '\t') goto yy67;
+                               } else {
+                                       if (yych == '\r') goto yy72;
+                                       goto yy25;
+                               }
+                       } else {
+                               if (yych <= '#') {
+                                       if (yych <= ' ') goto yy69;
+                                       if (yych <= '"') goto yy3;
+                                       goto yy58;
+                               } else {
+                                       if (yych == '%') goto yy25;
+                                       goto yy3;
+                               }
+                       }
+               } else {
+                       if (yych <= '=') {
+                               if (yych <= ':') {
+                                       if (yych <= '\'') goto yy25;
+                                       if (yych <= ')') goto yy3;
+                                       goto yy25;
+                               } else {
+                                       if (yych <= ';') goto yy53;
+                                       if (yych <= '<') goto yy25;
+                                       goto yy51;
+                               }
+                       } else {
+                               if (yych <= ']') {
+                                       if (yych == '[') goto yy28;
+                                       goto yy25;
+                               } else {
+                                       if (yych <= '^') goto yy3;
+                                       if (yych <= 'z') goto yy25;
+                                       if (yych <= '~') goto yy3;
+                                       goto yy25;
+                               }
+                       }
+               }
+yy71:
+               YYDEBUG(71, *YYCURSOR);
+               yych = *++YYCURSOR;
+               goto yy7;
+yy72:
+               YYDEBUG(72, *YYCURSOR);
+               ++YYCURSOR;
+               if ((yych = *YYCURSOR) == '\n') goto yy71;
+               goto yy7;
+       }
+/* *********************************** */
+yyc_ST_DOUBLE_QUOTES:
+       {
+               static const unsigned char yybm[] = {
+                         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, 
+                       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(73, *YYCURSOR);
+               YYFILL(2);
+               yych = *YYCURSOR;
+               if (yych == '"') goto yy77;
+               if (yych == '$') goto yy79;
+               YYDEBUG(75, *YYCURSOR);
+               ++YYCURSOR;
+yy76:
+               YYDEBUG(76, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 535 "Zend/zend_ini_scanner.l"
+               { /* Escape double quoted string contents */
+       if (YYCURSOR > YYLIMIT) {
+               return 0;
+       }
+       
+       while (YYCURSOR < YYLIMIT) {
+               switch (*YYCURSOR++) {
+                       case '"':
+                               if (YYCURSOR < YYLIMIT && YYCURSOR[-2] == '\\' && *YYCURSOR != '\r' && *YYCURSOR != '\n') {
+                                       continue;
+                               }
+                               break;
+                       case '$':
+                               if (*YYCURSOR == '{') {
+                                       break;
+                               }
+                               continue;
+                       case '\\':
+                               if (YYCURSOR < YYLIMIT && *YYCURSOR != '"') {
+                                       YYCURSOR++;
+                               }
+                               /* fall through */
+                       default:
+                               continue;
+               }
+               
+               YYCURSOR--;
+               break;
+       }
+
+       yyleng = YYCURSOR - SCNG(yy_text);
+       
+       zend_ini_escape_string(ini_lval, yytext, yyleng, '"' TSRMLS_CC);
+       return TC_QUOTED_STRING;
+}
+#line 1198 "Zend/zend_ini_scanner.c"
+yy77:
+               YYDEBUG(77, *YYCURSOR);
+               ++YYCURSOR;
+               yych = *YYCURSOR;
+               goto yy83;
+yy78:
+               YYDEBUG(78, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 530 "Zend/zend_ini_scanner.l"
+               { /* Double quoted '"' string ends */
+       yy_pop_state(TSRMLS_C);
+       return '"';
+}
+#line 1212 "Zend/zend_ini_scanner.c"
+yy79:
+               YYDEBUG(79, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych != '{') goto yy76;
+               YYDEBUG(80, *YYCURSOR);
+               ++YYCURSOR;
+               YYDEBUG(81, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 401 "Zend/zend_ini_scanner.l"
+               { /* Variable start */
+       yy_push_state(ST_VARNAME TSRMLS_CC);
+       return TC_DOLLAR_CURLY;
+}
+#line 1226 "Zend/zend_ini_scanner.c"
+yy82:
+               YYDEBUG(82, *YYCURSOR);
+               ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+yy83:
+               YYDEBUG(83, *YYCURSOR);
+               if (yybm[0+yych] & 128) {
+                       goto yy82;
+               }
+               goto yy78;
+       }
+/* *********************************** */
+yyc_ST_OFFSET:
+       {
+               static const unsigned char yybm[] = {
+                        66,  66,  66,  66,  66,  66,  66,  66, 
+                        66, 194,  64,  66,  66,  64,  66,  66, 
+                        66,  66,  66,  66,  66,  66,  66,  66, 
+                        66,  66,  66,  66,  66,  66,  66,  66, 
+                       194,  66,  64,  66,  68,  66,  66,   0, 
+                        66,  66,  66,  66,  66,  66,  66,  66, 
+                       114, 114, 114, 114, 114, 114, 114, 114, 
+                       114, 114,  66,  64,  66,  66,  66,  66, 
+                        66,  82,  82,  82,  82,  82,  82,  82, 
+                        82,  82,  82,  82,  82,  82,  82,  82, 
+                        82,  82,  82,  82,  82,  82,  82,  82, 
+                        82,  82,  82,  66,  72,  64,  66,  82, 
+                        66,  82,  82,  82,  82,  82,  82,  82, 
+                        82,  82,  82,  82,  82,  82,  82,  82, 
+                        82,  82,  82,  82,  82,  82,  82,  82, 
+                        82,  82,  82,  66,  66,  66,  66,  66, 
+                        66,  66,  66,  66,  66,  66,  66,  66, 
+                        66,  66,  66,  66,  66,  66,  66,  66, 
+                        66,  66,  66,  66,  66,  66,  66,  66, 
+                        66,  66,  66,  66,  66,  66,  66,  66, 
+                        66,  66,  66,  66,  66,  66,  66,  66, 
+                        66,  66,  66,  66,  66,  66,  66,  66, 
+                        66,  66,  66,  66,  66,  66,  66,  66, 
+                        66,  66,  66,  66,  66,  66,  66,  66, 
+                        66,  66,  66,  66,  66,  66,  66,  66, 
+                        66,  66,  66,  66,  66,  66,  66,  66, 
+                        66,  66,  66,  66,  66,  66,  66,  66, 
+                        66,  66,  66,  66,  66,  66,  66,  66, 
+                        66,  66,  66,  66,  66,  66,  66,  66, 
+                        66,  66,  66,  66,  66,  66,  66,  66, 
+                        66,  66,  66,  66,  66,  66,  66,  66, 
+                        66,  66,  66,  66,  66,  66,  66,  66, 
+               };
+               YYDEBUG(84, *YYCURSOR);
+               YYFILL(2);
+               yych = *YYCURSOR;
+               if (yych <= '-') {
+                       if (yych <= ' ') {
+                               if (yych <= '\n') {
+                                       if (yych <= 0x08) goto yy86;
+                                       if (yych <= '\t') goto yy88;
+                                       goto yy89;
+                               } else {
+                                       if (yych == '\r') goto yy89;
+                                       if (yych >= ' ') goto yy88;
+                               }
+                       } else {
+                               if (yych <= '$') {
+                                       if (yych == '"') goto yy91;
+                                       if (yych >= '$') goto yy93;
+                               } else {
+                                       if (yych == '\'') goto yy94;
+                                       if (yych >= '-') goto yy95;
+                               }
+                       }
+               } else {
+                       if (yych <= 'Z') {
+                               if (yych <= '9') {
+                                       if (yych <= '.') goto yy96;
+                                       if (yych >= '0') goto yy97;
+                               } else {
+                                       if (yych == ';') goto yy89;
+                                       if (yych >= 'A') goto yy99;
+                               }
+                       } else {
+                               if (yych <= '^') {
+                                       if (yych <= '[') goto yy86;
+                                       if (yych <= '\\') goto yy101;
+                                       if (yych <= ']') goto yy102;
+                               } else {
+                                       if (yych == '`') goto yy86;
+                                       if (yych <= 'z') goto yy99;
+                               }
+                       }
+               }
+yy86:
+               YYDEBUG(86, *YYCURSOR);
+               yyaccept = 0;
+               yych = *(YYMARKER = ++YYCURSOR);
+               goto yy105;
+yy87:
+               YYDEBUG(87, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 521 "Zend/zend_ini_scanner.l"
+               { /* Get rest as section/offset value */
+       RETURN_TOKEN(TC_STRING, yytext, yyleng);
+}
+#line 1330 "Zend/zend_ini_scanner.c"
+yy88:
+               YYDEBUG(88, *YYCURSOR);
+               yyaccept = 0;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yybm[0+yych] & 128) {
+                       goto yy131;
+               }
+               if (yych == '"') goto yy133;
+               if (yych == ']') goto yy134;
+               goto yy105;
+yy89:
+               YYDEBUG(89, *YYCURSOR);
+               ++YYCURSOR;
+yy90:
+               YYDEBUG(90, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 603 "Zend/zend_ini_scanner.l"
+               {
+       return 0;
+}
+#line 1351 "Zend/zend_ini_scanner.c"
+yy91:
+               YYDEBUG(91, *YYCURSOR);
+               ++YYCURSOR;
+yy92:
+               YYDEBUG(92, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 525 "Zend/zend_ini_scanner.l"
+               { /* Double quoted '"' string start */
+       yy_push_state(ST_DOUBLE_QUOTES TSRMLS_CC);
+       return '"';
+}
+#line 1363 "Zend/zend_ini_scanner.c"
+yy93:
+               YYDEBUG(93, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych <= '\\') {
+                       if (yych <= 0x00) goto yy90;
+                       if (yych <= '[') goto yy104;
+                       goto yy109;
+               } else {
+                       if (yych == '{') goto yy129;
+                       goto yy104;
+               }
+yy94:
+               YYDEBUG(94, *YYCURSOR);
+               yyaccept = 1;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yybm[0+yych] & 64) {
+                       goto yy125;
+               }
+               goto yy90;
+yy95:
+               YYDEBUG(95, *YYCURSOR);
+               yyaccept = 0;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yych <= '/') goto yy105;
+               if (yych <= '9') goto yy123;
+               goto yy105;
+yy96:
+               YYDEBUG(96, *YYCURSOR);
+               yyaccept = 0;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yych <= '/') goto yy105;
+               if (yych <= '9') goto yy121;
+               goto yy105;
+yy97:
+               YYDEBUG(97, *YYCURSOR);
+               yyaccept = 2;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yych <= '\'') {
+                       if (yych <= '\r') {
+                               if (yych == '\n') goto yy98;
+                               if (yych <= '\f') goto yy105;
+                       } else {
+                               if (yych == '"') goto yy98;
+                               if (yych <= '&') goto yy105;
+                       }
+               } else {
+                       if (yych <= '9') {
+                               if (yych == '.') goto yy117;
+                               if (yych <= '/') goto yy105;
+                               goto yy119;
+                       } else {
+                               if (yych <= ';') {
+                                       if (yych <= ':') goto yy105;
+                               } else {
+                                       if (yych != ']') goto yy105;
+                               }
+                       }
+               }
+yy98:
+               YYDEBUG(98, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 499 "Zend/zend_ini_scanner.l"
+               { /* Get number option value as string */
+       RETURN_TOKEN(TC_NUMBER, yytext, yyleng);
+}
+#line 1429 "Zend/zend_ini_scanner.c"
+yy99:
+               YYDEBUG(99, *YYCURSOR);
+               yyaccept = 3;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yybm[0+yych] & 16) {
+                       goto yy115;
+               }
+               if (yych <= '"') {
+                       if (yych <= '\f') {
+                               if (yych != '\n') goto yy105;
+                       } else {
+                               if (yych <= '\r') goto yy100;
+                               if (yych <= '!') goto yy105;
+                       }
+               } else {
+                       if (yych <= ':') {
+                               if (yych != '\'') goto yy105;
+                       } else {
+                               if (yych <= ';') goto yy100;
+                               if (yych != ']') goto yy105;
+                       }
+               }
+yy100:
+               YYDEBUG(100, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 495 "Zend/zend_ini_scanner.l"
+               { /* Get constant option value */
+       RETURN_TOKEN(TC_CONSTANT, yytext, yyleng);
+}
+#line 1459 "Zend/zend_ini_scanner.c"
+yy101:
+               YYDEBUG(101, *YYCURSOR);
+               yych = *++YYCURSOR;
+               goto yy104;
+yy102:
+               YYDEBUG(102, *YYCURSOR);
+               ++YYCURSOR;
+yy103:
+               YYDEBUG(103, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 396 "Zend/zend_ini_scanner.l"
+               { /* End of section or an option offset */
+       BEGIN(INITIAL);
+       return ']';
+}
+#line 1475 "Zend/zend_ini_scanner.c"
+yy104:
+               YYDEBUG(104, *YYCURSOR);
+               yyaccept = 0;
+               YYMARKER = ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+yy105:
+               YYDEBUG(105, *YYCURSOR);
+               if (yybm[0+yych] & 2) {
+                       goto yy104;
+               }
+               if (yych == '$') goto yy107;
+               if (yych != '\\') goto yy87;
+yy106:
+               YYDEBUG(106, *YYCURSOR);
+               ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               goto yy104;
+yy107:
+               YYDEBUG(107, *YYCURSOR);
+               ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               if (yych <= '\\') {
+                       if (yych <= 0x00) goto yy108;
+                       if (yych <= '[') goto yy104;
+                       goto yy109;
+               } else {
+                       if (yych != '{') goto yy104;
+               }
+yy108:
+               YYDEBUG(108, *YYCURSOR);
+               YYCURSOR = YYMARKER;
+               if (yyaccept <= 1) {
+                       if (yyaccept <= 0) {
+                               goto yy87;
+                       } else {
+                               goto yy90;
+                       }
+               } else {
+                       if (yyaccept <= 2) {
+                               goto yy98;
+                       } else {
+                               goto yy100;
+                       }
+               }
+yy109:
+               YYDEBUG(109, *YYCURSOR);
+               ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               if (yybm[0+yych] & 4) {
+                       goto yy110;
+               }
+               if (yych == '\\') goto yy112;
+               goto yy104;
+yy110:
+               YYDEBUG(110, *YYCURSOR);
+               ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               YYDEBUG(111, *YYCURSOR);
+               if (yybm[0+yych] & 4) {
+                       goto yy110;
+               }
+               if (yych == '\\') goto yy114;
+               goto yy104;
+yy112:
+               YYDEBUG(112, *YYCURSOR);
+               ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               YYDEBUG(113, *YYCURSOR);
+               if (yybm[0+yych] & 4) {
+                       goto yy110;
+               }
+               if (yych == '\\') goto yy112;
+               goto yy104;
+yy114:
+               YYDEBUG(114, *YYCURSOR);
+               ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               if (yybm[0+yych] & 4) {
+                       goto yy110;
+               }
+               if (yych == '\\') goto yy112;
+               goto yy104;
+yy115:
+               YYDEBUG(115, *YYCURSOR);
+               yyaccept = 3;
+               YYMARKER = ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               YYDEBUG(116, *YYCURSOR);
+               if (yybm[0+yych] & 16) {
+                       goto yy115;
+               }
+               if (yych <= '$') {
+                       if (yych <= '\r') {
+                               if (yych == '\n') goto yy100;
+                               if (yych <= '\f') goto yy104;
+                               goto yy100;
+                       } else {
+                               if (yych == '"') goto yy100;
+                               if (yych <= '#') goto yy104;
+                               goto yy107;
+                       }
+               } else {
+                       if (yych <= ';') {
+                               if (yych == '\'') goto yy100;
+                               if (yych <= ':') goto yy104;
+                               goto yy100;
+                       } else {
+                               if (yych <= '[') goto yy104;
+                               if (yych <= '\\') goto yy106;
+                               if (yych <= ']') goto yy100;
+                               goto yy104;
+                       }
+               }
+yy117:
+               YYDEBUG(117, *YYCURSOR);
+               yyaccept = 2;
+               YYMARKER = ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               YYDEBUG(118, *YYCURSOR);
+               if (yybm[0+yych] & 32) {
+                       goto yy117;
+               }
+               if (yych <= '$') {
+                       if (yych <= '\r') {
+                               if (yych == '\n') goto yy98;
+                               if (yych <= '\f') goto yy104;
+                               goto yy98;
+                       } else {
+                               if (yych == '"') goto yy98;
+                               if (yych <= '#') goto yy104;
+                               goto yy107;
+                       }
+               } else {
+                       if (yych <= ';') {
+                               if (yych == '\'') goto yy98;
+                               if (yych <= ':') goto yy104;
+                               goto yy98;
+                       } else {
+                               if (yych <= '[') goto yy104;
+                               if (yych <= '\\') goto yy106;
+                               if (yych <= ']') goto yy98;
+                               goto yy104;
+                       }
+               }
+yy119:
+               YYDEBUG(119, *YYCURSOR);
+               yyaccept = 2;
+               YYMARKER = ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               YYDEBUG(120, *YYCURSOR);
+               if (yych <= '\'') {
+                       if (yych <= '!') {
+                               if (yych <= '\n') {
+                                       if (yych <= '\t') goto yy104;
+                                       goto yy98;
+                               } else {
+                                       if (yych == '\r') goto yy98;
+                                       goto yy104;
+                               }
+                       } else {
+                               if (yych <= '#') {
+                                       if (yych <= '"') goto yy98;
+                                       goto yy104;
+                               } else {
+                                       if (yych <= '$') goto yy107;
+                                       if (yych <= '&') goto yy104;
+                                       goto yy98;
+                               }
+                       }
+               } else {
+                       if (yych <= ':') {
+                               if (yych <= '.') {
+                                       if (yych <= '-') goto yy104;
+                                       goto yy117;
+                               } else {
+                                       if (yych <= '/') goto yy104;
+                                       if (yych <= '9') goto yy119;
+                                       goto yy104;
+                               }
+                       } else {
+                               if (yych <= '[') {
+                                       if (yych <= ';') goto yy98;
+                                       goto yy104;
+                               } else {
+                                       if (yych <= '\\') goto yy106;
+                                       if (yych <= ']') goto yy98;
+                                       goto yy104;
+                               }
+                       }
+               }
+yy121:
+               YYDEBUG(121, *YYCURSOR);
+               yyaccept = 2;
+               YYMARKER = ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               YYDEBUG(122, *YYCURSOR);
+               if (yych <= '&') {
+                       if (yych <= '\r') {
+                               if (yych == '\n') goto yy98;
+                               if (yych <= '\f') goto yy104;
+                               goto yy98;
+                       } else {
+                               if (yych <= '"') {
+                                       if (yych <= '!') goto yy104;
+                                       goto yy98;
+                               } else {
+                                       if (yych == '$') goto yy107;
+                                       goto yy104;
+                               }
+                       }
+               } else {
+                       if (yych <= ':') {
+                               if (yych <= '\'') goto yy98;
+                               if (yych <= '/') goto yy104;
+                               if (yych <= '9') goto yy121;
+                               goto yy104;
+                       } else {
+                               if (yych <= '[') {
+                                       if (yych <= ';') goto yy98;
+                                       goto yy104;
+                               } else {
+                                       if (yych <= '\\') goto yy106;
+                                       if (yych <= ']') goto yy98;
+                                       goto yy104;
+                               }
+                       }
+               }
+yy123:
+               YYDEBUG(123, *YYCURSOR);
+               yyaccept = 2;
+               YYMARKER = ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               YYDEBUG(124, *YYCURSOR);
+               if (yych <= '&') {
+                       if (yych <= '\r') {
+                               if (yych == '\n') goto yy98;
+                               if (yych <= '\f') goto yy104;
+                               goto yy98;
+                       } else {
+                               if (yych <= '"') {
+                                       if (yych <= '!') goto yy104;
+                                       goto yy98;
+                               } else {
+                                       if (yych == '$') goto yy107;
+                                       goto yy104;
+                               }
+                       }
+               } else {
+                       if (yych <= ':') {
+                               if (yych <= '\'') goto yy98;
+                               if (yych <= '/') goto yy104;
+                               if (yych <= '9') goto yy123;
+                               goto yy104;
+                       } else {
+                               if (yych <= '[') {
+                                       if (yych <= ';') goto yy98;
+                                       goto yy104;
+                               } else {
+                                       if (yych <= '\\') goto yy106;
+                                       if (yych <= ']') goto yy98;
+                                       goto yy104;
+                               }
+                       }
+               }
+yy125:
+               YYDEBUG(125, *YYCURSOR);
+               ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               YYDEBUG(126, *YYCURSOR);
+               if (yybm[0+yych] & 64) {
+                       goto yy125;
+               }
+               YYDEBUG(127, *YYCURSOR);
+               ++YYCURSOR;
+               YYDEBUG(128, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 368 "Zend/zend_ini_scanner.l"
+               { /* Raw string */
+       /* Eat leading and trailing single quotes */
+       if (yytext[0] == '\'' && yytext[yyleng - 1] == '\'') {
+               SCNG(yy_text)++;
+               yyleng = yyleng - 2;
+       }
+       RETURN_TOKEN(TC_RAW, yytext, yyleng);
+}
+#line 1774 "Zend/zend_ini_scanner.c"
+yy129:
+               YYDEBUG(129, *YYCURSOR);
+               ++YYCURSOR;
+               YYDEBUG(130, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 401 "Zend/zend_ini_scanner.l"
+               { /* Variable start */
+       yy_push_state(ST_VARNAME TSRMLS_CC);
+       return TC_DOLLAR_CURLY;
+}
+#line 1785 "Zend/zend_ini_scanner.c"
+yy131:
+               YYDEBUG(131, *YYCURSOR);
+               yyaccept = 0;
+               YYMARKER = ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               YYDEBUG(132, *YYCURSOR);
+               if (yybm[0+yych] & 128) {
+                       goto yy131;
+               }
+               if (yych <= '$') {
+                       if (yych <= '\r') {
+                               if (yych == '\n') goto yy87;
+                               if (yych <= '\f') goto yy104;
+                               goto yy87;
+                       } else {
+                               if (yych == '"') goto yy133;
+                               if (yych <= '#') goto yy104;
+                               goto yy107;
+                       }
+               } else {
+                       if (yych <= ';') {
+                               if (yych == '\'') goto yy87;
+                               if (yych <= ':') goto yy104;
+                               goto yy87;
+                       } else {
+                               if (yych <= '[') goto yy104;
+                               if (yych <= '\\') goto yy106;
+                               if (yych <= ']') goto yy134;
+                               goto yy104;
+                       }
+               }
+yy133:
+               YYDEBUG(133, *YYCURSOR);
+               yych = *++YYCURSOR;
+               goto yy92;
+yy134:
+               YYDEBUG(134, *YYCURSOR);
+               ++YYCURSOR;
+               yych = *YYCURSOR;
+               goto yy103;
+       }
+/* *********************************** */
+yyc_ST_RAW:
+       {
+               static const unsigned char yybm[] = {
+                        64,  64,  64,  64,  64,  64,  64,  64, 
+                        64, 192,   0,  64,  64,   0,  64,  64, 
+                        64,  64,  64,  64,  64,  64,  64,  64, 
+                        64,  64,  64,  64,  64,  64,  64,  64, 
+                       192,  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,  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(135, *YYCURSOR);
+               YYFILL(3);
+               yych = *YYCURSOR;
+               if (yych <= '\f') {
+                       if (yych <= 0x08) {
+                               if (yych >= 0x01) goto yy139;
+                       } else {
+                               if (yych <= '\t') goto yy141;
+                               if (yych <= '\n') goto yy142;
+                               goto yy139;
+                       }
+               } else {
+                       if (yych <= ' ') {
+                               if (yych <= '\r') goto yy144;
+                               if (yych <= 0x1F) goto yy139;
+                               goto yy141;
+                       } else {
+                               if (yych == ';') goto yy145;
+                               goto yy139;
+                       }
+               }
+               YYDEBUG(137, *YYCURSOR);
+               ++YYCURSOR;
+               YYDEBUG(138, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 598 "Zend/zend_ini_scanner.l"
+               { /* End of option value (if EOF is reached before EOL */
+       BEGIN(INITIAL);
+       return END_OF_LINE;
+}
+#line 1895 "Zend/zend_ini_scanner.c"
+yy139:
+               YYDEBUG(139, *YYCURSOR);
+               ++YYCURSOR;
+yy140:
+               YYDEBUG(140, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 448 "Zend/zend_ini_scanner.l"
+               { /* Raw value, only used when SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW. */
+       char *sc = NULL;
+       while (YYCURSOR < YYLIMIT) {
+               switch (*YYCURSOR) {
+                       case '\n':
+                       case '\r':
+                               goto end_raw_value_chars;
+                               break;
+                       case ';':
+                               if (sc == NULL) {
+                                       sc = YYCURSOR;
+                               }
+                               /* no break */
+                       default:
+                               YYCURSOR++;
+                               break;
+               }
+       }
+end_raw_value_chars:
+       yyleng = YYCURSOR - SCNG(yy_text);
+
+       /* Eat trailing semicolons */
+       while (yytext[yyleng - 1] == ';') {
+               yyleng--;
+       }
+
+       /* Eat leading and trailing double quotes */
+       if (yytext[0] == '"' && yytext[yyleng - 1] == '"') {
+               SCNG(yy_text)++;
+               yyleng = yyleng - 2;
+       } else if (sc) {
+               YYCURSOR = sc;
+               yyleng = YYCURSOR - SCNG(yy_text);
+       }
+       RETURN_TOKEN(TC_RAW, yytext, yyleng);
+}
+#line 1939 "Zend/zend_ini_scanner.c"
+yy141:
+               YYDEBUG(141, *YYCURSOR);
+               yyaccept = 0;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yych <= '\r') {
+                       if (yych <= 0x08) goto yy140;
+                       if (yych <= '\n') goto yy153;
+                       if (yych <= '\f') goto yy140;
+                       goto yy153;
+               } else {
+                       if (yych <= ' ') {
+                               if (yych <= 0x1F) goto yy140;
+                               goto yy153;
+                       } else {
+                               if (yych == ';') goto yy153;
+                               goto yy140;
+                       }
+               }
+yy142:
+               YYDEBUG(142, *YYCURSOR);
+               ++YYCURSOR;
+yy143:
+               YYDEBUG(143, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 489 "Zend/zend_ini_scanner.l"
+               { /* End of option value */
+       BEGIN(INITIAL);
+       SCNG(lineno)++;
+       return END_OF_LINE;
+}
+#line 1970 "Zend/zend_ini_scanner.c"
+yy144:
+               YYDEBUG(144, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych == '\n') goto yy151;
+               goto yy143;
+yy145:
+               YYDEBUG(145, *YYCURSOR);
+               yyaccept = 1;
+               yych = *(YYMARKER = ++YYCURSOR);
+               goto yy147;
+yy146:
+               YYDEBUG(146, *YYCURSOR);
+               ++YYCURSOR;
+               YYFILL(2);
+               yych = *YYCURSOR;
+yy147:
+               YYDEBUG(147, *YYCURSOR);
+               if (yybm[0+yych] & 64) {
+                       goto yy146;
+               }
+               if (yych >= '\r') goto yy150;
+yy148:
+               YYDEBUG(148, *YYCURSOR);
+               ++YYCURSOR;
+yy149:
+               YYDEBUG(149, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 585 "Zend/zend_ini_scanner.l"
+               { /* Comment */
+       BEGIN(INITIAL);
+       SCNG(lineno)++;
+       return END_OF_LINE;
+}
+#line 2004 "Zend/zend_ini_scanner.c"
+yy150:
+               YYDEBUG(150, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych == '\n') goto yy148;
+               goto yy149;
+yy151:
+               YYDEBUG(151, *YYCURSOR);
+               yych = *++YYCURSOR;
+               goto yy143;
+yy152:
+               YYDEBUG(152, *YYCURSOR);
+               yyaccept = 2;
+               YYMARKER = ++YYCURSOR;
+               YYFILL(2);
+               yych = *YYCURSOR;
+yy153:
+               YYDEBUG(153, *YYCURSOR);
+               if (yybm[0+yych] & 128) {
+                       goto yy152;
+               }
+               if (yych <= '\f') {
+                       if (yych == '\n') goto yy151;
+               } else {
+                       if (yych <= '\r') goto yy155;
+                       if (yych == ';') goto yy146;
+               }
+               YYDEBUG(154, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 575 "Zend/zend_ini_scanner.l"
+               {
+       /* eat whitespace */
+       goto restart;
+}
+#line 2038 "Zend/zend_ini_scanner.c"
+yy155:
+               YYDEBUG(155, *YYCURSOR);
+               ++YYCURSOR;
+               if ((yych = *YYCURSOR) == '\n') goto yy151;
+               goto yy143;
+       }
+/* *********************************** */
+yyc_ST_SECTION_RAW:
+       {
+               static const unsigned char yybm[] = {
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 192,   0, 128, 128,   0, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       192, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128,   0, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+               };
+               YYDEBUG(156, *YYCURSOR);
+               YYFILL(3);
+               yych = *YYCURSOR;
+               if (yych <= '\f') {
+                       if (yych == '\n') goto yy160;
+               } else {
+                       if (yych <= '\r') goto yy160;
+                       if (yych == ']') goto yy162;
+               }
+               YYDEBUG(158, *YYCURSOR);
+               ++YYCURSOR;
+               yych = *YYCURSOR;
+               goto yy169;
+yy159:
+               YYDEBUG(159, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 485 "Zend/zend_ini_scanner.l"
+               { /* Raw value, only used when SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW. */
+       RETURN_TOKEN(TC_RAW, yytext, yyleng);
+}
+#line 2102 "Zend/zend_ini_scanner.c"
+yy160:
+               YYDEBUG(160, *YYCURSOR);
+               ++YYCURSOR;
+               YYDEBUG(161, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 603 "Zend/zend_ini_scanner.l"
+               {
+       return 0;
+}
+#line 2112 "Zend/zend_ini_scanner.c"
+yy162:
+               YYDEBUG(162, *YYCURSOR);
+               ++YYCURSOR;
+               yych = *YYCURSOR;
+               goto yy165;
+yy163:
+               YYDEBUG(163, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 377 "Zend/zend_ini_scanner.l"
+               { /* End of section */
+       BEGIN(INITIAL);
+       SCNG(lineno)++;
+       return ']';
+}
+#line 2127 "Zend/zend_ini_scanner.c"
+yy164:
+               YYDEBUG(164, *YYCURSOR);
+               ++YYCURSOR;
+               YYFILL(2);
+               yych = *YYCURSOR;
+yy165:
+               YYDEBUG(165, *YYCURSOR);
+               if (yybm[0+yych] & 64) {
+                       goto yy164;
+               }
+               if (yych == '\n') goto yy166;
+               if (yych == '\r') goto yy167;
+               goto yy163;
+yy166:
+               YYDEBUG(166, *YYCURSOR);
+               yych = *++YYCURSOR;
+               goto yy163;
+yy167:
+               YYDEBUG(167, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych == '\n') goto yy166;
+               goto yy163;
+yy168:
+               YYDEBUG(168, *YYCURSOR);
+               ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+yy169:
+               YYDEBUG(169, *YYCURSOR);
+               if (yybm[0+yych] & 128) {
+                       goto yy168;
+               }
+               goto yy159;
+       }
+/* *********************************** */
+yyc_ST_SECTION_VALUE:
+       {
+               static const unsigned char yybm[] = {
+                       132, 132, 132, 132, 132, 132, 132, 132, 
+                       132, 134, 128, 132, 132, 128, 132, 132, 
+                       132, 132, 132, 132, 132, 132, 132, 132, 
+                       132, 132, 132, 132, 132, 132, 132, 132, 
+                       134, 132, 128, 132, 136, 132, 132,   0, 
+                       132, 132, 132, 132, 132, 132, 132, 132, 
+                       228, 228, 228, 228, 228, 228, 228, 228, 
+                       228, 228, 132, 128, 132, 132, 132, 132, 
+                       132, 164, 164, 164, 164, 164, 164, 164, 
+                       164, 164, 164, 164, 164, 164, 164, 164, 
+                       164, 164, 164, 164, 164, 164, 164, 164, 
+                       164, 164, 164, 132, 144, 128, 132, 164, 
+                       132, 164, 164, 164, 164, 164, 164, 164, 
+                       164, 164, 164, 164, 164, 164, 164, 164, 
+                       164, 164, 164, 164, 164, 164, 164, 164, 
+                       164, 164, 164, 132, 132, 132, 132, 132, 
+                       132, 132, 132, 132, 132, 132, 132, 132, 
+                       132, 132, 132, 132, 132, 132, 132, 132, 
+                       132, 132, 132, 132, 132, 132, 132, 132, 
+                       132, 132, 132, 132, 132, 132, 132, 132, 
+                       132, 132, 132, 132, 132, 132, 132, 132, 
+                       132, 132, 132, 132, 132, 132, 132, 132, 
+                       132, 132, 132, 132, 132, 132, 132, 132, 
+                       132, 132, 132, 132, 132, 132, 132, 132, 
+                       132, 132, 132, 132, 132, 132, 132, 132, 
+                       132, 132, 132, 132, 132, 132, 132, 132, 
+                       132, 132, 132, 132, 132, 132, 132, 132, 
+                       132, 132, 132, 132, 132, 132, 132, 132, 
+                       132, 132, 132, 132, 132, 132, 132, 132, 
+                       132, 132, 132, 132, 132, 132, 132, 132, 
+                       132, 132, 132, 132, 132, 132, 132, 132, 
+                       132, 132, 132, 132, 132, 132, 132, 132, 
+               };
+               YYDEBUG(170, *YYCURSOR);
+               YYFILL(3);
+               yych = *YYCURSOR;
+               if (yych <= '-') {
+                       if (yych <= ' ') {
+                               if (yych <= '\n') {
+                                       if (yych <= 0x08) goto yy172;
+                                       if (yych <= '\t') goto yy174;
+                                       goto yy175;
+                               } else {
+                                       if (yych == '\r') goto yy175;
+                                       if (yych >= ' ') goto yy174;
+                               }
+                       } else {
+                               if (yych <= '$') {
+                                       if (yych == '"') goto yy177;
+                                       if (yych >= '$') goto yy179;
+                               } else {
+                                       if (yych == '\'') goto yy180;
+                                       if (yych >= '-') goto yy181;
+                               }
+                       }
+               } else {
+                       if (yych <= 'Z') {
+                               if (yych <= '9') {
+                                       if (yych <= '.') goto yy182;
+                                       if (yych >= '0') goto yy183;
+                               } else {
+                                       if (yych == ';') goto yy175;
+                                       if (yych >= 'A') goto yy185;
+                               }
+                       } else {
+                               if (yych <= '^') {
+                                       if (yych <= '[') goto yy172;
+                                       if (yych <= '\\') goto yy187;
+                                       if (yych <= ']') goto yy188;
+                               } else {
+                                       if (yych == '`') goto yy172;
+                                       if (yych <= 'z') goto yy185;
+                               }
+                       }
+               }
+yy172:
+               YYDEBUG(172, *YYCURSOR);
+               yyaccept = 0;
+               yych = *(YYMARKER = ++YYCURSOR);
+               goto yy195;
+yy173:
+               YYDEBUG(173, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 521 "Zend/zend_ini_scanner.l"
+               { /* Get rest as section/offset value */
+       RETURN_TOKEN(TC_STRING, yytext, yyleng);
+}
+#line 2253 "Zend/zend_ini_scanner.c"
+yy174:
+               YYDEBUG(174, *YYCURSOR);
+               yyaccept = 0;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yych <= 0x1F) {
+                       if (yych == '\t') goto yy221;
+                       goto yy195;
+               } else {
+                       if (yych <= ' ') goto yy221;
+                       if (yych == '"') goto yy223;
+                       goto yy195;
+               }
+yy175:
+               YYDEBUG(175, *YYCURSOR);
+               ++YYCURSOR;
+yy176:
+               YYDEBUG(176, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 603 "Zend/zend_ini_scanner.l"
+               {
+       return 0;
+}
+#line 2276 "Zend/zend_ini_scanner.c"
+yy177:
+               YYDEBUG(177, *YYCURSOR);
+               ++YYCURSOR;
+yy178:
+               YYDEBUG(178, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 525 "Zend/zend_ini_scanner.l"
+               { /* Double quoted '"' string start */
+       yy_push_state(ST_DOUBLE_QUOTES TSRMLS_CC);
+       return '"';
+}
+#line 2288 "Zend/zend_ini_scanner.c"
+yy179:
+               YYDEBUG(179, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych <= '\\') {
+                       if (yych <= 0x00) goto yy176;
+                       if (yych <= '[') goto yy194;
+                       goto yy199;
+               } else {
+                       if (yych == '{') goto yy219;
+                       goto yy194;
+               }
+yy180:
+               YYDEBUG(180, *YYCURSOR);
+               yyaccept = 1;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yybm[0+yych] & 128) {
+                       goto yy215;
+               }
+               goto yy176;
+yy181:
+               YYDEBUG(181, *YYCURSOR);
+               yyaccept = 0;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yych <= '/') goto yy195;
+               if (yych <= '9') goto yy213;
+               goto yy195;
+yy182:
+               YYDEBUG(182, *YYCURSOR);
+               yyaccept = 0;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yych <= '/') goto yy195;
+               if (yych <= '9') goto yy211;
+               goto yy195;
+yy183:
+               YYDEBUG(183, *YYCURSOR);
+               yyaccept = 2;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yych <= '\'') {
+                       if (yych <= '\r') {
+                               if (yych == '\n') goto yy184;
+                               if (yych <= '\f') goto yy195;
+                       } else {
+                               if (yych == '"') goto yy184;
+                               if (yych <= '&') goto yy195;
+                       }
+               } else {
+                       if (yych <= '9') {
+                               if (yych == '.') goto yy207;
+                               if (yych <= '/') goto yy195;
+                               goto yy209;
+                       } else {
+                               if (yych <= ';') {
+                                       if (yych <= ':') goto yy195;
+                               } else {
+                                       if (yych != ']') goto yy195;
+                               }
+                       }
+               }
+yy184:
+               YYDEBUG(184, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 499 "Zend/zend_ini_scanner.l"
+               { /* Get number option value as string */
+       RETURN_TOKEN(TC_NUMBER, yytext, yyleng);
+}
+#line 2354 "Zend/zend_ini_scanner.c"
+yy185:
+               YYDEBUG(185, *YYCURSOR);
+               yyaccept = 3;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yybm[0+yych] & 32) {
+                       goto yy205;
+               }
+               if (yych <= '"') {
+                       if (yych <= '\f') {
+                               if (yych != '\n') goto yy195;
+                       } else {
+                               if (yych <= '\r') goto yy186;
+                               if (yych <= '!') goto yy195;
+                       }
+               } else {
+                       if (yych <= ':') {
+                               if (yych != '\'') goto yy195;
+                       } else {
+                               if (yych <= ';') goto yy186;
+                               if (yych != ']') goto yy195;
+                       }
+               }
+yy186:
+               YYDEBUG(186, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 495 "Zend/zend_ini_scanner.l"
+               { /* Get constant option value */
+       RETURN_TOKEN(TC_CONSTANT, yytext, yyleng);
+}
+#line 2384 "Zend/zend_ini_scanner.c"
+yy187:
+               YYDEBUG(187, *YYCURSOR);
+               yych = *++YYCURSOR;
+               goto yy194;
+yy188:
+               YYDEBUG(188, *YYCURSOR);
+               ++YYCURSOR;
+               yych = *YYCURSOR;
+               goto yy191;
+yy189:
+               YYDEBUG(189, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 377 "Zend/zend_ini_scanner.l"
+               { /* End of section */
+       BEGIN(INITIAL);
+       SCNG(lineno)++;
+       return ']';
+}
+#line 2403 "Zend/zend_ini_scanner.c"
+yy190:
+               YYDEBUG(190, *YYCURSOR);
+               ++YYCURSOR;
+               YYFILL(2);
+               yych = *YYCURSOR;
+yy191:
+               YYDEBUG(191, *YYCURSOR);
+               if (yybm[0+yych] & 2) {
+                       goto yy190;
+               }
+               if (yych == '\n') goto yy192;
+               if (yych == '\r') goto yy193;
+               goto yy189;
+yy192:
+               YYDEBUG(192, *YYCURSOR);
+               yych = *++YYCURSOR;
+               goto yy189;
+yy193:
+               YYDEBUG(193, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych == '\n') goto yy192;
+               goto yy189;
+yy194:
+               YYDEBUG(194, *YYCURSOR);
+               yyaccept = 0;
+               YYMARKER = ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+yy195:
+               YYDEBUG(195, *YYCURSOR);
+               if (yybm[0+yych] & 4) {
+                       goto yy194;
+               }
+               if (yych == '$') goto yy197;
+               if (yych != '\\') goto yy173;
+yy196:
+               YYDEBUG(196, *YYCURSOR);
+               ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               goto yy194;
+yy197:
+               YYDEBUG(197, *YYCURSOR);
+               ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               if (yych <= '\\') {
+                       if (yych <= 0x00) goto yy198;
+                       if (yych <= '[') goto yy194;
+                       goto yy199;
+               } else {
+                       if (yych != '{') goto yy194;
+               }
+yy198:
+               YYDEBUG(198, *YYCURSOR);
+               YYCURSOR = YYMARKER;
+               if (yyaccept <= 1) {
+                       if (yyaccept <= 0) {
+                               goto yy173;
+                       } else {
+                               goto yy176;
+                       }
+               } else {
+                       if (yyaccept <= 2) {
+                               goto yy184;
+                       } else {
+                               goto yy186;
+                       }
+               }
+yy199:
+               YYDEBUG(199, *YYCURSOR);
+               ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               if (yybm[0+yych] & 8) {
+                       goto yy200;
+               }
+               if (yych == '\\') goto yy202;
+               goto yy194;
+yy200:
+               YYDEBUG(200, *YYCURSOR);
+               ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               YYDEBUG(201, *YYCURSOR);
+               if (yybm[0+yych] & 8) {
+                       goto yy200;
+               }
+               if (yych == '\\') goto yy204;
+               goto yy194;
+yy202:
+               YYDEBUG(202, *YYCURSOR);
+               ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               YYDEBUG(203, *YYCURSOR);
+               if (yybm[0+yych] & 8) {
+                       goto yy200;
+               }
+               if (yych == '\\') goto yy202;
+               goto yy194;
+yy204:
+               YYDEBUG(204, *YYCURSOR);
+               ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               if (yybm[0+yych] & 8) {
+                       goto yy200;
+               }
+               if (yych == '\\') goto yy202;
+               goto yy194;
+yy205:
+               YYDEBUG(205, *YYCURSOR);
+               yyaccept = 3;
+               YYMARKER = ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               YYDEBUG(206, *YYCURSOR);
+               if (yybm[0+yych] & 32) {
+                       goto yy205;
+               }
+               if (yych <= '$') {
+                       if (yych <= '\r') {
+                               if (yych == '\n') goto yy186;
+                               if (yych <= '\f') goto yy194;
+                               goto yy186;
+                       } else {
+                               if (yych == '"') goto yy186;
+                               if (yych <= '#') goto yy194;
+                               goto yy197;
+                       }
+               } else {
+                       if (yych <= ';') {
+                               if (yych == '\'') goto yy186;
+                               if (yych <= ':') goto yy194;
+                               goto yy186;
+                       } else {
+                               if (yych <= '[') goto yy194;
+                               if (yych <= '\\') goto yy196;
+                               if (yych <= ']') goto yy186;
+                               goto yy194;
+                       }
+               }
+yy207:
+               YYDEBUG(207, *YYCURSOR);
+               yyaccept = 2;
+               YYMARKER = ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               YYDEBUG(208, *YYCURSOR);
+               if (yybm[0+yych] & 64) {
+                       goto yy207;
+               }
+               if (yych <= '$') {
+                       if (yych <= '\r') {
+                               if (yych == '\n') goto yy184;
+                               if (yych <= '\f') goto yy194;
+                               goto yy184;
+                       } else {
+                               if (yych == '"') goto yy184;
+                               if (yych <= '#') goto yy194;
+                               goto yy197;
+                       }
+               } else {
+                       if (yych <= ';') {
+                               if (yych == '\'') goto yy184;
+                               if (yych <= ':') goto yy194;
+                               goto yy184;
+                       } else {
+                               if (yych <= '[') goto yy194;
+                               if (yych <= '\\') goto yy196;
+                               if (yych <= ']') goto yy184;
+                               goto yy194;
+                       }
+               }
+yy209:
+               YYDEBUG(209, *YYCURSOR);
+               yyaccept = 2;
+               YYMARKER = ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               YYDEBUG(210, *YYCURSOR);
+               if (yych <= '\'') {
+                       if (yych <= '!') {
+                               if (yych <= '\n') {
+                                       if (yych <= '\t') goto yy194;
+                                       goto yy184;
+                               } else {
+                                       if (yych == '\r') goto yy184;
+                                       goto yy194;
+                               }
+                       } else {
+                               if (yych <= '#') {
+                                       if (yych <= '"') goto yy184;
+                                       goto yy194;
+                               } else {
+                                       if (yych <= '$') goto yy197;
+                                       if (yych <= '&') goto yy194;
+                                       goto yy184;
+                               }
+                       }
+               } else {
+                       if (yych <= ':') {
+                               if (yych <= '.') {
+                                       if (yych <= '-') goto yy194;
+                                       goto yy207;
+                               } else {
+                                       if (yych <= '/') goto yy194;
+                                       if (yych <= '9') goto yy209;
+                                       goto yy194;
+                               }
+                       } else {
+                               if (yych <= '[') {
+                                       if (yych <= ';') goto yy184;
+                                       goto yy194;
+                               } else {
+                                       if (yych <= '\\') goto yy196;
+                                       if (yych <= ']') goto yy184;
+                                       goto yy194;
+                               }
+                       }
+               }
+yy211:
+               YYDEBUG(211, *YYCURSOR);
+               yyaccept = 2;
+               YYMARKER = ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               YYDEBUG(212, *YYCURSOR);
+               if (yych <= '&') {
+                       if (yych <= '\r') {
+                               if (yych == '\n') goto yy184;
+                               if (yych <= '\f') goto yy194;
+                               goto yy184;
+                       } else {
+                               if (yych <= '"') {
+                                       if (yych <= '!') goto yy194;
+                                       goto yy184;
+                               } else {
+                                       if (yych == '$') goto yy197;
+                                       goto yy194;
+                               }
+                       }
+               } else {
+                       if (yych <= ':') {
+                               if (yych <= '\'') goto yy184;
+                               if (yych <= '/') goto yy194;
+                               if (yych <= '9') goto yy211;
+                               goto yy194;
+                       } else {
+                               if (yych <= '[') {
+                                       if (yych <= ';') goto yy184;
+                                       goto yy194;
+                               } else {
+                                       if (yych <= '\\') goto yy196;
+                                       if (yych <= ']') goto yy184;
+                                       goto yy194;
+                               }
+                       }
+               }
+yy213:
+               YYDEBUG(213, *YYCURSOR);
+               yyaccept = 2;
+               YYMARKER = ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               YYDEBUG(214, *YYCURSOR);
+               if (yych <= '&') {
+                       if (yych <= '\r') {
+                               if (yych == '\n') goto yy184;
+                               if (yych <= '\f') goto yy194;
+                               goto yy184;
+                       } else {
+                               if (yych <= '"') {
+                                       if (yych <= '!') goto yy194;
+                                       goto yy184;
+                               } else {
+                                       if (yych == '$') goto yy197;
+                                       goto yy194;
+                               }
+                       }
+               } else {
+                       if (yych <= ':') {
+                               if (yych <= '\'') goto yy184;
+                               if (yych <= '/') goto yy194;
+                               if (yych <= '9') goto yy213;
+                               goto yy194;
+                       } else {
+                               if (yych <= '[') {
+                                       if (yych <= ';') goto yy184;
+                                       goto yy194;
+                               } else {
+                                       if (yych <= '\\') goto yy196;
+                                       if (yych <= ']') goto yy184;
+                                       goto yy194;
+                               }
+                       }
+               }
+yy215:
+               YYDEBUG(215, *YYCURSOR);
+               ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               YYDEBUG(216, *YYCURSOR);
+               if (yybm[0+yych] & 128) {
+                       goto yy215;
+               }
+               YYDEBUG(217, *YYCURSOR);
+               ++YYCURSOR;
+               YYDEBUG(218, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 368 "Zend/zend_ini_scanner.l"
+               { /* Raw string */
+       /* Eat leading and trailing single quotes */
+       if (yytext[0] == '\'' && yytext[yyleng - 1] == '\'') {
+               SCNG(yy_text)++;
+               yyleng = yyleng - 2;
+       }
+       RETURN_TOKEN(TC_RAW, yytext, yyleng);
+}
+#line 2724 "Zend/zend_ini_scanner.c"
+yy219:
+               YYDEBUG(219, *YYCURSOR);
+               ++YYCURSOR;
+               YYDEBUG(220, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 401 "Zend/zend_ini_scanner.l"
+               { /* Variable start */
+       yy_push_state(ST_VARNAME TSRMLS_CC);
+       return TC_DOLLAR_CURLY;
+}
+#line 2735 "Zend/zend_ini_scanner.c"
+yy221:
+               YYDEBUG(221, *YYCURSOR);
+               yyaccept = 0;
+               YYMARKER = ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               YYDEBUG(222, *YYCURSOR);
+               if (yych <= '"') {
+                       if (yych <= '\f') {
+                               if (yych <= 0x08) goto yy194;
+                               if (yych <= '\t') goto yy221;
+                               if (yych <= '\n') goto yy173;
+                               goto yy194;
+                       } else {
+                               if (yych <= 0x1F) {
+                                       if (yych <= '\r') goto yy173;
+                                       goto yy194;
+                               } else {
+                                       if (yych <= ' ') goto yy221;
+                                       if (yych <= '!') goto yy194;
+                               }
+                       }
+               } else {
+                       if (yych <= ':') {
+                               if (yych <= '$') {
+                                       if (yych <= '#') goto yy194;
+                                       goto yy197;
+                               } else {
+                                       if (yych == '\'') goto yy173;
+                                       goto yy194;
+                               }
+                       } else {
+                               if (yych <= '[') {
+                                       if (yych <= ';') goto yy173;
+                                       goto yy194;
+                               } else {
+                                       if (yych <= '\\') goto yy196;
+                                       if (yych <= ']') goto yy173;
+                                       goto yy194;
+                               }
+                       }
+               }
+yy223:
+               YYDEBUG(223, *YYCURSOR);
+               ++YYCURSOR;
+               yych = *YYCURSOR;
+               goto yy178;
+       }
+/* *********************************** */
+yyc_ST_VALUE:
+       {
+               static const unsigned char yybm[] = {
+                       160, 162, 162, 162, 162, 162, 162, 162, 
+                       162, 176, 128, 162, 162, 128, 162, 162, 
+                       162, 162, 162, 162, 162, 162, 162, 162, 
+                       162, 162, 162, 162, 162, 162, 162, 162, 
+                       176, 160, 160, 162, 168, 162, 160,  32, 
+                       160, 160, 162, 162, 162, 162, 162, 162, 
+                       230, 230, 230, 230, 230, 230, 230, 230, 
+                       230, 230, 162, 160, 162, 160, 162, 162, 
+                       162, 166, 166, 166, 166, 166, 166, 166, 
+                       166, 166, 166, 166, 166, 166, 166, 166, 
+                       166, 166, 166, 166, 166, 166, 166, 166, 
+                       166, 166, 166, 162, 162, 162, 160, 166, 
+                       162, 166, 166, 166, 166, 166, 166, 166, 
+                       166, 166, 166, 166, 166, 166, 166, 166, 
+                       166, 166, 166, 166, 166, 166, 166, 166, 
+                       166, 166, 166, 162, 160, 162, 160, 162, 
+                       162, 162, 162, 162, 162, 162, 162, 162, 
+                       162, 162, 162, 162, 162, 162, 162, 162, 
+                       162, 162, 162, 162, 162, 162, 162, 162, 
+                       162, 162, 162, 162, 162, 162, 162, 162, 
+                       162, 162, 162, 162, 162, 162, 162, 162, 
+                       162, 162, 162, 162, 162, 162, 162, 162, 
+                       162, 162, 162, 162, 162, 162, 162, 162, 
+                       162, 162, 162, 162, 162, 162, 162, 162, 
+                       162, 162, 162, 162, 162, 162, 162, 162, 
+                       162, 162, 162, 162, 162, 162, 162, 162, 
+                       162, 162, 162, 162, 162, 162, 162, 162, 
+                       162, 162, 162, 162, 162, 162, 162, 162, 
+                       162, 162, 162, 162, 162, 162, 162, 162, 
+                       162, 162, 162, 162, 162, 162, 162, 162, 
+                       162, 162, 162, 162, 162, 162, 162, 162, 
+                       162, 162, 162, 162, 162, 162, 162, 162, 
+               };
+               YYDEBUG(224, *YYCURSOR);
+               YYFILL(6);
+               yych = *YYCURSOR;
+               YYDEBUG(-1, yych);
+               switch (yych) {
+               case 0x00:      goto yy226;
+               case '\t':
+               case ' ':       goto yy230;
+               case '\n':      goto yy232;
+               case '\r':      goto yy234;
+               case '!':
+               case '&':
+               case '(':
+               case ')':
+               case '^':
+               case '|':
+               case '~':       goto yy235;
+               case '"':       goto yy237;
+               case '$':       goto yy239;
+               case '\'':      goto yy240;
+               case '-':       goto yy241;
+               case '.':       goto yy242;
+               case '0':
+               case '1':
+               case '2':
+               case '3':
+               case '4':
+               case '5':
+               case '6':
+               case '7':
+               case '8':
+               case '9':       goto yy243;
+               case ';':       goto yy245;
+               case '=':       goto yy246;
+               case 'A':
+               case 'B':
+               case 'C':
+               case 'D':
+               case 'E':
+               case 'G':
+               case 'H':
+               case 'I':
+               case 'J':
+               case 'K':
+               case 'L':
+               case 'M':
+               case 'P':
+               case 'Q':
+               case 'R':
+               case 'S':
+               case 'U':
+               case 'V':
+               case 'W':
+               case 'X':
+               case 'Z':
+               case '_':
+               case 'a':
+               case 'b':
+               case 'c':
+               case 'd':
+               case 'e':
+               case 'g':
+               case 'h':
+               case 'i':
+               case 'j':
+               case 'k':
+               case 'l':
+               case 'm':
+               case 'p':
+               case 'q':
+               case 'r':
+               case 's':
+               case 'u':
+               case 'v':
+               case 'w':
+               case 'x':
+               case 'z':       goto yy248;
+               case 'F':
+               case 'f':       goto yy250;
+               case 'N':
+               case 'n':       goto yy251;
+               case 'O':
+               case 'o':       goto yy252;
+               case 'T':
+               case 't':       goto yy253;
+               case 'Y':
+               case 'y':       goto yy254;
+               default:        goto yy228;
+               }
+yy226:
+               YYDEBUG(226, *YYCURSOR);
+               ++YYCURSOR;
+yy227:
+               YYDEBUG(227, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 598 "Zend/zend_ini_scanner.l"
+               { /* End of option value (if EOF is reached before EOL */
+       BEGIN(INITIAL);
+       return END_OF_LINE;
+}
+#line 2921 "Zend/zend_ini_scanner.c"
+yy228:
+               YYDEBUG(228, *YYCURSOR);
+               yyaccept = 0;
+               yych = *(YYMARKER = ++YYCURSOR);
+               goto yy256;
+yy229:
+               YYDEBUG(229, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 517 "Zend/zend_ini_scanner.l"
+               { /* Get everything else as option/offset value */
+       RETURN_TOKEN(TC_STRING, yytext, yyleng);
+}
+#line 2934 "Zend/zend_ini_scanner.c"
+yy230:
+               YYDEBUG(230, *YYCURSOR);
+               yyaccept = 1;
+               yych = *(YYMARKER = ++YYCURSOR);
+               goto yy306;
+yy231:
+               YYDEBUG(231, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 571 "Zend/zend_ini_scanner.l"
+               {
+       RETURN_TOKEN(TC_WHITESPACE, yytext, yyleng);
+}
+#line 2947 "Zend/zend_ini_scanner.c"
+yy232:
+               YYDEBUG(232, *YYCURSOR);
+               ++YYCURSOR;
+yy233:
+               YYDEBUG(233, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 489 "Zend/zend_ini_scanner.l"
+               { /* End of option value */
+       BEGIN(INITIAL);
+       SCNG(lineno)++;
+       return END_OF_LINE;
+}
+#line 2960 "Zend/zend_ini_scanner.c"
+yy234:
+               YYDEBUG(234, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych == '\n') goto yy304;
+               goto yy233;
+yy235:
+               YYDEBUG(235, *YYCURSOR);
+               ++YYCURSOR;
+               yych = *YYCURSOR;
+               goto yy303;
+yy236:
+               YYDEBUG(236, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 507 "Zend/zend_ini_scanner.l"
+               { /* Boolean operators */
+       return yytext[0];
+}
+#line 2978 "Zend/zend_ini_scanner.c"
+yy237:
+               YYDEBUG(237, *YYCURSOR);
+               ++YYCURSOR;
+yy238:
+               YYDEBUG(238, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 525 "Zend/zend_ini_scanner.l"
+               { /* Double quoted '"' string start */
+       yy_push_state(ST_DOUBLE_QUOTES TSRMLS_CC);
+       return '"';
+}
+#line 2990 "Zend/zend_ini_scanner.c"
+yy239:
+               YYDEBUG(239, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych <= '\\') {
+                       if (yych <= 0x00) goto yy227;
+                       if (yych <= '[') goto yy255;
+                       goto yy262;
+               } else {
+                       if (yych == '{') goto yy300;
+                       goto yy255;
+               }
+yy240:
+               YYDEBUG(240, *YYCURSOR);
+               yyaccept = 2;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yybm[0+yych] & 128) {
+                       goto yy296;
+               }
+               goto yy227;
+yy241:
+               YYDEBUG(241, *YYCURSOR);
+               yyaccept = 0;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yych <= '/') goto yy256;
+               if (yych <= '9') goto yy294;
+               goto yy256;
+yy242:
+               YYDEBUG(242, *YYCURSOR);
+               yyaccept = 0;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yych <= '/') goto yy256;
+               if (yych <= '9') goto yy292;
+               goto yy256;
+yy243:
+               YYDEBUG(243, *YYCURSOR);
+               yyaccept = 3;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yych <= '/') {
+                       if (yych <= 0x1F) {
+                               if (yych <= '\n') {
+                                       if (yych <= 0x00) goto yy244;
+                                       if (yych <= 0x08) goto yy256;
+                               } else {
+                                       if (yych != '\r') goto yy256;
+                               }
+                       } else {
+                               if (yych <= ')') {
+                                       if (yych <= '"') goto yy244;
+                                       if (yych <= '%') goto yy256;
+                               } else {
+                                       if (yych == '.') goto yy288;
+                                       goto yy256;
+                               }
+                       }
+               } else {
+                       if (yych <= ']') {
+                               if (yych <= ';') {
+                                       if (yych <= '9') goto yy290;
+                                       if (yych <= ':') goto yy256;
+                               } else {
+                                       if (yych != '=') goto yy256;
+                               }
+                       } else {
+                               if (yych <= '|') {
+                                       if (yych <= '^') goto yy244;
+                                       if (yych <= '{') goto yy256;
+                               } else {
+                                       if (yych != '~') goto yy256;
+                               }
+                       }
+               }
+yy244:
+               YYDEBUG(244, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 499 "Zend/zend_ini_scanner.l"
+               { /* Get number option value as string */
+       RETURN_TOKEN(TC_NUMBER, yytext, yyleng);
+}
+#line 3069 "Zend/zend_ini_scanner.c"
+yy245:
+               YYDEBUG(245, *YYCURSOR);
+               yyaccept = 2;
+               yych = *(YYMARKER = ++YYCURSOR);
+               goto yy284;
+yy246:
+               YYDEBUG(246, *YYCURSOR);
+               ++YYCURSOR;
+               YYDEBUG(247, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 511 "Zend/zend_ini_scanner.l"
+               { /* Make = used in option value to trigger error */
+       yyless(0);
+       BEGIN(INITIAL);
+       return END_OF_LINE;
+}
+#line 3086 "Zend/zend_ini_scanner.c"
+yy248:
+               YYDEBUG(248, *YYCURSOR);
+               yyaccept = 4;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yybm[0+yych] & 4) {
+                       goto yy257;
+               }
+               if (yych <= ':') {
+                       if (yych <= '\r') {
+                               if (yych <= 0x08) {
+                                       if (yych >= 0x01) goto yy256;
+                               } else {
+                                       if (yych <= '\n') goto yy249;
+                                       if (yych <= '\f') goto yy256;
+                               }
+                       } else {
+                               if (yych <= '"') {
+                                       if (yych <= 0x1F) goto yy256;
+                               } else {
+                                       if (yych <= '%') goto yy256;
+                                       if (yych >= '*') goto yy256;
+                               }
+                       }
+               } else {
+                       if (yych <= '^') {
+                               if (yych <= '<') {
+                                       if (yych >= '<') goto yy256;
+                               } else {
+                                       if (yych <= '=') goto yy249;
+                                       if (yych <= ']') goto yy256;
+                               }
+                       } else {
+                               if (yych <= '|') {
+                                       if (yych <= '{') goto yy256;
+                               } else {
+                                       if (yych != '~') goto yy256;
+                               }
+                       }
+               }
+yy249:
+               YYDEBUG(249, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 495 "Zend/zend_ini_scanner.l"
+               { /* Get constant option value */
+       RETURN_TOKEN(TC_CONSTANT, yytext, yyleng);
+}
+#line 3133 "Zend/zend_ini_scanner.c"
+yy250:
+               YYDEBUG(250, *YYCURSOR);
+               yyaccept = 4;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yych <= '<') {
+                       if (yych <= '"') {
+                               if (yych <= '\n') {
+                                       if (yych <= 0x00) goto yy249;
+                                       if (yych <= 0x08) goto yy256;
+                                       goto yy249;
+                               } else {
+                                       if (yych == '\r') goto yy249;
+                                       if (yych <= 0x1F) goto yy256;
+                                       goto yy249;
+                               }
+                       } else {
+                               if (yych <= '/') {
+                                       if (yych <= '%') goto yy256;
+                                       if (yych <= ')') goto yy249;
+                                       goto yy256;
+                               } else {
+                                       if (yych <= '9') goto yy257;
+                                       if (yych == ';') goto yy249;
+                                       goto yy256;
+                               }
+                       }
+               } else {
+                       if (yych <= '_') {
+                               if (yych <= 'A') {
+                                       if (yych <= '=') goto yy249;
+                                       if (yych <= '@') goto yy256;
+                                       goto yy280;
+                               } else {
+                                       if (yych <= 'Z') goto yy257;
+                                       if (yych <= ']') goto yy256;
+                                       if (yych <= '^') goto yy249;
+                                       goto yy257;
+                               }
+                       } else {
+                               if (yych <= '{') {
+                                       if (yych <= '`') goto yy256;
+                                       if (yych <= 'a') goto yy280;
+                                       if (yych <= 'z') goto yy257;
+                                       goto yy256;
+                               } else {
+                                       if (yych == '}') goto yy256;
+                                       if (yych <= '~') goto yy249;
+                                       goto yy256;
+                               }
+                       }
+               }
+yy251:
+               YYDEBUG(251, *YYCURSOR);
+               yyaccept = 4;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yych <= 'N') {
+                       if (yych <= '%') {
+                               if (yych <= '\f') {
+                                       if (yych <= 0x00) goto yy249;
+                                       if (yych <= 0x08) goto yy256;
+                                       if (yych <= '\n') goto yy249;
+                                       goto yy256;
+                               } else {
+                                       if (yych <= '\r') goto yy249;
+                                       if (yych <= 0x1F) goto yy256;
+                                       if (yych <= '"') goto yy249;
+                                       goto yy256;
+                               }
+                       } else {
+                               if (yych <= ':') {
+                                       if (yych <= ')') goto yy249;
+                                       if (yych <= '/') goto yy256;
+                                       if (yych <= '9') goto yy257;
+                                       goto yy256;
+                               } else {
+                                       if (yych <= '<') {
+                                               if (yych <= ';') goto yy249;
+                                               goto yy256;
+                                       } else {
+                                               if (yych <= '=') goto yy249;
+                                               if (yych <= '@') goto yy256;
+                                               goto yy257;
+                                       }
+                               }
+                       }
+               } else {
+                       if (yych <= 'n') {
+                               if (yych <= 'Z') {
+                                       if (yych <= 'O') goto yy276;
+                                       if (yych == 'U') goto yy277;
+                                       goto yy257;
+                               } else {
+                                       if (yych <= '^') {
+                                               if (yych <= ']') goto yy256;
+                                               goto yy249;
+                                       } else {
+                                               if (yych == '`') goto yy256;
+                                               goto yy257;
+                                       }
+                               }
+                       } else {
+                               if (yych <= 'z') {
+                                       if (yych <= 'o') goto yy276;
+                                       if (yych == 'u') goto yy277;
+                                       goto yy257;
+                               } else {
+                                       if (yych <= '|') {
+                                               if (yych <= '{') goto yy256;
+                                               goto yy249;
+                                       } else {
+                                               if (yych == '~') goto yy249;
+                                               goto yy256;
+                                       }
+                               }
+                       }
+               }
+yy252:
+               YYDEBUG(252, *YYCURSOR);
+               yyaccept = 4;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yych <= 'E') {
+                       if (yych <= '%') {
+                               if (yych <= '\f') {
+                                       if (yych <= 0x00) goto yy249;
+                                       if (yych <= 0x08) goto yy256;
+                                       if (yych <= '\n') goto yy249;
+                                       goto yy256;
+                               } else {
+                                       if (yych <= '\r') goto yy249;
+                                       if (yych <= 0x1F) goto yy256;
+                                       if (yych <= '"') goto yy249;
+                                       goto yy256;
+                               }
+                       } else {
+                               if (yych <= ':') {
+                                       if (yych <= ')') goto yy249;
+                                       if (yych <= '/') goto yy256;
+                                       if (yych <= '9') goto yy257;
+                                       goto yy256;
+                               } else {
+                                       if (yych <= '<') {
+                                               if (yych <= ';') goto yy249;
+                                               goto yy256;
+                                       } else {
+                                               if (yych <= '=') goto yy249;
+                                               if (yych <= '@') goto yy256;
+                                               goto yy257;
+                                       }
+                               }
+                       }
+               } else {
+                       if (yych <= 'e') {
+                               if (yych <= 'Z') {
+                                       if (yych <= 'F') goto yy271;
+                                       if (yych == 'N') goto yy265;
+                                       goto yy257;
+                               } else {
+                                       if (yych <= '^') {
+                                               if (yych <= ']') goto yy256;
+                                               goto yy249;
+                                       } else {
+                                               if (yych == '`') goto yy256;
+                                               goto yy257;
+                                       }
+                               }
+                       } else {
+                               if (yych <= 'z') {
+                                       if (yych <= 'f') goto yy271;
+                                       if (yych == 'n') goto yy265;
+                                       goto yy257;
+                               } else {
+                                       if (yych <= '|') {
+                                               if (yych <= '{') goto yy256;
+                                               goto yy249;
+                                       } else {
+                                               if (yych == '~') goto yy249;
+                                               goto yy256;
+                                       }
+                               }
+                       }
+               }
+yy253:
+               YYDEBUG(253, *YYCURSOR);
+               yyaccept = 4;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yych <= '=') {
+                       if (yych <= '"') {
+                               if (yych <= '\n') {
+                                       if (yych <= 0x00) goto yy249;
+                                       if (yych <= 0x08) goto yy256;
+                                       goto yy249;
+                               } else {
+                                       if (yych == '\r') goto yy249;
+                                       if (yych <= 0x1F) goto yy256;
+                                       goto yy249;
+                               }
+                       } else {
+                               if (yych <= '9') {
+                                       if (yych <= '%') goto yy256;
+                                       if (yych <= ')') goto yy249;
+                                       if (yych <= '/') goto yy256;
+                                       goto yy257;
+                               } else {
+                                       if (yych == ';') goto yy249;
+                                       if (yych <= '<') goto yy256;
+                                       goto yy249;
+                               }
+                       }
+               } else {
+                       if (yych <= '`') {
+                               if (yych <= 'Z') {
+                                       if (yych <= '@') goto yy256;
+                                       if (yych == 'R') goto yy269;
+                                       goto yy257;
+                               } else {
+                                       if (yych <= ']') goto yy256;
+                                       if (yych <= '^') goto yy249;
+                                       if (yych <= '_') goto yy257;
+                                       goto yy256;
+                               }
+                       } else {
+                               if (yych <= '{') {
+                                       if (yych == 'r') goto yy269;
+                                       if (yych <= 'z') goto yy257;
+                                       goto yy256;
+                               } else {
+                                       if (yych == '}') goto yy256;
+                                       if (yych <= '~') goto yy249;
+                                       goto yy256;
+                               }
+                       }
+               }
+yy254:
+               YYDEBUG(254, *YYCURSOR);
+               yyaccept = 4;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yych <= '=') {
+                       if (yych <= '"') {
+                               if (yych <= '\n') {
+                                       if (yych <= 0x00) goto yy249;
+                                       if (yych <= 0x08) goto yy256;
+                                       goto yy249;
+                               } else {
+                                       if (yych == '\r') goto yy249;
+                                       if (yych <= 0x1F) goto yy256;
+                                       goto yy249;
+                               }
+                       } else {
+                               if (yych <= '9') {
+                                       if (yych <= '%') goto yy256;
+                                       if (yych <= ')') goto yy249;
+                                       if (yych <= '/') goto yy256;
+                                       goto yy257;
+                               } else {
+                                       if (yych == ';') goto yy249;
+                                       if (yych <= '<') goto yy256;
+                                       goto yy249;
+                               }
+                       }
+               } else {
+                       if (yych <= '`') {
+                               if (yych <= 'Z') {
+                                       if (yych <= '@') goto yy256;
+                                       if (yych == 'E') goto yy259;
+                                       goto yy257;
+                               } else {
+                                       if (yych <= ']') goto yy256;
+                                       if (yych <= '^') goto yy249;
+                                       if (yych <= '_') goto yy257;
+                                       goto yy256;
+                               }
+                       } else {
+                               if (yych <= '{') {
+                                       if (yych == 'e') goto yy259;
+                                       if (yych <= 'z') goto yy257;
+                                       goto yy256;
+                               } else {
+                                       if (yych == '}') goto yy256;
+                                       if (yych <= '~') goto yy249;
+                                       goto yy256;
+                               }
+                       }
+               }
+yy255:
+               YYDEBUG(255, *YYCURSOR);
+               yyaccept = 0;
+               YYMARKER = ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+yy256:
+               YYDEBUG(256, *YYCURSOR);
+               if (yybm[0+yych] & 2) {
+                       goto yy255;
+               }
+               if (yych == '$') goto yy260;
+               goto yy229;
+yy257:
+               YYDEBUG(257, *YYCURSOR);
+               yyaccept = 4;
+               YYMARKER = ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               YYDEBUG(258, *YYCURSOR);
+               if (yybm[0+yych] & 4) {
+                       goto yy257;
+               }
+               if (yych <= ')') {
+                       if (yych <= '\r') {
+                               if (yych <= 0x08) {
+                                       if (yych <= 0x00) goto yy249;
+                                       goto yy255;
+                               } else {
+                                       if (yych <= '\n') goto yy249;
+                                       if (yych <= '\f') goto yy255;
+                                       goto yy249;
+                               }
+                       } else {
+                               if (yych <= '#') {
+                                       if (yych <= 0x1F) goto yy255;
+                                       if (yych <= '"') goto yy249;
+                                       goto yy255;
+                               } else {
+                                       if (yych <= '$') goto yy260;
+                                       if (yych <= '%') goto yy255;
+                                       goto yy249;
+                               }
+                       }
+               } else {
+                       if (yych <= ']') {
+                               if (yych <= ';') {
+                                       if (yych <= ':') goto yy255;
+                                       goto yy249;
+                               } else {
+                                       if (yych == '=') goto yy249;
+                                       goto yy255;
+                               }
+                       } else {
+                               if (yych <= '|') {
+                                       if (yych <= '^') goto yy249;
+                                       if (yych <= '{') goto yy255;
+                                       goto yy249;
+                               } else {
+                                       if (yych == '~') goto yy249;
+                                       goto yy255;
+                               }
+                       }
+               }
+yy259:
+               YYDEBUG(259, *YYCURSOR);
+               yyaccept = 4;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yych <= '=') {
+                       if (yych <= '"') {
+                               if (yych <= '\n') {
+                                       if (yych <= 0x00) goto yy249;
+                                       if (yych <= 0x08) goto yy256;
+                                       goto yy249;
+                               } else {
+                                       if (yych == '\r') goto yy249;
+                                       if (yych <= 0x1F) goto yy256;
+                                       goto yy249;
+                               }
+                       } else {
+                               if (yych <= '9') {
+                                       if (yych <= '%') goto yy256;
+                                       if (yych <= ')') goto yy249;
+                                       if (yych <= '/') goto yy256;
+                                       goto yy257;
+                               } else {
+                                       if (yych == ';') goto yy249;
+                                       if (yych <= '<') goto yy256;
+                                       goto yy249;
+                               }
+                       }
+               } else {
+                       if (yych <= '`') {
+                               if (yych <= 'Z') {
+                                       if (yych <= '@') goto yy256;
+                                       if (yych == 'S') goto yy265;
+                                       goto yy257;
+                               } else {
+                                       if (yych <= ']') goto yy256;
+                                       if (yych <= '^') goto yy249;
+                                       if (yych <= '_') goto yy257;
+                                       goto yy256;
+                               }
+                       } else {
+                               if (yych <= '{') {
+                                       if (yych == 's') goto yy265;
+                                       if (yych <= 'z') goto yy257;
+                                       goto yy256;
+                               } else {
+                                       if (yych == '}') goto yy256;
+                                       if (yych <= '~') goto yy249;
+                                       goto yy256;
+                               }
+                       }
+               }
+yy260:
+               YYDEBUG(260, *YYCURSOR);
+               ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               if (yych <= '\\') {
+                       if (yych <= 0x00) goto yy261;
+                       if (yych <= '[') goto yy255;
+                       goto yy262;
+               } else {
+                       if (yych != '{') goto yy255;
+               }
+yy261:
+               YYDEBUG(261, *YYCURSOR);
+               YYCURSOR = YYMARKER;
+               if (yyaccept <= 3) {
+                       if (yyaccept <= 1) {
+                               if (yyaccept <= 0) {
+                                       goto yy229;
+                               } else {
+                                       goto yy231;
+                               }
+                       } else {
+                               if (yyaccept <= 2) {
+                                       goto yy227;
+                               } else {
+                                       goto yy244;
+                               }
+                       }
+               } else {
+                       if (yyaccept <= 5) {
+                               if (yyaccept <= 4) {
+                                       goto yy249;
+                               } else {
+                                       goto yy266;
+                               }
+                       } else {
+                               goto yy273;
+                       }
+               }
+yy262:
+               YYDEBUG(262, *YYCURSOR);
+               ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               if (yybm[0+yych] & 8) {
+                       goto yy263;
+               }
+               goto yy255;
+yy263:
+               YYDEBUG(263, *YYCURSOR);
+               ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               YYDEBUG(264, *YYCURSOR);
+               if (yybm[0+yych] & 8) {
+                       goto yy263;
+               }
+               if (yych <= 0x00) goto yy229;
+               if (yych == '\\') goto yy262;
+               goto yy255;
+yy265:
+               YYDEBUG(265, *YYCURSOR);
+               yyaccept = 5;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yybm[0+yych] & 16) {
+                       goto yy267;
+               }
+               if (yych <= ';') {
+                       if (yych <= ' ') {
+                               if (yych <= '\n') {
+                                       if (yych <= 0x00) goto yy266;
+                                       if (yych <= '\t') goto yy256;
+                               } else {
+                                       if (yych != '\r') goto yy256;
+                               }
+                       } else {
+                               if (yych <= ')') {
+                                       if (yych <= '"') goto yy266;
+                                       if (yych <= '%') goto yy256;
+                               } else {
+                                       if (yych <= '/') goto yy256;
+                                       if (yych <= '9') goto yy257;
+                                       if (yych <= ':') goto yy256;
+                               }
+                       }
+               } else {
+                       if (yych <= '_') {
+                               if (yych <= '@') {
+                                       if (yych != '=') goto yy256;
+                               } else {
+                                       if (yych <= 'Z') goto yy257;
+                                       if (yych <= ']') goto yy256;
+                                       if (yych >= '_') goto yy257;
+                               }
+                       } else {
+                               if (yych <= '{') {
+                                       if (yych <= '`') goto yy256;
+                                       if (yych <= 'z') goto yy257;
+                                       goto yy256;
+                               } else {
+                                       if (yych == '}') goto yy256;
+                                       if (yych >= 0x7F) goto yy256;
+                               }
+                       }
+               }
+yy266:
+               YYDEBUG(266, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 421 "Zend/zend_ini_scanner.l"
+               { /* TRUE value (when used outside option value/offset this causes parse error!) */
+       RETURN_TOKEN(BOOL_TRUE, "1", 1);
+}
+#line 3645 "Zend/zend_ini_scanner.c"
+yy267:
+               YYDEBUG(267, *YYCURSOR);
+               ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               YYDEBUG(268, *YYCURSOR);
+               if (yybm[0+yych] & 16) {
+                       goto yy267;
+               }
+               goto yy266;
+yy269:
+               YYDEBUG(269, *YYCURSOR);
+               yyaccept = 4;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yych <= '=') {
+                       if (yych <= '"') {
+                               if (yych <= '\n') {
+                                       if (yych <= 0x00) goto yy249;
+                                       if (yych <= 0x08) goto yy256;
+                                       goto yy249;
+                               } else {
+                                       if (yych == '\r') goto yy249;
+                                       if (yych <= 0x1F) goto yy256;
+                                       goto yy249;
+                               }
+                       } else {
+                               if (yych <= '9') {
+                                       if (yych <= '%') goto yy256;
+                                       if (yych <= ')') goto yy249;
+                                       if (yych <= '/') goto yy256;
+                                       goto yy257;
+                               } else {
+                                       if (yych == ';') goto yy249;
+                                       if (yych <= '<') goto yy256;
+                                       goto yy249;
+                               }
+                       }
+               } else {
+                       if (yych <= '`') {
+                               if (yych <= 'Z') {
+                                       if (yych <= '@') goto yy256;
+                                       if (yych != 'U') goto yy257;
+                               } else {
+                                       if (yych <= ']') goto yy256;
+                                       if (yych <= '^') goto yy249;
+                                       if (yych <= '_') goto yy257;
+                                       goto yy256;
+                               }
+                       } else {
+                               if (yych <= '{') {
+                                       if (yych == 'u') goto yy270;
+                                       if (yych <= 'z') goto yy257;
+                                       goto yy256;
+                               } else {
+                                       if (yych == '}') goto yy256;
+                                       if (yych <= '~') goto yy249;
+                                       goto yy256;
+                               }
+                       }
+               }
+yy270:
+               YYDEBUG(270, *YYCURSOR);
+               yyaccept = 4;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yych <= '=') {
+                       if (yych <= '"') {
+                               if (yych <= '\n') {
+                                       if (yych <= 0x00) goto yy249;
+                                       if (yych <= 0x08) goto yy256;
+                                       goto yy249;
+                               } else {
+                                       if (yych == '\r') goto yy249;
+                                       if (yych <= 0x1F) goto yy256;
+                                       goto yy249;
+                               }
+                       } else {
+                               if (yych <= '9') {
+                                       if (yych <= '%') goto yy256;
+                                       if (yych <= ')') goto yy249;
+                                       if (yych <= '/') goto yy256;
+                                       goto yy257;
+                               } else {
+                                       if (yych == ';') goto yy249;
+                                       if (yych <= '<') goto yy256;
+                                       goto yy249;
+                               }
+                       }
+               } else {
+                       if (yych <= '`') {
+                               if (yych <= 'Z') {
+                                       if (yych <= '@') goto yy256;
+                                       if (yych == 'E') goto yy265;
+                                       goto yy257;
+                               } else {
+                                       if (yych <= ']') goto yy256;
+                                       if (yych <= '^') goto yy249;
+                                       if (yych <= '_') goto yy257;
+                                       goto yy256;
+                               }
+                       } else {
+                               if (yych <= '{') {
+                                       if (yych == 'e') goto yy265;
+                                       if (yych <= 'z') goto yy257;
+                                       goto yy256;
+                               } else {
+                                       if (yych == '}') goto yy256;
+                                       if (yych <= '~') goto yy249;
+                                       goto yy256;
+                               }
+                       }
+               }
+yy271:
+               YYDEBUG(271, *YYCURSOR);
+               yyaccept = 4;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yych <= '=') {
+                       if (yych <= '"') {
+                               if (yych <= '\n') {
+                                       if (yych <= 0x00) goto yy249;
+                                       if (yych <= 0x08) goto yy256;
+                                       goto yy249;
+                               } else {
+                                       if (yych == '\r') goto yy249;
+                                       if (yych <= 0x1F) goto yy256;
+                                       goto yy249;
+                               }
+                       } else {
+                               if (yych <= '9') {
+                                       if (yych <= '%') goto yy256;
+                                       if (yych <= ')') goto yy249;
+                                       if (yych <= '/') goto yy256;
+                                       goto yy257;
+                               } else {
+                                       if (yych == ';') goto yy249;
+                                       if (yych <= '<') goto yy256;
+                                       goto yy249;
+                               }
+                       }
+               } else {
+                       if (yych <= '`') {
+                               if (yych <= 'Z') {
+                                       if (yych <= '@') goto yy256;
+                                       if (yych != 'F') goto yy257;
+                               } else {
+                                       if (yych <= ']') goto yy256;
+                                       if (yych <= '^') goto yy249;
+                                       if (yych <= '_') goto yy257;
+                                       goto yy256;
+                               }
+                       } else {
+                               if (yych <= '{') {
+                                       if (yych == 'f') goto yy272;
+                                       if (yych <= 'z') goto yy257;
+                                       goto yy256;
+                               } else {
+                                       if (yych == '}') goto yy256;
+                                       if (yych <= '~') goto yy249;
+                                       goto yy256;
+                               }
+                       }
+               }
+yy272:
+               YYDEBUG(272, *YYCURSOR);
+               yyaccept = 6;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yybm[0+yych] & 4) {
+                       goto yy257;
+               }
+               if (yych <= ')') {
+                       if (yych <= '\f') {
+                               if (yych <= 0x08) {
+                                       if (yych >= 0x01) goto yy256;
+                               } else {
+                                       if (yych <= '\t') goto yy274;
+                                       if (yych >= '\v') goto yy256;
+                               }
+                       } else {
+                               if (yych <= ' ') {
+                                       if (yych <= '\r') goto yy273;
+                                       if (yych <= 0x1F) goto yy256;
+                                       goto yy274;
+                               } else {
+                                       if (yych <= '"') goto yy273;
+                                       if (yych <= '%') goto yy256;
+                               }
+                       }
+               } else {
+                       if (yych <= ']') {
+                               if (yych <= ';') {
+                                       if (yych <= ':') goto yy256;
+                               } else {
+                                       if (yych != '=') goto yy256;
+                               }
+                       } else {
+                               if (yych <= '|') {
+                                       if (yych <= '^') goto yy273;
+                                       if (yych <= '{') goto yy256;
+                               } else {
+                                       if (yych != '~') goto yy256;
+                               }
+                       }
+               }
+yy273:
+               YYDEBUG(273, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 425 "Zend/zend_ini_scanner.l"
+               { /* FALSE value (when used outside option value/offset this causes parse error!)*/
+       RETURN_TOKEN(BOOL_FALSE, "", 0);
+}
+#line 3855 "Zend/zend_ini_scanner.c"
+yy274:
+               YYDEBUG(274, *YYCURSOR);
+               ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               YYDEBUG(275, *YYCURSOR);
+               if (yych == '\t') goto yy274;
+               if (yych == ' ') goto yy274;
+               goto yy273;
+yy276:
+               YYDEBUG(276, *YYCURSOR);
+               yyaccept = 6;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yych <= '<') {
+                       if (yych <= ' ') {
+                               if (yych <= '\n') {
+                                       if (yych <= 0x00) goto yy273;
+                                       if (yych <= 0x08) goto yy256;
+                                       if (yych <= '\t') goto yy274;
+                                       goto yy273;
+                               } else {
+                                       if (yych == '\r') goto yy273;
+                                       if (yych <= 0x1F) goto yy256;
+                                       goto yy274;
+                               }
+                       } else {
+                               if (yych <= '/') {
+                                       if (yych <= '"') goto yy273;
+                                       if (yych <= '%') goto yy256;
+                                       if (yych <= ')') goto yy273;
+                                       goto yy256;
+                               } else {
+                                       if (yych <= '9') goto yy257;
+                                       if (yych == ';') goto yy273;
+                                       goto yy256;
+                               }
+                       }
+               } else {
+                       if (yych <= '_') {
+                               if (yych <= 'N') {
+                                       if (yych <= '=') goto yy273;
+                                       if (yych <= '@') goto yy256;
+                                       if (yych <= 'M') goto yy257;
+                                       goto yy279;
+                               } else {
+                                       if (yych <= 'Z') goto yy257;
+                                       if (yych <= ']') goto yy256;
+                                       if (yych <= '^') goto yy273;
+                                       goto yy257;
+                               }
+                       } else {
+                               if (yych <= 'z') {
+                                       if (yych <= '`') goto yy256;
+                                       if (yych == 'n') goto yy279;
+                                       goto yy257;
+                               } else {
+                                       if (yych <= '|') {
+                                               if (yych <= '{') goto yy256;
+                                               goto yy273;
+                                       } else {
+                                               if (yych == '~') goto yy273;
+                                               goto yy256;
+                                       }
+                               }
+                       }
+               }
+yy277:
+               YYDEBUG(277, *YYCURSOR);
+               yyaccept = 4;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yych <= '=') {
+                       if (yych <= '"') {
+                               if (yych <= '\n') {
+                                       if (yych <= 0x00) goto yy249;
+                                       if (yych <= 0x08) goto yy256;
+                                       goto yy249;
+                               } else {
+                                       if (yych == '\r') goto yy249;
+                                       if (yych <= 0x1F) goto yy256;
+                                       goto yy249;
+                               }
+                       } else {
+                               if (yych <= '9') {
+                                       if (yych <= '%') goto yy256;
+                                       if (yych <= ')') goto yy249;
+                                       if (yych <= '/') goto yy256;
+                                       goto yy257;
+                               } else {
+                                       if (yych == ';') goto yy249;
+                                       if (yych <= '<') goto yy256;
+                                       goto yy249;
+                               }
+                       }
+               } else {
+                       if (yych <= '`') {
+                               if (yych <= 'Z') {
+                                       if (yych <= '@') goto yy256;
+                                       if (yych != 'L') goto yy257;
+                               } else {
+                                       if (yych <= ']') goto yy256;
+                                       if (yych <= '^') goto yy249;
+                                       if (yych <= '_') goto yy257;
+                                       goto yy256;
+                               }
+                       } else {
+                               if (yych <= '{') {
+                                       if (yych == 'l') goto yy278;
+                                       if (yych <= 'z') goto yy257;
+                                       goto yy256;
+                               } else {
+                                       if (yych == '}') goto yy256;
+                                       if (yych <= '~') goto yy249;
+                                       goto yy256;
+                               }
+                       }
+               }
+yy278:
+               YYDEBUG(278, *YYCURSOR);
+               yyaccept = 4;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yych <= '=') {
+                       if (yych <= '"') {
+                               if (yych <= '\n') {
+                                       if (yych <= 0x00) goto yy249;
+                                       if (yych <= 0x08) goto yy256;
+                                       goto yy249;
+                               } else {
+                                       if (yych == '\r') goto yy249;
+                                       if (yych <= 0x1F) goto yy256;
+                                       goto yy249;
+                               }
+                       } else {
+                               if (yych <= '9') {
+                                       if (yych <= '%') goto yy256;
+                                       if (yych <= ')') goto yy249;
+                                       if (yych <= '/') goto yy256;
+                                       goto yy257;
+                               } else {
+                                       if (yych == ';') goto yy249;
+                                       if (yych <= '<') goto yy256;
+                                       goto yy249;
+                               }
+                       }
+               } else {
+                       if (yych <= '`') {
+                               if (yych <= 'Z') {
+                                       if (yych <= '@') goto yy256;
+                                       if (yych == 'L') goto yy272;
+                                       goto yy257;
+                               } else {
+                                       if (yych <= ']') goto yy256;
+                                       if (yych <= '^') goto yy249;
+                                       if (yych <= '_') goto yy257;
+                                       goto yy256;
+                               }
+                       } else {
+                               if (yych <= '{') {
+                                       if (yych == 'l') goto yy272;
+                                       if (yych <= 'z') goto yy257;
+                                       goto yy256;
+                               } else {
+                                       if (yych == '}') goto yy256;
+                                       if (yych <= '~') goto yy249;
+                                       goto yy256;
+                               }
+                       }
+               }
+yy279:
+               YYDEBUG(279, *YYCURSOR);
+               yyaccept = 4;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yych <= '=') {
+                       if (yych <= '"') {
+                               if (yych <= '\n') {
+                                       if (yych <= 0x00) goto yy249;
+                                       if (yych <= 0x08) goto yy256;
+                                       goto yy249;
+                               } else {
+                                       if (yych == '\r') goto yy249;
+                                       if (yych <= 0x1F) goto yy256;
+                                       goto yy249;
+                               }
+                       } else {
+                               if (yych <= '9') {
+                                       if (yych <= '%') goto yy256;
+                                       if (yych <= ')') goto yy249;
+                                       if (yych <= '/') goto yy256;
+                                       goto yy257;
+                               } else {
+                                       if (yych == ';') goto yy249;
+                                       if (yych <= '<') goto yy256;
+                                       goto yy249;
+                               }
+                       }
+               } else {
+                       if (yych <= '`') {
+                               if (yych <= 'Z') {
+                                       if (yych <= '@') goto yy256;
+                                       if (yych == 'E') goto yy272;
+                                       goto yy257;
+                               } else {
+                                       if (yych <= ']') goto yy256;
+                                       if (yych <= '^') goto yy249;
+                                       if (yych <= '_') goto yy257;
+                                       goto yy256;
+                               }
+                       } else {
+                               if (yych <= '{') {
+                                       if (yych == 'e') goto yy272;
+                                       if (yych <= 'z') goto yy257;
+                                       goto yy256;
+                               } else {
+                                       if (yych == '}') goto yy256;
+                                       if (yych <= '~') goto yy249;
+                                       goto yy256;
+                               }
+                       }
+               }
+yy280:
+               YYDEBUG(280, *YYCURSOR);
+               yyaccept = 4;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yych <= '=') {
+                       if (yych <= '"') {
+                               if (yych <= '\n') {
+                                       if (yych <= 0x00) goto yy249;
+                                       if (yych <= 0x08) goto yy256;
+                                       goto yy249;
+                               } else {
+                                       if (yych == '\r') goto yy249;
+                                       if (yych <= 0x1F) goto yy256;
+                                       goto yy249;
+                               }
+                       } else {
+                               if (yych <= '9') {
+                                       if (yych <= '%') goto yy256;
+                                       if (yych <= ')') goto yy249;
+                                       if (yych <= '/') goto yy256;
+                                       goto yy257;
+                               } else {
+                                       if (yych == ';') goto yy249;
+                                       if (yych <= '<') goto yy256;
+                                       goto yy249;
+                               }
+                       }
+               } else {
+                       if (yych <= '`') {
+                               if (yych <= 'Z') {
+                                       if (yych <= '@') goto yy256;
+                                       if (yych != 'L') goto yy257;
+                               } else {
+                                       if (yych <= ']') goto yy256;
+                                       if (yych <= '^') goto yy249;
+                                       if (yych <= '_') goto yy257;
+                                       goto yy256;
+                               }
+                       } else {
+                               if (yych <= '{') {
+                                       if (yych == 'l') goto yy281;
+                                       if (yych <= 'z') goto yy257;
+                                       goto yy256;
+                               } else {
+                                       if (yych == '}') goto yy256;
+                                       if (yych <= '~') goto yy249;
+                                       goto yy256;
+                               }
+                       }
+               }
+yy281:
+               YYDEBUG(281, *YYCURSOR);
+               yyaccept = 4;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yych <= '=') {
+                       if (yych <= '"') {
+                               if (yych <= '\n') {
+                                       if (yych <= 0x00) goto yy249;
+                                       if (yych <= 0x08) goto yy256;
+                                       goto yy249;
+                               } else {
+                                       if (yych == '\r') goto yy249;
+                                       if (yych <= 0x1F) goto yy256;
+                                       goto yy249;
+                               }
+                       } else {
+                               if (yych <= '9') {
+                                       if (yych <= '%') goto yy256;
+                                       if (yych <= ')') goto yy249;
+                                       if (yych <= '/') goto yy256;
+                                       goto yy257;
+                               } else {
+                                       if (yych == ';') goto yy249;
+                                       if (yych <= '<') goto yy256;
+                                       goto yy249;
+                               }
+                       }
+               } else {
+                       if (yych <= '`') {
+                               if (yych <= 'Z') {
+                                       if (yych <= '@') goto yy256;
+                                       if (yych != 'S') goto yy257;
+                               } else {
+                                       if (yych <= ']') goto yy256;
+                                       if (yych <= '^') goto yy249;
+                                       if (yych <= '_') goto yy257;
+                                       goto yy256;
+                               }
+                       } else {
+                               if (yych <= '{') {
+                                       if (yych == 's') goto yy282;
+                                       if (yych <= 'z') goto yy257;
+                                       goto yy256;
+                               } else {
+                                       if (yych == '}') goto yy256;
+                                       if (yych <= '~') goto yy249;
+                                       goto yy256;
+                               }
+                       }
+               }
+yy282:
+               YYDEBUG(282, *YYCURSOR);
+               yyaccept = 4;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yych <= '=') {
+                       if (yych <= '"') {
+                               if (yych <= '\n') {
+                                       if (yych <= 0x00) goto yy249;
+                                       if (yych <= 0x08) goto yy256;
+                                       goto yy249;
+                               } else {
+                                       if (yych == '\r') goto yy249;
+                                       if (yych <= 0x1F) goto yy256;
+                                       goto yy249;
+                               }
+                       } else {
+                               if (yych <= '9') {
+                                       if (yych <= '%') goto yy256;
+                                       if (yych <= ')') goto yy249;
+                                       if (yych <= '/') goto yy256;
+                                       goto yy257;
+                               } else {
+                                       if (yych == ';') goto yy249;
+                                       if (yych <= '<') goto yy256;
+                                       goto yy249;
+                               }
+                       }
+               } else {
+                       if (yych <= '`') {
+                               if (yych <= 'Z') {
+                                       if (yych <= '@') goto yy256;
+                                       if (yych == 'E') goto yy272;
+                                       goto yy257;
+                               } else {
+                                       if (yych <= ']') goto yy256;
+                                       if (yych <= '^') goto yy249;
+                                       if (yych <= '_') goto yy257;
+                                       goto yy256;
+                               }
+                       } else {
+                               if (yych <= '{') {
+                                       if (yych == 'e') goto yy272;
+                                       if (yych <= 'z') goto yy257;
+                                       goto yy256;
+                               } else {
+                                       if (yych == '}') goto yy256;
+                                       if (yych <= '~') goto yy249;
+                                       goto yy256;
+                               }
+                       }
+               }
+yy283:
+               YYDEBUG(283, *YYCURSOR);
+               ++YYCURSOR;
+               YYFILL(2);
+               yych = *YYCURSOR;
+yy284:
+               YYDEBUG(284, *YYCURSOR);
+               if (yybm[0+yych] & 32) {
+                       goto yy283;
+               }
+               if (yych >= '\r') goto yy287;
+yy285:
+               YYDEBUG(285, *YYCURSOR);
+               ++YYCURSOR;
+yy286:
+               YYDEBUG(286, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 585 "Zend/zend_ini_scanner.l"
+               { /* Comment */
+       BEGIN(INITIAL);
+       SCNG(lineno)++;
+       return END_OF_LINE;
+}
+#line 4248 "Zend/zend_ini_scanner.c"
+yy287:
+               YYDEBUG(287, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych == '\n') goto yy285;
+               goto yy286;
+yy288:
+               YYDEBUG(288, *YYCURSOR);
+               yyaccept = 3;
+               YYMARKER = ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               YYDEBUG(289, *YYCURSOR);
+               if (yybm[0+yych] & 64) {
+                       goto yy288;
+               }
+               if (yych <= ')') {
+                       if (yych <= '\r') {
+                               if (yych <= 0x08) {
+                                       if (yych <= 0x00) goto yy244;
+                                       goto yy255;
+                               } else {
+                                       if (yych <= '\n') goto yy244;
+                                       if (yych <= '\f') goto yy255;
+                                       goto yy244;
+                               }
+                       } else {
+                               if (yych <= '#') {
+                                       if (yych <= 0x1F) goto yy255;
+                                       if (yych <= '"') goto yy244;
+                                       goto yy255;
+                               } else {
+                                       if (yych <= '$') goto yy260;
+                                       if (yych <= '%') goto yy255;
+                                       goto yy244;
+                               }
+                       }
+               } else {
+                       if (yych <= ']') {
+                               if (yych <= ';') {
+                                       if (yych <= ':') goto yy255;
+                                       goto yy244;
+                               } else {
+                                       if (yych == '=') goto yy244;
+                                       goto yy255;
+                               }
+                       } else {
+                               if (yych <= '|') {
+                                       if (yych <= '^') goto yy244;
+                                       if (yych <= '{') goto yy255;
+                                       goto yy244;
+                               } else {
+                                       if (yych == '~') goto yy244;
+                                       goto yy255;
+                               }
+                       }
+               }
+yy290:
+               YYDEBUG(290, *YYCURSOR);
+               yyaccept = 3;
+               YYMARKER = ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               YYDEBUG(291, *YYCURSOR);
+               if (yych <= '.') {
+                       if (yych <= 0x1F) {
+                               if (yych <= '\n') {
+                                       if (yych <= 0x00) goto yy244;
+                                       if (yych <= 0x08) goto yy255;
+                                       goto yy244;
+                               } else {
+                                       if (yych == '\r') goto yy244;
+                                       goto yy255;
+                               }
+                       } else {
+                               if (yych <= '$') {
+                                       if (yych <= '"') goto yy244;
+                                       if (yych <= '#') goto yy255;
+                                       goto yy260;
+                               } else {
+                                       if (yych <= '%') goto yy255;
+                                       if (yych <= ')') goto yy244;
+                                       if (yych <= '-') goto yy255;
+                                       goto yy288;
+                               }
+                       }
+               } else {
+                       if (yych <= '=') {
+                               if (yych <= ':') {
+                                       if (yych <= '/') goto yy255;
+                                       if (yych <= '9') goto yy290;
+                                       goto yy255;
+                               } else {
+                                       if (yych == '<') goto yy255;
+                                       goto yy244;
+                               }
+                       } else {
+                               if (yych <= '{') {
+                                       if (yych == '^') goto yy244;
+                                       goto yy255;
+                               } else {
+                                       if (yych == '}') goto yy255;
+                                       if (yych <= '~') goto yy244;
+                                       goto yy255;
+                               }
+                       }
+               }
+yy292:
+               YYDEBUG(292, *YYCURSOR);
+               yyaccept = 3;
+               YYMARKER = ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               YYDEBUG(293, *YYCURSOR);
+               if (yych <= '/') {
+                       if (yych <= 0x1F) {
+                               if (yych <= '\n') {
+                                       if (yych <= 0x00) goto yy244;
+                                       if (yych <= 0x08) goto yy255;
+                                       goto yy244;
+                               } else {
+                                       if (yych == '\r') goto yy244;
+                                       goto yy255;
+                               }
+                       } else {
+                               if (yych <= '$') {
+                                       if (yych <= '"') goto yy244;
+                                       if (yych <= '#') goto yy255;
+                                       goto yy260;
+                               } else {
+                                       if (yych <= '%') goto yy255;
+                                       if (yych <= ')') goto yy244;
+                                       goto yy255;
+                               }
+                       }
+               } else {
+                       if (yych <= ']') {
+                               if (yych <= ';') {
+                                       if (yych <= '9') goto yy292;
+                                       if (yych <= ':') goto yy255;
+                                       goto yy244;
+                               } else {
+                                       if (yych == '=') goto yy244;
+                                       goto yy255;
+                               }
+                       } else {
+                               if (yych <= '|') {
+                                       if (yych <= '^') goto yy244;
+                                       if (yych <= '{') goto yy255;
+                                       goto yy244;
+                               } else {
+                                       if (yych == '~') goto yy244;
+                                       goto yy255;
+                               }
+                       }
+               }
+yy294:
+               YYDEBUG(294, *YYCURSOR);
+               yyaccept = 3;
+               YYMARKER = ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               YYDEBUG(295, *YYCURSOR);
+               if (yych <= '/') {
+                       if (yych <= 0x1F) {
+                               if (yych <= '\n') {
+                                       if (yych <= 0x00) goto yy244;
+                                       if (yych <= 0x08) goto yy255;
+                                       goto yy244;
+                               } else {
+                                       if (yych == '\r') goto yy244;
+                                       goto yy255;
+                               }
+                       } else {
+                               if (yych <= '$') {
+                                       if (yych <= '"') goto yy244;
+                                       if (yych <= '#') goto yy255;
+                                       goto yy260;
+                               } else {
+                                       if (yych <= '%') goto yy255;
+                                       if (yych <= ')') goto yy244;
+                                       goto yy255;
+                               }
+                       }
+               } else {
+                       if (yych <= ']') {
+                               if (yych <= ';') {
+                                       if (yych <= '9') goto yy294;
+                                       if (yych <= ':') goto yy255;
+                                       goto yy244;
+                               } else {
+                                       if (yych == '=') goto yy244;
+                                       goto yy255;
+                               }
+                       } else {
+                               if (yych <= '|') {
+                                       if (yych <= '^') goto yy244;
+                                       if (yych <= '{') goto yy255;
+                                       goto yy244;
+                               } else {
+                                       if (yych == '~') goto yy244;
+                                       goto yy255;
+                               }
+                       }
+               }
+yy296:
+               YYDEBUG(296, *YYCURSOR);
+               ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+               YYDEBUG(297, *YYCURSOR);
+               if (yybm[0+yych] & 128) {
+                       goto yy296;
+               }
+               YYDEBUG(298, *YYCURSOR);
+               ++YYCURSOR;
+               YYDEBUG(299, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 368 "Zend/zend_ini_scanner.l"
+               { /* Raw string */
+       /* Eat leading and trailing single quotes */
+       if (yytext[0] == '\'' && yytext[yyleng - 1] == '\'') {
+               SCNG(yy_text)++;
+               yyleng = yyleng - 2;
+       }
+       RETURN_TOKEN(TC_RAW, yytext, yyleng);
+}
+#line 4475 "Zend/zend_ini_scanner.c"
+yy300:
+               YYDEBUG(300, *YYCURSOR);
+               ++YYCURSOR;
+               YYDEBUG(301, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 401 "Zend/zend_ini_scanner.l"
+               { /* Variable start */
+       yy_push_state(ST_VARNAME TSRMLS_CC);
+       return TC_DOLLAR_CURLY;
+}
+#line 4486 "Zend/zend_ini_scanner.c"
+yy302:
+               YYDEBUG(302, *YYCURSOR);
+               ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+yy303:
+               YYDEBUG(303, *YYCURSOR);
+               if (yych == '\t') goto yy302;
+               if (yych == ' ') goto yy302;
+               goto yy236;
+yy304:
+               YYDEBUG(304, *YYCURSOR);
+               yych = *++YYCURSOR;
+               goto yy233;
+yy305:
+               YYDEBUG(305, *YYCURSOR);
+               yyaccept = 1;
+               YYMARKER = ++YYCURSOR;
+               YYFILL(2);
+               yych = *YYCURSOR;
+yy306:
+               YYDEBUG(306, *YYCURSOR);
+               if (yych <= 0x1F) {
+                       if (yych <= '\n') {
+                               if (yych <= 0x08) goto yy231;
+                               if (yych <= '\t') goto yy305;
+                               goto yy304;
+                       } else {
+                               if (yych == '\r') goto yy308;
+                               goto yy231;
+                       }
+               } else {
+                       if (yych <= '"') {
+                               if (yych <= ' ') goto yy305;
+                               if (yych <= '!') goto yy231;
+                       } else {
+                               if (yych == ';') goto yy283;
+                               goto yy231;
+                       }
+               }
+               YYDEBUG(307, *YYCURSOR);
+               yych = *++YYCURSOR;
+               goto yy238;
+yy308:
+               YYDEBUG(308, *YYCURSOR);
+               ++YYCURSOR;
+               if ((yych = *YYCURSOR) == '\n') goto yy304;
+               goto yy233;
+       }
+/* *********************************** */
+yyc_ST_VARNAME:
+       {
+               static const unsigned char yybm[] = {
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128,   0,   0, 128, 128,   0, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128,   0,   0, 128,   0, 128,   0, 128, 
+                         0,   0, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128,   0, 128,   0, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128,   0, 128, 128,   0, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128,   0,   0,   0,   0, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+                       128, 128, 128, 128, 128, 128, 128, 128, 
+               };
+               YYDEBUG(309, *YYCURSOR);
+               YYFILL(2);
+               yych = *YYCURSOR;
+               if (yych <= ')') {
+                       if (yych <= '"') {
+                               if (yych <= '\f') {
+                                       if (yych <= 0x08) goto yy311;
+                                       if (yych <= '\n') goto yy313;
+                               } else {
+                                       if (yych <= '\r') goto yy313;
+                                       if (yych >= '!') goto yy313;
+                               }
+                       } else {
+                               if (yych <= '%') {
+                                       if (yych == '$') goto yy313;
+                               } else {
+                                       if (yych != '\'') goto yy313;
+                               }
+                       }
+               } else {
+                       if (yych <= '[') {
+                               if (yych <= '<') {
+                                       if (yych == ';') goto yy313;
+                               } else {
+                                       if (yych <= '=') goto yy313;
+                                       if (yych >= '[') goto yy313;
+                               }
+                       } else {
+                               if (yych <= 'z') {
+                                       if (yych == '^') goto yy313;
+                               } else {
+                                       if (yych == '}') goto yy315;
+                                       if (yych <= '~') goto yy313;
+                               }
+                       }
+               }
+yy311:
+               YYDEBUG(311, *YYCURSOR);
+               ++YYCURSOR;
+               yych = *YYCURSOR;
+               goto yy318;
+yy312:
+               YYDEBUG(312, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 406 "Zend/zend_ini_scanner.l"
+               { /* Variable name */
+       /* Eat leading whitespace */
+       EAT_LEADING_WHITESPACE();
+
+       /* Eat trailing whitespace */
+       EAT_TRAILING_WHITESPACE();
+
+       RETURN_TOKEN(TC_VARNAME, yytext, yyleng);
+}
+#line 4627 "Zend/zend_ini_scanner.c"
+yy313:
+               YYDEBUG(313, *YYCURSOR);
+               ++YYCURSOR;
+               YYDEBUG(314, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 603 "Zend/zend_ini_scanner.l"
+               {
+       return 0;
+}
+#line 4637 "Zend/zend_ini_scanner.c"
+yy315:
+               YYDEBUG(315, *YYCURSOR);
+               ++YYCURSOR;
+               YYDEBUG(316, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 416 "Zend/zend_ini_scanner.l"
+               { /* Variable end */
+       yy_pop_state(TSRMLS_C);
+       return '}';
+}
+#line 4648 "Zend/zend_ini_scanner.c"
+yy317:
+               YYDEBUG(317, *YYCURSOR);
+               ++YYCURSOR;
+               YYFILL(1);
+               yych = *YYCURSOR;
+yy318:
+               YYDEBUG(318, *YYCURSOR);
+               if (yybm[0+yych] & 128) {
+                       goto yy317;
+               }
+               goto yy312;
+       }
+}
+#line 607 "Zend/zend_ini_scanner.l"
+
+}
index 57239549783beac2639f1c255c789a5408f8ccd9..287d7bc1fbb9f59a4b53331e4929b31fe2ace698 100644 (file)
@@ -1,13 +1,13 @@
-/* Generated by re2c 0.13.5 */\r
-#line 3 "Zend/zend_ini_scanner_defs.h"\r
-\r
-enum YYCONDTYPE {\r
-       yycINITIAL,\r
-       yycST_OFFSET,\r
-       yycST_SECTION_VALUE,\r
-       yycST_VALUE,\r
-       yycST_SECTION_RAW,\r
-       yycST_DOUBLE_QUOTES,\r
-       yycST_VARNAME,\r
-       yycST_RAW,\r
-};\r
+/* Generated by re2c 0.13.5 */
+#line 3 "Zend/zend_ini_scanner_defs.h"
+
+enum YYCONDTYPE {
+       yycINITIAL,
+       yycST_OFFSET,
+       yycST_SECTION_VALUE,
+       yycST_VALUE,
+       yycST_SECTION_RAW,
+       yycST_DOUBLE_QUOTES,
+       yycST_VARNAME,
+       yycST_RAW,
+};
index a4bc612bcb1d11b64c6c2cae729e1ff6e8a235d3..5d3f73beafca42e30cc8cfecf29b78fcf25e0186 100644 (file)
@@ -72,7 +72,7 @@ static YYSIZE_T zend_yytnamerr(char*, const char*);
 %token T_PRINT        "print (T_PRINT)"
 %right T_YIELD
 %token T_YIELD        "yield (T_YIELD)"
-%left '=' T_PLUS_EQUAL T_MINUS_EQUAL T_MUL_EQUAL T_DIV_EQUAL T_CONCAT_EQUAL T_MOD_EQUAL T_AND_EQUAL T_OR_EQUAL T_XOR_EQUAL T_SL_EQUAL T_SR_EQUAL
+%left '=' T_PLUS_EQUAL T_MINUS_EQUAL T_MUL_EQUAL T_DIV_EQUAL T_CONCAT_EQUAL T_MOD_EQUAL T_AND_EQUAL T_OR_EQUAL T_XOR_EQUAL T_SL_EQUAL T_SR_EQUAL T_POW_EQUAL
 %token T_PLUS_EQUAL   "+= (T_PLUS_EQUAL)"
 %token T_MINUS_EQUAL  "-= (T_MINUS_EQUAL)"
 %token T_MUL_EQUAL    "*= (T_MUL_EQUAL)"
@@ -109,6 +109,7 @@ static YYSIZE_T zend_yytnamerr(char*, const char*);
 %nonassoc T_INSTANCEOF
 %token T_INSTANCEOF  "instanceof (T_INSTANCEOF)"
 %right '~' T_INC T_DEC T_INT_CAST T_DOUBLE_CAST T_STRING_CAST T_ARRAY_CAST T_OBJECT_CAST T_BOOL_CAST T_UNSET_CAST '@'
+%right T_POW
 %token T_INC "++ (T_INC)"
 %token T_DEC "-- (T_DEC)"
 %token T_INT_CAST    "(int) (T_INT_CAST)"
@@ -213,6 +214,8 @@ static YYSIZE_T zend_yytnamerr(char*, const char*);
 %token T_DIR             "__DIR__ (T_DIR)"
 %token T_NS_SEPARATOR    "\\ (T_NS_SEPARATOR)"
 %token T_ELLIPSIS        "... (T_ELLIPSIS)"
+%token T_POW             "** (T_POW)"
+%token T_POW_EQUAL       "**= (T_POW_EQUAL)"
 
 %% /* Rules */
 
@@ -778,6 +781,7 @@ expr_without_variable:
        |       variable T_PLUS_EQUAL expr      { zend_check_writable_variable(&$1); zend_do_end_variable_parse(&$1, BP_VAR_RW, 0 TSRMLS_CC); zend_do_binary_assign_op(ZEND_ASSIGN_ADD, &$$, &$1, &$3 TSRMLS_CC); }
        |       variable T_MINUS_EQUAL expr     { zend_check_writable_variable(&$1); zend_do_end_variable_parse(&$1, BP_VAR_RW, 0 TSRMLS_CC); zend_do_binary_assign_op(ZEND_ASSIGN_SUB, &$$, &$1, &$3 TSRMLS_CC); }
        |       variable T_MUL_EQUAL expr               { zend_check_writable_variable(&$1); zend_do_end_variable_parse(&$1, BP_VAR_RW, 0 TSRMLS_CC); zend_do_binary_assign_op(ZEND_ASSIGN_MUL, &$$, &$1, &$3 TSRMLS_CC); }
+       |       variable T_POW_EQUAL expr               { zend_check_writable_variable(&$1); zend_do_end_variable_parse(&$1, BP_VAR_RW, 0 TSRMLS_CC); zend_do_binary_assign_op(ZEND_ASSIGN_POW, &$$, &$1, &$3 TSRMLS_CC); }
        |       variable T_DIV_EQUAL expr               { zend_check_writable_variable(&$1); zend_do_end_variable_parse(&$1, BP_VAR_RW, 0 TSRMLS_CC); zend_do_binary_assign_op(ZEND_ASSIGN_DIV, &$$, &$1, &$3 TSRMLS_CC); }
        |       variable T_CONCAT_EQUAL expr    { zend_check_writable_variable(&$1); zend_do_end_variable_parse(&$1, BP_VAR_RW, 0 TSRMLS_CC); zend_do_binary_assign_op(ZEND_ASSIGN_CONCAT, &$$, &$1, &$3 TSRMLS_CC); }
        |       variable T_MOD_EQUAL expr               { zend_check_writable_variable(&$1); zend_do_end_variable_parse(&$1, BP_VAR_RW, 0 TSRMLS_CC); zend_do_binary_assign_op(ZEND_ASSIGN_MOD, &$$, &$1, &$3 TSRMLS_CC); }
@@ -802,6 +806,7 @@ expr_without_variable:
        |       expr '+' expr   { zend_do_binary_op(ZEND_ADD, &$$, &$1, &$3 TSRMLS_CC); }
        |       expr '-' expr   { zend_do_binary_op(ZEND_SUB, &$$, &$1, &$3 TSRMLS_CC); }
        |       expr '*' expr   { zend_do_binary_op(ZEND_MUL, &$$, &$1, &$3 TSRMLS_CC); }
+       |       expr T_POW expr { zend_do_binary_op(ZEND_POW, &$$, &$1, &$3 TSRMLS_CC); }
        |       expr '/' expr   { zend_do_binary_op(ZEND_DIV, &$$, &$1, &$3 TSRMLS_CC); }
        |       expr '%' expr   { zend_do_binary_op(ZEND_MOD, &$$, &$1, &$3 TSRMLS_CC); }
        |       expr T_SL expr  { zend_do_binary_op(ZEND_SL, &$$, &$1, &$3 TSRMLS_CC); }
index 8e958d73d2acd61df64b0fa75cd69676b21f0b05..05f9e4ed7f48656c9c416a9f61e073def44104bc 100644 (file)
@@ -1,4 +1,4 @@
-/* Generated by re2c 0.13.5 on Sun Dec 22 13:03:33 2013 */
+/* Generated by re2c 0.13.5 */
 #line 1 "Zend/zend_language_scanner.l"
 /*
    +----------------------------------------------------------------------+
@@ -1096,7 +1096,7 @@ yyc_INITIAL:
 yy3:
                YYDEBUG(3, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1741 "Zend/zend_language_scanner.l"
+#line 1749 "Zend/zend_language_scanner.l"
                {
        if (YYCURSOR > YYLIMIT) {
                return 0;
@@ -1174,7 +1174,7 @@ yy5:
 yy6:
                YYDEBUG(6, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1731 "Zend/zend_language_scanner.l"
+#line 1739 "Zend/zend_language_scanner.l"
                {
        if (CG(short_tags)) {
                ZVAL_STRINGL(zendlval, yytext, yyleng, 0); /* no copying - intentional */
@@ -1191,7 +1191,7 @@ yy7:
                if ((yych = *YYCURSOR) == '=') goto yy43;
                YYDEBUG(8, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1712 "Zend/zend_language_scanner.l"
+#line 1720 "Zend/zend_language_scanner.l"
                {
        if (CG(asp_tags)) {
                ZVAL_STRINGL(zendlval, yytext, yyleng, 0); /* no copying - intentional */
@@ -1387,7 +1387,7 @@ yy35:
                ++YYCURSOR;
                YYDEBUG(38, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1678 "Zend/zend_language_scanner.l"
+#line 1686 "Zend/zend_language_scanner.l"
                {
        YYCTYPE *bracket = (YYCTYPE*)zend_memrchr(yytext, '<', yyleng - (sizeof("script language=php>") - 1));
 
@@ -1429,7 +1429,7 @@ yy43:
                ++YYCURSOR;
                YYDEBUG(44, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1694 "Zend/zend_language_scanner.l"
+#line 1702 "Zend/zend_language_scanner.l"
                {
        if (CG(asp_tags)) {
                ZVAL_STRINGL(zendlval, yytext, yyleng, 0); /* no copying - intentional */
@@ -1445,7 +1445,7 @@ yy45:
                ++YYCURSOR;
                YYDEBUG(46, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1705 "Zend/zend_language_scanner.l"
+#line 1713 "Zend/zend_language_scanner.l"
                {
        ZVAL_STRINGL(zendlval, yytext, yyleng, 0); /* no copying - intentional */
        BEGIN(ST_IN_SCRIPTING);
@@ -1478,7 +1478,7 @@ yy50:
 yy51:
                YYDEBUG(51, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1723 "Zend/zend_language_scanner.l"
+#line 1731 "Zend/zend_language_scanner.l"
                {
        ZVAL_STRINGL(zendlval, yytext, yyleng, 0); /* no copying - intentional */
        HANDLE_NEWLINE(yytext[yyleng-1]);
@@ -1556,7 +1556,7 @@ yyc_ST_BACKQUOTE:
 yy56:
                YYDEBUG(56, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 2186 "Zend/zend_language_scanner.l"
+#line 2194 "Zend/zend_language_scanner.l"
                {
        if (YYCURSOR > YYLIMIT) {
                return 0;
@@ -1608,7 +1608,7 @@ yy58:
                ++YYCURSOR;
                YYDEBUG(59, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 2130 "Zend/zend_language_scanner.l"
+#line 2138 "Zend/zend_language_scanner.l"
                {
        BEGIN(ST_IN_SCRIPTING);
        return '`';
@@ -1623,7 +1623,7 @@ yy61:
                ++YYCURSOR;
                YYDEBUG(62, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 2117 "Zend/zend_language_scanner.l"
+#line 2125 "Zend/zend_language_scanner.l"
                {
        Z_LVAL_P(zendlval) = (long) '{';
        yy_push_state(ST_IN_SCRIPTING TSRMLS_CC);
@@ -1646,7 +1646,7 @@ yy63:
 yy65:
                YYDEBUG(65, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1823 "Zend/zend_language_scanner.l"
+#line 1831 "Zend/zend_language_scanner.l"
                {
        zend_copy_value(zendlval, (yytext+1), (yyleng-1));
        zendlval->type = IS_STRING;
@@ -1658,7 +1658,7 @@ yy66:
                ++YYCURSOR;
                YYDEBUG(67, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1457 "Zend/zend_language_scanner.l"
+#line 1465 "Zend/zend_language_scanner.l"
                {
        yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC);
        return T_DOLLAR_OPEN_CURLY_BRACES;
@@ -1677,7 +1677,7 @@ yy70:
                ++YYCURSOR;
                YYDEBUG(71, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1815 "Zend/zend_language_scanner.l"
+#line 1823 "Zend/zend_language_scanner.l"
                {
        yyless(yyleng - 1);
        yy_push_state(ST_VAR_OFFSET TSRMLS_CC);
@@ -1703,7 +1703,7 @@ yy73:
                ++YYCURSOR;
                YYDEBUG(74, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1805 "Zend/zend_language_scanner.l"
+#line 1813 "Zend/zend_language_scanner.l"
                {
        yyless(yyleng - 3);
        yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC);
@@ -1779,7 +1779,7 @@ yy77:
 yy78:
                YYDEBUG(78, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 2136 "Zend/zend_language_scanner.l"
+#line 2144 "Zend/zend_language_scanner.l"
                {
        if (GET_DOUBLE_QUOTES_SCANNED_LENGTH()) {
                YYCURSOR += GET_DOUBLE_QUOTES_SCANNED_LENGTH() - 1;
@@ -1839,7 +1839,7 @@ yy80:
                ++YYCURSOR;
                YYDEBUG(81, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 2125 "Zend/zend_language_scanner.l"
+#line 2133 "Zend/zend_language_scanner.l"
                {
        BEGIN(ST_IN_SCRIPTING);
        return '"';
@@ -1854,7 +1854,7 @@ yy83:
                ++YYCURSOR;
                YYDEBUG(84, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 2117 "Zend/zend_language_scanner.l"
+#line 2125 "Zend/zend_language_scanner.l"
                {
        Z_LVAL_P(zendlval) = (long) '{';
        yy_push_state(ST_IN_SCRIPTING TSRMLS_CC);
@@ -1877,7 +1877,7 @@ yy85:
 yy87:
                YYDEBUG(87, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1823 "Zend/zend_language_scanner.l"
+#line 1831 "Zend/zend_language_scanner.l"
                {
        zend_copy_value(zendlval, (yytext+1), (yyleng-1));
        zendlval->type = IS_STRING;
@@ -1889,7 +1889,7 @@ yy88:
                ++YYCURSOR;
                YYDEBUG(89, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1457 "Zend/zend_language_scanner.l"
+#line 1465 "Zend/zend_language_scanner.l"
                {
        yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC);
        return T_DOLLAR_OPEN_CURLY_BRACES;
@@ -1908,7 +1908,7 @@ yy92:
                ++YYCURSOR;
                YYDEBUG(93, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1815 "Zend/zend_language_scanner.l"
+#line 1823 "Zend/zend_language_scanner.l"
                {
        yyless(yyleng - 1);
        yy_push_state(ST_VAR_OFFSET TSRMLS_CC);
@@ -1934,7 +1934,7 @@ yy95:
                ++YYCURSOR;
                YYDEBUG(96, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1805 "Zend/zend_language_scanner.l"
+#line 1813 "Zend/zend_language_scanner.l"
                {
        yyless(yyleng - 3);
        yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC);
@@ -1953,7 +1953,7 @@ yyc_ST_END_HEREDOC:
        ++YYCURSOR;
        YYDEBUG(100, *YYCURSOR);
        yyleng = YYCURSOR - SCNG(yy_text);
-#line 2103 "Zend/zend_language_scanner.l"
+#line 2111 "Zend/zend_language_scanner.l"
        {
        zend_heredoc_label *heredoc_label = zend_ptr_stack_pop(&SCNG(heredoc_label_stack));
 
@@ -2028,7 +2028,7 @@ yy103:
 yy104:
                YYDEBUG(104, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 2228 "Zend/zend_language_scanner.l"
+#line 2236 "Zend/zend_language_scanner.l"
                {
        int newline = 0;
 
@@ -2116,7 +2116,7 @@ yy107:
                ++YYCURSOR;
                YYDEBUG(108, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 2117 "Zend/zend_language_scanner.l"
+#line 2125 "Zend/zend_language_scanner.l"
                {
        Z_LVAL_P(zendlval) = (long) '{';
        yy_push_state(ST_IN_SCRIPTING TSRMLS_CC);
@@ -2139,7 +2139,7 @@ yy109:
 yy111:
                YYDEBUG(111, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1823 "Zend/zend_language_scanner.l"
+#line 1831 "Zend/zend_language_scanner.l"
                {
        zend_copy_value(zendlval, (yytext+1), (yyleng-1));
        zendlval->type = IS_STRING;
@@ -2151,7 +2151,7 @@ yy112:
                ++YYCURSOR;
                YYDEBUG(113, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1457 "Zend/zend_language_scanner.l"
+#line 1465 "Zend/zend_language_scanner.l"
                {
        yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC);
        return T_DOLLAR_OPEN_CURLY_BRACES;
@@ -2170,7 +2170,7 @@ yy116:
                ++YYCURSOR;
                YYDEBUG(117, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1815 "Zend/zend_language_scanner.l"
+#line 1823 "Zend/zend_language_scanner.l"
                {
        yyless(yyleng - 1);
        yy_push_state(ST_VAR_OFFSET TSRMLS_CC);
@@ -2196,7 +2196,7 @@ yy119:
                ++YYCURSOR;
                YYDEBUG(120, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1805 "Zend/zend_language_scanner.l"
+#line 1813 "Zend/zend_language_scanner.l"
                {
        yyless(yyleng - 3);
        yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC);
@@ -2371,23 +2371,23 @@ yy123:
                YYDEBUG(-1, yych);
                switch ((yych = *YYCURSOR)) {
                case 'C':
-               case 'c':       goto yy738;
+               case 'c':       goto yy742;
                case 'L':
-               case 'l':       goto yy739;
+               case 'l':       goto yy743;
                case 'M':
-               case 'm':       goto yy740;
+               case 'm':       goto yy744;
                case 'N':
-               case 'n':       goto yy741;
+               case 'n':       goto yy745;
                case 'V':
-               case 'v':       goto yy742;
+               case 'v':       goto yy746;
                case 'X':
-               case 'x':       goto yy743;
+               case 'x':       goto yy747;
                default:        goto yy187;
                }
 yy124:
                YYDEBUG(124, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1846 "Zend/zend_language_scanner.l"
+#line 1854 "Zend/zend_language_scanner.l"
                {
        zend_copy_value(zendlval, yytext, yyleng);
        zendlval->type = IS_STRING;
@@ -2399,20 +2399,20 @@ yy125:
                yych = *++YYCURSOR;
                if (yych <= 'O') {
                        if (yych <= 'H') {
-                               if (yych == 'E') goto yy720;
+                               if (yych == 'E') goto yy724;
                                goto yy187;
                        } else {
-                               if (yych <= 'I') goto yy721;
+                               if (yych <= 'I') goto yy725;
                                if (yych <= 'N') goto yy187;
-                               goto yy722;
+                               goto yy726;
                        }
                } else {
                        if (yych <= 'h') {
-                               if (yych == 'e') goto yy720;
+                               if (yych == 'e') goto yy724;
                                goto yy187;
                        } else {
-                               if (yych <= 'i') goto yy721;
-                               if (yych == 'o') goto yy722;
+                               if (yych <= 'i') goto yy725;
+                               if (yych == 'o') goto yy726;
                                goto yy187;
                        }
                }
@@ -2421,20 +2421,20 @@ yy126:
                yych = *++YYCURSOR;
                if (yych <= 'U') {
                        if (yych <= 'N') {
-                               if (yych == 'I') goto yy696;
+                               if (yych == 'I') goto yy700;
                                goto yy187;
                        } else {
-                               if (yych <= 'O') goto yy697;
+                               if (yych <= 'O') goto yy701;
                                if (yych <= 'T') goto yy187;
-                               goto yy698;
+                               goto yy702;
                        }
                } else {
                        if (yych <= 'n') {
-                               if (yych == 'i') goto yy696;
+                               if (yych == 'i') goto yy700;
                                goto yy187;
                        } else {
-                               if (yych <= 'o') goto yy697;
-                               if (yych == 'u') goto yy698;
+                               if (yych <= 'o') goto yy701;
+                               if (yych == 'u') goto yy702;
                                goto yy187;
                        }
                }
@@ -2443,48 +2443,48 @@ yy127:
                yych = *++YYCURSOR;
                if (yych <= 'O') {
                        if (yych <= 'K') {
-                               if (yych == 'A') goto yy661;
+                               if (yych == 'A') goto yy665;
                                goto yy187;
                        } else {
-                               if (yych <= 'L') goto yy662;
+                               if (yych <= 'L') goto yy666;
                                if (yych <= 'N') goto yy187;
-                               goto yy663;
+                               goto yy667;
                        }
                } else {
                        if (yych <= 'k') {
-                               if (yych == 'a') goto yy661;
+                               if (yych == 'a') goto yy665;
                                goto yy187;
                        } else {
-                               if (yych <= 'l') goto yy662;
-                               if (yych == 'o') goto yy663;
+                               if (yych <= 'l') goto yy666;
+                               if (yych == 'o') goto yy667;
                                goto yy187;
                        }
                }
 yy128:
                YYDEBUG(128, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy643;
-               if (yych == 'e') goto yy643;
+               if (yych == 'E') goto yy647;
+               if (yych == 'e') goto yy647;
                goto yy187;
 yy129:
                YYDEBUG(129, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'I') goto yy638;
-               if (yych == 'i') goto yy638;
+               if (yych == 'I') goto yy642;
+               if (yych == 'i') goto yy642;
                goto yy187;
 yy130:
                YYDEBUG(130, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych <= 'R') {
-                       if (yych == 'H') goto yy626;
+                       if (yych == 'H') goto yy630;
                        if (yych <= 'Q') goto yy187;
-                       goto yy627;
+                       goto yy631;
                } else {
                        if (yych <= 'h') {
                                if (yych <= 'g') goto yy187;
-                               goto yy626;
+                               goto yy630;
                        } else {
-                               if (yych == 'r') goto yy627;
+                               if (yych == 'r') goto yy631;
                                goto yy187;
                        }
                }
@@ -2493,53 +2493,53 @@ yy131:
                yych = *++YYCURSOR;
                if (yych <= 'S') {
                        if (yych <= 'L') {
-                               if (yych == 'F') goto yy573;
+                               if (yych == 'F') goto yy577;
                                goto yy187;
                        } else {
-                               if (yych <= 'M') goto yy575;
-                               if (yych <= 'N') goto yy576;
+                               if (yych <= 'M') goto yy579;
+                               if (yych <= 'N') goto yy580;
                                if (yych <= 'R') goto yy187;
-                               goto yy577;
+                               goto yy581;
                        }
                } else {
                        if (yych <= 'm') {
-                               if (yych == 'f') goto yy573;
+                               if (yych == 'f') goto yy577;
                                if (yych <= 'l') goto yy187;
-                               goto yy575;
+                               goto yy579;
                        } else {
-                               if (yych <= 'n') goto yy576;
-                               if (yych == 's') goto yy577;
+                               if (yych <= 'n') goto yy580;
+                               if (yych == 's') goto yy581;
                                goto yy187;
                        }
                }
 yy132:
                YYDEBUG(132, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'H') goto yy568;
-               if (yych == 'h') goto yy568;
+               if (yych == 'H') goto yy572;
+               if (yych == 'h') goto yy572;
                goto yy187;
 yy133:
                YYDEBUG(133, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych <= 'S') {
                        if (yych <= 'M') {
-                               if (yych == 'B') goto yy550;
+                               if (yych == 'B') goto yy554;
                                goto yy187;
                        } else {
-                               if (yych <= 'N') goto yy551;
+                               if (yych <= 'N') goto yy555;
                                if (yych <= 'Q') goto yy187;
-                               if (yych <= 'R') goto yy552;
-                               goto yy553;
+                               if (yych <= 'R') goto yy556;
+                               goto yy557;
                        }
                } else {
                        if (yych <= 'n') {
-                               if (yych == 'b') goto yy550;
+                               if (yych == 'b') goto yy554;
                                if (yych <= 'm') goto yy187;
-                               goto yy551;
+                               goto yy555;
                        } else {
                                if (yych <= 'q') goto yy187;
-                               if (yych <= 'r') goto yy552;
-                               if (yych <= 's') goto yy553;
+                               if (yych <= 'r') goto yy556;
+                               if (yych <= 's') goto yy557;
                                goto yy187;
                        }
                }
@@ -2547,15 +2547,15 @@ yy134:
                YYDEBUG(134, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych <= 'W') {
-                       if (yych == 'T') goto yy538;
+                       if (yych == 'T') goto yy542;
                        if (yych <= 'V') goto yy187;
-                       goto yy539;
+                       goto yy543;
                } else {
                        if (yych <= 't') {
                                if (yych <= 's') goto yy187;
-                               goto yy538;
+                               goto yy542;
                        } else {
-                               if (yych == 'w') goto yy539;
+                               if (yych == 'w') goto yy543;
                                goto yy187;
                        }
                }
@@ -2566,18 +2566,18 @@ yy135:
                if (yych <= ';') {
                        if (yych <= '"') {
                                if (yych <= '!') goto yy187;
-                               goto yy530;
+                               goto yy534;
                        } else {
-                               if (yych == '\'') goto yy531;
+                               if (yych == '\'') goto yy535;
                                goto yy187;
                        }
                } else {
                        if (yych <= 'R') {
-                               if (yych <= '<') goto yy529;
+                               if (yych <= '<') goto yy533;
                                if (yych <= 'Q') goto yy187;
-                               goto yy532;
+                               goto yy536;
                        } else {
-                               if (yych == 'r') goto yy532;
+                               if (yych == 'r') goto yy536;
                                goto yy187;
                        }
                }
@@ -2585,15 +2585,15 @@ yy136:
                YYDEBUG(136, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych <= 'O') {
-                       if (yych == 'L') goto yy519;
+                       if (yych == 'L') goto yy523;
                        if (yych <= 'N') goto yy187;
-                       goto yy520;
+                       goto yy524;
                } else {
                        if (yych <= 'l') {
                                if (yych <= 'k') goto yy187;
-                               goto yy519;
+                               goto yy523;
                        } else {
-                               if (yych == 'o') goto yy520;
+                               if (yych == 'o') goto yy524;
                                goto yy187;
                        }
                }
@@ -2601,15 +2601,15 @@ yy137:
                YYDEBUG(137, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych <= 'U') {
-                       if (yych == 'R') goto yy495;
+                       if (yych == 'R') goto yy499;
                        if (yych <= 'T') goto yy187;
-                       goto yy496;
+                       goto yy500;
                } else {
                        if (yych <= 'r') {
                                if (yych <= 'q') goto yy187;
-                               goto yy495;
+                               goto yy499;
                        } else {
-                               if (yych == 'u') goto yy496;
+                               if (yych == 'u') goto yy500;
                                goto yy187;
                        }
                }
@@ -2617,15 +2617,15 @@ yy138:
                YYDEBUG(138, *YYCURSOR);
                ++YYCURSOR;
                if ((yych = *YYCURSOR) <= '<') {
-                       if (yych == '-') goto yy491;
+                       if (yych == '-') goto yy495;
                } else {
-                       if (yych <= '=') goto yy489;
-                       if (yych <= '>') goto yy493;
+                       if (yych <= '=') goto yy493;
+                       if (yych <= '>') goto yy497;
                }
 yy139:
                YYDEBUG(139, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1446 "Zend/zend_language_scanner.l"
+#line 1454 "Zend/zend_language_scanner.l"
                {
        return yytext[0];
 }
@@ -2634,7 +2634,7 @@ yy140:
                YYDEBUG(140, *YYCURSOR);
                ++YYCURSOR;
                yych = *YYCURSOR;
-               goto yy488;
+               goto yy492;
 yy141:
                YYDEBUG(141, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
@@ -2648,7 +2648,7 @@ yy141:
 yy142:
                YYDEBUG(142, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == ':') goto yy485;
+               if (yych == ':') goto yy489;
                goto yy139;
 yy143:
                YYDEBUG(143, *YYCURSOR);
@@ -2665,34 +2665,34 @@ yy145:
                yyaccept = 1;
                yych = *(YYMARKER = ++YYCURSOR);
                if (yych <= '/') {
-                       if (yych == '.') goto yy482;
+                       if (yych == '.') goto yy486;
                        goto yy139;
                } else {
-                       if (yych <= '9') goto yy478;
-                       if (yych == '=') goto yy480;
+                       if (yych <= '9') goto yy482;
+                       if (yych == '=') goto yy484;
                        goto yy139;
                }
 yy146:
                YYDEBUG(146, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych <= 'E') {
-                       if (yych == 'A') goto yy466;
+                       if (yych == 'A') goto yy470;
                        if (yych <= 'D') goto yy187;
-                       goto yy467;
+                       goto yy471;
                } else {
                        if (yych <= 'a') {
                                if (yych <= '`') goto yy187;
-                               goto yy466;
+                               goto yy470;
                        } else {
-                               if (yych == 'e') goto yy467;
+                               if (yych == 'e') goto yy471;
                                goto yy187;
                        }
                }
 yy147:
                YYDEBUG(147, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'A') goto yy463;
-               if (yych == 'a') goto yy463;
+               if (yych == 'A') goto yy467;
+               if (yych == 'a') goto yy467;
                goto yy187;
 yy148:
                YYDEBUG(148, *YYCURSOR);
@@ -2701,47 +2701,47 @@ yy148:
                if (yych <= 'S') {
                        if (yych <= 'D') {
                                if (yych <= ' ') {
-                                       if (yych == '\t') goto yy388;
+                                       if (yych == '\t') goto yy392;
                                        if (yych <= 0x1F) goto yy139;
-                                       goto yy388;
+                                       goto yy392;
                                } else {
                                        if (yych <= '@') goto yy139;
                                        if (yych == 'C') goto yy139;
-                                       goto yy388;
+                                       goto yy392;
                                }
                        } else {
                                if (yych <= 'I') {
-                                       if (yych == 'F') goto yy388;
+                                       if (yych == 'F') goto yy392;
                                        if (yych <= 'H') goto yy139;
-                                       goto yy388;
+                                       goto yy392;
                                } else {
-                                       if (yych == 'O') goto yy388;
+                                       if (yych == 'O') goto yy392;
                                        if (yych <= 'Q') goto yy139;
-                                       goto yy388;
+                                       goto yy392;
                                }
                        }
                } else {
                        if (yych <= 'f') {
                                if (yych <= 'b') {
-                                       if (yych == 'U') goto yy388;
+                                       if (yych == 'U') goto yy392;
                                        if (yych <= '`') goto yy139;
-                                       goto yy388;
+                                       goto yy392;
                                } else {
-                                       if (yych == 'd') goto yy388;
+                                       if (yych == 'd') goto yy392;
                                        if (yych <= 'e') goto yy139;
-                                       goto yy388;
+                                       goto yy392;
                                }
                        } else {
                                if (yych <= 'o') {
-                                       if (yych == 'i') goto yy388;
+                                       if (yych == 'i') goto yy392;
                                        if (yych <= 'n') goto yy139;
-                                       goto yy388;
+                                       goto yy392;
                                } else {
                                        if (yych <= 's') {
                                                if (yych <= 'q') goto yy139;
-                                               goto yy388;
+                                               goto yy392;
                                        } else {
-                                               if (yych == 'u') goto yy388;
+                                               if (yych == 'u') goto yy392;
                                                goto yy139;
                                        }
                                }
@@ -2751,71 +2751,72 @@ yy149:
                YYDEBUG(149, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych <= 'S') {
-                       if (yych == 'N') goto yy379;
+                       if (yych == 'N') goto yy383;
                        if (yych <= 'R') goto yy187;
-                       goto yy380;
+                       goto yy384;
                } else {
                        if (yych <= 'n') {
                                if (yych <= 'm') goto yy187;
-                               goto yy379;
+                               goto yy383;
                        } else {
-                               if (yych == 's') goto yy380;
+                               if (yych == 's') goto yy384;
                                goto yy187;
                        }
                }
 yy150:
                YYDEBUG(150, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == '_') goto yy297;
+               if (yych == '_') goto yy301;
                goto yy187;
 yy151:
                YYDEBUG(151, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych <= '<') goto yy139;
-               if (yych <= '=') goto yy291;
-               if (yych <= '>') goto yy293;
+               if (yych <= '=') goto yy295;
+               if (yych <= '>') goto yy297;
                goto yy139;
 yy152:
                YYDEBUG(152, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'I') goto yy287;
-               if (yych == 'i') goto yy287;
+               if (yych == 'I') goto yy291;
+               if (yych == 'i') goto yy291;
                goto yy187;
 yy153:
                YYDEBUG(153, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == '+') goto yy285;
-               if (yych == '=') goto yy283;
+               if (yych == '+') goto yy289;
+               if (yych == '=') goto yy287;
                goto yy139;
 yy154:
                YYDEBUG(154, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == '=') goto yy280;
+               if (yych == '=') goto yy284;
                goto yy139;
 yy155:
                YYDEBUG(155, *YYCURSOR);
                yyaccept = 1;
                yych = *(YYMARKER = ++YYCURSOR);
                if (yych <= ';') {
-                       if (yych == '/') goto yy252;
+                       if (yych == '/') goto yy256;
                        goto yy139;
                } else {
-                       if (yych <= '<') goto yy250;
-                       if (yych <= '=') goto yy253;
-                       if (yych <= '>') goto yy255;
+                       if (yych <= '<') goto yy254;
+                       if (yych <= '=') goto yy257;
+                       if (yych <= '>') goto yy259;
                        goto yy139;
                }
 yy156:
                YYDEBUG(156, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych <= '<') goto yy139;
-               if (yych <= '=') goto yy246;
-               if (yych <= '>') goto yy244;
+               if (yych <= '=') goto yy250;
+               if (yych <= '>') goto yy248;
                goto yy139;
 yy157:
                YYDEBUG(157, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == '=') goto yy242;
+               if (yych == '*') goto yy242;
+               if (yych == '=') goto yy244;
                goto yy139;
 yy158:
                YYDEBUG(158, *YYCURSOR);
@@ -2892,18 +2893,18 @@ yy168:
                ++YYCURSOR;
                YYDEBUG(169, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1451 "Zend/zend_language_scanner.l"
+#line 1459 "Zend/zend_language_scanner.l"
                {
        yy_push_state(ST_IN_SCRIPTING TSRMLS_CC);
        return '{';
 }
-#line 2901 "Zend/zend_language_scanner.c"
+#line 2902 "Zend/zend_language_scanner.c"
 yy170:
                YYDEBUG(170, *YYCURSOR);
                ++YYCURSOR;
                YYDEBUG(171, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1463 "Zend/zend_language_scanner.l"
+#line 1471 "Zend/zend_language_scanner.l"
                {
        RESET_DOC_COMMENT();
        if (!zend_stack_is_empty(&SCNG(state_stack))) {
@@ -2911,7 +2912,7 @@ yy170:
        }
        return '}';
 }
-#line 2915 "Zend/zend_language_scanner.c"
+#line 2916 "Zend/zend_language_scanner.c"
 yy172:
                YYDEBUG(172, *YYCURSOR);
                yyaccept = 2;
@@ -2939,7 +2940,7 @@ yy172:
 yy173:
                YYDEBUG(173, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1513 "Zend/zend_language_scanner.l"
+#line 1521 "Zend/zend_language_scanner.l"
                {
        if (yyleng < MAX_LENGTH_OF_LONG - 1) { /* Won't overflow */
                Z_LVAL_P(zendlval) = strtol(yytext, NULL, 0);
@@ -2960,7 +2961,7 @@ yy173:
        zendlval->type = IS_LONG;
        return T_LNUMBER;
 }
-#line 2964 "Zend/zend_language_scanner.c"
+#line 2965 "Zend/zend_language_scanner.c"
 yy174:
                YYDEBUG(174, *YYCURSOR);
                yyaccept = 2;
@@ -2988,7 +2989,7 @@ yy176:
 yy177:
                YYDEBUG(177, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1853 "Zend/zend_language_scanner.l"
+#line 1861 "Zend/zend_language_scanner.l"
                {
        while (YYCURSOR < YYLIMIT) {
                switch (*YYCURSOR++) {
@@ -3022,14 +3023,14 @@ yy177:
 
        return T_COMMENT;
 }
-#line 3026 "Zend/zend_language_scanner.c"
+#line 3027 "Zend/zend_language_scanner.c"
 yy178:
                YYDEBUG(178, *YYCURSOR);
                ++YYCURSOR;
 yy179:
                YYDEBUG(179, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1940 "Zend/zend_language_scanner.l"
+#line 1948 "Zend/zend_language_scanner.l"
                {
        register char *s, *t;
        char *end;
@@ -3095,14 +3096,14 @@ yy179:
        }
        return T_CONSTANT_ENCAPSED_STRING;
 }
-#line 3099 "Zend/zend_language_scanner.c"
+#line 3100 "Zend/zend_language_scanner.c"
 yy180:
                YYDEBUG(180, *YYCURSOR);
                ++YYCURSOR;
 yy181:
                YYDEBUG(181, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 2007 "Zend/zend_language_scanner.l"
+#line 2015 "Zend/zend_language_scanner.l"
                {
        int bprefix = (yytext[0] != '"') ? 1 : 0;
 
@@ -3143,24 +3144,24 @@ yy181:
        BEGIN(ST_DOUBLE_QUOTES);
        return '"';
 }
-#line 3147 "Zend/zend_language_scanner.c"
+#line 3148 "Zend/zend_language_scanner.c"
 yy182:
                YYDEBUG(182, *YYCURSOR);
                ++YYCURSOR;
                YYDEBUG(183, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 2097 "Zend/zend_language_scanner.l"
+#line 2105 "Zend/zend_language_scanner.l"
                {
        BEGIN(ST_BACKQUOTE);
        return '`';
 }
-#line 3158 "Zend/zend_language_scanner.c"
+#line 3159 "Zend/zend_language_scanner.c"
 yy184:
                YYDEBUG(184, *YYCURSOR);
                ++YYCURSOR;
                YYDEBUG(185, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 2360 "Zend/zend_language_scanner.l"
+#line 2368 "Zend/zend_language_scanner.l"
                {
        if (YYCURSOR > YYLIMIT) {
                return 0;
@@ -3169,7 +3170,7 @@ yy184:
        zend_error(E_COMPILE_WARNING,"Unexpected character in input:  '%c' (ASCII=%d) state=%d", yytext[0], yytext[0], YYSTATE);
        goto restart;
 }
-#line 3173 "Zend/zend_language_scanner.c"
+#line 3174 "Zend/zend_language_scanner.c"
 yy186:
                YYDEBUG(186, *YYCURSOR);
                ++YYCURSOR;
@@ -3196,12 +3197,12 @@ yy188:
 yy190:
                YYDEBUG(190, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1572 "Zend/zend_language_scanner.l"
+#line 1580 "Zend/zend_language_scanner.l"
                {
        ZVAL_DOUBLE(zendlval, zend_strtod(yytext, NULL));
        return T_DNUMBER;
 }
-#line 3205 "Zend/zend_language_scanner.c"
+#line 3206 "Zend/zend_language_scanner.c"
 yy191:
                YYDEBUG(191, *YYCURSOR);
                yyaccept = 2;
@@ -3251,7 +3252,7 @@ yy194:
                                        goto yy235;
                                }
                        } else {
-                               goto yy251;
+                               goto yy255;
                        }
                }
 yy195:
@@ -3293,7 +3294,7 @@ yy200:
                }
                YYDEBUG(202, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1489 "Zend/zend_language_scanner.l"
+#line 1497 "Zend/zend_language_scanner.l"
                {
        char *bin = yytext + 2; /* Skip "0b" */
        int len = yyleng - 2;
@@ -3317,7 +3318,7 @@ yy200:
                return T_DNUMBER;
        }
 }
-#line 3321 "Zend/zend_language_scanner.c"
+#line 3322 "Zend/zend_language_scanner.c"
 yy203:
                YYDEBUG(203, *YYCURSOR);
                ++YYCURSOR;
@@ -3329,7 +3330,7 @@ yy203:
                }
                YYDEBUG(205, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1534 "Zend/zend_language_scanner.l"
+#line 1542 "Zend/zend_language_scanner.l"
                {
        char *hex = yytext + 2; /* Skip "0x" */
        int len = yyleng - 2;
@@ -3353,7 +3354,7 @@ yy203:
                return T_DNUMBER;
        }
 }
-#line 3357 "Zend/zend_language_scanner.c"
+#line 3358 "Zend/zend_language_scanner.c"
 yy206:
                YYDEBUG(206, *YYCURSOR);
                ++YYCURSOR;
@@ -3362,13 +3363,13 @@ yy206:
 yy207:
                YYDEBUG(207, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1921 "Zend/zend_language_scanner.l"
+#line 1929 "Zend/zend_language_scanner.l"
                {
        ZVAL_STRINGL(zendlval, yytext, yyleng, 0); /* no copying - intentional */
        BEGIN(INITIAL);
        return T_CLOSE_TAG;  /* implicit ';' at php-end tag */
 }
-#line 3372 "Zend/zend_language_scanner.c"
+#line 3373 "Zend/zend_language_scanner.c"
 yy208:
                YYDEBUG(208, *YYCURSOR);
                yych = *++YYCURSOR;
@@ -3402,13 +3403,13 @@ yy210:
 yy212:
                YYDEBUG(212, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1823 "Zend/zend_language_scanner.l"
+#line 1831 "Zend/zend_language_scanner.l"
                {
        zend_copy_value(zendlval, (yytext+1), (yyleng-1));
        zendlval->type = IS_STRING;
        return T_VARIABLE;
 }
-#line 3412 "Zend/zend_language_scanner.c"
+#line 3413 "Zend/zend_language_scanner.c"
 yy213:
                YYDEBUG(213, *YYCURSOR);
                yych = *++YYCURSOR;
@@ -3422,11 +3423,11 @@ yy214:
                }
                YYDEBUG(215, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1434 "Zend/zend_language_scanner.l"
+#line 1442 "Zend/zend_language_scanner.l"
                {
        return T_LOGICAL_XOR;
 }
-#line 3430 "Zend/zend_language_scanner.c"
+#line 3431 "Zend/zend_language_scanner.c"
 yy216:
                YYDEBUG(216, *YYCURSOR);
                ++YYCURSOR;
@@ -3435,61 +3436,61 @@ yy216:
                }
                YYDEBUG(217, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1426 "Zend/zend_language_scanner.l"
+#line 1434 "Zend/zend_language_scanner.l"
                {
        return T_LOGICAL_OR;
 }
-#line 3443 "Zend/zend_language_scanner.c"
+#line 3444 "Zend/zend_language_scanner.c"
 yy218:
                YYDEBUG(218, *YYCURSOR);
                ++YYCURSOR;
                YYDEBUG(219, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1414 "Zend/zend_language_scanner.l"
+#line 1422 "Zend/zend_language_scanner.l"
                {
        return T_XOR_EQUAL;
 }
-#line 3453 "Zend/zend_language_scanner.c"
+#line 3454 "Zend/zend_language_scanner.c"
 yy220:
                YYDEBUG(220, *YYCURSOR);
                ++YYCURSOR;
                YYDEBUG(221, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1418 "Zend/zend_language_scanner.l"
+#line 1426 "Zend/zend_language_scanner.l"
                {
        return T_BOOLEAN_OR;
 }
-#line 3463 "Zend/zend_language_scanner.c"
+#line 3464 "Zend/zend_language_scanner.c"
 yy222:
                YYDEBUG(222, *YYCURSOR);
                ++YYCURSOR;
                YYDEBUG(223, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1410 "Zend/zend_language_scanner.l"
+#line 1418 "Zend/zend_language_scanner.l"
                {
        return T_OR_EQUAL;
 }
-#line 3473 "Zend/zend_language_scanner.c"
+#line 3474 "Zend/zend_language_scanner.c"
 yy224:
                YYDEBUG(224, *YYCURSOR);
                ++YYCURSOR;
                YYDEBUG(225, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1422 "Zend/zend_language_scanner.l"
+#line 1430 "Zend/zend_language_scanner.l"
                {
        return T_BOOLEAN_AND;
 }
-#line 3483 "Zend/zend_language_scanner.c"
+#line 3484 "Zend/zend_language_scanner.c"
 yy226:
                YYDEBUG(226, *YYCURSOR);
                ++YYCURSOR;
                YYDEBUG(227, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1406 "Zend/zend_language_scanner.l"
+#line 1414 "Zend/zend_language_scanner.l"
                {
        return T_AND_EQUAL;
 }
-#line 3493 "Zend/zend_language_scanner.c"
+#line 3494 "Zend/zend_language_scanner.c"
 yy228:
                YYDEBUG(228, *YYCURSOR);
                ++YYCURSOR;
@@ -3498,7 +3499,7 @@ yy228:
 yy229:
                YYDEBUG(229, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1928 "Zend/zend_language_scanner.l"
+#line 1936 "Zend/zend_language_scanner.l"
                {
        if (CG(asp_tags)) {
                BEGIN(INITIAL);
@@ -3509,17 +3510,17 @@ yy229:
                return yytext[0];
        }
 }
-#line 3513 "Zend/zend_language_scanner.c"
+#line 3514 "Zend/zend_language_scanner.c"
 yy230:
                YYDEBUG(230, *YYCURSOR);
                ++YYCURSOR;
                YYDEBUG(231, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1394 "Zend/zend_language_scanner.l"
+#line 1402 "Zend/zend_language_scanner.l"
                {
        return T_MOD_EQUAL;
 }
-#line 3523 "Zend/zend_language_scanner.c"
+#line 3524 "Zend/zend_language_scanner.c"
 yy232:
                YYDEBUG(232, *YYCURSOR);
                yych = *++YYCURSOR;
@@ -3537,7 +3538,7 @@ yy234:
 yy235:
                YYDEBUG(235, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1887 "Zend/zend_language_scanner.l"
+#line 1895 "Zend/zend_language_scanner.l"
                {
        int doc_com;
 
@@ -3571,7 +3572,7 @@ yy235:
 
        return T_COMMENT;
 }
-#line 3575 "Zend/zend_language_scanner.c"
+#line 3576 "Zend/zend_language_scanner.c"
 yy236:
                YYDEBUG(236, *YYCURSOR);
                yych = *++YYCURSOR;
@@ -3581,11 +3582,11 @@ yy237:
                ++YYCURSOR;
                YYDEBUG(238, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1386 "Zend/zend_language_scanner.l"
+#line 1394 "Zend/zend_language_scanner.l"
                {
        return T_DIV_EQUAL;
 }
-#line 3589 "Zend/zend_language_scanner.c"
+#line 3590 "Zend/zend_language_scanner.c"
 yy239:
                YYDEBUG(239, *YYCURSOR);
                yych = *++YYCURSOR;
@@ -3606,246 +3607,267 @@ yy240:
 yy242:
                YYDEBUG(242, *YYCURSOR);
                ++YYCURSOR;
+               if ((yych = *YYCURSOR) == '=') goto yy246;
                YYDEBUG(243, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1382 "Zend/zend_language_scanner.l"
+#line 1386 "Zend/zend_language_scanner.l"
                {
-       return T_MUL_EQUAL;
+       return T_POW;
 }
-#line 3616 "Zend/zend_language_scanner.c"
+#line 3618 "Zend/zend_language_scanner.c"
 yy244:
                YYDEBUG(244, *YYCURSOR);
                ++YYCURSOR;
-               if ((yych = *YYCURSOR) == '=') goto yy248;
                YYDEBUG(245, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1442 "Zend/zend_language_scanner.l"
+#line 1382 "Zend/zend_language_scanner.l"
                {
-       return T_SR;
+       return T_MUL_EQUAL;
 }
-#line 3627 "Zend/zend_language_scanner.c"
+#line 3628 "Zend/zend_language_scanner.c"
 yy246:
                YYDEBUG(246, *YYCURSOR);
                ++YYCURSOR;
                YYDEBUG(247, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1370 "Zend/zend_language_scanner.l"
+#line 1390 "Zend/zend_language_scanner.l"
                {
-       return T_IS_GREATER_OR_EQUAL;
+       return T_POW_EQUAL;
 }
-#line 3637 "Zend/zend_language_scanner.c"
+#line 3638 "Zend/zend_language_scanner.c"
 yy248:
                YYDEBUG(248, *YYCURSOR);
                ++YYCURSOR;
+               if ((yych = *YYCURSOR) == '=') goto yy252;
                YYDEBUG(249, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1402 "Zend/zend_language_scanner.l"
+#line 1450 "Zend/zend_language_scanner.l"
                {
-       return T_SR_EQUAL;
+       return T_SR;
 }
-#line 3647 "Zend/zend_language_scanner.c"
+#line 3649 "Zend/zend_language_scanner.c"
 yy250:
                YYDEBUG(250, *YYCURSOR);
-               yyaccept = 5;
-               yych = *(YYMARKER = ++YYCURSOR);
-               if (yych <= ';') goto yy251;
-               if (yych <= '<') goto yy266;
-               if (yych <= '=') goto yy264;
-yy251:
+               ++YYCURSOR;
                YYDEBUG(251, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1438 "Zend/zend_language_scanner.l"
+#line 1370 "Zend/zend_language_scanner.l"
                {
-       return T_SL;
+       return T_IS_GREATER_OR_EQUAL;
 }
-#line 3662 "Zend/zend_language_scanner.c"
+#line 3659 "Zend/zend_language_scanner.c"
 yy252:
                YYDEBUG(252, *YYCURSOR);
+               ++YYCURSOR;
+               YYDEBUG(253, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 1410 "Zend/zend_language_scanner.l"
+               {
+       return T_SR_EQUAL;
+}
+#line 3669 "Zend/zend_language_scanner.c"
+yy254:
+               YYDEBUG(254, *YYCURSOR);
+               yyaccept = 5;
+               yych = *(YYMARKER = ++YYCURSOR);
+               if (yych <= ';') goto yy255;
+               if (yych <= '<') goto yy270;
+               if (yych <= '=') goto yy268;
+yy255:
+               YYDEBUG(255, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 1446 "Zend/zend_language_scanner.l"
+               {
+       return T_SL;
+}
+#line 3684 "Zend/zend_language_scanner.c"
+yy256:
+               YYDEBUG(256, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'S') goto yy257;
-               if (yych == 's') goto yy257;
+               if (yych == 'S') goto yy261;
+               if (yych == 's') goto yy261;
                goto yy194;
-yy253:
-               YYDEBUG(253, *YYCURSOR);
+yy257:
+               YYDEBUG(257, *YYCURSOR);
                ++YYCURSOR;
-               YYDEBUG(254, *YYCURSOR);
+               YYDEBUG(258, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1366 "Zend/zend_language_scanner.l"
                {
        return T_IS_SMALLER_OR_EQUAL;
 }
-#line 3678 "Zend/zend_language_scanner.c"
-yy255:
-               YYDEBUG(255, *YYCURSOR);
+#line 3700 "Zend/zend_language_scanner.c"
+yy259:
+               YYDEBUG(259, *YYCURSOR);
                ++YYCURSOR;
-yy256:
-               YYDEBUG(256, *YYCURSOR);
+yy260:
+               YYDEBUG(260, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1362 "Zend/zend_language_scanner.l"
                {
        return T_IS_NOT_EQUAL;
 }
-#line 3689 "Zend/zend_language_scanner.c"
-yy257:
-               YYDEBUG(257, *YYCURSOR);
+#line 3711 "Zend/zend_language_scanner.c"
+yy261:
+               YYDEBUG(261, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'C') goto yy258;
+               if (yych == 'C') goto yy262;
                if (yych != 'c') goto yy194;
-yy258:
-               YYDEBUG(258, *YYCURSOR);
+yy262:
+               YYDEBUG(262, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'R') goto yy259;
+               if (yych == 'R') goto yy263;
                if (yych != 'r') goto yy194;
-yy259:
-               YYDEBUG(259, *YYCURSOR);
+yy263:
+               YYDEBUG(263, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'I') goto yy260;
+               if (yych == 'I') goto yy264;
                if (yych != 'i') goto yy194;
-yy260:
-               YYDEBUG(260, *YYCURSOR);
+yy264:
+               YYDEBUG(264, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'P') goto yy261;
+               if (yych == 'P') goto yy265;
                if (yych != 'p') goto yy194;
-yy261:
-               YYDEBUG(261, *YYCURSOR);
+yy265:
+               YYDEBUG(265, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'T') goto yy262;
+               if (yych == 'T') goto yy266;
                if (yych != 't') goto yy194;
-yy262:
-               YYDEBUG(262, *YYCURSOR);
+yy266:
+               YYDEBUG(266, *YYCURSOR);
                ++YYCURSOR;
                YYFILL(3);
                yych = *YYCURSOR;
-               YYDEBUG(263, *YYCURSOR);
+               YYDEBUG(267, *YYCURSOR);
                if (yych <= '\r') {
                        if (yych <= 0x08) goto yy194;
-                       if (yych <= '\n') goto yy262;
+                       if (yych <= '\n') goto yy266;
                        if (yych <= '\f') goto yy194;
-                       goto yy262;
+                       goto yy266;
                } else {
                        if (yych <= ' ') {
                                if (yych <= 0x1F) goto yy194;
-                               goto yy262;
+                               goto yy266;
                        } else {
                                if (yych == '>') goto yy206;
                                goto yy194;
                        }
                }
-yy264:
-               YYDEBUG(264, *YYCURSOR);
+yy268:
+               YYDEBUG(268, *YYCURSOR);
                ++YYCURSOR;
-               YYDEBUG(265, *YYCURSOR);
+               YYDEBUG(269, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1398 "Zend/zend_language_scanner.l"
+#line 1406 "Zend/zend_language_scanner.l"
                {
        return T_SL_EQUAL;
 }
-#line 3744 "Zend/zend_language_scanner.c"
-yy266:
-               YYDEBUG(266, *YYCURSOR);
+#line 3766 "Zend/zend_language_scanner.c"
+yy270:
+               YYDEBUG(270, *YYCURSOR);
                ++YYCURSOR;
                YYFILL(2);
                yych = *YYCURSOR;
-               YYDEBUG(267, *YYCURSOR);
+               YYDEBUG(271, *YYCURSOR);
                if (yybm[0+yych] & 128) {
-                       goto yy266;
+                       goto yy270;
                }
                if (yych <= 'Z') {
                        if (yych <= '&') {
-                               if (yych == '"') goto yy271;
+                               if (yych == '"') goto yy275;
                                goto yy194;
                        } else {
-                               if (yych <= '\'') goto yy270;
+                               if (yych <= '\'') goto yy274;
                                if (yych <= '@') goto yy194;
                        }
                } else {
                        if (yych <= '`') {
                                if (yych != '_') goto yy194;
                        } else {
-                               if (yych <= 'z') goto yy268;
+                               if (yych <= 'z') goto yy272;
                                if (yych <= '~') goto yy194;
                        }
                }
-yy268:
-               YYDEBUG(268, *YYCURSOR);
+yy272:
+               YYDEBUG(272, *YYCURSOR);
                ++YYCURSOR;
                YYFILL(2);
                yych = *YYCURSOR;
-               YYDEBUG(269, *YYCURSOR);
+               YYDEBUG(273, *YYCURSOR);
                if (yych <= '@') {
                        if (yych <= '\f') {
-                               if (yych == '\n') goto yy275;
+                               if (yych == '\n') goto yy279;
                                goto yy194;
                        } else {
-                               if (yych <= '\r') goto yy277;
+                               if (yych <= '\r') goto yy281;
                                if (yych <= '/') goto yy194;
-                               if (yych <= '9') goto yy268;
+                               if (yych <= '9') goto yy272;
                                goto yy194;
                        }
                } else {
                        if (yych <= '_') {
-                               if (yych <= 'Z') goto yy268;
+                               if (yych <= 'Z') goto yy272;
                                if (yych <= '^') goto yy194;
-                               goto yy268;
+                               goto yy272;
                        } else {
                                if (yych <= '`') goto yy194;
-                               if (yych <= 'z') goto yy268;
+                               if (yych <= 'z') goto yy272;
                                if (yych <= '~') goto yy194;
-                               goto yy268;
+                               goto yy272;
                        }
                }
-yy270:
-               YYDEBUG(270, *YYCURSOR);
+yy274:
+               YYDEBUG(274, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych == '\'') goto yy194;
-               if (yych <= '/') goto yy279;
+               if (yych <= '/') goto yy283;
                if (yych <= '9') goto yy194;
-               goto yy279;
-yy271:
-               YYDEBUG(271, *YYCURSOR);
+               goto yy283;
+yy275:
+               YYDEBUG(275, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych == '"') goto yy194;
-               if (yych <= '/') goto yy273;
+               if (yych <= '/') goto yy277;
                if (yych <= '9') goto yy194;
-               goto yy273;
-yy272:
-               YYDEBUG(272, *YYCURSOR);
+               goto yy277;
+yy276:
+               YYDEBUG(276, *YYCURSOR);
                ++YYCURSOR;
                YYFILL(3);
                yych = *YYCURSOR;
-yy273:
-               YYDEBUG(273, *YYCURSOR);
+yy277:
+               YYDEBUG(277, *YYCURSOR);
                if (yych <= 'Z') {
                        if (yych <= '/') {
                                if (yych != '"') goto yy194;
                        } else {
-                               if (yych <= '9') goto yy272;
+                               if (yych <= '9') goto yy276;
                                if (yych <= '@') goto yy194;
-                               goto yy272;
+                               goto yy276;
                        }
                } else {
                        if (yych <= '`') {
-                               if (yych == '_') goto yy272;
+                               if (yych == '_') goto yy276;
                                goto yy194;
                        } else {
-                               if (yych <= 'z') goto yy272;
+                               if (yych <= 'z') goto yy276;
                                if (yych <= '~') goto yy194;
-                               goto yy272;
+                               goto yy276;
                        }
                }
-yy274:
-               YYDEBUG(274, *YYCURSOR);
+yy278:
+               YYDEBUG(278, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == '\n') goto yy275;
-               if (yych == '\r') goto yy277;
+               if (yych == '\n') goto yy279;
+               if (yych == '\r') goto yy281;
                goto yy194;
-yy275:
-               YYDEBUG(275, *YYCURSOR);
+yy279:
+               YYDEBUG(279, *YYCURSOR);
                ++YYCURSOR;
-yy276:
-               YYDEBUG(276, *YYCURSOR);
+yy280:
+               YYDEBUG(280, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 2049 "Zend/zend_language_scanner.l"
+#line 2057 "Zend/zend_language_scanner.l"
                {
        char *s;
        int bprefix = (yytext[0] != '<') ? 1 : 0;
@@ -3892,255 +3914,255 @@ yy276:
 
        return T_START_HEREDOC;
 }
-#line 3896 "Zend/zend_language_scanner.c"
-yy277:
-               YYDEBUG(277, *YYCURSOR);
+#line 3918 "Zend/zend_language_scanner.c"
+yy281:
+               YYDEBUG(281, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == '\n') goto yy275;
-               goto yy276;
-yy278:
-               YYDEBUG(278, *YYCURSOR);
+               if (yych == '\n') goto yy279;
+               goto yy280;
+yy282:
+               YYDEBUG(282, *YYCURSOR);
                ++YYCURSOR;
                YYFILL(3);
                yych = *YYCURSOR;
-yy279:
-               YYDEBUG(279, *YYCURSOR);
+yy283:
+               YYDEBUG(283, *YYCURSOR);
                if (yych <= 'Z') {
                        if (yych <= '/') {
-                               if (yych == '\'') goto yy274;
+                               if (yych == '\'') goto yy278;
                                goto yy194;
                        } else {
-                               if (yych <= '9') goto yy278;
+                               if (yych <= '9') goto yy282;
                                if (yych <= '@') goto yy194;
-                               goto yy278;
+                               goto yy282;
                        }
                } else {
                        if (yych <= '`') {
-                               if (yych == '_') goto yy278;
+                               if (yych == '_') goto yy282;
                                goto yy194;
                        } else {
-                               if (yych <= 'z') goto yy278;
+                               if (yych <= 'z') goto yy282;
                                if (yych <= '~') goto yy194;
-                               goto yy278;
+                               goto yy282;
                        }
                }
-yy280:
-               YYDEBUG(280, *YYCURSOR);
+yy284:
+               YYDEBUG(284, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych != '=') goto yy256;
-               YYDEBUG(281, *YYCURSOR);
+               if (yych != '=') goto yy260;
+               YYDEBUG(285, *YYCURSOR);
                ++YYCURSOR;
-               YYDEBUG(282, *YYCURSOR);
+               YYDEBUG(286, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1354 "Zend/zend_language_scanner.l"
                {
        return T_IS_NOT_IDENTICAL;
 }
-#line 3940 "Zend/zend_language_scanner.c"
-yy283:
-               YYDEBUG(283, *YYCURSOR);
+#line 3962 "Zend/zend_language_scanner.c"
+yy287:
+               YYDEBUG(287, *YYCURSOR);
                ++YYCURSOR;
-               YYDEBUG(284, *YYCURSOR);
+               YYDEBUG(288, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1374 "Zend/zend_language_scanner.l"
                {
        return T_PLUS_EQUAL;
 }
-#line 3950 "Zend/zend_language_scanner.c"
-yy285:
-               YYDEBUG(285, *YYCURSOR);
+#line 3972 "Zend/zend_language_scanner.c"
+yy289:
+               YYDEBUG(289, *YYCURSOR);
                ++YYCURSOR;
-               YYDEBUG(286, *YYCURSOR);
+               YYDEBUG(290, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1342 "Zend/zend_language_scanner.l"
                {
        return T_INC;
 }
-#line 3960 "Zend/zend_language_scanner.c"
-yy287:
-               YYDEBUG(287, *YYCURSOR);
+#line 3982 "Zend/zend_language_scanner.c"
+yy291:
+               YYDEBUG(291, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'S') goto yy288;
+               if (yych == 'S') goto yy292;
                if (yych != 's') goto yy187;
-yy288:
-               YYDEBUG(288, *YYCURSOR);
+yy292:
+               YYDEBUG(292, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'T') goto yy289;
+               if (yych == 'T') goto yy293;
                if (yych != 't') goto yy187;
-yy289:
-               YYDEBUG(289, *YYCURSOR);
+yy293:
+               YYDEBUG(293, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(290, *YYCURSOR);
+               YYDEBUG(294, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1330 "Zend/zend_language_scanner.l"
                {
        return T_LIST;
 }
-#line 3983 "Zend/zend_language_scanner.c"
-yy291:
-               YYDEBUG(291, *YYCURSOR);
+#line 4005 "Zend/zend_language_scanner.c"
+yy295:
+               YYDEBUG(295, *YYCURSOR);
                ++YYCURSOR;
-               if ((yych = *YYCURSOR) == '=') goto yy295;
-               YYDEBUG(292, *YYCURSOR);
+               if ((yych = *YYCURSOR) == '=') goto yy299;
+               YYDEBUG(296, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1358 "Zend/zend_language_scanner.l"
                {
        return T_IS_EQUAL;
 }
-#line 3994 "Zend/zend_language_scanner.c"
-yy293:
-               YYDEBUG(293, *YYCURSOR);
+#line 4016 "Zend/zend_language_scanner.c"
+yy297:
+               YYDEBUG(297, *YYCURSOR);
                ++YYCURSOR;
-               YYDEBUG(294, *YYCURSOR);
+               YYDEBUG(298, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1326 "Zend/zend_language_scanner.l"
                {
        return T_DOUBLE_ARROW;
 }
-#line 4004 "Zend/zend_language_scanner.c"
-yy295:
-               YYDEBUG(295, *YYCURSOR);
+#line 4026 "Zend/zend_language_scanner.c"
+yy299:
+               YYDEBUG(299, *YYCURSOR);
                ++YYCURSOR;
-               YYDEBUG(296, *YYCURSOR);
+               YYDEBUG(300, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1350 "Zend/zend_language_scanner.l"
                {
        return T_IS_IDENTICAL;
 }
-#line 4014 "Zend/zend_language_scanner.c"
-yy297:
-               YYDEBUG(297, *YYCURSOR);
+#line 4036 "Zend/zend_language_scanner.c"
+yy301:
+               YYDEBUG(301, *YYCURSOR);
                yych = *++YYCURSOR;
                YYDEBUG(-1, yych);
                switch (yych) {
                case 'C':
-               case 'c':       goto yy299;
+               case 'c':       goto yy303;
                case 'D':
-               case 'd':       goto yy304;
+               case 'd':       goto yy308;
                case 'F':
-               case 'f':       goto yy301;
+               case 'f':       goto yy305;
                case 'H':
-               case 'h':       goto yy298;
+               case 'h':       goto yy302;
                case 'L':
-               case 'l':       goto yy303;
+               case 'l':       goto yy307;
                case 'M':
-               case 'm':       goto yy302;
+               case 'm':       goto yy306;
                case 'N':
-               case 'n':       goto yy305;
+               case 'n':       goto yy309;
                case 'T':
-               case 't':       goto yy300;
+               case 't':       goto yy304;
                default:        goto yy187;
                }
-yy298:
-               YYDEBUG(298, *YYCURSOR);
+yy302:
+               YYDEBUG(302, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'A') goto yy366;
-               if (yych == 'a') goto yy366;
+               if (yych == 'A') goto yy370;
+               if (yych == 'a') goto yy370;
                goto yy187;
-yy299:
-               YYDEBUG(299, *YYCURSOR);
+yy303:
+               YYDEBUG(303, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'L') goto yy359;
-               if (yych == 'l') goto yy359;
+               if (yych == 'L') goto yy363;
+               if (yych == 'l') goto yy363;
                goto yy187;
-yy300:
-               YYDEBUG(300, *YYCURSOR);
+yy304:
+               YYDEBUG(304, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'R') goto yy352;
-               if (yych == 'r') goto yy352;
+               if (yych == 'R') goto yy356;
+               if (yych == 'r') goto yy356;
                goto yy187;
-yy301:
-               YYDEBUG(301, *YYCURSOR);
+yy305:
+               YYDEBUG(305, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych <= 'U') {
-                       if (yych == 'I') goto yy336;
+                       if (yych == 'I') goto yy340;
                        if (yych <= 'T') goto yy187;
-                       goto yy337;
+                       goto yy341;
                } else {
                        if (yych <= 'i') {
                                if (yych <= 'h') goto yy187;
-                               goto yy336;
+                               goto yy340;
                        } else {
-                               if (yych == 'u') goto yy337;
+                               if (yych == 'u') goto yy341;
                                goto yy187;
                        }
                }
-yy302:
-               YYDEBUG(302, *YYCURSOR);
+yy306:
+               YYDEBUG(306, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy328;
-               if (yych == 'e') goto yy328;
+               if (yych == 'E') goto yy332;
+               if (yych == 'e') goto yy332;
                goto yy187;
-yy303:
-               YYDEBUG(303, *YYCURSOR);
-               yych = *++YYCURSOR;
-               if (yych == 'I') goto yy322;
-               if (yych == 'i') goto yy322;
-               goto yy187;
-yy304:
-               YYDEBUG(304, *YYCURSOR);
-               yych = *++YYCURSOR;
-               if (yych == 'I') goto yy317;
-               if (yych == 'i') goto yy317;
-               goto yy187;
-yy305:
-               YYDEBUG(305, *YYCURSOR);
-               yych = *++YYCURSOR;
-               if (yych == 'A') goto yy306;
-               if (yych != 'a') goto yy187;
-yy306:
-               YYDEBUG(306, *YYCURSOR);
-               yych = *++YYCURSOR;
-               if (yych == 'M') goto yy307;
-               if (yych != 'm') goto yy187;
 yy307:
                YYDEBUG(307, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy308;
-               if (yych != 'e') goto yy187;
+               if (yych == 'I') goto yy326;
+               if (yych == 'i') goto yy326;
+               goto yy187;
 yy308:
                YYDEBUG(308, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'S') goto yy309;
-               if (yych != 's') goto yy187;
+               if (yych == 'I') goto yy321;
+               if (yych == 'i') goto yy321;
+               goto yy187;
 yy309:
                YYDEBUG(309, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'P') goto yy310;
-               if (yych != 'p') goto yy187;
+               if (yych == 'A') goto yy310;
+               if (yych != 'a') goto yy187;
 yy310:
                YYDEBUG(310, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'A') goto yy311;
-               if (yych != 'a') goto yy187;
+               if (yych == 'M') goto yy311;
+               if (yych != 'm') goto yy187;
 yy311:
                YYDEBUG(311, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'C') goto yy312;
-               if (yych != 'c') goto yy187;
+               if (yych == 'E') goto yy312;
+               if (yych != 'e') goto yy187;
 yy312:
                YYDEBUG(312, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy313;
-               if (yych != 'e') goto yy187;
+               if (yych == 'S') goto yy313;
+               if (yych != 's') goto yy187;
 yy313:
                YYDEBUG(313, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych != '_') goto yy187;
+               if (yych == 'P') goto yy314;
+               if (yych != 'p') goto yy187;
+yy314:
                YYDEBUG(314, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych != '_') goto yy187;
+               if (yych == 'A') goto yy315;
+               if (yych != 'a') goto yy187;
+yy315:
                YYDEBUG(315, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych == 'C') goto yy316;
+               if (yych != 'c') goto yy187;
+yy316:
+               YYDEBUG(316, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych == 'E') goto yy317;
+               if (yych != 'e') goto yy187;
+yy317:
+               YYDEBUG(317, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych != '_') goto yy187;
+               YYDEBUG(318, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych != '_') goto yy187;
+               YYDEBUG(319, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(316, *YYCURSOR);
+               YYDEBUG(320, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1668 "Zend/zend_language_scanner.l"
+#line 1676 "Zend/zend_language_scanner.l"
                {
        if (CG(current_namespace)) {
                *zendlval = *CG(current_namespace);
@@ -4150,27 +4172,27 @@ yy313:
        }
        return T_NS_C;
 }
-#line 4154 "Zend/zend_language_scanner.c"
-yy317:
-               YYDEBUG(317, *YYCURSOR);
+#line 4176 "Zend/zend_language_scanner.c"
+yy321:
+               YYDEBUG(321, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'R') goto yy318;
+               if (yych == 'R') goto yy322;
                if (yych != 'r') goto yy187;
-yy318:
-               YYDEBUG(318, *YYCURSOR);
+yy322:
+               YYDEBUG(322, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych != '_') goto yy187;
-               YYDEBUG(319, *YYCURSOR);
+               YYDEBUG(323, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych != '_') goto yy187;
-               YYDEBUG(320, *YYCURSOR);
+               YYDEBUG(324, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(321, *YYCURSOR);
+               YYDEBUG(325, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1643 "Zend/zend_language_scanner.l"
+#line 1651 "Zend/zend_language_scanner.l"
                {
        char *filename = zend_get_compiled_filename(TSRMLS_C);
        const size_t filename_len = strlen(filename);
@@ -4195,72 +4217,72 @@ yy318:
        ZVAL_STRING(zendlval, dirname, 0);
        return T_DIR;
 }
-#line 4199 "Zend/zend_language_scanner.c"
-yy322:
-               YYDEBUG(322, *YYCURSOR);
+#line 4221 "Zend/zend_language_scanner.c"
+yy326:
+               YYDEBUG(326, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'N') goto yy323;
+               if (yych == 'N') goto yy327;
                if (yych != 'n') goto yy187;
-yy323:
-               YYDEBUG(323, *YYCURSOR);
+yy327:
+               YYDEBUG(327, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy324;
+               if (yych == 'E') goto yy328;
                if (yych != 'e') goto yy187;
-yy324:
-               YYDEBUG(324, *YYCURSOR);
+yy328:
+               YYDEBUG(328, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych != '_') goto yy187;
-               YYDEBUG(325, *YYCURSOR);
+               YYDEBUG(329, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych != '_') goto yy187;
-               YYDEBUG(326, *YYCURSOR);
+               YYDEBUG(330, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(327, *YYCURSOR);
+               YYDEBUG(331, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1628 "Zend/zend_language_scanner.l"
+#line 1636 "Zend/zend_language_scanner.l"
                {
        ZVAL_LONG(zendlval, CG(zend_lineno));
        return T_LINE;
 }
-#line 4229 "Zend/zend_language_scanner.c"
-yy328:
-               YYDEBUG(328, *YYCURSOR);
+#line 4251 "Zend/zend_language_scanner.c"
+yy332:
+               YYDEBUG(332, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'T') goto yy329;
+               if (yych == 'T') goto yy333;
                if (yych != 't') goto yy187;
-yy329:
-               YYDEBUG(329, *YYCURSOR);
+yy333:
+               YYDEBUG(333, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'H') goto yy330;
+               if (yych == 'H') goto yy334;
                if (yych != 'h') goto yy187;
-yy330:
-               YYDEBUG(330, *YYCURSOR);
+yy334:
+               YYDEBUG(334, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'O') goto yy331;
+               if (yych == 'O') goto yy335;
                if (yych != 'o') goto yy187;
-yy331:
-               YYDEBUG(331, *YYCURSOR);
+yy335:
+               YYDEBUG(335, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'D') goto yy332;
+               if (yych == 'D') goto yy336;
                if (yych != 'd') goto yy187;
-yy332:
-               YYDEBUG(332, *YYCURSOR);
+yy336:
+               YYDEBUG(336, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych != '_') goto yy187;
-               YYDEBUG(333, *YYCURSOR);
+               YYDEBUG(337, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych != '_') goto yy187;
-               YYDEBUG(334, *YYCURSOR);
+               YYDEBUG(338, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(335, *YYCURSOR);
+               YYDEBUG(339, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1615 "Zend/zend_language_scanner.l"
+#line 1623 "Zend/zend_language_scanner.l"
                {
        const char *class_name = CG(active_class_entry) ? CG(active_class_entry)->name : NULL;
        const char *func_name = CG(active_op_array)? CG(active_op_array)->function_name : NULL;
@@ -4273,58 +4295,58 @@ yy332:
        zendlval->type = IS_STRING;
        return T_METHOD_C;
 }
-#line 4277 "Zend/zend_language_scanner.c"
-yy336:
-               YYDEBUG(336, *YYCURSOR);
+#line 4299 "Zend/zend_language_scanner.c"
+yy340:
+               YYDEBUG(340, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'L') goto yy347;
-               if (yych == 'l') goto yy347;
+               if (yych == 'L') goto yy351;
+               if (yych == 'l') goto yy351;
                goto yy187;
-yy337:
-               YYDEBUG(337, *YYCURSOR);
+yy341:
+               YYDEBUG(341, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'N') goto yy338;
+               if (yych == 'N') goto yy342;
                if (yych != 'n') goto yy187;
-yy338:
-               YYDEBUG(338, *YYCURSOR);
+yy342:
+               YYDEBUG(342, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'C') goto yy339;
+               if (yych == 'C') goto yy343;
                if (yych != 'c') goto yy187;
-yy339:
-               YYDEBUG(339, *YYCURSOR);
+yy343:
+               YYDEBUG(343, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'T') goto yy340;
+               if (yych == 'T') goto yy344;
                if (yych != 't') goto yy187;
-yy340:
-               YYDEBUG(340, *YYCURSOR);
+yy344:
+               YYDEBUG(344, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'I') goto yy341;
+               if (yych == 'I') goto yy345;
                if (yych != 'i') goto yy187;
-yy341:
-               YYDEBUG(341, *YYCURSOR);
+yy345:
+               YYDEBUG(345, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'O') goto yy342;
+               if (yych == 'O') goto yy346;
                if (yych != 'o') goto yy187;
-yy342:
-               YYDEBUG(342, *YYCURSOR);
+yy346:
+               YYDEBUG(346, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'N') goto yy343;
+               if (yych == 'N') goto yy347;
                if (yych != 'n') goto yy187;
-yy343:
-               YYDEBUG(343, *YYCURSOR);
+yy347:
+               YYDEBUG(347, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych != '_') goto yy187;
-               YYDEBUG(344, *YYCURSOR);
+               YYDEBUG(348, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych != '_') goto yy187;
-               YYDEBUG(345, *YYCURSOR);
+               YYDEBUG(349, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(346, *YYCURSOR);
+               YYDEBUG(350, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1605 "Zend/zend_language_scanner.l"
+#line 1613 "Zend/zend_language_scanner.l"
                {
        zend_op_array *op_array = CG(active_op_array);
        if (op_array && op_array->function_name) {
@@ -4334,27 +4356,27 @@ yy343:
        }
        return T_FUNC_C;
 }
-#line 4338 "Zend/zend_language_scanner.c"
-yy347:
-               YYDEBUG(347, *YYCURSOR);
+#line 4360 "Zend/zend_language_scanner.c"
+yy351:
+               YYDEBUG(351, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy348;
+               if (yych == 'E') goto yy352;
                if (yych != 'e') goto yy187;
-yy348:
-               YYDEBUG(348, *YYCURSOR);
+yy352:
+               YYDEBUG(352, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych != '_') goto yy187;
-               YYDEBUG(349, *YYCURSOR);
+               YYDEBUG(353, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych != '_') goto yy187;
-               YYDEBUG(350, *YYCURSOR);
+               YYDEBUG(354, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(351, *YYCURSOR);
+               YYDEBUG(355, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1633 "Zend/zend_language_scanner.l"
+#line 1641 "Zend/zend_language_scanner.l"
                {
        char *filename = zend_get_compiled_filename(TSRMLS_C);
 
@@ -4364,37 +4386,37 @@ yy348:
        ZVAL_STRING(zendlval, filename, 1);
        return T_FILE;
 }
-#line 4368 "Zend/zend_language_scanner.c"
-yy352:
-               YYDEBUG(352, *YYCURSOR);
+#line 4390 "Zend/zend_language_scanner.c"
+yy356:
+               YYDEBUG(356, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'A') goto yy353;
+               if (yych == 'A') goto yy357;
                if (yych != 'a') goto yy187;
-yy353:
-               YYDEBUG(353, *YYCURSOR);
+yy357:
+               YYDEBUG(357, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'I') goto yy354;
+               if (yych == 'I') goto yy358;
                if (yych != 'i') goto yy187;
-yy354:
-               YYDEBUG(354, *YYCURSOR);
+yy358:
+               YYDEBUG(358, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'T') goto yy355;
+               if (yych == 'T') goto yy359;
                if (yych != 't') goto yy187;
-yy355:
-               YYDEBUG(355, *YYCURSOR);
+yy359:
+               YYDEBUG(359, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych != '_') goto yy187;
-               YYDEBUG(356, *YYCURSOR);
+               YYDEBUG(360, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych != '_') goto yy187;
-               YYDEBUG(357, *YYCURSOR);
+               YYDEBUG(361, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(358, *YYCURSOR);
+               YYDEBUG(362, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1595 "Zend/zend_language_scanner.l"
+#line 1603 "Zend/zend_language_scanner.l"
                {
        zend_class_entry *ce = CG(active_class_entry);
        if (ce && ce->name && ZEND_ACC_TRAIT == (ce->ce_flags & ZEND_ACC_TRAIT)) {
@@ -4404,37 +4426,37 @@ yy355:
        }
        return T_TRAIT_C;
 }
-#line 4408 "Zend/zend_language_scanner.c"
-yy359:
-               YYDEBUG(359, *YYCURSOR);
+#line 4430 "Zend/zend_language_scanner.c"
+yy363:
+               YYDEBUG(363, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'A') goto yy360;
+               if (yych == 'A') goto yy364;
                if (yych != 'a') goto yy187;
-yy360:
-               YYDEBUG(360, *YYCURSOR);
+yy364:
+               YYDEBUG(364, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'S') goto yy361;
+               if (yych == 'S') goto yy365;
                if (yych != 's') goto yy187;
-yy361:
-               YYDEBUG(361, *YYCURSOR);
+yy365:
+               YYDEBUG(365, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'S') goto yy362;
+               if (yych == 'S') goto yy366;
                if (yych != 's') goto yy187;
-yy362:
-               YYDEBUG(362, *YYCURSOR);
+yy366:
+               YYDEBUG(366, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych != '_') goto yy187;
-               YYDEBUG(363, *YYCURSOR);
+               YYDEBUG(367, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych != '_') goto yy187;
-               YYDEBUG(364, *YYCURSOR);
+               YYDEBUG(368, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(365, *YYCURSOR);
+               YYDEBUG(369, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1577 "Zend/zend_language_scanner.l"
+#line 1585 "Zend/zend_language_scanner.l"
                {
        zend_class_entry *ce = CG(active_class_entry);
        if (ce && ZEND_ACC_TRAIT == (ce->ce_flags & ZEND_ACC_TRAIT)) {
@@ -4452,84 +4474,60 @@ yy362:
        }
        return T_CLASS_C;
 }
-#line 4456 "Zend/zend_language_scanner.c"
-yy366:
-               YYDEBUG(366, *YYCURSOR);
-               yych = *++YYCURSOR;
-               if (yych == 'L') goto yy367;
-               if (yych != 'l') goto yy187;
-yy367:
-               YYDEBUG(367, *YYCURSOR);
-               yych = *++YYCURSOR;
-               if (yych == 'T') goto yy368;
-               if (yych != 't') goto yy187;
-yy368:
-               YYDEBUG(368, *YYCURSOR);
-               yych = *++YYCURSOR;
-               if (yych != '_') goto yy187;
-               YYDEBUG(369, *YYCURSOR);
-               yych = *++YYCURSOR;
-               if (yych == 'C') goto yy370;
-               if (yych != 'c') goto yy187;
+#line 4478 "Zend/zend_language_scanner.c"
 yy370:
                YYDEBUG(370, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'O') goto yy371;
-               if (yych != 'o') goto yy187;
+               if (yych == 'L') goto yy371;
+               if (yych != 'l') goto yy187;
 yy371:
                YYDEBUG(371, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'M') goto yy372;
-               if (yych != 'm') goto yy187;
+               if (yych == 'T') goto yy372;
+               if (yych != 't') goto yy187;
 yy372:
                YYDEBUG(372, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'P') goto yy373;
-               if (yych != 'p') goto yy187;
-yy373:
+               if (yych != '_') goto yy187;
                YYDEBUG(373, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'I') goto yy374;
-               if (yych != 'i') goto yy187;
+               if (yych == 'C') goto yy374;
+               if (yych != 'c') goto yy187;
 yy374:
                YYDEBUG(374, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'L') goto yy375;
-               if (yych != 'l') goto yy187;
+               if (yych == 'O') goto yy375;
+               if (yych != 'o') goto yy187;
 yy375:
                YYDEBUG(375, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy376;
-               if (yych != 'e') goto yy187;
+               if (yych == 'M') goto yy376;
+               if (yych != 'm') goto yy187;
 yy376:
                YYDEBUG(376, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'R') goto yy377;
-               if (yych != 'r') goto yy187;
+               if (yych == 'P') goto yy377;
+               if (yych != 'p') goto yy187;
 yy377:
                YYDEBUG(377, *YYCURSOR);
-               ++YYCURSOR;
-               if (yybm[0+(yych = *YYCURSOR)] & 4) {
-                       goto yy186;
-               }
+               yych = *++YYCURSOR;
+               if (yych == 'I') goto yy378;
+               if (yych != 'i') goto yy187;
+yy378:
                YYDEBUG(378, *YYCURSOR);
-               yyleng = YYCURSOR - SCNG(yy_text);
-#line 1294 "Zend/zend_language_scanner.l"
-               {
-       return T_HALT_COMPILER;
-}
-#line 4522 "Zend/zend_language_scanner.c"
+               yych = *++YYCURSOR;
+               if (yych == 'L') goto yy379;
+               if (yych != 'l') goto yy187;
 yy379:
                YYDEBUG(379, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'S') goto yy383;
-               if (yych == 's') goto yy383;
-               goto yy187;
+               if (yych == 'E') goto yy380;
+               if (yych != 'e') goto yy187;
 yy380:
                YYDEBUG(380, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy381;
-               if (yych != 'e') goto yy187;
+               if (yych == 'R') goto yy381;
+               if (yych != 'r') goto yy187;
 yy381:
                YYDEBUG(381, *YYCURSOR);
                ++YYCURSOR;
@@ -4538,21 +4536,22 @@ yy381:
                }
                YYDEBUG(382, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1274 "Zend/zend_language_scanner.l"
+#line 1294 "Zend/zend_language_scanner.l"
                {
-       return T_USE;
+       return T_HALT_COMPILER;
 }
-#line 4546 "Zend/zend_language_scanner.c"
+#line 4544 "Zend/zend_language_scanner.c"
 yy383:
                YYDEBUG(383, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy384;
-               if (yych != 'e') goto yy187;
+               if (yych == 'S') goto yy387;
+               if (yych == 's') goto yy387;
+               goto yy187;
 yy384:
                YYDEBUG(384, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'T') goto yy385;
-               if (yych != 't') goto yy187;
+               if (yych == 'E') goto yy385;
+               if (yych != 'e') goto yy187;
 yy385:
                YYDEBUG(385, *YYCURSOR);
                ++YYCURSOR;
@@ -4561,2639 +4560,2662 @@ yy385:
                }
                YYDEBUG(386, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1322 "Zend/zend_language_scanner.l"
+#line 1274 "Zend/zend_language_scanner.l"
                {
-       return T_UNSET;
+       return T_USE;
 }
-#line 4569 "Zend/zend_language_scanner.c"
+#line 4568 "Zend/zend_language_scanner.c"
 yy387:
                YYDEBUG(387, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych == 'E') goto yy388;
+               if (yych != 'e') goto yy187;
+yy388:
+               YYDEBUG(388, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych == 'T') goto yy389;
+               if (yych != 't') goto yy187;
+yy389:
+               YYDEBUG(389, *YYCURSOR);
+               ++YYCURSOR;
+               if (yybm[0+(yych = *YYCURSOR)] & 4) {
+                       goto yy186;
+               }
+               YYDEBUG(390, *YYCURSOR);
+               yyleng = YYCURSOR - SCNG(yy_text);
+#line 1322 "Zend/zend_language_scanner.l"
+               {
+       return T_UNSET;
+}
+#line 4591 "Zend/zend_language_scanner.c"
+yy391:
+               YYDEBUG(391, *YYCURSOR);
                ++YYCURSOR;
                YYFILL(7);
                yych = *YYCURSOR;
-yy388:
-               YYDEBUG(388, *YYCURSOR);
+yy392:
+               YYDEBUG(392, *YYCURSOR);
                if (yych <= 'S') {
                        if (yych <= 'D') {
                                if (yych <= ' ') {
-                                       if (yych == '\t') goto yy387;
+                                       if (yych == '\t') goto yy391;
                                        if (yych <= 0x1F) goto yy194;
-                                       goto yy387;
+                                       goto yy391;
                                } else {
                                        if (yych <= 'A') {
                                                if (yych <= '@') goto yy194;
-                                               goto yy392;
+                                               goto yy396;
                                        } else {
-                                               if (yych <= 'B') goto yy390;
+                                               if (yych <= 'B') goto yy394;
                                                if (yych <= 'C') goto yy194;
-                                               goto yy395;
+                                               goto yy399;
                                        }
                                }
                        } else {
                                if (yych <= 'I') {
-                                       if (yych == 'F') goto yy396;
+                                       if (yych == 'F') goto yy400;
                                        if (yych <= 'H') goto yy194;
-                                       goto yy397;
+                                       goto yy401;
                                } else {
                                        if (yych <= 'O') {
                                                if (yych <= 'N') goto yy194;
-                                               goto yy391;
+                                               goto yy395;
                                        } else {
                                                if (yych <= 'Q') goto yy194;
-                                               if (yych <= 'R') goto yy394;
-                                               goto yy393;
+                                               if (yych <= 'R') goto yy398;
+                                               goto yy397;
                                        }
                                }
                        }
                } else {
                        if (yych <= 'f') {
                                if (yych <= 'a') {
-                                       if (yych == 'U') goto yy389;
+                                       if (yych == 'U') goto yy393;
                                        if (yych <= '`') goto yy194;
-                                       goto yy392;
+                                       goto yy396;
                                } else {
                                        if (yych <= 'c') {
-                                               if (yych <= 'b') goto yy390;
+                                               if (yych <= 'b') goto yy394;
                                                goto yy194;
                                        } else {
-                                               if (yych <= 'd') goto yy395;
+                                               if (yych <= 'd') goto yy399;
                                                if (yych <= 'e') goto yy194;
-                                               goto yy396;
+                                               goto yy400;
                                        }
                                }
                        } else {
                                if (yych <= 'q') {
                                        if (yych <= 'i') {
                                                if (yych <= 'h') goto yy194;
-                                               goto yy397;
+                                               goto yy401;
                                        } else {
-                                               if (yych == 'o') goto yy391;
+                                               if (yych == 'o') goto yy395;
                                                goto yy194;
                                        }
                                } else {
                                        if (yych <= 's') {
-                                               if (yych <= 'r') goto yy394;
-                                               goto yy393;
+                                               if (yych <= 'r') goto yy398;
+                                               goto yy397;
                                        } else {
                                                if (yych != 'u') goto yy194;
                                        }
                                }
                        }
                }
-yy389:
-               YYDEBUG(389, *YYCURSOR);
+yy393:
+               YYDEBUG(393, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'N') goto yy456;
-               if (yych == 'n') goto yy456;
+               if (yych == 'N') goto yy460;
+               if (yych == 'n') goto yy460;
                goto yy194;
-yy390:
-               YYDEBUG(390, *YYCURSOR);
+yy394:
+               YYDEBUG(394, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych <= 'O') {
-                       if (yych == 'I') goto yy443;
+                       if (yych == 'I') goto yy447;
                        if (yych <= 'N') goto yy194;
-                       goto yy444;
+                       goto yy448;
                } else {
                        if (yych <= 'i') {
                                if (yych <= 'h') goto yy194;
-                               goto yy443;
+                               goto yy447;
                        } else {
-                               if (yych == 'o') goto yy444;
+                               if (yych == 'o') goto yy448;
                                goto yy194;
                        }
                }
-yy391:
-               YYDEBUG(391, *YYCURSOR);
-               yych = *++YYCURSOR;
-               if (yych == 'B') goto yy435;
-               if (yych == 'b') goto yy435;
-               goto yy194;
-yy392:
-               YYDEBUG(392, *YYCURSOR);
-               yych = *++YYCURSOR;
-               if (yych == 'R') goto yy428;
-               if (yych == 'r') goto yy428;
-               goto yy194;
-yy393:
-               YYDEBUG(393, *YYCURSOR);
-               yych = *++YYCURSOR;
-               if (yych == 'T') goto yy420;
-               if (yych == 't') goto yy420;
-               goto yy194;
-yy394:
-               YYDEBUG(394, *YYCURSOR);
-               yych = *++YYCURSOR;
-               if (yych == 'E') goto yy418;
-               if (yych == 'e') goto yy418;
-               goto yy194;
 yy395:
                YYDEBUG(395, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'O') goto yy414;
-               if (yych == 'o') goto yy414;
+               if (yych == 'B') goto yy439;
+               if (yych == 'b') goto yy439;
                goto yy194;
 yy396:
                YYDEBUG(396, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'L') goto yy407;
-               if (yych == 'l') goto yy407;
+               if (yych == 'R') goto yy432;
+               if (yych == 'r') goto yy432;
                goto yy194;
 yy397:
                YYDEBUG(397, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'N') goto yy398;
-               if (yych != 'n') goto yy194;
+               if (yych == 'T') goto yy424;
+               if (yych == 't') goto yy424;
+               goto yy194;
 yy398:
                YYDEBUG(398, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'T') goto yy399;
-               if (yych != 't') goto yy194;
+               if (yych == 'E') goto yy422;
+               if (yych == 'e') goto yy422;
+               goto yy194;
 yy399:
                YYDEBUG(399, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy400;
-               if (yych != 'e') goto yy402;
+               if (yych == 'O') goto yy418;
+               if (yych == 'o') goto yy418;
+               goto yy194;
 yy400:
                YYDEBUG(400, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'G') goto yy405;
-               if (yych == 'g') goto yy405;
+               if (yych == 'L') goto yy411;
+               if (yych == 'l') goto yy411;
                goto yy194;
 yy401:
                YYDEBUG(401, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych == 'N') goto yy402;
+               if (yych != 'n') goto yy194;
+yy402:
+               YYDEBUG(402, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych == 'T') goto yy403;
+               if (yych != 't') goto yy194;
+yy403:
+               YYDEBUG(403, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych == 'E') goto yy404;
+               if (yych != 'e') goto yy406;
+yy404:
+               YYDEBUG(404, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych == 'G') goto yy409;
+               if (yych == 'g') goto yy409;
+               goto yy194;
+yy405:
+               YYDEBUG(405, *YYCURSOR);
                ++YYCURSOR;
                YYFILL(1);
                yych = *YYCURSOR;
-yy402:
-               YYDEBUG(402, *YYCURSOR);
+yy406:
+               YYDEBUG(406, *YYCURSOR);
                if (yych <= 0x1F) {
-                       if (yych == '\t') goto yy401;
+                       if (yych == '\t') goto yy405;
                        goto yy194;
                } else {
-                       if (yych <= ' ') goto yy401;
+                       if (yych <= ' ') goto yy405;
                        if (yych != ')') goto yy194;
                }
-               YYDEBUG(403, *YYCURSOR);
+               YYDEBUG(407, *YYCURSOR);
                ++YYCURSOR;
-               YYDEBUG(404, *YYCURSOR);
+               YYDEBUG(408, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1222 "Zend/zend_language_scanner.l"
                {
        return T_INT_CAST;
 }
-#line 4745 "Zend/zend_language_scanner.c"
-yy405:
-               YYDEBUG(405, *YYCURSOR);
+#line 4767 "Zend/zend_language_scanner.c"
+yy409:
+               YYDEBUG(409, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy406;
+               if (yych == 'E') goto yy410;
                if (yych != 'e') goto yy194;
-yy406:
-               YYDEBUG(406, *YYCURSOR);
+yy410:
+               YYDEBUG(410, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'R') goto yy401;
-               if (yych == 'r') goto yy401;
+               if (yych == 'R') goto yy405;
+               if (yych == 'r') goto yy405;
                goto yy194;
-yy407:
-               YYDEBUG(407, *YYCURSOR);
+yy411:
+               YYDEBUG(411, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'O') goto yy408;
+               if (yych == 'O') goto yy412;
                if (yych != 'o') goto yy194;
-yy408:
-               YYDEBUG(408, *YYCURSOR);
+yy412:
+               YYDEBUG(412, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'A') goto yy409;
+               if (yych == 'A') goto yy413;
                if (yych != 'a') goto yy194;
-yy409:
-               YYDEBUG(409, *YYCURSOR);
+yy413:
+               YYDEBUG(413, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'T') goto yy410;
+               if (yych == 'T') goto yy414;
                if (yych != 't') goto yy194;
-yy410:
-               YYDEBUG(410, *YYCURSOR);
+yy414:
+               YYDEBUG(414, *YYCURSOR);
                ++YYCURSOR;
                YYFILL(1);
                yych = *YYCURSOR;
-               YYDEBUG(411, *YYCURSOR);
+               YYDEBUG(415, *YYCURSOR);
                if (yych <= 0x1F) {
-                       if (yych == '\t') goto yy410;
+                       if (yych == '\t') goto yy414;
                        goto yy194;
                } else {
-                       if (yych <= ' ') goto yy410;
+                       if (yych <= ' ') goto yy414;
                        if (yych != ')') goto yy194;
                }
-               YYDEBUG(412, *YYCURSOR);
+               YYDEBUG(416, *YYCURSOR);
                ++YYCURSOR;
-               YYDEBUG(413, *YYCURSOR);
+               YYDEBUG(417, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1226 "Zend/zend_language_scanner.l"
                {
        return T_DOUBLE_CAST;
 }
-#line 4793 "Zend/zend_language_scanner.c"
-yy414:
-               YYDEBUG(414, *YYCURSOR);
-               yych = *++YYCURSOR;
-               if (yych == 'U') goto yy415;
-               if (yych != 'u') goto yy194;
-yy415:
-               YYDEBUG(415, *YYCURSOR);
-               yych = *++YYCURSOR;
-               if (yych == 'B') goto yy416;
-               if (yych != 'b') goto yy194;
-yy416:
-               YYDEBUG(416, *YYCURSOR);
-               yych = *++YYCURSOR;
-               if (yych == 'L') goto yy417;
-               if (yych != 'l') goto yy194;
-yy417:
-               YYDEBUG(417, *YYCURSOR);
-               yych = *++YYCURSOR;
-               if (yych == 'E') goto yy410;
-               if (yych == 'e') goto yy410;
-               goto yy194;
+#line 4815 "Zend/zend_language_scanner.c"
 yy418:
                YYDEBUG(418, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'A') goto yy419;
-               if (yych != 'a') goto yy194;
+               if (yych == 'U') goto yy419;
+               if (yych != 'u') goto yy194;
 yy419:
                YYDEBUG(419, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'L') goto yy410;
-               if (yych == 'l') goto yy410;
-               goto yy194;
+               if (yych == 'B') goto yy420;
+               if (yych != 'b') goto yy194;
 yy420:
                YYDEBUG(420, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'R') goto yy421;
-               if (yych != 'r') goto yy194;
+               if (yych == 'L') goto yy421;
+               if (yych != 'l') goto yy194;
 yy421:
                YYDEBUG(421, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'I') goto yy422;
-               if (yych != 'i') goto yy194;
+               if (yych == 'E') goto yy414;
+               if (yych == 'e') goto yy414;
+               goto yy194;
 yy422:
                YYDEBUG(422, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'N') goto yy423;
-               if (yych != 'n') goto yy194;
+               if (yych == 'A') goto yy423;
+               if (yych != 'a') goto yy194;
 yy423:
                YYDEBUG(423, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'G') goto yy424;
-               if (yych != 'g') goto yy194;
+               if (yych == 'L') goto yy414;
+               if (yych == 'l') goto yy414;
+               goto yy194;
 yy424:
                YYDEBUG(424, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych == 'R') goto yy425;
+               if (yych != 'r') goto yy194;
+yy425:
+               YYDEBUG(425, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych == 'I') goto yy426;
+               if (yych != 'i') goto yy194;
+yy426:
+               YYDEBUG(426, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych == 'N') goto yy427;
+               if (yych != 'n') goto yy194;
+yy427:
+               YYDEBUG(427, *YYCURSOR);
+               yych = *++YYCURSOR;
+               if (yych == 'G') goto yy428;
+               if (yych != 'g') goto yy194;
+yy428:
+               YYDEBUG(428, *YYCURSOR);
                ++YYCURSOR;
                YYFILL(1);
                yych = *YYCURSOR;
-               YYDEBUG(425, *YYCURSOR);
+               YYDEBUG(429, *YYCURSOR);
                if (yych <= 0x1F) {
-                       if (yych == '\t') goto yy424;
+                       if (yych == '\t') goto yy428;
                        goto yy194;
                } else {
-                       if (yych <= ' ') goto yy424;
+                       if (yych <= ' ') goto yy428;
                        if (yych != ')') goto yy194;
                }
-               YYDEBUG(426, *YYCURSOR);
+               YYDEBUG(430, *YYCURSOR);
                ++YYCURSOR;
-               YYDEBUG(427, *YYCURSOR);
+               YYDEBUG(431, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1230 "Zend/zend_language_scanner.l"
                {
        return T_STRING_CAST;
 }
-#line 4867 "Zend/zend_language_scanner.c"
-yy428:
-               YYDEBUG(428, *YYCURSOR);
+#line 4889 "Zend/zend_language_scanner.c"
+yy432:
+               YYDEBUG(432, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'R') goto yy429;
+               if (yych == 'R') goto yy433;
                if (yych != 'r') goto yy194;
-yy429:
-               YYDEBUG(429, *YYCURSOR);
+yy433:
+               YYDEBUG(433, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'A') goto yy430;
+               if (yych == 'A') goto yy434;
                if (yych != 'a') goto yy194;
-yy430:
-               YYDEBUG(430, *YYCURSOR);
+yy434:
+               YYDEBUG(434, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'Y') goto yy431;
+               if (yych == 'Y') goto yy435;
                if (yych != 'y') goto yy194;
-yy431:
-               YYDEBUG(431, *YYCURSOR);
+yy435:
+               YYDEBUG(435, *YYCURSOR);
                ++YYCURSOR;
                YYFILL(1);
                yych = *YYCURSOR;
-               YYDEBUG(432, *YYCURSOR);
+               YYDEBUG(436, *YYCURSOR);
                if (yych <= 0x1F) {
-                       if (yych == '\t') goto yy431;
+                       if (yych == '\t') goto yy435;
                        goto yy194;
                } else {
-                       if (yych <= ' ') goto yy431;
+                       if (yych <= ' ') goto yy435;
                        if (yych != ')') goto yy194;
                }
-               YYDEBUG(433, *YYCURSOR);
+               YYDEBUG(437, *YYCURSOR);
                ++YYCURSOR;
-               YYDEBUG(434, *YYCURSOR);
+               YYDEBUG(438, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1234 "Zend/zend_language_scanner.l"
                {
        return T_ARRAY_CAST;
 }
-#line 4904 "Zend/zend_language_scanner.c"
-yy435:
-               YYDEBUG(435, *YYCURSOR);
+#line 4926 "Zend/zend_language_scanner.c"
+yy439:
+               YYDEBUG(439, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'J') goto yy436;
+               if (yych == 'J') goto yy440;
                if (yych != 'j') goto yy194;
-yy436:
-               YYDEBUG(436, *YYCURSOR);
+yy440:
+               YYDEBUG(440, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy437;
+               if (yych == 'E') goto yy441;
                if (yych != 'e') goto yy194;
-yy437:
-               YYDEBUG(437, *YYCURSOR);
+yy441:
+               YYDEBUG(441, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'C') goto yy438;
+               if (yych == 'C') goto yy442;
                if (yych != 'c') goto yy194;
-yy438:
-               YYDEBUG(438, *YYCURSOR);
+yy442:
+               YYDEBUG(442, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'T') goto yy439;
+               if (yych == 'T') goto yy443;
                if (yych != 't') goto yy194;
-yy439:
-               YYDEBUG(439, *YYCURSOR);
+yy443:
+               YYDEBUG(443, *YYCURSOR);
                ++YYCURSOR;
                YYFILL(1);
                yych = *YYCURSOR;
-               YYDEBUG(440, *YYCURSOR);
+               YYDEBUG(444, *YYCURSOR);
                if (yych <= 0x1F) {
-                       if (yych == '\t') goto yy439;
+                       if (yych == '\t') goto yy443;
                        goto yy194;
                } else {
-                       if (yych <= ' ') goto yy439;
+                       if (yych <= ' ') goto yy443;
                        if (yych != ')') goto yy194;
                }
-               YYDEBUG(441, *YYCURSOR);
+               YYDEBUG(445, *YYCURSOR);
                ++YYCURSOR;
-               YYDEBUG(442, *YYCURSOR);
+               YYDEBUG(446, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1238 "Zend/zend_language_scanner.l"
                {
        return T_OBJECT_CAST;
 }
-#line 4946 "Zend/zend_language_scanner.c"
-yy443:
-               YYDEBUG(443, *YYCURSOR);
+#line 4968 "Zend/zend_language_scanner.c"
+yy447:
+               YYDEBUG(447, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'N') goto yy453;
-               if (yych == 'n') goto yy453;
+               if (yych == 'N') goto yy457;
+               if (yych == 'n') goto yy457;
                goto yy194;
-yy444:
-               YYDEBUG(444, *YYCURSOR);
+yy448:
+               YYDEBUG(448, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'O') goto yy445;
+               if (yych == 'O') goto yy449;
                if (yych != 'o') goto yy194;
-yy445:
-               YYDEBUG(445, *YYCURSOR);
+yy449:
+               YYDEBUG(449, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'L') goto yy446;
+               if (yych == 'L') goto yy450;
                if (yych != 'l') goto yy194;
-yy446:
-               YYDEBUG(446, *YYCURSOR);
+yy450:
+               YYDEBUG(450, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy451;
-               if (yych == 'e') goto yy451;
-               goto yy448;
-yy447:
-               YYDEBUG(447, *YYCURSOR);
+               if (yych == 'E') goto yy455;
+               if (yych == 'e') goto yy455;
+               goto yy452;
+yy451:
+               YYDEBUG(451, *YYCURSOR);
                ++YYCURSOR;
                YYFILL(1);
                yych = *YYCURSOR;
-yy448:
-               YYDEBUG(448, *YYCURSOR);
+yy452:
+               YYDEBUG(452, *YYCURSOR);
                if (yych <= 0x1F) {
-                       if (yych == '\t') goto yy447;
+                       if (yych == '\t') goto yy451;
                        goto yy194;
                } else {
-                       if (yych <= ' ') goto yy447;
+                       if (yych <= ' ') goto yy451;
                        if (yych != ')') goto yy194;
                }
-               YYDEBUG(449, *YYCURSOR);
+               YYDEBUG(453, *YYCURSOR);
                ++YYCURSOR;
-               YYDEBUG(450, *YYCURSOR);
+               YYDEBUG(454, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1242 "Zend/zend_language_scanner.l"
                {
        return T_BOOL_CAST;
 }
-#line 4991 "Zend/zend_language_scanner.c"
-yy451:
-               YYDEBUG(451, *YYCURSOR);
+#line 5013 "Zend/zend_language_scanner.c"
+yy455:
+               YYDEBUG(455, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'A') goto yy452;
+               if (yych == 'A') goto yy456;
                if (yych != 'a') goto yy194;
-yy452:
-               YYDEBUG(452, *YYCURSOR);
+yy456:
+               YYDEBUG(456, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'N') goto yy447;
-               if (yych == 'n') goto yy447;
+               if (yych == 'N') goto yy451;
+               if (yych == 'n') goto yy451;
                goto yy194;
-yy453:
-               YYDEBUG(453, *YYCURSOR);
+yy457:
+               YYDEBUG(457, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'A') goto yy454;
+               if (yych == 'A') goto yy458;
                if (yych != 'a') goto yy194;
-yy454:
-               YYDEBUG(454, *YYCURSOR);
+yy458:
+               YYDEBUG(458, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'R') goto yy455;
+               if (yych == 'R') goto yy459;
                if (yych != 'r') goto yy194;
-yy455:
-               YYDEBUG(455, *YYCURSOR);
+yy459:
+               YYDEBUG(459, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'Y') goto yy424;
-               if (yych == 'y') goto yy424;
+               if (yych == 'Y') goto yy428;
+               if (yych == 'y') goto yy428;
                goto yy194;
-yy456:
-               YYDEBUG(456, *YYCURSOR);
+yy460:
+               YYDEBUG(460, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'S') goto yy457;
+               if (yych == 'S') goto yy461;
                if (yych != 's') goto yy194;
-yy457:
-               YYDEBUG(457, *YYCURSOR);
+yy461:
+               YYDEBUG(461, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy458;
+               if (yych == 'E') goto yy462;
                if (yych != 'e') goto yy194;
-yy458:
-               YYDEBUG(458, *YYCURSOR);
+yy462:
+               YYDEBUG(462, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'T') goto yy459;
+               if (yych == 'T') goto yy463;
                if (yych != 't') goto yy194;
-yy459:
-               YYDEBUG(459, *YYCURSOR);
+yy463:
+               YYDEBUG(463, *YYCURSOR);
                ++YYCURSOR;
                YYFILL(1);
                yych = *YYCURSOR;
-               YYDEBUG(460, *YYCURSOR);
+               YYDEBUG(464, *YYCURSOR);
                if (yych <= 0x1F) {
-                       if (yych == '\t') goto yy459;
+                       if (yych == '\t') goto yy463;
                        goto yy194;
                } else {
-                       if (yych <= ' ') goto yy459;
+                       if (yych <= ' ') goto yy463;
                        if (yych != ')') goto yy194;
                }
-               YYDEBUG(461, *YYCURSOR);
+               YYDEBUG(465, *YYCURSOR);
                ++YYCURSOR;
-               YYDEBUG(462, *YYCURSOR);
+               YYDEBUG(466, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1246 "Zend/zend_language_scanner.l"
                {
        return T_UNSET_CAST;
 }
-#line 5055 "Zend/zend_language_scanner.c"
-yy463:
-               YYDEBUG(463, *YYCURSOR);
+#line 5077 "Zend/zend_language_scanner.c"
+yy467:
+               YYDEBUG(467, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'R') goto yy464;
+               if (yych == 'R') goto yy468;
                if (yych != 'r') goto yy187;
-yy464:
-               YYDEBUG(464, *YYCURSOR);
+yy468:
+               YYDEBUG(468, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(465, *YYCURSOR);
+               YYDEBUG(469, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1218 "Zend/zend_language_scanner.l"
                {
        return T_VAR;
 }
-#line 5073 "Zend/zend_language_scanner.c"
-yy466:
-               YYDEBUG(466, *YYCURSOR);
+#line 5095 "Zend/zend_language_scanner.c"
+yy470:
+               YYDEBUG(470, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'M') goto yy470;
-               if (yych == 'm') goto yy470;
+               if (yych == 'M') goto yy474;
+               if (yych == 'm') goto yy474;
                goto yy187;
-yy467:
-               YYDEBUG(467, *YYCURSOR);
+yy471:
+               YYDEBUG(471, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'W') goto yy468;
+               if (yych == 'W') goto yy472;
                if (yych != 'w') goto yy187;
-yy468:
-               YYDEBUG(468, *YYCURSOR);
+yy472:
+               YYDEBUG(472, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(469, *YYCURSOR);
+               YYDEBUG(473, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1210 "Zend/zend_language_scanner.l"
                {
        return T_NEW;
 }
-#line 5097 "Zend/zend_language_scanner.c"
-yy470:
-               YYDEBUG(470, *YYCURSOR);
+#line 5119 "Zend/zend_language_scanner.c"
+yy474:
+               YYDEBUG(474, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy471;
+               if (yych == 'E') goto yy475;
                if (yych != 'e') goto yy187;
-yy471:
-               YYDEBUG(471, *YYCURSOR);
+yy475:
+               YYDEBUG(475, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'S') goto yy472;
+               if (yych == 'S') goto yy476;
                if (yych != 's') goto yy187;
-yy472:
-               YYDEBUG(472, *YYCURSOR);
+yy476:
+               YYDEBUG(476, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'P') goto yy473;
+               if (yych == 'P') goto yy477;
                if (yych != 'p') goto yy187;
-yy473:
-               YYDEBUG(473, *YYCURSOR);
+yy477:
+               YYDEBUG(477, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'A') goto yy474;
+               if (yych == 'A') goto yy478;
                if (yych != 'a') goto yy187;
-yy474:
-               YYDEBUG(474, *YYCURSOR);
+yy478:
+               YYDEBUG(478, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'C') goto yy475;
+               if (yych == 'C') goto yy479;
                if (yych != 'c') goto yy187;
-yy475:
-               YYDEBUG(475, *YYCURSOR);
+yy479:
+               YYDEBUG(479, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy476;
+               if (yych == 'E') goto yy480;
                if (yych != 'e') goto yy187;
-yy476:
-               YYDEBUG(476, *YYCURSOR);
+yy480:
+               YYDEBUG(480, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(477, *YYCURSOR);
+               YYDEBUG(481, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1270 "Zend/zend_language_scanner.l"
                {
        return T_NAMESPACE;
 }
-#line 5140 "Zend/zend_language_scanner.c"
-yy478:
-               YYDEBUG(478, *YYCURSOR);
+#line 5162 "Zend/zend_language_scanner.c"
+yy482:
+               YYDEBUG(482, *YYCURSOR);
                yyaccept = 3;
                YYMARKER = ++YYCURSOR;
                YYFILL(3);
                yych = *YYCURSOR;
-               YYDEBUG(479, *YYCURSOR);
+               YYDEBUG(483, *YYCURSOR);
                if (yych <= 'D') {
                        if (yych <= '/') goto yy190;
-                       if (yych <= '9') goto yy478;
+                       if (yych <= '9') goto yy482;
                        goto yy190;
                } else {
                        if (yych <= 'E') goto yy193;
                        if (yych == 'e') goto yy193;
                        goto yy190;
                }
-yy480:
-               YYDEBUG(480, *YYCURSOR);
+yy484:
+               YYDEBUG(484, *YYCURSOR);
                ++YYCURSOR;
-               YYDEBUG(481, *YYCURSOR);
+               YYDEBUG(485, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1390 "Zend/zend_language_scanner.l"
+#line 1398 "Zend/zend_language_scanner.l"
                {
        return T_CONCAT_EQUAL;
 }
-#line 5166 "Zend/zend_language_scanner.c"
-yy482:
-               YYDEBUG(482, *YYCURSOR);
+#line 5188 "Zend/zend_language_scanner.c"
+yy486:
+               YYDEBUG(486, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych != '.') goto yy194;
-               YYDEBUG(483, *YYCURSOR);
+               YYDEBUG(487, *YYCURSOR);
                ++YYCURSOR;
-               YYDEBUG(484, *YYCURSOR);
+               YYDEBUG(488, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1206 "Zend/zend_language_scanner.l"
                {
        return T_ELLIPSIS;
 }
-#line 5179 "Zend/zend_language_scanner.c"
-yy485:
-               YYDEBUG(485, *YYCURSOR);
+#line 5201 "Zend/zend_language_scanner.c"
+yy489:
+               YYDEBUG(489, *YYCURSOR);
                ++YYCURSOR;
-               YYDEBUG(486, *YYCURSOR);
+               YYDEBUG(490, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1198 "Zend/zend_language_scanner.l"
                {
        return T_PAAMAYIM_NEKUDOTAYIM;
 }
-#line 5189 "Zend/zend_language_scanner.c"
-yy487:
-               YYDEBUG(487, *YYCURSOR);
+#line 5211 "Zend/zend_language_scanner.c"
+yy491:
+               YYDEBUG(491, *YYCURSOR);
                ++YYCURSOR;
                YYFILL(1);
                yych = *YYCURSOR;
-yy488:
-               YYDEBUG(488, *YYCURSOR);
+yy492:
+               YYDEBUG(492, *YYCURSOR);
                if (yych <= '\f') {
                        if (yych <= 0x08) goto yy141;
-                       if (yych <= '\n') goto yy487;
+                       if (yych <= '\n') goto yy491;
                        goto yy141;
                } else {
-                       if (yych <= '\r') goto yy487;
-                       if (yych == ' ') goto yy487;
+                       if (yych <= '\r') goto yy491;
+                       if (yych == ' ') goto yy491;
                        goto yy141;
                }
-yy489:
-               YYDEBUG(489, *YYCURSOR);
+yy493:
+               YYDEBUG(493, *YYCURSOR);
                ++YYCURSOR;
-               YYDEBUG(490, *YYCURSOR);
+               YYDEBUG(494, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1378 "Zend/zend_language_scanner.l"
                {
        return T_MINUS_EQUAL;
 }
-#line 5215 "Zend/zend_language_scanner.c"
-yy491:
-               YYDEBUG(491, *YYCURSOR);
+#line 5237 "Zend/zend_language_scanner.c"
+yy495:
+               YYDEBUG(495, *YYCURSOR);
                ++YYCURSOR;
-               YYDEBUG(492, *YYCURSOR);
+               YYDEBUG(496, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1346 "Zend/zend_language_scanner.l"
                {
        return T_DEC;
 }
-#line 5225 "Zend/zend_language_scanner.c"
-yy493:
-               YYDEBUG(493, *YYCURSOR);
+#line 5247 "Zend/zend_language_scanner.c"
+yy497:
+               YYDEBUG(497, *YYCURSOR);
                ++YYCURSOR;
-               YYDEBUG(494, *YYCURSOR);
+               YYDEBUG(498, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1170 "Zend/zend_language_scanner.l"
                {
        yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC);
        return T_OBJECT_OPERATOR;
 }
-#line 5236 "Zend/zend_language_scanner.c"
-yy495:
-               YYDEBUG(495, *YYCURSOR);
+#line 5258 "Zend/zend_language_scanner.c"
+yy499:
+               YYDEBUG(499, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych <= 'O') {
-                       if (yych == 'I') goto yy502;
+                       if (yych == 'I') goto yy506;
                        if (yych <= 'N') goto yy187;
-                       goto yy503;
+                       goto yy507;
                } else {
                        if (yych <= 'i') {
                                if (yych <= 'h') goto yy187;
-                               goto yy502;
+                               goto yy506;
                        } else {
-                               if (yych == 'o') goto yy503;
+                               if (yych == 'o') goto yy507;
                                goto yy187;
                        }
                }
-yy496:
-               YYDEBUG(496, *YYCURSOR);
+yy500:
+               YYDEBUG(500, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'B') goto yy497;
+               if (yych == 'B') goto yy501;
                if (yych != 'b') goto yy187;
-yy497:
-               YYDEBUG(497, *YYCURSOR);
+yy501:
+               YYDEBUG(501, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'L') goto yy498;
+               if (yych == 'L') goto yy502;
                if (yych != 'l') goto yy187;
-yy498:
-               YYDEBUG(498, *YYCURSOR);
+yy502:
+               YYDEBUG(502, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'I') goto yy499;
+               if (yych == 'I') goto yy503;
                if (yych != 'i') goto yy187;
-yy499:
-               YYDEBUG(499, *YYCURSOR);
+yy503:
+               YYDEBUG(503, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'C') goto yy500;
+               if (yych == 'C') goto yy504;
                if (yych != 'c') goto yy187;
-yy500:
-               YYDEBUG(500, *YYCURSOR);
+yy504:
+               YYDEBUG(504, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(501, *YYCURSOR);
+               YYDEBUG(505, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1318 "Zend/zend_language_scanner.l"
                {
        return T_PUBLIC;
 }
-#line 5285 "Zend/zend_language_scanner.c"
-yy502:
-               YYDEBUG(502, *YYCURSOR);
+#line 5307 "Zend/zend_language_scanner.c"
+yy506:
+               YYDEBUG(506, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych <= 'V') {
-                       if (yych == 'N') goto yy511;
+                       if (yych == 'N') goto yy515;
                        if (yych <= 'U') goto yy187;
-                       goto yy512;
+                       goto yy516;
                } else {
                        if (yych <= 'n') {
                                if (yych <= 'm') goto yy187;
-                               goto yy511;
+                               goto yy515;
                        } else {
-                               if (yych == 'v') goto yy512;
+                               if (yych == 'v') goto yy516;
                                goto yy187;
                        }
                }
-yy503:
-               YYDEBUG(503, *YYCURSOR);
+yy507:
+               YYDEBUG(507, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'T') goto yy504;
+               if (yych == 'T') goto yy508;
                if (yych != 't') goto yy187;
-yy504:
-               YYDEBUG(504, *YYCURSOR);
+yy508:
+               YYDEBUG(508, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy505;
+               if (yych == 'E') goto yy509;
                if (yych != 'e') goto yy187;
-yy505:
-               YYDEBUG(505, *YYCURSOR);
+yy509:
+               YYDEBUG(509, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'C') goto yy506;
+               if (yych == 'C') goto yy510;
                if (yych != 'c') goto yy187;
-yy506:
-               YYDEBUG(506, *YYCURSOR);
+yy510:
+               YYDEBUG(510, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'T') goto yy507;
+               if (yych == 'T') goto yy511;
                if (yych != 't') goto yy187;
-yy507:
-               YYDEBUG(507, *YYCURSOR);
+yy511:
+               YYDEBUG(511, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy508;
+               if (yych == 'E') goto yy512;
                if (yych != 'e') goto yy187;
-yy508:
-               YYDEBUG(508, *YYCURSOR);
+yy512:
+               YYDEBUG(512, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'D') goto yy509;
+               if (yych == 'D') goto yy513;
                if (yych != 'd') goto yy187;
-yy509:
-               YYDEBUG(509, *YYCURSOR);
+yy513:
+               YYDEBUG(513, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(510, *YYCURSOR);
+               YYDEBUG(514, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1314 "Zend/zend_language_scanner.l"
                {
        return T_PROTECTED;
 }
-#line 5344 "Zend/zend_language_scanner.c"
-yy511:
-               YYDEBUG(511, *YYCURSOR);
+#line 5366 "Zend/zend_language_scanner.c"
+yy515:
+               YYDEBUG(515, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'T') goto yy517;
-               if (yych == 't') goto yy517;
+               if (yych == 'T') goto yy521;
+               if (yych == 't') goto yy521;
                goto yy187;
-yy512:
-               YYDEBUG(512, *YYCURSOR);
+yy516:
+               YYDEBUG(516, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'A') goto yy513;
+               if (yych == 'A') goto yy517;
                if (yych != 'a') goto yy187;
-yy513:
-               YYDEBUG(513, *YYCURSOR);
+yy517:
+               YYDEBUG(517, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'T') goto yy514;
+               if (yych == 'T') goto yy518;
                if (yych != 't') goto yy187;
-yy514:
-               YYDEBUG(514, *YYCURSOR);
+yy518:
+               YYDEBUG(518, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy515;
+               if (yych == 'E') goto yy519;
                if (yych != 'e') goto yy187;
-yy515:
-               YYDEBUG(515, *YYCURSOR);
+yy519:
+               YYDEBUG(519, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(516, *YYCURSOR);
+               YYDEBUG(520, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1310 "Zend/zend_language_scanner.l"
                {
        return T_PRIVATE;
 }
-#line 5378 "Zend/zend_language_scanner.c"
-yy517:
-               YYDEBUG(517, *YYCURSOR);
+#line 5400 "Zend/zend_language_scanner.c"
+yy521:
+               YYDEBUG(521, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(518, *YYCURSOR);
+               YYDEBUG(522, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1146 "Zend/zend_language_scanner.l"
                {
        return T_PRINT;
 }
-#line 5391 "Zend/zend_language_scanner.c"
-yy519:
-               YYDEBUG(519, *YYCURSOR);
+#line 5413 "Zend/zend_language_scanner.c"
+yy523:
+               YYDEBUG(523, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'O') goto yy524;
-               if (yych == 'o') goto yy524;
+               if (yych == 'O') goto yy528;
+               if (yych == 'o') goto yy528;
                goto yy187;
-yy520:
-               YYDEBUG(520, *YYCURSOR);
+yy524:
+               YYDEBUG(524, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'T') goto yy521;
+               if (yych == 'T') goto yy525;
                if (yych != 't') goto yy187;
-yy521:
-               YYDEBUG(521, *YYCURSOR);
+yy525:
+               YYDEBUG(525, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'O') goto yy522;
+               if (yych == 'O') goto yy526;
                if (yych != 'o') goto yy187;
-yy522:
-               YYDEBUG(522, *YYCURSOR);
+yy526:
+               YYDEBUG(526, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(523, *YYCURSOR);
+               YYDEBUG(527, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1138 "Zend/zend_language_scanner.l"
                {
        return T_GOTO;
 }
-#line 5420 "Zend/zend_language_scanner.c"
-yy524:
-               YYDEBUG(524, *YYCURSOR);
+#line 5442 "Zend/zend_language_scanner.c"
+yy528:
+               YYDEBUG(528, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'B') goto yy525;
+               if (yych == 'B') goto yy529;
                if (yych != 'b') goto yy187;
-yy525:
-               YYDEBUG(525, *YYCURSOR);
+yy529:
+               YYDEBUG(529, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'A') goto yy526;
+               if (yych == 'A') goto yy530;
                if (yych != 'a') goto yy187;
-yy526:
-               YYDEBUG(526, *YYCURSOR);
+yy530:
+               YYDEBUG(530, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'L') goto yy527;
+               if (yych == 'L') goto yy531;
                if (yych != 'l') goto yy187;
-yy527:
-               YYDEBUG(527, *YYCURSOR);
+yy531:
+               YYDEBUG(531, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(528, *YYCURSOR);
+               YYDEBUG(532, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1282 "Zend/zend_language_scanner.l"
                {
        return T_GLOBAL;
 }
-#line 5448 "Zend/zend_language_scanner.c"
-yy529:
-               YYDEBUG(529, *YYCURSOR);
+#line 5470 "Zend/zend_language_scanner.c"
+yy533:
+               YYDEBUG(533, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == '<') goto yy537;
+               if (yych == '<') goto yy541;
                goto yy194;
-yy530:
-               YYDEBUG(530, *YYCURSOR);
+yy534:
+               YYDEBUG(534, *YYCURSOR);
                yych = *++YYCURSOR;
                goto yy181;
-yy531:
-               YYDEBUG(531, *YYCURSOR);
+yy535:
+               YYDEBUG(535, *YYCURSOR);
                yych = *++YYCURSOR;
                goto yy179;
-yy532:
-               YYDEBUG(532, *YYCURSOR);
+yy536:
+               YYDEBUG(536, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy533;
+               if (yych == 'E') goto yy537;
                if (yych != 'e') goto yy187;
-yy533:
-               YYDEBUG(533, *YYCURSOR);
+yy537:
+               YYDEBUG(537, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'A') goto yy534;
+               if (yych == 'A') goto yy538;
                if (yych != 'a') goto yy187;
-yy534:
-               YYDEBUG(534, *YYCURSOR);
+yy538:
+               YYDEBUG(538, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'K') goto yy535;
+               if (yych == 'K') goto yy539;
                if (yych != 'k') goto yy187;
-yy535:
-               YYDEBUG(535, *YYCURSOR);
+yy539:
+               YYDEBUG(539, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(536, *YYCURSOR);
+               YYDEBUG(540, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1130 "Zend/zend_language_scanner.l"
                {
        return T_BREAK;
 }
-#line 5489 "Zend/zend_language_scanner.c"
-yy537:
-               YYDEBUG(537, *YYCURSOR);
+#line 5511 "Zend/zend_language_scanner.c"
+yy541:
+               YYDEBUG(541, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == '<') goto yy266;
+               if (yych == '<') goto yy270;
                goto yy194;
-yy538:
-               YYDEBUG(538, *YYCURSOR);
+yy542:
+               YYDEBUG(542, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'A') goto yy545;
-               if (yych == 'a') goto yy545;
+               if (yych == 'A') goto yy549;
+               if (yych == 'a') goto yy549;
                goto yy187;
-yy539:
-               YYDEBUG(539, *YYCURSOR);
+yy543:
+               YYDEBUG(543, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'I') goto yy540;
+               if (yych == 'I') goto yy544;
                if (yych != 'i') goto yy187;
-yy540:
-               YYDEBUG(540, *YYCURSOR);
+yy544:
+               YYDEBUG(544, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'T') goto yy541;
+               if (yych == 'T') goto yy545;
                if (yych != 't') goto yy187;
-yy541:
-               YYDEBUG(541, *YYCURSOR);
+yy545:
+               YYDEBUG(545, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'C') goto yy542;
+               if (yych == 'C') goto yy546;
                if (yych != 'c') goto yy187;
-yy542:
-               YYDEBUG(542, *YYCURSOR);
+yy546:
+               YYDEBUG(546, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'H') goto yy543;
+               if (yych == 'H') goto yy547;
                if (yych != 'h') goto yy187;
-yy543:
-               YYDEBUG(543, *YYCURSOR);
+yy547:
+               YYDEBUG(547, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(544, *YYCURSOR);
+               YYDEBUG(548, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1114 "Zend/zend_language_scanner.l"
                {
        return T_SWITCH;
 }
-#line 5533 "Zend/zend_language_scanner.c"
-yy545:
-               YYDEBUG(545, *YYCURSOR);
+#line 5555 "Zend/zend_language_scanner.c"
+yy549:
+               YYDEBUG(549, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'T') goto yy546;
+               if (yych == 'T') goto yy550;
                if (yych != 't') goto yy187;
-yy546:
-               YYDEBUG(546, *YYCURSOR);
+yy550:
+               YYDEBUG(550, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'I') goto yy547;
+               if (yych == 'I') goto yy551;
                if (yych != 'i') goto yy187;
-yy547:
-               YYDEBUG(547, *YYCURSOR);
+yy551:
+               YYDEBUG(551, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'C') goto yy548;
+               if (yych == 'C') goto yy552;
                if (yych != 'c') goto yy187;
-yy548:
-               YYDEBUG(548, *YYCURSOR);
+yy552:
+               YYDEBUG(552, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(549, *YYCURSOR);
+               YYDEBUG(553, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1298 "Zend/zend_language_scanner.l"
                {
        return T_STATIC;
 }
-#line 5561 "Zend/zend_language_scanner.c"
-yy550:
-               YYDEBUG(550, *YYCURSOR);
+#line 5583 "Zend/zend_language_scanner.c"
+yy554:
+               YYDEBUG(554, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'S') goto yy561;
-               if (yych == 's') goto yy561;
+               if (yych == 'S') goto yy565;
+               if (yych == 's') goto yy565;
                goto yy187;
-yy551:
-               YYDEBUG(551, *YYCURSOR);
+yy555:
+               YYDEBUG(555, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'D') goto yy559;
-               if (yych == 'd') goto yy559;
+               if (yych == 'D') goto yy563;
+               if (yych == 'd') goto yy563;
                goto yy187;
-yy552:
-               YYDEBUG(552, *YYCURSOR);
+yy556:
+               YYDEBUG(556, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'R') goto yy555;
-               if (yych == 'r') goto yy555;
+               if (yych == 'R') goto yy559;
+               if (yych == 'r') goto yy559;
                goto yy187;
-yy553:
-               YYDEBUG(553, *YYCURSOR);
+yy557:
+               YYDEBUG(557, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(554, *YYCURSOR);
+               YYDEBUG(558, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1110 "Zend/zend_language_scanner.l"
                {
        return T_AS;
 }
-#line 5592 "Zend/zend_language_scanner.c"
-yy555:
-               YYDEBUG(555, *YYCURSOR);
+#line 5614 "Zend/zend_language_scanner.c"
+yy559:
+               YYDEBUG(559, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'A') goto yy556;
+               if (yych == 'A') goto yy560;
                if (yych != 'a') goto yy187;
-yy556:
-               YYDEBUG(556, *YYCURSOR);
+yy560:
+               YYDEBUG(560, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'Y') goto yy557;
+               if (yych == 'Y') goto yy561;
                if (yych != 'y') goto yy187;
-yy557:
-               YYDEBUG(557, *YYCURSOR);
+yy561:
+               YYDEBUG(561, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(558, *YYCURSOR);
+               YYDEBUG(562, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1334 "Zend/zend_language_scanner.l"
                {
        return T_ARRAY;
 }
-#line 5615 "Zend/zend_language_scanner.c"
-yy559:
-               YYDEBUG(559, *YYCURSOR);
+#line 5637 "Zend/zend_language_scanner.c"
+yy563:
+               YYDEBUG(563, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(560, *YYCURSOR);
+               YYDEBUG(564, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1430 "Zend/zend_language_scanner.l"
+#line 1438 "Zend/zend_language_scanner.l"
                {
        return T_LOGICAL_AND;
 }
-#line 5628 "Zend/zend_language_scanner.c"
-yy561:
-               YYDEBUG(561, *YYCURSOR);
+#line 5650 "Zend/zend_language_scanner.c"
+yy565:
+               YYDEBUG(565, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'T') goto yy562;
+               if (yych == 'T') goto yy566;
                if (yych != 't') goto yy187;
-yy562:
-               YYDEBUG(562, *YYCURSOR);
+yy566:
+               YYDEBUG(566, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'R') goto yy563;
+               if (yych == 'R') goto yy567;
                if (yych != 'r') goto yy187;
-yy563:
-               YYDEBUG(563, *YYCURSOR);
+yy567:
+               YYDEBUG(567, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'A') goto yy564;
+               if (yych == 'A') goto yy568;
                if (yych != 'a') goto yy187;
-yy564:
-               YYDEBUG(564, *YYCURSOR);
+yy568:
+               YYDEBUG(568, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'C') goto yy565;
+               if (yych == 'C') goto yy569;
                if (yych != 'c') goto yy187;
-yy565:
-               YYDEBUG(565, *YYCURSOR);
+yy569:
+               YYDEBUG(569, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'T') goto yy566;
+               if (yych == 'T') goto yy570;
                if (yych != 't') goto yy187;
-yy566:
-               YYDEBUG(566, *YYCURSOR);
+yy570:
+               YYDEBUG(570, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(567, *YYCURSOR);
+               YYDEBUG(571, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1302 "Zend/zend_language_scanner.l"
                {
        return T_ABSTRACT;
 }
-#line 5666 "Zend/zend_language_scanner.c"
-yy568:
-               YYDEBUG(568, *YYCURSOR);
+#line 5688 "Zend/zend_language_scanner.c"
+yy572:
+               YYDEBUG(572, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'I') goto yy569;
+               if (yych == 'I') goto yy573;
                if (yych != 'i') goto yy187;
-yy569:
-               YYDEBUG(569, *YYCURSOR);
+yy573:
+               YYDEBUG(573, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'L') goto yy570;
+               if (yych == 'L') goto yy574;
                if (yych != 'l') goto yy187;
-yy570:
-               YYDEBUG(570, *YYCURSOR);
+yy574:
+               YYDEBUG(574, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy571;
+               if (yych == 'E') goto yy575;
                if (yych != 'e') goto yy187;
-yy571:
-               YYDEBUG(571, *YYCURSOR);
+yy575:
+               YYDEBUG(575, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(572, *YYCURSOR);
+               YYDEBUG(576, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1070 "Zend/zend_language_scanner.l"
                {
        return T_WHILE;
 }
-#line 5694 "Zend/zend_language_scanner.c"
-yy573:
-               YYDEBUG(573, *YYCURSOR);
+#line 5716 "Zend/zend_language_scanner.c"
+yy577:
+               YYDEBUG(577, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(574, *YYCURSOR);
+               YYDEBUG(578, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1054 "Zend/zend_language_scanner.l"
                {
        return T_IF;
 }
-#line 5707 "Zend/zend_language_scanner.c"
-yy575:
-               YYDEBUG(575, *YYCURSOR);
+#line 5729 "Zend/zend_language_scanner.c"
+yy579:
+               YYDEBUG(579, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'P') goto yy617;
-               if (yych == 'p') goto yy617;
+               if (yych == 'P') goto yy621;
+               if (yych == 'p') goto yy621;
                goto yy187;
-yy576:
-               YYDEBUG(576, *YYCURSOR);
+yy580:
+               YYDEBUG(580, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych <= 'T') {
                        if (yych <= 'C') {
                                if (yych <= 'B') goto yy187;
-                               goto yy584;
+                               goto yy588;
                        } else {
                                if (yych <= 'R') goto yy187;
-                               if (yych <= 'S') goto yy582;
-                               goto yy583;
+                               if (yych <= 'S') goto yy586;
+                               goto yy587;
                        }
                } else {
                        if (yych <= 'r') {
-                               if (yych == 'c') goto yy584;
+                               if (yych == 'c') goto yy588;
                                goto yy187;
                        } else {
-                               if (yych <= 's') goto yy582;
-                               if (yych <= 't') goto yy583;
+                               if (yych <= 's') goto yy586;
+                               if (yych <= 't') goto yy587;
                                goto yy187;
                        }
                }
-yy577:
-               YYDEBUG(577, *YYCURSOR);
+yy581:
+               YYDEBUG(581, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'S') goto yy578;
+               if (yych == 'S') goto yy582;
                if (yych != 's') goto yy187;
-yy578:
-               YYDEBUG(578, *YYCURSOR);
+yy582:
+               YYDEBUG(582, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy579;
+               if (yych == 'E') goto yy583;
                if (yych != 'e') goto yy187;
-yy579:
-               YYDEBUG(579, *YYCURSOR);
+yy583:
+               YYDEBUG(583, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'T') goto yy580;
+               if (yych == 'T') goto yy584;
                if (yych != 't') goto yy187;
-yy580:
-               YYDEBUG(580, *YYCURSOR);
+yy584:
+               YYDEBUG(584, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(581, *YYCURSOR);
+               YYDEBUG(585, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1286 "Zend/zend_language_scanner.l"
                {
        return T_ISSET;
 }
-#line 5763 "Zend/zend_language_scanner.c"
-yy582:
-               YYDEBUG(582, *YYCURSOR);
+#line 5785 "Zend/zend_language_scanner.c"
+yy586:
+               YYDEBUG(586, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'T') goto yy603;
-               if (yych == 't') goto yy603;
+               if (yych == 'T') goto yy607;
+               if (yych == 't') goto yy607;
                goto yy187;
-yy583:
-               YYDEBUG(583, *YYCURSOR);
+yy587:
+               YYDEBUG(587, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy596;
-               if (yych == 'e') goto yy596;
+               if (yych == 'E') goto yy600;
+               if (yych == 'e') goto yy600;
                goto yy187;
-yy584:
-               YYDEBUG(584, *YYCURSOR);
+yy588:
+               YYDEBUG(588, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'L') goto yy585;
+               if (yych == 'L') goto yy589;
                if (yych != 'l') goto yy187;
-yy585:
-               YYDEBUG(585, *YYCURSOR);
+yy589:
+               YYDEBUG(589, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'U') goto yy586;
+               if (yych == 'U') goto yy590;
                if (yych != 'u') goto yy187;
-yy586:
-               YYDEBUG(586, *YYCURSOR);
+yy590:
+               YYDEBUG(590, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'D') goto yy587;
+               if (yych == 'D') goto yy591;
                if (yych != 'd') goto yy187;
-yy587:
-               YYDEBUG(587, *YYCURSOR);
+yy591:
+               YYDEBUG(591, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy588;
+               if (yych == 'E') goto yy592;
                if (yych != 'e') goto yy187;
-yy588:
-               YYDEBUG(588, *YYCURSOR);
+yy592:
+               YYDEBUG(592, *YYCURSOR);
                ++YYCURSOR;
                if ((yych = *YYCURSOR) <= '^') {
                        if (yych <= '9') {
                                if (yych >= '0') goto yy186;
                        } else {
-                               if (yych <= '@') goto yy589;
+                               if (yych <= '@') goto yy593;
                                if (yych <= 'Z') goto yy186;
                        }
                } else {
                        if (yych <= '`') {
-                               if (yych <= '_') goto yy590;
+                               if (yych <= '_') goto yy594;
                        } else {
                                if (yych <= 'z') goto yy186;
                                if (yych >= 0x7F) goto yy186;
                        }
                }
-yy589:
-               YYDEBUG(589, *YYCURSOR);
+yy593:
+               YYDEBUG(593, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1254 "Zend/zend_language_scanner.l"
                {
        return T_INCLUDE;
 }
-#line 5821 "Zend/zend_language_scanner.c"
-yy590:
-               YYDEBUG(590, *YYCURSOR);
+#line 5843 "Zend/zend_language_scanner.c"
+yy594:
+               YYDEBUG(594, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'O') goto yy591;
+               if (yych == 'O') goto yy595;
                if (yych != 'o') goto yy187;
-yy591:
-               YYDEBUG(591, *YYCURSOR);
+yy595:
+               YYDEBUG(595, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'N') goto yy592;
+               if (yych == 'N') goto yy596;
                if (yych != 'n') goto yy187;
-yy592:
-               YYDEBUG(592, *YYCURSOR);
+yy596:
+               YYDEBUG(596, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'C') goto yy593;
+               if (yych == 'C') goto yy597;
                if (yych != 'c') goto yy187;
-yy593:
-               YYDEBUG(593, *YYCURSOR);
+yy597:
+               YYDEBUG(597, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy594;
+               if (yych == 'E') goto yy598;
                if (yych != 'e') goto yy187;
-yy594:
-               YYDEBUG(594, *YYCURSOR);
+yy598:
+               YYDEBUG(598, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(595, *YYCURSOR);
+               YYDEBUG(599, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1258 "Zend/zend_language_scanner.l"
                {
        return T_INCLUDE_ONCE;
 }
-#line 5854 "Zend/zend_language_scanner.c"
-yy596:
-               YYDEBUG(596, *YYCURSOR);
+#line 5876 "Zend/zend_language_scanner.c"
+yy600:
+               YYDEBUG(600, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'R') goto yy597;
+               if (yych == 'R') goto yy601;
                if (yych != 'r') goto yy187;
-yy597:
-               YYDEBUG(597, *YYCURSOR);
+yy601:
+               YYDEBUG(601, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'F') goto yy598;
+               if (yych == 'F') goto yy602;
                if (yych != 'f') goto yy187;
-yy598:
-               YYDEBUG(598, *YYCURSOR);
+yy602:
+               YYDEBUG(602, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'A') goto yy599;
+               if (yych == 'A') goto yy603;
                if (yych != 'a') goto yy187;
-yy599:
-               YYDEBUG(599, *YYCURSOR);
+yy603:
+               YYDEBUG(603, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'C') goto yy600;
+               if (yych == 'C') goto yy604;
                if (yych != 'c') goto yy187;
-yy600:
-               YYDEBUG(600, *YYCURSOR);
+yy604:
+               YYDEBUG(604, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy601;
+               if (yych == 'E') goto yy605;
                if (yych != 'e') goto yy187;
-yy601:
-               YYDEBUG(601, *YYCURSOR);
+yy605:
+               YYDEBUG(605, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(602, *YYCURSOR);
+               YYDEBUG(606, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1154 "Zend/zend_language_scanner.l"
                {
        return T_INTERFACE;
 }
-#line 5892 "Zend/zend_language_scanner.c"
-yy603:
-               YYDEBUG(603, *YYCURSOR);
+#line 5914 "Zend/zend_language_scanner.c"
+yy607:
+               YYDEBUG(607, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych <= 'E') {
-                       if (yych == 'A') goto yy604;
+                       if (yych == 'A') goto yy608;
                        if (yych <= 'D') goto yy187;
-                       goto yy605;
+                       goto yy609;
                } else {
                        if (yych <= 'a') {
                                if (yych <= '`') goto yy187;
                        } else {
-                               if (yych == 'e') goto yy605;
+                               if (yych == 'e') goto yy609;
                                goto yy187;
                        }
                }
-yy604:
-               YYDEBUG(604, *YYCURSOR);
+yy608:
+               YYDEBUG(608, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'N') goto yy611;
-               if (yych == 'n') goto yy611;
+               if (yych == 'N') goto yy615;
+               if (yych == 'n') goto yy615;
                goto yy187;
-yy605:
-               YYDEBUG(605, *YYCURSOR);
+yy609:
+               YYDEBUG(609, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'A') goto yy606;
+               if (yych == 'A') goto yy610;
                if (yych != 'a') goto yy187;
-yy606:
-               YYDEBUG(606, *YYCURSOR);
+yy610:
+               YYDEBUG(610, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'D') goto yy607;
+               if (yych == 'D') goto yy611;
                if (yych != 'd') goto yy187;
-yy607:
-               YYDEBUG(607, *YYCURSOR);
+yy611:
+               YYDEBUG(611, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'O') goto yy608;
+               if (yych == 'O') goto yy612;
                if (yych != 'o') goto yy187;
-yy608:
-               YYDEBUG(608, *YYCURSOR);
+yy612:
+               YYDEBUG(612, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'F') goto yy609;
+               if (yych == 'F') goto yy613;
                if (yych != 'f') goto yy187;
-yy609:
-               YYDEBUG(609, *YYCURSOR);
+yy613:
+               YYDEBUG(613, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(610, *YYCURSOR);
+               YYDEBUG(614, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1278 "Zend/zend_language_scanner.l"
                {
         return T_INSTEADOF;
 }
-#line 5946 "Zend/zend_language_scanner.c"
-yy611:
-               YYDEBUG(611, *YYCURSOR);
+#line 5968 "Zend/zend_language_scanner.c"
+yy615:
+               YYDEBUG(615, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'C') goto yy612;
+               if (yych == 'C') goto yy616;
                if (yych != 'c') goto yy187;
-yy612:
-               YYDEBUG(612, *YYCURSOR);
+yy616:
+               YYDEBUG(616, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy613;
+               if (yych == 'E') goto yy617;
                if (yych != 'e') goto yy187;
-yy613:
-               YYDEBUG(613, *YYCURSOR);
+yy617:
+               YYDEBUG(617, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'O') goto yy614;
+               if (yych == 'O') goto yy618;
                if (yych != 'o') goto yy187;
-yy614:
-               YYDEBUG(614, *YYCURSOR);
+yy618:
+               YYDEBUG(618, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'F') goto yy615;
+               if (yych == 'F') goto yy619;
                if (yych != 'f') goto yy187;
-yy615:
-               YYDEBUG(615, *YYCURSOR);
+yy619:
+               YYDEBUG(619, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(616, *YYCURSOR);
+               YYDEBUG(620, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1106 "Zend/zend_language_scanner.l"
                {
        return T_INSTANCEOF;
 }
-#line 5979 "Zend/zend_language_scanner.c"
-yy617:
-               YYDEBUG(617, *YYCURSOR);
+#line 6001 "Zend/zend_language_scanner.c"
+yy621:
+               YYDEBUG(621, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'L') goto yy618;
+               if (yych == 'L') goto yy622;
                if (yych != 'l') goto yy187;
-yy618:
-               YYDEBUG(618, *YYCURSOR);
+yy622:
+               YYDEBUG(622, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy619;
+               if (yych == 'E') goto yy623;
                if (yych != 'e') goto yy187;
-yy619:
-               YYDEBUG(619, *YYCURSOR);
+yy623:
+               YYDEBUG(623, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'M') goto yy620;
+               if (yych == 'M') goto yy624;
                if (yych != 'm') goto yy187;
-yy620:
-               YYDEBUG(620, *YYCURSOR);
+yy624:
+               YYDEBUG(624, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy621;
+               if (yych == 'E') goto yy625;
                if (yych != 'e') goto yy187;
-yy621:
-               YYDEBUG(621, *YYCURSOR);
+yy625:
+               YYDEBUG(625, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'N') goto yy622;
+               if (yych == 'N') goto yy626;
                if (yych != 'n') goto yy187;
-yy622:
-               YYDEBUG(622, *YYCURSOR);
+yy626:
+               YYDEBUG(626, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'T') goto yy623;
+               if (yych == 'T') goto yy627;
                if (yych != 't') goto yy187;
-yy623:
-               YYDEBUG(623, *YYCURSOR);
+yy627:
+               YYDEBUG(627, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'S') goto yy624;
+               if (yych == 'S') goto yy628;
                if (yych != 's') goto yy187;
-yy624:
-               YYDEBUG(624, *YYCURSOR);
+yy628:
+               YYDEBUG(628, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(625, *YYCURSOR);
+               YYDEBUG(629, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1166 "Zend/zend_language_scanner.l"
                {
        return T_IMPLEMENTS;
 }
-#line 6027 "Zend/zend_language_scanner.c"
-yy626:
-               YYDEBUG(626, *YYCURSOR);
+#line 6049 "Zend/zend_language_scanner.c"
+yy630:
+               YYDEBUG(630, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'R') goto yy634;
-               if (yych == 'r') goto yy634;
+               if (yych == 'R') goto yy638;
+               if (yych == 'r') goto yy638;
                goto yy187;
-yy627:
-               YYDEBUG(627, *YYCURSOR);
+yy631:
+               YYDEBUG(631, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych <= 'Y') {
-                       if (yych == 'A') goto yy630;
+                       if (yych == 'A') goto yy634;
                        if (yych <= 'X') goto yy187;
                } else {
                        if (yych <= 'a') {
                                if (yych <= '`') goto yy187;
-                               goto yy630;
+                               goto yy634;
                        } else {
                                if (yych != 'y') goto yy187;
                        }
                }
-               YYDEBUG(628, *YYCURSOR);
+               YYDEBUG(632, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(629, *YYCURSOR);
+               YYDEBUG(633, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1038 "Zend/zend_language_scanner.l"
                {
        return T_TRY;
 }
-#line 6059 "Zend/zend_language_scanner.c"
-yy630:
-               YYDEBUG(630, *YYCURSOR);
+#line 6081 "Zend/zend_language_scanner.c"
+yy634:
+               YYDEBUG(634, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'I') goto yy631;
+               if (yych == 'I') goto yy635;
                if (yych != 'i') goto yy187;
-yy631:
-               YYDEBUG(631, *YYCURSOR);
+yy635:
+               YYDEBUG(635, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'T') goto yy632;
+               if (yych == 'T') goto yy636;
                if (yych != 't') goto yy187;
-yy632:
-               YYDEBUG(632, *YYCURSOR);
+yy636:
+               YYDEBUG(636, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(633, *YYCURSOR);
+               YYDEBUG(637, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1158 "Zend/zend_language_scanner.l"
                {
        return T_TRAIT;
 }
-#line 6082 "Zend/zend_language_scanner.c"
-yy634:
-               YYDEBUG(634, *YYCURSOR);
+#line 6104 "Zend/zend_language_scanner.c"
+yy638:
+               YYDEBUG(638, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'O') goto yy635;
+               if (yych == 'O') goto yy639;
                if (yych != 'o') goto yy187;
-yy635:
-               YYDEBUG(635, *YYCURSOR);
+yy639:
+               YYDEBUG(639, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'W') goto yy636;
+               if (yych == 'W') goto yy640;
                if (yych != 'w') goto yy187;
-yy636:
-               YYDEBUG(636, *YYCURSOR);
+yy640:
+               YYDEBUG(640, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(637, *YYCURSOR);
+               YYDEBUG(641, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1050 "Zend/zend_language_scanner.l"
                {
        return T_THROW;
 }
-#line 6105 "Zend/zend_language_scanner.c"
-yy638:
-               YYDEBUG(638, *YYCURSOR);
+#line 6127 "Zend/zend_language_scanner.c"
+yy642:
+               YYDEBUG(642, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy639;
+               if (yych == 'E') goto yy643;
                if (yych != 'e') goto yy187;
-yy639:
-               YYDEBUG(639, *YYCURSOR);
+yy643:
+               YYDEBUG(643, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'L') goto yy640;
+               if (yych == 'L') goto yy644;
                if (yych != 'l') goto yy187;
-yy640:
-               YYDEBUG(640, *YYCURSOR);
+yy644:
+               YYDEBUG(644, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'D') goto yy641;
+               if (yych == 'D') goto yy645;
                if (yych != 'd') goto yy187;
-yy641:
-               YYDEBUG(641, *YYCURSOR);
+yy645:
+               YYDEBUG(645, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(642, *YYCURSOR);
+               YYDEBUG(646, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1034 "Zend/zend_language_scanner.l"
                {
        return T_YIELD;
 }
-#line 6133 "Zend/zend_language_scanner.c"
-yy643:
-               YYDEBUG(643, *YYCURSOR);
+#line 6155 "Zend/zend_language_scanner.c"
+yy647:
+               YYDEBUG(647, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych <= 'T') {
-                       if (yych == 'Q') goto yy645;
+                       if (yych == 'Q') goto yy649;
                        if (yych <= 'S') goto yy187;
                } else {
                        if (yych <= 'q') {
                                if (yych <= 'p') goto yy187;
-                               goto yy645;
+                               goto yy649;
                        } else {
                                if (yych != 't') goto yy187;
                        }
                }
-               YYDEBUG(644, *YYCURSOR);
+               YYDEBUG(648, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'U') goto yy657;
-               if (yych == 'u') goto yy657;
+               if (yych == 'U') goto yy661;
+               if (yych == 'u') goto yy661;
                goto yy187;
-yy645:
-               YYDEBUG(645, *YYCURSOR);
+yy649:
+               YYDEBUG(649, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'U') goto yy646;
+               if (yych == 'U') goto yy650;
                if (yych != 'u') goto yy187;
-yy646:
-               YYDEBUG(646, *YYCURSOR);
+yy650:
+               YYDEBUG(650, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'I') goto yy647;
+               if (yych == 'I') goto yy651;
                if (yych != 'i') goto yy187;
-yy647:
-               YYDEBUG(647, *YYCURSOR);
+yy651:
+               YYDEBUG(651, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'R') goto yy648;
+               if (yych == 'R') goto yy652;
                if (yych != 'r') goto yy187;
-yy648:
-               YYDEBUG(648, *YYCURSOR);
+yy652:
+               YYDEBUG(652, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy649;
+               if (yych == 'E') goto yy653;
                if (yych != 'e') goto yy187;
-yy649:
-               YYDEBUG(649, *YYCURSOR);
+yy653:
+               YYDEBUG(653, *YYCURSOR);
                ++YYCURSOR;
                if ((yych = *YYCURSOR) <= '^') {
                        if (yych <= '9') {
                                if (yych >= '0') goto yy186;
                        } else {
-                               if (yych <= '@') goto yy650;
+                               if (yych <= '@') goto yy654;
                                if (yych <= 'Z') goto yy186;
                        }
                } else {
                        if (yych <= '`') {
-                               if (yych <= '_') goto yy651;
+                               if (yych <= '_') goto yy655;
                        } else {
                                if (yych <= 'z') goto yy186;
                                if (yych >= 0x7F) goto yy186;
                        }
                }
-yy650:
-               YYDEBUG(650, *YYCURSOR);
+yy654:
+               YYDEBUG(654, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1262 "Zend/zend_language_scanner.l"
                {
        return T_REQUIRE;
 }
-#line 6198 "Zend/zend_language_scanner.c"
-yy651:
-               YYDEBUG(651, *YYCURSOR);
+#line 6220 "Zend/zend_language_scanner.c"
+yy655:
+               YYDEBUG(655, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'O') goto yy652;
+               if (yych == 'O') goto yy656;
                if (yych != 'o') goto yy187;
-yy652:
-               YYDEBUG(652, *YYCURSOR);
+yy656:
+               YYDEBUG(656, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'N') goto yy653;
+               if (yych == 'N') goto yy657;
                if (yych != 'n') goto yy187;
-yy653:
-               YYDEBUG(653, *YYCURSOR);
+yy657:
+               YYDEBUG(657, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'C') goto yy654;
+               if (yych == 'C') goto yy658;
                if (yych != 'c') goto yy187;
-yy654:
-               YYDEBUG(654, *YYCURSOR);
+yy658:
+               YYDEBUG(658, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy655;
+               if (yych == 'E') goto yy659;
                if (yych != 'e') goto yy187;
-yy655:
-               YYDEBUG(655, *YYCURSOR);
+yy659:
+               YYDEBUG(659, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(656, *YYCURSOR);
+               YYDEBUG(660, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1266 "Zend/zend_language_scanner.l"
                {
        return T_REQUIRE_ONCE;
 }
-#line 6231 "Zend/zend_language_scanner.c"
-yy657:
-               YYDEBUG(657, *YYCURSOR);
+#line 6253 "Zend/zend_language_scanner.c"
+yy661:
+               YYDEBUG(661, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'R') goto yy658;
+               if (yych == 'R') goto yy662;
                if (yych != 'r') goto yy187;
-yy658:
-               YYDEBUG(658, *YYCURSOR);
+yy662:
+               YYDEBUG(662, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'N') goto yy659;
+               if (yych == 'N') goto yy663;
                if (yych != 'n') goto yy187;
-yy659:
-               YYDEBUG(659, *YYCURSOR);
+yy663:
+               YYDEBUG(663, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(660, *YYCURSOR);
+               YYDEBUG(664, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1030 "Zend/zend_language_scanner.l"
                {
        return T_RETURN;
 }
-#line 6254 "Zend/zend_language_scanner.c"
-yy661:
-               YYDEBUG(661, *YYCURSOR);
+#line 6276 "Zend/zend_language_scanner.c"
+yy665:
+               YYDEBUG(665, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych <= 'T') {
                        if (yych <= 'L') {
                                if (yych <= 'K') goto yy187;
-                               goto yy684;
+                               goto yy688;
                        } else {
                                if (yych <= 'R') goto yy187;
-                               if (yych <= 'S') goto yy683;
-                               goto yy682;
+                               if (yych <= 'S') goto yy687;
+                               goto yy686;
                        }
                } else {
                        if (yych <= 'r') {
-                               if (yych == 'l') goto yy684;
+                               if (yych == 'l') goto yy688;
                                goto yy187;
                        } else {
-                               if (yych <= 's') goto yy683;
-                               if (yych <= 't') goto yy682;
+                               if (yych <= 's') goto yy687;
+                               if (yych <= 't') goto yy686;
                                goto yy187;
                        }
                }
-yy662:
-               YYDEBUG(662, *YYCURSOR);
+yy666:
+               YYDEBUG(666, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych <= 'O') {
-                       if (yych == 'A') goto yy674;
+                       if (yych == 'A') goto yy678;
                        if (yych <= 'N') goto yy187;
-                       goto yy675;
+                       goto yy679;
                } else {
                        if (yych <= 'a') {
                                if (yych <= '`') goto yy187;
-                               goto yy674;
+                               goto yy678;
                        } else {
-                               if (yych == 'o') goto yy675;
+                               if (yych == 'o') goto yy679;
                                goto yy187;
                        }
                }
-yy663:
-               YYDEBUG(663, *YYCURSOR);
+yy667:
+               YYDEBUG(667, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'N') goto yy664;
+               if (yych == 'N') goto yy668;
                if (yych != 'n') goto yy187;
-yy664:
-               YYDEBUG(664, *YYCURSOR);
+yy668:
+               YYDEBUG(668, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych <= 'T') {
                        if (yych <= 'R') goto yy187;
-                       if (yych >= 'T') goto yy666;
+                       if (yych >= 'T') goto yy670;
                } else {
                        if (yych <= 'r') goto yy187;
-                       if (yych <= 's') goto yy665;
-                       if (yych <= 't') goto yy666;
+                       if (yych <= 's') goto yy669;
+                       if (yych <= 't') goto yy670;
                        goto yy187;
                }
-yy665:
-               YYDEBUG(665, *YYCURSOR);
+yy669:
+               YYDEBUG(669, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'T') goto yy672;
-               if (yych == 't') goto yy672;
+               if (yych == 'T') goto yy676;
+               if (yych == 't') goto yy676;
                goto yy187;
-yy666:
-               YYDEBUG(666, *YYCURSOR);
+yy670:
+               YYDEBUG(670, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'I') goto yy667;
+               if (yych == 'I') goto yy671;
                if (yych != 'i') goto yy187;
-yy667:
-               YYDEBUG(667, *YYCURSOR);
+yy671:
+               YYDEBUG(671, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'N') goto yy668;
+               if (yych == 'N') goto yy672;
                if (yych != 'n') goto yy187;
-yy668:
-               YYDEBUG(668, *YYCURSOR);
+yy672:
+               YYDEBUG(672, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'U') goto yy669;
+               if (yych == 'U') goto yy673;
                if (yych != 'u') goto yy187;
-yy669:
-               YYDEBUG(669, *YYCURSOR);
+yy673:
+               YYDEBUG(673, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy670;
+               if (yych == 'E') goto yy674;
                if (yych != 'e') goto yy187;
-yy670:
-               YYDEBUG(670, *YYCURSOR);
+yy674:
+               YYDEBUG(674, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(671, *YYCURSOR);
+               YYDEBUG(675, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1134 "Zend/zend_language_scanner.l"
                {
        return T_CONTINUE;
 }
-#line 6348 "Zend/zend_language_scanner.c"
-yy672:
-               YYDEBUG(672, *YYCURSOR);
+#line 6370 "Zend/zend_language_scanner.c"
+yy676:
+               YYDEBUG(676, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(673, *YYCURSOR);
+               YYDEBUG(677, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1026 "Zend/zend_language_scanner.l"
                {
        return T_CONST;
 }
-#line 6361 "Zend/zend_language_scanner.c"
-yy674:
-               YYDEBUG(674, *YYCURSOR);
+#line 6383 "Zend/zend_language_scanner.c"
+yy678:
+               YYDEBUG(678, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'S') goto yy679;
-               if (yych == 's') goto yy679;
+               if (yych == 'S') goto yy683;
+               if (yych == 's') goto yy683;
                goto yy187;
-yy675:
-               YYDEBUG(675, *YYCURSOR);
+yy679:
+               YYDEBUG(679, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'N') goto yy676;
+               if (yych == 'N') goto yy680;
                if (yych != 'n') goto yy187;
-yy676:
-               YYDEBUG(676, *YYCURSOR);
+yy680:
+               YYDEBUG(680, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy677;
+               if (yych == 'E') goto yy681;
                if (yych != 'e') goto yy187;
-yy677:
-               YYDEBUG(677, *YYCURSOR);
+yy681:
+               YYDEBUG(681, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(678, *YYCURSOR);
+               YYDEBUG(682, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1214 "Zend/zend_language_scanner.l"
                {
        return T_CLONE;
 }
-#line 6390 "Zend/zend_language_scanner.c"
-yy679:
-               YYDEBUG(679, *YYCURSOR);
+#line 6412 "Zend/zend_language_scanner.c"
+yy683:
+               YYDEBUG(683, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'S') goto yy680;
+               if (yych == 'S') goto yy684;
                if (yych != 's') goto yy187;
-yy680:
-               YYDEBUG(680, *YYCURSOR);
+yy684:
+               YYDEBUG(684, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(681, *YYCURSOR);
+               YYDEBUG(685, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1150 "Zend/zend_language_scanner.l"
                {
        return T_CLASS;
 }
-#line 6408 "Zend/zend_language_scanner.c"
-yy682:
-               YYDEBUG(682, *YYCURSOR);
+#line 6430 "Zend/zend_language_scanner.c"
+yy686:
+               YYDEBUG(686, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'C') goto yy693;
-               if (yych == 'c') goto yy693;
+               if (yych == 'C') goto yy697;
+               if (yych == 'c') goto yy697;
                goto yy187;
-yy683:
-               YYDEBUG(683, *YYCURSOR);
+yy687:
+               YYDEBUG(687, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy691;
-               if (yych == 'e') goto yy691;
+               if (yych == 'E') goto yy695;
+               if (yych == 'e') goto yy695;
                goto yy187;
-yy684:
-               YYDEBUG(684, *YYCURSOR);
+yy688:
+               YYDEBUG(688, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'L') goto yy685;
+               if (yych == 'L') goto yy689;
                if (yych != 'l') goto yy187;
-yy685:
-               YYDEBUG(685, *YYCURSOR);
+yy689:
+               YYDEBUG(689, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'A') goto yy686;
+               if (yych == 'A') goto yy690;
                if (yych != 'a') goto yy187;
-yy686:
-               YYDEBUG(686, *YYCURSOR);
+yy690:
+               YYDEBUG(690, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'B') goto yy687;
+               if (yych == 'B') goto yy691;
                if (yych != 'b') goto yy187;
-yy687:
-               YYDEBUG(687, *YYCURSOR);
+yy691:
+               YYDEBUG(691, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'L') goto yy688;
+               if (yych == 'L') goto yy692;
                if (yych != 'l') goto yy187;
-yy688:
-               YYDEBUG(688, *YYCURSOR);
+yy692:
+               YYDEBUG(692, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy689;
+               if (yych == 'E') goto yy693;
                if (yych != 'e') goto yy187;
-yy689:
-               YYDEBUG(689, *YYCURSOR);
+yy693:
+               YYDEBUG(693, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(690, *YYCURSOR);
+               YYDEBUG(694, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1338 "Zend/zend_language_scanner.l"
                {
  return T_CALLABLE;
 }
-#line 6458 "Zend/zend_language_scanner.c"
-yy691:
-               YYDEBUG(691, *YYCURSOR);
+#line 6480 "Zend/zend_language_scanner.c"
+yy695:
+               YYDEBUG(695, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(692, *YYCURSOR);
+               YYDEBUG(696, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1122 "Zend/zend_language_scanner.l"
                {
        return T_CASE;
 }
-#line 6471 "Zend/zend_language_scanner.c"
-yy693:
-               YYDEBUG(693, *YYCURSOR);
+#line 6493 "Zend/zend_language_scanner.c"
+yy697:
+               YYDEBUG(697, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'H') goto yy694;
+               if (yych == 'H') goto yy698;
                if (yych != 'h') goto yy187;
-yy694:
-               YYDEBUG(694, *YYCURSOR);
+yy698:
+               YYDEBUG(698, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(695, *YYCURSOR);
+               YYDEBUG(699, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1042 "Zend/zend_language_scanner.l"
                {
        return T_CATCH;
 }
-#line 6489 "Zend/zend_language_scanner.c"
-yy696:
-               YYDEBUG(696, *YYCURSOR);
+#line 6511 "Zend/zend_language_scanner.c"
+yy700:
+               YYDEBUG(700, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'N') goto yy713;
-               if (yych == 'n') goto yy713;
+               if (yych == 'N') goto yy717;
+               if (yych == 'n') goto yy717;
                goto yy187;
-yy697:
-               YYDEBUG(697, *YYCURSOR);
+yy701:
+               YYDEBUG(701, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'R') goto yy706;
-               if (yych == 'r') goto yy706;
+               if (yych == 'R') goto yy710;
+               if (yych == 'r') goto yy710;
                goto yy187;
-yy698:
-               YYDEBUG(698, *YYCURSOR);
+yy702:
+               YYDEBUG(702, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'N') goto yy699;
+               if (yych == 'N') goto yy703;
                if (yych != 'n') goto yy187;
-yy699:
-               YYDEBUG(699, *YYCURSOR);
+yy703:
+               YYDEBUG(703, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'C') goto yy700;
+               if (yych == 'C') goto yy704;
                if (yych != 'c') goto yy187;
-yy700:
-               YYDEBUG(700, *YYCURSOR);
+yy704:
+               YYDEBUG(704, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'T') goto yy701;
+               if (yych == 'T') goto yy705;
                if (yych != 't') goto yy187;
-yy701:
-               YYDEBUG(701, *YYCURSOR);
+yy705:
+               YYDEBUG(705, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'I') goto yy702;
+               if (yych == 'I') goto yy706;
                if (yych != 'i') goto yy187;
-yy702:
-               YYDEBUG(702, *YYCURSOR);
+yy706:
+               YYDEBUG(706, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'O') goto yy703;
+               if (yych == 'O') goto yy707;
                if (yych != 'o') goto yy187;
-yy703:
-               YYDEBUG(703, *YYCURSOR);
+yy707:
+               YYDEBUG(707, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'N') goto yy704;
+               if (yych == 'N') goto yy708;
                if (yych != 'n') goto yy187;
-yy704:
-               YYDEBUG(704, *YYCURSOR);
+yy708:
+               YYDEBUG(708, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(705, *YYCURSOR);
+               YYDEBUG(709, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1022 "Zend/zend_language_scanner.l"
                {
        return T_FUNCTION;
 }
-#line 6544 "Zend/zend_language_scanner.c"
-yy706:
-               YYDEBUG(706, *YYCURSOR);
+#line 6566 "Zend/zend_language_scanner.c"
+yy710:
+               YYDEBUG(710, *YYCURSOR);
                ++YYCURSOR;
                if ((yych = *YYCURSOR) <= '^') {
                        if (yych <= '@') {
-                               if (yych <= '/') goto yy707;
+                               if (yych <= '/') goto yy711;
                                if (yych <= '9') goto yy186;
                        } else {
-                               if (yych == 'E') goto yy708;
+                               if (yych == 'E') goto yy712;
                                if (yych <= 'Z') goto yy186;
                        }
                } else {
                        if (yych <= 'd') {
                                if (yych != '`') goto yy186;
                        } else {
-                               if (yych <= 'e') goto yy708;
+                               if (yych <= 'e') goto yy712;
                                if (yych <= 'z') goto yy186;
                                if (yych >= 0x7F) goto yy186;
                        }
                }
-yy707:
-               YYDEBUG(707, *YYCURSOR);
+yy711:
+               YYDEBUG(711, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1082 "Zend/zend_language_scanner.l"
                {
        return T_FOR;
 }
-#line 6572 "Zend/zend_language_scanner.c"
-yy708:
-               YYDEBUG(708, *YYCURSOR);
+#line 6594 "Zend/zend_language_scanner.c"
+yy712:
+               YYDEBUG(712, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'A') goto yy709;
+               if (yych == 'A') goto yy713;
                if (yych != 'a') goto yy187;
-yy709:
-               YYDEBUG(709, *YYCURSOR);
+yy713:
+               YYDEBUG(713, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'C') goto yy710;
+               if (yych == 'C') goto yy714;
                if (yych != 'c') goto yy187;
-yy710:
-               YYDEBUG(710, *YYCURSOR);
+yy714:
+               YYDEBUG(714, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'H') goto yy711;
+               if (yych == 'H') goto yy715;
                if (yych != 'h') goto yy187;
-yy711:
-               YYDEBUG(711, *YYCURSOR);
+yy715:
+               YYDEBUG(715, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(712, *YYCURSOR);
+               YYDEBUG(716, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1090 "Zend/zend_language_scanner.l"
                {
        return T_FOREACH;
 }
-#line 6600 "Zend/zend_language_scanner.c"
-yy713:
-               YYDEBUG(713, *YYCURSOR);
+#line 6622 "Zend/zend_language_scanner.c"
+yy717:
+               YYDEBUG(717, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'A') goto yy714;
+               if (yych == 'A') goto yy718;
                if (yych != 'a') goto yy187;
-yy714:
-               YYDEBUG(714, *YYCURSOR);
+yy718:
+               YYDEBUG(718, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'L') goto yy715;
+               if (yych == 'L') goto yy719;
                if (yych != 'l') goto yy187;
-yy715:
-               YYDEBUG(715, *YYCURSOR);
+yy719:
+               YYDEBUG(719, *YYCURSOR);
                ++YYCURSOR;
                if ((yych = *YYCURSOR) <= '^') {
                        if (yych <= '@') {
-                               if (yych <= '/') goto yy716;
+                               if (yych <= '/') goto yy720;
                                if (yych <= '9') goto yy186;
                        } else {
-                               if (yych == 'L') goto yy717;
+                               if (yych == 'L') goto yy721;
                                if (yych <= 'Z') goto yy186;
                        }
                } else {
                        if (yych <= 'k') {
                                if (yych != '`') goto yy186;
                        } else {
-                               if (yych <= 'l') goto yy717;
+                               if (yych <= 'l') goto yy721;
                                if (yych <= 'z') goto yy186;
                                if (yych >= 0x7F) goto yy186;
                        }
                }
-yy716:
-               YYDEBUG(716, *YYCURSOR);
+yy720:
+               YYDEBUG(720, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1306 "Zend/zend_language_scanner.l"
                {
        return T_FINAL;
 }
-#line 6638 "Zend/zend_language_scanner.c"
-yy717:
-               YYDEBUG(717, *YYCURSOR);
+#line 6660 "Zend/zend_language_scanner.c"
+yy721:
+               YYDEBUG(721, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'Y') goto yy718;
+               if (yych == 'Y') goto yy722;
                if (yych != 'y') goto yy187;
-yy718:
-               YYDEBUG(718, *YYCURSOR);
+yy722:
+               YYDEBUG(722, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(719, *YYCURSOR);
+               YYDEBUG(723, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1046 "Zend/zend_language_scanner.l"
                {
        return T_FINALLY;
 }
-#line 6656 "Zend/zend_language_scanner.c"
-yy720:
-               YYDEBUG(720, *YYCURSOR);
+#line 6678 "Zend/zend_language_scanner.c"
+yy724:
+               YYDEBUG(724, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych <= 'F') {
-                       if (yych == 'C') goto yy726;
+                       if (yych == 'C') goto yy730;
                        if (yych <= 'E') goto yy187;
-                       goto yy727;
+                       goto yy731;
                } else {
                        if (yych <= 'c') {
                                if (yych <= 'b') goto yy187;
-                               goto yy726;
+                               goto yy730;
                        } else {
-                               if (yych == 'f') goto yy727;
+                               if (yych == 'f') goto yy731;
                                goto yy187;
                        }
                }
-yy721:
-               YYDEBUG(721, *YYCURSOR);
+yy725:
+               YYDEBUG(725, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy724;
-               if (yych == 'e') goto yy724;
+               if (yych == 'E') goto yy728;
+               if (yych == 'e') goto yy728;
                goto yy187;
-yy722:
-               YYDEBUG(722, *YYCURSOR);
+yy726:
+               YYDEBUG(726, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(723, *YYCURSOR);
+               YYDEBUG(727, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1078 "Zend/zend_language_scanner.l"
                {
        return T_DO;
 }
-#line 6691 "Zend/zend_language_scanner.c"
-yy724:
-               YYDEBUG(724, *YYCURSOR);
+#line 6713 "Zend/zend_language_scanner.c"
+yy728:
+               YYDEBUG(728, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(725, *YYCURSOR);
+               YYDEBUG(729, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1018 "Zend/zend_language_scanner.l"
                {
        return T_EXIT;
 }
-#line 6704 "Zend/zend_language_scanner.c"
-yy726:
-               YYDEBUG(726, *YYCURSOR);
+#line 6726 "Zend/zend_language_scanner.c"
+yy730:
+               YYDEBUG(730, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'L') goto yy733;
-               if (yych == 'l') goto yy733;
+               if (yych == 'L') goto yy737;
+               if (yych == 'l') goto yy737;
                goto yy187;
-yy727:
-               YYDEBUG(727, *YYCURSOR);
+yy731:
+               YYDEBUG(731, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'A') goto yy728;
+               if (yych == 'A') goto yy732;
                if (yych != 'a') goto yy187;
-yy728:
-               YYDEBUG(728, *YYCURSOR);
+yy732:
+               YYDEBUG(732, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'U') goto yy729;
+               if (yych == 'U') goto yy733;
                if (yych != 'u') goto yy187;
-yy729:
-               YYDEBUG(729, *YYCURSOR);
+yy733:
+               YYDEBUG(733, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'L') goto yy730;
+               if (yych == 'L') goto yy734;
                if (yych != 'l') goto yy187;
-yy730:
-               YYDEBUG(730, *YYCURSOR);
+yy734:
+               YYDEBUG(734, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'T') goto yy731;
+               if (yych == 'T') goto yy735;
                if (yych != 't') goto yy187;
-yy731:
-               YYDEBUG(731, *YYCURSOR);
+yy735:
+               YYDEBUG(735, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(732, *YYCURSOR);
+               YYDEBUG(736, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1126 "Zend/zend_language_scanner.l"
                {
        return T_DEFAULT;
 }
-#line 6743 "Zend/zend_language_scanner.c"
-yy733:
-               YYDEBUG(733, *YYCURSOR);
+#line 6765 "Zend/zend_language_scanner.c"
+yy737:
+               YYDEBUG(737, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'A') goto yy734;
+               if (yych == 'A') goto yy738;
                if (yych != 'a') goto yy187;
-yy734:
-               YYDEBUG(734, *YYCURSOR);
+yy738:
+               YYDEBUG(738, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'R') goto yy735;
+               if (yych == 'R') goto yy739;
                if (yych != 'r') goto yy187;
-yy735:
-               YYDEBUG(735, *YYCURSOR);
+yy739:
+               YYDEBUG(739, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy736;
+               if (yych == 'E') goto yy740;
                if (yych != 'e') goto yy187;
-yy736:
-               YYDEBUG(736, *YYCURSOR);
+yy740:
+               YYDEBUG(740, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(737, *YYCURSOR);
+               YYDEBUG(741, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1098 "Zend/zend_language_scanner.l"
                {
        return T_DECLARE;
 }
-#line 6771 "Zend/zend_language_scanner.c"
-yy738:
-               YYDEBUG(738, *YYCURSOR);
+#line 6793 "Zend/zend_language_scanner.c"
+yy742:
+               YYDEBUG(742, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'H') goto yy800;
-               if (yych == 'h') goto yy800;
+               if (yych == 'H') goto yy804;
+               if (yych == 'h') goto yy804;
                goto yy187;
-yy739:
-               YYDEBUG(739, *YYCURSOR);
+yy743:
+               YYDEBUG(743, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'S') goto yy794;
-               if (yych == 's') goto yy794;
+               if (yych == 'S') goto yy798;
+               if (yych == 's') goto yy798;
                goto yy187;
-yy740:
-               YYDEBUG(740, *YYCURSOR);
+yy744:
+               YYDEBUG(744, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'P') goto yy790;
-               if (yych == 'p') goto yy790;
+               if (yych == 'P') goto yy794;
+               if (yych == 'p') goto yy794;
                goto yy187;
-yy741:
-               YYDEBUG(741, *YYCURSOR);
+yy745:
+               YYDEBUG(745, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'D') goto yy756;
-               if (yych == 'd') goto yy756;
+               if (yych == 'D') goto yy760;
+               if (yych == 'd') goto yy760;
                goto yy187;
-yy742:
-               YYDEBUG(742, *YYCURSOR);
+yy746:
+               YYDEBUG(746, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'A') goto yy753;
-               if (yych == 'a') goto yy753;
+               if (yych == 'A') goto yy757;
+               if (yych == 'a') goto yy757;
                goto yy187;
-yy743:
-               YYDEBUG(743, *YYCURSOR);
+yy747:
+               YYDEBUG(747, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yych <= 'T') {
-                       if (yych == 'I') goto yy744;
+                       if (yych == 'I') goto yy748;
                        if (yych <= 'S') goto yy187;
-                       goto yy745;
+                       goto yy749;
                } else {
                        if (yych <= 'i') {
                                if (yych <= 'h') goto yy187;
                        } else {
-                               if (yych == 't') goto yy745;
+                               if (yych == 't') goto yy749;
                                goto yy187;
                        }
                }
-yy744:
-               YYDEBUG(744, *YYCURSOR);
+yy748:
+               YYDEBUG(748, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'T') goto yy751;
-               if (yych == 't') goto yy751;
+               if (yych == 'T') goto yy755;
+               if (yych == 't') goto yy755;
                goto yy187;
-yy745:
-               YYDEBUG(745, *YYCURSOR);
+yy749:
+               YYDEBUG(749, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy746;
+               if (yych == 'E') goto yy750;
                if (yych != 'e') goto yy187;
-yy746:
-               YYDEBUG(746, *YYCURSOR);
+yy750:
+               YYDEBUG(750, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'N') goto yy747;
+               if (yych == 'N') goto yy751;
                if (yych != 'n') goto yy187;
-yy747:
-               YYDEBUG(747, *YYCURSOR);
+yy751:
+               YYDEBUG(751, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'D') goto yy748;
+               if (yych == 'D') goto yy752;
                if (yych != 'd') goto yy187;
-yy748:
-               YYDEBUG(748, *YYCURSOR);
+yy752:
+               YYDEBUG(752, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'S') goto yy749;
+               if (yych == 'S') goto yy753;
                if (yych != 's') goto yy187;
-yy749:
-               YYDEBUG(749, *YYCURSOR);
+yy753:
+               YYDEBUG(753, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(750, *YYCURSOR);
+               YYDEBUG(754, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1162 "Zend/zend_language_scanner.l"
                {
        return T_EXTENDS;
 }
-#line 6855 "Zend/zend_language_scanner.c"
-yy751:
-               YYDEBUG(751, *YYCURSOR);
+#line 6877 "Zend/zend_language_scanner.c"
+yy755:
+               YYDEBUG(755, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(752, *YYCURSOR);
+               YYDEBUG(756, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1014 "Zend/zend_language_scanner.l"
                {
        return T_EXIT;
 }
-#line 6868 "Zend/zend_language_scanner.c"
-yy753:
-               YYDEBUG(753, *YYCURSOR);
+#line 6890 "Zend/zend_language_scanner.c"
+yy757:
+               YYDEBUG(757, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'L') goto yy754;
+               if (yych == 'L') goto yy758;
                if (yych != 'l') goto yy187;
-yy754:
-               YYDEBUG(754, *YYCURSOR);
+yy758:
+               YYDEBUG(758, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(755, *YYCURSOR);
+               YYDEBUG(759, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1250 "Zend/zend_language_scanner.l"
                {
        return T_EVAL;
 }
-#line 6886 "Zend/zend_language_scanner.c"
-yy756:
-               YYDEBUG(756, *YYCURSOR);
+#line 6908 "Zend/zend_language_scanner.c"
+yy760:
+               YYDEBUG(760, *YYCURSOR);
                yych = *++YYCURSOR;
                YYDEBUG(-1, yych);
                switch (yych) {
                case 'D':
-               case 'd':       goto yy757;
+               case 'd':       goto yy761;
                case 'F':
-               case 'f':       goto yy758;
+               case 'f':       goto yy762;
                case 'I':
-               case 'i':       goto yy759;
+               case 'i':       goto yy763;
                case 'S':
-               case 's':       goto yy760;
+               case 's':       goto yy764;
                case 'W':
-               case 'w':       goto yy761;
+               case 'w':       goto yy765;
                default:        goto yy187;
                }
-yy757:
-               YYDEBUG(757, *YYCURSOR);
+yy761:
+               YYDEBUG(761, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy783;
-               if (yych == 'e') goto yy783;
+               if (yych == 'E') goto yy787;
+               if (yych == 'e') goto yy787;
                goto yy187;
-yy758:
-               YYDEBUG(758, *YYCURSOR);
+yy762:
+               YYDEBUG(762, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'O') goto yy775;
-               if (yych == 'o') goto yy775;
+               if (yych == 'O') goto yy779;
+               if (yych == 'o') goto yy779;
                goto yy187;
-yy759:
-               YYDEBUG(759, *YYCURSOR);
+yy763:
+               YYDEBUG(763, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'F') goto yy773;
-               if (yych == 'f') goto yy773;
+               if (yych == 'F') goto yy777;
+               if (yych == 'f') goto yy777;
                goto yy187;
-yy760:
-               YYDEBUG(760, *YYCURSOR);
+yy764:
+               YYDEBUG(764, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'W') goto yy767;
-               if (yych == 'w') goto yy767;
+               if (yych == 'W') goto yy771;
+               if (yych == 'w') goto yy771;
                goto yy187;
-yy761:
-               YYDEBUG(761, *YYCURSOR);
+yy765:
+               YYDEBUG(765, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'H') goto yy762;
+               if (yych == 'H') goto yy766;
                if (yych != 'h') goto yy187;
-yy762:
-               YYDEBUG(762, *YYCURSOR);
+yy766:
+               YYDEBUG(766, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'I') goto yy763;
+               if (yych == 'I') goto yy767;
                if (yych != 'i') goto yy187;
-yy763:
-               YYDEBUG(763, *YYCURSOR);
+yy767:
+               YYDEBUG(767, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'L') goto yy764;
+               if (yych == 'L') goto yy768;
                if (yych != 'l') goto yy187;
-yy764:
-               YYDEBUG(764, *YYCURSOR);
+yy768:
+               YYDEBUG(768, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy765;
+               if (yych == 'E') goto yy769;
                if (yych != 'e') goto yy187;
-yy765:
-               YYDEBUG(765, *YYCURSOR);
+yy769:
+               YYDEBUG(769, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(766, *YYCURSOR);
+               YYDEBUG(770, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1074 "Zend/zend_language_scanner.l"
                {
        return T_ENDWHILE;
 }
-#line 6960 "Zend/zend_language_scanner.c"
-yy767:
-               YYDEBUG(767, *YYCURSOR);
+#line 6982 "Zend/zend_language_scanner.c"
+yy771:
+               YYDEBUG(771, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'I') goto yy768;
+               if (yych == 'I') goto yy772;
                if (yych != 'i') goto yy187;
-yy768:
-               YYDEBUG(768, *YYCURSOR);
+yy772:
+               YYDEBUG(772, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'T') goto yy769;
+               if (yych == 'T') goto yy773;
                if (yych != 't') goto yy187;
-yy769:
-               YYDEBUG(769, *YYCURSOR);
+yy773:
+               YYDEBUG(773, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'C') goto yy770;
+               if (yych == 'C') goto yy774;
                if (yych != 'c') goto yy187;
-yy770:
-               YYDEBUG(770, *YYCURSOR);
+yy774:
+               YYDEBUG(774, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'H') goto yy771;
+               if (yych == 'H') goto yy775;
                if (yych != 'h') goto yy187;
-yy771:
-               YYDEBUG(771, *YYCURSOR);
+yy775:
+               YYDEBUG(775, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(772, *YYCURSOR);
+               YYDEBUG(776, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1118 "Zend/zend_language_scanner.l"
                {
        return T_ENDSWITCH;
 }
-#line 6993 "Zend/zend_language_scanner.c"
-yy773:
-               YYDEBUG(773, *YYCURSOR);
+#line 7015 "Zend/zend_language_scanner.c"
+yy777:
+               YYDEBUG(777, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(774, *YYCURSOR);
+               YYDEBUG(778, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1062 "Zend/zend_language_scanner.l"
                {
        return T_ENDIF;
 }
-#line 7006 "Zend/zend_language_scanner.c"
-yy775:
-               YYDEBUG(775, *YYCURSOR);
+#line 7028 "Zend/zend_language_scanner.c"
+yy779:
+               YYDEBUG(779, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'R') goto yy776;
+               if (yych == 'R') goto yy780;
                if (yych != 'r') goto yy187;
-yy776:
-               YYDEBUG(776, *YYCURSOR);
+yy780:
+               YYDEBUG(780, *YYCURSOR);
                ++YYCURSOR;
                if ((yych = *YYCURSOR) <= '^') {
                        if (yych <= '@') {
-                               if (yych <= '/') goto yy777;
+                               if (yych <= '/') goto yy781;
                                if (yych <= '9') goto yy186;
                        } else {
-                               if (yych == 'E') goto yy778;
+                               if (yych == 'E') goto yy782;
                                if (yych <= 'Z') goto yy186;
                        }
                } else {
                        if (yych <= 'd') {
                                if (yych != '`') goto yy186;
                        } else {
-                               if (yych <= 'e') goto yy778;
+                               if (yych <= 'e') goto yy782;
                                if (yych <= 'z') goto yy186;
                                if (yych >= 0x7F) goto yy186;
                        }
                }
-yy777:
-               YYDEBUG(777, *YYCURSOR);
+yy781:
+               YYDEBUG(781, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1086 "Zend/zend_language_scanner.l"
                {
        return T_ENDFOR;
 }
-#line 7039 "Zend/zend_language_scanner.c"
-yy778:
-               YYDEBUG(778, *YYCURSOR);
+#line 7061 "Zend/zend_language_scanner.c"
+yy782:
+               YYDEBUG(782, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'A') goto yy779;
+               if (yych == 'A') goto yy783;
                if (yych != 'a') goto yy187;
-yy779:
-               YYDEBUG(779, *YYCURSOR);
+yy783:
+               YYDEBUG(783, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'C') goto yy780;
+               if (yych == 'C') goto yy784;
                if (yych != 'c') goto yy187;
-yy780:
-               YYDEBUG(780, *YYCURSOR);
+yy784:
+               YYDEBUG(784, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'H') goto yy781;
+               if (yych == 'H') goto yy785;
                if (yych != 'h') goto yy187;
-yy781:
-               YYDEBUG(781, *YYCURSOR);
+yy785:
+               YYDEBUG(785, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(782, *YYCURSOR);
+               YYDEBUG(786, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1094 "Zend/zend_language_scanner.l"
                {
        return T_ENDFOREACH;
 }
-#line 7067 "Zend/zend_language_scanner.c"
-yy783:
-               YYDEBUG(783, *YYCURSOR);
+#line 7089 "Zend/zend_language_scanner.c"
+yy787:
+               YYDEBUG(787, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'C') goto yy784;
+               if (yych == 'C') goto yy788;
                if (yych != 'c') goto yy187;
-yy784:
-               YYDEBUG(784, *YYCURSOR);
+yy788:
+               YYDEBUG(788, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'L') goto yy785;
+               if (yych == 'L') goto yy789;
                if (yych != 'l') goto yy187;
-yy785:
-               YYDEBUG(785, *YYCURSOR);
+yy789:
+               YYDEBUG(789, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'A') goto yy786;
+               if (yych == 'A') goto yy790;
                if (yych != 'a') goto yy187;
-yy786:
-               YYDEBUG(786, *YYCURSOR);
+yy790:
+               YYDEBUG(790, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'R') goto yy787;
+               if (yych == 'R') goto yy791;
                if (yych != 'r') goto yy187;
-yy787:
-               YYDEBUG(787, *YYCURSOR);
+yy791:
+               YYDEBUG(791, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy788;
+               if (yych == 'E') goto yy792;
                if (yych != 'e') goto yy187;
-yy788:
-               YYDEBUG(788, *YYCURSOR);
+yy792:
+               YYDEBUG(792, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(789, *YYCURSOR);
+               YYDEBUG(793, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1102 "Zend/zend_language_scanner.l"
                {
        return T_ENDDECLARE;
 }
-#line 7105 "Zend/zend_language_scanner.c"
-yy790:
-               YYDEBUG(790, *YYCURSOR);
+#line 7127 "Zend/zend_language_scanner.c"
+yy794:
+               YYDEBUG(794, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'T') goto yy791;
+               if (yych == 'T') goto yy795;
                if (yych != 't') goto yy187;
-yy791:
-               YYDEBUG(791, *YYCURSOR);
+yy795:
+               YYDEBUG(795, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'Y') goto yy792;
+               if (yych == 'Y') goto yy796;
                if (yych != 'y') goto yy187;
-yy792:
-               YYDEBUG(792, *YYCURSOR);
+yy796:
+               YYDEBUG(796, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(793, *YYCURSOR);
+               YYDEBUG(797, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1290 "Zend/zend_language_scanner.l"
                {
        return T_EMPTY;
 }
-#line 7128 "Zend/zend_language_scanner.c"
-yy794:
-               YYDEBUG(794, *YYCURSOR);
+#line 7150 "Zend/zend_language_scanner.c"
+yy798:
+               YYDEBUG(798, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'E') goto yy795;
+               if (yych == 'E') goto yy799;
                if (yych != 'e') goto yy187;
-yy795:
-               YYDEBUG(795, *YYCURSOR);
+yy799:
+               YYDEBUG(799, *YYCURSOR);
                ++YYCURSOR;
                if ((yych = *YYCURSOR) <= '^') {
                        if (yych <= '@') {
-                               if (yych <= '/') goto yy796;
+                               if (yych <= '/') goto yy800;
                                if (yych <= '9') goto yy186;
                        } else {
-                               if (yych == 'I') goto yy797;
+                               if (yych == 'I') goto yy801;
                                if (yych <= 'Z') goto yy186;
                        }
                } else {
                        if (yych <= 'h') {
                                if (yych != '`') goto yy186;
                        } else {
-                               if (yych <= 'i') goto yy797;
+                               if (yych <= 'i') goto yy801;
                                if (yych <= 'z') goto yy186;
                                if (yych >= 0x7F) goto yy186;
                        }
                }
-yy796:
-               YYDEBUG(796, *YYCURSOR);
+yy800:
+               YYDEBUG(800, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1066 "Zend/zend_language_scanner.l"
                {
        return T_ELSE;
 }
-#line 7161 "Zend/zend_language_scanner.c"
-yy797:
-               YYDEBUG(797, *YYCURSOR);
+#line 7183 "Zend/zend_language_scanner.c"
+yy801:
+               YYDEBUG(801, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'F') goto yy798;
+               if (yych == 'F') goto yy802;
                if (yych != 'f') goto yy187;
-yy798:
-               YYDEBUG(798, *YYCURSOR);
+yy802:
+               YYDEBUG(802, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(799, *YYCURSOR);
+               YYDEBUG(803, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1058 "Zend/zend_language_scanner.l"
                {
        return T_ELSEIF;
 }
-#line 7179 "Zend/zend_language_scanner.c"
-yy800:
-               YYDEBUG(800, *YYCURSOR);
+#line 7201 "Zend/zend_language_scanner.c"
+yy804:
+               YYDEBUG(804, *YYCURSOR);
                yych = *++YYCURSOR;
-               if (yych == 'O') goto yy801;
+               if (yych == 'O') goto yy805;
                if (yych != 'o') goto yy187;
-yy801:
-               YYDEBUG(801, *YYCURSOR);
+yy805:
+               YYDEBUG(805, *YYCURSOR);
                ++YYCURSOR;
                if (yybm[0+(yych = *YYCURSOR)] & 4) {
                        goto yy186;
                }
-               YYDEBUG(802, *YYCURSOR);
+               YYDEBUG(806, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1142 "Zend/zend_language_scanner.l"
                {
        return T_ECHO;
 }
-#line 7197 "Zend/zend_language_scanner.c"
+#line 7219 "Zend/zend_language_scanner.c"
        }
 /* *********************************** */
 yyc_ST_LOOKING_FOR_PROPERTY:
@@ -7232,39 +7254,39 @@ yyc_ST_LOOKING_FOR_PROPERTY:
                         64,  64,  64,  64,  64,  64,  64,  64, 
                         64,  64,  64,  64,  64,  64,  64,  64, 
                };
-               YYDEBUG(803, *YYCURSOR);
+               YYDEBUG(807, *YYCURSOR);
                YYFILL(2);
                yych = *YYCURSOR;
                if (yych <= '-') {
                        if (yych <= '\r') {
-                               if (yych <= 0x08) goto yy811;
-                               if (yych <= '\n') goto yy805;
-                               if (yych <= '\f') goto yy811;
+                               if (yych <= 0x08) goto yy815;
+                               if (yych <= '\n') goto yy809;
+                               if (yych <= '\f') goto yy815;
                        } else {
-                               if (yych == ' ') goto yy805;
-                               if (yych <= ',') goto yy811;
-                               goto yy807;
+                               if (yych == ' ') goto yy809;
+                               if (yych <= ',') goto yy815;
+                               goto yy811;
                        }
                } else {
                        if (yych <= '_') {
-                               if (yych <= '@') goto yy811;
-                               if (yych <= 'Z') goto yy809;
-                               if (yych <= '^') goto yy811;
-                               goto yy809;
+                               if (yych <= '@') goto yy815;
+                               if (yych <= 'Z') goto yy813;
+                               if (yych <= '^') goto yy815;
+                               goto yy813;
                        } else {
-                               if (yych <= '`') goto yy811;
-                               if (yych <= 'z') goto yy809;
-                               if (yych <= '~') goto yy811;
-                               goto yy809;
+                               if (yych <= '`') goto yy815;
+                               if (yych <= 'z') goto yy813;
+                               if (yych <= '~') goto yy815;
+                               goto yy813;
                        }
                }
-yy805:
-               YYDEBUG(805, *YYCURSOR);
+yy809:
+               YYDEBUG(809, *YYCURSOR);
                ++YYCURSOR;
                yych = *YYCURSOR;
-               goto yy817;
-yy806:
-               YYDEBUG(806, *YYCURSOR);
+               goto yy821;
+yy810:
+               YYDEBUG(810, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1175 "Zend/zend_language_scanner.l"
                {
@@ -7272,13 +7294,13 @@ yy806:
        HANDLE_NEWLINES(yytext, yyleng);
        return T_WHITESPACE;
 }
-#line 7276 "Zend/zend_language_scanner.c"
-yy807:
-               YYDEBUG(807, *YYCURSOR);
+#line 7298 "Zend/zend_language_scanner.c"
+yy811:
+               YYDEBUG(811, *YYCURSOR);
                ++YYCURSOR;
-               if ((yych = *YYCURSOR) == '>') goto yy814;
-yy808:
-               YYDEBUG(808, *YYCURSOR);
+               if ((yych = *YYCURSOR) == '>') goto yy818;
+yy812:
+               YYDEBUG(812, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1192 "Zend/zend_language_scanner.l"
                {
@@ -7286,14 +7308,14 @@ yy808:
        yy_pop_state(TSRMLS_C);
        goto restart;
 }
-#line 7290 "Zend/zend_language_scanner.c"
-yy809:
-               YYDEBUG(809, *YYCURSOR);
+#line 7312 "Zend/zend_language_scanner.c"
+yy813:
+               YYDEBUG(813, *YYCURSOR);
                ++YYCURSOR;
                yych = *YYCURSOR;
-               goto yy813;
-yy810:
-               YYDEBUG(810, *YYCURSOR);
+               goto yy817;
+yy814:
+               YYDEBUG(814, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1185 "Zend/zend_language_scanner.l"
                {
@@ -7302,43 +7324,43 @@ yy810:
        zendlval->type = IS_STRING;
        return T_STRING;
 }
-#line 7306 "Zend/zend_language_scanner.c"
-yy811:
-               YYDEBUG(811, *YYCURSOR);
+#line 7328 "Zend/zend_language_scanner.c"
+yy815:
+               YYDEBUG(815, *YYCURSOR);
                yych = *++YYCURSOR;
-               goto yy808;
-yy812:
-               YYDEBUG(812, *YYCURSOR);
+               goto yy812;
+yy816:
+               YYDEBUG(816, *YYCURSOR);
                ++YYCURSOR;
                YYFILL(1);
                yych = *YYCURSOR;
-yy813:
-               YYDEBUG(813, *YYCURSOR);
+yy817:
+               YYDEBUG(817, *YYCURSOR);
                if (yybm[0+yych] & 64) {
-                       goto yy812;
+                       goto yy816;
                }
-               goto yy810;
-yy814:
-               YYDEBUG(814, *YYCURSOR);
+               goto yy814;
+yy818:
+               YYDEBUG(818, *YYCURSOR);
                ++YYCURSOR;
-               YYDEBUG(815, *YYCURSOR);
+               YYDEBUG(819, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
 #line 1181 "Zend/zend_language_scanner.l"
                {
        return T_OBJECT_OPERATOR;
 }
-#line 7331 "Zend/zend_language_scanner.c"
-yy816:
-               YYDEBUG(816, *YYCURSOR);
+#line 7353 "Zend/zend_language_scanner.c"
+yy820:
+               YYDEBUG(820, *YYCURSOR);
                ++YYCURSOR;
                YYFILL(1);
                yych = *YYCURSOR;
-yy817:
-               YYDEBUG(817, *YYCURSOR);
+yy821:
+               YYDEBUG(821, *YYCURSOR);
                if (yybm[0+yych] & 128) {
-                       goto yy816;
+                       goto yy820;
                }
-               goto yy806;
+               goto yy810;
        }
 /* *********************************** */
 yyc_ST_LOOKING_FOR_VARNAME:
@@ -7377,74 +7399,74 @@ yyc_ST_LOOKING_FOR_VARNAME:
                        128, 128, 128, 128, 128, 128, 128, 128, 
                        128, 128, 128, 128, 128, 128, 128, 128, 
                };
-               YYDEBUG(818, *YYCURSOR);
+               YYDEBUG(822, *YYCURSOR);
                YYFILL(2);
                yych = *YYCURSOR;
                if (yych <= '_') {
-                       if (yych <= '@') goto yy822;
-                       if (yych <= 'Z') goto yy820;
-                       if (yych <= '^') goto yy822;
+                       if (yych <= '@') goto yy826;
+                       if (yych <= 'Z') goto yy824;
+                       if (yych <= '^') goto yy826;
                } else {
-                       if (yych <= '`') goto yy822;
-                       if (yych <= 'z') goto yy820;
-                       if (yych <= '~') goto yy822;
+                       if (yych <= '`') goto yy826;
+                       if (yych <= 'z') goto yy824;
+                       if (yych <= '~') goto yy826;
                }
-yy820:
-               YYDEBUG(820, *YYCURSOR);
+yy824:
+               YYDEBUG(824, *YYCURSOR);
                yyaccept = 0;
                yych = *(YYMARKER = ++YYCURSOR);
                if (yych <= '_') {
                        if (yych <= '@') {
-                               if (yych <= '/') goto yy821;
-                               if (yych <= '9') goto yy824;
+                               if (yych <= '/') goto yy825;
+                               if (yych <= '9') goto yy828;
                        } else {
-                               if (yych <= '[') goto yy824;
-                               if (yych >= '_') goto yy824;
+                               if (yych <= '[') goto yy828;
+                               if (yych >= '_') goto yy828;
                        }
                } else {
                        if (yych <= '|') {
-                               if (yych <= '`') goto yy821;
-                               if (yych <= 'z') goto yy824;
+                               if (yych <= '`') goto yy825;
+                               if (yych <= 'z') goto yy828;
                        } else {
-                               if (yych != '~') goto yy824;
+                               if (yych != '~') goto yy828;
                        }
                }
-yy821:
-               YYDEBUG(821, *YYCURSOR);
+yy825:
+               YYDEBUG(825, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1482 "Zend/zend_language_scanner.l"
+#line 1490 "Zend/zend_language_scanner.l"
                {
        yyless(0);
        yy_pop_state(TSRMLS_C);
        yy_push_state(ST_IN_SCRIPTING TSRMLS_CC);
        goto restart;
 }
-#line 7423 "Zend/zend_language_scanner.c"
-yy822:
-               YYDEBUG(822, *YYCURSOR);
+#line 7445 "Zend/zend_language_scanner.c"
+yy826:
+               YYDEBUG(826, *YYCURSOR);
                yych = *++YYCURSOR;
-               goto yy821;
-yy823:
-               YYDEBUG(823, *YYCURSOR);
+               goto yy825;
+yy827:
+               YYDEBUG(827, *YYCURSOR);
                ++YYCURSOR;
                YYFILL(1);
                yych = *YYCURSOR;
-yy824:
-               YYDEBUG(824, *YYCURSOR);
+yy828:
+               YYDEBUG(828, *YYCURSOR);
                if (yybm[0+yych] & 128) {
-                       goto yy823;
+                       goto yy827;
                }
-               if (yych == '[') goto yy826;
-               if (yych == '}') goto yy826;
-               YYDEBUG(825, *YYCURSOR);
+               if (yych == '[') goto yy830;
+               if (yych == '}') goto yy830;
+               YYDEBUG(829, *YYCURSOR);
                YYCURSOR = YYMARKER;
-               goto yy821;
-yy826:
-               YYDEBUG(826, *YYCURSOR);
+               goto yy825;
+yy830:
+               YYDEBUG(830, *YYCURSOR);
                ++YYCURSOR;
-               YYDEBUG(827, *YYCURSOR);
+               YYDEBUG(831, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1472 "Zend/zend_language_scanner.l"
+#line 1480 "Zend/zend_language_scanner.l"
                {
        yyless(yyleng - 1);
        zend_copy_value(zendlval, yytext, yyleng);
@@ -7453,18 +7475,18 @@ yy826:
        yy_push_state(ST_IN_SCRIPTING TSRMLS_CC);
        return T_STRING_VARNAME;
 }
-#line 7457 "Zend/zend_language_scanner.c"
+#line 7479 "Zend/zend_language_scanner.c"
        }
 /* *********************************** */
 yyc_ST_NOWDOC:
-       YYDEBUG(828, *YYCURSOR);
+       YYDEBUG(832, *YYCURSOR);
        YYFILL(1);
        yych = *YYCURSOR;
-       YYDEBUG(830, *YYCURSOR);
+       YYDEBUG(834, *YYCURSOR);
        ++YYCURSOR;
-       YYDEBUG(831, *YYCURSOR);
+       YYDEBUG(835, *YYCURSOR);
        yyleng = YYCURSOR - SCNG(yy_text);
-#line 2302 "Zend/zend_language_scanner.l"
+#line 2310 "Zend/zend_language_scanner.l"
        {
        int newline = 0;
 
@@ -7521,7 +7543,7 @@ nowdoc_scan_done:
        HANDLE_NEWLINES(yytext, yyleng - newline);
        return T_ENCAPSED_AND_WHITESPACE;
 }
-#line 7525 "Zend/zend_language_scanner.c"
+#line 7547 "Zend/zend_language_scanner.c"
 /* *********************************** */
 yyc_ST_VAR_OFFSET:
        {
@@ -7559,76 +7581,76 @@ yyc_ST_VAR_OFFSET:
                         16,  16,  16,  16,  16,  16,  16,  16, 
                         16,  16,  16,  16,  16,  16,  16,  16, 
                };
-               YYDEBUG(832, *YYCURSOR);
+               YYDEBUG(836, *YYCURSOR);
                YYFILL(3);
                yych = *YYCURSOR;
                if (yych <= '/') {
                        if (yych <= ' ') {
                                if (yych <= '\f') {
-                                       if (yych <= 0x08) goto yy846;
-                                       if (yych <= '\n') goto yy842;
-                                       goto yy846;
+                                       if (yych <= 0x08) goto yy850;
+                                       if (yych <= '\n') goto yy846;
+                                       goto yy850;
                                } else {
-                                       if (yych <= '\r') goto yy842;
-                                       if (yych <= 0x1F) goto yy846;
-                                       goto yy842;
+                                       if (yych <= '\r') goto yy846;
+                                       if (yych <= 0x1F) goto yy850;
+                                       goto yy846;
                                }
                        } else {
                                if (yych <= '$') {
-                                       if (yych <= '"') goto yy841;
-                                       if (yych <= '#') goto yy842;
-                                       goto yy837;
-                               } else {
-                                       if (yych == '\'') goto yy842;
+                                       if (yych <= '"') goto yy845;
+                                       if (yych <= '#') goto yy846;
                                        goto yy841;
+                               } else {
+                                       if (yych == '\'') goto yy846;
+                                       goto yy845;
                                }
                        }
                } else {
                        if (yych <= '\\') {
                                if (yych <= '@') {
-                                       if (yych <= '0') goto yy834;
-                                       if (yych <= '9') goto yy836;
-                                       goto yy841;
+                                       if (yych <= '0') goto yy838;
+                                       if (yych <= '9') goto yy840;
+                                       goto yy845;
                                } else {
-                                       if (yych <= 'Z') goto yy844;
-                                       if (yych <= '[') goto yy841;
-                                       goto yy842;
+                                       if (yych <= 'Z') goto yy848;
+                                       if (yych <= '[') goto yy845;
+                                       goto yy846;
                                }
                        } else {
                                if (yych <= '_') {
-                                       if (yych <= ']') goto yy839;
-                                       if (yych <= '^') goto yy841;
-                                       goto yy844;
+                                       if (yych <= ']') goto yy843;
+                                       if (yych <= '^') goto yy845;
+                                       goto yy848;
                                } else {
-                                       if (yych <= '`') goto yy841;
-                                       if (yych <= 'z') goto yy844;
-                                       if (yych <= '~') goto yy841;
-                                       goto yy844;
+                                       if (yych <= '`') goto yy845;
+                                       if (yych <= 'z') goto yy848;
+                                       if (yych <= '~') goto yy845;
+                                       goto yy848;
                                }
                        }
                }
-yy834:
-               YYDEBUG(834, *YYCURSOR);
+yy838:
+               YYDEBUG(838, *YYCURSOR);
                yyaccept = 0;
                yych = *(YYMARKER = ++YYCURSOR);
                if (yych <= 'W') {
                        if (yych <= '9') {
-                               if (yych >= '0') goto yy858;
+                               if (yych >= '0') goto yy862;
                        } else {
-                               if (yych == 'B') goto yy855;
+                               if (yych == 'B') goto yy859;
                        }
                } else {
                        if (yych <= 'b') {
-                               if (yych <= 'X') goto yy857;
-                               if (yych >= 'b') goto yy855;
+                               if (yych <= 'X') goto yy861;
+                               if (yych >= 'b') goto yy859;
                        } else {
-                               if (yych == 'x') goto yy857;
+                               if (yych == 'x') goto yy861;
                        }
                }
-yy835:
-               YYDEBUG(835, *YYCURSOR);
+yy839:
+               YYDEBUG(839, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1558 "Zend/zend_language_scanner.l"
+#line 1566 "Zend/zend_language_scanner.l"
                { /* Offset could be treated as a long */
        if (yyleng < MAX_LENGTH_OF_LONG - 1 || (yyleng == MAX_LENGTH_OF_LONG - 1 && strcmp(yytext, long_min_digits) < 0)) {
                ZVAL_LONG(zendlval, strtol(yytext, NULL, 10));
@@ -7637,81 +7659,81 @@ yy835:
        }
        return T_NUM_STRING;
 }
-#line 7641 "Zend/zend_language_scanner.c"
-yy836:
-               YYDEBUG(836, *YYCURSOR);
+#line 7663 "Zend/zend_language_scanner.c"
+yy840:
+               YYDEBUG(840, *YYCURSOR);
                yych = *++YYCURSOR;
-               goto yy854;
-yy837:
-               YYDEBUG(837, *YYCURSOR);
+               goto yy858;
+yy841:
+               YYDEBUG(841, *YYCURSOR);
                ++YYCURSOR;
                if ((yych = *YYCURSOR) <= '_') {
-                       if (yych <= '@') goto yy838;
-                       if (yych <= 'Z') goto yy850;
-                       if (yych >= '_') goto yy850;
+                       if (yych <= '@') goto yy842;
+                       if (yych <= 'Z') goto yy854;
+                       if (yych >= '_') goto yy854;
                } else {
-                       if (yych <= '`') goto yy838;
-                       if (yych <= 'z') goto yy850;
-                       if (yych >= 0x7F) goto yy850;
+                       if (yych <= '`') goto yy842;
+                       if (yych <= 'z') goto yy854;
+                       if (yych >= 0x7F) goto yy854;
                }
-yy838:
-               YYDEBUG(838, *YYCURSOR);
+yy842:
+               YYDEBUG(842, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1834 "Zend/zend_language_scanner.l"
+#line 1842 "Zend/zend_language_scanner.l"
                {
        /* Only '[' can be valid, but returning other tokens will allow a more explicit parse error */
        return yytext[0];
 }
-#line 7666 "Zend/zend_language_scanner.c"
-yy839:
-               YYDEBUG(839, *YYCURSOR);
+#line 7688 "Zend/zend_language_scanner.c"
+yy843:
+               YYDEBUG(843, *YYCURSOR);
                ++YYCURSOR;
-               YYDEBUG(840, *YYCURSOR);
+               YYDEBUG(844, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1829 "Zend/zend_language_scanner.l"
+#line 1837 "Zend/zend_language_scanner.l"
                {
        yy_pop_state(TSRMLS_C);
        return ']';
 }
-#line 7677 "Zend/zend_language_scanner.c"
-yy841:
-               YYDEBUG(841, *YYCURSOR);
+#line 7699 "Zend/zend_language_scanner.c"
+yy845:
+               YYDEBUG(845, *YYCURSOR);
                yych = *++YYCURSOR;
-               goto yy838;
-yy842:
-               YYDEBUG(842, *YYCURSOR);
+               goto yy842;
+yy846:
+               YYDEBUG(846, *YYCURSOR);
                ++YYCURSOR;
-               YYDEBUG(843, *YYCURSOR);
+               YYDEBUG(847, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1839 "Zend/zend_language_scanner.l"
+#line 1847 "Zend/zend_language_scanner.l"
                {
        /* Invalid rule to return a more explicit parse error with proper line number */
        yyless(0);
        yy_pop_state(TSRMLS_C);
        return T_ENCAPSED_AND_WHITESPACE;
 }
-#line 7694 "Zend/zend_language_scanner.c"
-yy844:
-               YYDEBUG(844, *YYCURSOR);
+#line 7716 "Zend/zend_language_scanner.c"
+yy848:
+               YYDEBUG(848, *YYCURSOR);
                ++YYCURSOR;
                yych = *YYCURSOR;
-               goto yy849;
-yy845:
-               YYDEBUG(845, *YYCURSOR);
+               goto yy853;
+yy849:
+               YYDEBUG(849, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1846 "Zend/zend_language_scanner.l"
+#line 1854 "Zend/zend_language_scanner.l"
                {
        zend_copy_value(zendlval, yytext, yyleng);
        zendlval->type = IS_STRING;
        return T_STRING;
 }
-#line 7709 "Zend/zend_language_scanner.c"
-yy846:
-               YYDEBUG(846, *YYCURSOR);
+#line 7731 "Zend/zend_language_scanner.c"
+yy850:
+               YYDEBUG(850, *YYCURSOR);
                ++YYCURSOR;
-               YYDEBUG(847, *YYCURSOR);
+               YYDEBUG(851, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 2360 "Zend/zend_language_scanner.l"
+#line 2368 "Zend/zend_language_scanner.l"
                {
        if (YYCURSOR > YYLIMIT) {
                return 0;
@@ -7720,116 +7742,116 @@ yy846:
        zend_error(E_COMPILE_WARNING,"Unexpected character in input:  '%c' (ASCII=%d) state=%d", yytext[0], yytext[0], YYSTATE);
        goto restart;
 }
-#line 7724 "Zend/zend_language_scanner.c"
-yy848:
-               YYDEBUG(848, *YYCURSOR);
+#line 7746 "Zend/zend_language_scanner.c"
+yy852:
+               YYDEBUG(852, *YYCURSOR);
                ++YYCURSOR;
                YYFILL(1);
                yych = *YYCURSOR;
-yy849:
-               YYDEBUG(849, *YYCURSOR);
+yy853:
+               YYDEBUG(853, *YYCURSOR);
                if (yybm[0+yych] & 16) {
-                       goto yy848;
+                       goto yy852;
                }
-               goto yy845;
-yy850:
-               YYDEBUG(850, *YYCURSOR);
+               goto yy849;
+yy854:
+               YYDEBUG(854, *YYCURSOR);
                ++YYCURSOR;
                YYFILL(1);
                yych = *YYCURSOR;
-               YYDEBUG(851, *YYCURSOR);
+               YYDEBUG(855, *YYCURSOR);
                if (yych <= '^') {
                        if (yych <= '9') {
-                               if (yych >= '0') goto yy850;
+                               if (yych >= '0') goto yy854;
                        } else {
-                               if (yych <= '@') goto yy852;
-                               if (yych <= 'Z') goto yy850;
+                               if (yych <= '@') goto yy856;
+                               if (yych <= 'Z') goto yy854;
                        }
                } else {
                        if (yych <= '`') {
-                               if (yych <= '_') goto yy850;
+                               if (yych <= '_') goto yy854;
                        } else {
-                               if (yych <= 'z') goto yy850;
-                               if (yych >= 0x7F) goto yy850;
+                               if (yych <= 'z') goto yy854;
+                               if (yych >= 0x7F) goto yy854;
                        }
                }
-yy852:
-               YYDEBUG(852, *YYCURSOR);
+yy856:
+               YYDEBUG(856, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1823 "Zend/zend_language_scanner.l"
+#line 1831 "Zend/zend_language_scanner.l"
                {
        zend_copy_value(zendlval, (yytext+1), (yyleng-1));
        zendlval->type = IS_STRING;
        return T_VARIABLE;
 }
-#line 7766 "Zend/zend_language_scanner.c"
-yy853:
-               YYDEBUG(853, *YYCURSOR);
+#line 7788 "Zend/zend_language_scanner.c"
+yy857:
+               YYDEBUG(857, *YYCURSOR);
                ++YYCURSOR;
                YYFILL(1);
                yych = *YYCURSOR;
-yy854:
-               YYDEBUG(854, *YYCURSOR);
+yy858:
+               YYDEBUG(858, *YYCURSOR);
                if (yybm[0+yych] & 32) {
-                       goto yy853;
+                       goto yy857;
                }
-               goto yy835;
-yy855:
-               YYDEBUG(855, *YYCURSOR);
+               goto yy839;
+yy859:
+               YYDEBUG(859, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yybm[0+yych] & 128) {
-                       goto yy863;
+                       goto yy867;
                }
-yy856:
-               YYDEBUG(856, *YYCURSOR);
+yy860:
+               YYDEBUG(860, *YYCURSOR);
                YYCURSOR = YYMARKER;
-               goto yy835;
-yy857:
-               YYDEBUG(857, *YYCURSOR);
+               goto yy839;
+yy861:
+               YYDEBUG(861, *YYCURSOR);
                yych = *++YYCURSOR;
                if (yybm[0+yych] & 64) {
-                       goto yy861;
+                       goto yy865;
                }
-               goto yy856;
-yy858:
-               YYDEBUG(858, *YYCURSOR);
+               goto yy860;
+yy862:
+               YYDEBUG(862, *YYCURSOR);
                ++YYCURSOR;
                YYFILL(1);
                yych = *YYCURSOR;
-               YYDEBUG(859, *YYCURSOR);
-               if (yych <= '/') goto yy860;
-               if (yych <= '9') goto yy858;
-yy860:
-               YYDEBUG(860, *YYCURSOR);
+               YYDEBUG(863, *YYCURSOR);
+               if (yych <= '/') goto yy864;
+               if (yych <= '9') goto yy862;
+yy864:
+               YYDEBUG(864, *YYCURSOR);
                yyleng = YYCURSOR - SCNG(yy_text);
-#line 1567 "Zend/zend_language_scanner.l"
+#line 1575 "Zend/zend_language_scanner.l"
                { /* Offset must be treated as a string */
        ZVAL_STRINGL(zendlval, yytext, yyleng, 1);
        return T_NUM_STRING;
 }
-#line 7811 "Zend/zend_language_scanner.c"
-yy861:
-               YYDEBUG(861, *YYCURSOR);
+#line 7833 "Zend/zend_language_scanner.c"
+yy865:
+               YYDEBUG(865, *YYCURSOR);
                ++YYCURSOR;
                YYFILL(1);
                yych = *YYCURSOR;
-               YYDEBUG(862, *YYCURSOR);
+               YYDEBUG(866, *YYCURSOR);
                if (yybm[0+yych] & 64) {
-                       goto yy861;
+                       goto yy865;
                }
-               goto yy860;
-yy863:
-               YYDEBUG(863, *YYCURSOR);
+               goto yy864;
+yy867:
+               YYDEBUG(867, *YYCURSOR);
                ++YYCURSOR;
                YYFILL(1);
                yych = *YYCURSOR;
-               YYDEBUG(864, *YYCURSOR);
+               YYDEBUG(868, *YYCURSOR);
                if (yybm[0+yych] & 128) {
-                       goto yy863;
+                       goto yy867;
                }
-               goto yy860;
+               goto yy864;
        }
 }
-#line 2369 "Zend/zend_language_scanner.l"
+#line 2377 "Zend/zend_language_scanner.l"
 
 }
index ccf8a4ca004fce10e2d4375b929c77890e4331ed..4f50658a59d0102bf4c27d804452dee644c5eed0 100644 (file)
@@ -1383,6 +1383,14 @@ NEWLINE ("\r"|"\n"|"\r\n")
        return T_MUL_EQUAL;
 }
 
+<ST_IN_SCRIPTING>"*\*" {
+       return T_POW;
+}
+
+<ST_IN_SCRIPTING>"*\*=" {
+       return T_POW_EQUAL;
+}
+
 <ST_IN_SCRIPTING>"/=" {
        return T_DIV_EQUAL;
 }
index 70ce8b890c4d03ea73b9f93e6768cf24e001079e..5926e3c61d971615174d2f61216148cca197e370 100644 (file)
@@ -1,4 +1,4 @@
-/* Generated by re2c 0.13.5 on Sun Dec 22 13:03:33 2013 */
+/* Generated by re2c 0.13.5 */
 #line 3 "Zend/zend_language_scanner_defs.h"
 
 enum YYCONDTYPE {
index af64e5a7f983e5b65e751c5766c4f3a5e9df30d0..457f08f31390b64ae5679f457b9efb78677fe338 100644 (file)
@@ -768,6 +768,9 @@ ZEND_API binary_op_type get_binary_op(int opcode)
                case ZEND_ASSIGN_MUL:
                        return (binary_op_type) mul_function;
                        break;
+               case ZEND_POW:
+                       return (binary_op_type) pow_function;
+                       break;
                case ZEND_DIV:
                case ZEND_ASSIGN_DIV:
                        return (binary_op_type) div_function;
index 3434694f4c70794e1bb635ea75d3d63ba09fc02a..03dbb152641b06cceb7b80f8506d43dd14685df8 100644 (file)
@@ -963,6 +963,87 @@ ZEND_API int mul_function(zval *result, zval *op1, zval *op2 TSRMLS_DC) /* {{{ *
 }
 /* }}} */
 
+ZEND_API int pow_function(zval *result, zval *op1, zval *op2 TSRMLS_DC)
+{
+       zval op1_copy, op2_copy;
+       int converted = 0;
+
+       while (1) {
+               switch (TYPE_PAIR(Z_TYPE_P(op1), Z_TYPE_P(op2))) {
+                       case TYPE_PAIR(IS_LONG, IS_LONG):
+                               if (Z_LVAL_P(op2) >= 0) {
+                                       long l1 = 1, l2 = Z_LVAL_P(op1), i = Z_LVAL_P(op2);
+
+                                       if (i == 0) {
+                                               ZVAL_LONG(result, 1L);
+                                               return SUCCESS;
+                                       } else if (l2 == 0) {
+                                               ZVAL_LONG(result, 0);
+                                               return SUCCESS;
+                                       }
+
+                                       while (i >= 1) {
+                                               long overflow;
+                                               double dval = 0.0;
+
+                                               if (i % 2) {
+                                                       --i;
+                                                       ZEND_SIGNED_MULTIPLY_LONG(l1, l2, l1, dval, overflow);
+                                                       if (overflow) {
+                                                               ZVAL_DOUBLE(result, dval * pow(l2, i));
+                                                               return SUCCESS;
+                                                       }
+                                               } else {
+                                                       i /= 2;
+                                                       ZEND_SIGNED_MULTIPLY_LONG(l2, l2, l2, dval, overflow);
+                                                       if (overflow) {
+                                                               ZVAL_DOUBLE(result, (double)l1 * pow(dval, i));
+                                                               return SUCCESS;
+                                                       }
+                                               }
+                                       }
+                                       /* i == 0 */
+                                       ZVAL_LONG(result, l1);
+                               } else {
+                                       ZVAL_DOUBLE(result, pow((double)Z_LVAL_P(op1), (double)Z_LVAL_P(op2)));
+                               }
+                               return SUCCESS;
+
+                       case TYPE_PAIR(IS_LONG, IS_DOUBLE):
+                               ZVAL_DOUBLE(result, pow((double)Z_LVAL_P(op1), Z_DVAL_P(op2)));
+                               return SUCCESS;
+
+                       case TYPE_PAIR(IS_DOUBLE, IS_LONG):
+                               ZVAL_DOUBLE(result, pow(Z_DVAL_P(op1), (double)Z_LVAL_P(op2)));
+                               return SUCCESS;
+
+                       case TYPE_PAIR(IS_DOUBLE, IS_DOUBLE):
+                               ZVAL_DOUBLE(result, pow(Z_DVAL_P(op1), Z_DVAL_P(op2)));
+                               return SUCCESS;
+
+                       default:
+                               if (!converted) {
+                                       ZEND_TRY_BINARY_OBJECT_OPERATION(ZEND_POW);
+
+                                       if (Z_TYPE_P(op1) == IS_ARRAY) {
+                                               ZVAL_LONG(op1, 0);
+                                       } else {
+                                               zendi_convert_scalar_to_number(op1, op1_copy, result);
+                                       }
+                                       if (Z_TYPE_P(op2) == IS_ARRAY) {
+                                               ZVAL_LONG(op2, 0);
+                                       } else {
+                                               zendi_convert_scalar_to_number(op2, op2_copy, result);
+                                       }
+                                       converted = 1;
+                               } else {
+                                       zend_error(E_ERROR, "Unsupported operand types");
+                                       return FAILURE;
+                               }
+               }
+       }
+}
+
 ZEND_API int div_function(zval *result, zval *op1, zval *op2 TSRMLS_DC) /* {{{ */
 {
        zval op1_copy, op2_copy;
index cfc84063e40489f3db5bcc9650c35b29bcd53dbf..1fab4812695ff7a869696652b26ea17c4eddbed0 100644 (file)
@@ -47,6 +47,7 @@ BEGIN_EXTERN_C()
 ZEND_API int add_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
 ZEND_API int sub_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
 ZEND_API int mul_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
+ZEND_API int pow_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
 ZEND_API int div_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
 ZEND_API int mod_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
 ZEND_API int boolean_xor_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
index 1e8a8315515e8ff905b1598ca92a00a91620b2f9..713d6fadeedd05bfccd526d9a9faf30acb1027c7 100644 (file)
@@ -5659,4 +5659,24 @@ ZEND_VM_HANDLER(163, ZEND_FAST_RET, ANY, ANY)
        }
 }
 
+ZEND_VM_HANDLER(166, ZEND_POW, CONST|TMP|VAR|CV, CONST|TMP|VAR|CV)
+{
+       USE_OPLINE
+       zend_free_op free_op1, free_op2;
+
+       SAVE_OPLINE();
+       pow_function(&EX_T(opline->result.var).tmp_var,
+               GET_OP1_ZVAL_PTR(BP_VAR_R),
+               GET_OP2_ZVAL_PTR(BP_VAR_R) TSRMLS_CC);
+       FREE_OP1();
+       FREE_OP2();
+       CHECK_EXCEPTION();
+       ZEND_VM_NEXT_OPCODE();
+}
+
+ZEND_VM_HANDLER(167, ZEND_ASSIGN_POW, VAR|UNUSED|CV, CONST|TMP|VAR|UNUSED|CV)
+{
+       ZEND_VM_DISPATCH_TO_HELPER_EX(zend_binary_assign_op_helper, binary_op,pow_function);
+}
+
 ZEND_VM_EXPORT_HELPER(zend_do_fcall, zend_do_fcall_common_helper)
index 7e613cd6e84c89e03c711485b6dadafa2bae8ecd..2593c26f43e9a74f99a1050f884ae2ed3136e0ca 100644 (file)
@@ -4492,6 +4492,21 @@ static int ZEND_FASTCALL  ZEND_YIELD_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLE
        ZEND_VM_RETURN();
 }
 
+static int ZEND_FASTCALL  ZEND_POW_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+
+
+       SAVE_OPLINE();
+       pow_function(&EX_T(opline->result.var).tmp_var,
+               opline->op1.zv,
+               opline->op2.zv TSRMLS_CC);
+
+
+       CHECK_EXCEPTION();
+       ZEND_VM_NEXT_OPCODE();
+}
+
 static int ZEND_FASTCALL  ZEND_ADD_SPEC_CONST_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
@@ -5179,6 +5194,21 @@ static int ZEND_FASTCALL  ZEND_YIELD_SPEC_CONST_TMP_HANDLER(ZEND_OPCODE_HANDLER_
        ZEND_VM_RETURN();
 }
 
+static int ZEND_FASTCALL  ZEND_POW_SPEC_CONST_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zend_free_op free_op2;
+
+       SAVE_OPLINE();
+       pow_function(&EX_T(opline->result.var).tmp_var,
+               opline->op1.zv,
+               _get_zval_ptr_tmp(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC);
+
+       zval_dtor(free_op2.var);
+       CHECK_EXCEPTION();
+       ZEND_VM_NEXT_OPCODE();
+}
+
 static int ZEND_FASTCALL  ZEND_ADD_SPEC_CONST_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
@@ -6192,6 +6222,21 @@ static int ZEND_FASTCALL  ZEND_YIELD_SPEC_CONST_VAR_HANDLER(ZEND_OPCODE_HANDLER_
        ZEND_VM_RETURN();
 }
 
+static int ZEND_FASTCALL  ZEND_POW_SPEC_CONST_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zend_free_op free_op2;
+
+       SAVE_OPLINE();
+       pow_function(&EX_T(opline->result.var).tmp_var,
+               opline->op1.zv,
+               _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC);
+
+       zval_ptr_dtor_nogc(&free_op2.var);
+       CHECK_EXCEPTION();
+       ZEND_VM_NEXT_OPCODE();
+}
+
 static int ZEND_FASTCALL zend_fetch_var_address_helper_SPEC_CONST_UNUSED(int type, ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
@@ -7660,6 +7705,21 @@ static int ZEND_FASTCALL  ZEND_YIELD_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_A
        ZEND_VM_RETURN();
 }
 
+static int ZEND_FASTCALL  ZEND_POW_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+
+
+       SAVE_OPLINE();
+       pow_function(&EX_T(opline->result.var).tmp_var,
+               opline->op1.zv,
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC);
+
+
+       CHECK_EXCEPTION();
+       ZEND_VM_NEXT_OPCODE();
+}
+
 static int ZEND_FASTCALL  ZEND_BW_NOT_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
@@ -9709,6 +9769,21 @@ static int ZEND_FASTCALL  ZEND_YIELD_SPEC_TMP_CONST_HANDLER(ZEND_OPCODE_HANDLER_
        ZEND_VM_RETURN();
 }
 
+static int ZEND_FASTCALL  ZEND_POW_SPEC_TMP_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zend_free_op free_op1;
+
+       SAVE_OPLINE();
+       pow_function(&EX_T(opline->result.var).tmp_var,
+               _get_zval_ptr_tmp(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
+               opline->op2.zv TSRMLS_CC);
+       zval_dtor(free_op1.var);
+
+       CHECK_EXCEPTION();
+       ZEND_VM_NEXT_OPCODE();
+}
+
 static int ZEND_FASTCALL  ZEND_ADD_SPEC_TMP_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
@@ -10398,6 +10473,21 @@ static int ZEND_FASTCALL  ZEND_YIELD_SPEC_TMP_TMP_HANDLER(ZEND_OPCODE_HANDLER_AR
        ZEND_VM_RETURN();
 }
 
+static int ZEND_FASTCALL  ZEND_POW_SPEC_TMP_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zend_free_op free_op1, free_op2;
+
+       SAVE_OPLINE();
+       pow_function(&EX_T(opline->result.var).tmp_var,
+               _get_zval_ptr_tmp(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
+               _get_zval_ptr_tmp(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC);
+       zval_dtor(free_op1.var);
+       zval_dtor(free_op2.var);
+       CHECK_EXCEPTION();
+       ZEND_VM_NEXT_OPCODE();
+}
+
 static int ZEND_FASTCALL  ZEND_ADD_SPEC_TMP_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
@@ -11413,6 +11503,21 @@ static int ZEND_FASTCALL  ZEND_YIELD_SPEC_TMP_VAR_HANDLER(ZEND_OPCODE_HANDLER_AR
        ZEND_VM_RETURN();
 }
 
+static int ZEND_FASTCALL  ZEND_POW_SPEC_TMP_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zend_free_op free_op1, free_op2;
+
+       SAVE_OPLINE();
+       pow_function(&EX_T(opline->result.var).tmp_var,
+               _get_zval_ptr_tmp(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
+               _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC);
+       zval_dtor(free_op1.var);
+       zval_ptr_dtor_nogc(&free_op2.var);
+       CHECK_EXCEPTION();
+       ZEND_VM_NEXT_OPCODE();
+}
+
 static int ZEND_FASTCALL zend_fetch_var_address_helper_SPEC_TMP_UNUSED(int type, ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
@@ -12678,6 +12783,21 @@ static int ZEND_FASTCALL  ZEND_YIELD_SPEC_TMP_CV_HANDLER(ZEND_OPCODE_HANDLER_ARG
        ZEND_VM_RETURN();
 }
 
+static int ZEND_FASTCALL  ZEND_POW_SPEC_TMP_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zend_free_op free_op1;
+
+       SAVE_OPLINE();
+       pow_function(&EX_T(opline->result.var).tmp_var,
+               _get_zval_ptr_tmp(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC);
+       zval_dtor(free_op1.var);
+
+       CHECK_EXCEPTION();
+       ZEND_VM_NEXT_OPCODE();
+}
+
 static int ZEND_FASTCALL  ZEND_BW_NOT_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
@@ -16575,6 +16695,26 @@ static int ZEND_FASTCALL  ZEND_YIELD_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_
        ZEND_VM_RETURN();
 }
 
+static int ZEND_FASTCALL  ZEND_POW_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zend_free_op free_op1;
+
+       SAVE_OPLINE();
+       pow_function(&EX_T(opline->result.var).tmp_var,
+               _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
+               opline->op2.zv TSRMLS_CC);
+       zval_ptr_dtor_nogc(&free_op1.var);
+
+       CHECK_EXCEPTION();
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static int ZEND_FASTCALL  ZEND_ASSIGN_POW_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       return zend_binary_assign_op_helper_SPEC_VAR_CONST(pow_function, ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);
+}
+
 static int ZEND_FASTCALL  ZEND_ADD_SPEC_VAR_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
@@ -18645,6 +18785,26 @@ static int ZEND_FASTCALL  ZEND_YIELD_SPEC_VAR_TMP_HANDLER(ZEND_OPCODE_HANDLER_AR
        ZEND_VM_RETURN();
 }
 
+static int ZEND_FASTCALL  ZEND_POW_SPEC_VAR_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zend_free_op free_op1, free_op2;
+
+       SAVE_OPLINE();
+       pow_function(&EX_T(opline->result.var).tmp_var,
+               _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
+               _get_zval_ptr_tmp(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC);
+       zval_ptr_dtor_nogc(&free_op1.var);
+       zval_dtor(free_op2.var);
+       CHECK_EXCEPTION();
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static int ZEND_FASTCALL  ZEND_ASSIGN_POW_SPEC_VAR_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       return zend_binary_assign_op_helper_SPEC_VAR_TMP(pow_function, ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);
+}
+
 static int ZEND_FASTCALL  ZEND_ADD_SPEC_VAR_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
@@ -21096,6 +21256,26 @@ static int ZEND_FASTCALL  ZEND_YIELD_SPEC_VAR_VAR_HANDLER(ZEND_OPCODE_HANDLER_AR
        ZEND_VM_RETURN();
 }
 
+static int ZEND_FASTCALL  ZEND_POW_SPEC_VAR_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zend_free_op free_op1, free_op2;
+
+       SAVE_OPLINE();
+       pow_function(&EX_T(opline->result.var).tmp_var,
+               _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
+               _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC);
+       zval_ptr_dtor_nogc(&free_op1.var);
+       zval_ptr_dtor_nogc(&free_op2.var);
+       CHECK_EXCEPTION();
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static int ZEND_FASTCALL  ZEND_ASSIGN_POW_SPEC_VAR_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       return zend_binary_assign_op_helper_SPEC_VAR_VAR(pow_function, ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);
+}
+
 static int ZEND_FASTCALL zend_binary_assign_op_obj_helper_SPEC_VAR_UNUSED(int (*binary_op)(zval *result, zval *op1, zval *op2 TSRMLS_DC), ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
@@ -22243,6 +22423,11 @@ static int ZEND_FASTCALL  ZEND_YIELD_SPEC_VAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER
        ZEND_VM_RETURN();
 }
 
+static int ZEND_FASTCALL  ZEND_ASSIGN_POW_SPEC_VAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       return zend_binary_assign_op_helper_SPEC_VAR_UNUSED(pow_function, ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);
+}
+
 static int ZEND_FASTCALL  ZEND_ADD_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
@@ -24362,6 +24547,26 @@ static int ZEND_FASTCALL  ZEND_YIELD_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARG
        ZEND_VM_RETURN();
 }
 
+static int ZEND_FASTCALL  ZEND_POW_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zend_free_op free_op1;
+
+       SAVE_OPLINE();
+       pow_function(&EX_T(opline->result.var).tmp_var,
+               _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC);
+       zval_ptr_dtor_nogc(&free_op1.var);
+
+       CHECK_EXCEPTION();
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static int ZEND_FASTCALL  ZEND_ASSIGN_POW_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       return zend_binary_assign_op_helper_SPEC_VAR_CV(pow_function, ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);
+}
+
 static int ZEND_FASTCALL  ZEND_CLONE_SPEC_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
@@ -25854,6 +26059,11 @@ static int ZEND_FASTCALL  ZEND_YIELD_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDL
        ZEND_VM_RETURN();
 }
 
+static int ZEND_FASTCALL  ZEND_ASSIGN_POW_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       return zend_binary_assign_op_helper_SPEC_UNUSED_CONST(pow_function, ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);
+}
+
 static int ZEND_FASTCALL zend_binary_assign_op_obj_helper_SPEC_UNUSED_TMP(int (*binary_op)(zval *result, zval *op1, zval *op2 TSRMLS_DC), ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
@@ -27163,6 +27373,11 @@ static int ZEND_FASTCALL  ZEND_YIELD_SPEC_UNUSED_TMP_HANDLER(ZEND_OPCODE_HANDLER
        ZEND_VM_RETURN();
 }
 
+static int ZEND_FASTCALL  ZEND_ASSIGN_POW_SPEC_UNUSED_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       return zend_binary_assign_op_helper_SPEC_UNUSED_TMP(pow_function, ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);
+}
+
 static int ZEND_FASTCALL zend_binary_assign_op_obj_helper_SPEC_UNUSED_VAR(int (*binary_op)(zval *result, zval *op1, zval *op2 TSRMLS_DC), ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
@@ -28473,6 +28688,11 @@ static int ZEND_FASTCALL  ZEND_YIELD_SPEC_UNUSED_VAR_HANDLER(ZEND_OPCODE_HANDLER
        ZEND_VM_RETURN();
 }
 
+static int ZEND_FASTCALL  ZEND_ASSIGN_POW_SPEC_UNUSED_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       return zend_binary_assign_op_helper_SPEC_UNUSED_VAR(pow_function, ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);
+}
+
 static int ZEND_FASTCALL zend_binary_assign_op_obj_helper_SPEC_UNUSED_UNUSED(int (*binary_op)(zval *result, zval *op1, zval *op2 TSRMLS_DC), ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
@@ -28897,6 +29117,11 @@ static int ZEND_FASTCALL  ZEND_YIELD_SPEC_UNUSED_UNUSED_HANDLER(ZEND_OPCODE_HAND
        ZEND_VM_RETURN();
 }
 
+static int ZEND_FASTCALL  ZEND_ASSIGN_POW_SPEC_UNUSED_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       return zend_binary_assign_op_helper_SPEC_UNUSED_UNUSED(pow_function, ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);
+}
+
 static int ZEND_FASTCALL zend_binary_assign_op_obj_helper_SPEC_UNUSED_CV(int (*binary_op)(zval *result, zval *op1, zval *op2 TSRMLS_DC), ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
@@ -30203,6 +30428,11 @@ static int ZEND_FASTCALL  ZEND_YIELD_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_
        ZEND_VM_RETURN();
 }
 
+static int ZEND_FASTCALL  ZEND_ASSIGN_POW_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       return zend_binary_assign_op_helper_SPEC_UNUSED_CV(pow_function, ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);
+}
+
 static int ZEND_FASTCALL  ZEND_BW_NOT_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
@@ -33699,6 +33929,26 @@ static int ZEND_FASTCALL  ZEND_YIELD_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_A
        ZEND_VM_RETURN();
 }
 
+static int ZEND_FASTCALL  ZEND_POW_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+
+
+       SAVE_OPLINE();
+       pow_function(&EX_T(opline->result.var).tmp_var,
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
+               opline->op2.zv TSRMLS_CC);
+
+
+       CHECK_EXCEPTION();
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static int ZEND_FASTCALL  ZEND_ASSIGN_POW_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       return zend_binary_assign_op_helper_SPEC_CV_CONST(pow_function, ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);
+}
+
 static int ZEND_FASTCALL  ZEND_ADD_SPEC_CV_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
@@ -35630,6 +35880,26 @@ static int ZEND_FASTCALL  ZEND_YIELD_SPEC_CV_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARG
        ZEND_VM_RETURN();
 }
 
+static int ZEND_FASTCALL  ZEND_POW_SPEC_CV_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zend_free_op free_op2;
+
+       SAVE_OPLINE();
+       pow_function(&EX_T(opline->result.var).tmp_var,
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
+               _get_zval_ptr_tmp(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC);
+
+       zval_dtor(free_op2.var);
+       CHECK_EXCEPTION();
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static int ZEND_FASTCALL  ZEND_ASSIGN_POW_SPEC_CV_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       return zend_binary_assign_op_helper_SPEC_CV_TMP(pow_function, ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);
+}
+
 static int ZEND_FASTCALL  ZEND_ADD_SPEC_CV_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
@@ -37941,6 +38211,26 @@ static int ZEND_FASTCALL  ZEND_YIELD_SPEC_CV_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARG
        ZEND_VM_RETURN();
 }
 
+static int ZEND_FASTCALL  ZEND_POW_SPEC_CV_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zend_free_op free_op2;
+
+       SAVE_OPLINE();
+       pow_function(&EX_T(opline->result.var).tmp_var,
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
+               _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC);
+
+       zval_ptr_dtor_nogc(&free_op2.var);
+       CHECK_EXCEPTION();
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static int ZEND_FASTCALL  ZEND_ASSIGN_POW_SPEC_CV_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       return zend_binary_assign_op_helper_SPEC_CV_VAR(pow_function, ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);
+}
+
 static int ZEND_FASTCALL zend_binary_assign_op_obj_helper_SPEC_CV_UNUSED(int (*binary_op)(zval *result, zval *op1, zval *op2 TSRMLS_DC), ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
@@ -38939,6 +39229,11 @@ static int ZEND_FASTCALL  ZEND_YIELD_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_
        ZEND_VM_RETURN();
 }
 
+static int ZEND_FASTCALL  ZEND_ASSIGN_POW_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       return zend_binary_assign_op_helper_SPEC_CV_UNUSED(pow_function, ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);
+}
+
 static int ZEND_FASTCALL  ZEND_ADD_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
@@ -40918,6 +41213,26 @@ static int ZEND_FASTCALL  ZEND_YIELD_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS
        ZEND_VM_RETURN();
 }
 
+static int ZEND_FASTCALL  ZEND_POW_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+
+
+       SAVE_OPLINE();
+       pow_function(&EX_T(opline->result.var).tmp_var,
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC);
+
+
+       CHECK_EXCEPTION();
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static int ZEND_FASTCALL  ZEND_ASSIGN_POW_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       return zend_binary_assign_op_helper_SPEC_CV_CV(pow_function, ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);
+}
+
 static int ZEND_FASTCALL ZEND_NULL_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
        zend_error_noreturn(E_ERROR, "Invalid opcode %d/%d/%d.", OPLINE->opcode, OPLINE->op1_type, OPLINE->op2_type);
@@ -45078,6 +45393,56 @@ void zend_init_opcodes_handlers(void)
        ZEND_SEND_UNPACK_SPEC_HANDLER,
        ZEND_SEND_UNPACK_SPEC_HANDLER,
        ZEND_SEND_UNPACK_SPEC_HANDLER,
+       ZEND_POW_SPEC_CONST_CONST_HANDLER,
+       ZEND_POW_SPEC_CONST_TMP_HANDLER,
+       ZEND_POW_SPEC_CONST_VAR_HANDLER,
+       ZEND_NULL_HANDLER,
+       ZEND_POW_SPEC_CONST_CV_HANDLER,
+       ZEND_POW_SPEC_TMP_CONST_HANDLER,
+       ZEND_POW_SPEC_TMP_TMP_HANDLER,
+       ZEND_POW_SPEC_TMP_VAR_HANDLER,
+       ZEND_NULL_HANDLER,
+       ZEND_POW_SPEC_TMP_CV_HANDLER,
+       ZEND_POW_SPEC_VAR_CONST_HANDLER,
+       ZEND_POW_SPEC_VAR_TMP_HANDLER,
+       ZEND_POW_SPEC_VAR_VAR_HANDLER,
+       ZEND_NULL_HANDLER,
+       ZEND_POW_SPEC_VAR_CV_HANDLER,
+       ZEND_NULL_HANDLER,
+       ZEND_NULL_HANDLER,
+       ZEND_NULL_HANDLER,
+       ZEND_NULL_HANDLER,
+       ZEND_NULL_HANDLER,
+       ZEND_POW_SPEC_CV_CONST_HANDLER,
+       ZEND_POW_SPEC_CV_TMP_HANDLER,
+       ZEND_POW_SPEC_CV_VAR_HANDLER,
+       ZEND_NULL_HANDLER,
+       ZEND_POW_SPEC_CV_CV_HANDLER,
+       ZEND_NULL_HANDLER,
+       ZEND_NULL_HANDLER,
+       ZEND_NULL_HANDLER,
+       ZEND_NULL_HANDLER,
+       ZEND_NULL_HANDLER,
+       ZEND_NULL_HANDLER,
+       ZEND_NULL_HANDLER,
+       ZEND_NULL_HANDLER,
+       ZEND_NULL_HANDLER,
+       ZEND_NULL_HANDLER,
+       ZEND_ASSIGN_POW_SPEC_VAR_CONST_HANDLER,
+       ZEND_ASSIGN_POW_SPEC_VAR_TMP_HANDLER,
+       ZEND_ASSIGN_POW_SPEC_VAR_VAR_HANDLER,
+       ZEND_ASSIGN_POW_SPEC_VAR_UNUSED_HANDLER,
+       ZEND_ASSIGN_POW_SPEC_VAR_CV_HANDLER,
+       ZEND_ASSIGN_POW_SPEC_UNUSED_CONST_HANDLER,
+       ZEND_ASSIGN_POW_SPEC_UNUSED_TMP_HANDLER,
+       ZEND_ASSIGN_POW_SPEC_UNUSED_VAR_HANDLER,
+       ZEND_ASSIGN_POW_SPEC_UNUSED_UNUSED_HANDLER,
+       ZEND_ASSIGN_POW_SPEC_UNUSED_CV_HANDLER,
+       ZEND_ASSIGN_POW_SPEC_CV_CONST_HANDLER,
+       ZEND_ASSIGN_POW_SPEC_CV_TMP_HANDLER,
+       ZEND_ASSIGN_POW_SPEC_CV_VAR_HANDLER,
+       ZEND_ASSIGN_POW_SPEC_CV_UNUSED_HANDLER,
+       ZEND_ASSIGN_POW_SPEC_CV_CV_HANDLER,
        ZEND_NULL_HANDLER
   };
   zend_opcode_handlers = (opcode_handler_t*)labels;
index d6f51cce5c3f8370e45c17b6ea862bf7b5d1fc1a..23edabc47ff5b35492179a62b764963f08868108 100644 (file)
@@ -21,7 +21,7 @@
 #include <stdio.h>
 #include <zend.h>
 
-const char *zend_vm_opcodes_map[166] = {
+const char *zend_vm_opcodes_map[168] = {
        "ZEND_NOP",
        "ZEND_ADD",
        "ZEND_SUB",
@@ -188,6 +188,8 @@ const char *zend_vm_opcodes_map[166] = {
        "ZEND_FAST_RET",
        "ZEND_RECV_VARIADIC",
        "ZEND_SEND_UNPACK",
+       "ZEND_POW",
+       "ZEND_ASSIGN_POW",
 };
 
 ZEND_API const char* zend_get_opcode_name(zend_uchar opcode) {
index 0f75196ffb205badbad6a07975df00f5b99e2fae..f9c30ca126043b7f215eb590cd6c71589b93dbf8 100644 (file)
@@ -171,5 +171,7 @@ ZEND_API const char *zend_get_opcode_name(zend_uchar opcode);
 #define ZEND_FAST_RET                        163
 #define ZEND_RECV_VARIADIC                   164
 #define ZEND_SEND_UNPACK                     165
+#define ZEND_POW                             166
+#define ZEND_ASSIGN_POW                      167
 
 #endif
index 954d4799af46aacab39186645a1c5b309722facc..8c4eec5518dbf43e77705b2e50d6d128a20b6e97 100644 (file)
@@ -532,6 +532,9 @@ static int gmp_do_operation(zend_uchar opcode, zval *result, zval *op1, zval *op
                DO_BINARY_UI_OP(mpz_sub);
        case ZEND_MUL:
                DO_BINARY_UI_OP(mpz_mul);
+       case ZEND_POW:
+               shift_operator_helper(mpz_pow_ui, result, op1, op2 TSRMLS_CC);
+               return SUCCESS;
        case ZEND_DIV:
                DO_BINARY_UI_OP_EX(mpz_tdiv_q, mpz_tdiv_q_ui, 1);
        case ZEND_MOD:
index 18e0bb2aa9df9355bcd8a5e2410aa3752588ef12..0d8f5cfedb23983db74e4671905671b738fbc669 100644 (file)
@@ -83,6 +83,10 @@ var_dump(--$a);
 var_dump($a--);
 var_dump($a);
 
+$x = gmp_init(3);
+$y = gmp_init(2);
+var_dump($x ** $y);
+
 ?>
 --EXPECTF--
 object(GMP)#%d (1) {
@@ -256,4 +260,7 @@ object(GMP)#%d (1) {
   ["num"]=>
   string(2) "42"
 }
-
+object(GMP)#%d (1) {
+  ["num"]=>
+  string(1) "9"
+}
index 2be049f2005b64e3844187f2a7504579dcd9ea64..65702ddf146ee07615025cbbcdd0dcda9b97d3b3 100644 (file)
@@ -604,43 +604,7 @@ PHP_FUNCTION(pow)
                return;
        }
 
-       /* make sure we're dealing with numbers */
-       convert_scalar_to_number(zbase TSRMLS_CC);
-       convert_scalar_to_number(zexp TSRMLS_CC);
-
-       /* if both base and exponent were longs, we'll try to get a long out */
-       if (Z_TYPE_P(zbase) == IS_LONG && Z_TYPE_P(zexp) == IS_LONG && Z_LVAL_P(zexp) >= 0) {
-               long l1 = 1, l2 = Z_LVAL_P(zbase), i = Z_LVAL_P(zexp);
-               
-               if (i == 0) {
-                       RETURN_LONG(1L);
-               } else if (l2 == 0) {
-                       RETURN_LONG(0);
-               }
-
-               /* calculate pow(long,long) in O(log exp) operations, bail if overflow */
-               while (i >= 1) {
-                       long overflow;
-                       double dval = 0.0;
-
-                       if (i % 2) {
-                               --i;
-                               ZEND_SIGNED_MULTIPLY_LONG(l1,l2,l1,dval,overflow);
-                               if (overflow) RETURN_DOUBLE(dval * pow(l2,i));
-                       } else {
-                               i /= 2;
-                               ZEND_SIGNED_MULTIPLY_LONG(l2,l2,l2,dval,overflow);
-                               if (overflow) RETURN_DOUBLE((double)l1 * pow(dval,i));
-                       }
-                       if (i == 0) {
-                               RETURN_LONG(l1);
-                       }
-               }
-       }
-       convert_to_double(zbase);
-       convert_to_double(zexp);
-       
-       RETURN_DOUBLE(pow(Z_DVAL_P(zbase), Z_DVAL_P(zexp)));
+       pow_function(return_value, zbase, zexp TSRMLS_CC);
 }
 /* }}} */
 
diff --git a/ext/standard/tests/math/pow-operator.phpt b/ext/standard/tests/math/pow-operator.phpt
new file mode 100644 (file)
index 0000000..f80cae1
--- /dev/null
@@ -0,0 +1,22 @@
+--TEST--
+Various pow() tests
+--FILE--
+<?php // $Id$
+
+$x = 2;
+$x **= 3;
+
+$tests = <<<TESTS
+ -3 ** 2 === -9
+ (-3) **2 === 9
+ 2 ** 3 ** 2 === 512
+ (2 ** 3) ** 2 === 64
+ $x === 8
+TESTS;
+
+ echo "On failure, please mail result to php-dev@lists.php.net\n";
+ include(dirname(__FILE__) . '/../../../../tests/quicktester.inc');
+
+--EXPECT--
+On failure, please mail result to php-dev@lists.php.net
+OK
index df511906b021c0fd0b8d86d6665b9f2dee4b3c79..5576e5b49332ccf06e366cd5c23db50b6d338ab7 100644 (file)
@@ -149,7 +149,7 @@ int(0)
 int(0)
 
 -- Iteration 19 --
-float(0)
+int(0)
 
 -- Iteration 20 --
 int(0)
index 24b482680b110706e671c85d1b784e29eb35dd64..e1986ba8582b863ecba3136bfd557e8bc1dad663 100644 (file)
@@ -149,7 +149,7 @@ int(0)
 int(0)
 
 -- Iteration 19 --
-float(0)
+int(0)
 
 -- Iteration 20 --
 int(0)
@@ -173,4 +173,4 @@ int(0)
 
 -- Iteration 26 --
 %s
-===Done===
\ No newline at end of file
+===Done===
index 2116866c9343461cb20ec2fe56a593ce797aabe3..c3f417a7d597a545b956f341f3a285147b7ee431 100644 (file)
@@ -17,7 +17,7 @@ array(14) {
   [0]=>
   array(3) {
     [0]=>
-    int(374)
+    int(376)
     [1]=>
     string(6) "<?php
 "
@@ -27,7 +27,7 @@ array(14) {
   [1]=>
   array(3) {
     [0]=>
-    int(378)
+    int(380)
     [1]=>
     string(8) "<<<DOC1
 "
@@ -37,7 +37,7 @@ array(14) {
   [2]=>
   array(3) {
     [0]=>
-    int(381)
+    int(383)
     [1]=>
     string(1) "{"
     [2]=>
@@ -46,7 +46,7 @@ array(14) {
   [3]=>
   array(3) {
     [0]=>
-    int(310)
+    int(312)
     [1]=>
     string(2) "$s"
     [2]=>
@@ -57,7 +57,7 @@ array(14) {
   [5]=>
   array(3) {
     [0]=>
-    int(378)
+    int(380)
     [1]=>
     string(8) "<<<DOC2
 "
@@ -67,7 +67,7 @@ array(14) {
   [6]=>
   array(3) {
     [0]=>
-    int(379)
+    int(381)
     [1]=>
     string(4) "DOC2"
     [2]=>
@@ -76,7 +76,7 @@ array(14) {
   [7]=>
   array(3) {
     [0]=>
-    int(377)
+    int(379)
     [1]=>
     string(1) "
 "
@@ -90,7 +90,7 @@ array(14) {
   [10]=>
   array(3) {
     [0]=>
-    int(315)
+    int(317)
     [1]=>
     string(1) "
 "
@@ -100,7 +100,7 @@ array(14) {
   [11]=>
   array(3) {
     [0]=>
-    int(379)
+    int(381)
     [1]=>
     string(4) "DOC1"
     [2]=>
@@ -111,7 +111,7 @@ array(14) {
   [13]=>
   array(3) {
     [0]=>
-    int(377)
+    int(379)
     [1]=>
     string(1) "
 "