Back to index

php5  5.3.10
zend_ini_scanner.c
Go to the documentation of this file.
00001 /* Generated by re2c 0.13.5 on Fri Aug 26 18:01:17 2011 */
00002 #line 1 "Zend/zend_ini_scanner.l"
00003 /*
00004    +----------------------------------------------------------------------+
00005    | Zend Engine                                                          |
00006    +----------------------------------------------------------------------+
00007    | Copyright (c) 1998-2012 Zend Technologies Ltd. (http://www.zend.com) |
00008    +----------------------------------------------------------------------+
00009    | This source file is subject to version 2.00 of the Zend license,     |
00010    | that is bundled with this package in the file LICENSE, and is        |
00011    | available through the world-wide-web at the following url:           |
00012    | http://www.zend.com/license/2_00.txt.                                |
00013    | If you did not receive a copy of the Zend license and are unable to  |
00014    | obtain it through the world-wide-web, please send a note to          |
00015    | license@zend.com so we can mail you a copy immediately.              |
00016    +----------------------------------------------------------------------+
00017    | Authors: Zeev Suraski <zeev@zend.com>                                |
00018    |          Jani Taskinen <jani@php.net>                                |
00019    |          Marcus Boerger <helly@php.net>                              |
00020    |          Nuno Lopes <nlopess@php.net>                                |
00021    |          Scott MacVicar <scottmac@php.net>                           |
00022    +----------------------------------------------------------------------+
00023 */
00024 
00025 /* $Id: zend_ini_scanner.c 321634 2012-01-01 13:15:04Z felipe $ */
00026 
00027 #include <errno.h>
00028 #include "zend.h"
00029 #include "zend_globals.h"
00030 #include <zend_ini_parser.h>
00031 #include "zend_ini_scanner.h"
00032 
00033 #if 0
00034 # define YYDEBUG(s, c) printf("state: %d char: %c\n", s, c)
00035 #else
00036 # define YYDEBUG(s, c)
00037 #endif
00038 
00039 #include "zend_ini_scanner_defs.h"
00040 
00041 #define YYCTYPE   unsigned char
00042 /* allow the scanner to read one null byte after the end of the string (from ZEND_MMAP_AHEAD)
00043  * so that if will be able to terminate to match the current token (e.g. non-enclosed string) */
00044 #define YYFILL(n) { if (YYCURSOR > YYLIMIT) return 0; }
00045 #define YYCURSOR  SCNG(yy_cursor)
00046 #define YYLIMIT   SCNG(yy_limit)
00047 #define YYMARKER  SCNG(yy_marker)
00048 
00049 #define YYGETCONDITION()  SCNG(yy_state)
00050 #define YYSETCONDITION(s) SCNG(yy_state) = s
00051 
00052 #define STATE(name)  yyc##name
00053 
00054 /* emulate flex constructs */
00055 #define BEGIN(state) YYSETCONDITION(STATE(state))
00056 #define YYSTATE      YYGETCONDITION()
00057 #define yytext       ((char*)SCNG(yy_text))
00058 #define yyleng       SCNG(yy_leng)
00059 #define yyless(x)    do {   YYCURSOR = (unsigned char*)yytext + x; \
00060                                                  yyleng   = (unsigned int)x; } while(0)
00061 
00062 /* #define yymore()     goto yymore_restart */
00063 
00064 /* perform sanity check. If this message is triggered you should
00065    increase the ZEND_MMAP_AHEAD value in the zend_streams.h file */
00066 #define YYMAXFILL 6
00067 #if ZEND_MMAP_AHEAD < (YYMAXFILL + 1)
00068 # error ZEND_MMAP_AHEAD should be greater than YYMAXFILL
00069 #endif
00070 
00071 
00072 /* How it works (for the core ini directives):
00073  * ===========================================
00074  *
00075  * 1. Scanner scans file for tokens and passes them to parser.
00076  * 2. Parser parses the tokens and passes the name/value pairs to the callback
00077  *    function which stores them in the configuration hash table.
00078  * 3. Later REGISTER_INI_ENTRIES() is called which triggers the actual
00079  *    registering of ini entries and uses zend_get_configuration_directive()
00080  *    to fetch the previously stored name/value pair from configuration hash table
00081  *    and registers the static ini entries which match the name to the value
00082  *    into EG(ini_directives) hash table.
00083  * 4. PATH section entries are used per-request from down to top, each overriding
00084  *    previous if one exists. zend_alter_ini_entry() is called for each entry.
00085  *    Settings in PATH section are ZEND_INI_SYSTEM accessible and thus mimics the
00086  *    php_admin_* directives used within Apache httpd.conf when PHP is compiled as
00087  *    module for Apache.
00088  * 5. User defined ini files (like .htaccess for apache) are parsed for each request and
00089  *    stored in separate hash defined by SAPI.
00090  */
00091 
00092 /* TODO: (ordered by importance :-)
00093  * ===============================================================================
00094  *
00095  *  - Separate constant lookup totally from plain strings (using CONSTANT pattern)
00096  *  - Add #if .. #else .. #endif and ==, !=, <, > , <=, >= operators
00097  *  - Add #include "some.ini"
00098  *  - Allow variables to refer to options also when using parse_ini_file()
00099  *
00100  */
00101 
00102 /* Globals Macros */
00103 #define SCNG  INI_SCNG
00104 #ifdef ZTS
00105 ZEND_API ts_rsrc_id ini_scanner_globals_id;
00106 #else
00107 ZEND_API zend_ini_scanner_globals ini_scanner_globals;
00108 #endif
00109 
00110 /* Eat leading whitespace */
00111 #define EAT_LEADING_WHITESPACE()                     \
00112        while (yytext[0]) {                              \
00113               if (yytext[0] == ' ' || yytext[0] == '\t') { \
00114                      SCNG(yy_text)++;                         \
00115                      yyleng--;                                \
00116               } else {                                     \
00117                      break;                                   \
00118               }                                            \
00119        }
00120 
00121 /* Eat trailing whitespace + extra char */
00122 #define EAT_TRAILING_WHITESPACE_EX(ch)              \
00123        while (yyleng > 0 && (                          \
00124               (ch != 'X' && yytext[yyleng - 1] ==  ch) || \
00125               yytext[yyleng - 1] == '\n' ||               \
00126               yytext[yyleng - 1] == '\r' ||               \
00127               yytext[yyleng - 1] == '\t' ||               \
00128               yytext[yyleng - 1] == ' ')                  \
00129        ) {                                             \
00130               yyleng--;                                   \
00131        }
00132 
00133 /* Eat trailing whitespace */
00134 #define EAT_TRAILING_WHITESPACE()  EAT_TRAILING_WHITESPACE_EX('X')
00135 
00136 #define zend_ini_copy_value(retval, str, len) {  \
00137        Z_STRVAL_P(retval) = zend_strndup(str, len); \
00138        Z_STRLEN_P(retval) = len;                    \
00139        Z_TYPE_P(retval) = IS_STRING;                \
00140 }
00141 
00142 #define RETURN_TOKEN(type, str, len) {           \
00143        zend_ini_copy_value(ini_lval, str, len);     \
00144        return type;                                 \
00145 }
00146 
00147 static void _yy_push_state(int new_state TSRMLS_DC)
00148 {
00149        zend_stack_push(&SCNG(state_stack), (void *) &YYGETCONDITION(), sizeof(int));
00150        YYSETCONDITION(new_state);
00151 }
00152 
00153 #define yy_push_state(state_and_tsrm) _yy_push_state(yyc##state_and_tsrm)
00154 
00155 static void yy_pop_state(TSRMLS_D)
00156 {
00157        int *stack_state;
00158        zend_stack_top(&SCNG(state_stack), (void **) &stack_state);
00159        YYSETCONDITION(*stack_state);
00160        zend_stack_del_top(&SCNG(state_stack));
00161 }
00162 
00163 static void yy_scan_buffer(char *str, unsigned int len TSRMLS_DC)
00164 {
00165        YYCURSOR = (YYCTYPE*)str;
00166        SCNG(yy_start) = YYCURSOR;
00167        YYLIMIT  = YYCURSOR + len;
00168 }
00169 
00170 #define ini_filename SCNG(filename)
00171 
00172 /* {{{ init_ini_scanner()
00173 */
00174 static int init_ini_scanner(int scanner_mode, zend_file_handle *fh TSRMLS_DC)
00175 {
00176        /* Sanity check */
00177        if (scanner_mode != ZEND_INI_SCANNER_NORMAL && scanner_mode != ZEND_INI_SCANNER_RAW) {
00178               zend_error(E_WARNING, "Invalid scanner mode");
00179               return FAILURE;
00180        }
00181 
00182        SCNG(lineno) = 1;
00183        SCNG(scanner_mode) = scanner_mode;
00184        SCNG(yy_in) = fh;
00185 
00186        if (fh != NULL) {
00187               ini_filename = zend_strndup(fh->filename, strlen(fh->filename));
00188        } else {
00189               ini_filename = NULL;
00190        }
00191 
00192        zend_stack_init(&SCNG(state_stack));
00193        BEGIN(INITIAL);
00194 
00195        return SUCCESS;
00196 }
00197 /* }}} */
00198 
00199 /* {{{ shutdown_ini_scanner()
00200 */
00201 void shutdown_ini_scanner(TSRMLS_D)
00202 {
00203        zend_stack_destroy(&SCNG(state_stack));
00204        if (ini_filename) {
00205               free(ini_filename);
00206        }
00207 }
00208 /* }}} */
00209 
00210 /* {{{ zend_ini_scanner_get_lineno()
00211 */
00212 int zend_ini_scanner_get_lineno(TSRMLS_D)
00213 {
00214        return SCNG(lineno);
00215 }
00216 /* }}} */
00217 
00218 /* {{{ zend_ini_scanner_get_filename()
00219 */
00220 char *zend_ini_scanner_get_filename(TSRMLS_D)
00221 {
00222        return ini_filename ? ini_filename : "Unknown";
00223 }
00224 /* }}} */
00225 
00226 /* {{{ zend_ini_open_file_for_scanning()
00227 */
00228 int zend_ini_open_file_for_scanning(zend_file_handle *fh, int scanner_mode TSRMLS_DC)
00229 {
00230        char *buf;
00231        size_t size;
00232 
00233        if (zend_stream_fixup(fh, &buf, &size TSRMLS_CC) == FAILURE ||
00234               init_ini_scanner(scanner_mode, fh TSRMLS_CC) == FAILURE
00235        ) {
00236               return FAILURE;
00237        }
00238 
00239        yy_scan_buffer(buf, size TSRMLS_CC);
00240 
00241        return SUCCESS;
00242 }
00243 /* }}} */
00244 
00245 /* {{{ zend_ini_prepare_string_for_scanning()
00246 */
00247 int zend_ini_prepare_string_for_scanning(char *str, int scanner_mode TSRMLS_DC)
00248 {
00249        int len = strlen(str);
00250 
00251        if (init_ini_scanner(scanner_mode, NULL TSRMLS_CC) == FAILURE) {
00252               return FAILURE;
00253        }
00254 
00255        yy_scan_buffer(str, len TSRMLS_CC);
00256 
00257        return SUCCESS;
00258 }
00259 /* }}} */
00260 
00261 /* {{{ zend_ini_escape_string()
00262  */
00263 static void zend_ini_escape_string(zval *lval, char *str, int len, char quote_type TSRMLS_DC)
00264 {
00265        register char *s, *t;
00266        char *end;
00267 
00268        zend_ini_copy_value(lval, str, len);
00269 
00270        /* convert escape sequences */
00271        s = t = Z_STRVAL_P(lval);
00272        end = s + Z_STRLEN_P(lval);
00273 
00274        while (s < end) {
00275               if (*s == '\\') {
00276                      s++;
00277                      if (s >= end) {
00278                             *t++ = '\\';
00279                             continue;
00280                      }
00281                      switch (*s) {
00282                             case '"':
00283                                    if (*s != quote_type) {
00284                                           *t++ = '\\';
00285                                           *t++ = *s;
00286                                           break;
00287                                    }
00288                             case '\\':
00289                             case '$':
00290                                    *t++ = *s;
00291                                    Z_STRLEN_P(lval)--;
00292                                    break;
00293                             default:
00294                                    *t++ = '\\';
00295                                    *t++ = *s;
00296                                    break;
00297                      }
00298               } else {
00299                      *t++ = *s;
00300               }
00301               if (*s == '\n' || (*s == '\r' && (*(s+1) != '\n'))) {
00302                      SCNG(lineno)++;
00303               }
00304               s++;
00305        }
00306        *t = 0;
00307 }
00308 /* }}} */
00309 
00310 int ini_lex(zval *ini_lval TSRMLS_DC)
00311 {
00312 restart:
00313        SCNG(yy_text) = YYCURSOR;
00314 
00315 /* yymore_restart: */
00316        /* detect EOF */
00317        if (YYCURSOR >= YYLIMIT) {
00318               if (YYSTATE == STATE(ST_VALUE) || YYSTATE == STATE(ST_RAW)) {
00319                      BEGIN(INITIAL);
00320                      return END_OF_LINE;
00321               }
00322               return 0;
00323        }
00324 
00325        /* Eat any UTF-8 BOM we find in the first 3 bytes */
00326        if (YYCURSOR == SCNG(yy_start) && YYCURSOR + 3 < YYLIMIT) {
00327               if (memcmp(YYCURSOR, "\xef\xbb\xbf", 3) == 0) {
00328                      YYCURSOR += 3;
00329                      goto restart;
00330               }
00331        }
00332 
00333 #line 334 "Zend/zend_ini_scanner.c"
00334 {
00335        YYCTYPE yych;
00336        unsigned int yyaccept = 0;
00337        if (YYGETCONDITION() < 4) {
00338               if (YYGETCONDITION() < 2) {
00339                      if (YYGETCONDITION() < 1) {
00340                             goto yyc_INITIAL;
00341                      } else {
00342                             goto yyc_ST_OFFSET;
00343                      }
00344               } else {
00345                      if (YYGETCONDITION() < 3) {
00346                             goto yyc_ST_SECTION_VALUE;
00347                      } else {
00348                             goto yyc_ST_VALUE;
00349                      }
00350               }
00351        } else {
00352               if (YYGETCONDITION() < 6) {
00353                      if (YYGETCONDITION() < 5) {
00354                             goto yyc_ST_SECTION_RAW;
00355                      } else {
00356                             goto yyc_ST_DOUBLE_QUOTES;
00357                      }
00358               } else {
00359                      if (YYGETCONDITION() < 7) {
00360                             goto yyc_ST_VARNAME;
00361                      } else {
00362                             goto yyc_ST_RAW;
00363                      }
00364               }
00365        }
00366 /* *********************************** */
00367 yyc_INITIAL:
00368        {
00369               static const unsigned char yybm[] = {
00370                      144, 144, 144, 144, 144, 144, 144, 144, 
00371                      144, 160,   0, 144, 144,   0, 144, 144, 
00372                      144, 144, 144, 144, 144, 144, 144, 144, 
00373                      144, 144, 144, 144, 144, 144, 144, 144, 
00374                      240, 128, 128, 144, 128, 144, 128, 144, 
00375                      128, 128, 144, 144, 144, 144, 144, 144, 
00376                      144, 144, 144, 144, 144, 144, 144, 144, 
00377                      144, 144, 144, 128, 144, 128, 144, 144, 
00378                      144, 144, 144, 144, 144, 144, 144, 144, 
00379                      144, 144, 144, 144, 144, 144, 144, 144, 
00380                      144, 144, 144, 144, 144, 144, 144, 144, 
00381                      144, 144, 144, 128, 144, 144, 144, 144, 
00382                      144, 144, 144, 144, 144, 144, 144, 144, 
00383                      144, 144, 144, 144, 144, 144, 144, 144, 
00384                      144, 144, 144, 144, 144, 144, 144, 144, 
00385                      144, 144, 144, 128, 128, 128, 128, 144, 
00386                      144, 144, 144, 144, 144, 144, 144, 144, 
00387                      144, 144, 144, 144, 144, 144, 144, 144, 
00388                      144, 144, 144, 144, 144, 144, 144, 144, 
00389                      144, 144, 144, 144, 144, 144, 144, 144, 
00390                      144, 144, 144, 144, 144, 144, 144, 144, 
00391                      144, 144, 144, 144, 144, 144, 144, 144, 
00392                      144, 144, 144, 144, 144, 144, 144, 144, 
00393                      144, 144, 144, 144, 144, 144, 144, 144, 
00394                      144, 144, 144, 144, 144, 144, 144, 144, 
00395                      144, 144, 144, 144, 144, 144, 144, 144, 
00396                      144, 144, 144, 144, 144, 144, 144, 144, 
00397                      144, 144, 144, 144, 144, 144, 144, 144, 
00398                      144, 144, 144, 144, 144, 144, 144, 144, 
00399                      144, 144, 144, 144, 144, 144, 144, 144, 
00400                      144, 144, 144, 144, 144, 144, 144, 144, 
00401                      144, 144, 144, 144, 144, 144, 144, 144, 
00402               };
00403 
00404               YYDEBUG(0, *YYCURSOR);
00405               YYFILL(5);
00406               yych = *YYCURSOR;
00407               YYDEBUG(-1, yych);
00408               switch (yych) {
00409               case '\t':    goto yy4;
00410               case '\n':    goto yy6;
00411               case '\r':    goto yy8;
00412               case ' ':     goto yy9;
00413               case '!':
00414               case '"':
00415               case '$':
00416               case '&':
00417               case '(':
00418               case ')':
00419               case '{':
00420               case '|':
00421               case '}':
00422               case '~':     goto yy10;
00423               case '#':     goto yy12;
00424               case '%':
00425               case '\'':
00426               case '*':
00427               case '+':
00428               case ',':
00429               case '-':
00430               case '.':
00431               case '/':
00432               case ':':
00433               case '<':
00434               case '>':
00435               case '?':
00436               case '@':
00437               case ']':
00438               case '^':     goto yy13;
00439               case ';':     goto yy14;
00440               case '=':     goto yy16;
00441               case 'F':
00442               case 'f':     goto yy18;
00443               case 'N':
00444               case 'n':     goto yy19;
00445               case 'O':
00446               case 'o':     goto yy20;
00447               case 'T':
00448               case 't':     goto yy21;
00449               case 'Y':
00450               case 'y':     goto yy22;
00451               case '[':     goto yy23;
00452               default:      goto yy2;
00453               }
00454 yy2:
00455               YYDEBUG(2, *YYCURSOR);
00456               ++YYCURSOR;
00457               yych = *YYCURSOR;
00458               goto yy26;
00459 yy3:
00460               YYDEBUG(3, *YYCURSOR);
00461               yyleng = YYCURSOR - SCNG(yy_text);
00462 #line 426 "Zend/zend_ini_scanner.l"
00463               { /* Get option name */
00464        /* Eat leading whitespace */
00465        EAT_LEADING_WHITESPACE();
00466 
00467        /* Eat trailing whitespace */
00468        EAT_TRAILING_WHITESPACE();
00469 
00470        RETURN_TOKEN(TC_LABEL, yytext, yyleng);
00471 }
00472 #line 473 "Zend/zend_ini_scanner.c"
00473 yy4:
00474               YYDEBUG(4, *YYCURSOR);
00475               yyaccept = 0;
00476               yych = *(YYMARKER = ++YYCURSOR);
00477               goto yy68;
00478 yy5:
00479               YYDEBUG(5, *YYCURSOR);
00480               yyleng = YYCURSOR - SCNG(yy_text);
00481 #line 544 "Zend/zend_ini_scanner.l"
00482               {
00483        /* eat whitespace */
00484        goto restart;
00485 }
00486 #line 487 "Zend/zend_ini_scanner.c"
00487 yy6:
00488               YYDEBUG(6, *YYCURSOR);
00489               ++YYCURSOR;
00490 yy7:
00491               YYDEBUG(7, *YYCURSOR);
00492               yyleng = YYCURSOR - SCNG(yy_text);
00493 #line 549 "Zend/zend_ini_scanner.l"
00494               {
00495        SCNG(lineno)++;
00496        return END_OF_LINE;
00497 }
00498 #line 499 "Zend/zend_ini_scanner.c"
00499 yy8:
00500               YYDEBUG(8, *YYCURSOR);
00501               yych = *++YYCURSOR;
00502               if (yych == '\n') goto yy71;
00503               goto yy7;
00504 yy9:
00505               YYDEBUG(9, *YYCURSOR);
00506               yyaccept = 1;
00507               yych = *(YYMARKER = ++YYCURSOR);
00508               if (yych <= ' ') {
00509                      if (yych <= '\n') {
00510                             if (yych <= 0x08) goto yy26;
00511                             if (yych <= '\t') goto yy67;
00512                             goto yy71;
00513                      } else {
00514                             if (yych == '\r') goto yy72;
00515                             if (yych <= 0x1F) goto yy26;
00516                             goto yy69;
00517                      }
00518               } else {
00519                      if (yych <= ':') {
00520                             if (yych == '#') goto yy58;
00521                             goto yy26;
00522                      } else {
00523                             if (yych <= ';') goto yy53;
00524                             if (yych == '=') goto yy51;
00525                             goto yy26;
00526                      }
00527               }
00528 yy10:
00529               YYDEBUG(10, *YYCURSOR);
00530               ++YYCURSOR;
00531               YYDEBUG(11, *YYCURSOR);
00532               yyleng = YYCURSOR - SCNG(yy_text);
00533 #line 472 "Zend/zend_ini_scanner.l"
00534               { /* Disallow these chars outside option values */
00535        return yytext[0];
00536 }
00537 #line 538 "Zend/zend_ini_scanner.c"
00538 yy12:
00539               YYDEBUG(12, *YYCURSOR);
00540               yyaccept = 1;
00541               yych = *(YYMARKER = ++YYCURSOR);
00542               goto yy59;
00543 yy13:
00544               YYDEBUG(13, *YYCURSOR);
00545               yych = *++YYCURSOR;
00546               goto yy26;
00547 yy14:
00548               YYDEBUG(14, *YYCURSOR);
00549               yyaccept = 2;
00550               yych = *(YYMARKER = ++YYCURSOR);
00551               goto yy54;
00552               YYDEBUG(15, *YYCURSOR);
00553               yyleng = YYCURSOR - SCNG(yy_text);
00554 #line 572 "Zend/zend_ini_scanner.l"
00555               {
00556        return 0;
00557 }
00558 #line 559 "Zend/zend_ini_scanner.c"
00559 yy16:
00560               YYDEBUG(16, *YYCURSOR);
00561               ++YYCURSOR;
00562               yych = *YYCURSOR;
00563               goto yy52;
00564 yy17:
00565               YYDEBUG(17, *YYCURSOR);
00566               yyleng = YYCURSOR - SCNG(yy_text);
00567 #line 436 "Zend/zend_ini_scanner.l"
00568               { /* Start option value */
00569        if (SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW) {
00570               yy_push_state(ST_RAW TSRMLS_CC);
00571        } else {
00572               yy_push_state(ST_VALUE TSRMLS_CC);
00573        }
00574        return '=';
00575 }
00576 #line 577 "Zend/zend_ini_scanner.c"
00577 yy18:
00578               YYDEBUG(18, *YYCURSOR);
00579               yych = *++YYCURSOR;
00580               if (yych == 'A') goto yy48;
00581               if (yych == 'a') goto yy48;
00582               goto yy26;
00583 yy19:
00584               YYDEBUG(19, *YYCURSOR);
00585               yych = *++YYCURSOR;
00586               if (yych <= 'U') {
00587                      if (yych == 'O') goto yy44;
00588                      if (yych <= 'T') goto yy26;
00589                      goto yy45;
00590               } else {
00591                      if (yych <= 'o') {
00592                             if (yych <= 'n') goto yy26;
00593                             goto yy44;
00594                      } else {
00595                             if (yych == 'u') goto yy45;
00596                             goto yy26;
00597                      }
00598               }
00599 yy20:
00600               YYDEBUG(20, *YYCURSOR);
00601               yych = *++YYCURSOR;
00602               if (yych <= 'N') {
00603                      if (yych == 'F') goto yy38;
00604                      if (yych <= 'M') goto yy26;
00605                      goto yy31;
00606               } else {
00607                      if (yych <= 'f') {
00608                             if (yych <= 'e') goto yy26;
00609                             goto yy38;
00610                      } else {
00611                             if (yych == 'n') goto yy31;
00612                             goto yy26;
00613                      }
00614               }
00615 yy21:
00616               YYDEBUG(21, *YYCURSOR);
00617               yych = *++YYCURSOR;
00618               if (yych == 'R') goto yy36;
00619               if (yych == 'r') goto yy36;
00620               goto yy26;
00621 yy22:
00622               YYDEBUG(22, *YYCURSOR);
00623               yych = *++YYCURSOR;
00624               if (yych == 'E') goto yy27;
00625               if (yych == 'e') goto yy27;
00626               goto yy26;
00627 yy23:
00628               YYDEBUG(23, *YYCURSOR);
00629               ++YYCURSOR;
00630               YYDEBUG(24, *YYCURSOR);
00631               yyleng = YYCURSOR - SCNG(yy_text);
00632 #line 355 "Zend/zend_ini_scanner.l"
00633               { /* Section start */
00634        /* Enter section data lookup state */
00635        if (SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW) {
00636               yy_push_state(ST_SECTION_RAW TSRMLS_CC);
00637        } else {
00638               yy_push_state(ST_SECTION_VALUE TSRMLS_CC);
00639        }
00640        return TC_SECTION;
00641 }
00642 #line 643 "Zend/zend_ini_scanner.c"
00643 yy25:
00644               YYDEBUG(25, *YYCURSOR);
00645               ++YYCURSOR;
00646               YYFILL(1);
00647               yych = *YYCURSOR;
00648 yy26:
00649               YYDEBUG(26, *YYCURSOR);
00650               if (yybm[0+yych] & 16) {
00651                      goto yy25;
00652               }
00653               if (yych == '[') goto yy28;
00654               goto yy3;
00655 yy27:
00656               YYDEBUG(27, *YYCURSOR);
00657               yych = *++YYCURSOR;
00658               if (yych == 'S') goto yy31;
00659               if (yych == 's') goto yy31;
00660               goto yy26;
00661 yy28:
00662               YYDEBUG(28, *YYCURSOR);
00663               ++YYCURSOR;
00664               YYFILL(1);
00665               yych = *YYCURSOR;
00666               YYDEBUG(29, *YYCURSOR);
00667               if (yybm[0+yych] & 32) {
00668                      goto yy28;
00669               }
00670               YYDEBUG(30, *YYCURSOR);
00671               yyleng = YYCURSOR - SCNG(yy_text);
00672 #line 380 "Zend/zend_ini_scanner.l"
00673               { /* Start of option with offset */
00674        /* Eat leading whitespace */
00675        EAT_LEADING_WHITESPACE();
00676        
00677        /* Eat trailing whitespace and [ */
00678        EAT_TRAILING_WHITESPACE_EX('[');
00679 
00680        /* Enter offset lookup state */
00681        yy_push_state(ST_OFFSET TSRMLS_CC);
00682 
00683        RETURN_TOKEN(TC_OFFSET, yytext, yyleng);
00684 }
00685 #line 686 "Zend/zend_ini_scanner.c"
00686 yy31:
00687               YYDEBUG(31, *YYCURSOR);
00688               ++YYCURSOR;
00689               YYFILL(1);
00690               yych = *YYCURSOR;
00691               YYDEBUG(32, *YYCURSOR);
00692               if (yybm[0+yych] & 64) {
00693                      goto yy31;
00694               }
00695               if (yych <= '&') {
00696                      if (yych <= '\r') {
00697                             if (yych <= '\t') {
00698                                    if (yych <= 0x08) goto yy25;
00699                                    goto yy34;
00700                             } else {
00701                                    if (yych <= '\n') goto yy33;
00702                                    if (yych <= '\f') goto yy25;
00703                             }
00704                      } else {
00705                             if (yych <= '#') {
00706                                    if (yych <= ' ') goto yy25;
00707                                    if (yych >= '#') goto yy25;
00708                             } else {
00709                                    if (yych == '%') goto yy25;
00710                             }
00711                      }
00712               } else {
00713                      if (yych <= '<') {
00714                             if (yych <= ')') {
00715                                    if (yych <= '\'') goto yy25;
00716                             } else {
00717                                    if (yych != ';') goto yy25;
00718                             }
00719                      } else {
00720                             if (yych <= '[') {
00721                                    if (yych <= '=') goto yy33;
00722                                    if (yych <= 'Z') goto yy25;
00723                                    goto yy28;
00724                             } else {
00725                                    if (yych <= 'z') goto yy25;
00726                                    if (yych >= 0x7F) goto yy25;
00727                             }
00728                      }
00729               }
00730 yy33:
00731               YYDEBUG(33, *YYCURSOR);
00732               yyleng = YYCURSOR - SCNG(yy_text);
00733 #line 418 "Zend/zend_ini_scanner.l"
00734               { /* TRUE value (when used outside option value/offset this causes parse error!) */
00735        RETURN_TOKEN(BOOL_TRUE, "1", 1);
00736 }
00737 #line 738 "Zend/zend_ini_scanner.c"
00738 yy34:
00739               YYDEBUG(34, *YYCURSOR);
00740               ++YYCURSOR;
00741               YYFILL(1);
00742               yych = *YYCURSOR;
00743               YYDEBUG(35, *YYCURSOR);
00744               if (yych == '\t') goto yy34;
00745               if (yych == ' ') goto yy34;
00746               goto yy33;
00747 yy36:
00748               YYDEBUG(36, *YYCURSOR);
00749               yych = *++YYCURSOR;
00750               if (yych == 'U') goto yy37;
00751               if (yych != 'u') goto yy26;
00752 yy37:
00753               YYDEBUG(37, *YYCURSOR);
00754               yych = *++YYCURSOR;
00755               if (yych == 'E') goto yy31;
00756               if (yych == 'e') goto yy31;
00757               goto yy26;
00758 yy38:
00759               YYDEBUG(38, *YYCURSOR);
00760               yych = *++YYCURSOR;
00761               if (yych == 'F') goto yy39;
00762               if (yych != 'f') goto yy26;
00763 yy39:
00764               YYDEBUG(39, *YYCURSOR);
00765               ++YYCURSOR;
00766               YYFILL(1);
00767               yych = *YYCURSOR;
00768               YYDEBUG(40, *YYCURSOR);
00769               if (yych <= '%') {
00770                      if (yych <= '\r') {
00771                             if (yych <= '\t') {
00772                                    if (yych <= 0x08) goto yy25;
00773                                    goto yy42;
00774                             } else {
00775                                    if (yych <= '\n') goto yy41;
00776                                    if (yych <= '\f') goto yy25;
00777                             }
00778                      } else {
00779                             if (yych <= '"') {
00780                                    if (yych <= 0x1F) goto yy25;
00781                                    if (yych <= ' ') goto yy39;
00782                             } else {
00783                                    if (yych != '$') goto yy25;
00784                             }
00785                      }
00786               } else {
00787                      if (yych <= '<') {
00788                             if (yych <= ')') {
00789                                    if (yych == '\'') goto yy25;
00790                             } else {
00791                                    if (yych != ';') goto yy25;
00792                             }
00793                      } else {
00794                             if (yych <= '[') {
00795                                    if (yych <= '=') goto yy41;
00796                                    if (yych <= 'Z') goto yy25;
00797                                    goto yy28;
00798                             } else {
00799                                    if (yych <= 'z') goto yy25;
00800                                    if (yych >= 0x7F) goto yy25;
00801                             }
00802                      }
00803               }
00804 yy41:
00805               YYDEBUG(41, *YYCURSOR);
00806               yyleng = YYCURSOR - SCNG(yy_text);
00807 #line 422 "Zend/zend_ini_scanner.l"
00808               { /* FALSE value (when used outside option value/offset this causes parse error!)*/
00809        RETURN_TOKEN(BOOL_FALSE, "", 0);
00810 }
00811 #line 812 "Zend/zend_ini_scanner.c"
00812 yy42:
00813               YYDEBUG(42, *YYCURSOR);
00814               ++YYCURSOR;
00815               YYFILL(1);
00816               yych = *YYCURSOR;
00817               YYDEBUG(43, *YYCURSOR);
00818               if (yych == '\t') goto yy42;
00819               if (yych == ' ') goto yy42;
00820               goto yy41;
00821 yy44:
00822               YYDEBUG(44, *YYCURSOR);
00823               yych = *++YYCURSOR;
00824               if (yych <= '&') {
00825                      if (yych <= 0x1F) {
00826                             if (yych <= '\n') {
00827                                    if (yych <= 0x08) goto yy26;
00828                                    if (yych <= '\t') goto yy42;
00829                                    goto yy41;
00830                             } else {
00831                                    if (yych == '\r') goto yy41;
00832                                    goto yy26;
00833                             }
00834                      } else {
00835                             if (yych <= '#') {
00836                                    if (yych <= ' ') goto yy39;
00837                                    if (yych <= '"') goto yy41;
00838                                    goto yy26;
00839                             } else {
00840                                    if (yych == '%') goto yy26;
00841                                    goto yy41;
00842                             }
00843                      }
00844               } else {
00845                      if (yych <= '=') {
00846                             if (yych <= ':') {
00847                                    if (yych <= '\'') goto yy26;
00848                                    if (yych <= ')') goto yy41;
00849                                    goto yy26;
00850                             } else {
00851                                    if (yych == '<') goto yy26;
00852                                    goto yy41;
00853                             }
00854                      } else {
00855                             if (yych <= 'm') {
00856                                    if (yych == 'N') goto yy47;
00857                                    goto yy26;
00858                             } else {
00859                                    if (yych <= 'n') goto yy47;
00860                                    if (yych <= 'z') goto yy26;
00861                                    if (yych <= '~') goto yy41;
00862                                    goto yy26;
00863                             }
00864                      }
00865               }
00866 yy45:
00867               YYDEBUG(45, *YYCURSOR);
00868               yych = *++YYCURSOR;
00869               if (yych == 'L') goto yy46;
00870               if (yych != 'l') goto yy26;
00871 yy46:
00872               YYDEBUG(46, *YYCURSOR);
00873               yych = *++YYCURSOR;
00874               if (yych == 'L') goto yy39;
00875               if (yych == 'l') goto yy39;
00876               goto yy26;
00877 yy47:
00878               YYDEBUG(47, *YYCURSOR);
00879               yych = *++YYCURSOR;
00880               if (yych == 'E') goto yy39;
00881               if (yych == 'e') goto yy39;
00882               goto yy26;
00883 yy48:
00884               YYDEBUG(48, *YYCURSOR);
00885               yych = *++YYCURSOR;
00886               if (yych == 'L') goto yy49;
00887               if (yych != 'l') goto yy26;
00888 yy49:
00889               YYDEBUG(49, *YYCURSOR);
00890               yych = *++YYCURSOR;
00891               if (yych == 'S') goto yy50;
00892               if (yych != 's') goto yy26;
00893 yy50:
00894               YYDEBUG(50, *YYCURSOR);
00895               yych = *++YYCURSOR;
00896               if (yych == 'E') goto yy39;
00897               if (yych == 'e') goto yy39;
00898               goto yy26;
00899 yy51:
00900               YYDEBUG(51, *YYCURSOR);
00901               ++YYCURSOR;
00902               YYFILL(1);
00903               yych = *YYCURSOR;
00904 yy52:
00905               YYDEBUG(52, *YYCURSOR);
00906               if (yych == '\t') goto yy51;
00907               if (yych == ' ') goto yy51;
00908               goto yy17;
00909 yy53:
00910               YYDEBUG(53, *YYCURSOR);
00911               ++YYCURSOR;
00912               YYFILL(2);
00913               yych = *YYCURSOR;
00914 yy54:
00915               YYDEBUG(54, *YYCURSOR);
00916               if (yybm[0+yych] & 128) {
00917                      goto yy53;
00918               }
00919               if (yych >= '\r') goto yy57;
00920 yy55:
00921               YYDEBUG(55, *YYCURSOR);
00922               ++YYCURSOR;
00923 yy56:
00924               YYDEBUG(56, *YYCURSOR);
00925               yyleng = YYCURSOR - SCNG(yy_text);
00926 #line 554 "Zend/zend_ini_scanner.l"
00927               { /* Comment */
00928        BEGIN(INITIAL);
00929        SCNG(lineno)++;
00930        return END_OF_LINE;
00931 }
00932 #line 933 "Zend/zend_ini_scanner.c"
00933 yy57:
00934               YYDEBUG(57, *YYCURSOR);
00935               yych = *++YYCURSOR;
00936               if (yych == '\n') goto yy55;
00937               goto yy56;
00938 yy58:
00939               YYDEBUG(58, *YYCURSOR);
00940               yyaccept = 1;
00941               YYMARKER = ++YYCURSOR;
00942               YYFILL(2);
00943               yych = *YYCURSOR;
00944 yy59:
00945               YYDEBUG(59, *YYCURSOR);
00946               if (yych <= '&') {
00947                      if (yych <= '\r') {
00948                             if (yych <= '\t') {
00949                                    if (yych <= 0x08) goto yy58;
00950                             } else {
00951                                    if (yych <= '\n') goto yy64;
00952                                    if (yych <= '\f') goto yy58;
00953                                    goto yy66;
00954                             }
00955                      } else {
00956                             if (yych <= '#') {
00957                                    if (yych <= ' ') goto yy58;
00958                                    if (yych >= '#') goto yy58;
00959                             } else {
00960                                    if (yych == '%') goto yy58;
00961                             }
00962                      }
00963               } else {
00964                      if (yych <= '<') {
00965                             if (yych <= ')') {
00966                                    if (yych <= '\'') goto yy58;
00967                             } else {
00968                                    if (yych != ';') goto yy58;
00969                             }
00970                      } else {
00971                             if (yych <= '[') {
00972                                    if (yych <= '=') goto yy60;
00973                                    if (yych <= 'Z') goto yy58;
00974                                    goto yy62;
00975                             } else {
00976                                    if (yych <= 'z') goto yy58;
00977                                    if (yych >= 0x7F) goto yy58;
00978                             }
00979                      }
00980               }
00981 yy60:
00982               YYDEBUG(60, *YYCURSOR);
00983               ++YYCURSOR;
00984               YYFILL(2);
00985               yych = *YYCURSOR;
00986               YYDEBUG(61, *YYCURSOR);
00987               if (yych == '\n') goto yy64;
00988               if (yych == '\r') goto yy66;
00989               goto yy60;
00990 yy62:
00991               YYDEBUG(62, *YYCURSOR);
00992               yyaccept = 3;
00993               YYMARKER = ++YYCURSOR;
00994               YYFILL(2);
00995               yych = *YYCURSOR;
00996               YYDEBUG(63, *YYCURSOR);
00997               if (yych <= '\f') {
00998                      if (yych <= 0x08) goto yy60;
00999                      if (yych <= '\t') goto yy62;
01000                      if (yych >= '\v') goto yy60;
01001               } else {
01002                      if (yych <= '\r') goto yy66;
01003                      if (yych == ' ') goto yy62;
01004                      goto yy60;
01005               }
01006 yy64:
01007               YYDEBUG(64, *YYCURSOR);
01008               ++YYCURSOR;
01009 yy65:
01010               YYDEBUG(65, *YYCURSOR);
01011               yyleng = YYCURSOR - SCNG(yy_text);
01012 #line 560 "Zend/zend_ini_scanner.l"
01013               { /* #Comment */
01014        zend_error(E_DEPRECATED, "Comments starting with '#' are deprecated in %s on line %d", zend_ini_scanner_get_filename(TSRMLS_C), SCNG(lineno));
01015        BEGIN(INITIAL);
01016        SCNG(lineno)++;
01017        return END_OF_LINE;
01018 }
01019 #line 1020 "Zend/zend_ini_scanner.c"
01020 yy66:
01021               YYDEBUG(66, *YYCURSOR);
01022               yych = *++YYCURSOR;
01023               if (yych == '\n') goto yy64;
01024               goto yy65;
01025 yy67:
01026               YYDEBUG(67, *YYCURSOR);
01027               yyaccept = 0;
01028               YYMARKER = ++YYCURSOR;
01029               YYFILL(2);
01030               yych = *YYCURSOR;
01031 yy68:
01032               YYDEBUG(68, *YYCURSOR);
01033               if (yych <= ' ') {
01034                      if (yych <= '\n') {
01035                             if (yych <= 0x08) goto yy5;
01036                             if (yych <= '\t') goto yy67;
01037                             goto yy71;
01038                      } else {
01039                             if (yych == '\r') goto yy72;
01040                             if (yych <= 0x1F) goto yy5;
01041                             goto yy67;
01042                      }
01043               } else {
01044                      if (yych <= ':') {
01045                             if (yych == '#') goto yy60;
01046                             goto yy5;
01047                      } else {
01048                             if (yych <= ';') goto yy53;
01049                             if (yych == '=') goto yy51;
01050                             goto yy5;
01051                      }
01052               }
01053 yy69:
01054               YYDEBUG(69, *YYCURSOR);
01055               yyaccept = 1;
01056               YYMARKER = ++YYCURSOR;
01057               YYFILL(2);
01058               yych = *YYCURSOR;
01059               YYDEBUG(70, *YYCURSOR);
01060               if (yych <= '%') {
01061                      if (yych <= '\r') {
01062                             if (yych <= '\t') {
01063                                    if (yych <= 0x08) goto yy25;
01064                                    goto yy67;
01065                             } else {
01066                                    if (yych <= '\n') goto yy71;
01067                                    if (yych <= '\f') goto yy25;
01068                                    goto yy72;
01069                             }
01070                      } else {
01071                             if (yych <= '"') {
01072                                    if (yych <= 0x1F) goto yy25;
01073                                    if (yych <= ' ') goto yy69;
01074                                    goto yy3;
01075                             } else {
01076                                    if (yych <= '#') goto yy58;
01077                                    if (yych <= '$') goto yy3;
01078                                    goto yy25;
01079                             }
01080                      }
01081               } else {
01082                      if (yych <= '<') {
01083                             if (yych <= ')') {
01084                                    if (yych == '\'') goto yy25;
01085                                    goto yy3;
01086                             } else {
01087                                    if (yych == ';') goto yy53;
01088                                    goto yy25;
01089                             }
01090                      } else {
01091                             if (yych <= '[') {
01092                                    if (yych <= '=') goto yy51;
01093                                    if (yych <= 'Z') goto yy25;
01094                                    goto yy28;
01095                             } else {
01096                                    if (yych <= 'z') goto yy25;
01097                                    if (yych <= '~') goto yy3;
01098                                    goto yy25;
01099                             }
01100                      }
01101               }
01102 yy71:
01103               YYDEBUG(71, *YYCURSOR);
01104               yych = *++YYCURSOR;
01105               goto yy7;
01106 yy72:
01107               YYDEBUG(72, *YYCURSOR);
01108               ++YYCURSOR;
01109               if ((yych = *YYCURSOR) == '\n') goto yy71;
01110               goto yy7;
01111        }
01112 /* *********************************** */
01113 yyc_ST_DOUBLE_QUOTES:
01114        {
01115               static const unsigned char yybm[] = {
01116                        0,   0,   0,   0,   0,   0,   0,   0, 
01117                        0, 128,   0,   0,   0,   0,   0,   0, 
01118                        0,   0,   0,   0,   0,   0,   0,   0, 
01119                        0,   0,   0,   0,   0,   0,   0,   0, 
01120                      128,   0,   0,   0,   0,   0,   0,   0, 
01121                        0,   0,   0,   0,   0,   0,   0,   0, 
01122                        0,   0,   0,   0,   0,   0,   0,   0, 
01123                        0,   0,   0,   0,   0,   0,   0,   0, 
01124                        0,   0,   0,   0,   0,   0,   0,   0, 
01125                        0,   0,   0,   0,   0,   0,   0,   0, 
01126                        0,   0,   0,   0,   0,   0,   0,   0, 
01127                        0,   0,   0,   0,   0,   0,   0,   0, 
01128                        0,   0,   0,   0,   0,   0,   0,   0, 
01129                        0,   0,   0,   0,   0,   0,   0,   0, 
01130                        0,   0,   0,   0,   0,   0,   0,   0, 
01131                        0,   0,   0,   0,   0,   0,   0,   0, 
01132                        0,   0,   0,   0,   0,   0,   0,   0, 
01133                        0,   0,   0,   0,   0,   0,   0,   0, 
01134                        0,   0,   0,   0,   0,   0,   0,   0, 
01135                        0,   0,   0,   0,   0,   0,   0,   0, 
01136                        0,   0,   0,   0,   0,   0,   0,   0, 
01137                        0,   0,   0,   0,   0,   0,   0,   0, 
01138                        0,   0,   0,   0,   0,   0,   0,   0, 
01139                        0,   0,   0,   0,   0,   0,   0,   0, 
01140                        0,   0,   0,   0,   0,   0,   0,   0, 
01141                        0,   0,   0,   0,   0,   0,   0,   0, 
01142                        0,   0,   0,   0,   0,   0,   0,   0, 
01143                        0,   0,   0,   0,   0,   0,   0,   0, 
01144                        0,   0,   0,   0,   0,   0,   0,   0, 
01145                        0,   0,   0,   0,   0,   0,   0,   0, 
01146                        0,   0,   0,   0,   0,   0,   0,   0, 
01147                        0,   0,   0,   0,   0,   0,   0,   0, 
01148               };
01149               YYDEBUG(73, *YYCURSOR);
01150               YYFILL(2);
01151               yych = *YYCURSOR;
01152               if (yych == '"') goto yy77;
01153               if (yych == '$') goto yy79;
01154               YYDEBUG(75, *YYCURSOR);
01155               ++YYCURSOR;
01156 yy76:
01157               YYDEBUG(76, *YYCURSOR);
01158               yyleng = YYCURSOR - SCNG(yy_text);
01159 #line 504 "Zend/zend_ini_scanner.l"
01160               { /* Escape double quoted string contents */
01161        if (YYCURSOR > YYLIMIT) {
01162               return 0;
01163        }
01164        
01165        while (YYCURSOR < YYLIMIT) {
01166               switch (*YYCURSOR++) {
01167                      case '"':
01168                             if (YYCURSOR < YYLIMIT && YYCURSOR[-2] == '\\' && *YYCURSOR != '\r' && *YYCURSOR != '\n') {
01169                                    continue;
01170                             }
01171                             break;
01172                      case '$':
01173                             if (*YYCURSOR == '{') {
01174                                    break;
01175                             }
01176                             continue;
01177                      case '\\':
01178                             if (YYCURSOR < YYLIMIT && *YYCURSOR != '"') {
01179                                    YYCURSOR++;
01180                             }
01181                             /* fall through */
01182                      default:
01183                             continue;
01184               }
01185               
01186               YYCURSOR--;
01187               break;
01188        }
01189 
01190        yyleng = YYCURSOR - SCNG(yy_text);
01191        
01192        zend_ini_escape_string(ini_lval, yytext, yyleng, '"' TSRMLS_CC);
01193        return TC_QUOTED_STRING;
01194 }
01195 #line 1196 "Zend/zend_ini_scanner.c"
01196 yy77:
01197               YYDEBUG(77, *YYCURSOR);
01198               ++YYCURSOR;
01199               yych = *YYCURSOR;
01200               goto yy83;
01201 yy78:
01202               YYDEBUG(78, *YYCURSOR);
01203               yyleng = YYCURSOR - SCNG(yy_text);
01204 #line 499 "Zend/zend_ini_scanner.l"
01205               { /* Double quoted '"' string ends */
01206        yy_pop_state(TSRMLS_C);
01207        return '"';
01208 }
01209 #line 1210 "Zend/zend_ini_scanner.c"
01210 yy79:
01211               YYDEBUG(79, *YYCURSOR);
01212               yych = *++YYCURSOR;
01213               if (yych != '{') goto yy76;
01214               YYDEBUG(80, *YYCURSOR);
01215               ++YYCURSOR;
01216               YYDEBUG(81, *YYCURSOR);
01217               yyleng = YYCURSOR - SCNG(yy_text);
01218 #line 398 "Zend/zend_ini_scanner.l"
01219               { /* Variable start */
01220        yy_push_state(ST_VARNAME TSRMLS_CC);
01221        return TC_DOLLAR_CURLY;
01222 }
01223 #line 1224 "Zend/zend_ini_scanner.c"
01224 yy82:
01225               YYDEBUG(82, *YYCURSOR);
01226               ++YYCURSOR;
01227               YYFILL(1);
01228               yych = *YYCURSOR;
01229 yy83:
01230               YYDEBUG(83, *YYCURSOR);
01231               if (yybm[0+yych] & 128) {
01232                      goto yy82;
01233               }
01234               goto yy78;
01235        }
01236 /* *********************************** */
01237 yyc_ST_OFFSET:
01238        {
01239               static const unsigned char yybm[] = {
01240                       66,  66,  66,  66,  66,  66,  66,  66, 
01241                       66, 194,  64,  66,  66,  64,  66,  66, 
01242                       66,  66,  66,  66,  66,  66,  66,  66, 
01243                       66,  66,  66,  66,  66,  66,  66,  66, 
01244                      194,  66,  64,  66,  68,  66,  66,   0, 
01245                       66,  66,  66,  66,  66,  66,  66,  66, 
01246                      114, 114, 114, 114, 114, 114, 114, 114, 
01247                      114, 114,  66,  64,  66,  66,  66,  66, 
01248                       66,  82,  82,  82,  82,  82,  82,  82, 
01249                       82,  82,  82,  82,  82,  82,  82,  82, 
01250                       82,  82,  82,  82,  82,  82,  82,  82, 
01251                       82,  82,  82,  66,  72,  64,  66,  82, 
01252                       66,  82,  82,  82,  82,  82,  82,  82, 
01253                       82,  82,  82,  82,  82,  82,  82,  82, 
01254                       82,  82,  82,  82,  82,  82,  82,  82, 
01255                       82,  82,  82,  66,  66,  66,  66,  66, 
01256                       66,  66,  66,  66,  66,  66,  66,  66, 
01257                       66,  66,  66,  66,  66,  66,  66,  66, 
01258                       66,  66,  66,  66,  66,  66,  66,  66, 
01259                       66,  66,  66,  66,  66,  66,  66,  66, 
01260                       66,  66,  66,  66,  66,  66,  66,  66, 
01261                       66,  66,  66,  66,  66,  66,  66,  66, 
01262                       66,  66,  66,  66,  66,  66,  66,  66, 
01263                       66,  66,  66,  66,  66,  66,  66,  66, 
01264                       66,  66,  66,  66,  66,  66,  66,  66, 
01265                       66,  66,  66,  66,  66,  66,  66,  66, 
01266                       66,  66,  66,  66,  66,  66,  66,  66, 
01267                       66,  66,  66,  66,  66,  66,  66,  66, 
01268                       66,  66,  66,  66,  66,  66,  66,  66, 
01269                       66,  66,  66,  66,  66,  66,  66,  66, 
01270                       66,  66,  66,  66,  66,  66,  66,  66, 
01271                       66,  66,  66,  66,  66,  66,  66,  66, 
01272               };
01273               YYDEBUG(84, *YYCURSOR);
01274               YYFILL(2);
01275               yych = *YYCURSOR;
01276               if (yych <= '-') {
01277                      if (yych <= ' ') {
01278                             if (yych <= '\n') {
01279                                    if (yych <= 0x08) goto yy86;
01280                                    if (yych <= '\t') goto yy88;
01281                                    goto yy89;
01282                             } else {
01283                                    if (yych == '\r') goto yy89;
01284                                    if (yych >= ' ') goto yy88;
01285                             }
01286                      } else {
01287                             if (yych <= '$') {
01288                                    if (yych == '"') goto yy91;
01289                                    if (yych >= '$') goto yy93;
01290                             } else {
01291                                    if (yych == '\'') goto yy94;
01292                                    if (yych >= '-') goto yy95;
01293                             }
01294                      }
01295               } else {
01296                      if (yych <= 'Z') {
01297                             if (yych <= '9') {
01298                                    if (yych <= '.') goto yy96;
01299                                    if (yych >= '0') goto yy97;
01300                             } else {
01301                                    if (yych == ';') goto yy89;
01302                                    if (yych >= 'A') goto yy99;
01303                             }
01304                      } else {
01305                             if (yych <= '^') {
01306                                    if (yych <= '[') goto yy86;
01307                                    if (yych <= '\\') goto yy101;
01308                                    if (yych <= ']') goto yy102;
01309                             } else {
01310                                    if (yych == '`') goto yy86;
01311                                    if (yych <= 'z') goto yy99;
01312                             }
01313                      }
01314               }
01315 yy86:
01316               YYDEBUG(86, *YYCURSOR);
01317               yyaccept = 0;
01318               yych = *(YYMARKER = ++YYCURSOR);
01319               goto yy105;
01320 yy87:
01321               YYDEBUG(87, *YYCURSOR);
01322               yyleng = YYCURSOR - SCNG(yy_text);
01323 #line 490 "Zend/zend_ini_scanner.l"
01324               { /* Get rest as section/offset value */
01325        RETURN_TOKEN(TC_STRING, yytext, yyleng);
01326 }
01327 #line 1328 "Zend/zend_ini_scanner.c"
01328 yy88:
01329               YYDEBUG(88, *YYCURSOR);
01330               yyaccept = 0;
01331               yych = *(YYMARKER = ++YYCURSOR);
01332               if (yybm[0+yych] & 128) {
01333                      goto yy131;
01334               }
01335               if (yych == '"') goto yy133;
01336               if (yych == ']') goto yy134;
01337               goto yy105;
01338 yy89:
01339               YYDEBUG(89, *YYCURSOR);
01340               ++YYCURSOR;
01341 yy90:
01342               YYDEBUG(90, *YYCURSOR);
01343               yyleng = YYCURSOR - SCNG(yy_text);
01344 #line 572 "Zend/zend_ini_scanner.l"
01345               {
01346        return 0;
01347 }
01348 #line 1349 "Zend/zend_ini_scanner.c"
01349 yy91:
01350               YYDEBUG(91, *YYCURSOR);
01351               ++YYCURSOR;
01352 yy92:
01353               YYDEBUG(92, *YYCURSOR);
01354               yyleng = YYCURSOR - SCNG(yy_text);
01355 #line 494 "Zend/zend_ini_scanner.l"
01356               { /* Double quoted '"' string start */
01357        yy_push_state(ST_DOUBLE_QUOTES TSRMLS_CC);
01358        return '"';
01359 }
01360 #line 1361 "Zend/zend_ini_scanner.c"
01361 yy93:
01362               YYDEBUG(93, *YYCURSOR);
01363               yych = *++YYCURSOR;
01364               if (yych <= '\\') {
01365                      if (yych <= 0x00) goto yy90;
01366                      if (yych <= '[') goto yy104;
01367                      goto yy109;
01368               } else {
01369                      if (yych == '{') goto yy129;
01370                      goto yy104;
01371               }
01372 yy94:
01373               YYDEBUG(94, *YYCURSOR);
01374               yyaccept = 1;
01375               yych = *(YYMARKER = ++YYCURSOR);
01376               if (yybm[0+yych] & 64) {
01377                      goto yy125;
01378               }
01379               goto yy90;
01380 yy95:
01381               YYDEBUG(95, *YYCURSOR);
01382               yyaccept = 0;
01383               yych = *(YYMARKER = ++YYCURSOR);
01384               if (yych <= '/') goto yy105;
01385               if (yych <= '9') goto yy123;
01386               goto yy105;
01387 yy96:
01388               YYDEBUG(96, *YYCURSOR);
01389               yyaccept = 0;
01390               yych = *(YYMARKER = ++YYCURSOR);
01391               if (yych <= '/') goto yy105;
01392               if (yych <= '9') goto yy121;
01393               goto yy105;
01394 yy97:
01395               YYDEBUG(97, *YYCURSOR);
01396               yyaccept = 2;
01397               yych = *(YYMARKER = ++YYCURSOR);
01398               if (yych <= '\'') {
01399                      if (yych <= '\r') {
01400                             if (yych == '\n') goto yy98;
01401                             if (yych <= '\f') goto yy105;
01402                      } else {
01403                             if (yych == '"') goto yy98;
01404                             if (yych <= '&') goto yy105;
01405                      }
01406               } else {
01407                      if (yych <= '9') {
01408                             if (yych == '.') goto yy117;
01409                             if (yych <= '/') goto yy105;
01410                             goto yy119;
01411                      } else {
01412                             if (yych <= ';') {
01413                                    if (yych <= ':') goto yy105;
01414                             } else {
01415                                    if (yych != ']') goto yy105;
01416                             }
01417                      }
01418               }
01419 yy98:
01420               YYDEBUG(98, *YYCURSOR);
01421               yyleng = YYCURSOR - SCNG(yy_text);
01422 #line 468 "Zend/zend_ini_scanner.l"
01423               { /* Get number option value as string */
01424        RETURN_TOKEN(TC_NUMBER, yytext, yyleng);
01425 }
01426 #line 1427 "Zend/zend_ini_scanner.c"
01427 yy99:
01428               YYDEBUG(99, *YYCURSOR);
01429               yyaccept = 3;
01430               yych = *(YYMARKER = ++YYCURSOR);
01431               if (yybm[0+yych] & 16) {
01432                      goto yy115;
01433               }
01434               if (yych <= '"') {
01435                      if (yych <= '\f') {
01436                             if (yych != '\n') goto yy105;
01437                      } else {
01438                             if (yych <= '\r') goto yy100;
01439                             if (yych <= '!') goto yy105;
01440                      }
01441               } else {
01442                      if (yych <= ':') {
01443                             if (yych != '\'') goto yy105;
01444                      } else {
01445                             if (yych <= ';') goto yy100;
01446                             if (yych != ']') goto yy105;
01447                      }
01448               }
01449 yy100:
01450               YYDEBUG(100, *YYCURSOR);
01451               yyleng = YYCURSOR - SCNG(yy_text);
01452 #line 464 "Zend/zend_ini_scanner.l"
01453               { /* Get constant option value */
01454        RETURN_TOKEN(TC_CONSTANT, yytext, yyleng);
01455 }
01456 #line 1457 "Zend/zend_ini_scanner.c"
01457 yy101:
01458               YYDEBUG(101, *YYCURSOR);
01459               yych = *++YYCURSOR;
01460               goto yy104;
01461 yy102:
01462               YYDEBUG(102, *YYCURSOR);
01463               ++YYCURSOR;
01464 yy103:
01465               YYDEBUG(103, *YYCURSOR);
01466               yyleng = YYCURSOR - SCNG(yy_text);
01467 #line 393 "Zend/zend_ini_scanner.l"
01468               { /* End of section or an option offset */
01469        BEGIN(INITIAL);
01470        return ']';
01471 }
01472 #line 1473 "Zend/zend_ini_scanner.c"
01473 yy104:
01474               YYDEBUG(104, *YYCURSOR);
01475               yyaccept = 0;
01476               YYMARKER = ++YYCURSOR;
01477               YYFILL(1);
01478               yych = *YYCURSOR;
01479 yy105:
01480               YYDEBUG(105, *YYCURSOR);
01481               if (yybm[0+yych] & 2) {
01482                      goto yy104;
01483               }
01484               if (yych == '$') goto yy107;
01485               if (yych != '\\') goto yy87;
01486 yy106:
01487               YYDEBUG(106, *YYCURSOR);
01488               ++YYCURSOR;
01489               YYFILL(1);
01490               yych = *YYCURSOR;
01491               goto yy104;
01492 yy107:
01493               YYDEBUG(107, *YYCURSOR);
01494               ++YYCURSOR;
01495               YYFILL(1);
01496               yych = *YYCURSOR;
01497               if (yych <= '\\') {
01498                      if (yych <= 0x00) goto yy108;
01499                      if (yych <= '[') goto yy104;
01500                      goto yy109;
01501               } else {
01502                      if (yych != '{') goto yy104;
01503               }
01504 yy108:
01505               YYDEBUG(108, *YYCURSOR);
01506               YYCURSOR = YYMARKER;
01507               if (yyaccept <= 1) {
01508                      if (yyaccept <= 0) {
01509                             goto yy87;
01510                      } else {
01511                             goto yy90;
01512                      }
01513               } else {
01514                      if (yyaccept <= 2) {
01515                             goto yy98;
01516                      } else {
01517                             goto yy100;
01518                      }
01519               }
01520 yy109:
01521               YYDEBUG(109, *YYCURSOR);
01522               ++YYCURSOR;
01523               YYFILL(1);
01524               yych = *YYCURSOR;
01525               if (yybm[0+yych] & 4) {
01526                      goto yy110;
01527               }
01528               if (yych == '\\') goto yy112;
01529               goto yy104;
01530 yy110:
01531               YYDEBUG(110, *YYCURSOR);
01532               ++YYCURSOR;
01533               YYFILL(1);
01534               yych = *YYCURSOR;
01535               YYDEBUG(111, *YYCURSOR);
01536               if (yybm[0+yych] & 4) {
01537                      goto yy110;
01538               }
01539               if (yych == '\\') goto yy114;
01540               goto yy104;
01541 yy112:
01542               YYDEBUG(112, *YYCURSOR);
01543               ++YYCURSOR;
01544               YYFILL(1);
01545               yych = *YYCURSOR;
01546               YYDEBUG(113, *YYCURSOR);
01547               if (yybm[0+yych] & 4) {
01548                      goto yy110;
01549               }
01550               if (yych == '\\') goto yy112;
01551               goto yy104;
01552 yy114:
01553               YYDEBUG(114, *YYCURSOR);
01554               ++YYCURSOR;
01555               YYFILL(1);
01556               yych = *YYCURSOR;
01557               if (yybm[0+yych] & 4) {
01558                      goto yy110;
01559               }
01560               if (yych == '\\') goto yy112;
01561               goto yy104;
01562 yy115:
01563               YYDEBUG(115, *YYCURSOR);
01564               yyaccept = 3;
01565               YYMARKER = ++YYCURSOR;
01566               YYFILL(1);
01567               yych = *YYCURSOR;
01568               YYDEBUG(116, *YYCURSOR);
01569               if (yybm[0+yych] & 16) {
01570                      goto yy115;
01571               }
01572               if (yych <= '$') {
01573                      if (yych <= '\r') {
01574                             if (yych == '\n') goto yy100;
01575                             if (yych <= '\f') goto yy104;
01576                             goto yy100;
01577                      } else {
01578                             if (yych == '"') goto yy100;
01579                             if (yych <= '#') goto yy104;
01580                             goto yy107;
01581                      }
01582               } else {
01583                      if (yych <= ';') {
01584                             if (yych == '\'') goto yy100;
01585                             if (yych <= ':') goto yy104;
01586                             goto yy100;
01587                      } else {
01588                             if (yych <= '[') goto yy104;
01589                             if (yych <= '\\') goto yy106;
01590                             if (yych <= ']') goto yy100;
01591                             goto yy104;
01592                      }
01593               }
01594 yy117:
01595               YYDEBUG(117, *YYCURSOR);
01596               yyaccept = 2;
01597               YYMARKER = ++YYCURSOR;
01598               YYFILL(1);
01599               yych = *YYCURSOR;
01600               YYDEBUG(118, *YYCURSOR);
01601               if (yybm[0+yych] & 32) {
01602                      goto yy117;
01603               }
01604               if (yych <= '$') {
01605                      if (yych <= '\r') {
01606                             if (yych == '\n') goto yy98;
01607                             if (yych <= '\f') goto yy104;
01608                             goto yy98;
01609                      } else {
01610                             if (yych == '"') goto yy98;
01611                             if (yych <= '#') goto yy104;
01612                             goto yy107;
01613                      }
01614               } else {
01615                      if (yych <= ';') {
01616                             if (yych == '\'') goto yy98;
01617                             if (yych <= ':') goto yy104;
01618                             goto yy98;
01619                      } else {
01620                             if (yych <= '[') goto yy104;
01621                             if (yych <= '\\') goto yy106;
01622                             if (yych <= ']') goto yy98;
01623                             goto yy104;
01624                      }
01625               }
01626 yy119:
01627               YYDEBUG(119, *YYCURSOR);
01628               yyaccept = 2;
01629               YYMARKER = ++YYCURSOR;
01630               YYFILL(1);
01631               yych = *YYCURSOR;
01632               YYDEBUG(120, *YYCURSOR);
01633               if (yych <= '\'') {
01634                      if (yych <= '!') {
01635                             if (yych <= '\n') {
01636                                    if (yych <= '\t') goto yy104;
01637                                    goto yy98;
01638                             } else {
01639                                    if (yych == '\r') goto yy98;
01640                                    goto yy104;
01641                             }
01642                      } else {
01643                             if (yych <= '#') {
01644                                    if (yych <= '"') goto yy98;
01645                                    goto yy104;
01646                             } else {
01647                                    if (yych <= '$') goto yy107;
01648                                    if (yych <= '&') goto yy104;
01649                                    goto yy98;
01650                             }
01651                      }
01652               } else {
01653                      if (yych <= ':') {
01654                             if (yych <= '.') {
01655                                    if (yych <= '-') goto yy104;
01656                                    goto yy117;
01657                             } else {
01658                                    if (yych <= '/') goto yy104;
01659                                    if (yych <= '9') goto yy119;
01660                                    goto yy104;
01661                             }
01662                      } else {
01663                             if (yych <= '[') {
01664                                    if (yych <= ';') goto yy98;
01665                                    goto yy104;
01666                             } else {
01667                                    if (yych <= '\\') goto yy106;
01668                                    if (yych <= ']') goto yy98;
01669                                    goto yy104;
01670                             }
01671                      }
01672               }
01673 yy121:
01674               YYDEBUG(121, *YYCURSOR);
01675               yyaccept = 2;
01676               YYMARKER = ++YYCURSOR;
01677               YYFILL(1);
01678               yych = *YYCURSOR;
01679               YYDEBUG(122, *YYCURSOR);
01680               if (yych <= '&') {
01681                      if (yych <= '\r') {
01682                             if (yych == '\n') goto yy98;
01683                             if (yych <= '\f') goto yy104;
01684                             goto yy98;
01685                      } else {
01686                             if (yych <= '"') {
01687                                    if (yych <= '!') goto yy104;
01688                                    goto yy98;
01689                             } else {
01690                                    if (yych == '$') goto yy107;
01691                                    goto yy104;
01692                             }
01693                      }
01694               } else {
01695                      if (yych <= ':') {
01696                             if (yych <= '\'') goto yy98;
01697                             if (yych <= '/') goto yy104;
01698                             if (yych <= '9') goto yy121;
01699                             goto yy104;
01700                      } else {
01701                             if (yych <= '[') {
01702                                    if (yych <= ';') goto yy98;
01703                                    goto yy104;
01704                             } else {
01705                                    if (yych <= '\\') goto yy106;
01706                                    if (yych <= ']') goto yy98;
01707                                    goto yy104;
01708                             }
01709                      }
01710               }
01711 yy123:
01712               YYDEBUG(123, *YYCURSOR);
01713               yyaccept = 2;
01714               YYMARKER = ++YYCURSOR;
01715               YYFILL(1);
01716               yych = *YYCURSOR;
01717               YYDEBUG(124, *YYCURSOR);
01718               if (yych <= '&') {
01719                      if (yych <= '\r') {
01720                             if (yych == '\n') goto yy98;
01721                             if (yych <= '\f') goto yy104;
01722                             goto yy98;
01723                      } else {
01724                             if (yych <= '"') {
01725                                    if (yych <= '!') goto yy104;
01726                                    goto yy98;
01727                             } else {
01728                                    if (yych == '$') goto yy107;
01729                                    goto yy104;
01730                             }
01731                      }
01732               } else {
01733                      if (yych <= ':') {
01734                             if (yych <= '\'') goto yy98;
01735                             if (yych <= '/') goto yy104;
01736                             if (yych <= '9') goto yy123;
01737                             goto yy104;
01738                      } else {
01739                             if (yych <= '[') {
01740                                    if (yych <= ';') goto yy98;
01741                                    goto yy104;
01742                             } else {
01743                                    if (yych <= '\\') goto yy106;
01744                                    if (yych <= ']') goto yy98;
01745                                    goto yy104;
01746                             }
01747                      }
01748               }
01749 yy125:
01750               YYDEBUG(125, *YYCURSOR);
01751               ++YYCURSOR;
01752               YYFILL(1);
01753               yych = *YYCURSOR;
01754               YYDEBUG(126, *YYCURSOR);
01755               if (yybm[0+yych] & 64) {
01756                      goto yy125;
01757               }
01758               YYDEBUG(127, *YYCURSOR);
01759               ++YYCURSOR;
01760               YYDEBUG(128, *YYCURSOR);
01761               yyleng = YYCURSOR - SCNG(yy_text);
01762 #line 365 "Zend/zend_ini_scanner.l"
01763               { /* Raw string */
01764        /* Eat leading and trailing single quotes */
01765        if (yytext[0] == '\'' && yytext[yyleng - 1] == '\'') {
01766               SCNG(yy_text)++;
01767               yyleng = yyleng - 2;
01768        }
01769        RETURN_TOKEN(TC_RAW, yytext, yyleng);
01770 }
01771 #line 1772 "Zend/zend_ini_scanner.c"
01772 yy129:
01773               YYDEBUG(129, *YYCURSOR);
01774               ++YYCURSOR;
01775               YYDEBUG(130, *YYCURSOR);
01776               yyleng = YYCURSOR - SCNG(yy_text);
01777 #line 398 "Zend/zend_ini_scanner.l"
01778               { /* Variable start */
01779        yy_push_state(ST_VARNAME TSRMLS_CC);
01780        return TC_DOLLAR_CURLY;
01781 }
01782 #line 1783 "Zend/zend_ini_scanner.c"
01783 yy131:
01784               YYDEBUG(131, *YYCURSOR);
01785               yyaccept = 0;
01786               YYMARKER = ++YYCURSOR;
01787               YYFILL(1);
01788               yych = *YYCURSOR;
01789               YYDEBUG(132, *YYCURSOR);
01790               if (yybm[0+yych] & 128) {
01791                      goto yy131;
01792               }
01793               if (yych <= '$') {
01794                      if (yych <= '\r') {
01795                             if (yych == '\n') goto yy87;
01796                             if (yych <= '\f') goto yy104;
01797                             goto yy87;
01798                      } else {
01799                             if (yych == '"') goto yy133;
01800                             if (yych <= '#') goto yy104;
01801                             goto yy107;
01802                      }
01803               } else {
01804                      if (yych <= ';') {
01805                             if (yych == '\'') goto yy87;
01806                             if (yych <= ':') goto yy104;
01807                             goto yy87;
01808                      } else {
01809                             if (yych <= '[') goto yy104;
01810                             if (yych <= '\\') goto yy106;
01811                             if (yych <= ']') goto yy134;
01812                             goto yy104;
01813                      }
01814               }
01815 yy133:
01816               YYDEBUG(133, *YYCURSOR);
01817               yych = *++YYCURSOR;
01818               goto yy92;
01819 yy134:
01820               YYDEBUG(134, *YYCURSOR);
01821               ++YYCURSOR;
01822               yych = *YYCURSOR;
01823               goto yy103;
01824        }
01825 /* *********************************** */
01826 yyc_ST_RAW:
01827        {
01828               static const unsigned char yybm[] = {
01829                       32, 160, 160, 160, 160, 160, 160, 160, 
01830                      160, 224,   0, 160, 160,   0, 160, 160, 
01831                      160, 160, 160, 160, 160, 160, 160, 160, 
01832                      160, 160, 160, 160, 160, 160, 160, 160, 
01833                      224, 160, 160, 160, 160, 160, 160, 160, 
01834                      160, 160, 160, 160, 160, 160, 160, 160, 
01835                      160, 160, 160, 160, 160, 160, 160, 160, 
01836                      160, 160, 160,  32, 160, 160, 160, 160, 
01837                      160, 160, 160, 160, 160, 160, 160, 160, 
01838                      160, 160, 160, 160, 160, 160, 160, 160, 
01839                      160, 160, 160, 160, 160, 160, 160, 160, 
01840                      160, 160, 160, 160, 160, 160, 160, 160, 
01841                      160, 160, 160, 160, 160, 160, 160, 160, 
01842                      160, 160, 160, 160, 160, 160, 160, 160, 
01843                      160, 160, 160, 160, 160, 160, 160, 160, 
01844                      160, 160, 160, 160, 160, 160, 160, 160, 
01845                      160, 160, 160, 160, 160, 160, 160, 160, 
01846                      160, 160, 160, 160, 160, 160, 160, 160, 
01847                      160, 160, 160, 160, 160, 160, 160, 160, 
01848                      160, 160, 160, 160, 160, 160, 160, 160, 
01849                      160, 160, 160, 160, 160, 160, 160, 160, 
01850                      160, 160, 160, 160, 160, 160, 160, 160, 
01851                      160, 160, 160, 160, 160, 160, 160, 160, 
01852                      160, 160, 160, 160, 160, 160, 160, 160, 
01853                      160, 160, 160, 160, 160, 160, 160, 160, 
01854                      160, 160, 160, 160, 160, 160, 160, 160, 
01855                      160, 160, 160, 160, 160, 160, 160, 160, 
01856                      160, 160, 160, 160, 160, 160, 160, 160, 
01857                      160, 160, 160, 160, 160, 160, 160, 160, 
01858                      160, 160, 160, 160, 160, 160, 160, 160, 
01859                      160, 160, 160, 160, 160, 160, 160, 160, 
01860                      160, 160, 160, 160, 160, 160, 160, 160, 
01861               };
01862               YYDEBUG(135, *YYCURSOR);
01863               YYFILL(3);
01864               yych = *YYCURSOR;
01865               if (yych <= '\f') {
01866                      if (yych <= 0x08) {
01867                             if (yych >= 0x01) goto yy139;
01868                      } else {
01869                             if (yych <= '\t') goto yy141;
01870                             if (yych <= '\n') goto yy142;
01871                             goto yy139;
01872                      }
01873               } else {
01874                      if (yych <= ' ') {
01875                             if (yych <= '\r') goto yy144;
01876                             if (yych <= 0x1F) goto yy139;
01877                             goto yy141;
01878                      } else {
01879                             if (yych == ';') goto yy145;
01880                             goto yy139;
01881                      }
01882               }
01883               YYDEBUG(137, *YYCURSOR);
01884               ++YYCURSOR;
01885               YYDEBUG(138, *YYCURSOR);
01886               yyleng = YYCURSOR - SCNG(yy_text);
01887 #line 567 "Zend/zend_ini_scanner.l"
01888               { /* End of option value (if EOF is reached before EOL */
01889        BEGIN(INITIAL);
01890        return END_OF_LINE;
01891 }
01892 #line 1893 "Zend/zend_ini_scanner.c"
01893 yy139:
01894               YYDEBUG(139, *YYCURSOR);
01895               ++YYCURSOR;
01896               yych = *YYCURSOR;
01897               goto yy156;
01898 yy140:
01899               YYDEBUG(140, *YYCURSOR);
01900               yyleng = YYCURSOR - SCNG(yy_text);
01901 #line 445 "Zend/zend_ini_scanner.l"
01902               { /* Raw value, only used when SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW. */
01903        /* Eat leading and trailing double quotes */
01904        if (yytext[0] == '"' && yytext[yyleng - 1] == '"') {
01905               SCNG(yy_text)++;
01906               yyleng = yyleng - 2;
01907        }
01908        RETURN_TOKEN(TC_RAW, yytext, yyleng);
01909 }
01910 #line 1911 "Zend/zend_ini_scanner.c"
01911 yy141:
01912               YYDEBUG(141, *YYCURSOR);
01913               yyaccept = 0;
01914               yych = *(YYMARKER = ++YYCURSOR);
01915               if (yybm[0+yych] & 64) {
01916                      goto yy152;
01917               }
01918               if (yych <= '\f') {
01919                      if (yych == '\n') goto yy151;
01920                      goto yy156;
01921               } else {
01922                      if (yych <= '\r') goto yy154;
01923                      if (yych == ';') goto yy146;
01924                      goto yy156;
01925               }
01926 yy142:
01927               YYDEBUG(142, *YYCURSOR);
01928               ++YYCURSOR;
01929 yy143:
01930               YYDEBUG(143, *YYCURSOR);
01931               yyleng = YYCURSOR - SCNG(yy_text);
01932 #line 458 "Zend/zend_ini_scanner.l"
01933               { /* End of option value */
01934        BEGIN(INITIAL);
01935        SCNG(lineno)++;
01936        return END_OF_LINE;
01937 }
01938 #line 1939 "Zend/zend_ini_scanner.c"
01939 yy144:
01940               YYDEBUG(144, *YYCURSOR);
01941               yych = *++YYCURSOR;
01942               if (yych == '\n') goto yy151;
01943               goto yy143;
01944 yy145:
01945               YYDEBUG(145, *YYCURSOR);
01946               yyaccept = 1;
01947               yych = *(YYMARKER = ++YYCURSOR);
01948               goto yy147;
01949 yy146:
01950               YYDEBUG(146, *YYCURSOR);
01951               ++YYCURSOR;
01952               YYFILL(2);
01953               yych = *YYCURSOR;
01954 yy147:
01955               YYDEBUG(147, *YYCURSOR);
01956               if (yybm[0+yych] & 32) {
01957                      goto yy146;
01958               }
01959               if (yych >= '\r') goto yy150;
01960 yy148:
01961               YYDEBUG(148, *YYCURSOR);
01962               ++YYCURSOR;
01963 yy149:
01964               YYDEBUG(149, *YYCURSOR);
01965               yyleng = YYCURSOR - SCNG(yy_text);
01966 #line 554 "Zend/zend_ini_scanner.l"
01967               { /* Comment */
01968        BEGIN(INITIAL);
01969        SCNG(lineno)++;
01970        return END_OF_LINE;
01971 }
01972 #line 1973 "Zend/zend_ini_scanner.c"
01973 yy150:
01974               YYDEBUG(150, *YYCURSOR);
01975               yych = *++YYCURSOR;
01976               if (yych == '\n') goto yy148;
01977               goto yy149;
01978 yy151:
01979               YYDEBUG(151, *YYCURSOR);
01980               yych = *++YYCURSOR;
01981               goto yy143;
01982 yy152:
01983               YYDEBUG(152, *YYCURSOR);
01984               yyaccept = 0;
01985               YYMARKER = ++YYCURSOR;
01986               YYFILL(2);
01987               yych = *YYCURSOR;
01988               YYDEBUG(153, *YYCURSOR);
01989               if (yybm[0+yych] & 64) {
01990                      goto yy152;
01991               }
01992               if (yych <= '\f') {
01993                      if (yych <= 0x00) goto yy140;
01994                      if (yych == '\n') goto yy151;
01995                      goto yy155;
01996               } else {
01997                      if (yych <= '\r') goto yy154;
01998                      if (yych == ';') goto yy146;
01999                      goto yy155;
02000               }
02001 yy154:
02002               YYDEBUG(154, *YYCURSOR);
02003               yych = *++YYCURSOR;
02004               if (yych == '\n') goto yy151;
02005               goto yy143;
02006 yy155:
02007               YYDEBUG(155, *YYCURSOR);
02008               ++YYCURSOR;
02009               YYFILL(1);
02010               yych = *YYCURSOR;
02011 yy156:
02012               YYDEBUG(156, *YYCURSOR);
02013               if (yybm[0+yych] & 128) {
02014                      goto yy155;
02015               }
02016               goto yy140;
02017        }
02018 /* *********************************** */
02019 yyc_ST_SECTION_RAW:
02020        {
02021               static const unsigned char yybm[] = {
02022                      128, 128, 128, 128, 128, 128, 128, 128, 
02023                      128, 192,   0, 128, 128,   0, 128, 128, 
02024                      128, 128, 128, 128, 128, 128, 128, 128, 
02025                      128, 128, 128, 128, 128, 128, 128, 128, 
02026                      192, 128, 128, 128, 128, 128, 128, 128, 
02027                      128, 128, 128, 128, 128, 128, 128, 128, 
02028                      128, 128, 128, 128, 128, 128, 128, 128, 
02029                      128, 128, 128, 128, 128, 128, 128, 128, 
02030                      128, 128, 128, 128, 128, 128, 128, 128, 
02031                      128, 128, 128, 128, 128, 128, 128, 128, 
02032                      128, 128, 128, 128, 128, 128, 128, 128, 
02033                      128, 128, 128, 128, 128,   0, 128, 128, 
02034                      128, 128, 128, 128, 128, 128, 128, 128, 
02035                      128, 128, 128, 128, 128, 128, 128, 128, 
02036                      128, 128, 128, 128, 128, 128, 128, 128, 
02037                      128, 128, 128, 128, 128, 128, 128, 128, 
02038                      128, 128, 128, 128, 128, 128, 128, 128, 
02039                      128, 128, 128, 128, 128, 128, 128, 128, 
02040                      128, 128, 128, 128, 128, 128, 128, 128, 
02041                      128, 128, 128, 128, 128, 128, 128, 128, 
02042                      128, 128, 128, 128, 128, 128, 128, 128, 
02043                      128, 128, 128, 128, 128, 128, 128, 128, 
02044                      128, 128, 128, 128, 128, 128, 128, 128, 
02045                      128, 128, 128, 128, 128, 128, 128, 128, 
02046                      128, 128, 128, 128, 128, 128, 128, 128, 
02047                      128, 128, 128, 128, 128, 128, 128, 128, 
02048                      128, 128, 128, 128, 128, 128, 128, 128, 
02049                      128, 128, 128, 128, 128, 128, 128, 128, 
02050                      128, 128, 128, 128, 128, 128, 128, 128, 
02051                      128, 128, 128, 128, 128, 128, 128, 128, 
02052                      128, 128, 128, 128, 128, 128, 128, 128, 
02053                      128, 128, 128, 128, 128, 128, 128, 128, 
02054               };
02055               YYDEBUG(157, *YYCURSOR);
02056               YYFILL(3);
02057               yych = *YYCURSOR;
02058               if (yych <= '\f') {
02059                      if (yych == '\n') goto yy161;
02060               } else {
02061                      if (yych <= '\r') goto yy161;
02062                      if (yych == ']') goto yy163;
02063               }
02064               YYDEBUG(159, *YYCURSOR);
02065               ++YYCURSOR;
02066               yych = *YYCURSOR;
02067               goto yy170;
02068 yy160:
02069               YYDEBUG(160, *YYCURSOR);
02070               yyleng = YYCURSOR - SCNG(yy_text);
02071 #line 454 "Zend/zend_ini_scanner.l"
02072               { /* Raw value, only used when SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW. */
02073        RETURN_TOKEN(TC_RAW, yytext, yyleng);
02074 }
02075 #line 2076 "Zend/zend_ini_scanner.c"
02076 yy161:
02077               YYDEBUG(161, *YYCURSOR);
02078               ++YYCURSOR;
02079               YYDEBUG(162, *YYCURSOR);
02080               yyleng = YYCURSOR - SCNG(yy_text);
02081 #line 572 "Zend/zend_ini_scanner.l"
02082               {
02083        return 0;
02084 }
02085 #line 2086 "Zend/zend_ini_scanner.c"
02086 yy163:
02087               YYDEBUG(163, *YYCURSOR);
02088               ++YYCURSOR;
02089               yych = *YYCURSOR;
02090               goto yy166;
02091 yy164:
02092               YYDEBUG(164, *YYCURSOR);
02093               yyleng = YYCURSOR - SCNG(yy_text);
02094 #line 374 "Zend/zend_ini_scanner.l"
02095               { /* End of section */
02096        BEGIN(INITIAL);
02097        SCNG(lineno)++;
02098        return ']';
02099 }
02100 #line 2101 "Zend/zend_ini_scanner.c"
02101 yy165:
02102               YYDEBUG(165, *YYCURSOR);
02103               ++YYCURSOR;
02104               YYFILL(2);
02105               yych = *YYCURSOR;
02106 yy166:
02107               YYDEBUG(166, *YYCURSOR);
02108               if (yybm[0+yych] & 64) {
02109                      goto yy165;
02110               }
02111               if (yych == '\n') goto yy167;
02112               if (yych == '\r') goto yy168;
02113               goto yy164;
02114 yy167:
02115               YYDEBUG(167, *YYCURSOR);
02116               yych = *++YYCURSOR;
02117               goto yy164;
02118 yy168:
02119               YYDEBUG(168, *YYCURSOR);
02120               yych = *++YYCURSOR;
02121               if (yych == '\n') goto yy167;
02122               goto yy164;
02123 yy169:
02124               YYDEBUG(169, *YYCURSOR);
02125               ++YYCURSOR;
02126               YYFILL(1);
02127               yych = *YYCURSOR;
02128 yy170:
02129               YYDEBUG(170, *YYCURSOR);
02130               if (yybm[0+yych] & 128) {
02131                      goto yy169;
02132               }
02133               goto yy160;
02134        }
02135 /* *********************************** */
02136 yyc_ST_SECTION_VALUE:
02137        {
02138               static const unsigned char yybm[] = {
02139                      132, 132, 132, 132, 132, 132, 132, 132, 
02140                      132, 134, 128, 132, 132, 128, 132, 132, 
02141                      132, 132, 132, 132, 132, 132, 132, 132, 
02142                      132, 132, 132, 132, 132, 132, 132, 132, 
02143                      134, 132, 128, 132, 136, 132, 132,   0, 
02144                      132, 132, 132, 132, 132, 132, 132, 132, 
02145                      228, 228, 228, 228, 228, 228, 228, 228, 
02146                      228, 228, 132, 128, 132, 132, 132, 132, 
02147                      132, 164, 164, 164, 164, 164, 164, 164, 
02148                      164, 164, 164, 164, 164, 164, 164, 164, 
02149                      164, 164, 164, 164, 164, 164, 164, 164, 
02150                      164, 164, 164, 132, 144, 128, 132, 164, 
02151                      132, 164, 164, 164, 164, 164, 164, 164, 
02152                      164, 164, 164, 164, 164, 164, 164, 164, 
02153                      164, 164, 164, 164, 164, 164, 164, 164, 
02154                      164, 164, 164, 132, 132, 132, 132, 132, 
02155                      132, 132, 132, 132, 132, 132, 132, 132, 
02156                      132, 132, 132, 132, 132, 132, 132, 132, 
02157                      132, 132, 132, 132, 132, 132, 132, 132, 
02158                      132, 132, 132, 132, 132, 132, 132, 132, 
02159                      132, 132, 132, 132, 132, 132, 132, 132, 
02160                      132, 132, 132, 132, 132, 132, 132, 132, 
02161                      132, 132, 132, 132, 132, 132, 132, 132, 
02162                      132, 132, 132, 132, 132, 132, 132, 132, 
02163                      132, 132, 132, 132, 132, 132, 132, 132, 
02164                      132, 132, 132, 132, 132, 132, 132, 132, 
02165                      132, 132, 132, 132, 132, 132, 132, 132, 
02166                      132, 132, 132, 132, 132, 132, 132, 132, 
02167                      132, 132, 132, 132, 132, 132, 132, 132, 
02168                      132, 132, 132, 132, 132, 132, 132, 132, 
02169                      132, 132, 132, 132, 132, 132, 132, 132, 
02170                      132, 132, 132, 132, 132, 132, 132, 132, 
02171               };
02172               YYDEBUG(171, *YYCURSOR);
02173               YYFILL(3);
02174               yych = *YYCURSOR;
02175               if (yych <= '-') {
02176                      if (yych <= ' ') {
02177                             if (yych <= '\n') {
02178                                    if (yych <= 0x08) goto yy173;
02179                                    if (yych <= '\t') goto yy175;
02180                                    goto yy176;
02181                             } else {
02182                                    if (yych == '\r') goto yy176;
02183                                    if (yych >= ' ') goto yy175;
02184                             }
02185                      } else {
02186                             if (yych <= '$') {
02187                                    if (yych == '"') goto yy178;
02188                                    if (yych >= '$') goto yy180;
02189                             } else {
02190                                    if (yych == '\'') goto yy181;
02191                                    if (yych >= '-') goto yy182;
02192                             }
02193                      }
02194               } else {
02195                      if (yych <= 'Z') {
02196                             if (yych <= '9') {
02197                                    if (yych <= '.') goto yy183;
02198                                    if (yych >= '0') goto yy184;
02199                             } else {
02200                                    if (yych == ';') goto yy176;
02201                                    if (yych >= 'A') goto yy186;
02202                             }
02203                      } else {
02204                             if (yych <= '^') {
02205                                    if (yych <= '[') goto yy173;
02206                                    if (yych <= '\\') goto yy188;
02207                                    if (yych <= ']') goto yy189;
02208                             } else {
02209                                    if (yych == '`') goto yy173;
02210                                    if (yych <= 'z') goto yy186;
02211                             }
02212                      }
02213               }
02214 yy173:
02215               YYDEBUG(173, *YYCURSOR);
02216               yyaccept = 0;
02217               yych = *(YYMARKER = ++YYCURSOR);
02218               goto yy196;
02219 yy174:
02220               YYDEBUG(174, *YYCURSOR);
02221               yyleng = YYCURSOR - SCNG(yy_text);
02222 #line 490 "Zend/zend_ini_scanner.l"
02223               { /* Get rest as section/offset value */
02224        RETURN_TOKEN(TC_STRING, yytext, yyleng);
02225 }
02226 #line 2227 "Zend/zend_ini_scanner.c"
02227 yy175:
02228               YYDEBUG(175, *YYCURSOR);
02229               yyaccept = 0;
02230               yych = *(YYMARKER = ++YYCURSOR);
02231               if (yych <= 0x1F) {
02232                      if (yych == '\t') goto yy222;
02233                      goto yy196;
02234               } else {
02235                      if (yych <= ' ') goto yy222;
02236                      if (yych == '"') goto yy224;
02237                      goto yy196;
02238               }
02239 yy176:
02240               YYDEBUG(176, *YYCURSOR);
02241               ++YYCURSOR;
02242 yy177:
02243               YYDEBUG(177, *YYCURSOR);
02244               yyleng = YYCURSOR - SCNG(yy_text);
02245 #line 572 "Zend/zend_ini_scanner.l"
02246               {
02247        return 0;
02248 }
02249 #line 2250 "Zend/zend_ini_scanner.c"
02250 yy178:
02251               YYDEBUG(178, *YYCURSOR);
02252               ++YYCURSOR;
02253 yy179:
02254               YYDEBUG(179, *YYCURSOR);
02255               yyleng = YYCURSOR - SCNG(yy_text);
02256 #line 494 "Zend/zend_ini_scanner.l"
02257               { /* Double quoted '"' string start */
02258        yy_push_state(ST_DOUBLE_QUOTES TSRMLS_CC);
02259        return '"';
02260 }
02261 #line 2262 "Zend/zend_ini_scanner.c"
02262 yy180:
02263               YYDEBUG(180, *YYCURSOR);
02264               yych = *++YYCURSOR;
02265               if (yych <= '\\') {
02266                      if (yych <= 0x00) goto yy177;
02267                      if (yych <= '[') goto yy195;
02268                      goto yy200;
02269               } else {
02270                      if (yych == '{') goto yy220;
02271                      goto yy195;
02272               }
02273 yy181:
02274               YYDEBUG(181, *YYCURSOR);
02275               yyaccept = 1;
02276               yych = *(YYMARKER = ++YYCURSOR);
02277               if (yybm[0+yych] & 128) {
02278                      goto yy216;
02279               }
02280               goto yy177;
02281 yy182:
02282               YYDEBUG(182, *YYCURSOR);
02283               yyaccept = 0;
02284               yych = *(YYMARKER = ++YYCURSOR);
02285               if (yych <= '/') goto yy196;
02286               if (yych <= '9') goto yy214;
02287               goto yy196;
02288 yy183:
02289               YYDEBUG(183, *YYCURSOR);
02290               yyaccept = 0;
02291               yych = *(YYMARKER = ++YYCURSOR);
02292               if (yych <= '/') goto yy196;
02293               if (yych <= '9') goto yy212;
02294               goto yy196;
02295 yy184:
02296               YYDEBUG(184, *YYCURSOR);
02297               yyaccept = 2;
02298               yych = *(YYMARKER = ++YYCURSOR);
02299               if (yych <= '\'') {
02300                      if (yych <= '\r') {
02301                             if (yych == '\n') goto yy185;
02302                             if (yych <= '\f') goto yy196;
02303                      } else {
02304                             if (yych == '"') goto yy185;
02305                             if (yych <= '&') goto yy196;
02306                      }
02307               } else {
02308                      if (yych <= '9') {
02309                             if (yych == '.') goto yy208;
02310                             if (yych <= '/') goto yy196;
02311                             goto yy210;
02312                      } else {
02313                             if (yych <= ';') {
02314                                    if (yych <= ':') goto yy196;
02315                             } else {
02316                                    if (yych != ']') goto yy196;
02317                             }
02318                      }
02319               }
02320 yy185:
02321               YYDEBUG(185, *YYCURSOR);
02322               yyleng = YYCURSOR - SCNG(yy_text);
02323 #line 468 "Zend/zend_ini_scanner.l"
02324               { /* Get number option value as string */
02325        RETURN_TOKEN(TC_NUMBER, yytext, yyleng);
02326 }
02327 #line 2328 "Zend/zend_ini_scanner.c"
02328 yy186:
02329               YYDEBUG(186, *YYCURSOR);
02330               yyaccept = 3;
02331               yych = *(YYMARKER = ++YYCURSOR);
02332               if (yybm[0+yych] & 32) {
02333                      goto yy206;
02334               }
02335               if (yych <= '"') {
02336                      if (yych <= '\f') {
02337                             if (yych != '\n') goto yy196;
02338                      } else {
02339                             if (yych <= '\r') goto yy187;
02340                             if (yych <= '!') goto yy196;
02341                      }
02342               } else {
02343                      if (yych <= ':') {
02344                             if (yych != '\'') goto yy196;
02345                      } else {
02346                             if (yych <= ';') goto yy187;
02347                             if (yych != ']') goto yy196;
02348                      }
02349               }
02350 yy187:
02351               YYDEBUG(187, *YYCURSOR);
02352               yyleng = YYCURSOR - SCNG(yy_text);
02353 #line 464 "Zend/zend_ini_scanner.l"
02354               { /* Get constant option value */
02355        RETURN_TOKEN(TC_CONSTANT, yytext, yyleng);
02356 }
02357 #line 2358 "Zend/zend_ini_scanner.c"
02358 yy188:
02359               YYDEBUG(188, *YYCURSOR);
02360               yych = *++YYCURSOR;
02361               goto yy195;
02362 yy189:
02363               YYDEBUG(189, *YYCURSOR);
02364               ++YYCURSOR;
02365               yych = *YYCURSOR;
02366               goto yy192;
02367 yy190:
02368               YYDEBUG(190, *YYCURSOR);
02369               yyleng = YYCURSOR - SCNG(yy_text);
02370 #line 374 "Zend/zend_ini_scanner.l"
02371               { /* End of section */
02372        BEGIN(INITIAL);
02373        SCNG(lineno)++;
02374        return ']';
02375 }
02376 #line 2377 "Zend/zend_ini_scanner.c"
02377 yy191:
02378               YYDEBUG(191, *YYCURSOR);
02379               ++YYCURSOR;
02380               YYFILL(2);
02381               yych = *YYCURSOR;
02382 yy192:
02383               YYDEBUG(192, *YYCURSOR);
02384               if (yybm[0+yych] & 2) {
02385                      goto yy191;
02386               }
02387               if (yych == '\n') goto yy193;
02388               if (yych == '\r') goto yy194;
02389               goto yy190;
02390 yy193:
02391               YYDEBUG(193, *YYCURSOR);
02392               yych = *++YYCURSOR;
02393               goto yy190;
02394 yy194:
02395               YYDEBUG(194, *YYCURSOR);
02396               yych = *++YYCURSOR;
02397               if (yych == '\n') goto yy193;
02398               goto yy190;
02399 yy195:
02400               YYDEBUG(195, *YYCURSOR);
02401               yyaccept = 0;
02402               YYMARKER = ++YYCURSOR;
02403               YYFILL(1);
02404               yych = *YYCURSOR;
02405 yy196:
02406               YYDEBUG(196, *YYCURSOR);
02407               if (yybm[0+yych] & 4) {
02408                      goto yy195;
02409               }
02410               if (yych == '$') goto yy198;
02411               if (yych != '\\') goto yy174;
02412 yy197:
02413               YYDEBUG(197, *YYCURSOR);
02414               ++YYCURSOR;
02415               YYFILL(1);
02416               yych = *YYCURSOR;
02417               goto yy195;
02418 yy198:
02419               YYDEBUG(198, *YYCURSOR);
02420               ++YYCURSOR;
02421               YYFILL(1);
02422               yych = *YYCURSOR;
02423               if (yych <= '\\') {
02424                      if (yych <= 0x00) goto yy199;
02425                      if (yych <= '[') goto yy195;
02426                      goto yy200;
02427               } else {
02428                      if (yych != '{') goto yy195;
02429               }
02430 yy199:
02431               YYDEBUG(199, *YYCURSOR);
02432               YYCURSOR = YYMARKER;
02433               if (yyaccept <= 1) {
02434                      if (yyaccept <= 0) {
02435                             goto yy174;
02436                      } else {
02437                             goto yy177;
02438                      }
02439               } else {
02440                      if (yyaccept <= 2) {
02441                             goto yy185;
02442                      } else {
02443                             goto yy187;
02444                      }
02445               }
02446 yy200:
02447               YYDEBUG(200, *YYCURSOR);
02448               ++YYCURSOR;
02449               YYFILL(1);
02450               yych = *YYCURSOR;
02451               if (yybm[0+yych] & 8) {
02452                      goto yy201;
02453               }
02454               if (yych == '\\') goto yy203;
02455               goto yy195;
02456 yy201:
02457               YYDEBUG(201, *YYCURSOR);
02458               ++YYCURSOR;
02459               YYFILL(1);
02460               yych = *YYCURSOR;
02461               YYDEBUG(202, *YYCURSOR);
02462               if (yybm[0+yych] & 8) {
02463                      goto yy201;
02464               }
02465               if (yych == '\\') goto yy205;
02466               goto yy195;
02467 yy203:
02468               YYDEBUG(203, *YYCURSOR);
02469               ++YYCURSOR;
02470               YYFILL(1);
02471               yych = *YYCURSOR;
02472               YYDEBUG(204, *YYCURSOR);
02473               if (yybm[0+yych] & 8) {
02474                      goto yy201;
02475               }
02476               if (yych == '\\') goto yy203;
02477               goto yy195;
02478 yy205:
02479               YYDEBUG(205, *YYCURSOR);
02480               ++YYCURSOR;
02481               YYFILL(1);
02482               yych = *YYCURSOR;
02483               if (yybm[0+yych] & 8) {
02484                      goto yy201;
02485               }
02486               if (yych == '\\') goto yy203;
02487               goto yy195;
02488 yy206:
02489               YYDEBUG(206, *YYCURSOR);
02490               yyaccept = 3;
02491               YYMARKER = ++YYCURSOR;
02492               YYFILL(1);
02493               yych = *YYCURSOR;
02494               YYDEBUG(207, *YYCURSOR);
02495               if (yybm[0+yych] & 32) {
02496                      goto yy206;
02497               }
02498               if (yych <= '$') {
02499                      if (yych <= '\r') {
02500                             if (yych == '\n') goto yy187;
02501                             if (yych <= '\f') goto yy195;
02502                             goto yy187;
02503                      } else {
02504                             if (yych == '"') goto yy187;
02505                             if (yych <= '#') goto yy195;
02506                             goto yy198;
02507                      }
02508               } else {
02509                      if (yych <= ';') {
02510                             if (yych == '\'') goto yy187;
02511                             if (yych <= ':') goto yy195;
02512                             goto yy187;
02513                      } else {
02514                             if (yych <= '[') goto yy195;
02515                             if (yych <= '\\') goto yy197;
02516                             if (yych <= ']') goto yy187;
02517                             goto yy195;
02518                      }
02519               }
02520 yy208:
02521               YYDEBUG(208, *YYCURSOR);
02522               yyaccept = 2;
02523               YYMARKER = ++YYCURSOR;
02524               YYFILL(1);
02525               yych = *YYCURSOR;
02526               YYDEBUG(209, *YYCURSOR);
02527               if (yybm[0+yych] & 64) {
02528                      goto yy208;
02529               }
02530               if (yych <= '$') {
02531                      if (yych <= '\r') {
02532                             if (yych == '\n') goto yy185;
02533                             if (yych <= '\f') goto yy195;
02534                             goto yy185;
02535                      } else {
02536                             if (yych == '"') goto yy185;
02537                             if (yych <= '#') goto yy195;
02538                             goto yy198;
02539                      }
02540               } else {
02541                      if (yych <= ';') {
02542                             if (yych == '\'') goto yy185;
02543                             if (yych <= ':') goto yy195;
02544                             goto yy185;
02545                      } else {
02546                             if (yych <= '[') goto yy195;
02547                             if (yych <= '\\') goto yy197;
02548                             if (yych <= ']') goto yy185;
02549                             goto yy195;
02550                      }
02551               }
02552 yy210:
02553               YYDEBUG(210, *YYCURSOR);
02554               yyaccept = 2;
02555               YYMARKER = ++YYCURSOR;
02556               YYFILL(1);
02557               yych = *YYCURSOR;
02558               YYDEBUG(211, *YYCURSOR);
02559               if (yych <= '\'') {
02560                      if (yych <= '!') {
02561                             if (yych <= '\n') {
02562                                    if (yych <= '\t') goto yy195;
02563                                    goto yy185;
02564                             } else {
02565                                    if (yych == '\r') goto yy185;
02566                                    goto yy195;
02567                             }
02568                      } else {
02569                             if (yych <= '#') {
02570                                    if (yych <= '"') goto yy185;
02571                                    goto yy195;
02572                             } else {
02573                                    if (yych <= '$') goto yy198;
02574                                    if (yych <= '&') goto yy195;
02575                                    goto yy185;
02576                             }
02577                      }
02578               } else {
02579                      if (yych <= ':') {
02580                             if (yych <= '.') {
02581                                    if (yych <= '-') goto yy195;
02582                                    goto yy208;
02583                             } else {
02584                                    if (yych <= '/') goto yy195;
02585                                    if (yych <= '9') goto yy210;
02586                                    goto yy195;
02587                             }
02588                      } else {
02589                             if (yych <= '[') {
02590                                    if (yych <= ';') goto yy185;
02591                                    goto yy195;
02592                             } else {
02593                                    if (yych <= '\\') goto yy197;
02594                                    if (yych <= ']') goto yy185;
02595                                    goto yy195;
02596                             }
02597                      }
02598               }
02599 yy212:
02600               YYDEBUG(212, *YYCURSOR);
02601               yyaccept = 2;
02602               YYMARKER = ++YYCURSOR;
02603               YYFILL(1);
02604               yych = *YYCURSOR;
02605               YYDEBUG(213, *YYCURSOR);
02606               if (yych <= '&') {
02607                      if (yych <= '\r') {
02608                             if (yych == '\n') goto yy185;
02609                             if (yych <= '\f') goto yy195;
02610                             goto yy185;
02611                      } else {
02612                             if (yych <= '"') {
02613                                    if (yych <= '!') goto yy195;
02614                                    goto yy185;
02615                             } else {
02616                                    if (yych == '$') goto yy198;
02617                                    goto yy195;
02618                             }
02619                      }
02620               } else {
02621                      if (yych <= ':') {
02622                             if (yych <= '\'') goto yy185;
02623                             if (yych <= '/') goto yy195;
02624                             if (yych <= '9') goto yy212;
02625                             goto yy195;
02626                      } else {
02627                             if (yych <= '[') {
02628                                    if (yych <= ';') goto yy185;
02629                                    goto yy195;
02630                             } else {
02631                                    if (yych <= '\\') goto yy197;
02632                                    if (yych <= ']') goto yy185;
02633                                    goto yy195;
02634                             }
02635                      }
02636               }
02637 yy214:
02638               YYDEBUG(214, *YYCURSOR);
02639               yyaccept = 2;
02640               YYMARKER = ++YYCURSOR;
02641               YYFILL(1);
02642               yych = *YYCURSOR;
02643               YYDEBUG(215, *YYCURSOR);
02644               if (yych <= '&') {
02645                      if (yych <= '\r') {
02646                             if (yych == '\n') goto yy185;
02647                             if (yych <= '\f') goto yy195;
02648                             goto yy185;
02649                      } else {
02650                             if (yych <= '"') {
02651                                    if (yych <= '!') goto yy195;
02652                                    goto yy185;
02653                             } else {
02654                                    if (yych == '$') goto yy198;
02655                                    goto yy195;
02656                             }
02657                      }
02658               } else {
02659                      if (yych <= ':') {
02660                             if (yych <= '\'') goto yy185;
02661                             if (yych <= '/') goto yy195;
02662                             if (yych <= '9') goto yy214;
02663                             goto yy195;
02664                      } else {
02665                             if (yych <= '[') {
02666                                    if (yych <= ';') goto yy185;
02667                                    goto yy195;
02668                             } else {
02669                                    if (yych <= '\\') goto yy197;
02670                                    if (yych <= ']') goto yy185;
02671                                    goto yy195;
02672                             }
02673                      }
02674               }
02675 yy216:
02676               YYDEBUG(216, *YYCURSOR);
02677               ++YYCURSOR;
02678               YYFILL(1);
02679               yych = *YYCURSOR;
02680               YYDEBUG(217, *YYCURSOR);
02681               if (yybm[0+yych] & 128) {
02682                      goto yy216;
02683               }
02684               YYDEBUG(218, *YYCURSOR);
02685               ++YYCURSOR;
02686               YYDEBUG(219, *YYCURSOR);
02687               yyleng = YYCURSOR - SCNG(yy_text);
02688 #line 365 "Zend/zend_ini_scanner.l"
02689               { /* Raw string */
02690        /* Eat leading and trailing single quotes */
02691        if (yytext[0] == '\'' && yytext[yyleng - 1] == '\'') {
02692               SCNG(yy_text)++;
02693               yyleng = yyleng - 2;
02694        }
02695        RETURN_TOKEN(TC_RAW, yytext, yyleng);
02696 }
02697 #line 2698 "Zend/zend_ini_scanner.c"
02698 yy220:
02699               YYDEBUG(220, *YYCURSOR);
02700               ++YYCURSOR;
02701               YYDEBUG(221, *YYCURSOR);
02702               yyleng = YYCURSOR - SCNG(yy_text);
02703 #line 398 "Zend/zend_ini_scanner.l"
02704               { /* Variable start */
02705        yy_push_state(ST_VARNAME TSRMLS_CC);
02706        return TC_DOLLAR_CURLY;
02707 }
02708 #line 2709 "Zend/zend_ini_scanner.c"
02709 yy222:
02710               YYDEBUG(222, *YYCURSOR);
02711               yyaccept = 0;
02712               YYMARKER = ++YYCURSOR;
02713               YYFILL(1);
02714               yych = *YYCURSOR;
02715               YYDEBUG(223, *YYCURSOR);
02716               if (yych <= '"') {
02717                      if (yych <= '\f') {
02718                             if (yych <= 0x08) goto yy195;
02719                             if (yych <= '\t') goto yy222;
02720                             if (yych <= '\n') goto yy174;
02721                             goto yy195;
02722                      } else {
02723                             if (yych <= 0x1F) {
02724                                    if (yych <= '\r') goto yy174;
02725                                    goto yy195;
02726                             } else {
02727                                    if (yych <= ' ') goto yy222;
02728                                    if (yych <= '!') goto yy195;
02729                             }
02730                      }
02731               } else {
02732                      if (yych <= ':') {
02733                             if (yych <= '$') {
02734                                    if (yych <= '#') goto yy195;
02735                                    goto yy198;
02736                             } else {
02737                                    if (yych == '\'') goto yy174;
02738                                    goto yy195;
02739                             }
02740                      } else {
02741                             if (yych <= '[') {
02742                                    if (yych <= ';') goto yy174;
02743                                    goto yy195;
02744                             } else {
02745                                    if (yych <= '\\') goto yy197;
02746                                    if (yych <= ']') goto yy174;
02747                                    goto yy195;
02748                             }
02749                      }
02750               }
02751 yy224:
02752               YYDEBUG(224, *YYCURSOR);
02753               ++YYCURSOR;
02754               yych = *YYCURSOR;
02755               goto yy179;
02756        }
02757 /* *********************************** */
02758 yyc_ST_VALUE:
02759        {
02760               static const unsigned char yybm[] = {
02761                      160, 162, 162, 162, 162, 162, 162, 162, 
02762                      162, 176, 128, 162, 162, 128, 162, 162, 
02763                      162, 162, 162, 162, 162, 162, 162, 162, 
02764                      162, 162, 162, 162, 162, 162, 162, 162, 
02765                      176, 160, 160, 162, 168, 162, 160,  32, 
02766                      160, 160, 162, 162, 162, 162, 162, 162, 
02767                      230, 230, 230, 230, 230, 230, 230, 230, 
02768                      230, 230, 162, 160, 162, 160, 162, 162, 
02769                      162, 166, 166, 166, 166, 166, 166, 166, 
02770                      166, 166, 166, 166, 166, 166, 166, 166, 
02771                      166, 166, 166, 166, 166, 166, 166, 166, 
02772                      166, 166, 166, 162, 162, 162, 162, 166, 
02773                      162, 166, 166, 166, 166, 166, 166, 166, 
02774                      166, 166, 166, 166, 166, 166, 166, 166, 
02775                      166, 166, 166, 166, 166, 166, 166, 166, 
02776                      166, 166, 166, 162, 160, 162, 160, 162, 
02777                      162, 162, 162, 162, 162, 162, 162, 162, 
02778                      162, 162, 162, 162, 162, 162, 162, 162, 
02779                      162, 162, 162, 162, 162, 162, 162, 162, 
02780                      162, 162, 162, 162, 162, 162, 162, 162, 
02781                      162, 162, 162, 162, 162, 162, 162, 162, 
02782                      162, 162, 162, 162, 162, 162, 162, 162, 
02783                      162, 162, 162, 162, 162, 162, 162, 162, 
02784                      162, 162, 162, 162, 162, 162, 162, 162, 
02785                      162, 162, 162, 162, 162, 162, 162, 162, 
02786                      162, 162, 162, 162, 162, 162, 162, 162, 
02787                      162, 162, 162, 162, 162, 162, 162, 162, 
02788                      162, 162, 162, 162, 162, 162, 162, 162, 
02789                      162, 162, 162, 162, 162, 162, 162, 162, 
02790                      162, 162, 162, 162, 162, 162, 162, 162, 
02791                      162, 162, 162, 162, 162, 162, 162, 162, 
02792                      162, 162, 162, 162, 162, 162, 162, 162, 
02793               };
02794               YYDEBUG(225, *YYCURSOR);
02795               YYFILL(6);
02796               yych = *YYCURSOR;
02797               YYDEBUG(-1, yych);
02798               switch (yych) {
02799               case 0x00:    goto yy227;
02800               case '\t':
02801               case ' ':     goto yy231;
02802               case '\n':    goto yy233;
02803               case '\r':    goto yy235;
02804               case '!':
02805               case '&':
02806               case '(':
02807               case ')':
02808               case '|':
02809               case '~':     goto yy236;
02810               case '"':     goto yy238;
02811               case '$':     goto yy240;
02812               case '\'':    goto yy241;
02813               case '-':     goto yy242;
02814               case '.':     goto yy243;
02815               case '0':
02816               case '1':
02817               case '2':
02818               case '3':
02819               case '4':
02820               case '5':
02821               case '6':
02822               case '7':
02823               case '8':
02824               case '9':     goto yy244;
02825               case ';':     goto yy246;
02826               case '=':     goto yy247;
02827               case 'A':
02828               case 'B':
02829               case 'C':
02830               case 'D':
02831               case 'E':
02832               case 'G':
02833               case 'H':
02834               case 'I':
02835               case 'J':
02836               case 'K':
02837               case 'L':
02838               case 'M':
02839               case 'P':
02840               case 'Q':
02841               case 'R':
02842               case 'S':
02843               case 'U':
02844               case 'V':
02845               case 'W':
02846               case 'X':
02847               case 'Z':
02848               case '_':
02849               case 'a':
02850               case 'b':
02851               case 'c':
02852               case 'd':
02853               case 'e':
02854               case 'g':
02855               case 'h':
02856               case 'i':
02857               case 'j':
02858               case 'k':
02859               case 'l':
02860               case 'm':
02861               case 'p':
02862               case 'q':
02863               case 'r':
02864               case 's':
02865               case 'u':
02866               case 'v':
02867               case 'w':
02868               case 'x':
02869               case 'z':     goto yy249;
02870               case 'F':
02871               case 'f':     goto yy251;
02872               case 'N':
02873               case 'n':     goto yy252;
02874               case 'O':
02875               case 'o':     goto yy253;
02876               case 'T':
02877               case 't':     goto yy254;
02878               case 'Y':
02879               case 'y':     goto yy255;
02880               default:      goto yy229;
02881               }
02882 yy227:
02883               YYDEBUG(227, *YYCURSOR);
02884               ++YYCURSOR;
02885 yy228:
02886               YYDEBUG(228, *YYCURSOR);
02887               yyleng = YYCURSOR - SCNG(yy_text);
02888 #line 567 "Zend/zend_ini_scanner.l"
02889               { /* End of option value (if EOF is reached before EOL */
02890        BEGIN(INITIAL);
02891        return END_OF_LINE;
02892 }
02893 #line 2894 "Zend/zend_ini_scanner.c"
02894 yy229:
02895               YYDEBUG(229, *YYCURSOR);
02896               yyaccept = 0;
02897               yych = *(YYMARKER = ++YYCURSOR);
02898               goto yy257;
02899 yy230:
02900               YYDEBUG(230, *YYCURSOR);
02901               yyleng = YYCURSOR - SCNG(yy_text);
02902 #line 486 "Zend/zend_ini_scanner.l"
02903               { /* Get everything else as option/offset value */
02904        RETURN_TOKEN(TC_STRING, yytext, yyleng);
02905 }
02906 #line 2907 "Zend/zend_ini_scanner.c"
02907 yy231:
02908               YYDEBUG(231, *YYCURSOR);
02909               yyaccept = 1;
02910               yych = *(YYMARKER = ++YYCURSOR);
02911               goto yy307;
02912 yy232:
02913               YYDEBUG(232, *YYCURSOR);
02914               yyleng = YYCURSOR - SCNG(yy_text);
02915 #line 540 "Zend/zend_ini_scanner.l"
02916               {
02917        RETURN_TOKEN(TC_WHITESPACE, yytext, yyleng);
02918 }
02919 #line 2920 "Zend/zend_ini_scanner.c"
02920 yy233:
02921               YYDEBUG(233, *YYCURSOR);
02922               ++YYCURSOR;
02923 yy234:
02924               YYDEBUG(234, *YYCURSOR);
02925               yyleng = YYCURSOR - SCNG(yy_text);
02926 #line 458 "Zend/zend_ini_scanner.l"
02927               { /* End of option value */
02928        BEGIN(INITIAL);
02929        SCNG(lineno)++;
02930        return END_OF_LINE;
02931 }
02932 #line 2933 "Zend/zend_ini_scanner.c"
02933 yy235:
02934               YYDEBUG(235, *YYCURSOR);
02935               yych = *++YYCURSOR;
02936               if (yych == '\n') goto yy305;
02937               goto yy234;
02938 yy236:
02939               YYDEBUG(236, *YYCURSOR);
02940               ++YYCURSOR;
02941               yych = *YYCURSOR;
02942               goto yy304;
02943 yy237:
02944               YYDEBUG(237, *YYCURSOR);
02945               yyleng = YYCURSOR - SCNG(yy_text);
02946 #line 476 "Zend/zend_ini_scanner.l"
02947               { /* Boolean operators */
02948        return yytext[0];
02949 }
02950 #line 2951 "Zend/zend_ini_scanner.c"
02951 yy238:
02952               YYDEBUG(238, *YYCURSOR);
02953               ++YYCURSOR;
02954 yy239:
02955               YYDEBUG(239, *YYCURSOR);
02956               yyleng = YYCURSOR - SCNG(yy_text);
02957 #line 494 "Zend/zend_ini_scanner.l"
02958               { /* Double quoted '"' string start */
02959        yy_push_state(ST_DOUBLE_QUOTES TSRMLS_CC);
02960        return '"';
02961 }
02962 #line 2963 "Zend/zend_ini_scanner.c"
02963 yy240:
02964               YYDEBUG(240, *YYCURSOR);
02965               yych = *++YYCURSOR;
02966               if (yych <= '\\') {
02967                      if (yych <= 0x00) goto yy228;
02968                      if (yych <= '[') goto yy256;
02969                      goto yy263;
02970               } else {
02971                      if (yych == '{') goto yy301;
02972                      goto yy256;
02973               }
02974 yy241:
02975               YYDEBUG(241, *YYCURSOR);
02976               yyaccept = 2;
02977               yych = *(YYMARKER = ++YYCURSOR);
02978               if (yybm[0+yych] & 128) {
02979                      goto yy297;
02980               }
02981               goto yy228;
02982 yy242:
02983               YYDEBUG(242, *YYCURSOR);
02984               yyaccept = 0;
02985               yych = *(YYMARKER = ++YYCURSOR);
02986               if (yych <= '/') goto yy257;
02987               if (yych <= '9') goto yy295;
02988               goto yy257;
02989 yy243:
02990               YYDEBUG(243, *YYCURSOR);
02991               yyaccept = 0;
02992               yych = *(YYMARKER = ++YYCURSOR);
02993               if (yych <= '/') goto yy257;
02994               if (yych <= '9') goto yy293;
02995               goto yy257;
02996 yy244:
02997               YYDEBUG(244, *YYCURSOR);
02998               yyaccept = 3;
02999               yych = *(YYMARKER = ++YYCURSOR);
03000               if (yych <= '.') {
03001                      if (yych <= '\r') {
03002                             if (yych <= 0x08) {
03003                                    if (yych >= 0x01) goto yy257;
03004                             } else {
03005                                    if (yych <= '\n') goto yy245;
03006                                    if (yych <= '\f') goto yy257;
03007                             }
03008                      } else {
03009                             if (yych <= '%') {
03010                                    if (yych <= 0x1F) goto yy257;
03011                                    if (yych >= '#') goto yy257;
03012                             } else {
03013                                    if (yych <= ')') goto yy245;
03014                                    if (yych <= '-') goto yy257;
03015                                    goto yy289;
03016                             }
03017                      }
03018               } else {
03019                      if (yych <= '<') {
03020                             if (yych <= '9') {
03021                                    if (yych <= '/') goto yy257;
03022                                    goto yy291;
03023                             } else {
03024                                    if (yych != ';') goto yy257;
03025                             }
03026                      } else {
03027                             if (yych <= '|') {
03028                                    if (yych <= '=') goto yy245;
03029                                    if (yych <= '{') goto yy257;
03030                             } else {
03031                                    if (yych != '~') goto yy257;
03032                             }
03033                      }
03034               }
03035 yy245:
03036               YYDEBUG(245, *YYCURSOR);
03037               yyleng = YYCURSOR - SCNG(yy_text);
03038 #line 468 "Zend/zend_ini_scanner.l"
03039               { /* Get number option value as string */
03040        RETURN_TOKEN(TC_NUMBER, yytext, yyleng);
03041 }
03042 #line 3043 "Zend/zend_ini_scanner.c"
03043 yy246:
03044               YYDEBUG(246, *YYCURSOR);
03045               yyaccept = 2;
03046               yych = *(YYMARKER = ++YYCURSOR);
03047               goto yy285;
03048 yy247:
03049               YYDEBUG(247, *YYCURSOR);
03050               ++YYCURSOR;
03051               YYDEBUG(248, *YYCURSOR);
03052               yyleng = YYCURSOR - SCNG(yy_text);
03053 #line 480 "Zend/zend_ini_scanner.l"
03054               { /* Make = used in option value to trigger error */
03055        yyless(0);
03056        BEGIN(INITIAL);
03057        return END_OF_LINE;
03058 }
03059 #line 3060 "Zend/zend_ini_scanner.c"
03060 yy249:
03061               YYDEBUG(249, *YYCURSOR);
03062               yyaccept = 4;
03063               yych = *(YYMARKER = ++YYCURSOR);
03064               if (yybm[0+yych] & 4) {
03065                      goto yy258;
03066               }
03067               if (yych <= ')') {
03068                      if (yych <= '\f') {
03069                             if (yych <= 0x00) goto yy250;
03070                             if (yych <= 0x08) goto yy257;
03071                             if (yych >= '\v') goto yy257;
03072                      } else {
03073                             if (yych <= 0x1F) {
03074                                    if (yych >= 0x0E) goto yy257;
03075                             } else {
03076                                    if (yych <= '"') goto yy250;
03077                                    if (yych <= '%') goto yy257;
03078                             }
03079                      }
03080               } else {
03081                      if (yych <= '=') {
03082                             if (yych == ';') goto yy250;
03083                             if (yych <= '<') goto yy257;
03084                      } else {
03085                             if (yych <= '|') {
03086                                    if (yych <= '{') goto yy257;
03087                             } else {
03088                                    if (yych != '~') goto yy257;
03089                             }
03090                      }
03091               }
03092 yy250:
03093               YYDEBUG(250, *YYCURSOR);
03094               yyleng = YYCURSOR - SCNG(yy_text);
03095 #line 464 "Zend/zend_ini_scanner.l"
03096               { /* Get constant option value */
03097        RETURN_TOKEN(TC_CONSTANT, yytext, yyleng);
03098 }
03099 #line 3100 "Zend/zend_ini_scanner.c"
03100 yy251:
03101               YYDEBUG(251, *YYCURSOR);
03102               yyaccept = 4;
03103               yych = *(YYMARKER = ++YYCURSOR);
03104               if (yych <= '<') {
03105                      if (yych <= '"') {
03106                             if (yych <= '\n') {
03107                                    if (yych <= 0x00) goto yy250;
03108                                    if (yych <= 0x08) goto yy257;
03109                                    goto yy250;
03110                             } else {
03111                                    if (yych == '\r') goto yy250;
03112                                    if (yych <= 0x1F) goto yy257;
03113                                    goto yy250;
03114                             }
03115                      } else {
03116                             if (yych <= '/') {
03117                                    if (yych <= '%') goto yy257;
03118                                    if (yych <= ')') goto yy250;
03119                                    goto yy257;
03120                             } else {
03121                                    if (yych <= '9') goto yy258;
03122                                    if (yych == ';') goto yy250;
03123                                    goto yy257;
03124                             }
03125                      }
03126               } else {
03127                      if (yych <= '`') {
03128                             if (yych <= 'A') {
03129                                    if (yych <= '=') goto yy250;
03130                                    if (yych <= '@') goto yy257;
03131                                    goto yy281;
03132                             } else {
03133                                    if (yych <= 'Z') goto yy258;
03134                                    if (yych == '_') goto yy258;
03135                                    goto yy257;
03136                             }
03137                      } else {
03138                             if (yych <= '{') {
03139                                    if (yych <= 'a') goto yy281;
03140                                    if (yych <= 'z') goto yy258;
03141                                    goto yy257;
03142                             } else {
03143                                    if (yych == '}') goto yy257;
03144                                    if (yych <= '~') goto yy250;
03145                                    goto yy257;
03146                             }
03147                      }
03148               }
03149 yy252:
03150               YYDEBUG(252, *YYCURSOR);
03151               yyaccept = 4;
03152               yych = *(YYMARKER = ++YYCURSOR);
03153               if (yych <= 'N') {
03154                      if (yych <= '%') {
03155                             if (yych <= '\f') {
03156                                    if (yych <= 0x00) goto yy250;
03157                                    if (yych <= 0x08) goto yy257;
03158                                    if (yych <= '\n') goto yy250;
03159                                    goto yy257;
03160                             } else {
03161                                    if (yych <= '\r') goto yy250;
03162                                    if (yych <= 0x1F) goto yy257;
03163                                    if (yych <= '"') goto yy250;
03164                                    goto yy257;
03165                             }
03166                      } else {
03167                             if (yych <= ':') {
03168                                    if (yych <= ')') goto yy250;
03169                                    if (yych <= '/') goto yy257;
03170                                    if (yych <= '9') goto yy258;
03171                                    goto yy257;
03172                             } else {
03173                                    if (yych <= '<') {
03174                                           if (yych <= ';') goto yy250;
03175                                           goto yy257;
03176                                    } else {
03177                                           if (yych <= '=') goto yy250;
03178                                           if (yych <= '@') goto yy257;
03179                                           goto yy258;
03180                                    }
03181                             }
03182                      }
03183               } else {
03184                      if (yych <= 'n') {
03185                             if (yych <= 'Z') {
03186                                    if (yych <= 'O') goto yy277;
03187                                    if (yych == 'U') goto yy278;
03188                                    goto yy258;
03189                             } else {
03190                                    if (yych == '_') goto yy258;
03191                                    if (yych <= '`') goto yy257;
03192                                    goto yy258;
03193                             }
03194                      } else {
03195                             if (yych <= 'z') {
03196                                    if (yych <= 'o') goto yy277;
03197                                    if (yych == 'u') goto yy278;
03198                                    goto yy258;
03199                             } else {
03200                                    if (yych <= '|') {
03201                                           if (yych <= '{') goto yy257;
03202                                           goto yy250;
03203                                    } else {
03204                                           if (yych == '~') goto yy250;
03205                                           goto yy257;
03206                                    }
03207                             }
03208                      }
03209               }
03210 yy253:
03211               YYDEBUG(253, *YYCURSOR);
03212               yyaccept = 4;
03213               yych = *(YYMARKER = ++YYCURSOR);
03214               if (yych <= 'E') {
03215                      if (yych <= '%') {
03216                             if (yych <= '\f') {
03217                                    if (yych <= 0x00) goto yy250;
03218                                    if (yych <= 0x08) goto yy257;
03219                                    if (yych <= '\n') goto yy250;
03220                                    goto yy257;
03221                             } else {
03222                                    if (yych <= '\r') goto yy250;
03223                                    if (yych <= 0x1F) goto yy257;
03224                                    if (yych <= '"') goto yy250;
03225                                    goto yy257;
03226                             }
03227                      } else {
03228                             if (yych <= ':') {
03229                                    if (yych <= ')') goto yy250;
03230                                    if (yych <= '/') goto yy257;
03231                                    if (yych <= '9') goto yy258;
03232                                    goto yy257;
03233                             } else {
03234                                    if (yych <= '<') {
03235                                           if (yych <= ';') goto yy250;
03236                                           goto yy257;
03237                                    } else {
03238                                           if (yych <= '=') goto yy250;
03239                                           if (yych <= '@') goto yy257;
03240                                           goto yy258;
03241                                    }
03242                             }
03243                      }
03244               } else {
03245                      if (yych <= 'e') {
03246                             if (yych <= 'Z') {
03247                                    if (yych <= 'F') goto yy272;
03248                                    if (yych == 'N') goto yy266;
03249                                    goto yy258;
03250                             } else {
03251                                    if (yych == '_') goto yy258;
03252                                    if (yych <= '`') goto yy257;
03253                                    goto yy258;
03254                             }
03255                      } else {
03256                             if (yych <= 'z') {
03257                                    if (yych <= 'f') goto yy272;
03258                                    if (yych == 'n') goto yy266;
03259                                    goto yy258;
03260                             } else {
03261                                    if (yych <= '|') {
03262                                           if (yych <= '{') goto yy257;
03263                                           goto yy250;
03264                                    } else {
03265                                           if (yych == '~') goto yy250;
03266                                           goto yy257;
03267                                    }
03268                             }
03269                      }
03270               }
03271 yy254:
03272               YYDEBUG(254, *YYCURSOR);
03273               yyaccept = 4;
03274               yych = *(YYMARKER = ++YYCURSOR);
03275               if (yych <= '=') {
03276                      if (yych <= '"') {
03277                             if (yych <= '\n') {
03278                                    if (yych <= 0x00) goto yy250;
03279                                    if (yych <= 0x08) goto yy257;
03280                                    goto yy250;
03281                             } else {
03282                                    if (yych == '\r') goto yy250;
03283                                    if (yych <= 0x1F) goto yy257;
03284                                    goto yy250;
03285                             }
03286                      } else {
03287                             if (yych <= '9') {
03288                                    if (yych <= '%') goto yy257;
03289                                    if (yych <= ')') goto yy250;
03290                                    if (yych <= '/') goto yy257;
03291                                    goto yy258;
03292                             } else {
03293                                    if (yych == ';') goto yy250;
03294                                    if (yych <= '<') goto yy257;
03295                                    goto yy250;
03296                             }
03297                      }
03298               } else {
03299                      if (yych <= '`') {
03300                             if (yych <= 'R') {
03301                                    if (yych <= '@') goto yy257;
03302                                    if (yych <= 'Q') goto yy258;
03303                                    goto yy270;
03304                             } else {
03305                                    if (yych <= 'Z') goto yy258;
03306                                    if (yych == '_') goto yy258;
03307                                    goto yy257;
03308                             }
03309                      } else {
03310                             if (yych <= '{') {
03311                                    if (yych == 'r') goto yy270;
03312                                    if (yych <= 'z') goto yy258;
03313                                    goto yy257;
03314                             } else {
03315                                    if (yych == '}') goto yy257;
03316                                    if (yych <= '~') goto yy250;
03317                                    goto yy257;
03318                             }
03319                      }
03320               }
03321 yy255:
03322               YYDEBUG(255, *YYCURSOR);
03323               yyaccept = 4;
03324               yych = *(YYMARKER = ++YYCURSOR);
03325               if (yych <= '=') {
03326                      if (yych <= '"') {
03327                             if (yych <= '\n') {
03328                                    if (yych <= 0x00) goto yy250;
03329                                    if (yych <= 0x08) goto yy257;
03330                                    goto yy250;
03331                             } else {
03332                                    if (yych == '\r') goto yy250;
03333                                    if (yych <= 0x1F) goto yy257;
03334                                    goto yy250;
03335                             }
03336                      } else {
03337                             if (yych <= '9') {
03338                                    if (yych <= '%') goto yy257;
03339                                    if (yych <= ')') goto yy250;
03340                                    if (yych <= '/') goto yy257;
03341                                    goto yy258;
03342                             } else {
03343                                    if (yych == ';') goto yy250;
03344                                    if (yych <= '<') goto yy257;
03345                                    goto yy250;
03346                             }
03347                      }
03348               } else {
03349                      if (yych <= '`') {
03350                             if (yych <= 'E') {
03351                                    if (yych <= '@') goto yy257;
03352                                    if (yych <= 'D') goto yy258;
03353                                    goto yy260;
03354                             } else {
03355                                    if (yych <= 'Z') goto yy258;
03356                                    if (yych == '_') goto yy258;
03357                                    goto yy257;
03358                             }
03359                      } else {
03360                             if (yych <= '{') {
03361                                    if (yych == 'e') goto yy260;
03362                                    if (yych <= 'z') goto yy258;
03363                                    goto yy257;
03364                             } else {
03365                                    if (yych == '}') goto yy257;
03366                                    if (yych <= '~') goto yy250;
03367                                    goto yy257;
03368                             }
03369                      }
03370               }
03371 yy256:
03372               YYDEBUG(256, *YYCURSOR);
03373               yyaccept = 0;
03374               YYMARKER = ++YYCURSOR;
03375               YYFILL(1);
03376               yych = *YYCURSOR;
03377 yy257:
03378               YYDEBUG(257, *YYCURSOR);
03379               if (yybm[0+yych] & 2) {
03380                      goto yy256;
03381               }
03382               if (yych == '$') goto yy261;
03383               goto yy230;
03384 yy258:
03385               YYDEBUG(258, *YYCURSOR);
03386               yyaccept = 4;
03387               YYMARKER = ++YYCURSOR;
03388               YYFILL(1);
03389               yych = *YYCURSOR;
03390               YYDEBUG(259, *YYCURSOR);
03391               if (yybm[0+yych] & 4) {
03392                      goto yy258;
03393               }
03394               if (yych <= '%') {
03395                      if (yych <= '\r') {
03396                             if (yych <= 0x08) {
03397                                    if (yych <= 0x00) goto yy250;
03398                                    goto yy256;
03399                             } else {
03400                                    if (yych <= '\n') goto yy250;
03401                                    if (yych <= '\f') goto yy256;
03402                                    goto yy250;
03403                             }
03404                      } else {
03405                             if (yych <= '"') {
03406                                    if (yych <= 0x1F) goto yy256;
03407                                    goto yy250;
03408                             } else {
03409                                    if (yych == '$') goto yy261;
03410                                    goto yy256;
03411                             }
03412                      }
03413               } else {
03414                      if (yych <= '=') {
03415                             if (yych <= ':') {
03416                                    if (yych <= ')') goto yy250;
03417                                    goto yy256;
03418                             } else {
03419                                    if (yych == '<') goto yy256;
03420                                    goto yy250;
03421                             }
03422                      } else {
03423                             if (yych <= '|') {
03424                                    if (yych <= '{') goto yy256;
03425                                    goto yy250;
03426                             } else {
03427                                    if (yych == '~') goto yy250;
03428                                    goto yy256;
03429                             }
03430                      }
03431               }
03432 yy260:
03433               YYDEBUG(260, *YYCURSOR);
03434               yyaccept = 4;
03435               yych = *(YYMARKER = ++YYCURSOR);
03436               if (yych <= '=') {
03437                      if (yych <= '"') {
03438                             if (yych <= '\n') {
03439                                    if (yych <= 0x00) goto yy250;
03440                                    if (yych <= 0x08) goto yy257;
03441                                    goto yy250;
03442                             } else {
03443                                    if (yych == '\r') goto yy250;
03444                                    if (yych <= 0x1F) goto yy257;
03445                                    goto yy250;
03446                             }
03447                      } else {
03448                             if (yych <= '9') {
03449                                    if (yych <= '%') goto yy257;
03450                                    if (yych <= ')') goto yy250;
03451                                    if (yych <= '/') goto yy257;
03452                                    goto yy258;
03453                             } else {
03454                                    if (yych == ';') goto yy250;
03455                                    if (yych <= '<') goto yy257;
03456                                    goto yy250;
03457                             }
03458                      }
03459               } else {
03460                      if (yych <= '`') {
03461                             if (yych <= 'S') {
03462                                    if (yych <= '@') goto yy257;
03463                                    if (yych <= 'R') goto yy258;
03464                                    goto yy266;
03465                             } else {
03466                                    if (yych <= 'Z') goto yy258;
03467                                    if (yych == '_') goto yy258;
03468                                    goto yy257;
03469                             }
03470                      } else {
03471                             if (yych <= '{') {
03472                                    if (yych == 's') goto yy266;
03473                                    if (yych <= 'z') goto yy258;
03474                                    goto yy257;
03475                             } else {
03476                                    if (yych == '}') goto yy257;
03477                                    if (yych <= '~') goto yy250;
03478                                    goto yy257;
03479                             }
03480                      }
03481               }
03482 yy261:
03483               YYDEBUG(261, *YYCURSOR);
03484               ++YYCURSOR;
03485               YYFILL(1);
03486               yych = *YYCURSOR;
03487               if (yych <= '\\') {
03488                      if (yych <= 0x00) goto yy262;
03489                      if (yych <= '[') goto yy256;
03490                      goto yy263;
03491               } else {
03492                      if (yych != '{') goto yy256;
03493               }
03494 yy262:
03495               YYDEBUG(262, *YYCURSOR);
03496               YYCURSOR = YYMARKER;
03497               if (yyaccept <= 3) {
03498                      if (yyaccept <= 1) {
03499                             if (yyaccept <= 0) {
03500                                    goto yy230;
03501                             } else {
03502                                    goto yy232;
03503                             }
03504                      } else {
03505                             if (yyaccept <= 2) {
03506                                    goto yy228;
03507                             } else {
03508                                    goto yy245;
03509                             }
03510                      }
03511               } else {
03512                      if (yyaccept <= 5) {
03513                             if (yyaccept <= 4) {
03514                                    goto yy250;
03515                             } else {
03516                                    goto yy267;
03517                             }
03518                      } else {
03519                             goto yy274;
03520                      }
03521               }
03522 yy263:
03523               YYDEBUG(263, *YYCURSOR);
03524               ++YYCURSOR;
03525               YYFILL(1);
03526               yych = *YYCURSOR;
03527               if (yybm[0+yych] & 8) {
03528                      goto yy264;
03529               }
03530               goto yy256;
03531 yy264:
03532               YYDEBUG(264, *YYCURSOR);
03533               ++YYCURSOR;
03534               YYFILL(1);
03535               yych = *YYCURSOR;
03536               YYDEBUG(265, *YYCURSOR);
03537               if (yybm[0+yych] & 8) {
03538                      goto yy264;
03539               }
03540               if (yych <= 0x00) goto yy230;
03541               if (yych == '\\') goto yy263;
03542               goto yy256;
03543 yy266:
03544               YYDEBUG(266, *YYCURSOR);
03545               yyaccept = 5;
03546               yych = *(YYMARKER = ++YYCURSOR);
03547               if (yybm[0+yych] & 16) {
03548                      goto yy268;
03549               }
03550               if (yych <= ';') {
03551                      if (yych <= ' ') {
03552                             if (yych <= '\n') {
03553                                    if (yych <= 0x00) goto yy267;
03554                                    if (yych <= '\t') goto yy257;
03555                             } else {
03556                                    if (yych != '\r') goto yy257;
03557                             }
03558                      } else {
03559                             if (yych <= ')') {
03560                                    if (yych <= '"') goto yy267;
03561                                    if (yych <= '%') goto yy257;
03562                             } else {
03563                                    if (yych <= '/') goto yy257;
03564                                    if (yych <= '9') goto yy258;
03565                                    if (yych <= ':') goto yy257;
03566                             }
03567                      }
03568               } else {
03569                      if (yych <= '_') {
03570                             if (yych <= '@') {
03571                                    if (yych != '=') goto yy257;
03572                             } else {
03573                                    if (yych <= 'Z') goto yy258;
03574                                    if (yych <= '^') goto yy257;
03575                                    goto yy258;
03576                             }
03577                      } else {
03578                             if (yych <= '{') {
03579                                    if (yych <= '`') goto yy257;
03580                                    if (yych <= 'z') goto yy258;
03581                                    goto yy257;
03582                             } else {
03583                                    if (yych == '}') goto yy257;
03584                                    if (yych >= 0x7F) goto yy257;
03585                             }
03586                      }
03587               }
03588 yy267:
03589               YYDEBUG(267, *YYCURSOR);
03590               yyleng = YYCURSOR - SCNG(yy_text);
03591 #line 418 "Zend/zend_ini_scanner.l"
03592               { /* TRUE value (when used outside option value/offset this causes parse error!) */
03593        RETURN_TOKEN(BOOL_TRUE, "1", 1);
03594 }
03595 #line 3596 "Zend/zend_ini_scanner.c"
03596 yy268:
03597               YYDEBUG(268, *YYCURSOR);
03598               ++YYCURSOR;
03599               YYFILL(1);
03600               yych = *YYCURSOR;
03601               YYDEBUG(269, *YYCURSOR);
03602               if (yybm[0+yych] & 16) {
03603                      goto yy268;
03604               }
03605               goto yy267;
03606 yy270:
03607               YYDEBUG(270, *YYCURSOR);
03608               yyaccept = 4;
03609               yych = *(YYMARKER = ++YYCURSOR);
03610               if (yych <= '=') {
03611                      if (yych <= '"') {
03612                             if (yych <= '\n') {
03613                                    if (yych <= 0x00) goto yy250;
03614                                    if (yych <= 0x08) goto yy257;
03615                                    goto yy250;
03616                             } else {
03617                                    if (yych == '\r') goto yy250;
03618                                    if (yych <= 0x1F) goto yy257;
03619                                    goto yy250;
03620                             }
03621                      } else {
03622                             if (yych <= '9') {
03623                                    if (yych <= '%') goto yy257;
03624                                    if (yych <= ')') goto yy250;
03625                                    if (yych <= '/') goto yy257;
03626                                    goto yy258;
03627                             } else {
03628                                    if (yych == ';') goto yy250;
03629                                    if (yych <= '<') goto yy257;
03630                                    goto yy250;
03631                             }
03632                      }
03633               } else {
03634                      if (yych <= '`') {
03635                             if (yych <= 'U') {
03636                                    if (yych <= '@') goto yy257;
03637                                    if (yych <= 'T') goto yy258;
03638                             } else {
03639                                    if (yych <= 'Z') goto yy258;
03640                                    if (yych == '_') goto yy258;
03641                                    goto yy257;
03642                             }
03643                      } else {
03644                             if (yych <= '{') {
03645                                    if (yych == 'u') goto yy271;
03646                                    if (yych <= 'z') goto yy258;
03647                                    goto yy257;
03648                             } else {
03649                                    if (yych == '}') goto yy257;
03650                                    if (yych <= '~') goto yy250;
03651                                    goto yy257;
03652                             }
03653                      }
03654               }
03655 yy271:
03656               YYDEBUG(271, *YYCURSOR);
03657               yyaccept = 4;
03658               yych = *(YYMARKER = ++YYCURSOR);
03659               if (yych <= '=') {
03660                      if (yych <= '"') {
03661                             if (yych <= '\n') {
03662                                    if (yych <= 0x00) goto yy250;
03663                                    if (yych <= 0x08) goto yy257;
03664                                    goto yy250;
03665                             } else {
03666                                    if (yych == '\r') goto yy250;
03667                                    if (yych <= 0x1F) goto yy257;
03668                                    goto yy250;
03669                             }
03670                      } else {
03671                             if (yych <= '9') {
03672                                    if (yych <= '%') goto yy257;
03673                                    if (yych <= ')') goto yy250;
03674                                    if (yych <= '/') goto yy257;
03675                                    goto yy258;
03676                             } else {
03677                                    if (yych == ';') goto yy250;
03678                                    if (yych <= '<') goto yy257;
03679                                    goto yy250;
03680                             }
03681                      }
03682               } else {
03683                      if (yych <= '`') {
03684                             if (yych <= 'E') {
03685                                    if (yych <= '@') goto yy257;
03686                                    if (yych <= 'D') goto yy258;
03687                                    goto yy266;
03688                             } else {
03689                                    if (yych <= 'Z') goto yy258;
03690                                    if (yych == '_') goto yy258;
03691                                    goto yy257;
03692                             }
03693                      } else {
03694                             if (yych <= '{') {
03695                                    if (yych == 'e') goto yy266;
03696                                    if (yych <= 'z') goto yy258;
03697                                    goto yy257;
03698                             } else {
03699                                    if (yych == '}') goto yy257;
03700                                    if (yych <= '~') goto yy250;
03701                                    goto yy257;
03702                             }
03703                      }
03704               }
03705 yy272:
03706               YYDEBUG(272, *YYCURSOR);
03707               yyaccept = 4;
03708               yych = *(YYMARKER = ++YYCURSOR);
03709               if (yych <= '=') {
03710                      if (yych <= '"') {
03711                             if (yych <= '\n') {
03712                                    if (yych <= 0x00) goto yy250;
03713                                    if (yych <= 0x08) goto yy257;
03714                                    goto yy250;
03715                             } else {
03716                                    if (yych == '\r') goto yy250;
03717                                    if (yych <= 0x1F) goto yy257;
03718                                    goto yy250;
03719                             }
03720                      } else {
03721                             if (yych <= '9') {
03722                                    if (yych <= '%') goto yy257;
03723                                    if (yych <= ')') goto yy250;
03724                                    if (yych <= '/') goto yy257;
03725                                    goto yy258;
03726                             } else {
03727                                    if (yych == ';') goto yy250;
03728                                    if (yych <= '<') goto yy257;
03729                                    goto yy250;
03730                             }
03731                      }
03732               } else {
03733                      if (yych <= '`') {
03734                             if (yych <= 'F') {
03735                                    if (yych <= '@') goto yy257;
03736                                    if (yych <= 'E') goto yy258;
03737                             } else {
03738                                    if (yych <= 'Z') goto yy258;
03739                                    if (yych == '_') goto yy258;
03740                                    goto yy257;
03741                             }
03742                      } else {
03743                             if (yych <= '{') {
03744                                    if (yych == 'f') goto yy273;
03745                                    if (yych <= 'z') goto yy258;
03746                                    goto yy257;
03747                             } else {
03748                                    if (yych == '}') goto yy257;
03749                                    if (yych <= '~') goto yy250;
03750                                    goto yy257;
03751                             }
03752                      }
03753               }
03754 yy273:
03755               YYDEBUG(273, *YYCURSOR);
03756               yyaccept = 6;
03757               yych = *(YYMARKER = ++YYCURSOR);
03758               if (yybm[0+yych] & 4) {
03759                      goto yy258;
03760               }
03761               if (yych <= '%') {
03762                      if (yych <= '\f') {
03763                             if (yych <= 0x08) {
03764                                    if (yych >= 0x01) goto yy257;
03765                             } else {
03766                                    if (yych <= '\t') goto yy275;
03767                                    if (yych >= '\v') goto yy257;
03768                             }
03769                      } else {
03770                             if (yych <= 0x1F) {
03771                                    if (yych >= 0x0E) goto yy257;
03772                             } else {
03773                                    if (yych <= ' ') goto yy275;
03774                                    if (yych >= '#') goto yy257;
03775                             }
03776                      }
03777               } else {
03778                      if (yych <= '=') {
03779                             if (yych <= ':') {
03780                                    if (yych >= '*') goto yy257;
03781                             } else {
03782                                    if (yych == '<') goto yy257;
03783                             }
03784                      } else {
03785                             if (yych <= '|') {
03786                                    if (yych <= '{') goto yy257;
03787                             } else {
03788                                    if (yych != '~') goto yy257;
03789                             }
03790                      }
03791               }
03792 yy274:
03793               YYDEBUG(274, *YYCURSOR);
03794               yyleng = YYCURSOR - SCNG(yy_text);
03795 #line 422 "Zend/zend_ini_scanner.l"
03796               { /* FALSE value (when used outside option value/offset this causes parse error!)*/
03797        RETURN_TOKEN(BOOL_FALSE, "", 0);
03798 }
03799 #line 3800 "Zend/zend_ini_scanner.c"
03800 yy275:
03801               YYDEBUG(275, *YYCURSOR);
03802               ++YYCURSOR;
03803               YYFILL(1);
03804               yych = *YYCURSOR;
03805               YYDEBUG(276, *YYCURSOR);
03806               if (yych == '\t') goto yy275;
03807               if (yych == ' ') goto yy275;
03808               goto yy274;
03809 yy277:
03810               YYDEBUG(277, *YYCURSOR);
03811               yyaccept = 6;
03812               yych = *(YYMARKER = ++YYCURSOR);
03813               if (yych <= '<') {
03814                      if (yych <= ' ') {
03815                             if (yych <= '\n') {
03816                                    if (yych <= 0x00) goto yy274;
03817                                    if (yych <= 0x08) goto yy257;
03818                                    if (yych <= '\t') goto yy275;
03819                                    goto yy274;
03820                             } else {
03821                                    if (yych == '\r') goto yy274;
03822                                    if (yych <= 0x1F) goto yy257;
03823                                    goto yy275;
03824                             }
03825                      } else {
03826                             if (yych <= '/') {
03827                                    if (yych <= '"') goto yy274;
03828                                    if (yych <= '%') goto yy257;
03829                                    if (yych <= ')') goto yy274;
03830                                    goto yy257;
03831                             } else {
03832                                    if (yych <= '9') goto yy258;
03833                                    if (yych == ';') goto yy274;
03834                                    goto yy257;
03835                             }
03836                      }
03837               } else {
03838                      if (yych <= '`') {
03839                             if (yych <= 'N') {
03840                                    if (yych <= '=') goto yy274;
03841                                    if (yych <= '@') goto yy257;
03842                                    if (yych <= 'M') goto yy258;
03843                                    goto yy280;
03844                             } else {
03845                                    if (yych <= 'Z') goto yy258;
03846                                    if (yych == '_') goto yy258;
03847                                    goto yy257;
03848                             }
03849                      } else {
03850                             if (yych <= '{') {
03851                                    if (yych == 'n') goto yy280;
03852                                    if (yych <= 'z') goto yy258;
03853                                    goto yy257;
03854                             } else {
03855                                    if (yych == '}') goto yy257;
03856                                    if (yych <= '~') goto yy274;
03857                                    goto yy257;
03858                             }
03859                      }
03860               }
03861 yy278:
03862               YYDEBUG(278, *YYCURSOR);
03863               yyaccept = 4;
03864               yych = *(YYMARKER = ++YYCURSOR);
03865               if (yych <= '=') {
03866                      if (yych <= '"') {
03867                             if (yych <= '\n') {
03868                                    if (yych <= 0x00) goto yy250;
03869                                    if (yych <= 0x08) goto yy257;
03870                                    goto yy250;
03871                             } else {
03872                                    if (yych == '\r') goto yy250;
03873                                    if (yych <= 0x1F) goto yy257;
03874                                    goto yy250;
03875                             }
03876                      } else {
03877                             if (yych <= '9') {
03878                                    if (yych <= '%') goto yy257;
03879                                    if (yych <= ')') goto yy250;
03880                                    if (yych <= '/') goto yy257;
03881                                    goto yy258;
03882                             } else {
03883                                    if (yych == ';') goto yy250;
03884                                    if (yych <= '<') goto yy257;
03885                                    goto yy250;
03886                             }
03887                      }
03888               } else {
03889                      if (yych <= '`') {
03890                             if (yych <= 'L') {
03891                                    if (yych <= '@') goto yy257;
03892                                    if (yych <= 'K') goto yy258;
03893                             } else {
03894                                    if (yych <= 'Z') goto yy258;
03895                                    if (yych == '_') goto yy258;
03896                                    goto yy257;
03897                             }
03898                      } else {
03899                             if (yych <= '{') {
03900                                    if (yych == 'l') goto yy279;
03901                                    if (yych <= 'z') goto yy258;
03902                                    goto yy257;
03903                             } else {
03904                                    if (yych == '}') goto yy257;
03905                                    if (yych <= '~') goto yy250;
03906                                    goto yy257;
03907                             }
03908                      }
03909               }
03910 yy279:
03911               YYDEBUG(279, *YYCURSOR);
03912               yyaccept = 4;
03913               yych = *(YYMARKER = ++YYCURSOR);
03914               if (yych <= '=') {
03915                      if (yych <= '"') {
03916                             if (yych <= '\n') {
03917                                    if (yych <= 0x00) goto yy250;
03918                                    if (yych <= 0x08) goto yy257;
03919                                    goto yy250;
03920                             } else {
03921                                    if (yych == '\r') goto yy250;
03922                                    if (yych <= 0x1F) goto yy257;
03923                                    goto yy250;
03924                             }
03925                      } else {
03926                             if (yych <= '9') {
03927                                    if (yych <= '%') goto yy257;
03928                                    if (yych <= ')') goto yy250;
03929                                    if (yych <= '/') goto yy257;
03930                                    goto yy258;
03931                             } else {
03932                                    if (yych == ';') goto yy250;
03933                                    if (yych <= '<') goto yy257;
03934                                    goto yy250;
03935                             }
03936                      }
03937               } else {
03938                      if (yych <= '`') {
03939                             if (yych <= 'L') {
03940                                    if (yych <= '@') goto yy257;
03941                                    if (yych <= 'K') goto yy258;
03942                                    goto yy273;
03943                             } else {
03944                                    if (yych <= 'Z') goto yy258;
03945                                    if (yych == '_') goto yy258;
03946                                    goto yy257;
03947                             }
03948                      } else {
03949                             if (yych <= '{') {
03950                                    if (yych == 'l') goto yy273;
03951                                    if (yych <= 'z') goto yy258;
03952                                    goto yy257;
03953                             } else {
03954                                    if (yych == '}') goto yy257;
03955                                    if (yych <= '~') goto yy250;
03956                                    goto yy257;
03957                             }
03958                      }
03959               }
03960 yy280:
03961               YYDEBUG(280, *YYCURSOR);
03962               yyaccept = 4;
03963               yych = *(YYMARKER = ++YYCURSOR);
03964               if (yych <= '=') {
03965                      if (yych <= '"') {
03966                             if (yych <= '\n') {
03967                                    if (yych <= 0x00) goto yy250;
03968                                    if (yych <= 0x08) goto yy257;
03969                                    goto yy250;
03970                             } else {
03971                                    if (yych == '\r') goto yy250;
03972                                    if (yych <= 0x1F) goto yy257;
03973                                    goto yy250;
03974                             }
03975                      } else {
03976                             if (yych <= '9') {
03977                                    if (yych <= '%') goto yy257;
03978                                    if (yych <= ')') goto yy250;
03979                                    if (yych <= '/') goto yy257;
03980                                    goto yy258;
03981                             } else {
03982                                    if (yych == ';') goto yy250;
03983                                    if (yych <= '<') goto yy257;
03984                                    goto yy250;
03985                             }
03986                      }
03987               } else {
03988                      if (yych <= '`') {
03989                             if (yych <= 'E') {
03990                                    if (yych <= '@') goto yy257;
03991                                    if (yych <= 'D') goto yy258;
03992                                    goto yy273;
03993                             } else {
03994                                    if (yych <= 'Z') goto yy258;
03995                                    if (yych == '_') goto yy258;
03996                                    goto yy257;
03997                             }
03998                      } else {
03999                             if (yych <= '{') {
04000                                    if (yych == 'e') goto yy273;
04001                                    if (yych <= 'z') goto yy258;
04002                                    goto yy257;
04003                             } else {
04004                                    if (yych == '}') goto yy257;
04005                                    if (yych <= '~') goto yy250;
04006                                    goto yy257;
04007                             }
04008                      }
04009               }
04010 yy281:
04011               YYDEBUG(281, *YYCURSOR);
04012               yyaccept = 4;
04013               yych = *(YYMARKER = ++YYCURSOR);
04014               if (yych <= '=') {
04015                      if (yych <= '"') {
04016                             if (yych <= '\n') {
04017                                    if (yych <= 0x00) goto yy250;
04018                                    if (yych <= 0x08) goto yy257;
04019                                    goto yy250;
04020                             } else {
04021                                    if (yych == '\r') goto yy250;
04022                                    if (yych <= 0x1F) goto yy257;
04023                                    goto yy250;
04024                             }
04025                      } else {
04026                             if (yych <= '9') {
04027                                    if (yych <= '%') goto yy257;
04028                                    if (yych <= ')') goto yy250;
04029                                    if (yych <= '/') goto yy257;
04030                                    goto yy258;
04031                             } else {
04032                                    if (yych == ';') goto yy250;
04033                                    if (yych <= '<') goto yy257;
04034                                    goto yy250;
04035                             }
04036                      }
04037               } else {
04038                      if (yych <= '`') {
04039                             if (yych <= 'L') {
04040                                    if (yych <= '@') goto yy257;
04041                                    if (yych <= 'K') goto yy258;
04042                             } else {
04043                                    if (yych <= 'Z') goto yy258;
04044                                    if (yych == '_') goto yy258;
04045                                    goto yy257;
04046                             }
04047                      } else {
04048                             if (yych <= '{') {
04049                                    if (yych == 'l') goto yy282;
04050                                    if (yych <= 'z') goto yy258;
04051                                    goto yy257;
04052                             } else {
04053                                    if (yych == '}') goto yy257;
04054                                    if (yych <= '~') goto yy250;
04055                                    goto yy257;
04056                             }
04057                      }
04058               }
04059 yy282:
04060               YYDEBUG(282, *YYCURSOR);
04061               yyaccept = 4;
04062               yych = *(YYMARKER = ++YYCURSOR);
04063               if (yych <= '=') {
04064                      if (yych <= '"') {
04065                             if (yych <= '\n') {
04066                                    if (yych <= 0x00) goto yy250;
04067                                    if (yych <= 0x08) goto yy257;
04068                                    goto yy250;
04069                             } else {
04070                                    if (yych == '\r') goto yy250;
04071                                    if (yych <= 0x1F) goto yy257;
04072                                    goto yy250;
04073                             }
04074                      } else {
04075                             if (yych <= '9') {
04076                                    if (yych <= '%') goto yy257;
04077                                    if (yych <= ')') goto yy250;
04078                                    if (yych <= '/') goto yy257;
04079                                    goto yy258;
04080                             } else {
04081                                    if (yych == ';') goto yy250;
04082                                    if (yych <= '<') goto yy257;
04083                                    goto yy250;
04084                             }
04085                      }
04086               } else {
04087                      if (yych <= '`') {
04088                             if (yych <= 'S') {
04089                                    if (yych <= '@') goto yy257;
04090                                    if (yych <= 'R') goto yy258;
04091                             } else {
04092                                    if (yych <= 'Z') goto yy258;
04093                                    if (yych == '_') goto yy258;
04094                                    goto yy257;
04095                             }
04096                      } else {
04097                             if (yych <= '{') {
04098                                    if (yych == 's') goto yy283;
04099                                    if (yych <= 'z') goto yy258;
04100                                    goto yy257;
04101                             } else {
04102                                    if (yych == '}') goto yy257;
04103                                    if (yych <= '~') goto yy250;
04104                                    goto yy257;
04105                             }
04106                      }
04107               }
04108 yy283:
04109               YYDEBUG(283, *YYCURSOR);
04110               yyaccept = 4;
04111               yych = *(YYMARKER = ++YYCURSOR);
04112               if (yych <= '=') {
04113                      if (yych <= '"') {
04114                             if (yych <= '\n') {
04115                                    if (yych <= 0x00) goto yy250;
04116                                    if (yych <= 0x08) goto yy257;
04117                                    goto yy250;
04118                             } else {
04119                                    if (yych == '\r') goto yy250;
04120                                    if (yych <= 0x1F) goto yy257;
04121                                    goto yy250;
04122                             }
04123                      } else {
04124                             if (yych <= '9') {
04125                                    if (yych <= '%') goto yy257;
04126                                    if (yych <= ')') goto yy250;
04127                                    if (yych <= '/') goto yy257;
04128                                    goto yy258;
04129                             } else {
04130                                    if (yych == ';') goto yy250;
04131                                    if (yych <= '<') goto yy257;
04132                                    goto yy250;
04133                             }
04134                      }
04135               } else {
04136                      if (yych <= '`') {
04137                             if (yych <= 'E') {
04138                                    if (yych <= '@') goto yy257;
04139                                    if (yych <= 'D') goto yy258;
04140                                    goto yy273;
04141                             } else {
04142                                    if (yych <= 'Z') goto yy258;
04143                                    if (yych == '_') goto yy258;
04144                                    goto yy257;
04145                             }
04146                      } else {
04147                             if (yych <= '{') {
04148                                    if (yych == 'e') goto yy273;
04149                                    if (yych <= 'z') goto yy258;
04150                                    goto yy257;
04151                             } else {
04152                                    if (yych == '}') goto yy257;
04153                                    if (yych <= '~') goto yy250;
04154                                    goto yy257;
04155                             }
04156                      }
04157               }
04158 yy284:
04159               YYDEBUG(284, *YYCURSOR);
04160               ++YYCURSOR;
04161               YYFILL(2);
04162               yych = *YYCURSOR;
04163 yy285:
04164               YYDEBUG(285, *YYCURSOR);
04165               if (yybm[0+yych] & 32) {
04166                      goto yy284;
04167               }
04168               if (yych >= '\r') goto yy288;
04169 yy286:
04170               YYDEBUG(286, *YYCURSOR);
04171               ++YYCURSOR;
04172 yy287:
04173               YYDEBUG(287, *YYCURSOR);
04174               yyleng = YYCURSOR - SCNG(yy_text);
04175 #line 554 "Zend/zend_ini_scanner.l"
04176               { /* Comment */
04177        BEGIN(INITIAL);
04178        SCNG(lineno)++;
04179        return END_OF_LINE;
04180 }
04181 #line 4182 "Zend/zend_ini_scanner.c"
04182 yy288:
04183               YYDEBUG(288, *YYCURSOR);
04184               yych = *++YYCURSOR;
04185               if (yych == '\n') goto yy286;
04186               goto yy287;
04187 yy289:
04188               YYDEBUG(289, *YYCURSOR);
04189               yyaccept = 3;
04190               YYMARKER = ++YYCURSOR;
04191               YYFILL(1);
04192               yych = *YYCURSOR;
04193               YYDEBUG(290, *YYCURSOR);
04194               if (yybm[0+yych] & 64) {
04195                      goto yy289;
04196               }
04197               if (yych <= '%') {
04198                      if (yych <= '\r') {
04199                             if (yych <= 0x08) {
04200                                    if (yych <= 0x00) goto yy245;
04201                                    goto yy256;
04202                             } else {
04203                                    if (yych <= '\n') goto yy245;
04204                                    if (yych <= '\f') goto yy256;
04205                                    goto yy245;
04206                             }
04207                      } else {
04208                             if (yych <= '"') {
04209                                    if (yych <= 0x1F) goto yy256;
04210                                    goto yy245;
04211                             } else {
04212                                    if (yych == '$') goto yy261;
04213                                    goto yy256;
04214                             }
04215                      }
04216               } else {
04217                      if (yych <= '=') {
04218                             if (yych <= ':') {
04219                                    if (yych <= ')') goto yy245;
04220                                    goto yy256;
04221                             } else {
04222                                    if (yych == '<') goto yy256;
04223                                    goto yy245;
04224                             }
04225                      } else {
04226                             if (yych <= '|') {
04227                                    if (yych <= '{') goto yy256;
04228                                    goto yy245;
04229                             } else {
04230                                    if (yych == '~') goto yy245;
04231                                    goto yy256;
04232                             }
04233                      }
04234               }
04235 yy291:
04236               YYDEBUG(291, *YYCURSOR);
04237               yyaccept = 3;
04238               YYMARKER = ++YYCURSOR;
04239               YYFILL(1);
04240               yych = *YYCURSOR;
04241               YYDEBUG(292, *YYCURSOR);
04242               if (yych <= '-') {
04243                      if (yych <= 0x1F) {
04244                             if (yych <= '\n') {
04245                                    if (yych <= 0x00) goto yy245;
04246                                    if (yych <= 0x08) goto yy256;
04247                                    goto yy245;
04248                             } else {
04249                                    if (yych == '\r') goto yy245;
04250                                    goto yy256;
04251                             }
04252                      } else {
04253                             if (yych <= '$') {
04254                                    if (yych <= '"') goto yy245;
04255                                    if (yych <= '#') goto yy256;
04256                                    goto yy261;
04257                             } else {
04258                                    if (yych <= '%') goto yy256;
04259                                    if (yych <= ')') goto yy245;
04260                                    goto yy256;
04261                             }
04262                      }
04263               } else {
04264                      if (yych <= '<') {
04265                             if (yych <= '9') {
04266                                    if (yych <= '.') goto yy289;
04267                                    if (yych <= '/') goto yy256;
04268                                    goto yy291;
04269                             } else {
04270                                    if (yych == ';') goto yy245;
04271                                    goto yy256;
04272                             }
04273                      } else {
04274                             if (yych <= '|') {
04275                                    if (yych <= '=') goto yy245;
04276                                    if (yych <= '{') goto yy256;
04277                                    goto yy245;
04278                             } else {
04279                                    if (yych == '~') goto yy245;
04280                                    goto yy256;
04281                             }
04282                      }
04283               }
04284 yy293:
04285               YYDEBUG(293, *YYCURSOR);
04286               yyaccept = 3;
04287               YYMARKER = ++YYCURSOR;
04288               YYFILL(1);
04289               yych = *YYCURSOR;
04290               YYDEBUG(294, *YYCURSOR);
04291               if (yych <= ')') {
04292                      if (yych <= '\r') {
04293                             if (yych <= 0x08) {
04294                                    if (yych <= 0x00) goto yy245;
04295                                    goto yy256;
04296                             } else {
04297                                    if (yych <= '\n') goto yy245;
04298                                    if (yych <= '\f') goto yy256;
04299                                    goto yy245;
04300                             }
04301                      } else {
04302                             if (yych <= '#') {
04303                                    if (yych <= 0x1F) goto yy256;
04304                                    if (yych <= '"') goto yy245;
04305                                    goto yy256;
04306                             } else {
04307                                    if (yych <= '$') goto yy261;
04308                                    if (yych <= '%') goto yy256;
04309                                    goto yy245;
04310                             }
04311                      }
04312               } else {
04313                      if (yych <= '<') {
04314                             if (yych <= '9') {
04315                                    if (yych <= '/') goto yy256;
04316                                    goto yy293;
04317                             } else {
04318                                    if (yych == ';') goto yy245;
04319                                    goto yy256;
04320                             }
04321                      } else {
04322                             if (yych <= '|') {
04323                                    if (yych <= '=') goto yy245;
04324                                    if (yych <= '{') goto yy256;
04325                                    goto yy245;
04326                             } else {
04327                                    if (yych == '~') goto yy245;
04328                                    goto yy256;
04329                             }
04330                      }
04331               }
04332 yy295:
04333               YYDEBUG(295, *YYCURSOR);
04334               yyaccept = 3;
04335               YYMARKER = ++YYCURSOR;
04336               YYFILL(1);
04337               yych = *YYCURSOR;
04338               YYDEBUG(296, *YYCURSOR);
04339               if (yych <= ')') {
04340                      if (yych <= '\r') {
04341                             if (yych <= 0x08) {
04342                                    if (yych <= 0x00) goto yy245;
04343                                    goto yy256;
04344                             } else {
04345                                    if (yych <= '\n') goto yy245;
04346                                    if (yych <= '\f') goto yy256;
04347                                    goto yy245;
04348                             }
04349                      } else {
04350                             if (yych <= '#') {
04351                                    if (yych <= 0x1F) goto yy256;
04352                                    if (yych <= '"') goto yy245;
04353                                    goto yy256;
04354                             } else {
04355                                    if (yych <= '$') goto yy261;
04356                                    if (yych <= '%') goto yy256;
04357                                    goto yy245;
04358                             }
04359                      }
04360               } else {
04361                      if (yych <= '<') {
04362                             if (yych <= '9') {
04363                                    if (yych <= '/') goto yy256;
04364                                    goto yy295;
04365                             } else {
04366                                    if (yych == ';') goto yy245;
04367                                    goto yy256;
04368                             }
04369                      } else {
04370                             if (yych <= '|') {
04371                                    if (yych <= '=') goto yy245;
04372                                    if (yych <= '{') goto yy256;
04373                                    goto yy245;
04374                             } else {
04375                                    if (yych == '~') goto yy245;
04376                                    goto yy256;
04377                             }
04378                      }
04379               }
04380 yy297:
04381               YYDEBUG(297, *YYCURSOR);
04382               ++YYCURSOR;
04383               YYFILL(1);
04384               yych = *YYCURSOR;
04385               YYDEBUG(298, *YYCURSOR);
04386               if (yybm[0+yych] & 128) {
04387                      goto yy297;
04388               }
04389               YYDEBUG(299, *YYCURSOR);
04390               ++YYCURSOR;
04391               YYDEBUG(300, *YYCURSOR);
04392               yyleng = YYCURSOR - SCNG(yy_text);
04393 #line 365 "Zend/zend_ini_scanner.l"
04394               { /* Raw string */
04395        /* Eat leading and trailing single quotes */
04396        if (yytext[0] == '\'' && yytext[yyleng - 1] == '\'') {
04397               SCNG(yy_text)++;
04398               yyleng = yyleng - 2;
04399        }
04400        RETURN_TOKEN(TC_RAW, yytext, yyleng);
04401 }
04402 #line 4403 "Zend/zend_ini_scanner.c"
04403 yy301:
04404               YYDEBUG(301, *YYCURSOR);
04405               ++YYCURSOR;
04406               YYDEBUG(302, *YYCURSOR);
04407               yyleng = YYCURSOR - SCNG(yy_text);
04408 #line 398 "Zend/zend_ini_scanner.l"
04409               { /* Variable start */
04410        yy_push_state(ST_VARNAME TSRMLS_CC);
04411        return TC_DOLLAR_CURLY;
04412 }
04413 #line 4414 "Zend/zend_ini_scanner.c"
04414 yy303:
04415               YYDEBUG(303, *YYCURSOR);
04416               ++YYCURSOR;
04417               YYFILL(1);
04418               yych = *YYCURSOR;
04419 yy304:
04420               YYDEBUG(304, *YYCURSOR);
04421               if (yych == '\t') goto yy303;
04422               if (yych == ' ') goto yy303;
04423               goto yy237;
04424 yy305:
04425               YYDEBUG(305, *YYCURSOR);
04426               yych = *++YYCURSOR;
04427               goto yy234;
04428 yy306:
04429               YYDEBUG(306, *YYCURSOR);
04430               yyaccept = 1;
04431               YYMARKER = ++YYCURSOR;
04432               YYFILL(2);
04433               yych = *YYCURSOR;
04434 yy307:
04435               YYDEBUG(307, *YYCURSOR);
04436               if (yych <= 0x1F) {
04437                      if (yych <= '\n') {
04438                             if (yych <= 0x08) goto yy232;
04439                             if (yych <= '\t') goto yy306;
04440                             goto yy305;
04441                      } else {
04442                             if (yych == '\r') goto yy309;
04443                             goto yy232;
04444                      }
04445               } else {
04446                      if (yych <= '"') {
04447                             if (yych <= ' ') goto yy306;
04448                             if (yych <= '!') goto yy232;
04449                      } else {
04450                             if (yych == ';') goto yy284;
04451                             goto yy232;
04452                      }
04453               }
04454               YYDEBUG(308, *YYCURSOR);
04455               yych = *++YYCURSOR;
04456               goto yy239;
04457 yy309:
04458               YYDEBUG(309, *YYCURSOR);
04459               ++YYCURSOR;
04460               if ((yych = *YYCURSOR) == '\n') goto yy305;
04461               goto yy234;
04462        }
04463 /* *********************************** */
04464 yyc_ST_VARNAME:
04465        {
04466               static const unsigned char yybm[] = {
04467                      128, 128, 128, 128, 128, 128, 128, 128, 
04468                      128,   0,   0, 128, 128,   0, 128, 128, 
04469                      128, 128, 128, 128, 128, 128, 128, 128, 
04470                      128, 128, 128, 128, 128, 128, 128, 128, 
04471                      128,   0,   0, 128,   0, 128,   0, 128, 
04472                        0,   0, 128, 128, 128, 128, 128, 128, 
04473                      128, 128, 128, 128, 128, 128, 128, 128, 
04474                      128, 128, 128,   0, 128,   0, 128, 128, 
04475                      128, 128, 128, 128, 128, 128, 128, 128, 
04476                      128, 128, 128, 128, 128, 128, 128, 128, 
04477                      128, 128, 128, 128, 128, 128, 128, 128, 
04478                      128, 128, 128,   0, 128, 128, 128, 128, 
04479                      128, 128, 128, 128, 128, 128, 128, 128, 
04480                      128, 128, 128, 128, 128, 128, 128, 128, 
04481                      128, 128, 128, 128, 128, 128, 128, 128, 
04482                      128, 128, 128,   0,   0,   0,   0, 128, 
04483                      128, 128, 128, 128, 128, 128, 128, 128, 
04484                      128, 128, 128, 128, 128, 128, 128, 128, 
04485                      128, 128, 128, 128, 128, 128, 128, 128, 
04486                      128, 128, 128, 128, 128, 128, 128, 128, 
04487                      128, 128, 128, 128, 128, 128, 128, 128, 
04488                      128, 128, 128, 128, 128, 128, 128, 128, 
04489                      128, 128, 128, 128, 128, 128, 128, 128, 
04490                      128, 128, 128, 128, 128, 128, 128, 128, 
04491                      128, 128, 128, 128, 128, 128, 128, 128, 
04492                      128, 128, 128, 128, 128, 128, 128, 128, 
04493                      128, 128, 128, 128, 128, 128, 128, 128, 
04494                      128, 128, 128, 128, 128, 128, 128, 128, 
04495                      128, 128, 128, 128, 128, 128, 128, 128, 
04496                      128, 128, 128, 128, 128, 128, 128, 128, 
04497                      128, 128, 128, 128, 128, 128, 128, 128, 
04498                      128, 128, 128, 128, 128, 128, 128, 128, 
04499               };
04500               YYDEBUG(310, *YYCURSOR);
04501               YYFILL(2);
04502               yych = *YYCURSOR;
04503               if (yych <= '\'') {
04504                      if (yych <= ' ') {
04505                             if (yych <= '\n') {
04506                                    if (yych >= '\t') goto yy314;
04507                             } else {
04508                                    if (yych == '\r') goto yy314;
04509                             }
04510                      } else {
04511                             if (yych <= '$') {
04512                                    if (yych != '#') goto yy314;
04513                             } else {
04514                                    if (yych == '&') goto yy314;
04515                             }
04516                      }
04517               } else {
04518                      if (yych <= 'Z') {
04519                             if (yych <= ';') {
04520                                    if (yych <= ')') goto yy314;
04521                                    if (yych >= ';') goto yy314;
04522                             } else {
04523                                    if (yych == '=') goto yy314;
04524                             }
04525                      } else {
04526                             if (yych <= '|') {
04527                                    if (yych <= '[') goto yy314;
04528                                    if (yych >= '{') goto yy314;
04529                             } else {
04530                                    if (yych <= '}') goto yy316;
04531                                    if (yych <= '~') goto yy314;
04532                             }
04533                      }
04534               }
04535               YYDEBUG(312, *YYCURSOR);
04536               ++YYCURSOR;
04537               yych = *YYCURSOR;
04538               goto yy319;
04539 yy313:
04540               YYDEBUG(313, *YYCURSOR);
04541               yyleng = YYCURSOR - SCNG(yy_text);
04542 #line 403 "Zend/zend_ini_scanner.l"
04543               { /* Variable name */
04544        /* Eat leading whitespace */
04545        EAT_LEADING_WHITESPACE();
04546 
04547        /* Eat trailing whitespace */
04548        EAT_TRAILING_WHITESPACE();
04549 
04550        RETURN_TOKEN(TC_VARNAME, yytext, yyleng);
04551 }
04552 #line 4553 "Zend/zend_ini_scanner.c"
04553 yy314:
04554               YYDEBUG(314, *YYCURSOR);
04555               ++YYCURSOR;
04556               YYDEBUG(315, *YYCURSOR);
04557               yyleng = YYCURSOR - SCNG(yy_text);
04558 #line 572 "Zend/zend_ini_scanner.l"
04559               {
04560        return 0;
04561 }
04562 #line 4563 "Zend/zend_ini_scanner.c"
04563 yy316:
04564               YYDEBUG(316, *YYCURSOR);
04565               ++YYCURSOR;
04566               YYDEBUG(317, *YYCURSOR);
04567               yyleng = YYCURSOR - SCNG(yy_text);
04568 #line 413 "Zend/zend_ini_scanner.l"
04569               { /* Variable end */
04570        yy_pop_state(TSRMLS_C);
04571        return '}';
04572 }
04573 #line 4574 "Zend/zend_ini_scanner.c"
04574 yy318:
04575               YYDEBUG(318, *YYCURSOR);
04576               ++YYCURSOR;
04577               YYFILL(1);
04578               yych = *YYCURSOR;
04579 yy319:
04580               YYDEBUG(319, *YYCURSOR);
04581               if (yybm[0+yych] & 128) {
04582                      goto yy318;
04583               }
04584               goto yy313;
04585        }
04586 }
04587 #line 576 "Zend/zend_ini_scanner.l"
04588 
04589 }