File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / php / Zend / zend_language_parser.c
Revision 1.1.1.4 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Mon Oct 14 08:02:48 2013 UTC (10 years, 8 months ago) by misho
Branches: php, MAIN
CVS tags: v5_4_29p0, v5_4_20p0, v5_4_20, HEAD
v 5.4.20

    1: /* A Bison parser, made by GNU Bison 2.7.  */
    2: 
    3: /* Bison implementation for Yacc-like parsers in C
    4:    
    5:       Copyright (C) 1984, 1989-1990, 2000-2012 Free Software Foundation, Inc.
    6:    
    7:    This program is free software: you can redistribute it and/or modify
    8:    it under the terms of the GNU General Public License as published by
    9:    the Free Software Foundation, either version 3 of the License, or
   10:    (at your option) any later version.
   11:    
   12:    This program is distributed in the hope that it will be useful,
   13:    but WITHOUT ANY WARRANTY; without even the implied warranty of
   14:    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   15:    GNU General Public License for more details.
   16:    
   17:    You should have received a copy of the GNU General Public License
   18:    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
   19: 
   20: /* As a special exception, you may create a larger work that contains
   21:    part or all of the Bison parser skeleton and distribute that work
   22:    under terms of your choice, so long as that work isn't itself a
   23:    parser generator using the skeleton or a modified version thereof
   24:    as a parser skeleton.  Alternatively, if you modify or redistribute
   25:    the parser skeleton itself, you may (at your option) remove this
   26:    special exception, which will cause the skeleton and the resulting
   27:    Bison output files to be licensed under the GNU General Public
   28:    License without this special exception.
   29:    
   30:    This special exception was added by the Free Software Foundation in
   31:    version 2.2 of Bison.  */
   32: 
   33: /* C LALR(1) parser skeleton written by Richard Stallman, by
   34:    simplifying the original so-called "semantic" parser.  */
   35: 
   36: /* All symbols defined below should begin with yy or YY, to avoid
   37:    infringing on user name space.  This should be done even for local
   38:    variables, as they might otherwise be expanded by user macros.
   39:    There are some unavoidable exceptions within include files to
   40:    define necessary library symbols; they are noted "INFRINGES ON
   41:    USER NAME SPACE" below.  */
   42: 
   43: /* Identify Bison output.  */
   44: #define YYBISON 1
   45: 
   46: /* Bison version.  */
   47: #define YYBISON_VERSION "2.7"
   48: 
   49: /* Skeleton name.  */
   50: #define YYSKELETON_NAME "yacc.c"
   51: 
   52: /* Pure parsers.  */
   53: #define YYPURE 1
   54: 
   55: /* Push parsers.  */
   56: #define YYPUSH 0
   57: 
   58: /* Pull parsers.  */
   59: #define YYPULL 1
   60: 
   61: 
   62: /* Substitute the variable and function names.  */
   63: #define yyparse         zendparse
   64: #define yylex           zendlex
   65: #define yyerror         zenderror
   66: #define yylval          zendlval
   67: #define yychar          zendchar
   68: #define yydebug         zenddebug
   69: #define yynerrs         zendnerrs
   70: 
   71: /* Copy the first part of user declarations.  */
   72: 
   73: 
   74: /*
   75:    +----------------------------------------------------------------------+
   76:    | Zend Engine                                                          |
   77:    +----------------------------------------------------------------------+
   78:    | Copyright (c) 1998-2013 Zend Technologies Ltd. (http://www.zend.com) |
   79:    +----------------------------------------------------------------------+
   80:    | This source file is subject to version 2.00 of the Zend license,     |
   81:    | that is bundled with this package in the file LICENSE, and is        |
   82:    | available through the world-wide-web at the following url:           |
   83:    | http://www.zend.com/license/2_00.txt.                                |
   84:    | If you did not receive a copy of the Zend license and are unable to  |
   85:    | obtain it through the world-wide-web, please send a note to          |
   86:    | license@zend.com so we can mail you a copy immediately.              |
   87:    +----------------------------------------------------------------------+
   88:    | Authors: Andi Gutmans <andi@zend.com>                                |
   89:    |          Zeev Suraski <zeev@zend.com>                                |
   90:    +----------------------------------------------------------------------+
   91: */
   92: 
   93: /* $Id: zend_language_parser.c,v 1.1.1.4 2013/10/14 08:02:48 misho Exp $ */
   94: 
   95: /*
   96:  * LALR shift/reduce conflicts and how they are resolved:
   97:  *
   98:  * - 2 shift/reduce conflicts due to the dangling elseif/else ambiguity. Solved by shift.
   99:  *
  100:  */
  101: 
  102: 
  103: #include "zend_compile.h"
  104: #include "zend.h"
  105: #include "zend_list.h"
  106: #include "zend_globals.h"
  107: #include "zend_API.h"
  108: #include "zend_constants.h"
  109: 
  110: #define YYSIZE_T size_t
  111: #define yytnamerr zend_yytnamerr
  112: static YYSIZE_T zend_yytnamerr(char*, const char*);
  113: 
  114: #define YYERROR_VERBOSE
  115: #define YYSTYPE znode
  116: 
  117: 
  118: 
  119: 
  120: # ifndef YY_NULL
  121: #  if defined __cplusplus && 201103L <= __cplusplus
  122: #   define YY_NULL nullptr
  123: #  else
  124: #   define YY_NULL 0
  125: #  endif
  126: # endif
  127: 
  128: /* Enabling verbose error messages.  */
  129: #ifdef YYERROR_VERBOSE
  130: # undef YYERROR_VERBOSE
  131: # define YYERROR_VERBOSE 1
  132: #else
  133: # define YYERROR_VERBOSE 0
  134: #endif
  135: 
  136: /* In a future release of Bison, this section will be replaced
  137:    by #include "zend_language_parser.h".  */
  138: #ifndef YY_ZEND_ZEND_ZEND_LANGUAGE_PARSER_H_INCLUDED
  139: # define YY_ZEND_ZEND_ZEND_LANGUAGE_PARSER_H_INCLUDED
  140: /* Enabling traces.  */
  141: #ifndef YYDEBUG
  142: # define YYDEBUG 0
  143: #endif
  144: #if YYDEBUG
  145: extern int zenddebug;
  146: #endif
  147: /* "%code requires" blocks.  */
  148: 
  149: 
  150: #ifdef ZTS
  151: # define YYPARSE_PARAM tsrm_ls
  152: # define YYLEX_PARAM tsrm_ls
  153: #endif
  154: 
  155: 
  156: 
  157: 
  158: /* Tokens.  */
  159: #ifndef YYTOKENTYPE
  160: # define YYTOKENTYPE
  161:    /* Put the tokens into the symbol table, so that GDB and other debuggers
  162:       know about them.  */
  163:    enum yytokentype {
  164:      END = 0,
  165:      T_REQUIRE_ONCE = 258,
  166:      T_REQUIRE = 259,
  167:      T_EVAL = 260,
  168:      T_INCLUDE_ONCE = 261,
  169:      T_INCLUDE = 262,
  170:      T_LOGICAL_OR = 263,
  171:      T_LOGICAL_XOR = 264,
  172:      T_LOGICAL_AND = 265,
  173:      T_PRINT = 266,
  174:      T_SR_EQUAL = 267,
  175:      T_SL_EQUAL = 268,
  176:      T_XOR_EQUAL = 269,
  177:      T_OR_EQUAL = 270,
  178:      T_AND_EQUAL = 271,
  179:      T_MOD_EQUAL = 272,
  180:      T_CONCAT_EQUAL = 273,
  181:      T_DIV_EQUAL = 274,
  182:      T_MUL_EQUAL = 275,
  183:      T_MINUS_EQUAL = 276,
  184:      T_PLUS_EQUAL = 277,
  185:      T_BOOLEAN_OR = 278,
  186:      T_BOOLEAN_AND = 279,
  187:      T_IS_NOT_IDENTICAL = 280,
  188:      T_IS_IDENTICAL = 281,
  189:      T_IS_NOT_EQUAL = 282,
  190:      T_IS_EQUAL = 283,
  191:      T_IS_GREATER_OR_EQUAL = 284,
  192:      T_IS_SMALLER_OR_EQUAL = 285,
  193:      T_SR = 286,
  194:      T_SL = 287,
  195:      T_INSTANCEOF = 288,
  196:      T_UNSET_CAST = 289,
  197:      T_BOOL_CAST = 290,
  198:      T_OBJECT_CAST = 291,
  199:      T_ARRAY_CAST = 292,
  200:      T_STRING_CAST = 293,
  201:      T_DOUBLE_CAST = 294,
  202:      T_INT_CAST = 295,
  203:      T_DEC = 296,
  204:      T_INC = 297,
  205:      T_CLONE = 298,
  206:      T_NEW = 299,
  207:      T_EXIT = 300,
  208:      T_IF = 301,
  209:      T_ELSEIF = 302,
  210:      T_ELSE = 303,
  211:      T_ENDIF = 304,
  212:      T_LNUMBER = 305,
  213:      T_DNUMBER = 306,
  214:      T_STRING = 307,
  215:      T_STRING_VARNAME = 308,
  216:      T_VARIABLE = 309,
  217:      T_NUM_STRING = 310,
  218:      T_INLINE_HTML = 311,
  219:      T_CHARACTER = 312,
  220:      T_BAD_CHARACTER = 313,
  221:      T_ENCAPSED_AND_WHITESPACE = 314,
  222:      T_CONSTANT_ENCAPSED_STRING = 315,
  223:      T_ECHO = 316,
  224:      T_DO = 317,
  225:      T_WHILE = 318,
  226:      T_ENDWHILE = 319,
  227:      T_FOR = 320,
  228:      T_ENDFOR = 321,
  229:      T_FOREACH = 322,
  230:      T_ENDFOREACH = 323,
  231:      T_DECLARE = 324,
  232:      T_ENDDECLARE = 325,
  233:      T_AS = 326,
  234:      T_SWITCH = 327,
  235:      T_ENDSWITCH = 328,
  236:      T_CASE = 329,
  237:      T_DEFAULT = 330,
  238:      T_BREAK = 331,
  239:      T_CONTINUE = 332,
  240:      T_GOTO = 333,
  241:      T_FUNCTION = 334,
  242:      T_CONST = 335,
  243:      T_RETURN = 336,
  244:      T_TRY = 337,
  245:      T_CATCH = 338,
  246:      T_THROW = 339,
  247:      T_USE = 340,
  248:      T_INSTEADOF = 341,
  249:      T_GLOBAL = 342,
  250:      T_PUBLIC = 343,
  251:      T_PROTECTED = 344,
  252:      T_PRIVATE = 345,
  253:      T_FINAL = 346,
  254:      T_ABSTRACT = 347,
  255:      T_STATIC = 348,
  256:      T_VAR = 349,
  257:      T_UNSET = 350,
  258:      T_ISSET = 351,
  259:      T_EMPTY = 352,
  260:      T_HALT_COMPILER = 353,
  261:      T_CLASS = 354,
  262:      T_TRAIT = 355,
  263:      T_INTERFACE = 356,
  264:      T_EXTENDS = 357,
  265:      T_IMPLEMENTS = 358,
  266:      T_OBJECT_OPERATOR = 359,
  267:      T_DOUBLE_ARROW = 360,
  268:      T_LIST = 361,
  269:      T_ARRAY = 362,
  270:      T_CALLABLE = 363,
  271:      T_CLASS_C = 364,
  272:      T_TRAIT_C = 365,
  273:      T_METHOD_C = 366,
  274:      T_FUNC_C = 367,
  275:      T_LINE = 368,
  276:      T_FILE = 369,
  277:      T_COMMENT = 370,
  278:      T_DOC_COMMENT = 371,
  279:      T_OPEN_TAG = 372,
  280:      T_OPEN_TAG_WITH_ECHO = 373,
  281:      T_CLOSE_TAG = 374,
  282:      T_WHITESPACE = 375,
  283:      T_START_HEREDOC = 376,
  284:      T_END_HEREDOC = 377,
  285:      T_DOLLAR_OPEN_CURLY_BRACES = 378,
  286:      T_CURLY_OPEN = 379,
  287:      T_PAAMAYIM_NEKUDOTAYIM = 380,
  288:      T_NAMESPACE = 381,
  289:      T_NS_C = 382,
  290:      T_DIR = 383,
  291:      T_NS_SEPARATOR = 384
  292:    };
  293: #endif
  294: /* Tokens.  */
  295: #define END 0
  296: #define T_REQUIRE_ONCE 258
  297: #define T_REQUIRE 259
  298: #define T_EVAL 260
  299: #define T_INCLUDE_ONCE 261
  300: #define T_INCLUDE 262
  301: #define T_LOGICAL_OR 263
  302: #define T_LOGICAL_XOR 264
  303: #define T_LOGICAL_AND 265
  304: #define T_PRINT 266
  305: #define T_SR_EQUAL 267
  306: #define T_SL_EQUAL 268
  307: #define T_XOR_EQUAL 269
  308: #define T_OR_EQUAL 270
  309: #define T_AND_EQUAL 271
  310: #define T_MOD_EQUAL 272
  311: #define T_CONCAT_EQUAL 273
  312: #define T_DIV_EQUAL 274
  313: #define T_MUL_EQUAL 275
  314: #define T_MINUS_EQUAL 276
  315: #define T_PLUS_EQUAL 277
  316: #define T_BOOLEAN_OR 278
  317: #define T_BOOLEAN_AND 279
  318: #define T_IS_NOT_IDENTICAL 280
  319: #define T_IS_IDENTICAL 281
  320: #define T_IS_NOT_EQUAL 282
  321: #define T_IS_EQUAL 283
  322: #define T_IS_GREATER_OR_EQUAL 284
  323: #define T_IS_SMALLER_OR_EQUAL 285
  324: #define T_SR 286
  325: #define T_SL 287
  326: #define T_INSTANCEOF 288
  327: #define T_UNSET_CAST 289
  328: #define T_BOOL_CAST 290
  329: #define T_OBJECT_CAST 291
  330: #define T_ARRAY_CAST 292
  331: #define T_STRING_CAST 293
  332: #define T_DOUBLE_CAST 294
  333: #define T_INT_CAST 295
  334: #define T_DEC 296
  335: #define T_INC 297
  336: #define T_CLONE 298
  337: #define T_NEW 299
  338: #define T_EXIT 300
  339: #define T_IF 301
  340: #define T_ELSEIF 302
  341: #define T_ELSE 303
  342: #define T_ENDIF 304
  343: #define T_LNUMBER 305
  344: #define T_DNUMBER 306
  345: #define T_STRING 307
  346: #define T_STRING_VARNAME 308
  347: #define T_VARIABLE 309
  348: #define T_NUM_STRING 310
  349: #define T_INLINE_HTML 311
  350: #define T_CHARACTER 312
  351: #define T_BAD_CHARACTER 313
  352: #define T_ENCAPSED_AND_WHITESPACE 314
  353: #define T_CONSTANT_ENCAPSED_STRING 315
  354: #define T_ECHO 316
  355: #define T_DO 317
  356: #define T_WHILE 318
  357: #define T_ENDWHILE 319
  358: #define T_FOR 320
  359: #define T_ENDFOR 321
  360: #define T_FOREACH 322
  361: #define T_ENDFOREACH 323
  362: #define T_DECLARE 324
  363: #define T_ENDDECLARE 325
  364: #define T_AS 326
  365: #define T_SWITCH 327
  366: #define T_ENDSWITCH 328
  367: #define T_CASE 329
  368: #define T_DEFAULT 330
  369: #define T_BREAK 331
  370: #define T_CONTINUE 332
  371: #define T_GOTO 333
  372: #define T_FUNCTION 334
  373: #define T_CONST 335
  374: #define T_RETURN 336
  375: #define T_TRY 337
  376: #define T_CATCH 338
  377: #define T_THROW 339
  378: #define T_USE 340
  379: #define T_INSTEADOF 341
  380: #define T_GLOBAL 342
  381: #define T_PUBLIC 343
  382: #define T_PROTECTED 344
  383: #define T_PRIVATE 345
  384: #define T_FINAL 346
  385: #define T_ABSTRACT 347
  386: #define T_STATIC 348
  387: #define T_VAR 349
  388: #define T_UNSET 350
  389: #define T_ISSET 351
  390: #define T_EMPTY 352
  391: #define T_HALT_COMPILER 353
  392: #define T_CLASS 354
  393: #define T_TRAIT 355
  394: #define T_INTERFACE 356
  395: #define T_EXTENDS 357
  396: #define T_IMPLEMENTS 358
  397: #define T_OBJECT_OPERATOR 359
  398: #define T_DOUBLE_ARROW 360
  399: #define T_LIST 361
  400: #define T_ARRAY 362
  401: #define T_CALLABLE 363
  402: #define T_CLASS_C 364
  403: #define T_TRAIT_C 365
  404: #define T_METHOD_C 366
  405: #define T_FUNC_C 367
  406: #define T_LINE 368
  407: #define T_FILE 369
  408: #define T_COMMENT 370
  409: #define T_DOC_COMMENT 371
  410: #define T_OPEN_TAG 372
  411: #define T_OPEN_TAG_WITH_ECHO 373
  412: #define T_CLOSE_TAG 374
  413: #define T_WHITESPACE 375
  414: #define T_START_HEREDOC 376
  415: #define T_END_HEREDOC 377
  416: #define T_DOLLAR_OPEN_CURLY_BRACES 378
  417: #define T_CURLY_OPEN 379
  418: #define T_PAAMAYIM_NEKUDOTAYIM 380
  419: #define T_NAMESPACE 381
  420: #define T_NS_C 382
  421: #define T_DIR 383
  422: #define T_NS_SEPARATOR 384
  423: 
  424: 
  425: 
  426: #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
  427: typedef int YYSTYPE;
  428: # define YYSTYPE_IS_TRIVIAL 1
  429: # define yystype YYSTYPE /* obsolescent; will be withdrawn */
  430: # define YYSTYPE_IS_DECLARED 1
  431: #endif
  432: 
  433: 
  434: #ifdef YYPARSE_PARAM
  435: #if defined __STDC__ || defined __cplusplus
  436: int zendparse (void *YYPARSE_PARAM);
  437: #else
  438: int zendparse ();
  439: #endif
  440: #else /* ! YYPARSE_PARAM */
  441: #if defined __STDC__ || defined __cplusplus
  442: int zendparse (void);
  443: #else
  444: int zendparse ();
  445: #endif
  446: #endif /* ! YYPARSE_PARAM */
  447: 
  448: #endif /* !YY_ZEND_ZEND_ZEND_LANGUAGE_PARSER_H_INCLUDED  */
  449: 
  450: /* Copy the second part of user declarations.  */
  451: 
  452: 
  453: 
  454: #ifdef short
  455: # undef short
  456: #endif
  457: 
  458: #ifdef YYTYPE_UINT8
  459: typedef YYTYPE_UINT8 yytype_uint8;
  460: #else
  461: typedef unsigned char yytype_uint8;
  462: #endif
  463: 
  464: #ifdef YYTYPE_INT8
  465: typedef YYTYPE_INT8 yytype_int8;
  466: #elif (defined __STDC__ || defined __C99__FUNC__ \
  467:      || defined __cplusplus || defined _MSC_VER)
  468: typedef signed char yytype_int8;
  469: #else
  470: typedef short int yytype_int8;
  471: #endif
  472: 
  473: #ifdef YYTYPE_UINT16
  474: typedef YYTYPE_UINT16 yytype_uint16;
  475: #else
  476: typedef unsigned short int yytype_uint16;
  477: #endif
  478: 
  479: #ifdef YYTYPE_INT16
  480: typedef YYTYPE_INT16 yytype_int16;
  481: #else
  482: typedef short int yytype_int16;
  483: #endif
  484: 
  485: #ifndef YYSIZE_T
  486: # ifdef __SIZE_TYPE__
  487: #  define YYSIZE_T __SIZE_TYPE__
  488: # elif defined size_t
  489: #  define YYSIZE_T size_t
  490: # elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \
  491:      || defined __cplusplus || defined _MSC_VER)
  492: #  include <stddef.h> /* INFRINGES ON USER NAME SPACE */
  493: #  define YYSIZE_T size_t
  494: # else
  495: #  define YYSIZE_T unsigned int
  496: # endif
  497: #endif
  498: 
  499: #define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
  500: 
  501: #ifndef YY_
  502: # if defined YYENABLE_NLS && YYENABLE_NLS
  503: #  if ENABLE_NLS
  504: #   include <libintl.h> /* INFRINGES ON USER NAME SPACE */
  505: #   define YY_(Msgid) dgettext ("bison-runtime", Msgid)
  506: #  endif
  507: # endif
  508: # ifndef YY_
  509: #  define YY_(Msgid) Msgid
  510: # endif
  511: #endif
  512: 
  513: /* Suppress unused-variable warnings by "using" E.  */
  514: #if ! defined lint || defined __GNUC__
  515: # define YYUSE(E) ((void) (E))
  516: #else
  517: # define YYUSE(E) /* empty */
  518: #endif
  519: 
  520: /* Identity function, used to suppress warnings about constant conditions.  */
  521: #ifndef lint
  522: # define YYID(N) (N)
  523: #else
  524: #if (defined __STDC__ || defined __C99__FUNC__ \
  525:      || defined __cplusplus || defined _MSC_VER)
  526: static int
  527: YYID (int yyi)
  528: #else
  529: static int
  530: YYID (yyi)
  531:     int yyi;
  532: #endif
  533: {
  534:   return yyi;
  535: }
  536: #endif
  537: 
  538: #if ! defined yyoverflow || YYERROR_VERBOSE
  539: 
  540: /* The parser invokes alloca or malloc; define the necessary symbols.  */
  541: 
  542: # ifdef YYSTACK_USE_ALLOCA
  543: #  if YYSTACK_USE_ALLOCA
  544: #   ifdef __GNUC__
  545: #    define YYSTACK_ALLOC __builtin_alloca
  546: #   elif defined __BUILTIN_VA_ARG_INCR
  547: #    include <alloca.h> /* INFRINGES ON USER NAME SPACE */
  548: #   elif defined _AIX
  549: #    define YYSTACK_ALLOC __alloca
  550: #   elif defined _MSC_VER
  551: #    include <malloc.h> /* INFRINGES ON USER NAME SPACE */
  552: #    define alloca _alloca
  553: #   else
  554: #    define YYSTACK_ALLOC alloca
  555: #    if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
  556:      || defined __cplusplus || defined _MSC_VER)
  557: #     include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
  558:       /* Use EXIT_SUCCESS as a witness for stdlib.h.  */
  559: #     ifndef EXIT_SUCCESS
  560: #      define EXIT_SUCCESS 0
  561: #     endif
  562: #    endif
  563: #   endif
  564: #  endif
  565: # endif
  566: 
  567: # ifdef YYSTACK_ALLOC
  568:    /* Pacify GCC's `empty if-body' warning.  */
  569: #  define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0))
  570: #  ifndef YYSTACK_ALLOC_MAXIMUM
  571:     /* The OS might guarantee only one guard page at the bottom of the stack,
  572:        and a page size can be as small as 4096 bytes.  So we cannot safely
  573:        invoke alloca (N) if N exceeds 4096.  Use a slightly smaller number
  574:        to allow for a few compiler-allocated temporary stack slots.  */
  575: #   define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
  576: #  endif
  577: # else
  578: #  define YYSTACK_ALLOC YYMALLOC
  579: #  define YYSTACK_FREE YYFREE
  580: #  ifndef YYSTACK_ALLOC_MAXIMUM
  581: #   define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
  582: #  endif
  583: #  if (defined __cplusplus && ! defined EXIT_SUCCESS \
  584:        && ! ((defined YYMALLOC || defined malloc) \
  585: 	     && (defined YYFREE || defined free)))
  586: #   include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
  587: #   ifndef EXIT_SUCCESS
  588: #    define EXIT_SUCCESS 0
  589: #   endif
  590: #  endif
  591: #  ifndef YYMALLOC
  592: #   define YYMALLOC malloc
  593: #   if ! defined malloc && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
  594:      || defined __cplusplus || defined _MSC_VER)
  595: void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
  596: #   endif
  597: #  endif
  598: #  ifndef YYFREE
  599: #   define YYFREE free
  600: #   if ! defined free && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
  601:      || defined __cplusplus || defined _MSC_VER)
  602: void free (void *); /* INFRINGES ON USER NAME SPACE */
  603: #   endif
  604: #  endif
  605: # endif
  606: #endif /* ! defined yyoverflow || YYERROR_VERBOSE */
  607: 
  608: 
  609: #if (! defined yyoverflow \
  610:      && (! defined __cplusplus \
  611: 	 || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
  612: 
  613: /* A type that is properly aligned for any stack member.  */
  614: union yyalloc
  615: {
  616:   yytype_int16 yyss_alloc;
  617:   YYSTYPE yyvs_alloc;
  618: };
  619: 
  620: /* The size of the maximum gap between one aligned stack and the next.  */
  621: # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
  622: 
  623: /* The size of an array large to enough to hold all stacks, each with
  624:    N elements.  */
  625: # define YYSTACK_BYTES(N) \
  626:      ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
  627:       + YYSTACK_GAP_MAXIMUM)
  628: 
  629: # define YYCOPY_NEEDED 1
  630: 
  631: /* Relocate STACK from its old location to the new one.  The
  632:    local variables YYSIZE and YYSTACKSIZE give the old and new number of
  633:    elements in the stack, and YYPTR gives the new location of the
  634:    stack.  Advance YYPTR to a properly aligned location for the next
  635:    stack.  */
  636: # define YYSTACK_RELOCATE(Stack_alloc, Stack)				\
  637:     do									\
  638:       {									\
  639: 	YYSIZE_T yynewbytes;						\
  640: 	YYCOPY (&yyptr->Stack_alloc, Stack, yysize);			\
  641: 	Stack = &yyptr->Stack_alloc;					\
  642: 	yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
  643: 	yyptr += yynewbytes / sizeof (*yyptr);				\
  644:       }									\
  645:     while (YYID (0))
  646: 
  647: #endif
  648: 
  649: #if defined YYCOPY_NEEDED && YYCOPY_NEEDED
  650: /* Copy COUNT objects from SRC to DST.  The source and destination do
  651:    not overlap.  */
  652: # ifndef YYCOPY
  653: #  if defined __GNUC__ && 1 < __GNUC__
  654: #   define YYCOPY(Dst, Src, Count) \
  655:       __builtin_memcpy (Dst, Src, (Count) * sizeof (*(Src)))
  656: #  else
  657: #   define YYCOPY(Dst, Src, Count)              \
  658:       do                                        \
  659:         {                                       \
  660:           YYSIZE_T yyi;                         \
  661:           for (yyi = 0; yyi < (Count); yyi++)   \
  662:             (Dst)[yyi] = (Src)[yyi];            \
  663:         }                                       \
  664:       while (YYID (0))
  665: #  endif
  666: # endif
  667: #endif /* !YYCOPY_NEEDED */
  668: 
  669: /* YYFINAL -- State number of the termination state.  */
  670: #define YYFINAL  3
  671: /* YYLAST -- Last index in YYTABLE.  */
  672: #define YYLAST   5312
  673: 
  674: /* YYNTOKENS -- Number of terminals.  */
  675: #define YYNTOKENS  158
  676: /* YYNNTS -- Number of nonterminals.  */
  677: #define YYNNTS  206
  678: /* YYNRULES -- Number of rules.  */
  679: #define YYNRULES  516
  680: /* YYNRULES -- Number of states.  */
  681: #define YYNSTATES  983
  682: 
  683: /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */
  684: #define YYUNDEFTOK  2
  685: #define YYMAXUTOK   384
  686: 
  687: #define YYTRANSLATE(YYX)						\
  688:   ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
  689: 
  690: /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX.  */
  691: static const yytype_uint8 yytranslate[] =
  692: {
  693:        0,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  694:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  695:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  696:        2,     2,     2,    48,   157,     2,   154,    47,    31,     2,
  697:      149,   150,    45,    42,     8,    43,    44,    46,     2,     2,
  698:        2,     2,     2,     2,     2,     2,     2,     2,    26,   151,
  699:       36,    13,    37,    25,    51,     2,     2,     2,     2,     2,
  700:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  701:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  702:        2,    61,     2,   155,    30,     2,   156,     2,     2,     2,
  703:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  704:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  705:        2,     2,     2,   152,    29,   153,    50,     2,     2,     2,
  706:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  707:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  708:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  709:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  710:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  711:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  712:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  713:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  714:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  715:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  716:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  717:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  718:        2,     2,     2,     2,     2,     2,     1,     2,     3,     4,
  719:        5,     6,     7,     9,    10,    11,    12,    14,    15,    16,
  720:       17,    18,    19,    20,    21,    22,    23,    24,    27,    28,
  721:       32,    33,    34,    35,    38,    39,    40,    41,    49,    52,
  722:       53,    54,    55,    56,    57,    58,    59,    60,    62,    63,
  723:       64,    65,    66,    67,    68,    69,    70,    71,    72,    73,
  724:       74,    75,    76,    77,    78,    79,    80,    81,    82,    83,
  725:       84,    85,    86,    87,    88,    89,    90,    91,    92,    93,
  726:       94,    95,    96,    97,    98,    99,   100,   101,   102,   103,
  727:      104,   105,   106,   107,   108,   109,   110,   111,   112,   113,
  728:      114,   115,   116,   117,   118,   119,   120,   121,   122,   123,
  729:      124,   125,   126,   127,   128,   129,   130,   131,   132,   133,
  730:      134,   135,   136,   137,   138,   139,   140,   141,   142,   143,
  731:      144,   145,   146,   147,   148
  732: };
  733: 
  734: #if YYDEBUG
  735: /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
  736:    YYRHS.  */
  737: static const yytype_uint16 yyprhs[] =
  738: {
  739:        0,     0,     3,     5,     6,    10,    11,    13,    17,    19,
  740:       21,    23,    28,    32,    33,    40,    41,    47,    51,    54,
  741:       58,    60,    62,    66,    69,    74,    80,    85,    86,    90,
  742:       91,    93,    95,    97,   102,   104,   107,   111,   112,   113,
  743:      123,   124,   125,   138,   139,   140,   148,   149,   150,   160,
  744:      161,   162,   163,   176,   177,   184,   187,   191,   194,   198,
  745:      201,   205,   209,   213,   217,   221,   223,   226,   232,   233,
  746:      234,   245,   246,   247,   258,   259,   266,   268,   269,   270,
  747:      271,   272,   273,   292,   296,   300,   302,   303,   305,   308,
  748:      309,   310,   321,   323,   327,   329,   331,   333,   334,   336,
  749:      337,   348,   349,   358,   359,   367,   369,   372,   374,   377,
  750:      378,   381,   383,   384,   387,   388,   391,   393,   397,   398,
  751:      401,   403,   406,   408,   413,   415,   420,   422,   427,   431,
  752:      437,   441,   446,   451,   457,   458,   459,   466,   467,   473,
  753:      475,   477,   479,   484,   485,   486,   494,   495,   496,   505,
  754:      506,   509,   510,   514,   516,   517,   520,   524,   530,   535,
  755:      540,   546,   554,   561,   562,   564,   566,   568,   570,   571,
  756:      573,   575,   578,   582,   586,   591,   595,   597,   599,   602,
  757:      607,   611,   617,   619,   623,   626,   627,   628,   633,   636,
  758:      638,   639,   649,   653,   655,   659,   661,   665,   666,   668,
  759:      670,   673,   676,   679,   683,   685,   689,   691,   693,   697,
  760:      702,   706,   707,   709,   711,   715,   717,   719,   720,   722,
  761:      724,   727,   729,   731,   733,   735,   737,   739,   743,   749,
  762:      751,   755,   761,   766,   770,   772,   773,   775,   776,   781,
  763:      783,   786,   788,   793,   797,   798,   802,   804,   806,   807,
  764:      808,   811,   812,   817,   818,   826,   830,   835,   836,   844,
  765:      847,   851,   855,   859,   863,   867,   871,   875,   879,   883,
  766:      887,   891,   894,   897,   900,   903,   904,   909,   910,   915,
  767:      916,   921,   922,   927,   931,   935,   939,   943,   947,   951,
  768:      955,   959,   963,   967,   971,   975,   978,   981,   984,   987,
  769:      991,   995,   999,  1003,  1007,  1011,  1015,  1019,  1023,  1027,
  770:     1029,  1030,  1036,  1037,  1038,  1046,  1047,  1053,  1055,  1058,
  771:     1061,  1064,  1067,  1070,  1073,  1076,  1079,  1080,  1084,  1086,
  772:     1091,  1095,  1099,  1102,  1103,  1114,  1115,  1127,  1129,  1130,
  773:     1135,  1139,  1144,  1146,  1149,  1150,  1156,  1157,  1165,  1166,
  774:     1173,  1174,  1182,  1183,  1191,  1192,  1200,  1201,  1209,  1210,
  775:     1216,  1218,  1220,  1224,  1227,  1229,  1233,  1236,  1238,  1240,
  776:     1241,  1242,  1249,  1251,  1254,  1255,  1258,  1259,  1262,  1266,
  777:     1267,  1269,  1271,  1272,  1276,  1278,  1280,  1282,  1284,  1286,
  778:     1288,  1290,  1292,  1294,  1296,  1300,  1303,  1305,  1307,  1311,
  779:     1314,  1317,  1320,  1325,  1329,  1331,  1333,  1337,  1339,  1341,
  780:     1343,  1347,  1350,  1352,  1356,  1360,  1362,  1363,  1366,  1367,
  781:     1369,  1375,  1379,  1383,  1385,  1387,  1389,  1391,  1393,  1395,
  782:     1396,  1397,  1405,  1407,  1410,  1411,  1412,  1417,  1422,  1427,
  783:     1428,  1433,  1435,  1437,  1438,  1440,  1443,  1447,  1451,  1453,
  784:     1458,  1459,  1465,  1467,  1469,  1471,  1473,  1476,  1478,  1483,
  785:     1488,  1490,  1492,  1497,  1498,  1500,  1502,  1503,  1506,  1511,
  786:     1516,  1518,  1520,  1524,  1526,  1529,  1533,  1535,  1537,  1538,
  787:     1544,  1545,  1546,  1549,  1555,  1559,  1563,  1565,  1572,  1577,
  788:     1582,  1585,  1588,  1591,  1593,  1596,  1598,  1599,  1605,  1609,
  789:     1613,  1620,  1624,  1626,  1628,  1630,  1635,  1640,  1643,  1646,
  790:     1651,  1654,  1657,  1659,  1660,  1665,  1669
  791: };
  792: 
  793: /* YYRHS -- A `-1'-separated list of the rules' RHS.  */
  794: static const yytype_int16 yyrhs[] =
  795: {
  796:      159,     0,    -1,   160,    -1,    -1,   160,   161,   163,    -1,
  797:       -1,    71,    -1,   162,   148,    71,    -1,   172,    -1,   203,
  798:       -1,   204,    -1,   117,   149,   150,   151,    -1,   145,   162,
  799:      151,    -1,    -1,   145,   162,   152,   164,   160,   153,    -1,
  800:       -1,   145,   152,   165,   160,   153,    -1,   104,   166,   151,
  801:       -1,   168,   151,    -1,   166,     8,   167,    -1,   167,    -1,
  802:      162,    -1,   162,    90,    71,    -1,   148,   162,    -1,   148,
  803:      162,    90,    71,    -1,   168,     8,    71,    13,   316,    -1,
  804:       99,    71,    13,   316,    -1,    -1,   169,   170,   171,    -1,
  805:       -1,   172,    -1,   203,    -1,   204,    -1,   117,   149,   150,
  806:      151,    -1,   173,    -1,    71,    26,    -1,   152,   169,   153,
  807:       -1,    -1,    -1,    65,   149,   322,   150,   174,   172,   175,
  808:      229,   233,    -1,    -1,    -1,    65,   149,   322,   150,    26,
  809:      176,   169,   177,   231,   234,    68,   151,    -1,    -1,    -1,
  810:       82,   149,   178,   322,   150,   179,   228,    -1,    -1,    -1,
  811:       81,   180,   172,    82,   149,   181,   322,   150,   151,    -1,
  812:       -1,    -1,    -1,    84,   149,   267,   151,   182,   267,   151,
  813:      183,   267,   150,   184,   219,    -1,    -1,    91,   149,   322,
  814:      150,   185,   223,    -1,    95,   151,    -1,    95,   322,   151,
  815:       -1,    96,   151,    -1,    96,   322,   151,    -1,   100,   151,
  816:       -1,   100,   278,   151,    -1,   100,   326,   151,    -1,   106,
  817:      240,   151,    -1,   112,   242,   151,    -1,    80,   266,   151,
  818:       -1,    75,    -1,   322,   151,    -1,   114,   149,   201,   150,
  819:      151,    -1,    -1,    -1,    86,   149,   326,    90,   186,   218,
  820:      217,   150,   187,   220,    -1,    -1,    -1,    86,   149,   278,
  821:       90,   188,   326,   217,   150,   189,   220,    -1,    -1,    88,
  822:      190,   149,   222,   150,   221,    -1,   151,    -1,    -1,    -1,
  823:       -1,    -1,    -1,   101,   191,   152,   169,   153,   102,   149,
  824:      192,   305,   193,    73,   150,   194,   152,   169,   153,   195,
  825:      196,    -1,   103,   322,   151,    -1,    97,    71,   151,    -1,
  826:      197,    -1,    -1,   198,    -1,   197,   198,    -1,    -1,    -1,
  827:      102,   149,   305,   199,    73,   150,   200,   152,   169,   153,
  828:       -1,   202,    -1,   201,     8,   202,    -1,   326,    -1,   206,
  829:       -1,   208,    -1,    -1,    31,    -1,    -1,   292,   205,    71,
  830:      207,   149,   235,   150,   152,   169,   153,    -1,    -1,   211,
  831:       71,   212,   209,   215,   152,   243,   153,    -1,    -1,   213,
  832:       71,   210,   214,   152,   243,   153,    -1,   118,    -1,   111,
  833:      118,    -1,   119,    -1,   110,   118,    -1,    -1,   121,   305,
  834:       -1,   120,    -1,    -1,   121,   216,    -1,    -1,   122,   216,
  835:       -1,   305,    -1,   216,     8,   305,    -1,    -1,   124,   218,
  836:       -1,   326,    -1,    31,   326,    -1,   172,    -1,    26,   169,
  837:       85,   151,    -1,   172,    -1,    26,   169,    87,   151,    -1,
  838:      172,    -1,    26,   169,    89,   151,    -1,    71,    13,   316,
  839:       -1,   222,     8,    71,    13,   316,    -1,   152,   224,   153,
  840:       -1,   152,   151,   224,   153,    -1,    26,   224,    92,   151,
  841:       -1,    26,   151,   224,    92,   151,    -1,    -1,    -1,   224,
  842:       93,   322,   227,   225,   169,    -1,    -1,   224,    94,   227,
  843:      226,   169,    -1,    26,    -1,   151,    -1,   172,    -1,    26,
  844:      169,    83,   151,    -1,    -1,    -1,   229,    66,   149,   322,
  845:      150,   230,   172,    -1,    -1,    -1,   231,    66,   149,   322,
  846:      150,    26,   232,   169,    -1,    -1,    67,   172,    -1,    -1,
  847:       67,    26,   169,    -1,   236,    -1,    -1,   237,    73,    -1,
  848:      237,    31,    73,    -1,   237,    31,    73,    13,   316,    -1,
  849:      237,    73,    13,   316,    -1,   236,     8,   237,    73,    -1,
  850:      236,     8,   237,    31,    73,    -1,   236,     8,   237,    31,
  851:       73,    13,   316,    -1,   236,     8,   237,    73,    13,   316,
  852:       -1,    -1,   126,    -1,   127,    -1,   305,    -1,   239,    -1,
  853:       -1,   278,    -1,   326,    -1,    31,   324,    -1,   239,     8,
  854:      278,    -1,   239,     8,   326,    -1,   239,     8,    31,   324,
  855:       -1,   240,     8,   241,    -1,   241,    -1,    73,    -1,   154,
  856:      323,    -1,   154,   152,   322,   153,    -1,   242,     8,    73,
  857:       -1,   242,     8,    73,    13,   316,    -1,    73,    -1,    73,
  858:       13,   316,    -1,   243,   244,    -1,    -1,    -1,   260,   245,
  859:      264,   151,    -1,   265,   151,    -1,   247,    -1,    -1,   261,
  860:      292,   205,    71,   246,   149,   235,   150,   259,    -1,   104,
  861:      248,   249,    -1,   305,    -1,   248,     8,   305,    -1,   151,
  862:       -1,   152,   250,   153,    -1,    -1,   251,    -1,   252,    -1,
  863:      251,   252,    -1,   253,   151,    -1,   257,   151,    -1,   256,
  864:      105,   254,    -1,   305,    -1,   254,     8,   305,    -1,    71,
  865:       -1,   256,    -1,   305,   144,    71,    -1,   255,    90,   258,
  866:       71,    -1,   255,    90,   263,    -1,    -1,   263,    -1,   151,
  867:       -1,   152,   169,   153,    -1,   262,    -1,   113,    -1,    -1,
  868:      262,    -1,   263,    -1,   262,   263,    -1,   107,    -1,   108,
  869:       -1,   109,    -1,   112,    -1,   111,    -1,   110,    -1,   264,
  870:        8,    73,    -1,   264,     8,    73,    13,   316,    -1,    73,
  871:       -1,    73,    13,   316,    -1,   265,     8,    71,    13,   316,
  872:       -1,    99,    71,    13,   316,    -1,   266,     8,   322,    -1,
  873:      322,    -1,    -1,   268,    -1,    -1,   268,     8,   269,   322,
  874:       -1,   322,    -1,   270,   330,    -1,   330,    -1,   271,    61,
  875:      345,   155,    -1,    61,   345,   155,    -1,    -1,   271,   273,
  876:      270,    -1,   271,    -1,   270,    -1,    -1,    -1,   275,   272,
  877:       -1,    -1,    63,   306,   277,   314,    -1,    -1,   125,   149,
  878:      279,   351,   150,    13,   322,    -1,   326,    13,   322,    -1,
  879:      326,    13,    31,   326,    -1,    -1,   326,    13,    31,    63,
  880:      306,   280,   314,    -1,    62,   322,    -1,   326,    24,   322,
  881:       -1,   326,    23,   322,    -1,   326,    22,   322,    -1,   326,
  882:       21,   322,    -1,   326,    20,   322,    -1,   326,    19,   322,
  883:       -1,   326,    18,   322,    -1,   326,    17,   322,    -1,   326,
  884:       16,   322,    -1,   326,    15,   322,    -1,   326,    14,   322,
  885:       -1,   325,    60,    -1,    60,   325,    -1,   325,    59,    -1,
  886:       59,   325,    -1,    -1,   322,    27,   281,   322,    -1,    -1,
  887:      322,    28,   282,   322,    -1,    -1,   322,     9,   283,   322,
  888:       -1,    -1,   322,    11,   284,   322,    -1,   322,    10,   322,
  889:       -1,   322,    29,   322,    -1,   322,    31,   322,    -1,   322,
  890:       30,   322,    -1,   322,    44,   322,    -1,   322,    42,   322,
  891:       -1,   322,    43,   322,    -1,   322,    45,   322,    -1,   322,
  892:       46,   322,    -1,   322,    47,   322,    -1,   322,    41,   322,
  893:       -1,   322,    40,   322,    -1,    42,   322,    -1,    43,   322,
  894:       -1,    48,   322,    -1,    50,   322,    -1,   322,    33,   322,
  895:       -1,   322,    32,   322,    -1,   322,    35,   322,    -1,   322,
  896:       34,   322,    -1,   322,    36,   322,    -1,   322,    39,   322,
  897:       -1,   322,    37,   322,    -1,   322,    38,   322,    -1,   322,
  898:       49,   306,    -1,   149,   322,   150,    -1,   276,    -1,    -1,
  899:      149,   276,   150,   285,   274,    -1,    -1,    -1,   322,    25,
  900:      286,   322,    26,   287,   322,    -1,    -1,   322,    25,    26,
  901:      288,   322,    -1,   360,    -1,    58,   322,    -1,    57,   322,
  902:       -1,    56,   322,    -1,    55,   322,    -1,    54,   322,    -1,
  903:       53,   322,    -1,    52,   322,    -1,    64,   312,    -1,    -1,
  904:       51,   289,   322,    -1,   318,    -1,   126,   149,   354,   150,
  905:       -1,    61,   354,   155,    -1,   156,   313,   156,    -1,    12,
  906:      322,    -1,    -1,   292,   205,   149,   290,   235,   150,   293,
  907:      152,   169,   153,    -1,    -1,   112,   292,   205,   149,   291,
  908:      235,   150,   293,   152,   169,   153,    -1,    98,    -1,    -1,
  909:      104,   149,   294,   150,    -1,   294,     8,    73,    -1,   294,
  910:        8,    31,    73,    -1,    73,    -1,    31,    73,    -1,    -1,
  911:      162,   149,   296,   238,   150,    -1,    -1,   145,   148,   162,
  912:      149,   297,   238,   150,    -1,    -1,   148,   162,   149,   298,
  913:      238,   150,    -1,    -1,   304,   144,   349,   149,   299,   238,
  914:      150,    -1,    -1,   304,   144,   336,   149,   300,   238,   150,
  915:       -1,    -1,   338,   144,   349,   149,   301,   238,   150,    -1,
  916:       -1,   338,   144,   336,   149,   302,   238,   150,    -1,    -1,
  917:      336,   149,   303,   238,   150,    -1,   112,    -1,   162,    -1,
  918:      145,   148,   162,    -1,   148,   162,    -1,   162,    -1,   145,
  919:      148,   162,    -1,   148,   162,    -1,   304,    -1,   307,    -1,
  920:       -1,    -1,   342,   123,   308,   346,   309,   310,    -1,   342,
  921:       -1,   310,   311,    -1,    -1,   123,   346,    -1,    -1,   149,
  922:      150,    -1,   149,   322,   150,    -1,    -1,    78,    -1,   356,
  923:       -1,    -1,   149,   238,   150,    -1,    69,    -1,    70,    -1,
  924:       79,    -1,   132,    -1,   133,    -1,   147,    -1,   129,    -1,
  925:      130,    -1,   131,    -1,   146,    -1,   140,    78,   141,    -1,
  926:      140,   141,    -1,   315,    -1,   162,    -1,   145,   148,   162,
  927:       -1,   148,   162,    -1,    42,   316,    -1,    43,   316,    -1,
  928:      126,   149,   319,   150,    -1,    61,   319,   155,    -1,   317,
  929:       -1,   128,    -1,   304,   144,    71,    -1,    72,    -1,   363,
  930:       -1,   162,    -1,   145,   148,   162,    -1,   148,   162,    -1,
  931:      315,    -1,   157,   356,   157,    -1,   140,   356,   141,    -1,
  932:      128,    -1,    -1,   321,   320,    -1,    -1,     8,    -1,   321,
  933:        8,   316,   124,   316,    -1,   321,     8,   316,    -1,   316,
  934:      124,   316,    -1,   316,    -1,   323,    -1,   278,    -1,   326,
  935:       -1,   326,    -1,   326,    -1,    -1,    -1,   341,   123,   327,
  936:      346,   328,   335,   329,    -1,   341,    -1,   329,   330,    -1,
  937:       -1,    -1,   123,   346,   331,   335,    -1,   332,    61,   345,
  938:      155,    -1,   333,    61,   345,   155,    -1,    -1,   149,   334,
  939:      238,   150,    -1,   333,    -1,   332,    -1,    -1,   343,    -1,
  940:      350,   343,    -1,   304,   144,   336,    -1,   338,   144,   336,
  941:       -1,   343,    -1,   339,    61,   345,   155,    -1,    -1,   295,
  942:      340,    61,   345,   155,    -1,   342,    -1,   339,    -1,   295,
  943:       -1,   343,    -1,   350,   343,    -1,   337,    -1,   343,    61,
  944:      345,   155,    -1,   343,   152,   322,   153,    -1,   344,    -1,
  945:       73,    -1,   154,   152,   322,   153,    -1,    -1,   322,    -1,
  946:      348,    -1,    -1,   336,   347,    -1,   348,    61,   345,   155,
  947:       -1,   348,   152,   322,   153,    -1,   349,    -1,    71,    -1,
  948:      152,   322,   153,    -1,   154,    -1,   350,   154,    -1,   351,
  949:        8,   352,    -1,   352,    -1,   326,    -1,    -1,   125,   149,
  950:      353,   351,   150,    -1,    -1,    -1,   355,   320,    -1,   355,
  951:        8,   322,   124,   322,    -1,   355,     8,   322,    -1,   322,
  952:      124,   322,    -1,   322,    -1,   355,     8,   322,   124,    31,
  953:      324,    -1,   355,     8,    31,   324,    -1,   322,   124,    31,
  954:      324,    -1,    31,   324,    -1,   356,   357,    -1,   356,    78,
  955:       -1,   357,    -1,    78,   357,    -1,    73,    -1,    -1,    73,
  956:       61,   358,   359,   155,    -1,    73,   123,    71,    -1,   142,
  957:      322,   153,    -1,   142,    72,    61,   322,   155,   153,    -1,
  958:      143,   326,   153,    -1,    71,    -1,    74,    -1,    73,    -1,
  959:      115,   149,   361,   150,    -1,   116,   149,   326,   150,    -1,
  960:        7,   322,    -1,     6,   322,    -1,     5,   149,   322,   150,
  961:       -1,     4,   322,    -1,     3,   322,    -1,   326,    -1,    -1,
  962:      361,     8,   362,   326,    -1,   304,   144,    71,    -1,   338,
  963:      144,    71,    -1
  964: };
  965: 
  966: /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
  967: static const yytype_uint16 yyrline[] =
  968: {
  969:        0,   216,   216,   220,   220,   221,   225,   226,   230,   231,
  970:      232,   233,   234,   235,   235,   237,   237,   239,   240,   244,
  971:      245,   249,   250,   251,   252,   256,   257,   261,   261,   262,
  972:      267,   268,   269,   270,   275,   276,   280,   281,   281,   281,
  973:      282,   282,   282,   283,   283,   283,   284,   284,   284,   288,
  974:      290,   292,   285,   294,   294,   295,   296,   297,   298,   299,
  975:      300,   301,   302,   303,   304,   305,   306,   307,   309,   310,
  976:      308,   313,   314,   312,   316,   316,   317,   318,   319,   320,
  977:      321,   322,   318,   324,   325,   330,   331,   335,   336,   341,
  978:      341,   341,   346,   347,   351,   355,   359,   364,   365,   370,
  979:      370,   376,   375,   382,   381,   391,   392,   393,   394,   398,
  980:      399,   403,   406,   408,   411,   413,   417,   418,   422,   423,
  981:      428,   429,   433,   434,   439,   440,   445,   446,   451,   452,
  982:      457,   458,   459,   460,   465,   466,   466,   467,   467,   472,
  983:      473,   478,   479,   484,   486,   486,   490,   492,   492,   496,
  984:      498,   502,   504,   509,   510,   515,   516,   517,   518,   519,
  985:      520,   521,   522,   527,   528,   529,   530,   535,   536,   541,
  986:      542,   543,   544,   545,   546,   550,   551,   556,   557,   558,
  987:      563,   564,   565,   566,   572,   573,   578,   578,   579,   580,
  988:      581,   581,   586,   590,   591,   595,   596,   599,   601,   605,
  989:      606,   610,   611,   615,   619,   620,   624,   625,   629,   633,
  990:      634,   638,   639,   643,   644,   648,   649,   653,   654,   658,
  991:      659,   663,   664,   665,   666,   667,   668,   672,   673,   674,
  992:      675,   679,   680,   684,   685,   690,   691,   695,   695,   696,
  993:      700,   701,   705,   706,   710,   710,   711,   712,   716,   717,
  994:      717,   722,   722,   726,   726,   727,   728,   729,   729,   730,
  995:      731,   732,   733,   734,   735,   736,   737,   738,   739,   740,
  996:      741,   742,   743,   744,   745,   746,   746,   747,   747,   748,
  997:      748,   749,   749,   750,   751,   752,   753,   754,   755,   756,
  998:      757,   758,   759,   760,   761,   762,   763,   764,   765,   766,
  999:      767,   768,   769,   770,   771,   772,   773,   774,   775,   776,
 1000:      777,   777,   778,   779,   778,   781,   781,   783,   784,   785,
 1001:      786,   787,   788,   789,   790,   791,   792,   792,   793,   794,
 1002:      795,   796,   797,   798,   798,   800,   800,   805,   808,   810,
 1003:      814,   815,   816,   817,   821,   821,   824,   824,   827,   827,
 1004:      830,   830,   833,   833,   836,   836,   839,   839,   842,   842,
 1005:      848,   849,   850,   851,   855,   856,   857,   863,   864,   869,
 1006:      870,   869,   872,   877,   878,   883,   887,   888,   889,   893,
 1007:      894,   895,   900,   901,   906,   907,   908,   909,   910,   911,
 1008:      912,   913,   914,   915,   916,   917,   922,   923,   924,   925,
 1009:      926,   927,   928,   929,   930,   931,   935,   939,   940,   941,
 1010:      942,   943,   944,   945,   946,   947,   952,   953,   956,   958,
 1011:      962,   963,   964,   965,   969,   970,   975,   980,   985,   990,
 1012:      991,   990,   993,   997,   998,  1003,  1003,  1007,  1008,  1012,
 1013:     1012,  1018,  1019,  1020,  1024,  1025,  1029,  1030,  1035,  1039,
 1014:     1040,  1040,  1045,  1046,  1047,  1052,  1053,  1054,  1058,  1059,
 1015:     1060,  1065,  1066,  1070,  1071,  1076,  1077,  1077,  1081,  1082,
 1016:     1083,  1087,  1088,  1092,  1093,  1097,  1098,  1103,  1104,  1104,
 1017:     1105,  1110,  1111,  1115,  1116,  1117,  1118,  1119,  1120,  1121,
 1018:     1122,  1126,  1127,  1128,  1129,  1135,  1136,  1136,  1137,  1138,
 1019:     1139,  1140,  1145,  1146,  1147,  1152,  1153,  1154,  1155,  1156,
 1020:     1157,  1158,  1162,  1163,  1163,  1167,  1168
 1021: };
 1022: #endif
 1023: 
 1024: #if YYDEBUG || YYERROR_VERBOSE || 0
 1025: /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
 1026:    First, the terminals, then, starting at YYNTOKENS, nonterminals.  */
 1027: static const char *const yytname[] =
 1028: {
 1029:   "\"end of file\"", "error", "$undefined",
 1030:   "\"require_once (T_REQUIRE_ONCE)\"", "\"require (T_REQUIRE)\"",
 1031:   "\"eval (T_EVAL)\"", "\"include_once (T_INCLUDE_ONCE)\"",
 1032:   "\"include (T_INCLUDE)\"", "','", "\"or (T_LOGICAL_OR)\"",
 1033:   "\"xor (T_LOGICAL_XOR)\"", "\"and (T_LOGICAL_AND)\"",
 1034:   "\"print (T_PRINT)\"", "'='", "\">>= (T_SR_EQUAL)\"",
 1035:   "\"<<= (T_SL_EQUAL)\"", "\"^= (T_XOR_EQUAL)\"", "\"|= (T_OR_EQUAL)\"",
 1036:   "\"&= (T_AND_EQUAL)\"", "\"%= (T_MOD_EQUAL)\"",
 1037:   "\".= (T_CONCAT_EQUAL)\"", "\"/= (T_DIV_EQUAL)\"",
 1038:   "\"*= (T_MUL_EQUAL)\"", "\"-= (T_MINUS_EQUAL)\"",
 1039:   "\"+= (T_PLUS_EQUAL)\"", "'?'", "':'", "\"|| (T_BOOLEAN_OR)\"",
 1040:   "\"&& (T_BOOLEAN_AND)\"", "'|'", "'^'", "'&'",
 1041:   "\"!== (T_IS_NOT_IDENTICAL)\"", "\"=== (T_IS_IDENTICAL)\"",
 1042:   "\"!= (T_IS_NOT_EQUAL)\"", "\"== (T_IS_EQUAL)\"", "'<'", "'>'",
 1043:   "\">= (T_IS_GREATER_OR_EQUAL)\"", "\"<= (T_IS_SMALLER_OR_EQUAL)\"",
 1044:   "\">> (T_SR)\"", "\"<< (T_SL)\"", "'+'", "'-'", "'.'", "'*'", "'/'",
 1045:   "'%'", "'!'", "\"instanceof (T_INSTANCEOF)\"", "'~'", "'@'",
 1046:   "\"(unset) (T_UNSET_CAST)\"", "\"(bool) (T_BOOL_CAST)\"",
 1047:   "\"(object) (T_OBJECT_CAST)\"", "\"(array) (T_ARRAY_CAST)\"",
 1048:   "\"(string) (T_STRING_CAST)\"", "\"(double) (T_DOUBLE_CAST)\"",
 1049:   "\"(int) (T_INT_CAST)\"", "\"-- (T_DEC)\"", "\"++ (T_INC)\"", "'['",
 1050:   "\"clone (T_CLONE)\"", "\"new (T_NEW)\"", "\"exit (T_EXIT)\"",
 1051:   "\"if (T_IF)\"", "\"elseif (T_ELSEIF)\"", "\"else (T_ELSE)\"",
 1052:   "\"endif (T_ENDIF)\"", "\"integer number (T_LNUMBER)\"",
 1053:   "\"floating-point number (T_DNUMBER)\"", "\"identifier (T_STRING)\"",
 1054:   "\"variable name (T_STRING_VARNAME)\"", "\"variable (T_VARIABLE)\"",
 1055:   "\"number (T_NUM_STRING)\"", "T_INLINE_HTML", "T_CHARACTER",
 1056:   "T_BAD_CHARACTER",
 1057:   "\"quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)\"",
 1058:   "\"quoted-string (T_CONSTANT_ENCAPSED_STRING)\"", "\"echo (T_ECHO)\"",
 1059:   "\"do (T_DO)\"", "\"while (T_WHILE)\"", "\"endwhile (T_ENDWHILE)\"",
 1060:   "\"for (T_FOR)\"", "\"endfor (T_ENDFOR)\"", "\"foreach (T_FOREACH)\"",
 1061:   "\"endforeach (T_ENDFOREACH)\"", "\"declare (T_DECLARE)\"",
 1062:   "\"enddeclare (T_ENDDECLARE)\"", "\"as (T_AS)\"",
 1063:   "\"switch (T_SWITCH)\"", "\"endswitch (T_ENDSWITCH)\"",
 1064:   "\"case (T_CASE)\"", "\"default (T_DEFAULT)\"", "\"break (T_BREAK)\"",
 1065:   "\"continue (T_CONTINUE)\"", "\"goto (T_GOTO)\"",
 1066:   "\"function (T_FUNCTION)\"", "\"const (T_CONST)\"",
 1067:   "\"return (T_RETURN)\"", "\"try (T_TRY)\"", "\"catch (T_CATCH)\"",
 1068:   "\"throw (T_THROW)\"", "\"use (T_USE)\"", "\"insteadof (T_INSTEADOF)\"",
 1069:   "\"global (T_GLOBAL)\"", "\"public (T_PUBLIC)\"",
 1070:   "\"protected (T_PROTECTED)\"", "\"private (T_PRIVATE)\"",
 1071:   "\"final (T_FINAL)\"", "\"abstract (T_ABSTRACT)\"",
 1072:   "\"static (T_STATIC)\"", "\"var (T_VAR)\"", "\"unset (T_UNSET)\"",
 1073:   "\"isset (T_ISSET)\"", "\"empty (T_EMPTY)\"",
 1074:   "\"__halt_compiler (T_HALT_COMPILER)\"", "\"class (T_CLASS)\"",
 1075:   "\"trait (T_TRAIT)\"", "\"interface (T_INTERFACE)\"",
 1076:   "\"extends (T_EXTENDS)\"", "\"implements (T_IMPLEMENTS)\"",
 1077:   "\"-> (T_OBJECT_OPERATOR)\"", "\"=> (T_DOUBLE_ARROW)\"",
 1078:   "\"list (T_LIST)\"", "\"array (T_ARRAY)\"", "\"callable (T_CALLABLE)\"",
 1079:   "\"__CLASS__ (T_CLASS_C)\"", "\"__TRAIT__ (T_TRAIT_C)\"",
 1080:   "\"__METHOD__ (T_METHOD_C)\"", "\"__FUNCTION__ (T_FUNC_C)\"",
 1081:   "\"__LINE__ (T_LINE)\"", "\"__FILE__ (T_FILE)\"",
 1082:   "\"comment (T_COMMENT)\"", "\"doc comment (T_DOC_COMMENT)\"",
 1083:   "\"open tag (T_OPEN_TAG)\"",
 1084:   "\"open tag with echo (T_OPEN_TAG_WITH_ECHO)\"",
 1085:   "\"close tag (T_CLOSE_TAG)\"", "\"whitespace (T_WHITESPACE)\"",
 1086:   "\"heredoc start (T_START_HEREDOC)\"", "\"heredoc end (T_END_HEREDOC)\"",
 1087:   "\"${ (T_DOLLAR_OPEN_CURLY_BRACES)\"", "\"{$ (T_CURLY_OPEN)\"",
 1088:   "\":: (T_PAAMAYIM_NEKUDOTAYIM)\"", "\"namespace (T_NAMESPACE)\"",
 1089:   "\"__NAMESPACE__ (T_NS_C)\"", "\"__DIR__ (T_DIR)\"",
 1090:   "\"\\\\ (T_NS_SEPARATOR)\"", "'('", "')'", "';'", "'{'", "'}'", "'$'",
 1091:   "']'", "'`'", "'\"'", "$accept", "start", "top_statement_list", "$@1",
 1092:   "namespace_name", "top_statement", "$@2", "$@3", "use_declarations",
 1093:   "use_declaration", "constant_declaration", "inner_statement_list", "$@4",
 1094:   "inner_statement", "statement", "unticked_statement", "$@5", "$@6",
 1095:   "$@7", "$@8", "$@9", "$@10", "$@11", "$@12", "$@13", "$@14", "$@15",
 1096:   "$@16", "$@17", "$@18", "$@19", "$@20", "$@21", "$@22", "$@23", "$@24",
 1097:   "$@25", "$@26", "additional_catches", "non_empty_additional_catches",
 1098:   "additional_catch", "@27", "$@28", "unset_variables", "unset_variable",
 1099:   "function_declaration_statement", "class_declaration_statement",
 1100:   "is_reference", "unticked_function_declaration_statement", "$@29",
 1101:   "unticked_class_declaration_statement", "$@30", "$@31",
 1102:   "class_entry_type", "extends_from", "interface_entry",
 1103:   "interface_extends_list", "implements_list", "interface_list",
 1104:   "foreach_optional_arg", "foreach_variable", "for_statement",
 1105:   "foreach_statement", "declare_statement", "declare_list",
 1106:   "switch_case_list", "case_list", "$@32", "$@33", "case_separator",
 1107:   "while_statement", "elseif_list", "$@34", "new_elseif_list", "$@35",
 1108:   "else_single", "new_else_single", "parameter_list",
 1109:   "non_empty_parameter_list", "optional_class_type",
 1110:   "function_call_parameter_list", "non_empty_function_call_parameter_list",
 1111:   "global_var_list", "global_var", "static_var_list",
 1112:   "class_statement_list", "class_statement", "$@36", "$@37",
 1113:   "trait_use_statement", "trait_list", "trait_adaptations",
 1114:   "trait_adaptation_list", "non_empty_trait_adaptation_list",
 1115:   "trait_adaptation_statement", "trait_precedence", "trait_reference_list",
 1116:   "trait_method_reference", "trait_method_reference_fully_qualified",
 1117:   "trait_alias", "trait_modifiers", "method_body", "variable_modifiers",
 1118:   "method_modifiers", "non_empty_member_modifiers", "member_modifier",
 1119:   "class_variable_declaration", "class_constant_declaration",
 1120:   "echo_expr_list", "for_expr", "non_empty_for_expr", "$@38",
 1121:   "chaining_method_or_property", "chaining_dereference",
 1122:   "chaining_instance_call", "$@39", "instance_call", "$@40", "new_expr",
 1123:   "$@41", "expr_without_variable", "$@42", "$@43", "$@44", "$@45", "$@46",
 1124:   "$@47", "@48", "$@49", "$@50", "$@51", "$@52", "@53", "@54", "function",
 1125:   "lexical_vars", "lexical_var_list", "function_call", "$@55", "$@56",
 1126:   "$@57", "$@58", "$@59", "$@60", "$@61", "$@62", "class_name",
 1127:   "fully_qualified_class_name", "class_name_reference",
 1128:   "dynamic_class_name_reference", "$@63", "$@64",
 1129:   "dynamic_class_name_variable_properties",
 1130:   "dynamic_class_name_variable_property", "exit_expr", "backticks_expr",
 1131:   "ctor_arguments", "common_scalar", "static_scalar",
 1132:   "static_class_constant", "scalar", "static_array_pair_list",
 1133:   "possible_comma", "non_empty_static_array_pair_list", "expr",
 1134:   "r_variable", "w_variable", "rw_variable", "variable", "$@65", "$@66",
 1135:   "variable_properties", "variable_property", "$@67",
 1136:   "array_method_dereference", "method", "$@68", "method_or_not",
 1137:   "variable_without_objects", "static_member", "variable_class_name",
 1138:   "array_function_dereference", "$@69",
 1139:   "base_variable_with_function_calls", "base_variable",
 1140:   "reference_variable", "compound_variable", "dim_offset",
 1141:   "object_property", "$@70", "object_dim_list", "variable_name",
 1142:   "simple_indirect_reference", "assignment_list",
 1143:   "assignment_list_element", "$@71", "array_pair_list",
 1144:   "non_empty_array_pair_list", "encaps_list", "encaps_var", "$@72",
 1145:   "encaps_var_offset", "internal_functions_in_yacc", "isset_variables",
 1146:   "$@73", "class_constant", YY_NULL
 1147: };
 1148: #endif
 1149: 
 1150: # ifdef YYPRINT
 1151: /* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
 1152:    token YYLEX-NUM.  */
 1153: static const yytype_uint16 yytoknum[] =
 1154: {
 1155:        0,   256,   257,   258,   259,   260,   261,   262,    44,   263,
 1156:      264,   265,   266,    61,   267,   268,   269,   270,   271,   272,
 1157:      273,   274,   275,   276,   277,    63,    58,   278,   279,   124,
 1158:       94,    38,   280,   281,   282,   283,    60,    62,   284,   285,
 1159:      286,   287,    43,    45,    46,    42,    47,    37,    33,   288,
 1160:      126,    64,   289,   290,   291,   292,   293,   294,   295,   296,
 1161:      297,    91,   298,   299,   300,   301,   302,   303,   304,   305,
 1162:      306,   307,   308,   309,   310,   311,   312,   313,   314,   315,
 1163:      316,   317,   318,   319,   320,   321,   322,   323,   324,   325,
 1164:      326,   327,   328,   329,   330,   331,   332,   333,   334,   335,
 1165:      336,   337,   338,   339,   340,   341,   342,   343,   344,   345,
 1166:      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
 1167:      356,   357,   358,   359,   360,   361,   362,   363,   364,   365,
 1168:      366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
 1169:      376,   377,   378,   379,   380,   381,   382,   383,   384,    40,
 1170:       41,    59,   123,   125,    36,    93,    96,    34
 1171: };
 1172: # endif
 1173: 
 1174: /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
 1175: static const yytype_uint16 yyr1[] =
 1176: {
 1177:        0,   158,   159,   161,   160,   160,   162,   162,   163,   163,
 1178:      163,   163,   163,   164,   163,   165,   163,   163,   163,   166,
 1179:      166,   167,   167,   167,   167,   168,   168,   170,   169,   169,
 1180:      171,   171,   171,   171,   172,   172,   173,   174,   175,   173,
 1181:      176,   177,   173,   178,   179,   173,   180,   181,   173,   182,
 1182:      183,   184,   173,   185,   173,   173,   173,   173,   173,   173,
 1183:      173,   173,   173,   173,   173,   173,   173,   173,   186,   187,
 1184:      173,   188,   189,   173,   190,   173,   173,   191,   192,   193,
 1185:      194,   195,   173,   173,   173,   196,   196,   197,   197,   199,
 1186:      200,   198,   201,   201,   202,   203,   204,   205,   205,   207,
 1187:      206,   209,   208,   210,   208,   211,   211,   211,   211,   212,
 1188:      212,   213,   214,   214,   215,   215,   216,   216,   217,   217,
 1189:      218,   218,   219,   219,   220,   220,   221,   221,   222,   222,
 1190:      223,   223,   223,   223,   224,   225,   224,   226,   224,   227,
 1191:      227,   228,   228,   229,   230,   229,   231,   232,   231,   233,
 1192:      233,   234,   234,   235,   235,   236,   236,   236,   236,   236,
 1193:      236,   236,   236,   237,   237,   237,   237,   238,   238,   239,
 1194:      239,   239,   239,   239,   239,   240,   240,   241,   241,   241,
 1195:      242,   242,   242,   242,   243,   243,   245,   244,   244,   244,
 1196:      246,   244,   247,   248,   248,   249,   249,   250,   250,   251,
 1197:      251,   252,   252,   253,   254,   254,   255,   255,   256,   257,
 1198:      257,   258,   258,   259,   259,   260,   260,   261,   261,   262,
 1199:      262,   263,   263,   263,   263,   263,   263,   264,   264,   264,
 1200:      264,   265,   265,   266,   266,   267,   267,   269,   268,   268,
 1201:      270,   270,   271,   271,   273,   272,   272,   272,   274,   275,
 1202:      274,   277,   276,   279,   278,   278,   278,   280,   278,   278,
 1203:      278,   278,   278,   278,   278,   278,   278,   278,   278,   278,
 1204:      278,   278,   278,   278,   278,   281,   278,   282,   278,   283,
 1205:      278,   284,   278,   278,   278,   278,   278,   278,   278,   278,
 1206:      278,   278,   278,   278,   278,   278,   278,   278,   278,   278,
 1207:      278,   278,   278,   278,   278,   278,   278,   278,   278,   278,
 1208:      285,   278,   286,   287,   278,   288,   278,   278,   278,   278,
 1209:      278,   278,   278,   278,   278,   278,   289,   278,   278,   278,
 1210:      278,   278,   278,   290,   278,   291,   278,   292,   293,   293,
 1211:      294,   294,   294,   294,   296,   295,   297,   295,   298,   295,
 1212:      299,   295,   300,   295,   301,   295,   302,   295,   303,   295,
 1213:      304,   304,   304,   304,   305,   305,   305,   306,   306,   308,
 1214:      309,   307,   307,   310,   310,   311,   312,   312,   312,   313,
 1215:      313,   313,   314,   314,   315,   315,   315,   315,   315,   315,
 1216:      315,   315,   315,   315,   315,   315,   316,   316,   316,   316,
 1217:      316,   316,   316,   316,   316,   316,   317,   318,   318,   318,
 1218:      318,   318,   318,   318,   318,   318,   319,   319,   320,   320,
 1219:      321,   321,   321,   321,   322,   322,   323,   324,   325,   327,
 1220:      328,   326,   326,   329,   329,   331,   330,   332,   332,   334,
 1221:      333,   335,   335,   335,   336,   336,   337,   337,   338,   339,
 1222:      340,   339,   341,   341,   341,   342,   342,   342,   343,   343,
 1223:      343,   344,   344,   345,   345,   346,   347,   346,   348,   348,
 1224:      348,   349,   349,   350,   350,   351,   351,   352,   353,   352,
 1225:      352,   354,   354,   355,   355,   355,   355,   355,   355,   355,
 1226:      355,   356,   356,   356,   356,   357,   358,   357,   357,   357,
 1227:      357,   357,   359,   359,   359,   360,   360,   360,   360,   360,
 1228:      360,   360,   361,   362,   361,   363,   363
 1229: };
 1230: 
 1231: /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */
 1232: static const yytype_uint8 yyr2[] =
 1233: {
 1234:        0,     2,     1,     0,     3,     0,     1,     3,     1,     1,
 1235:        1,     4,     3,     0,     6,     0,     5,     3,     2,     3,
 1236:        1,     1,     3,     2,     4,     5,     4,     0,     3,     0,
 1237:        1,     1,     1,     4,     1,     2,     3,     0,     0,     9,
 1238:        0,     0,    12,     0,     0,     7,     0,     0,     9,     0,
 1239:        0,     0,    12,     0,     6,     2,     3,     2,     3,     2,
 1240:        3,     3,     3,     3,     3,     1,     2,     5,     0,     0,
 1241:       10,     0,     0,    10,     0,     6,     1,     0,     0,     0,
 1242:        0,     0,    18,     3,     3,     1,     0,     1,     2,     0,
 1243:        0,    10,     1,     3,     1,     1,     1,     0,     1,     0,
 1244:       10,     0,     8,     0,     7,     1,     2,     1,     2,     0,
 1245:        2,     1,     0,     2,     0,     2,     1,     3,     0,     2,
 1246:        1,     2,     1,     4,     1,     4,     1,     4,     3,     5,
 1247:        3,     4,     4,     5,     0,     0,     6,     0,     5,     1,
 1248:        1,     1,     4,     0,     0,     7,     0,     0,     8,     0,
 1249:        2,     0,     3,     1,     0,     2,     3,     5,     4,     4,
 1250:        5,     7,     6,     0,     1,     1,     1,     1,     0,     1,
 1251:        1,     2,     3,     3,     4,     3,     1,     1,     2,     4,
 1252:        3,     5,     1,     3,     2,     0,     0,     4,     2,     1,
 1253:        0,     9,     3,     1,     3,     1,     3,     0,     1,     1,
 1254:        2,     2,     2,     3,     1,     3,     1,     1,     3,     4,
 1255:        3,     0,     1,     1,     3,     1,     1,     0,     1,     1,
 1256:        2,     1,     1,     1,     1,     1,     1,     3,     5,     1,
 1257:        3,     5,     4,     3,     1,     0,     1,     0,     4,     1,
 1258:        2,     1,     4,     3,     0,     3,     1,     1,     0,     0,
 1259:        2,     0,     4,     0,     7,     3,     4,     0,     7,     2,
 1260:        3,     3,     3,     3,     3,     3,     3,     3,     3,     3,
 1261:        3,     2,     2,     2,     2,     0,     4,     0,     4,     0,
 1262:        4,     0,     4,     3,     3,     3,     3,     3,     3,     3,
 1263:        3,     3,     3,     3,     3,     2,     2,     2,     2,     3,
 1264:        3,     3,     3,     3,     3,     3,     3,     3,     3,     1,
 1265:        0,     5,     0,     0,     7,     0,     5,     1,     2,     2,
 1266:        2,     2,     2,     2,     2,     2,     0,     3,     1,     4,
 1267:        3,     3,     2,     0,    10,     0,    11,     1,     0,     4,
 1268:        3,     4,     1,     2,     0,     5,     0,     7,     0,     6,
 1269:        0,     7,     0,     7,     0,     7,     0,     7,     0,     5,
 1270:        1,     1,     3,     2,     1,     3,     2,     1,     1,     0,
 1271:        0,     6,     1,     2,     0,     2,     0,     2,     3,     0,
 1272:        1,     1,     0,     3,     1,     1,     1,     1,     1,     1,
 1273:        1,     1,     1,     1,     3,     2,     1,     1,     3,     2,
 1274:        2,     2,     4,     3,     1,     1,     3,     1,     1,     1,
 1275:        3,     2,     1,     3,     3,     1,     0,     2,     0,     1,
 1276:        5,     3,     3,     1,     1,     1,     1,     1,     1,     0,
 1277:        0,     7,     1,     2,     0,     0,     4,     4,     4,     0,
 1278:        4,     1,     1,     0,     1,     2,     3,     3,     1,     4,
 1279:        0,     5,     1,     1,     1,     1,     2,     1,     4,     4,
 1280:        1,     1,     4,     0,     1,     1,     0,     2,     4,     4,
 1281:        1,     1,     3,     1,     2,     3,     1,     1,     0,     5,
 1282:        0,     0,     2,     5,     3,     3,     1,     6,     4,     4,
 1283:        2,     2,     2,     1,     2,     1,     0,     5,     3,     3,
 1284:        6,     3,     1,     1,     1,     4,     4,     2,     2,     4,
 1285:        2,     2,     1,     0,     4,     3,     3
 1286: };
 1287: 
 1288: /* YYDEFACT[STATE-NAME] -- Default reduction number in state STATE-NUM.
 1289:    Performed when YYTABLE doesn't specify something else to do.  Zero
 1290:    means the default is an error.  */
 1291: static const yytype_uint16 yydefact[] =
 1292: {
 1293:        5,     0,     3,     1,     0,     0,     0,     0,     0,     0,
 1294:        0,     0,     0,     0,     0,   326,     0,     0,     0,     0,
 1295:        0,     0,     0,     0,     0,   481,     0,     0,   376,     0,
 1296:      384,   385,     6,   407,   461,    65,   386,     0,    46,     0,
 1297:        0,     0,    74,     0,     0,     0,     0,   337,     0,     0,
 1298:       77,     0,     0,     0,     0,     0,   360,     0,     0,     0,
 1299:        0,   105,   107,   111,     0,     0,   415,   390,   391,   392,
 1300:      387,   388,     0,     0,   393,   389,     0,     0,    76,    29,
 1301:      473,   379,     0,   409,     4,     0,     8,    34,     9,    10,
 1302:       95,    96,     0,     0,   309,   425,    97,   454,     0,   412,
 1303:      328,     0,   424,     0,   426,     0,   457,     0,   453,   432,
 1304:      452,   455,   460,     0,   317,   408,     6,   360,     0,    97,
 1305:      511,   510,     0,   508,   507,   332,   295,   296,   297,   298,
 1306:        0,   324,   323,   322,   321,   320,   319,   318,   360,     0,
 1307:        0,   361,     0,   274,   428,     0,   272,     0,   486,     0,
 1308:      418,   259,     0,     0,   361,   367,   251,   368,     0,   372,
 1309:      455,     0,     0,   325,     0,    35,     0,   234,     0,    43,
 1310:      235,     0,     0,     0,    55,     0,    57,     0,     0,     0,
 1311:       59,   425,     0,   426,     0,     0,     0,    21,     0,    20,
 1312:      177,     0,     0,   176,   108,   106,   182,     0,    97,     0,
 1313:        0,     0,     0,   253,   481,   495,     0,   395,     0,     0,
 1314:        0,   493,     0,    15,     0,   411,   309,     0,    27,     0,
 1315:      380,     0,   381,     0,     0,     0,   344,     0,    18,   109,
 1316:      103,    98,     0,     0,     0,   279,     0,   281,   312,   275,
 1317:      277,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 1318:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 1319:        0,    66,   273,   271,     0,     0,     0,     0,     0,     0,
 1320:        0,     0,     0,     0,     0,     0,   358,     0,   463,   429,
 1321:      463,     0,   474,   456,     0,     0,   327,     0,   363,     0,
 1322:        0,   490,   427,     0,   330,   419,   482,     0,   363,     0,
 1323:      382,     0,   369,   456,   377,     0,     0,     0,    64,     0,
 1324:        0,     0,   236,   239,   425,   426,     0,     0,    56,    58,
 1325:       84,     0,    60,    61,    29,    83,    23,     0,     0,    17,
 1326:        0,   178,   426,     0,    62,     0,     0,    63,     0,     0,
 1327:       92,    94,   512,     0,     0,     0,   480,     0,   496,     0,
 1328:      394,   494,   407,     0,     0,   492,   414,   491,   410,     5,
 1329:       12,    13,   348,   310,   308,    36,     0,     0,   331,   413,
 1330:        7,   168,     0,     0,   101,   112,    99,   333,   463,   515,
 1331:        0,   446,   444,     0,     0,     0,   283,     0,   315,     0,
 1332:        0,     0,   284,   286,   285,   300,   299,   302,   301,   303,
 1333:      305,   306,   304,   294,   293,   288,   289,   287,   290,   291,
 1334:      292,   307,     0,   255,   270,   269,   268,   267,   266,   265,
 1335:      264,   263,   262,   261,   260,   168,   516,   447,     0,   464,
 1336:        0,     0,     0,     0,   509,   362,   471,     0,   485,     0,
 1337:      484,   362,   446,   168,   252,   447,     0,   378,    37,   233,
 1338:        0,     0,    49,   237,    71,    68,     0,     0,    53,     0,
 1339:        0,   416,     0,   405,     0,     0,     0,   397,     0,   396,
 1340:       26,   404,    27,     0,    22,    19,     0,   175,   183,   180,
 1341:      335,     0,     0,   513,   505,   506,    11,     0,   477,     0,
 1342:      476,   329,     0,   498,     0,   499,   501,   346,     3,     5,
 1343:      168,   248,     0,    28,    30,    31,    32,   462,     0,     0,
 1344:      167,   425,   426,     0,     0,     0,   364,   110,   114,     0,
 1345:        0,     0,   163,     0,     0,   352,   350,   445,   280,   282,
 1346:        0,     0,   276,   278,     0,   256,     0,   356,   354,   449,
 1347:      466,   430,   465,   470,   458,   459,   489,   488,     0,     0,
 1348:      370,    40,     0,    47,    44,   235,     0,     0,     0,     0,
 1349:        0,     0,     0,   400,   401,   423,     0,   418,   416,     0,
 1350:        0,   399,     0,     0,    24,   179,     0,   163,    93,    67,
 1351:        0,   478,   480,     0,   502,   504,   503,     0,     0,   168,
 1352:       16,     3,     0,   311,     0,     0,   171,   345,     0,    25,
 1353:        0,   366,     0,     0,   113,   116,   185,   163,   164,   165,
 1354:        0,   153,     0,   166,   451,   472,   168,   168,   316,   313,
 1355:      257,   359,   168,   168,   467,   443,   463,     0,     0,   483,
 1356:      383,   374,    29,    38,     0,     0,     0,   238,   118,     0,
 1357:      118,   120,   128,     0,    29,   126,    75,   134,   134,    54,
 1358:        0,   403,   419,   417,     0,   398,   406,     0,   181,     0,
 1359:      514,   480,   475,     0,   497,     0,     0,    14,   349,   463,
 1360:        0,   247,   246,   250,   241,     0,     0,   425,   426,   365,
 1361:      115,   185,     0,   217,     0,   338,   163,     0,   155,     0,
 1362:        0,     0,   382,     0,     0,   439,   442,   441,   434,     0,
 1363:        0,   487,   371,    27,   143,     0,    29,   141,    45,    50,
 1364:        0,     0,   121,     0,     0,    27,   134,     0,   134,     0,
 1365:      422,   421,   402,    78,   338,     0,   254,   500,   347,     0,
 1366:      435,   240,   463,     0,    33,   174,   217,   117,     0,     0,
 1367:      221,   222,   223,   226,   225,   224,   216,   104,   184,   189,
 1368:      186,     0,   215,   219,     0,     0,     0,     0,     0,   156,
 1369:        0,   353,   351,   314,   258,   357,   355,   168,   463,   463,
 1370:      431,   468,   469,     0,   373,   146,   149,     0,    27,   235,
 1371:      119,    72,    69,   129,     0,     0,     0,     0,     0,     0,
 1372:      130,     0,     0,     0,   479,   243,   443,     0,   245,   102,
 1373:        0,     0,   193,     0,    97,   220,     0,   188,    29,     0,
 1374:       29,     0,   159,     0,   158,     0,     0,     0,   433,   375,
 1375:      151,     0,     0,    39,    48,     0,     0,     0,     0,   127,
 1376:        0,   132,     0,   139,   140,   137,   131,   420,    79,    29,
 1377:      436,   242,     0,     0,   195,   197,   192,   229,     0,     0,
 1378:        0,    27,     0,   342,     0,    27,   160,     0,   157,   440,
 1379:      437,   438,     0,     0,     0,     0,   150,   142,    51,    29,
 1380:      124,    73,    70,   133,   135,    29,     0,    27,   232,   194,
 1381:        6,     0,   198,   199,     0,     0,   207,     0,     0,     0,
 1382:        0,   187,   190,     0,   100,   343,     0,   339,   334,     0,
 1383:      162,     0,    29,     0,     0,     0,    27,    29,    27,     0,
 1384:      336,   196,   200,   201,   211,     0,   202,     0,   230,   227,
 1385:        0,   231,     0,   340,   161,     0,    27,    42,   144,    29,
 1386:      122,    52,     0,    27,    80,     0,   210,   203,   204,   208,
 1387:        0,   163,   341,     0,     0,    27,   125,     0,   209,     0,
 1388:      228,     0,   147,   145,     0,    29,   205,     0,    29,   123,
 1389:       27,   213,    29,   191,    27,    81,    27,    86,   214,     0,
 1390:       82,    85,    87,     0,    88,    89,     0,     0,    90,     0,
 1391:       29,    27,    91
 1392: };
 1393: 
 1394: /* YYDEFGOTO[NTERM-NUM].  */
 1395: static const yytype_int16 yydefgoto[] =
 1396: {
 1397:       -1,     1,     2,     4,    83,    84,   499,   359,   188,   189,
 1398:       85,   218,   366,   503,   870,    87,   552,   704,   632,   775,
 1399:      310,   635,   168,   634,   555,   779,   905,   562,   558,   828,
 1400:      557,   827,   172,   184,   792,   876,   947,   967,   970,   971,
 1401:      972,   976,   979,   339,   340,    88,    89,   232,    90,   521,
 1402:       91,   518,   375,    92,   374,    93,   520,   603,   604,   711,
 1403:      640,   931,   871,   646,   457,   649,   717,   907,   875,   835,
 1404:      708,   776,   944,   820,   958,   823,   864,   610,   611,   612,
 1405:      509,   510,   192,   193,   197,   683,   748,   803,   920,   749,
 1406:      801,   846,   881,   882,   883,   884,   937,   885,   886,   887,
 1407:      935,   963,   750,   751,   752,   753,   848,   754,   166,   311,
 1408:      312,   556,   671,   672,   673,   733,   593,   594,    94,   300,
 1409:       95,   346,   692,   390,   391,   385,   387,   501,   389,   691,
 1410:      530,   130,   522,   577,   119,   757,   854,    97,   371,   589,
 1411:      500,   617,   616,   623,   622,   425,    98,   613,   156,   157,
 1412:      446,   631,   702,   774,   163,   221,   444,    99,   565,   471,
 1413:      100,   566,   296,   567,   182,   102,   291,   103,   104,   431,
 1414:      625,   770,   674,   796,   696,   697,   767,   698,   105,   106,
 1415:      107,   108,   233,   109,   110,   111,   112,   430,   541,   624,
 1416:      542,   543,   113,   489,   490,   661,   149,   150,   210,   211,
 1417:      492,   587,   114,   343,   580,   115
 1418: };
 1419: 
 1420: /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
 1421:    STATE-NUM.  */
 1422: #define YYPACT_NINF -736
 1423: static const yytype_int16 yypact[] =
 1424: {
 1425:     -736,    64,    80,  -736,  1600,  3962,  3962,   -83,  3962,  3962,
 1426:     3962,  3962,  3962,  3962,  3962,  -736,  3962,  3962,  3962,  3962,
 1427:     3962,  3962,  3962,   171,   171,  2521,  3962,   187,   -54,   -52,
 1428:     -736,  -736,    76,  -736,  -736,  -736,  -736,  3962,  -736,   -44,
 1429:      -36,    68,  -736,    86,  2652,  2783,    57,  -736,    82,  2914,
 1430:     -736,  3962,   -15,   -13,   145,   153,   -11,   100,   124,   152,
 1431:      168,  -736,  -736,  -736,   185,   195,  -736,  -736,  -736,  -736,
 1432:     -736,  -736,   172,   127,  -736,  -736,   205,  3962,  -736,  -736,
 1433:      179,   178,   303,   -66,  -736,    11,  -736,  -736,  -736,  -736,
 1434:     -736,  -736,   282,   295,  -736,  -736,   338,   323,   252,  -736,
 1435:     -736,  4480,  -736,   341,  1199,   249,  -736,   261,   349,   292,
 1436:     -736,   -10,  -736,    27,  -736,  -736,  -736,   320,   287,   338,
 1437:     5120,  5120,  3962,  5120,  5120,  1452,  -736,  -736,   399,  -736,
 1438:     3962,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,   296,
 1439:      205,   -77,   306,  -736,  -736,   336,  -736,   171,  1506,   302,
 1440:      456,  -736,   334,   205,   340,   345,  -736,  -736,   347,   361,
 1441:      -17,    27,  3045,  -736,  3962,  -736,    14,  5120,  2390,  -736,
 1442:     3962,  3962,   346,  3962,  -736,  4521,  -736,  4562,   358,   485,
 1443:     -736,   359,  5120,  1056,   362,  4605,   205,    98,    16,  -736,
 1444:     -736,    -8,    18,  -736,  -736,  -736,   487,    19,   338,   171,
 1445:      171,   171,   365,  -736,  2521,   131,    63,  -736,  4093,   171,
 1446:      290,  -736,   205,  -736,   260,   -58,   366,  4646,   364,  3962,
 1447:      231,   367,   317,   231,    53,   450,  -736,   455,  -736,   416,
 1448:     -736,  -736,     5,   477,    45,  -736,  3962,  -736,   513,  -736,
 1449:     -736,  3962,  3962,  3962,  3962,  3962,  3962,  3962,  3962,  3962,
 1450:     3962,  3962,  3962,  3962,  3962,  3962,  3962,  3962,  3962,  3962,
 1451:      187,  -736,  -736,  -736,  3176,  3962,  3962,  3962,  3962,  3962,
 1452:     3962,  3962,  3962,  3962,  3962,  3962,  -736,   170,  3962,  -736,
 1453:     3962,  3962,   179,   -27,   391,  4687,  -736,   205,   281,   188,
 1454:      188,  -736,  -736,  3307,  -736,  3438,  -736,   205,   340,    39,
 1455:      392,    39,  -736,    -9,  -736,  4730,  4772,  3962,  -736,   461,
 1456:     3962,   393,   540,  5120,   460,  1219,   481,  4813,  -736,  -736,
 1457:     -736,  1020,  -736,  -736,  -736,  -736,   162,   484,   -15,  -736,
 1458:     3962,  -736,  -736,   -13,  -736,  1020,   488,  -736,   413,    30,
 1459:     -736,  -736,  -736,    32,   414,   415,   143,   417,  -736,   497,
 1460:     -736,  -736,   514,  1549,   425,  -736,  -736,  -736,   -50,  -736,
 1461:     -736,  -736,  -736,  -736,  -736,  -736,  1731,  4226,  -736,  -736,
 1462:     -736,  3569,   569,   148,  -736,   462,  -736,  -736,  3962,   432,
 1463:     3962,   437,    -9,   438,    27,  3962,  5197,  3962,  -736,  3962,
 1464:     3962,  3962,  2571,  1582,  1373,  2700,  2700,  2700,  2700,  1288,
 1465:     1288,  1288,  1288,   568,   568,    61,    61,    61,   399,   399,
 1466:      399,  -736,   -16,  1452,  1452,  1452,  1452,  1452,  1452,  1452,
 1467:     1452,  1452,  1452,  1452,  1452,  3569,   432,   444,   446,  5120,
 1468:      443,   188,   447,  4267,  -736,   319,  -736,   171,  5120,   171,
 1469:     5020,   340,  -736,  3569,  -736,  -736,   188,  -736,   573,  5120,
 1470:      452,  4854,  -736,  -736,  -736,  -736,   590,    33,  -736,  1020,
 1471:     1020,  1020,   457,  -736,    25,   459,   205,   -56,   464,  -736,
 1472:     -736,  -736,   451,   549,  -736,  -736,  4308,  -736,  -736,   608,
 1473:     -736,   171,   471,  -736,  -736,  -736,  -736,   475,  -736,    34,
 1474:     -736,  -736,   221,  -736,  3962,  -736,  -736,  -736,   473,  -736,
 1475:     3569,   159,   492,  -736,  -736,  -736,  -736,  -736,   171,   480,
 1476:      634,    35,   210,  1020,   495,   205,   340,  -736,   522,   148,
 1477:      494,   498,   235,   493,  4353,  -736,  -736,    -9,  5160,  1452,
 1478:     3962,  5063,  5242,  5263,   187,  -736,   499,  -736,  -736,  -736,
 1479:     -736,  -736,     0,  -736,  -736,  -736,  -736,  -736,  3700,   500,
 1480:     -736,  -736,  2390,  -736,  -736,  3962,  3962,   171,     2,  1020,
 1481:      583,  1863,    -1,  -736,  -736,   531,   501,   652,  1020,   520,
 1482:      205,   118,   601,   572,  -736,  -736,  1020,   235,  -736,  -736,
 1483:      171,  -736,   143,   662,  -736,  -736,  -736,   521,  1418,  3569,
 1484:     -736,   525,   530,  -736,   206,   532,  -736,  -736,  3831,  -736,
 1485:      205,   340,   148,   529,   675,  -736,  -736,   235,  -736,  -736,
 1486:      534,   677,    36,  -736,  -736,  -736,  3569,  3569,  5220,  -736,
 1487:     -736,  -736,  3569,  3569,  -736,   537,  3962,  3962,   171,  5120,
 1488:     -736,  -736,  -736,  -736,  3962,  1995,   541,  5120,   574,   171,
 1489:      574,  -736,  -736,   680,  -736,  -736,  -736,   545,   546,  -736,
 1490:     1020,  -736,  1020,  -736,   550,   163,  -736,   552,  -736,   554,
 1491:     -736,   143,  -736,  3962,  -736,   553,   557,  -736,  -736,  3962,
 1492:      188,   576,   225,  -736,  -736,   551,   171,    37,  1034,   340,
 1493:      675,  -736,   148,   420,   559,   606,   182,   638,   700,   564,
 1494:      565,  3962,   392,   570,   571,  -736,   657,   663,  -736,   577,
 1495:     4394,  -736,   600,   311,  -736,  4896,  -736,  -736,  -736,  -736,
 1496:        2,   575,  -736,   578,  1020,   640,  -736,   328,  -736,   310,
 1497:     -736,   603,  -736,  -736,   606,    40,  1452,  -736,  -736,   580,
 1498:     -736,  -736,  3962,   576,  -736,  -736,   524,  -736,   660,   148,
 1499:     -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
 1500:     -736,   320,   396,  -736,    22,   581,   585,   605,    46,   745,
 1501:     1020,  -736,  -736,  5220,  -736,  -736,  -736,  3569,  3962,  3962,
 1502:      576,  -736,  -736,   188,  -736,  -736,   395,   611,   681,  3962,
 1503:     -736,  -736,  -736,  -736,   612,   348,   615,  3962,    43,   313,
 1504:     -736,  1020,   148,   618,  -736,  -736,   537,   619,   576,  -736,
 1505:      754,     6,  -736,   702,   338,  -736,   706,  -736,  -736,    48,
 1506:     -736,   707,   760,  1020,  -736,   631,   627,   628,  -736,  -736,
 1507:      403,   635,  2390,  -736,  -736,   636,   641,  2127,  2127,  -736,
 1508:      642,  -736,  4437,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
 1509:     -736,  -736,  1020,   148,  -736,   209,  -736,   773,    24,   721,
 1510:      781,   643,   722,  -736,    41,   644,   786,  1020,  -736,  -736,
 1511:     -736,  -736,   651,   775,   736,  3962,  -736,  -736,  -736,  -736,
 1512:     -736,  -736,  -736,  -736,  -736,  -736,   729,   653,  -736,  -736,
 1513:      715,   654,   209,  -736,   658,   718,   705,   661,   671,  1020,
 1514:      743,  -736,  -736,  1020,  -736,  -736,    50,  -736,  -736,  1020,
 1515:     -736,  3962,  -736,   666,  4937,  2259,   731,  -736,   294,   673,
 1516:     -736,  -736,  -736,  -736,   558,   148,  -736,   750,  -736,   811,
 1517:      682,  -736,   756,  -736,  -736,  4978,   762,  -736,  -736,  -736,
 1518:     -736,  -736,   684,   299,  -736,   761,   766,   825,  -736,  -736,
 1519:     1020,   235,  -736,   810,  2390,   753,  -736,   688,  -736,   148,
 1520:     -736,   691,  -736,  -736,   692,  -736,  -736,   324,  -736,  -736,
 1521:      689,  -736,  -736,  -736,   387,  -736,   693,   742,  -736,   696,
 1522:     -736,   742,  -736,   148,  -736,  -736,   776,   698,  -736,   699,
 1523:     -736,   697,  -736
 1524: };
 1525: 
 1526: /* YYPGOTO[NTERM-NUM].  */
 1527: static const yytype_int16 yypgoto[] =
 1528: {
 1529:     -736,  -736,  -328,  -736,   -23,  -736,  -736,  -736,  -736,   527,
 1530:     -736,  -250,  -736,  -736,     4,  -736,  -736,  -736,  -736,  -736,
 1531:     -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
 1532:     -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
 1533:     -119,  -736,  -736,  -736,   372,   491,   496,  -114,  -736,  -736,
 1534:     -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,   256,   220,
 1535:      151,  -736,    44,  -736,  -736,  -736,  -367,  -736,  -736,    31,
 1536:     -736,  -736,  -736,  -736,  -736,  -736,  -736,  -570,  -736,   181,
 1537:     -415,  -736,  -736,   535,  -736,   184,  -736,  -736,  -736,  -736,
 1538:     -736,  -736,  -736,  -736,    -7,  -736,  -736,  -736,  -736,  -736,
 1539:     -736,  -736,  -736,  -736,  -736,  -735,  -736,  -736,  -736,  -539,
 1540:     -736,  -736,   138,  -736,  -736,  -736,  -736,  -736,   796,  -736,
 1541:      -26,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
 1542:     -736,  -736,  -736,  -736,    -2,   150,  -736,  -736,  -736,  -736,
 1543:     -736,  -736,  -736,  -736,  -736,  -736,    12,  -364,  -249,  -736,
 1544:     -736,  -736,  -736,  -736,  -736,  -736,   186,   579,   368,  -736,
 1545:     -736,   309,   312,  -736,   734,   694,  -419,   454,   765,  -736,
 1546:     -736,  -736,  -650,  -736,  -736,  -736,  -736,    84,  -231,  -736,
 1547:      137,  -736,  -736,  -736,   -21,   -12,  -736,  -267,  -434,  -736,
 1548:     -736,    13,    66,   222,   300,  -736,   683,  -736,   405,   203,
 1549:     -736,  -736,  -736,  -736,  -736,  -736
 1550: };
 1551: 
 1552: /* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If
 1553:    positive, shift that token.  If negative, reduce the rule which
 1554:    number is the opposite.  If YYTABLE_NINF, syntax error.  */
 1555: #define YYTABLE_NINF -472
 1556: static const yytype_int16 yytable[] =
 1557: {
 1558:      141,   141,    96,   381,   154,   284,   159,   659,    86,   517,
 1559:      536,   411,   550,   432,   843,   160,   636,   805,   546,   227,
 1560:      547,   731,   307,   181,   328,   647,   333,   336,   549,   187,
 1561:      806,   498,   890,   639,   280,   142,   142,   684,   481,   155,
 1562:      483,   560,   582,  -169,   280,  -172,   427,   534,   582,   896,
 1563:      214,   280,   280,   215,   198,   116,   116,    34,   381,   427,
 1564:      190,   626,   196,   116,     3,    34,   122,   687,   442,   833,
 1565:      445,   225,   226,   116,   472,    34,   376,   811,  -361,   852,
 1566:       -2,   922,   225,   226,   338,   592,  -363,    47,  -361,   596,
 1567:      225,   362,   225,   161,  -362,   162,   138,   164,   225,   497,
 1568:       34,   283,   165,   569,   138,   169,   257,   258,   259,   688,
 1569:      260,   523,    34,   170,   138,   198,   379,   288,    34,   812,
 1570:      818,   853,  -445,   923,   141,   281,   205,  -448,   178,   139,
 1571:      298,   355,   140,   186,  -448,   281,   205,   139,    80,  -444,
 1572:      140,   191,   281,   281,   330,   314,    80,   139,   731,   303,
 1573:      140,   648,   627,   179,   377,   605,    80,   844,   845,   142,
 1574:      145,   145,   228,   326,   158,   308,   207,   329,   141,   334,
 1575:      337,   591,   309,   807,   666,   891,   141,   141,   141,   936,
 1576:      482,   282,   484,   561,   583,  -169,   141,  -172,   327,   358,
 1577:      794,   897,   348,    80,   834,   208,   209,   380,   116,    80,
 1578:      540,   689,   690,   142,   350,   208,   209,   693,   694,   701,
 1579:      369,   142,   142,   142,   116,   540,    34,   171,  -170,   116,
 1580:     -249,   142,   382,   264,   265,   266,   267,   268,   269,   270,
 1581:      271,   272,   273,   274,   275,   173,   730,   154,   605,   159,
 1582:      826,   426,   116,    34,    34,   205,   225,   383,   160,   199,
 1583:      206,   205,   473,   116,   349,   138,   220,   735,   116,   436,
 1584:       34,    34,  -363,   194,   435,   382,   225,   669,   487,  -428,
 1585:     -428,   195,   155,   200,   441,   212,   116,   382,   382,   213,
 1586:      880,   719,  -249,   138,   145,   620,   732,   382,   139,   382,
 1587:      428,   140,   584,   514,   585,   586,   515,    80,   467,   138,
 1588:      384,   201,   383,   428,   205,   187,   116,  -362,   608,   609,
 1589:      225,   225,   467,   207,   208,   209,   139,   202,   737,   140,
 1590:      208,   209,   380,   141,    80,    80,   161,   514,   145,   670,
 1591:      515,   219,   152,   468,   203,   153,   145,   145,   145,   819,
 1592:      380,    80,    80,   384,   204,   511,   145,   468,  -244,   785,
 1593:      516,   789,   815,   229,   514,   384,   384,   515,   142,   699,
 1594:     -170,   608,   609,   205,    96,   384,   230,   384,   355,   231,
 1595:      504,   951,   527,   208,   209,   802,   205,   -41,   -41,   -41,
 1596:      514,   223,   703,   515,  -450,  -154,  -138,  -138,  -138,   141,
 1597:      205,  -136,  -136,  -136,   715,   355,   234,   158,   276,   511,
 1598:      262,   263,   729,   787,   788,   277,   787,   788,   225,   351,
 1599:      278,   360,   361,   357,   141,   279,   141,   511,    47,   382,
 1600:      786,   787,   788,   351,   142,   357,   351,   357,   838,   225,
 1601:      362,   356,   208,   209,   382,   212,   467,   467,   467,   540,
 1602:      830,   787,   788,   571,   287,   208,   209,  -138,   260,   142,
 1603:      289,   142,  -136,  -148,  -148,  -148,   778,   294,   141,   208,
 1604:      209,   821,   822,   790,   295,   797,   836,   225,   497,   862,
 1605:      863,   468,   468,   468,   511,   961,   962,   143,   146,   879,
 1606:      290,   888,   297,   145,   302,   141,   222,   224,   225,   299,
 1607:      467,   301,   601,   142,  -218,   316,   516,   384,   321,   516,
 1608:      335,   816,   817,   740,   741,   742,   743,   744,   745,   320,
 1609:      322,   154,   384,   159,   324,   345,   363,   365,   888,   738,
 1610:      142,   370,   160,   368,   739,   468,   372,   740,   741,   742,
 1611:      743,   744,   745,   746,   141,   141,   467,   373,   378,   388,
 1612:      377,   443,   540,   450,   452,   467,   155,   655,   453,   145,
 1613:      454,   938,   456,   467,   516,   474,   633,   141,   851,   141,
 1614:      855,   479,   480,   511,   485,   645,   486,   491,   493,   142,
 1615:      142,   468,   677,   747,   145,   494,   145,   679,   496,   516,
 1616:      468,  -471,   513,   519,   516,   956,   525,   526,   468,   877,
 1617:      511,   511,   142,   537,   142,   538,   511,   511,   539,   551,
 1618:      161,   553,   544,   559,   573,   141,   568,   570,   572,   975,
 1619:      254,   255,   256,   257,   258,   259,   141,   260,   145,   906,
 1620:      574,   576,   579,   738,   581,   908,   590,   467,   739,   467,
 1621:      597,   740,   741,   742,   743,   744,   745,   746,   141,   707,
 1622:      142,   595,   598,   600,   602,   145,   606,   607,   614,   621,
 1623:      630,   142,   926,   141,   643,   650,   651,   933,   382,   516,
 1624:      652,   350,   468,   516,   468,   740,   741,   742,   743,   744,
 1625:      745,   158,   656,   142,   657,   663,   664,   799,   667,   945,
 1626:      668,   681,   675,   682,   685,   686,   695,   141,   142,   470,
 1627:      849,   467,   709,   714,   145,   145,   716,   718,   710,   670,
 1628:      722,   723,   734,   478,   724,   960,   727,   728,   964,   755,
 1629:      756,   759,   966,   760,   761,   762,   516,   145,   768,   145,
 1630:      765,   766,   142,   773,   769,   781,   468,   791,   782,   784,
 1631:      981,   800,   771,   808,   809,   795,   384,   467,   101,   120,
 1632:      121,   511,   123,   124,   125,   126,   127,   128,   129,   804,
 1633:      131,   132,   133,   134,   135,   136,   137,   810,   813,   148,
 1634:      151,   382,   824,   829,   825,   145,   831,   842,   467,   516,
 1635:      839,   167,   468,   857,   841,   847,   145,   850,   175,   177,
 1636:      856,   859,   860,   861,   865,   185,   889,   867,   144,   144,
 1637:      467,   868,   892,   873,   893,   895,   894,   898,   145,   899,
 1638:      901,   902,   909,   468,   903,  -206,   910,   911,   914,   913,
 1639:      915,   217,   916,   145,   183,   917,   919,   927,   932,   467,
 1640:      516,   939,   516,   934,   940,   468,   866,   563,   564,   942,
 1641:     -152,   941,   948,   949,   467,   946,   952,  -212,   954,   384,
 1642:      955,   957,   965,   959,   969,   973,   968,   145,   978,   977,
 1643:      982,   980,   974,   578,   468,   475,   285,   505,   680,   516,
 1644:      713,   780,   506,   874,   286,   736,   467,   758,   477,   468,
 1645:      467,   798,   872,   216,   793,   912,   467,   654,   764,   653,
 1646:      840,   599,   662,   725,     0,   331,     0,   347,     0,     0,
 1647:        0,     0,   516,     0,     0,     0,   305,     0,   306,     0,
 1648:      469,   468,   101,     0,   313,   468,     0,   317,     0,   930,
 1649:        0,   468,   292,     0,   469,     0,     0,   467,   516,     0,
 1650:        0,     0,     0,     0,     0,     0,   516,   642,     0,     0,
 1651:        0,     0,     0,     0,     0,     0,   315,     0,   148,     0,
 1652:        0,     0,   353,     0,   658,     0,     0,     0,   953,     0,
 1653:      516,     0,   468,   367,     0,     0,   332,     0,     0,     0,
 1654:        0,     0,     0,     0,   341,   342,   344,     0,     0,     0,
 1655:      386,     0,     0,     0,   354,   392,   393,   394,   395,   396,
 1656:      397,   398,   399,   400,   401,   402,   403,   404,   405,   406,
 1657:      407,   408,   409,   410,     0,     0,     0,     0,   413,   414,
 1658:      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
 1659:        0,     0,   429,     0,   429,   433,     0,     0,   720,     0,
 1660:      721,     0,     0,     0,     0,     0,     0,   438,     0,   440,
 1661:        0,     0,     0,     0,     0,     0,     0,     0,   469,   469,
 1662:      469,   449,  -173,     0,   451,     0,     0,   264,   265,   266,
 1663:      267,   268,   269,   270,   271,   272,   273,   274,   275,     0,
 1664:        0,     0,   459,   460,   476,     0,     0,     0,     0,   264,
 1665:      265,   266,   267,   268,   269,   270,   271,   272,   273,   274,
 1666:      275,   461,   783,     0,     0,     0,     0,     0,     0,    30,
 1667:       31,   116,   469,  -428,  -428,     0,     0,     0,     0,    36,
 1668:      101,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 1669:        0,   488,   429,     0,   524,  -428,  -428,     0,     0,   528,
 1670:        0,   529,     0,   531,   532,   533,     0,     0,   814,     0,
 1671:        0,     0,   138,     0,     0,     0,   512,     0,   469,     0,
 1672:        0,     0,     0,     0,     0,     0,   462,   469,   463,    67,
 1673:       68,    69,    70,    71,     0,   469,     0,     0,     0,   837,
 1674:      464,     0,     0,     0,     0,   465,    74,    75,   466,     0,
 1675:        0,     0,     0,     0,     0,     0,     0,   535,     0,     0,
 1676:        0,   858,     0,     0,  -173,     0,     0,     0,     0,     0,
 1677:      512,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 1678:        0,     0,   292,     0,   292,     0,     0,   323,   512,     0,
 1679:      878,     0,   264,   265,   266,   267,   268,   269,   270,   271,
 1680:      272,   273,   274,   275,     0,   900,     0,     0,   588,   469,
 1681:        0,   469,   264,   265,   266,   267,   268,   269,   270,   271,
 1682:      272,   273,   274,   275,     0,     0,   341,     0,     0,     0,
 1683:        0,     0,     0,     0,     0,     0,     0,   918,  -428,  -428,
 1684:        0,   921,     0,     0,   618,   512,     0,   924,     0,     0,
 1685:        0,     0,     0,   292,     0,     0,     0,     0,  -428,  -428,
 1686:        0,     0,   629,     0,     0,     0,   101,     0,     0,   313,
 1687:      637,     0,     0,   469,     0,   101,     0,     0,     0,     0,
 1688:        0,     0,     0,     0,     0,     0,     0,     0,   950,   455,
 1689:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 1690:        0,     0,   638,   641,  -472,  -472,  -472,  -472,   252,   253,
 1691:      254,   255,   256,   257,   258,   259,     0,   260,     0,   469,
 1692:        0,     0,     0,     0,     0,   660,     0,   488,     0,     0,
 1693:        0,     0,     0,     0,   512,     0,     0,     0,     0,     0,
 1694:      429,   700,     0,   678,     0,     0,     0,     0,   705,   101,
 1695:      469,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 1696:        0,   512,   512,     0,     0,     0,     0,   512,   512,     0,
 1697:        0,     0,   469,   292,     0,     0,     0,   726,     0,     0,
 1698:        0,     0,     0,   429,   712,   244,   245,   246,   247,   248,
 1699:      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
 1700:      259,   469,   260,     0,     0,   763,   488,   235,   236,   237,
 1701:        0,     0,     0,     0,     0,     0,   469,     0,     0,     0,
 1702:        0,   292,     0,   238,     0,   239,   240,   241,   242,   243,
 1703:      244,   245,   246,   247,   248,   249,   250,   251,   252,   253,
 1704:      254,   255,   256,   257,   258,   259,   429,   260,   469,     0,
 1705:        0,     0,   469,     0,     0,   641,     0,   238,   469,   239,
 1706:      240,   241,   242,   243,   244,   245,   246,   247,   248,   249,
 1707:      250,   251,   252,   253,   254,   255,   256,   257,   258,   259,
 1708:        0,   260,   429,   429,     0,     0,     0,     0,     0,     0,
 1709:        0,     0,     0,   313,     0,   235,   236,   237,     0,   469,
 1710:        0,   832,     0,     0,     0,     0,     0,     0,     0,     0,
 1711:        0,   238,   512,   239,   240,   241,   242,   243,   244,   245,
 1712:      246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
 1713:      256,   257,   258,   259,     0,   260,   101,     0,   235,   236,
 1714:      237,   101,   101,     0,     0,     0,     0,     0,     0,     0,
 1715:        0,     0,     0,   665,   238,     0,   239,   240,   241,   242,
 1716:      243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
 1717:      253,   254,   255,   256,   257,   258,   259,     0,   260,   904,
 1718:        0,     0,     0,     5,     6,     7,     8,     9,     0,     0,
 1719:        0,     0,    10,   243,   244,   245,   246,   247,   248,   249,
 1720:      250,   251,   252,   253,   254,   255,   256,   257,   258,   259,
 1721:      293,   260,     0,     0,     0,   925,     0,     0,     0,   101,
 1722:        0,     0,    11,    12,     0,     0,     0,     0,    13,     0,
 1723:       14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
 1724:       24,    25,    26,    27,    28,    29,     0,     0,     0,    30,
 1725:       31,    32,    33,    34,     0,    35,     0,     0,   101,    36,
 1726:       37,    38,    39,     0,    40,     0,    41,     0,    42,     0,
 1727:        0,    43,     0,     0,     0,    44,    45,    46,    47,    48,
 1728:       49,    50,   495,    51,    52,     0,    53,     0,     0,     0,
 1729:       54,    55,    56,     0,    57,    58,    59,    60,    61,    62,
 1730:       63,     0,     0,     0,     0,    64,    65,     0,    66,    67,
 1731:       68,    69,    70,    71,     5,     6,     7,     8,     9,     0,
 1732:       72,     0,     0,    10,     0,    73,    74,    75,    76,    77,
 1733:        0,    78,    79,     0,    80,     0,    81,    82,     0,     0,
 1734:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 1735:        0,     0,     0,    11,    12,     0,     0,     0,     0,    13,
 1736:        0,    14,    15,    16,    17,    18,    19,    20,    21,    22,
 1737:       23,    24,    25,    26,    27,    28,    29,     0,     0,     0,
 1738:       30,    31,    32,    33,    34,     0,    35,     0,     0,     0,
 1739:       36,    37,    38,    39,     0,    40,     0,    41,     0,    42,
 1740:        0,     0,    43,     0,     0,     0,    44,    45,    46,    47,
 1741:        0,    49,    50,     0,    51,     0,     0,    53,     0,     0,
 1742:        0,    54,    55,    56,     0,    57,    58,    59,   502,    61,
 1743:       62,    63,     0,     0,     0,     0,    64,    65,     0,    66,
 1744:       67,    68,    69,    70,    71,     0,     5,     6,     7,     8,
 1745:        9,    72,     0,     0,     0,    10,   118,    74,    75,    76,
 1746:       77,     0,    78,    79,     0,    80,     0,    81,    82,   644,
 1747:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 1748:        0,     0,     0,     0,     0,    11,    12,     0,     0,     0,
 1749:        0,    13,     0,    14,    15,    16,    17,    18,    19,    20,
 1750:       21,    22,    23,    24,    25,    26,    27,    28,    29,     0,
 1751:        0,     0,    30,    31,    32,    33,    34,     0,    35,     0,
 1752:        0,     0,    36,    37,    38,    39,     0,    40,     0,    41,
 1753:        0,    42,     0,     0,    43,     0,     0,     0,    44,    45,
 1754:       46,    47,     0,    49,    50,     0,    51,     0,     0,    53,
 1755:        0,     0,     0,     0,     0,    56,     0,    57,    58,    59,
 1756:        0,     0,     0,     0,     0,     0,     0,     0,    64,    65,
 1757:        0,    66,    67,    68,    69,    70,    71,     0,     5,     6,
 1758:        7,     8,     9,    72,     0,     0,     0,    10,   118,    74,
 1759:       75,    76,    77,     0,    78,    79,     0,    80,     0,    81,
 1760:       82,   706,     0,     0,     0,     0,     0,     0,     0,     0,
 1761:        0,     0,     0,     0,     0,     0,     0,    11,    12,     0,
 1762:        0,     0,     0,    13,     0,    14,    15,    16,    17,    18,
 1763:       19,    20,    21,    22,    23,    24,    25,    26,    27,    28,
 1764:       29,     0,     0,     0,    30,    31,    32,    33,    34,     0,
 1765:       35,     0,     0,     0,    36,    37,    38,    39,     0,    40,
 1766:        0,    41,     0,    42,     0,     0,    43,     0,     0,     0,
 1767:       44,    45,    46,    47,     0,    49,    50,     0,    51,     0,
 1768:        0,    53,     0,     0,     0,     0,     0,    56,     0,    57,
 1769:       58,    59,     0,     0,     0,     0,     0,     0,     0,     0,
 1770:       64,    65,     0,    66,    67,    68,    69,    70,    71,     0,
 1771:        5,     6,     7,     8,     9,    72,     0,     0,     0,    10,
 1772:      118,    74,    75,    76,    77,     0,    78,    79,     0,    80,
 1773:        0,    81,    82,   869,     0,     0,     0,     0,     0,     0,
 1774:        0,     0,     0,     0,     0,     0,     0,     0,     0,    11,
 1775:       12,     0,     0,     0,     0,    13,     0,    14,    15,    16,
 1776:       17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
 1777:       27,    28,    29,     0,     0,     0,    30,    31,    32,    33,
 1778:       34,     0,    35,     0,     0,     0,    36,    37,    38,    39,
 1779:        0,    40,     0,    41,     0,    42,     0,     0,    43,     0,
 1780:        0,     0,    44,    45,    46,    47,     0,    49,    50,     0,
 1781:       51,     0,     0,    53,     0,     0,     0,     0,     0,    56,
 1782:        0,    57,    58,    59,     0,     0,     0,     0,     0,     0,
 1783:        0,     0,    64,    65,     0,    66,    67,    68,    69,    70,
 1784:       71,     0,     5,     6,     7,     8,     9,    72,     0,     0,
 1785:        0,    10,   118,    74,    75,    76,    77,     0,    78,    79,
 1786:        0,    80,     0,    81,    82,   929,     0,     0,     0,     0,
 1787:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 1788:        0,    11,    12,     0,     0,     0,     0,    13,     0,    14,
 1789:       15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
 1790:       25,    26,    27,    28,    29,     0,     0,     0,    30,    31,
 1791:       32,    33,    34,     0,    35,     0,     0,     0,    36,    37,
 1792:       38,    39,     0,    40,     0,    41,     0,    42,     0,     0,
 1793:       43,     0,     0,     0,    44,    45,    46,    47,     0,    49,
 1794:       50,     0,    51,     0,     0,    53,     0,     0,     0,     0,
 1795:        0,    56,     0,    57,    58,    59,     0,     0,     0,     0,
 1796:        0,     0,     0,     0,    64,    65,     0,    66,    67,    68,
 1797:       69,    70,    71,     5,     6,     7,     8,     9,     0,    72,
 1798:        0,     0,    10,     0,   118,    74,    75,    76,    77,     0,
 1799:       78,    79,     0,    80,     0,    81,    82,     0,     0,     0,
 1800:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 1801:        0,     0,    11,    12,     0,     0,     0,     0,    13,     0,
 1802:       14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
 1803:       24,    25,    26,    27,    28,    29,     0,     0,     0,    30,
 1804:       31,    32,    33,    34,     0,    35,     0,     0,     0,    36,
 1805:       37,    38,    39,     0,    40,     0,    41,     0,    42,     0,
 1806:        0,    43,     0,     0,     0,    44,    45,    46,    47,     0,
 1807:       49,    50,     0,    51,     0,     0,    53,     0,     0,     0,
 1808:        0,     0,    56,     0,    57,    58,    59,     0,     0,     0,
 1809:        0,     0,     0,     0,     0,    64,    65,     0,    66,    67,
 1810:       68,    69,    70,    71,     5,     6,     7,     8,     9,     0,
 1811:       72,     0,     0,    10,     0,   118,    74,    75,    76,    77,
 1812:        0,    78,    79,     0,    80,     0,    81,    82,     0,     0,
 1813:        0,     0,   147,     0,     0,     0,     0,     0,     0,     0,
 1814:        0,     0,     0,    11,    12,     0,     0,     0,     0,    13,
 1815:        0,    14,    15,    16,    17,    18,    19,    20,    21,    22,
 1816:       23,    24,    25,    26,    27,    28,     0,     0,     0,     0,
 1817:       30,    31,   116,    33,    34,     0,     0,     0,     0,     0,
 1818:       36,   242,   243,   244,   245,   246,   247,   248,   249,   250,
 1819:      251,   252,   253,   254,   255,   256,   257,   258,   259,    47,
 1820:      260,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 1821:        0,     0,     0,   117,     0,     0,    58,    59,     0,     0,
 1822:        0,     0,     0,     0,     0,     0,    64,    65,     0,    66,
 1823:       67,    68,    69,    70,    71,     5,     6,     7,     8,     9,
 1824:        0,    72,     0,     0,    10,     0,   118,    74,    75,    76,
 1825:       77,     0,     0,     0,     0,    80,     0,    81,    82,     0,
 1826:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 1827:        0,     0,     0,     0,    11,    12,     0,     0,     0,     0,
 1828:       13,     0,    14,    15,    16,    17,    18,    19,    20,    21,
 1829:       22,    23,    24,    25,    26,    27,    28,     0,     0,     0,
 1830:        0,    30,    31,   116,    33,    34,     0,     0,     0,     0,
 1831:        0,    36,  -472,  -472,  -472,  -472,   248,   249,   250,   251,
 1832:      252,   253,   254,   255,   256,   257,   258,   259,     0,   260,
 1833:       47,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 1834:        0,     0,     0,     0,   117,     0,     0,    58,    59,     0,
 1835:        0,     0,     0,     0,     0,     0,     0,    64,    65,     0,
 1836:       66,    67,    68,    69,    70,    71,     5,     6,     7,     8,
 1837:        9,     0,    72,     0,     0,    10,     0,   118,    74,    75,
 1838:       76,    77,     0,   174,     0,     0,    80,     0,    81,    82,
 1839:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 1840:        0,     0,     0,     0,     0,    11,    12,     0,     0,     0,
 1841:        0,    13,     0,    14,    15,    16,    17,    18,    19,    20,
 1842:       21,    22,    23,    24,    25,    26,    27,    28,     0,     0,
 1843:        0,     0,    30,    31,   116,    33,    34,     0,     0,     0,
 1844:        0,     0,    36,     0,     0,     0,     0,     0,     0,     0,
 1845:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 1846:        0,    47,     0,     0,     0,     0,     0,     0,     0,     0,
 1847:        0,     0,     0,     0,     0,   117,     0,     0,    58,    59,
 1848:        0,     0,     0,     0,     0,     0,     0,     0,    64,    65,
 1849:        0,    66,    67,    68,    69,    70,    71,     5,     6,     7,
 1850:        8,     9,     0,    72,     0,     0,    10,     0,   118,    74,
 1851:       75,    76,    77,     0,   176,     0,     0,    80,     0,    81,
 1852:       82,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 1853:        0,     0,     0,     0,     0,     0,    11,    12,     0,     0,
 1854:        0,     0,    13,     0,    14,    15,    16,    17,    18,    19,
 1855:       20,    21,    22,    23,    24,    25,    26,    27,    28,     0,
 1856:        0,     0,     0,    30,    31,   116,    33,    34,     0,     0,
 1857:        0,     0,     0,    36,     0,     0,     0,     0,     0,     0,
 1858:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 1859:        0,     0,    47,     0,     0,     0,     0,     0,     0,     0,
 1860:        0,     0,     0,     0,     0,     0,   117,     0,     0,    58,
 1861:       59,     0,     0,     0,     0,     0,     0,     0,     0,    64,
 1862:       65,     0,    66,    67,    68,    69,    70,    71,     5,     6,
 1863:        7,     8,     9,     0,    72,     0,     0,    10,     0,   118,
 1864:       74,    75,    76,    77,     0,   180,     0,     0,    80,     0,
 1865:       81,    82,     0,     0,     0,     0,     0,     0,     0,     0,
 1866:        0,     0,     0,     0,     0,     0,     0,    11,    12,     0,
 1867:        0,     0,     0,    13,     0,    14,    15,    16,    17,    18,
 1868:       19,    20,    21,    22,    23,    24,    25,    26,    27,    28,
 1869:        0,     0,     0,     0,    30,    31,   116,    33,    34,     0,
 1870:        0,     0,     0,     0,    36,     0,     0,     0,     0,     0,
 1871:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 1872:        0,     0,     0,    47,     0,     0,     0,     0,     0,     0,
 1873:        0,     0,     0,     0,     0,     0,     0,   117,     0,     0,
 1874:       58,    59,     0,     0,     0,     0,     0,     0,     0,     0,
 1875:       64,    65,     0,    66,    67,    68,    69,    70,    71,     5,
 1876:        6,     7,     8,     9,     0,    72,     0,     0,    10,     0,
 1877:      118,    74,    75,    76,    77,   304,     0,     0,     0,    80,
 1878:        0,    81,    82,     0,     0,     0,     0,   412,     0,     0,
 1879:        0,     0,     0,     0,     0,     0,     0,     0,    11,    12,
 1880:        0,     0,     0,     0,    13,     0,    14,    15,    16,    17,
 1881:       18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
 1882:       28,     0,     0,     0,     0,    30,    31,   116,    33,    34,
 1883:        0,     0,     0,     0,     0,    36,     0,     0,     0,     0,
 1884:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 1885:        0,     0,     0,     0,    47,     0,     0,     0,     0,     0,
 1886:        0,     0,     0,     0,     0,     0,     0,     0,   117,     0,
 1887:        0,    58,    59,     0,     0,     0,     0,     0,     0,     0,
 1888:        0,    64,    65,     0,    66,    67,    68,    69,    70,    71,
 1889:        5,     6,     7,     8,     9,     0,    72,     0,     0,    10,
 1890:        0,   118,    74,    75,    76,    77,     0,     0,     0,     0,
 1891:       80,     0,    81,    82,     0,     0,     0,     0,   437,     0,
 1892:        0,     0,     0,     0,     0,     0,     0,     0,     0,    11,
 1893:       12,     0,     0,     0,     0,    13,     0,    14,    15,    16,
 1894:       17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
 1895:       27,    28,     0,     0,     0,     0,    30,    31,   116,    33,
 1896:       34,     0,     0,     0,     0,     0,    36,     0,     0,     0,
 1897:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 1898:        0,     0,     0,     0,     0,    47,     0,     0,     0,     0,
 1899:        0,     0,     0,     0,     0,     0,     0,     0,     0,   117,
 1900:        0,     0,    58,    59,     0,     0,     0,     0,     0,     0,
 1901:        0,     0,    64,    65,     0,    66,    67,    68,    69,    70,
 1902:       71,     5,     6,     7,     8,     9,     0,    72,     0,     0,
 1903:       10,     0,   118,    74,    75,    76,    77,     0,     0,     0,
 1904:        0,    80,     0,    81,    82,     0,     0,     0,     0,   439,
 1905:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 1906:       11,    12,     0,     0,     0,     0,    13,     0,    14,    15,
 1907:       16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
 1908:       26,    27,    28,     0,     0,     0,     0,    30,    31,   116,
 1909:       33,    34,     0,     0,     0,     0,     0,    36,     0,     0,
 1910:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 1911:        0,     0,     0,     0,     0,     0,    47,     0,     0,     0,
 1912:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 1913:      117,     0,     0,    58,    59,     0,     0,     0,     0,     0,
 1914:        0,     0,     0,    64,    65,     0,    66,    67,    68,    69,
 1915:       70,    71,     5,     6,     7,     8,     9,     0,    72,     0,
 1916:        0,    10,     0,   118,    74,    75,    76,    77,     0,     0,
 1917:        0,     0,    80,     0,    81,    82,     0,     0,     0,     0,
 1918:      508,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 1919:        0,    11,    12,     0,     0,     0,     0,    13,     0,    14,
 1920:       15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
 1921:       25,    26,    27,    28,     0,     0,     0,     0,    30,    31,
 1922:      116,    33,    34,     0,     0,     0,     0,     0,    36,     0,
 1923:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 1924:        0,     0,     0,     0,     0,     0,     0,    47,     0,     0,
 1925:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 1926:        0,   117,     0,     0,    58,    59,     0,     0,     0,     0,
 1927:        0,     0,     0,     0,    64,    65,     0,    66,    67,    68,
 1928:       69,    70,    71,     5,     6,     7,     8,     9,     0,    72,
 1929:        0,     0,    10,     0,   118,    74,    75,    76,    77,     0,
 1930:        0,     0,     0,    80,     0,    81,    82,     0,     0,     0,
 1931:        0,   628,     0,     0,     0,     0,     0,     0,     0,     0,
 1932:        0,     0,    11,    12,     0,     0,     0,     0,    13,     0,
 1933:       14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
 1934:       24,    25,    26,    27,    28,     0,     0,     0,     0,    30,
 1935:       31,   116,    33,    34,     0,     0,     0,     0,     0,    36,
 1936:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 1937:        0,     0,     0,     0,     0,     0,     0,     0,    47,     0,
 1938:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 1939:        0,     0,   117,     0,     0,    58,    59,     0,     0,     0,
 1940:        0,     0,     0,     0,     0,    64,    65,     0,    66,    67,
 1941:       68,    69,    70,    71,     5,     6,     7,     8,     9,     0,
 1942:       72,     0,     0,    10,     0,   118,    74,    75,    76,    77,
 1943:        0,     0,     0,     0,    80,     0,    81,    82,     0,     0,
 1944:        0,     0,   676,     0,     0,     0,     0,     0,     0,     0,
 1945:        0,     0,     0,    11,    12,     0,     0,     0,     0,    13,
 1946:        0,    14,    15,    16,    17,    18,    19,    20,    21,    22,
 1947:       23,    24,    25,    26,    27,    28,     0,     0,     0,     0,
 1948:       30,    31,   116,    33,    34,     0,     0,     0,     0,     0,
 1949:       36,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 1950:        0,     0,     0,     0,     0,     0,     0,     0,     0,    47,
 1951:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 1952:        0,     0,     0,   117,     0,     0,    58,    59,     0,     0,
 1953:        0,     0,     0,     0,     0,     0,    64,    65,     0,    66,
 1954:       67,    68,    69,    70,    71,     5,     6,     7,     8,     9,
 1955:        0,    72,     0,     0,    10,     0,   118,    74,    75,    76,
 1956:       77,     0,     0,     0,     0,    80,     0,    81,    82,     0,
 1957:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 1958:        0,     0,     0,     0,    11,    12,     0,     0,     0,     0,
 1959:       13,     0,    14,    15,    16,    17,    18,    19,    20,    21,
 1960:       22,    23,    24,    25,    26,    27,    28,     0,     0,     0,
 1961:        0,    30,    31,   116,    33,    34,     0,     0,     0,     0,
 1962:        0,    36,     0,     0,     0,     0,     0,     0,     0,     0,
 1963:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 1964:       47,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 1965:        0,     0,     0,     0,   117,     0,     0,    58,    59,     0,
 1966:        0,     0,     0,     0,     0,     0,     0,    64,    65,     0,
 1967:       66,    67,    68,    69,    70,    71,     5,     6,     7,     8,
 1968:        9,     0,    72,     0,     0,    10,     0,   118,    74,    75,
 1969:       76,    77,     0,     0,     0,     0,    80,     0,    81,    82,
 1970:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 1971:        0,     0,     0,     0,     0,    11,    12,     0,     0,     0,
 1972:        0,    13,     0,    14,    15,    16,    17,    18,    19,    20,
 1973:       21,    22,    23,    24,    25,    26,    27,    28,     0,     0,
 1974:        0,     0,    30,    31,   116,   352,    34,     0,     0,     0,
 1975:        0,     0,    36,     0,     0,     0,     0,     0,     0,     0,
 1976:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 1977:        0,    47,     0,     0,     0,     0,     0,     0,     0,     0,
 1978:        0,     0,     0,     0,     0,   117,     0,     0,    58,    59,
 1979:        0,     0,     0,     0,     0,     0,     0,     0,    64,    65,
 1980:        0,    66,    67,    68,    69,    70,    71,     0,     0,     0,
 1981:        0,     0,     0,    72,     0,   235,   236,   237,   118,    74,
 1982:       75,    76,    77,     0,     0,     0,     0,    80,     0,    81,
 1983:       82,   238,     0,   239,   240,   241,   242,   243,   244,   245,
 1984:      246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
 1985:      256,   257,   258,   259,     0,   260,   235,   236,   237,     0,
 1986:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 1987:        0,     0,   238,     0,   239,   240,   241,   242,   243,   244,
 1988:      245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
 1989:      255,   256,   257,   258,   259,     0,   260,   235,   236,   237,
 1990:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 1991:        0,     0,     0,   238,     0,   239,   240,   241,   242,   243,
 1992:      244,   245,   246,   247,   248,   249,   250,   251,   252,   253,
 1993:      254,   255,   256,   257,   258,   259,     0,   260,     0,     0,
 1994:        0,     0,   235,   236,   237,     0,     0,     0,     0,     0,
 1995:        0,     0,     0,     0,     0,     0,     0,     0,   238,   507,
 1996:      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
 1997:      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
 1998:      259,     0,   260,   235,   236,   237,     0,     0,     0,     0,
 1999:        0,     0,     0,     0,     0,     0,     0,     0,     0,   238,
 2000:      545,   239,   240,   241,   242,   243,   244,   245,   246,   247,
 2001:      248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
 2002:      258,   259,     0,   260,     0,     0,   235,   236,   237,     0,
 2003:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 2004:        0,   575,   238,   833,   239,   240,   241,   242,   243,   244,
 2005:      245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
 2006:      255,   256,   257,   258,   259,     0,   260,     0,     0,   235,
 2007:      236,   237,     0,     0,     0,     0,     0,     0,     0,     0,
 2008:        0,     0,     0,     0,     0,   238,   615,   239,   240,   241,
 2009:      242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
 2010:      252,   253,   254,   255,   256,   257,   258,   259,     0,   260,
 2011:      235,   236,   237,     0,     0,     0,     0,     0,     0,     0,
 2012:        0,     0,     0,     0,     0,     0,   238,   772,   239,   240,
 2013:      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
 2014:      251,   252,   253,   254,   255,   256,   257,   258,   259,     0,
 2015:      260,   235,   236,   237,     0,     0,     0,     0,     0,     0,
 2016:        0,     0,     0,     0,     0,     0,     0,   238,   834,   239,
 2017:      240,   241,   242,   243,   244,   245,   246,   247,   248,   249,
 2018:      250,   251,   252,   253,   254,   255,   256,   257,   258,   259,
 2019:        0,   260,     0,     0,   235,   236,   237,     0,     0,     0,
 2020:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 2021:      238,   261,   239,   240,   241,   242,   243,   244,   245,   246,
 2022:      247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
 2023:      257,   258,   259,     0,   260,   235,   236,   237,     0,     0,
 2024:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 2025:        0,   238,   318,   239,   240,   241,   242,   243,   244,   245,
 2026:      246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
 2027:      256,   257,   258,   259,     0,   260,   235,   236,   237,     0,
 2028:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 2029:        0,     0,   238,   319,   239,   240,   241,   242,   243,   244,
 2030:      245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
 2031:      255,   256,   257,   258,   259,     0,   260,     0,     0,   235,
 2032:      236,   237,     0,     0,     0,     0,     0,     0,     0,     0,
 2033:        0,     0,     0,     0,     0,   238,   325,   239,   240,   241,
 2034:      242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
 2035:      252,   253,   254,   255,   256,   257,   258,   259,     0,   260,
 2036:        0,   235,   236,   237,     0,     0,     0,     0,     0,     0,
 2037:        0,     0,     0,     0,     0,     0,   364,   238,     0,   239,
 2038:      240,   241,   242,   243,   244,   245,   246,   247,   248,   249,
 2039:      250,   251,   252,   253,   254,   255,   256,   257,   258,   259,
 2040:        0,   260,   235,   236,   237,     0,     0,     0,     0,     0,
 2041:        0,     0,     0,     0,     0,     0,     0,   434,   238,     0,
 2042:      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
 2043:      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
 2044:      259,     0,   260,   235,   236,   237,     0,     0,     0,     0,
 2045:        0,     0,     0,     0,     0,     0,     0,     0,     0,   238,
 2046:      447,   239,   240,   241,   242,   243,   244,   245,   246,   247,
 2047:      248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
 2048:      258,   259,     0,   260,     0,   235,   236,   237,     0,     0,
 2049:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 2050:        0,   238,   448,   239,   240,   241,   242,   243,   244,   245,
 2051:      246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
 2052:      256,   257,   258,   259,     0,   260,   235,   236,   237,     0,
 2053:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 2054:        0,     0,   238,   458,   239,   240,   241,   242,   243,   244,
 2055:      245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
 2056:      255,   256,   257,   258,   259,     0,   260,   235,   236,   237,
 2057:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 2058:        0,     0,     0,   238,   554,   239,   240,   241,   242,   243,
 2059:      244,   245,   246,   247,   248,   249,   250,   251,   252,   253,
 2060:      254,   255,   256,   257,   258,   259,     0,   260,     0,   235,
 2061:      236,   237,     0,     0,     0,     0,     0,     0,     0,     0,
 2062:        0,     0,     0,     0,     0,   238,   777,   239,   240,   241,
 2063:      242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
 2064:      252,   253,   254,   255,   256,   257,   258,   259,     0,   260,
 2065:        0,     0,   235,   236,   237,     0,     0,     0,     0,     0,
 2066:        0,     0,     0,     0,     0,     0,     0,   928,   238,   619,
 2067:      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
 2068:      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
 2069:      259,     0,   260,     0,     0,     0,     0,     0,     0,     0,
 2070:        0,     0,     0,     0,     0,     0,     0,     0,   943,   235,
 2071:      236,   237,     0,     0,     0,     0,     0,     0,     0,     0,
 2072:        0,     0,     0,     0,   548,   238,     0,   239,   240,   241,
 2073:      242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
 2074:      252,   253,   254,   255,   256,   257,   258,   259,     0,   260,
 2075:      236,   237,     0,     0,     0,     0,     0,     0,     0,     0,
 2076:        0,     0,     0,     0,     0,   238,     0,   239,   240,   241,
 2077:      242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
 2078:      252,   253,   254,   255,   256,   257,   258,   259,   237,   260,
 2079:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
 2080:        0,     0,   238,     0,   239,   240,   241,   242,   243,   244,
 2081:      245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
 2082:      255,   256,   257,   258,   259,     0,   260,   239,   240,   241,
 2083:      242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
 2084:      252,   253,   254,   255,   256,   257,   258,   259,     0,   260,
 2085:      240,   241,   242,   243,   244,   245,   246,   247,   248,   249,
 2086:      250,   251,   252,   253,   254,   255,   256,   257,   258,   259,
 2087:        0,   260,   241,   242,   243,   244,   245,   246,   247,   248,
 2088:      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
 2089:      259,     0,   260
 2090: };
 2091: 
 2092: #define yypact_value_is_default(Yystate) \
 2093:   (!!((Yystate) == (-736)))
 2094: 
 2095: #define yytable_value_is_error(Yytable_value) \
 2096:   (!!((Yytable_value) == (-472)))
 2097: 
 2098: static const yytype_int16 yycheck[] =
 2099: {
 2100:       23,    24,     4,   234,    27,   119,    27,   577,     4,   373,
 2101:      425,   260,   446,   280,     8,    27,   555,   752,   437,     8,
 2102:      439,   671,     8,    49,     8,    26,     8,     8,   443,    52,
 2103:        8,   359,     8,    31,    61,    23,    24,   607,     8,    27,
 2104:        8,     8,     8,     8,    61,     8,   277,    63,     8,     8,
 2105:       73,    61,    61,    76,    56,    71,    71,    73,   289,   290,
 2106:       73,    61,    73,    71,     0,    73,   149,    31,   299,    26,
 2107:      301,   148,   149,    71,   324,    73,    71,    31,   144,    31,
 2108:        0,    31,   148,   149,   198,   500,   144,    98,   144,   508,
 2109:      148,   149,   148,    27,   144,   149,   112,   149,   148,   149,
 2110:       73,   113,    26,    78,   112,   149,    45,    46,    47,    73,
 2111:       49,   378,    73,   149,   112,   117,    71,   140,    73,    73,
 2112:      770,    73,   149,    73,   147,   152,    73,   144,    71,   145,
 2113:      153,    78,   148,   148,   144,   152,    73,   145,   154,   149,
 2114:      148,   154,   152,   152,   152,   171,   154,   145,   798,   161,
 2115:      148,   152,   152,    71,   149,   519,   154,   151,   152,   147,
 2116:       23,    24,   151,   186,    27,   151,   141,   151,   191,   151,
 2117:      151,   499,   168,   151,   589,   151,   199,   200,   201,   914,
 2118:      150,   154,   150,   150,   150,   150,   209,   150,    90,   212,
 2119:      150,   150,    61,   154,   151,   142,   143,   152,    71,   154,
 2120:      431,   616,   617,   191,   141,   142,   143,   622,   623,   628,
 2121:      157,   199,   200,   201,    71,   446,    73,   149,     8,    71,
 2122:       61,   209,   234,    13,    14,    15,    16,    17,    18,    19,
 2123:       20,    21,    22,    23,    24,   149,   670,   260,   602,   260,
 2124:      779,    71,    71,    73,    73,    73,   148,   234,   260,   149,
 2125:       78,    73,    90,    71,   123,   112,    78,   676,    71,    71,
 2126:       73,    73,   144,   118,   287,   277,   148,    61,   125,    59,
 2127:       60,   118,   260,   149,   297,   148,    71,   289,   290,   152,
 2128:       71,   648,   123,   112,   147,   534,    61,   299,   145,   301,
 2129:      277,   148,    71,   145,    73,    74,   148,   154,   321,   112,
 2130:      234,   149,   289,   290,    73,   328,    71,   144,   126,   127,
 2131:      148,   148,   335,   141,   142,   143,   145,   149,   682,   148,
 2132:      142,   143,   152,   346,   154,   154,   260,   145,   191,   123,
 2133:      148,   152,   145,   321,   149,   148,   199,   200,   201,   773,
 2134:      152,   154,   154,   277,   149,   371,   209,   335,   123,   716,
 2135:      373,   718,   767,    71,   145,   289,   290,   148,   346,   626,
 2136:      150,   126,   127,    73,   366,   299,    71,   301,    78,    31,
 2137:      366,   941,   384,   142,   143,   739,    73,    66,    67,    68,
 2138:      145,    78,   632,   148,    61,   150,    92,    93,    94,   412,
 2139:       73,    92,    93,    94,   644,    78,   144,   260,   149,   425,
 2140:       59,    60,   669,    93,    94,   144,    93,    94,   148,   206,
 2141:       61,   151,   152,   210,   437,   123,   439,   443,    98,   431,
 2142:       92,    93,    94,   220,   412,   222,   223,   224,   792,   148,
 2143:      149,   141,   142,   143,   446,   148,   459,   460,   461,   670,
 2144:       92,    93,    94,   466,   148,   142,   143,   153,    49,   437,
 2145:      144,   439,   153,    66,    67,    68,   706,   155,   481,   142,
 2146:      143,    66,    67,   153,     8,   732,   153,   148,   149,    66,
 2147:       67,   459,   460,   461,   500,   151,   152,    23,    24,   843,
 2148:      144,   845,   148,   346,   123,   508,    81,    82,   148,   144,
 2149:      513,   144,   515,   481,    98,   149,   519,   431,    13,   522,
 2150:       13,   768,   769,   107,   108,   109,   110,   111,   112,   151,
 2151:      151,   534,   446,   534,   152,   150,   150,   153,   882,    99,
 2152:      508,    71,   534,   156,   104,   513,    71,   107,   108,   109,
 2153:      110,   111,   112,   113,   557,   558,   559,   121,    61,    26,
 2154:      149,   149,   773,    82,   151,   568,   534,   570,     8,   412,
 2155:       90,   915,    71,   576,   577,    71,   552,   580,   808,   582,
 2156:      810,    73,   149,   589,   150,   561,   151,   150,    71,   557,
 2157:      558,   559,   598,   153,   437,    61,   439,   600,   153,   602,
 2158:      568,   149,    13,   121,   607,   949,   149,   149,   576,   839,
 2159:      616,   617,   580,   149,   582,   149,   622,   623,   155,    26,
 2160:      534,   149,   155,    13,   153,   628,   149,   148,   144,   973,
 2161:       42,    43,    44,    45,    46,    47,   639,    49,   481,   869,
 2162:       71,    13,   151,    99,   149,   875,   153,   650,   104,   652,
 2163:      150,   107,   108,   109,   110,   111,   112,   113,   661,   635,
 2164:      628,   149,     8,   148,   122,   508,   152,   149,   155,   150,
 2165:      150,   639,   902,   676,    71,   124,   155,   907,   670,   682,
 2166:        8,   141,   650,   686,   652,   107,   108,   109,   110,   111,
 2167:      112,   534,    71,   661,   102,    13,   155,   153,   153,   929,
 2168:      150,   152,   150,     8,   150,     8,   149,   710,   676,   321,
 2169:      804,   714,   151,    13,   557,   558,   151,   151,   124,   123,
 2170:      150,   149,   151,   335,   150,   955,   153,   150,   958,   150,
 2171:      104,    73,   962,    13,   150,   150,   739,   580,    61,   582,
 2172:      150,   150,   710,   123,    61,   150,   714,   124,   150,    89,
 2173:      980,    71,   155,   152,   149,   155,   670,   760,     4,     5,
 2174:        6,   767,     8,     9,    10,    11,    12,    13,    14,   751,
 2175:       16,    17,    18,    19,    20,    21,    22,   152,    13,    25,
 2176:       26,   773,   151,   151,    83,   628,   151,    13,   791,   792,
 2177:      152,    37,   760,    13,   155,    73,   639,    71,    44,    45,
 2178:       73,   150,   155,   155,   149,    51,    13,   151,    23,    24,
 2179:      813,   150,    71,   151,    13,    73,   153,   153,   661,    13,
 2180:      149,    26,    73,   791,    68,    90,   153,   153,    90,   151,
 2181:      105,    77,   151,   676,    49,   144,    73,   151,    87,   842,
 2182:      843,    71,   845,   150,    13,   813,   822,   459,   460,    73,
 2183:       68,   149,    71,     8,   857,   151,    26,    71,    85,   773,
 2184:      152,   150,   153,   151,   102,   149,   153,   710,   150,    73,
 2185:      153,   152,   971,   481,   842,   328,   122,   366,   602,   882,
 2186:      640,   710,   366,   832,   130,   681,   889,   686,   333,   857,
 2187:      893,   733,   828,    77,   724,   882,   899,   568,   692,   567,
 2188:      796,   513,   582,   661,    -1,   191,    -1,   204,    -1,    -1,
 2189:       -1,    -1,   915,    -1,    -1,    -1,   162,    -1,   164,    -1,
 2190:      321,   889,   168,    -1,   170,   893,    -1,   173,    -1,   905,
 2191:       -1,   899,   147,    -1,   335,    -1,    -1,   940,   941,    -1,
 2192:       -1,    -1,    -1,    -1,    -1,    -1,   949,   559,    -1,    -1,
 2193:       -1,    -1,    -1,    -1,    -1,    -1,   171,    -1,   204,    -1,
 2194:       -1,    -1,   208,    -1,   576,    -1,    -1,    -1,   944,    -1,
 2195:      973,    -1,   940,   219,    -1,    -1,   191,    -1,    -1,    -1,
 2196:       -1,    -1,    -1,    -1,   199,   200,   201,    -1,    -1,    -1,
 2197:      236,    -1,    -1,    -1,   209,   241,   242,   243,   244,   245,
 2198:      246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
 2199:      256,   257,   258,   259,    -1,    -1,    -1,    -1,   264,   265,
 2200:      266,   267,   268,   269,   270,   271,   272,   273,   274,   275,
 2201:       -1,    -1,   278,    -1,   280,   281,    -1,    -1,   650,    -1,
 2202:      652,    -1,    -1,    -1,    -1,    -1,    -1,   293,    -1,   295,
 2203:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   459,   460,
 2204:      461,   307,     8,    -1,   310,    -1,    -1,    13,    14,    15,
 2205:       16,    17,    18,    19,    20,    21,    22,    23,    24,    -1,
 2206:       -1,    -1,    42,    43,   330,    -1,    -1,    -1,    -1,    13,
 2207:       14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
 2208:       24,    61,   714,    -1,    -1,    -1,    -1,    -1,    -1,    69,
 2209:       70,    71,   513,    59,    60,    -1,    -1,    -1,    -1,    79,
 2210:      366,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2211:       -1,   346,   378,    -1,   380,    59,    60,    -1,    -1,   385,
 2212:       -1,   387,    -1,   389,   390,   391,    -1,    -1,   760,    -1,
 2213:       -1,    -1,   112,    -1,    -1,    -1,   371,    -1,   559,    -1,
 2214:       -1,    -1,    -1,    -1,    -1,    -1,   126,   568,   128,   129,
 2215:      130,   131,   132,   133,    -1,   576,    -1,    -1,    -1,   791,
 2216:      140,    -1,    -1,    -1,    -1,   145,   146,   147,   148,    -1,
 2217:       -1,    -1,    -1,    -1,    -1,    -1,    -1,   412,    -1,    -1,
 2218:       -1,   813,    -1,    -1,   150,    -1,    -1,    -1,    -1,    -1,
 2219:      425,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2220:       -1,    -1,   437,    -1,   439,    -1,    -1,   151,   443,    -1,
 2221:      842,    -1,    13,    14,    15,    16,    17,    18,    19,    20,
 2222:       21,    22,    23,    24,    -1,   857,    -1,    -1,   494,   650,
 2223:       -1,   652,    13,    14,    15,    16,    17,    18,    19,    20,
 2224:       21,    22,    23,    24,    -1,    -1,   481,    -1,    -1,    -1,
 2225:       -1,    -1,    -1,    -1,    -1,    -1,    -1,   889,    59,    60,
 2226:       -1,   893,    -1,    -1,   530,   500,    -1,   899,    -1,    -1,
 2227:       -1,    -1,    -1,   508,    -1,    -1,    -1,    -1,    59,    60,
 2228:       -1,    -1,   548,    -1,    -1,    -1,   552,    -1,    -1,   555,
 2229:      556,    -1,    -1,   714,    -1,   561,    -1,    -1,    -1,    -1,
 2230:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   940,    90,
 2231:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2232:       -1,    -1,   557,   558,    36,    37,    38,    39,    40,    41,
 2233:       42,    43,    44,    45,    46,    47,    -1,    49,    -1,   760,
 2234:       -1,    -1,    -1,    -1,    -1,   580,    -1,   582,    -1,    -1,
 2235:       -1,    -1,    -1,    -1,   589,    -1,    -1,    -1,    -1,    -1,
 2236:      626,   627,    -1,   598,    -1,    -1,    -1,    -1,   634,   635,
 2237:      791,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2238:       -1,   616,   617,    -1,    -1,    -1,    -1,   622,   623,    -1,
 2239:       -1,    -1,   813,   628,    -1,    -1,    -1,   663,    -1,    -1,
 2240:       -1,    -1,    -1,   669,   639,    32,    33,    34,    35,    36,
 2241:       37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
 2242:       47,   842,    49,    -1,    -1,   691,   661,     9,    10,    11,
 2243:       -1,    -1,    -1,    -1,    -1,    -1,   857,    -1,    -1,    -1,
 2244:       -1,   676,    -1,    25,    -1,    27,    28,    29,    30,    31,
 2245:       32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
 2246:       42,    43,    44,    45,    46,    47,   732,    49,   889,    -1,
 2247:       -1,    -1,   893,    -1,    -1,   710,    -1,    25,   899,    27,
 2248:       28,    29,    30,    31,    32,    33,    34,    35,    36,    37,
 2249:       38,    39,    40,    41,    42,    43,    44,    45,    46,    47,
 2250:       -1,    49,   768,   769,    -1,    -1,    -1,    -1,    -1,    -1,
 2251:       -1,    -1,    -1,   779,    -1,     9,    10,    11,    -1,   940,
 2252:       -1,   787,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2253:       -1,    25,   767,    27,    28,    29,    30,    31,    32,    33,
 2254:       34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
 2255:       44,    45,    46,    47,    -1,    49,   822,    -1,     9,    10,
 2256:       11,   827,   828,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2257:       -1,    -1,    -1,   155,    25,    -1,    27,    28,    29,    30,
 2258:       31,    32,    33,    34,    35,    36,    37,    38,    39,    40,
 2259:       41,    42,    43,    44,    45,    46,    47,    -1,    49,   865,
 2260:       -1,    -1,    -1,     3,     4,     5,     6,     7,    -1,    -1,
 2261:       -1,    -1,    12,    31,    32,    33,    34,    35,    36,    37,
 2262:       38,    39,    40,    41,    42,    43,    44,    45,    46,    47,
 2263:      124,    49,    -1,    -1,    -1,   901,    -1,    -1,    -1,   905,
 2264:       -1,    -1,    42,    43,    -1,    -1,    -1,    -1,    48,    -1,
 2265:       50,    51,    52,    53,    54,    55,    56,    57,    58,    59,
 2266:       60,    61,    62,    63,    64,    65,    -1,    -1,    -1,    69,
 2267:       70,    71,    72,    73,    -1,    75,    -1,    -1,   944,    79,
 2268:       80,    81,    82,    -1,    84,    -1,    86,    -1,    88,    -1,
 2269:       -1,    91,    -1,    -1,    -1,    95,    96,    97,    98,    99,
 2270:      100,   101,   153,   103,   104,    -1,   106,    -1,    -1,    -1,
 2271:      110,   111,   112,    -1,   114,   115,   116,   117,   118,   119,
 2272:      120,    -1,    -1,    -1,    -1,   125,   126,    -1,   128,   129,
 2273:      130,   131,   132,   133,     3,     4,     5,     6,     7,    -1,
 2274:      140,    -1,    -1,    12,    -1,   145,   146,   147,   148,   149,
 2275:       -1,   151,   152,    -1,   154,    -1,   156,   157,    -1,    -1,
 2276:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2277:       -1,    -1,    -1,    42,    43,    -1,    -1,    -1,    -1,    48,
 2278:       -1,    50,    51,    52,    53,    54,    55,    56,    57,    58,
 2279:       59,    60,    61,    62,    63,    64,    65,    -1,    -1,    -1,
 2280:       69,    70,    71,    72,    73,    -1,    75,    -1,    -1,    -1,
 2281:       79,    80,    81,    82,    -1,    84,    -1,    86,    -1,    88,
 2282:       -1,    -1,    91,    -1,    -1,    -1,    95,    96,    97,    98,
 2283:       -1,   100,   101,    -1,   103,    -1,    -1,   106,    -1,    -1,
 2284:       -1,   110,   111,   112,    -1,   114,   115,   116,   117,   118,
 2285:      119,   120,    -1,    -1,    -1,    -1,   125,   126,    -1,   128,
 2286:      129,   130,   131,   132,   133,    -1,     3,     4,     5,     6,
 2287:        7,   140,    -1,    -1,    -1,    12,   145,   146,   147,   148,
 2288:      149,    -1,   151,   152,    -1,   154,    -1,   156,   157,    26,
 2289:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2290:       -1,    -1,    -1,    -1,    -1,    42,    43,    -1,    -1,    -1,
 2291:       -1,    48,    -1,    50,    51,    52,    53,    54,    55,    56,
 2292:       57,    58,    59,    60,    61,    62,    63,    64,    65,    -1,
 2293:       -1,    -1,    69,    70,    71,    72,    73,    -1,    75,    -1,
 2294:       -1,    -1,    79,    80,    81,    82,    -1,    84,    -1,    86,
 2295:       -1,    88,    -1,    -1,    91,    -1,    -1,    -1,    95,    96,
 2296:       97,    98,    -1,   100,   101,    -1,   103,    -1,    -1,   106,
 2297:       -1,    -1,    -1,    -1,    -1,   112,    -1,   114,   115,   116,
 2298:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   125,   126,
 2299:       -1,   128,   129,   130,   131,   132,   133,    -1,     3,     4,
 2300:        5,     6,     7,   140,    -1,    -1,    -1,    12,   145,   146,
 2301:      147,   148,   149,    -1,   151,   152,    -1,   154,    -1,   156,
 2302:      157,    26,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2303:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    42,    43,    -1,
 2304:       -1,    -1,    -1,    48,    -1,    50,    51,    52,    53,    54,
 2305:       55,    56,    57,    58,    59,    60,    61,    62,    63,    64,
 2306:       65,    -1,    -1,    -1,    69,    70,    71,    72,    73,    -1,
 2307:       75,    -1,    -1,    -1,    79,    80,    81,    82,    -1,    84,
 2308:       -1,    86,    -1,    88,    -1,    -1,    91,    -1,    -1,    -1,
 2309:       95,    96,    97,    98,    -1,   100,   101,    -1,   103,    -1,
 2310:       -1,   106,    -1,    -1,    -1,    -1,    -1,   112,    -1,   114,
 2311:      115,   116,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2312:      125,   126,    -1,   128,   129,   130,   131,   132,   133,    -1,
 2313:        3,     4,     5,     6,     7,   140,    -1,    -1,    -1,    12,
 2314:      145,   146,   147,   148,   149,    -1,   151,   152,    -1,   154,
 2315:       -1,   156,   157,    26,    -1,    -1,    -1,    -1,    -1,    -1,
 2316:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    42,
 2317:       43,    -1,    -1,    -1,    -1,    48,    -1,    50,    51,    52,
 2318:       53,    54,    55,    56,    57,    58,    59,    60,    61,    62,
 2319:       63,    64,    65,    -1,    -1,    -1,    69,    70,    71,    72,
 2320:       73,    -1,    75,    -1,    -1,    -1,    79,    80,    81,    82,
 2321:       -1,    84,    -1,    86,    -1,    88,    -1,    -1,    91,    -1,
 2322:       -1,    -1,    95,    96,    97,    98,    -1,   100,   101,    -1,
 2323:      103,    -1,    -1,   106,    -1,    -1,    -1,    -1,    -1,   112,
 2324:       -1,   114,   115,   116,    -1,    -1,    -1,    -1,    -1,    -1,
 2325:       -1,    -1,   125,   126,    -1,   128,   129,   130,   131,   132,
 2326:      133,    -1,     3,     4,     5,     6,     7,   140,    -1,    -1,
 2327:       -1,    12,   145,   146,   147,   148,   149,    -1,   151,   152,
 2328:       -1,   154,    -1,   156,   157,    26,    -1,    -1,    -1,    -1,
 2329:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2330:       -1,    42,    43,    -1,    -1,    -1,    -1,    48,    -1,    50,
 2331:       51,    52,    53,    54,    55,    56,    57,    58,    59,    60,
 2332:       61,    62,    63,    64,    65,    -1,    -1,    -1,    69,    70,
 2333:       71,    72,    73,    -1,    75,    -1,    -1,    -1,    79,    80,
 2334:       81,    82,    -1,    84,    -1,    86,    -1,    88,    -1,    -1,
 2335:       91,    -1,    -1,    -1,    95,    96,    97,    98,    -1,   100,
 2336:      101,    -1,   103,    -1,    -1,   106,    -1,    -1,    -1,    -1,
 2337:       -1,   112,    -1,   114,   115,   116,    -1,    -1,    -1,    -1,
 2338:       -1,    -1,    -1,    -1,   125,   126,    -1,   128,   129,   130,
 2339:      131,   132,   133,     3,     4,     5,     6,     7,    -1,   140,
 2340:       -1,    -1,    12,    -1,   145,   146,   147,   148,   149,    -1,
 2341:      151,   152,    -1,   154,    -1,   156,   157,    -1,    -1,    -1,
 2342:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2343:       -1,    -1,    42,    43,    -1,    -1,    -1,    -1,    48,    -1,
 2344:       50,    51,    52,    53,    54,    55,    56,    57,    58,    59,
 2345:       60,    61,    62,    63,    64,    65,    -1,    -1,    -1,    69,
 2346:       70,    71,    72,    73,    -1,    75,    -1,    -1,    -1,    79,
 2347:       80,    81,    82,    -1,    84,    -1,    86,    -1,    88,    -1,
 2348:       -1,    91,    -1,    -1,    -1,    95,    96,    97,    98,    -1,
 2349:      100,   101,    -1,   103,    -1,    -1,   106,    -1,    -1,    -1,
 2350:       -1,    -1,   112,    -1,   114,   115,   116,    -1,    -1,    -1,
 2351:       -1,    -1,    -1,    -1,    -1,   125,   126,    -1,   128,   129,
 2352:      130,   131,   132,   133,     3,     4,     5,     6,     7,    -1,
 2353:      140,    -1,    -1,    12,    -1,   145,   146,   147,   148,   149,
 2354:       -1,   151,   152,    -1,   154,    -1,   156,   157,    -1,    -1,
 2355:       -1,    -1,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2356:       -1,    -1,    -1,    42,    43,    -1,    -1,    -1,    -1,    48,
 2357:       -1,    50,    51,    52,    53,    54,    55,    56,    57,    58,
 2358:       59,    60,    61,    62,    63,    64,    -1,    -1,    -1,    -1,
 2359:       69,    70,    71,    72,    73,    -1,    -1,    -1,    -1,    -1,
 2360:       79,    30,    31,    32,    33,    34,    35,    36,    37,    38,
 2361:       39,    40,    41,    42,    43,    44,    45,    46,    47,    98,
 2362:       49,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2363:       -1,    -1,    -1,   112,    -1,    -1,   115,   116,    -1,    -1,
 2364:       -1,    -1,    -1,    -1,    -1,    -1,   125,   126,    -1,   128,
 2365:      129,   130,   131,   132,   133,     3,     4,     5,     6,     7,
 2366:       -1,   140,    -1,    -1,    12,    -1,   145,   146,   147,   148,
 2367:      149,    -1,    -1,    -1,    -1,   154,    -1,   156,   157,    -1,
 2368:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2369:       -1,    -1,    -1,    -1,    42,    43,    -1,    -1,    -1,    -1,
 2370:       48,    -1,    50,    51,    52,    53,    54,    55,    56,    57,
 2371:       58,    59,    60,    61,    62,    63,    64,    -1,    -1,    -1,
 2372:       -1,    69,    70,    71,    72,    73,    -1,    -1,    -1,    -1,
 2373:       -1,    79,    32,    33,    34,    35,    36,    37,    38,    39,
 2374:       40,    41,    42,    43,    44,    45,    46,    47,    -1,    49,
 2375:       98,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2376:       -1,    -1,    -1,    -1,   112,    -1,    -1,   115,   116,    -1,
 2377:       -1,    -1,    -1,    -1,    -1,    -1,    -1,   125,   126,    -1,
 2378:      128,   129,   130,   131,   132,   133,     3,     4,     5,     6,
 2379:        7,    -1,   140,    -1,    -1,    12,    -1,   145,   146,   147,
 2380:      148,   149,    -1,   151,    -1,    -1,   154,    -1,   156,   157,
 2381:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2382:       -1,    -1,    -1,    -1,    -1,    42,    43,    -1,    -1,    -1,
 2383:       -1,    48,    -1,    50,    51,    52,    53,    54,    55,    56,
 2384:       57,    58,    59,    60,    61,    62,    63,    64,    -1,    -1,
 2385:       -1,    -1,    69,    70,    71,    72,    73,    -1,    -1,    -1,
 2386:       -1,    -1,    79,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2387:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2388:       -1,    98,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2389:       -1,    -1,    -1,    -1,    -1,   112,    -1,    -1,   115,   116,
 2390:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   125,   126,
 2391:       -1,   128,   129,   130,   131,   132,   133,     3,     4,     5,
 2392:        6,     7,    -1,   140,    -1,    -1,    12,    -1,   145,   146,
 2393:      147,   148,   149,    -1,   151,    -1,    -1,   154,    -1,   156,
 2394:      157,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2395:       -1,    -1,    -1,    -1,    -1,    -1,    42,    43,    -1,    -1,
 2396:       -1,    -1,    48,    -1,    50,    51,    52,    53,    54,    55,
 2397:       56,    57,    58,    59,    60,    61,    62,    63,    64,    -1,
 2398:       -1,    -1,    -1,    69,    70,    71,    72,    73,    -1,    -1,
 2399:       -1,    -1,    -1,    79,    -1,    -1,    -1,    -1,    -1,    -1,
 2400:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2401:       -1,    -1,    98,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2402:       -1,    -1,    -1,    -1,    -1,    -1,   112,    -1,    -1,   115,
 2403:      116,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   125,
 2404:      126,    -1,   128,   129,   130,   131,   132,   133,     3,     4,
 2405:        5,     6,     7,    -1,   140,    -1,    -1,    12,    -1,   145,
 2406:      146,   147,   148,   149,    -1,   151,    -1,    -1,   154,    -1,
 2407:      156,   157,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2408:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    42,    43,    -1,
 2409:       -1,    -1,    -1,    48,    -1,    50,    51,    52,    53,    54,
 2410:       55,    56,    57,    58,    59,    60,    61,    62,    63,    64,
 2411:       -1,    -1,    -1,    -1,    69,    70,    71,    72,    73,    -1,
 2412:       -1,    -1,    -1,    -1,    79,    -1,    -1,    -1,    -1,    -1,
 2413:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2414:       -1,    -1,    -1,    98,    -1,    -1,    -1,    -1,    -1,    -1,
 2415:       -1,    -1,    -1,    -1,    -1,    -1,    -1,   112,    -1,    -1,
 2416:      115,   116,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2417:      125,   126,    -1,   128,   129,   130,   131,   132,   133,     3,
 2418:        4,     5,     6,     7,    -1,   140,    -1,    -1,    12,    -1,
 2419:      145,   146,   147,   148,   149,   150,    -1,    -1,    -1,   154,
 2420:       -1,   156,   157,    -1,    -1,    -1,    -1,    31,    -1,    -1,
 2421:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    42,    43,
 2422:       -1,    -1,    -1,    -1,    48,    -1,    50,    51,    52,    53,
 2423:       54,    55,    56,    57,    58,    59,    60,    61,    62,    63,
 2424:       64,    -1,    -1,    -1,    -1,    69,    70,    71,    72,    73,
 2425:       -1,    -1,    -1,    -1,    -1,    79,    -1,    -1,    -1,    -1,
 2426:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2427:       -1,    -1,    -1,    -1,    98,    -1,    -1,    -1,    -1,    -1,
 2428:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   112,    -1,
 2429:       -1,   115,   116,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2430:       -1,   125,   126,    -1,   128,   129,   130,   131,   132,   133,
 2431:        3,     4,     5,     6,     7,    -1,   140,    -1,    -1,    12,
 2432:       -1,   145,   146,   147,   148,   149,    -1,    -1,    -1,    -1,
 2433:      154,    -1,   156,   157,    -1,    -1,    -1,    -1,    31,    -1,
 2434:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    42,
 2435:       43,    -1,    -1,    -1,    -1,    48,    -1,    50,    51,    52,
 2436:       53,    54,    55,    56,    57,    58,    59,    60,    61,    62,
 2437:       63,    64,    -1,    -1,    -1,    -1,    69,    70,    71,    72,
 2438:       73,    -1,    -1,    -1,    -1,    -1,    79,    -1,    -1,    -1,
 2439:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2440:       -1,    -1,    -1,    -1,    -1,    98,    -1,    -1,    -1,    -1,
 2441:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   112,
 2442:       -1,    -1,   115,   116,    -1,    -1,    -1,    -1,    -1,    -1,
 2443:       -1,    -1,   125,   126,    -1,   128,   129,   130,   131,   132,
 2444:      133,     3,     4,     5,     6,     7,    -1,   140,    -1,    -1,
 2445:       12,    -1,   145,   146,   147,   148,   149,    -1,    -1,    -1,
 2446:       -1,   154,    -1,   156,   157,    -1,    -1,    -1,    -1,    31,
 2447:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2448:       42,    43,    -1,    -1,    -1,    -1,    48,    -1,    50,    51,
 2449:       52,    53,    54,    55,    56,    57,    58,    59,    60,    61,
 2450:       62,    63,    64,    -1,    -1,    -1,    -1,    69,    70,    71,
 2451:       72,    73,    -1,    -1,    -1,    -1,    -1,    79,    -1,    -1,
 2452:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2453:       -1,    -1,    -1,    -1,    -1,    -1,    98,    -1,    -1,    -1,
 2454:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2455:      112,    -1,    -1,   115,   116,    -1,    -1,    -1,    -1,    -1,
 2456:       -1,    -1,    -1,   125,   126,    -1,   128,   129,   130,   131,
 2457:      132,   133,     3,     4,     5,     6,     7,    -1,   140,    -1,
 2458:       -1,    12,    -1,   145,   146,   147,   148,   149,    -1,    -1,
 2459:       -1,    -1,   154,    -1,   156,   157,    -1,    -1,    -1,    -1,
 2460:       31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2461:       -1,    42,    43,    -1,    -1,    -1,    -1,    48,    -1,    50,
 2462:       51,    52,    53,    54,    55,    56,    57,    58,    59,    60,
 2463:       61,    62,    63,    64,    -1,    -1,    -1,    -1,    69,    70,
 2464:       71,    72,    73,    -1,    -1,    -1,    -1,    -1,    79,    -1,
 2465:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2466:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    98,    -1,    -1,
 2467:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2468:       -1,   112,    -1,    -1,   115,   116,    -1,    -1,    -1,    -1,
 2469:       -1,    -1,    -1,    -1,   125,   126,    -1,   128,   129,   130,
 2470:      131,   132,   133,     3,     4,     5,     6,     7,    -1,   140,
 2471:       -1,    -1,    12,    -1,   145,   146,   147,   148,   149,    -1,
 2472:       -1,    -1,    -1,   154,    -1,   156,   157,    -1,    -1,    -1,
 2473:       -1,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2474:       -1,    -1,    42,    43,    -1,    -1,    -1,    -1,    48,    -1,
 2475:       50,    51,    52,    53,    54,    55,    56,    57,    58,    59,
 2476:       60,    61,    62,    63,    64,    -1,    -1,    -1,    -1,    69,
 2477:       70,    71,    72,    73,    -1,    -1,    -1,    -1,    -1,    79,
 2478:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2479:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    98,    -1,
 2480:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2481:       -1,    -1,   112,    -1,    -1,   115,   116,    -1,    -1,    -1,
 2482:       -1,    -1,    -1,    -1,    -1,   125,   126,    -1,   128,   129,
 2483:      130,   131,   132,   133,     3,     4,     5,     6,     7,    -1,
 2484:      140,    -1,    -1,    12,    -1,   145,   146,   147,   148,   149,
 2485:       -1,    -1,    -1,    -1,   154,    -1,   156,   157,    -1,    -1,
 2486:       -1,    -1,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2487:       -1,    -1,    -1,    42,    43,    -1,    -1,    -1,    -1,    48,
 2488:       -1,    50,    51,    52,    53,    54,    55,    56,    57,    58,
 2489:       59,    60,    61,    62,    63,    64,    -1,    -1,    -1,    -1,
 2490:       69,    70,    71,    72,    73,    -1,    -1,    -1,    -1,    -1,
 2491:       79,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2492:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    98,
 2493:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2494:       -1,    -1,    -1,   112,    -1,    -1,   115,   116,    -1,    -1,
 2495:       -1,    -1,    -1,    -1,    -1,    -1,   125,   126,    -1,   128,
 2496:      129,   130,   131,   132,   133,     3,     4,     5,     6,     7,
 2497:       -1,   140,    -1,    -1,    12,    -1,   145,   146,   147,   148,
 2498:      149,    -1,    -1,    -1,    -1,   154,    -1,   156,   157,    -1,
 2499:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2500:       -1,    -1,    -1,    -1,    42,    43,    -1,    -1,    -1,    -1,
 2501:       48,    -1,    50,    51,    52,    53,    54,    55,    56,    57,
 2502:       58,    59,    60,    61,    62,    63,    64,    -1,    -1,    -1,
 2503:       -1,    69,    70,    71,    72,    73,    -1,    -1,    -1,    -1,
 2504:       -1,    79,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2505:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2506:       98,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2507:       -1,    -1,    -1,    -1,   112,    -1,    -1,   115,   116,    -1,
 2508:       -1,    -1,    -1,    -1,    -1,    -1,    -1,   125,   126,    -1,
 2509:      128,   129,   130,   131,   132,   133,     3,     4,     5,     6,
 2510:        7,    -1,   140,    -1,    -1,    12,    -1,   145,   146,   147,
 2511:      148,   149,    -1,    -1,    -1,    -1,   154,    -1,   156,   157,
 2512:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2513:       -1,    -1,    -1,    -1,    -1,    42,    43,    -1,    -1,    -1,
 2514:       -1,    48,    -1,    50,    51,    52,    53,    54,    55,    56,
 2515:       57,    58,    59,    60,    61,    62,    63,    64,    -1,    -1,
 2516:       -1,    -1,    69,    70,    71,    72,    73,    -1,    -1,    -1,
 2517:       -1,    -1,    79,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2518:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2519:       -1,    98,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2520:       -1,    -1,    -1,    -1,    -1,   112,    -1,    -1,   115,   116,
 2521:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   125,   126,
 2522:       -1,   128,   129,   130,   131,   132,   133,    -1,    -1,    -1,
 2523:       -1,    -1,    -1,   140,    -1,     9,    10,    11,   145,   146,
 2524:      147,   148,   149,    -1,    -1,    -1,    -1,   154,    -1,   156,
 2525:      157,    25,    -1,    27,    28,    29,    30,    31,    32,    33,
 2526:       34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
 2527:       44,    45,    46,    47,    -1,    49,     9,    10,    11,    -1,
 2528:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2529:       -1,    -1,    25,    -1,    27,    28,    29,    30,    31,    32,
 2530:       33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
 2531:       43,    44,    45,    46,    47,    -1,    49,     9,    10,    11,
 2532:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2533:       -1,    -1,    -1,    25,    -1,    27,    28,    29,    30,    31,
 2534:       32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
 2535:       42,    43,    44,    45,    46,    47,    -1,    49,    -1,    -1,
 2536:       -1,    -1,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
 2537:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    25,   153,
 2538:       27,    28,    29,    30,    31,    32,    33,    34,    35,    36,
 2539:       37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
 2540:       47,    -1,    49,     9,    10,    11,    -1,    -1,    -1,    -1,
 2541:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    25,
 2542:      153,    27,    28,    29,    30,    31,    32,    33,    34,    35,
 2543:       36,    37,    38,    39,    40,    41,    42,    43,    44,    45,
 2544:       46,    47,    -1,    49,    -1,    -1,     9,    10,    11,    -1,
 2545:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2546:       -1,   153,    25,    26,    27,    28,    29,    30,    31,    32,
 2547:       33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
 2548:       43,    44,    45,    46,    47,    -1,    49,    -1,    -1,     9,
 2549:       10,    11,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2550:       -1,    -1,    -1,    -1,    -1,    25,   153,    27,    28,    29,
 2551:       30,    31,    32,    33,    34,    35,    36,    37,    38,    39,
 2552:       40,    41,    42,    43,    44,    45,    46,    47,    -1,    49,
 2553:        9,    10,    11,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2554:       -1,    -1,    -1,    -1,    -1,    -1,    25,   153,    27,    28,
 2555:       29,    30,    31,    32,    33,    34,    35,    36,    37,    38,
 2556:       39,    40,    41,    42,    43,    44,    45,    46,    47,    -1,
 2557:       49,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,    -1,
 2558:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    25,   151,    27,
 2559:       28,    29,    30,    31,    32,    33,    34,    35,    36,    37,
 2560:       38,    39,    40,    41,    42,    43,    44,    45,    46,    47,
 2561:       -1,    49,    -1,    -1,     9,    10,    11,    -1,    -1,    -1,
 2562:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2563:       25,   151,    27,    28,    29,    30,    31,    32,    33,    34,
 2564:       35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
 2565:       45,    46,    47,    -1,    49,     9,    10,    11,    -1,    -1,
 2566:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2567:       -1,    25,   151,    27,    28,    29,    30,    31,    32,    33,
 2568:       34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
 2569:       44,    45,    46,    47,    -1,    49,     9,    10,    11,    -1,
 2570:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2571:       -1,    -1,    25,   151,    27,    28,    29,    30,    31,    32,
 2572:       33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
 2573:       43,    44,    45,    46,    47,    -1,    49,    -1,    -1,     9,
 2574:       10,    11,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2575:       -1,    -1,    -1,    -1,    -1,    25,   151,    27,    28,    29,
 2576:       30,    31,    32,    33,    34,    35,    36,    37,    38,    39,
 2577:       40,    41,    42,    43,    44,    45,    46,    47,    -1,    49,
 2578:       -1,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,    -1,
 2579:       -1,    -1,    -1,    -1,    -1,    -1,   150,    25,    -1,    27,
 2580:       28,    29,    30,    31,    32,    33,    34,    35,    36,    37,
 2581:       38,    39,    40,    41,    42,    43,    44,    45,    46,    47,
 2582:       -1,    49,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
 2583:       -1,    -1,    -1,    -1,    -1,    -1,    -1,   150,    25,    -1,
 2584:       27,    28,    29,    30,    31,    32,    33,    34,    35,    36,
 2585:       37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
 2586:       47,    -1,    49,     9,    10,    11,    -1,    -1,    -1,    -1,
 2587:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    25,
 2588:      150,    27,    28,    29,    30,    31,    32,    33,    34,    35,
 2589:       36,    37,    38,    39,    40,    41,    42,    43,    44,    45,
 2590:       46,    47,    -1,    49,    -1,     9,    10,    11,    -1,    -1,
 2591:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2592:       -1,    25,   150,    27,    28,    29,    30,    31,    32,    33,
 2593:       34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
 2594:       44,    45,    46,    47,    -1,    49,     9,    10,    11,    -1,
 2595:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2596:       -1,    -1,    25,   150,    27,    28,    29,    30,    31,    32,
 2597:       33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
 2598:       43,    44,    45,    46,    47,    -1,    49,     9,    10,    11,
 2599:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2600:       -1,    -1,    -1,    25,   150,    27,    28,    29,    30,    31,
 2601:       32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
 2602:       42,    43,    44,    45,    46,    47,    -1,    49,    -1,     9,
 2603:       10,    11,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2604:       -1,    -1,    -1,    -1,    -1,    25,   150,    27,    28,    29,
 2605:       30,    31,    32,    33,    34,    35,    36,    37,    38,    39,
 2606:       40,    41,    42,    43,    44,    45,    46,    47,    -1,    49,
 2607:       -1,    -1,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
 2608:       -1,    -1,    -1,    -1,    -1,    -1,    -1,   150,    25,    26,
 2609:       27,    28,    29,    30,    31,    32,    33,    34,    35,    36,
 2610:       37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
 2611:       47,    -1,    49,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2612:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   150,     9,
 2613:       10,    11,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2614:       -1,    -1,    -1,    -1,   124,    25,    -1,    27,    28,    29,
 2615:       30,    31,    32,    33,    34,    35,    36,    37,    38,    39,
 2616:       40,    41,    42,    43,    44,    45,    46,    47,    -1,    49,
 2617:       10,    11,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2618:       -1,    -1,    -1,    -1,    -1,    25,    -1,    27,    28,    29,
 2619:       30,    31,    32,    33,    34,    35,    36,    37,    38,    39,
 2620:       40,    41,    42,    43,    44,    45,    46,    47,    11,    49,
 2621:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
 2622:       -1,    -1,    25,    -1,    27,    28,    29,    30,    31,    32,
 2623:       33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
 2624:       43,    44,    45,    46,    47,    -1,    49,    27,    28,    29,
 2625:       30,    31,    32,    33,    34,    35,    36,    37,    38,    39,
 2626:       40,    41,    42,    43,    44,    45,    46,    47,    -1,    49,
 2627:       28,    29,    30,    31,    32,    33,    34,    35,    36,    37,
 2628:       38,    39,    40,    41,    42,    43,    44,    45,    46,    47,
 2629:       -1,    49,    29,    30,    31,    32,    33,    34,    35,    36,
 2630:       37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
 2631:       47,    -1,    49
 2632: };
 2633: 
 2634: /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
 2635:    symbol of state STATE-NUM.  */
 2636: static const yytype_uint16 yystos[] =
 2637: {
 2638:        0,   159,   160,     0,   161,     3,     4,     5,     6,     7,
 2639:       12,    42,    43,    48,    50,    51,    52,    53,    54,    55,
 2640:       56,    57,    58,    59,    60,    61,    62,    63,    64,    65,
 2641:       69,    70,    71,    72,    73,    75,    79,    80,    81,    82,
 2642:       84,    86,    88,    91,    95,    96,    97,    98,    99,   100,
 2643:      101,   103,   104,   106,   110,   111,   112,   114,   115,   116,
 2644:      117,   118,   119,   120,   125,   126,   128,   129,   130,   131,
 2645:      132,   133,   140,   145,   146,   147,   148,   149,   151,   152,
 2646:      154,   156,   157,   162,   163,   168,   172,   173,   203,   204,
 2647:      206,   208,   211,   213,   276,   278,   292,   295,   304,   315,
 2648:      318,   322,   323,   325,   326,   336,   337,   338,   339,   341,
 2649:      342,   343,   344,   350,   360,   363,    71,   112,   145,   292,
 2650:      322,   322,   149,   322,   322,   322,   322,   322,   322,   322,
 2651:      289,   322,   322,   322,   322,   322,   322,   322,   112,   145,
 2652:      148,   162,   304,   325,   326,   338,   325,    31,   322,   354,
 2653:      355,   322,   145,   148,   162,   304,   306,   307,   338,   342,
 2654:      343,   350,   149,   312,   149,    26,   266,   322,   180,   149,
 2655:      149,   149,   190,   149,   151,   322,   151,   322,    71,    71,
 2656:      151,   278,   322,   326,   191,   322,   148,   162,   166,   167,
 2657:       73,   154,   240,   241,   118,   118,    73,   242,   292,   149,
 2658:      149,   149,   149,   149,   149,    73,    78,   141,   142,   143,
 2659:      356,   357,   148,   152,   162,   162,   276,   322,   169,   152,
 2660:       78,   313,   356,    78,   356,   148,   149,     8,   151,    71,
 2661:       71,    31,   205,   340,   144,     9,    10,    11,    25,    27,
 2662:       28,    29,    30,    31,    32,    33,    34,    35,    36,    37,
 2663:       38,    39,    40,    41,    42,    43,    44,    45,    46,    47,
 2664:       49,   151,    59,    60,    13,    14,    15,    16,    17,    18,
 2665:       19,    20,    21,    22,    23,    24,   149,   144,    61,   123,
 2666:       61,   152,   154,   343,   205,   322,   322,   148,   162,   144,
 2667:      144,   324,   326,   124,   155,     8,   320,   148,   162,   144,
 2668:      277,   144,   123,   343,   150,   322,   322,     8,   151,   172,
 2669:      178,   267,   268,   322,   278,   326,   149,   322,   151,   151,
 2670:      151,    13,   151,   151,   152,   151,   162,    90,     8,   151,
 2671:      152,   323,   326,     8,   151,    13,     8,   151,   205,   201,
 2672:      202,   326,   326,   361,   326,   150,   279,   354,    61,   123,
 2673:      141,   357,    72,   322,   326,    78,   141,   357,   162,   165,
 2674:      151,   152,   149,   150,   150,   153,   170,   322,   156,   157,
 2675:       71,   296,    71,   121,   212,   210,    71,   149,    61,    71,
 2676:      152,   336,   343,   349,   350,   283,   322,   284,    26,   286,
 2677:      281,   282,   322,   322,   322,   322,   322,   322,   322,   322,
 2678:      322,   322,   322,   322,   322,   322,   322,   322,   322,   322,
 2679:      322,   306,    31,   322,   322,   322,   322,   322,   322,   322,
 2680:      322,   322,   322,   322,   322,   303,    71,   336,   349,   322,
 2681:      345,   327,   345,   322,   150,   162,    71,    31,   322,    31,
 2682:      322,   162,   336,   149,   314,   336,   308,   150,   150,   322,
 2683:       82,   322,   151,     8,    90,    90,    71,   222,   150,    42,
 2684:       43,    61,   126,   128,   140,   145,   148,   162,   304,   315,
 2685:      316,   317,   169,    90,    71,   167,   322,   241,   316,    73,
 2686:      149,     8,   150,     8,   150,   150,   151,   125,   326,   351,
 2687:      352,   150,   358,    71,    61,   153,   153,   149,   160,   164,
 2688:      298,   285,   117,   171,   172,   203,   204,   153,    31,   238,
 2689:      239,   278,   326,    13,   145,   148,   162,   305,   209,   121,
 2690:      214,   207,   290,   345,   322,   149,   149,   343,   322,   322,
 2691:      288,   322,   322,   322,    63,   326,   238,   149,   149,   155,
 2692:      336,   346,   348,   349,   155,   153,   324,   324,   124,   238,
 2693:      346,    26,   174,   149,   150,   182,   269,   188,   186,    13,
 2694:        8,   150,   185,   316,   316,   316,   319,   321,   149,    78,
 2695:      148,   162,   144,   153,    71,   153,    13,   291,   202,   151,
 2696:      362,   149,     8,   150,    71,    73,    74,   359,   322,   297,
 2697:      153,   160,   238,   274,   275,   149,   324,   150,     8,   316,
 2698:      148,   162,   122,   215,   216,   305,   152,   149,   126,   127,
 2699:      235,   236,   237,   305,   155,   153,   300,   299,   322,    26,
 2700:      306,   150,   302,   301,   347,   328,    61,   152,    31,   322,
 2701:      150,   309,   176,   172,   181,   179,   267,   322,   326,    31,
 2702:      218,   326,   316,    71,    26,   172,   221,    26,   152,   223,
 2703:      124,   155,     8,   320,   319,   162,    71,   102,   316,   235,
 2704:      326,   353,   352,    13,   155,   155,   238,   153,   150,    61,
 2705:      123,   270,   271,   272,   330,   150,    31,   278,   326,   162,
 2706:      216,   152,     8,   243,   235,   150,     8,    31,    73,   238,
 2707:      238,   287,   280,   238,   238,   149,   332,   333,   335,   345,
 2708:      322,   324,   310,   169,   175,   322,    26,   172,   228,   151,
 2709:      124,   217,   326,   217,    13,   169,   151,   224,   151,   224,
 2710:      316,   316,   150,   149,   150,   351,   322,   153,   150,   345,
 2711:      346,   330,    61,   273,   151,   324,   243,   305,    99,   104,
 2712:      107,   108,   109,   110,   111,   112,   113,   153,   244,   247,
 2713:      260,   261,   262,   263,   265,   150,   104,   293,   237,    73,
 2714:       13,   150,   150,   322,   314,   150,   150,   334,    61,    61,
 2715:      329,   155,   153,   123,   311,   177,   229,   150,   169,   183,
 2716:      218,   150,   150,   316,    89,   224,    92,    93,    94,   224,
 2717:      153,   124,   192,   293,   150,   155,   331,   345,   270,   153,
 2718:       71,   248,   305,   245,   292,   263,     8,   151,   152,   149,
 2719:      152,    31,    73,    13,   316,   238,   345,   345,   330,   346,
 2720:      231,    66,    67,   233,   151,    83,   267,   189,   187,   151,
 2721:       92,   151,   322,    26,   151,   227,   153,   316,   305,   152,
 2722:      335,   155,    13,     8,   151,   152,   249,    73,   264,   205,
 2723:       71,   169,    31,    73,   294,   169,    73,    13,   316,   150,
 2724:      155,   155,    66,    67,   234,   149,   172,   151,   150,    26,
 2725:      172,   220,   220,   151,   227,   226,   193,   169,   316,   305,
 2726:       71,   250,   251,   252,   253,   255,   256,   257,   305,    13,
 2727:        8,   151,    71,    13,   153,    73,     8,   150,   153,    13,
 2728:      316,   149,    26,    68,   322,   184,   169,   225,   169,    73,
 2729:      153,   153,   252,   151,    90,   105,   151,   144,   316,    73,
 2730:      246,   316,    31,    73,   316,   322,   169,   151,   150,    26,
 2731:      172,   219,    87,   169,   150,   258,   263,   254,   305,    71,
 2732:       13,   149,    73,   150,   230,   169,   151,   194,    71,     8,
 2733:      316,   235,    26,   172,    85,   152,   305,   150,   232,   151,
 2734:      169,   151,   152,   259,   169,   153,   169,   195,   153,   102,
 2735:      196,   197,   198,   149,   198,   305,   199,    73,   150,   200,
 2736:      152,   169,   153
 2737: };
 2738: 
 2739: #define yyerrok		(yyerrstatus = 0)
 2740: #define yyclearin	(yychar = YYEMPTY)
 2741: #define YYEMPTY		(-2)
 2742: #define YYEOF		0
 2743: 
 2744: #define YYACCEPT	goto yyacceptlab
 2745: #define YYABORT		goto yyabortlab
 2746: #define YYERROR		goto yyerrorlab
 2747: 
 2748: 
 2749: /* Like YYERROR except do call yyerror.  This remains here temporarily
 2750:    to ease the transition to the new meaning of YYERROR, for GCC.
 2751:    Once GCC version 2 has supplanted version 1, this can go.  However,
 2752:    YYFAIL appears to be in use.  Nevertheless, it is formally deprecated
 2753:    in Bison 2.4.2's NEWS entry, where a plan to phase it out is
 2754:    discussed.  */
 2755: 
 2756: #define YYFAIL		goto yyerrlab
 2757: #if defined YYFAIL
 2758:   /* This is here to suppress warnings from the GCC cpp's
 2759:      -Wunused-macros.  Normally we don't worry about that warning, but
 2760:      some users do, and we want to make it easy for users to remove
 2761:      YYFAIL uses, which will produce warnings from Bison 2.5.  */
 2762: #endif
 2763: 
 2764: #define YYRECOVERING()  (!!yyerrstatus)
 2765: 
 2766: #define YYBACKUP(Token, Value)                                  \
 2767: do                                                              \
 2768:   if (yychar == YYEMPTY)                                        \
 2769:     {                                                           \
 2770:       yychar = (Token);                                         \
 2771:       yylval = (Value);                                         \
 2772:       YYPOPSTACK (yylen);                                       \
 2773:       yystate = *yyssp;                                         \
 2774:       goto yybackup;                                            \
 2775:     }                                                           \
 2776:   else                                                          \
 2777:     {                                                           \
 2778:       yyerror (YY_("syntax error: cannot back up")); \
 2779:       YYERROR;							\
 2780:     }								\
 2781: while (YYID (0))
 2782: 
 2783: /* Error token number */
 2784: #define YYTERROR	1
 2785: #define YYERRCODE	256
 2786: 
 2787: 
 2788: /* This macro is provided for backward compatibility. */
 2789: #ifndef YY_LOCATION_PRINT
 2790: # define YY_LOCATION_PRINT(File, Loc) ((void) 0)
 2791: #endif
 2792: 
 2793: 
 2794: /* YYLEX -- calling `yylex' with the right arguments.  */
 2795: #ifdef YYLEX_PARAM
 2796: # define YYLEX yylex (&yylval, YYLEX_PARAM)
 2797: #else
 2798: # define YYLEX yylex (&yylval)
 2799: #endif
 2800: 
 2801: /* Enable debugging if requested.  */
 2802: #if YYDEBUG
 2803: 
 2804: # ifndef YYFPRINTF
 2805: #  include <stdio.h> /* INFRINGES ON USER NAME SPACE */
 2806: #  define YYFPRINTF fprintf
 2807: # endif
 2808: 
 2809: # define YYDPRINTF(Args)			\
 2810: do {						\
 2811:   if (yydebug)					\
 2812:     YYFPRINTF Args;				\
 2813: } while (YYID (0))
 2814: 
 2815: # define YY_SYMBOL_PRINT(Title, Type, Value, Location)			  \
 2816: do {									  \
 2817:   if (yydebug)								  \
 2818:     {									  \
 2819:       YYFPRINTF (stderr, "%s ", Title);					  \
 2820:       yy_symbol_print (stderr,						  \
 2821: 		  Type, Value); \
 2822:       YYFPRINTF (stderr, "\n");						  \
 2823:     }									  \
 2824: } while (YYID (0))
 2825: 
 2826: 
 2827: /*--------------------------------.
 2828: | Print this symbol on YYOUTPUT.  |
 2829: `--------------------------------*/
 2830: 
 2831: /*ARGSUSED*/
 2832: #if (defined __STDC__ || defined __C99__FUNC__ \
 2833:      || defined __cplusplus || defined _MSC_VER)
 2834: static void
 2835: yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
 2836: #else
 2837: static void
 2838: yy_symbol_value_print (yyoutput, yytype, yyvaluep)
 2839:     FILE *yyoutput;
 2840:     int yytype;
 2841:     YYSTYPE const * const yyvaluep;
 2842: #endif
 2843: {
 2844:   FILE *yyo = yyoutput;
 2845:   YYUSE (yyo);
 2846:   if (!yyvaluep)
 2847:     return;
 2848: # ifdef YYPRINT
 2849:   if (yytype < YYNTOKENS)
 2850:     YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
 2851: # else
 2852:   YYUSE (yyoutput);
 2853: # endif
 2854:   switch (yytype)
 2855:     {
 2856:       default:
 2857:         break;
 2858:     }
 2859: }
 2860: 
 2861: 
 2862: /*--------------------------------.
 2863: | Print this symbol on YYOUTPUT.  |
 2864: `--------------------------------*/
 2865: 
 2866: #if (defined __STDC__ || defined __C99__FUNC__ \
 2867:      || defined __cplusplus || defined _MSC_VER)
 2868: static void
 2869: yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
 2870: #else
 2871: static void
 2872: yy_symbol_print (yyoutput, yytype, yyvaluep)
 2873:     FILE *yyoutput;
 2874:     int yytype;
 2875:     YYSTYPE const * const yyvaluep;
 2876: #endif
 2877: {
 2878:   if (yytype < YYNTOKENS)
 2879:     YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
 2880:   else
 2881:     YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
 2882: 
 2883:   yy_symbol_value_print (yyoutput, yytype, yyvaluep);
 2884:   YYFPRINTF (yyoutput, ")");
 2885: }
 2886: 
 2887: /*------------------------------------------------------------------.
 2888: | yy_stack_print -- Print the state stack from its BOTTOM up to its |
 2889: | TOP (included).                                                   |
 2890: `------------------------------------------------------------------*/
 2891: 
 2892: #if (defined __STDC__ || defined __C99__FUNC__ \
 2893:      || defined __cplusplus || defined _MSC_VER)
 2894: static void
 2895: yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop)
 2896: #else
 2897: static void
 2898: yy_stack_print (yybottom, yytop)
 2899:     yytype_int16 *yybottom;
 2900:     yytype_int16 *yytop;
 2901: #endif
 2902: {
 2903:   YYFPRINTF (stderr, "Stack now");
 2904:   for (; yybottom <= yytop; yybottom++)
 2905:     {
 2906:       int yybot = *yybottom;
 2907:       YYFPRINTF (stderr, " %d", yybot);
 2908:     }
 2909:   YYFPRINTF (stderr, "\n");
 2910: }
 2911: 
 2912: # define YY_STACK_PRINT(Bottom, Top)				\
 2913: do {								\
 2914:   if (yydebug)							\
 2915:     yy_stack_print ((Bottom), (Top));				\
 2916: } while (YYID (0))
 2917: 
 2918: 
 2919: /*------------------------------------------------.
 2920: | Report that the YYRULE is going to be reduced.  |
 2921: `------------------------------------------------*/
 2922: 
 2923: #if (defined __STDC__ || defined __C99__FUNC__ \
 2924:      || defined __cplusplus || defined _MSC_VER)
 2925: static void
 2926: yy_reduce_print (YYSTYPE *yyvsp, int yyrule)
 2927: #else
 2928: static void
 2929: yy_reduce_print (yyvsp, yyrule)
 2930:     YYSTYPE *yyvsp;
 2931:     int yyrule;
 2932: #endif
 2933: {
 2934:   int yynrhs = yyr2[yyrule];
 2935:   int yyi;
 2936:   unsigned long int yylno = yyrline[yyrule];
 2937:   YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n",
 2938: 	     yyrule - 1, yylno);
 2939:   /* The symbols being reduced.  */
 2940:   for (yyi = 0; yyi < yynrhs; yyi++)
 2941:     {
 2942:       YYFPRINTF (stderr, "   $%d = ", yyi + 1);
 2943:       yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi],
 2944: 		       &(yyvsp[(yyi + 1) - (yynrhs)])
 2945: 		       		       );
 2946:       YYFPRINTF (stderr, "\n");
 2947:     }
 2948: }
 2949: 
 2950: # define YY_REDUCE_PRINT(Rule)		\
 2951: do {					\
 2952:   if (yydebug)				\
 2953:     yy_reduce_print (yyvsp, Rule); \
 2954: } while (YYID (0))
 2955: 
 2956: /* Nonzero means print parse trace.  It is left uninitialized so that
 2957:    multiple parsers can coexist.  */
 2958: int yydebug;
 2959: #else /* !YYDEBUG */
 2960: # define YYDPRINTF(Args)
 2961: # define YY_SYMBOL_PRINT(Title, Type, Value, Location)
 2962: # define YY_STACK_PRINT(Bottom, Top)
 2963: # define YY_REDUCE_PRINT(Rule)
 2964: #endif /* !YYDEBUG */
 2965: 
 2966: 
 2967: /* YYINITDEPTH -- initial size of the parser's stacks.  */
 2968: #ifndef	YYINITDEPTH
 2969: # define YYINITDEPTH 200
 2970: #endif
 2971: 
 2972: /* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
 2973:    if the built-in stack extension method is used).
 2974: 
 2975:    Do not make this value too large; the results are undefined if
 2976:    YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
 2977:    evaluated with infinite-precision integer arithmetic.  */
 2978: 
 2979: #ifndef YYMAXDEPTH
 2980: # define YYMAXDEPTH 10000
 2981: #endif
 2982: 
 2983: 
 2984: #if YYERROR_VERBOSE
 2985: 
 2986: # ifndef yystrlen
 2987: #  if defined __GLIBC__ && defined _STRING_H
 2988: #   define yystrlen strlen
 2989: #  else
 2990: /* Return the length of YYSTR.  */
 2991: #if (defined __STDC__ || defined __C99__FUNC__ \
 2992:      || defined __cplusplus || defined _MSC_VER)
 2993: static YYSIZE_T
 2994: yystrlen (const char *yystr)
 2995: #else
 2996: static YYSIZE_T
 2997: yystrlen (yystr)
 2998:     const char *yystr;
 2999: #endif
 3000: {
 3001:   YYSIZE_T yylen;
 3002:   for (yylen = 0; yystr[yylen]; yylen++)
 3003:     continue;
 3004:   return yylen;
 3005: }
 3006: #  endif
 3007: # endif
 3008: 
 3009: # ifndef yystpcpy
 3010: #  if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
 3011: #   define yystpcpy stpcpy
 3012: #  else
 3013: /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
 3014:    YYDEST.  */
 3015: #if (defined __STDC__ || defined __C99__FUNC__ \
 3016:      || defined __cplusplus || defined _MSC_VER)
 3017: static char *
 3018: yystpcpy (char *yydest, const char *yysrc)
 3019: #else
 3020: static char *
 3021: yystpcpy (yydest, yysrc)
 3022:     char *yydest;
 3023:     const char *yysrc;
 3024: #endif
 3025: {
 3026:   char *yyd = yydest;
 3027:   const char *yys = yysrc;
 3028: 
 3029:   while ((*yyd++ = *yys++) != '\0')
 3030:     continue;
 3031: 
 3032:   return yyd - 1;
 3033: }
 3034: #  endif
 3035: # endif
 3036: 
 3037: # ifndef yytnamerr
 3038: /* Copy to YYRES the contents of YYSTR after stripping away unnecessary
 3039:    quotes and backslashes, so that it's suitable for yyerror.  The
 3040:    heuristic is that double-quoting is unnecessary unless the string
 3041:    contains an apostrophe, a comma, or backslash (other than
 3042:    backslash-backslash).  YYSTR is taken from yytname.  If YYRES is
 3043:    null, do not copy; instead, return the length of what the result
 3044:    would have been.  */
 3045: static YYSIZE_T
 3046: yytnamerr (char *yyres, const char *yystr)
 3047: {
 3048:   if (*yystr == '"')
 3049:     {
 3050:       YYSIZE_T yyn = 0;
 3051:       char const *yyp = yystr;
 3052: 
 3053:       for (;;)
 3054: 	switch (*++yyp)
 3055: 	  {
 3056: 	  case '\'':
 3057: 	  case ',':
 3058: 	    goto do_not_strip_quotes;
 3059: 
 3060: 	  case '\\':
 3061: 	    if (*++yyp != '\\')
 3062: 	      goto do_not_strip_quotes;
 3063: 	    /* Fall through.  */
 3064: 	  default:
 3065: 	    if (yyres)
 3066: 	      yyres[yyn] = *yyp;
 3067: 	    yyn++;
 3068: 	    break;
 3069: 
 3070: 	  case '"':
 3071: 	    if (yyres)
 3072: 	      yyres[yyn] = '\0';
 3073: 	    return yyn;
 3074: 	  }
 3075:     do_not_strip_quotes: ;
 3076:     }
 3077: 
 3078:   if (! yyres)
 3079:     return yystrlen (yystr);
 3080: 
 3081:   return yystpcpy (yyres, yystr) - yyres;
 3082: }
 3083: # endif
 3084: 
 3085: /* Copy into *YYMSG, which is of size *YYMSG_ALLOC, an error message
 3086:    about the unexpected token YYTOKEN for the state stack whose top is
 3087:    YYSSP.
 3088: 
 3089:    Return 0 if *YYMSG was successfully written.  Return 1 if *YYMSG is
 3090:    not large enough to hold the message.  In that case, also set
 3091:    *YYMSG_ALLOC to the required number of bytes.  Return 2 if the
 3092:    required number of bytes is too large to store.  */
 3093: static int
 3094: yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg,
 3095:                 yytype_int16 *yyssp, int yytoken)
 3096: {
 3097:   YYSIZE_T yysize0 = yytnamerr (YY_NULL, yytname[yytoken]);
 3098:   YYSIZE_T yysize = yysize0;
 3099:   enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
 3100:   /* Internationalized format string. */
 3101:   const char *yyformat = YY_NULL;
 3102:   /* Arguments of yyformat. */
 3103:   char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
 3104:   /* Number of reported tokens (one for the "unexpected", one per
 3105:      "expected"). */
 3106:   int yycount = 0;
 3107: 
 3108:   /* There are many possibilities here to consider:
 3109:      - Assume YYFAIL is not used.  It's too flawed to consider.  See
 3110:        <http://lists.gnu.org/archive/html/bison-patches/2009-12/msg00024.html>
 3111:        for details.  YYERROR is fine as it does not invoke this
 3112:        function.
 3113:      - If this state is a consistent state with a default action, then
 3114:        the only way this function was invoked is if the default action
 3115:        is an error action.  In that case, don't check for expected
 3116:        tokens because there are none.
 3117:      - The only way there can be no lookahead present (in yychar) is if
 3118:        this state is a consistent state with a default action.  Thus,
 3119:        detecting the absence of a lookahead is sufficient to determine
 3120:        that there is no unexpected or expected token to report.  In that
 3121:        case, just report a simple "syntax error".
 3122:      - Don't assume there isn't a lookahead just because this state is a
 3123:        consistent state with a default action.  There might have been a
 3124:        previous inconsistent state, consistent state with a non-default
 3125:        action, or user semantic action that manipulated yychar.
 3126:      - Of course, the expected token list depends on states to have
 3127:        correct lookahead information, and it depends on the parser not
 3128:        to perform extra reductions after fetching a lookahead from the
 3129:        scanner and before detecting a syntax error.  Thus, state merging
 3130:        (from LALR or IELR) and default reductions corrupt the expected
 3131:        token list.  However, the list is correct for canonical LR with
 3132:        one exception: it will still contain any token that will not be
 3133:        accepted due to an error action in a later state.
 3134:   */
 3135:   if (yytoken != YYEMPTY)
 3136:     {
 3137:       int yyn = yypact[*yyssp];
 3138:       yyarg[yycount++] = yytname[yytoken];
 3139:       if (!yypact_value_is_default (yyn))
 3140:         {
 3141:           /* Start YYX at -YYN if negative to avoid negative indexes in
 3142:              YYCHECK.  In other words, skip the first -YYN actions for
 3143:              this state because they are default actions.  */
 3144:           int yyxbegin = yyn < 0 ? -yyn : 0;
 3145:           /* Stay within bounds of both yycheck and yytname.  */
 3146:           int yychecklim = YYLAST - yyn + 1;
 3147:           int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
 3148:           int yyx;
 3149: 
 3150:           for (yyx = yyxbegin; yyx < yyxend; ++yyx)
 3151:             if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR
 3152:                 && !yytable_value_is_error (yytable[yyx + yyn]))
 3153:               {
 3154:                 if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
 3155:                   {
 3156:                     yycount = 1;
 3157:                     yysize = yysize0;
 3158:                     break;
 3159:                   }
 3160:                 yyarg[yycount++] = yytname[yyx];
 3161:                 {
 3162:                   YYSIZE_T yysize1 = yysize + yytnamerr (YY_NULL, yytname[yyx]);
 3163:                   if (! (yysize <= yysize1
 3164:                          && yysize1 <= YYSTACK_ALLOC_MAXIMUM))
 3165:                     return 2;
 3166:                   yysize = yysize1;
 3167:                 }
 3168:               }
 3169:         }
 3170:     }
 3171: 
 3172:   switch (yycount)
 3173:     {
 3174: # define YYCASE_(N, S)                      \
 3175:       case N:                               \
 3176:         yyformat = S;                       \
 3177:       break
 3178:       YYCASE_(0, YY_("syntax error"));
 3179:       YYCASE_(1, YY_("syntax error, unexpected %s"));
 3180:       YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s"));
 3181:       YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s"));
 3182:       YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s"));
 3183:       YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"));
 3184: # undef YYCASE_
 3185:     }
 3186: 
 3187:   {
 3188:     YYSIZE_T yysize1 = yysize + yystrlen (yyformat);
 3189:     if (! (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM))
 3190:       return 2;
 3191:     yysize = yysize1;
 3192:   }
 3193: 
 3194:   if (*yymsg_alloc < yysize)
 3195:     {
 3196:       *yymsg_alloc = 2 * yysize;
 3197:       if (! (yysize <= *yymsg_alloc
 3198:              && *yymsg_alloc <= YYSTACK_ALLOC_MAXIMUM))
 3199:         *yymsg_alloc = YYSTACK_ALLOC_MAXIMUM;
 3200:       return 1;
 3201:     }
 3202: 
 3203:   /* Avoid sprintf, as that infringes on the user's name space.
 3204:      Don't have undefined behavior even if the translation
 3205:      produced a string with the wrong number of "%s"s.  */
 3206:   {
 3207:     char *yyp = *yymsg;
 3208:     int yyi = 0;
 3209:     while ((*yyp = *yyformat) != '\0')
 3210:       if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount)
 3211:         {
 3212:           yyp += yytnamerr (yyp, yyarg[yyi++]);
 3213:           yyformat += 2;
 3214:         }
 3215:       else
 3216:         {
 3217:           yyp++;
 3218:           yyformat++;
 3219:         }
 3220:   }
 3221:   return 0;
 3222: }
 3223: #endif /* YYERROR_VERBOSE */
 3224: 
 3225: /*-----------------------------------------------.
 3226: | Release the memory associated to this symbol.  |
 3227: `-----------------------------------------------*/
 3228: 
 3229: /*ARGSUSED*/
 3230: #if (defined __STDC__ || defined __C99__FUNC__ \
 3231:      || defined __cplusplus || defined _MSC_VER)
 3232: static void
 3233: yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)
 3234: #else
 3235: static void
 3236: yydestruct (yymsg, yytype, yyvaluep)
 3237:     const char *yymsg;
 3238:     int yytype;
 3239:     YYSTYPE *yyvaluep;
 3240: #endif
 3241: {
 3242:   YYUSE (yyvaluep);
 3243: 
 3244:   if (!yymsg)
 3245:     yymsg = "Deleting";
 3246:   YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
 3247: 
 3248:   switch (yytype)
 3249:     {
 3250: 
 3251:       default:
 3252:         break;
 3253:     }
 3254: }
 3255: 
 3256: 
 3257: 
 3258: 
 3259: /*----------.
 3260: | yyparse.  |
 3261: `----------*/
 3262: 
 3263: #ifdef YYPARSE_PARAM
 3264: #if (defined __STDC__ || defined __C99__FUNC__ \
 3265:      || defined __cplusplus || defined _MSC_VER)
 3266: int
 3267: yyparse (void *YYPARSE_PARAM)
 3268: #else
 3269: int
 3270: yyparse (YYPARSE_PARAM)
 3271:     void *YYPARSE_PARAM;
 3272: #endif
 3273: #else /* ! YYPARSE_PARAM */
 3274: #if (defined __STDC__ || defined __C99__FUNC__ \
 3275:      || defined __cplusplus || defined _MSC_VER)
 3276: int
 3277: yyparse (void)
 3278: #else
 3279: int
 3280: yyparse ()
 3281: 
 3282: #endif
 3283: #endif
 3284: {
 3285: /* The lookahead symbol.  */
 3286: int yychar;
 3287: 
 3288: 
 3289: #if defined __GNUC__ && 407 <= __GNUC__ * 100 + __GNUC_MINOR__
 3290: /* Suppress an incorrect diagnostic about yylval being uninitialized.  */
 3291: # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
 3292:     _Pragma ("GCC diagnostic push") \
 3293:     _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")\
 3294:     _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"")
 3295: # define YY_IGNORE_MAYBE_UNINITIALIZED_END \
 3296:     _Pragma ("GCC diagnostic pop")
 3297: #else
 3298: /* Default value used for initialization, for pacifying older GCCs
 3299:    or non-GCC compilers.  */
 3300: static YYSTYPE yyval_default;
 3301: # define YY_INITIAL_VALUE(Value) = Value
 3302: #endif
 3303: #ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
 3304: # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
 3305: # define YY_IGNORE_MAYBE_UNINITIALIZED_END
 3306: #endif
 3307: #ifndef YY_INITIAL_VALUE
 3308: # define YY_INITIAL_VALUE(Value) /* Nothing. */
 3309: #endif
 3310: 
 3311: /* The semantic value of the lookahead symbol.  */
 3312: YYSTYPE yylval YY_INITIAL_VALUE(yyval_default);
 3313: 
 3314:     /* Number of syntax errors so far.  */
 3315:     int yynerrs;
 3316: 
 3317:     int yystate;
 3318:     /* Number of tokens to shift before error messages enabled.  */
 3319:     int yyerrstatus;
 3320: 
 3321:     /* The stacks and their tools:
 3322:        `yyss': related to states.
 3323:        `yyvs': related to semantic values.
 3324: 
 3325:        Refer to the stacks through separate pointers, to allow yyoverflow
 3326:        to reallocate them elsewhere.  */
 3327: 
 3328:     /* The state stack.  */
 3329:     yytype_int16 yyssa[YYINITDEPTH];
 3330:     yytype_int16 *yyss;
 3331:     yytype_int16 *yyssp;
 3332: 
 3333:     /* The semantic value stack.  */
 3334:     YYSTYPE yyvsa[YYINITDEPTH];
 3335:     YYSTYPE *yyvs;
 3336:     YYSTYPE *yyvsp;
 3337: 
 3338:     YYSIZE_T yystacksize;
 3339: 
 3340:   int yyn;
 3341:   int yyresult;
 3342:   /* Lookahead token as an internal (translated) token number.  */
 3343:   int yytoken = 0;
 3344:   /* The variables used to return semantic value and location from the
 3345:      action routines.  */
 3346:   YYSTYPE yyval;
 3347: 
 3348: #if YYERROR_VERBOSE
 3349:   /* Buffer for error messages, and its allocated size.  */
 3350:   char yymsgbuf[128];
 3351:   char *yymsg = yymsgbuf;
 3352:   YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
 3353: #endif
 3354: 
 3355: #define YYPOPSTACK(N)   (yyvsp -= (N), yyssp -= (N))
 3356: 
 3357:   /* The number of symbols on the RHS of the reduced rule.
 3358:      Keep to zero when no symbol should be popped.  */
 3359:   int yylen = 0;
 3360: 
 3361:   yyssp = yyss = yyssa;
 3362:   yyvsp = yyvs = yyvsa;
 3363:   yystacksize = YYINITDEPTH;
 3364: 
 3365:   YYDPRINTF ((stderr, "Starting parse\n"));
 3366: 
 3367:   yystate = 0;
 3368:   yyerrstatus = 0;
 3369:   yynerrs = 0;
 3370:   yychar = YYEMPTY; /* Cause a token to be read.  */
 3371:   goto yysetstate;
 3372: 
 3373: /*------------------------------------------------------------.
 3374: | yynewstate -- Push a new state, which is found in yystate.  |
 3375: `------------------------------------------------------------*/
 3376:  yynewstate:
 3377:   /* In all cases, when you get here, the value and location stacks
 3378:      have just been pushed.  So pushing a state here evens the stacks.  */
 3379:   yyssp++;
 3380: 
 3381:  yysetstate:
 3382:   *yyssp = yystate;
 3383: 
 3384:   if (yyss + yystacksize - 1 <= yyssp)
 3385:     {
 3386:       /* Get the current used size of the three stacks, in elements.  */
 3387:       YYSIZE_T yysize = yyssp - yyss + 1;
 3388: 
 3389: #ifdef yyoverflow
 3390:       {
 3391: 	/* Give user a chance to reallocate the stack.  Use copies of
 3392: 	   these so that the &'s don't force the real ones into
 3393: 	   memory.  */
 3394: 	YYSTYPE *yyvs1 = yyvs;
 3395: 	yytype_int16 *yyss1 = yyss;
 3396: 
 3397: 	/* Each stack pointer address is followed by the size of the
 3398: 	   data in use in that stack, in bytes.  This used to be a
 3399: 	   conditional around just the two extra args, but that might
 3400: 	   be undefined if yyoverflow is a macro.  */
 3401: 	yyoverflow (YY_("memory exhausted"),
 3402: 		    &yyss1, yysize * sizeof (*yyssp),
 3403: 		    &yyvs1, yysize * sizeof (*yyvsp),
 3404: 		    &yystacksize);
 3405: 
 3406: 	yyss = yyss1;
 3407: 	yyvs = yyvs1;
 3408:       }
 3409: #else /* no yyoverflow */
 3410: # ifndef YYSTACK_RELOCATE
 3411:       goto yyexhaustedlab;
 3412: # else
 3413:       /* Extend the stack our own way.  */
 3414:       if (YYMAXDEPTH <= yystacksize)
 3415: 	goto yyexhaustedlab;
 3416:       yystacksize *= 2;
 3417:       if (YYMAXDEPTH < yystacksize)
 3418: 	yystacksize = YYMAXDEPTH;
 3419: 
 3420:       {
 3421: 	yytype_int16 *yyss1 = yyss;
 3422: 	union yyalloc *yyptr =
 3423: 	  (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
 3424: 	if (! yyptr)
 3425: 	  goto yyexhaustedlab;
 3426: 	YYSTACK_RELOCATE (yyss_alloc, yyss);
 3427: 	YYSTACK_RELOCATE (yyvs_alloc, yyvs);
 3428: #  undef YYSTACK_RELOCATE
 3429: 	if (yyss1 != yyssa)
 3430: 	  YYSTACK_FREE (yyss1);
 3431:       }
 3432: # endif
 3433: #endif /* no yyoverflow */
 3434: 
 3435:       yyssp = yyss + yysize - 1;
 3436:       yyvsp = yyvs + yysize - 1;
 3437: 
 3438:       YYDPRINTF ((stderr, "Stack size increased to %lu\n",
 3439: 		  (unsigned long int) yystacksize));
 3440: 
 3441:       if (yyss + yystacksize - 1 <= yyssp)
 3442: 	YYABORT;
 3443:     }
 3444: 
 3445:   YYDPRINTF ((stderr, "Entering state %d\n", yystate));
 3446: 
 3447:   if (yystate == YYFINAL)
 3448:     YYACCEPT;
 3449: 
 3450:   goto yybackup;
 3451: 
 3452: /*-----------.
 3453: | yybackup.  |
 3454: `-----------*/
 3455: yybackup:
 3456: 
 3457:   /* Do appropriate processing given the current state.  Read a
 3458:      lookahead token if we need one and don't already have one.  */
 3459: 
 3460:   /* First try to decide what to do without reference to lookahead token.  */
 3461:   yyn = yypact[yystate];
 3462:   if (yypact_value_is_default (yyn))
 3463:     goto yydefault;
 3464: 
 3465:   /* Not known => get a lookahead token if don't already have one.  */
 3466: 
 3467:   /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol.  */
 3468:   if (yychar == YYEMPTY)
 3469:     {
 3470:       YYDPRINTF ((stderr, "Reading a token: "));
 3471:       yychar = YYLEX;
 3472:     }
 3473: 
 3474:   if (yychar <= YYEOF)
 3475:     {
 3476:       yychar = yytoken = YYEOF;
 3477:       YYDPRINTF ((stderr, "Now at end of input.\n"));
 3478:     }
 3479:   else
 3480:     {
 3481:       yytoken = YYTRANSLATE (yychar);
 3482:       YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
 3483:     }
 3484: 
 3485:   /* If the proper action on seeing token YYTOKEN is to reduce or to
 3486:      detect an error, take that action.  */
 3487:   yyn += yytoken;
 3488:   if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
 3489:     goto yydefault;
 3490:   yyn = yytable[yyn];
 3491:   if (yyn <= 0)
 3492:     {
 3493:       if (yytable_value_is_error (yyn))
 3494:         goto yyerrlab;
 3495:       yyn = -yyn;
 3496:       goto yyreduce;
 3497:     }
 3498: 
 3499:   /* Count tokens shifted since error; after three, turn off error
 3500:      status.  */
 3501:   if (yyerrstatus)
 3502:     yyerrstatus--;
 3503: 
 3504:   /* Shift the lookahead token.  */
 3505:   YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
 3506: 
 3507:   /* Discard the shifted token.  */
 3508:   yychar = YYEMPTY;
 3509: 
 3510:   yystate = yyn;
 3511:   YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
 3512:   *++yyvsp = yylval;
 3513:   YY_IGNORE_MAYBE_UNINITIALIZED_END
 3514: 
 3515:   goto yynewstate;
 3516: 
 3517: 
 3518: /*-----------------------------------------------------------.
 3519: | yydefault -- do the default action for the current state.  |
 3520: `-----------------------------------------------------------*/
 3521: yydefault:
 3522:   yyn = yydefact[yystate];
 3523:   if (yyn == 0)
 3524:     goto yyerrlab;
 3525:   goto yyreduce;
 3526: 
 3527: 
 3528: /*-----------------------------.
 3529: | yyreduce -- Do a reduction.  |
 3530: `-----------------------------*/
 3531: yyreduce:
 3532:   /* yyn is the number of a rule to reduce with.  */
 3533:   yylen = yyr2[yyn];
 3534: 
 3535:   /* If YYLEN is nonzero, implement the default value of the action:
 3536:      `$$ = $1'.
 3537: 
 3538:      Otherwise, the following line sets YYVAL to garbage.
 3539:      This behavior is undocumented and Bison
 3540:      users should not rely upon it.  Assigning to YYVAL
 3541:      unconditionally makes the parser a bit smaller, and it avoids a
 3542:      GCC warning that YYVAL may be used uninitialized.  */
 3543:   yyval = yyvsp[1-yylen];
 3544: 
 3545: 
 3546:   YY_REDUCE_PRINT (yyn);
 3547:   switch (yyn)
 3548:     {
 3549:         case 2:
 3550: 
 3551:     { zend_do_end_compilation(TSRMLS_C); }
 3552:     break;
 3553: 
 3554:   case 3:
 3555: 
 3556:     { zend_do_extended_info(TSRMLS_C); }
 3557:     break;
 3558: 
 3559:   case 4:
 3560: 
 3561:     { HANDLE_INTERACTIVE(); }
 3562:     break;
 3563: 
 3564:   case 6:
 3565: 
 3566:     { (yyval) = (yyvsp[(1) - (1)]); }
 3567:     break;
 3568: 
 3569:   case 7:
 3570: 
 3571:     { zend_do_build_namespace_name(&(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 3572:     break;
 3573: 
 3574:   case 8:
 3575: 
 3576:     { zend_verify_namespace(TSRMLS_C); }
 3577:     break;
 3578: 
 3579:   case 9:
 3580: 
 3581:     { zend_verify_namespace(TSRMLS_C); zend_do_early_binding(TSRMLS_C); }
 3582:     break;
 3583: 
 3584:   case 10:
 3585: 
 3586:     { zend_verify_namespace(TSRMLS_C); zend_do_early_binding(TSRMLS_C); }
 3587:     break;
 3588: 
 3589:   case 11:
 3590: 
 3591:     { zend_do_halt_compiler_register(TSRMLS_C); YYACCEPT; }
 3592:     break;
 3593: 
 3594:   case 12:
 3595: 
 3596:     { zend_do_begin_namespace(&(yyvsp[(2) - (3)]), 0 TSRMLS_CC); }
 3597:     break;
 3598: 
 3599:   case 13:
 3600: 
 3601:     { zend_do_begin_namespace(&(yyvsp[(2) - (3)]), 1 TSRMLS_CC); }
 3602:     break;
 3603: 
 3604:   case 14:
 3605: 
 3606:     { zend_do_end_namespace(TSRMLS_C); }
 3607:     break;
 3608: 
 3609:   case 15:
 3610: 
 3611:     { zend_do_begin_namespace(NULL, 1 TSRMLS_CC); }
 3612:     break;
 3613: 
 3614:   case 16:
 3615: 
 3616:     { zend_do_end_namespace(TSRMLS_C); }
 3617:     break;
 3618: 
 3619:   case 17:
 3620: 
 3621:     { zend_verify_namespace(TSRMLS_C); }
 3622:     break;
 3623: 
 3624:   case 18:
 3625: 
 3626:     { zend_verify_namespace(TSRMLS_C); }
 3627:     break;
 3628: 
 3629:   case 21:
 3630: 
 3631:     { zend_do_use(&(yyvsp[(1) - (1)]), NULL, 0 TSRMLS_CC); }
 3632:     break;
 3633: 
 3634:   case 22:
 3635: 
 3636:     { zend_do_use(&(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]), 0 TSRMLS_CC); }
 3637:     break;
 3638: 
 3639:   case 23:
 3640: 
 3641:     { zend_do_use(&(yyvsp[(2) - (2)]), NULL, 1 TSRMLS_CC); }
 3642:     break;
 3643: 
 3644:   case 24:
 3645: 
 3646:     { zend_do_use(&(yyvsp[(2) - (4)]), &(yyvsp[(4) - (4)]), 1 TSRMLS_CC); }
 3647:     break;
 3648: 
 3649:   case 25:
 3650: 
 3651:     { zend_do_declare_constant(&(yyvsp[(3) - (5)]), &(yyvsp[(5) - (5)]) TSRMLS_CC); }
 3652:     break;
 3653: 
 3654:   case 26:
 3655: 
 3656:     { zend_do_declare_constant(&(yyvsp[(2) - (4)]), &(yyvsp[(4) - (4)]) TSRMLS_CC); }
 3657:     break;
 3658: 
 3659:   case 27:
 3660: 
 3661:     { zend_do_extended_info(TSRMLS_C); }
 3662:     break;
 3663: 
 3664:   case 28:
 3665: 
 3666:     { HANDLE_INTERACTIVE(); }
 3667:     break;
 3668: 
 3669:   case 33:
 3670: 
 3671:     { zend_error(E_COMPILE_ERROR, "__HALT_COMPILER() can only be used from the outermost scope"); }
 3672:     break;
 3673: 
 3674:   case 34:
 3675: 
 3676:     { DO_TICKS(); }
 3677:     break;
 3678: 
 3679:   case 35:
 3680: 
 3681:     { zend_do_label(&(yyvsp[(1) - (2)]) TSRMLS_CC); }
 3682:     break;
 3683: 
 3684:   case 37:
 3685: 
 3686:     { zend_do_if_cond(&(yyvsp[(3) - (4)]), &(yyvsp[(4) - (4)]) TSRMLS_CC); }
 3687:     break;
 3688: 
 3689:   case 38:
 3690: 
 3691:     { zend_do_if_after_statement(&(yyvsp[(4) - (6)]), 1 TSRMLS_CC); }
 3692:     break;
 3693: 
 3694:   case 39:
 3695: 
 3696:     { zend_do_if_end(TSRMLS_C); }
 3697:     break;
 3698: 
 3699:   case 40:
 3700: 
 3701:     { zend_do_if_cond(&(yyvsp[(3) - (5)]), &(yyvsp[(4) - (5)]) TSRMLS_CC); }
 3702:     break;
 3703: 
 3704:   case 41:
 3705: 
 3706:     { zend_do_if_after_statement(&(yyvsp[(4) - (7)]), 1 TSRMLS_CC); }
 3707:     break;
 3708: 
 3709:   case 42:
 3710: 
 3711:     { zend_do_if_end(TSRMLS_C); }
 3712:     break;
 3713: 
 3714:   case 43:
 3715: 
 3716:     { (yyvsp[(1) - (2)]).u.op.opline_num = get_next_op_number(CG(active_op_array));  }
 3717:     break;
 3718: 
 3719:   case 44:
 3720: 
 3721:     { zend_do_while_cond(&(yyvsp[(4) - (5)]), &(yyvsp[(5) - (5)]) TSRMLS_CC); }
 3722:     break;
 3723: 
 3724:   case 45:
 3725: 
 3726:     { zend_do_while_end(&(yyvsp[(1) - (7)]), &(yyvsp[(5) - (7)]) TSRMLS_CC); }
 3727:     break;
 3728: 
 3729:   case 46:
 3730: 
 3731:     { (yyvsp[(1) - (1)]).u.op.opline_num = get_next_op_number(CG(active_op_array));  zend_do_do_while_begin(TSRMLS_C); }
 3732:     break;
 3733: 
 3734:   case 47:
 3735: 
 3736:     { (yyvsp[(5) - (5)]).u.op.opline_num = get_next_op_number(CG(active_op_array)); }
 3737:     break;
 3738: 
 3739:   case 48:
 3740: 
 3741:     { zend_do_do_while_end(&(yyvsp[(1) - (9)]), &(yyvsp[(5) - (9)]), &(yyvsp[(7) - (9)]) TSRMLS_CC); }
 3742:     break;
 3743: 
 3744:   case 49:
 3745: 
 3746:     { zend_do_free(&(yyvsp[(3) - (4)]) TSRMLS_CC); (yyvsp[(4) - (4)]).u.op.opline_num = get_next_op_number(CG(active_op_array)); }
 3747:     break;
 3748: 
 3749:   case 50:
 3750: 
 3751:     { zend_do_extended_info(TSRMLS_C); zend_do_for_cond(&(yyvsp[(6) - (7)]), &(yyvsp[(7) - (7)]) TSRMLS_CC); }
 3752:     break;
 3753: 
 3754:   case 51:
 3755: 
 3756:     { zend_do_free(&(yyvsp[(9) - (10)]) TSRMLS_CC); zend_do_for_before_statement(&(yyvsp[(4) - (10)]), &(yyvsp[(7) - (10)]) TSRMLS_CC); }
 3757:     break;
 3758: 
 3759:   case 52:
 3760: 
 3761:     { zend_do_for_end(&(yyvsp[(7) - (12)]) TSRMLS_CC); }
 3762:     break;
 3763: 
 3764:   case 53:
 3765: 
 3766:     { zend_do_switch_cond(&(yyvsp[(3) - (4)]) TSRMLS_CC); }
 3767:     break;
 3768: 
 3769:   case 54:
 3770: 
 3771:     { zend_do_switch_end(&(yyvsp[(6) - (6)]) TSRMLS_CC); }
 3772:     break;
 3773: 
 3774:   case 55:
 3775: 
 3776:     { zend_do_brk_cont(ZEND_BRK, NULL TSRMLS_CC); }
 3777:     break;
 3778: 
 3779:   case 56:
 3780: 
 3781:     { zend_do_brk_cont(ZEND_BRK, &(yyvsp[(2) - (3)]) TSRMLS_CC); }
 3782:     break;
 3783: 
 3784:   case 57:
 3785: 
 3786:     { zend_do_brk_cont(ZEND_CONT, NULL TSRMLS_CC); }
 3787:     break;
 3788: 
 3789:   case 58:
 3790: 
 3791:     { zend_do_brk_cont(ZEND_CONT, &(yyvsp[(2) - (3)]) TSRMLS_CC); }
 3792:     break;
 3793: 
 3794:   case 59:
 3795: 
 3796:     { zend_do_return(NULL, 0 TSRMLS_CC); }
 3797:     break;
 3798: 
 3799:   case 60:
 3800: 
 3801:     { zend_do_return(&(yyvsp[(2) - (3)]), 0 TSRMLS_CC); }
 3802:     break;
 3803: 
 3804:   case 61:
 3805: 
 3806:     { zend_do_return(&(yyvsp[(2) - (3)]), 1 TSRMLS_CC); }
 3807:     break;
 3808: 
 3809:   case 65:
 3810: 
 3811:     { zend_do_echo(&(yyvsp[(1) - (1)]) TSRMLS_CC); }
 3812:     break;
 3813: 
 3814:   case 66:
 3815: 
 3816:     { zend_do_free(&(yyvsp[(1) - (2)]) TSRMLS_CC); }
 3817:     break;
 3818: 
 3819:   case 68:
 3820: 
 3821:     { zend_do_foreach_begin(&(yyvsp[(1) - (4)]), &(yyvsp[(2) - (4)]), &(yyvsp[(3) - (4)]), &(yyvsp[(4) - (4)]), 1 TSRMLS_CC); }
 3822:     break;
 3823: 
 3824:   case 69:
 3825: 
 3826:     { zend_do_foreach_cont(&(yyvsp[(1) - (8)]), &(yyvsp[(2) - (8)]), &(yyvsp[(4) - (8)]), &(yyvsp[(6) - (8)]), &(yyvsp[(7) - (8)]) TSRMLS_CC); }
 3827:     break;
 3828: 
 3829:   case 70:
 3830: 
 3831:     { zend_do_foreach_end(&(yyvsp[(1) - (10)]), &(yyvsp[(4) - (10)]) TSRMLS_CC); }
 3832:     break;
 3833: 
 3834:   case 71:
 3835: 
 3836:     { zend_do_foreach_begin(&(yyvsp[(1) - (4)]), &(yyvsp[(2) - (4)]), &(yyvsp[(3) - (4)]), &(yyvsp[(4) - (4)]), 0 TSRMLS_CC); }
 3837:     break;
 3838: 
 3839:   case 72:
 3840: 
 3841:     { zend_check_writable_variable(&(yyvsp[(6) - (8)])); zend_do_foreach_cont(&(yyvsp[(1) - (8)]), &(yyvsp[(2) - (8)]), &(yyvsp[(4) - (8)]), &(yyvsp[(6) - (8)]), &(yyvsp[(7) - (8)]) TSRMLS_CC); }
 3842:     break;
 3843: 
 3844:   case 73:
 3845: 
 3846:     { zend_do_foreach_end(&(yyvsp[(1) - (10)]), &(yyvsp[(4) - (10)]) TSRMLS_CC); }
 3847:     break;
 3848: 
 3849:   case 74:
 3850: 
 3851:     { (yyvsp[(1) - (1)]).u.op.opline_num = get_next_op_number(CG(active_op_array)); zend_do_declare_begin(TSRMLS_C); }
 3852:     break;
 3853: 
 3854:   case 75:
 3855: 
 3856:     { zend_do_declare_end(&(yyvsp[(1) - (6)]) TSRMLS_CC); }
 3857:     break;
 3858: 
 3859:   case 77:
 3860: 
 3861:     { zend_do_try(&(yyvsp[(1) - (1)]) TSRMLS_CC); }
 3862:     break;
 3863: 
 3864:   case 78:
 3865: 
 3866:     { zend_initialize_try_catch_element(&(yyvsp[(1) - (7)]) TSRMLS_CC); }
 3867:     break;
 3868: 
 3869:   case 79:
 3870: 
 3871:     { zend_do_first_catch(&(yyvsp[(7) - (9)]) TSRMLS_CC); }
 3872:     break;
 3873: 
 3874:   case 80:
 3875: 
 3876:     { zend_do_begin_catch(&(yyvsp[(1) - (12)]), &(yyvsp[(9) - (12)]), &(yyvsp[(11) - (12)]), &(yyvsp[(7) - (12)]) TSRMLS_CC); }
 3877:     break;
 3878: 
 3879:   case 81:
 3880: 
 3881:     { zend_do_end_catch(&(yyvsp[(1) - (16)]) TSRMLS_CC); }
 3882:     break;
 3883: 
 3884:   case 82:
 3885: 
 3886:     { zend_do_mark_last_catch(&(yyvsp[(7) - (18)]), &(yyvsp[(18) - (18)]) TSRMLS_CC); }
 3887:     break;
 3888: 
 3889:   case 83:
 3890: 
 3891:     { zend_do_throw(&(yyvsp[(2) - (3)]) TSRMLS_CC); }
 3892:     break;
 3893: 
 3894:   case 84:
 3895: 
 3896:     { zend_do_goto(&(yyvsp[(2) - (3)]) TSRMLS_CC); }
 3897:     break;
 3898: 
 3899:   case 85:
 3900: 
 3901:     { (yyval) = (yyvsp[(1) - (1)]); }
 3902:     break;
 3903: 
 3904:   case 86:
 3905: 
 3906:     { (yyval).u.op.opline_num = -1; }
 3907:     break;
 3908: 
 3909:   case 87:
 3910: 
 3911:     { (yyval) = (yyvsp[(1) - (1)]); }
 3912:     break;
 3913: 
 3914:   case 88:
 3915: 
 3916:     { (yyval) = (yyvsp[(2) - (2)]); }
 3917:     break;
 3918: 
 3919:   case 89:
 3920: 
 3921:     { (yyval).u.op.opline_num = get_next_op_number(CG(active_op_array)); }
 3922:     break;
 3923: 
 3924:   case 90:
 3925: 
 3926:     { zend_do_begin_catch(&(yyvsp[(1) - (6)]), &(yyvsp[(3) - (6)]), &(yyvsp[(5) - (6)]), NULL TSRMLS_CC); }
 3927:     break;
 3928: 
 3929:   case 91:
 3930: 
 3931:     { zend_do_end_catch(&(yyvsp[(1) - (10)]) TSRMLS_CC); }
 3932:     break;
 3933: 
 3934:   case 94:
 3935: 
 3936:     { zend_do_end_variable_parse(&(yyvsp[(1) - (1)]), BP_VAR_UNSET, 0 TSRMLS_CC); zend_do_unset(&(yyvsp[(1) - (1)]) TSRMLS_CC); }
 3937:     break;
 3938: 
 3939:   case 95:
 3940: 
 3941:     { DO_TICKS(); }
 3942:     break;
 3943: 
 3944:   case 96:
 3945: 
 3946:     { DO_TICKS(); }
 3947:     break;
 3948: 
 3949:   case 97:
 3950: 
 3951:     { (yyval).op_type = ZEND_RETURN_VAL; }
 3952:     break;
 3953: 
 3954:   case 98:
 3955: 
 3956:     { (yyval).op_type = ZEND_RETURN_REF; }
 3957:     break;
 3958: 
 3959:   case 99:
 3960: 
 3961:     { zend_do_begin_function_declaration(&(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]), 0, (yyvsp[(2) - (3)]).op_type, NULL TSRMLS_CC); }
 3962:     break;
 3963: 
 3964:   case 100:
 3965: 
 3966:     { zend_do_end_function_declaration(&(yyvsp[(1) - (10)]) TSRMLS_CC); }
 3967:     break;
 3968: 
 3969:   case 101:
 3970: 
 3971:     { zend_do_begin_class_declaration(&(yyvsp[(1) - (3)]), &(yyvsp[(2) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 3972:     break;
 3973: 
 3974:   case 102:
 3975: 
 3976:     { zend_do_end_class_declaration(&(yyvsp[(1) - (8)]), &(yyvsp[(3) - (8)]) TSRMLS_CC); }
 3977:     break;
 3978: 
 3979:   case 103:
 3980: 
 3981:     { zend_do_begin_class_declaration(&(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]), NULL TSRMLS_CC); }
 3982:     break;
 3983: 
 3984:   case 104:
 3985: 
 3986:     { zend_do_end_class_declaration(&(yyvsp[(1) - (7)]), NULL TSRMLS_CC); }
 3987:     break;
 3988: 
 3989:   case 105:
 3990: 
 3991:     { (yyval).u.op.opline_num = CG(zend_lineno); (yyval).EA = 0; }
 3992:     break;
 3993: 
 3994:   case 106:
 3995: 
 3996:     { (yyval).u.op.opline_num = CG(zend_lineno); (yyval).EA = ZEND_ACC_EXPLICIT_ABSTRACT_CLASS; }
 3997:     break;
 3998: 
 3999:   case 107:
 4000: 
 4001:     { (yyval).u.op.opline_num = CG(zend_lineno); (yyval).EA = ZEND_ACC_TRAIT; }
 4002:     break;
 4003: 
 4004:   case 108:
 4005: 
 4006:     { (yyval).u.op.opline_num = CG(zend_lineno); (yyval).EA = ZEND_ACC_FINAL_CLASS; }
 4007:     break;
 4008: 
 4009:   case 109:
 4010: 
 4011:     { (yyval).op_type = IS_UNUSED; }
 4012:     break;
 4013: 
 4014:   case 110:
 4015: 
 4016:     { zend_do_fetch_class(&(yyval), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
 4017:     break;
 4018: 
 4019:   case 111:
 4020: 
 4021:     { (yyval).u.op.opline_num = CG(zend_lineno); (yyval).EA = ZEND_ACC_INTERFACE; }
 4022:     break;
 4023: 
 4024:   case 116:
 4025: 
 4026:     { zend_do_implements_interface(&(yyvsp[(1) - (1)]) TSRMLS_CC); }
 4027:     break;
 4028: 
 4029:   case 117:
 4030: 
 4031:     { zend_do_implements_interface(&(yyvsp[(3) - (3)]) TSRMLS_CC); }
 4032:     break;
 4033: 
 4034:   case 118:
 4035: 
 4036:     { (yyval).op_type = IS_UNUSED; }
 4037:     break;
 4038: 
 4039:   case 119:
 4040: 
 4041:     { (yyval) = (yyvsp[(2) - (2)]); }
 4042:     break;
 4043: 
 4044:   case 120:
 4045: 
 4046:     { zend_check_writable_variable(&(yyvsp[(1) - (1)])); (yyval) = (yyvsp[(1) - (1)]); }
 4047:     break;
 4048: 
 4049:   case 121:
 4050: 
 4051:     { zend_check_writable_variable(&(yyvsp[(2) - (2)])); (yyval) = (yyvsp[(2) - (2)]);  (yyval).EA |= ZEND_PARSED_REFERENCE_VARIABLE; }
 4052:     break;
 4053: 
 4054:   case 128:
 4055: 
 4056:     { zend_do_declare_stmt(&(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 4057:     break;
 4058: 
 4059:   case 129:
 4060: 
 4061:     { zend_do_declare_stmt(&(yyvsp[(3) - (5)]), &(yyvsp[(5) - (5)]) TSRMLS_CC); }
 4062:     break;
 4063: 
 4064:   case 130:
 4065: 
 4066:     { (yyval) = (yyvsp[(2) - (3)]); }
 4067:     break;
 4068: 
 4069:   case 131:
 4070: 
 4071:     { (yyval) = (yyvsp[(3) - (4)]); }
 4072:     break;
 4073: 
 4074:   case 132:
 4075: 
 4076:     { (yyval) = (yyvsp[(2) - (4)]); }
 4077:     break;
 4078: 
 4079:   case 133:
 4080: 
 4081:     { (yyval) = (yyvsp[(3) - (5)]); }
 4082:     break;
 4083: 
 4084:   case 134:
 4085: 
 4086:     { (yyval).op_type = IS_UNUSED; }
 4087:     break;
 4088: 
 4089:   case 135:
 4090: 
 4091:     { zend_do_extended_info(TSRMLS_C);  zend_do_case_before_statement(&(yyvsp[(1) - (4)]), &(yyvsp[(2) - (4)]), &(yyvsp[(3) - (4)]) TSRMLS_CC); }
 4092:     break;
 4093: 
 4094:   case 136:
 4095: 
 4096:     { zend_do_case_after_statement(&(yyval), &(yyvsp[(2) - (6)]) TSRMLS_CC); (yyval).op_type = IS_CONST; }
 4097:     break;
 4098: 
 4099:   case 137:
 4100: 
 4101:     { zend_do_extended_info(TSRMLS_C);  zend_do_default_before_statement(&(yyvsp[(1) - (3)]), &(yyvsp[(2) - (3)]) TSRMLS_CC); }
 4102:     break;
 4103: 
 4104:   case 138:
 4105: 
 4106:     { zend_do_case_after_statement(&(yyval), &(yyvsp[(2) - (5)]) TSRMLS_CC); (yyval).op_type = IS_CONST; }
 4107:     break;
 4108: 
 4109:   case 144:
 4110: 
 4111:     { zend_do_if_cond(&(yyvsp[(4) - (5)]), &(yyvsp[(5) - (5)]) TSRMLS_CC); }
 4112:     break;
 4113: 
 4114:   case 145:
 4115: 
 4116:     { zend_do_if_after_statement(&(yyvsp[(5) - (7)]), 0 TSRMLS_CC); }
 4117:     break;
 4118: 
 4119:   case 147:
 4120: 
 4121:     { zend_do_if_cond(&(yyvsp[(4) - (6)]), &(yyvsp[(5) - (6)]) TSRMLS_CC); }
 4122:     break;
 4123: 
 4124:   case 148:
 4125: 
 4126:     { zend_do_if_after_statement(&(yyvsp[(5) - (8)]), 0 TSRMLS_CC); }
 4127:     break;
 4128: 
 4129:   case 155:
 4130: 
 4131:     { (yyval).op_type = IS_UNUSED; (yyval).u.op.num=1; zend_do_receive_arg(ZEND_RECV, &(yyvsp[(2) - (2)]), &(yyval), NULL, &(yyvsp[(1) - (2)]), 0 TSRMLS_CC); }
 4132:     break;
 4133: 
 4134:   case 156:
 4135: 
 4136:     { (yyval).op_type = IS_UNUSED; (yyval).u.op.num=1; zend_do_receive_arg(ZEND_RECV, &(yyvsp[(3) - (3)]), &(yyval), NULL, &(yyvsp[(1) - (3)]), 1 TSRMLS_CC); }
 4137:     break;
 4138: 
 4139:   case 157:
 4140: 
 4141:     { (yyval).op_type = IS_UNUSED; (yyval).u.op.num=1; zend_do_receive_arg(ZEND_RECV_INIT, &(yyvsp[(3) - (5)]), &(yyval), &(yyvsp[(5) - (5)]), &(yyvsp[(1) - (5)]), 1 TSRMLS_CC); }
 4142:     break;
 4143: 
 4144:   case 158:
 4145: 
 4146:     { (yyval).op_type = IS_UNUSED; (yyval).u.op.num=1; zend_do_receive_arg(ZEND_RECV_INIT, &(yyvsp[(2) - (4)]), &(yyval), &(yyvsp[(4) - (4)]), &(yyvsp[(1) - (4)]), 0 TSRMLS_CC); }
 4147:     break;
 4148: 
 4149:   case 159:
 4150: 
 4151:     { (yyval)=(yyvsp[(1) - (4)]); (yyval).u.op.num++; zend_do_receive_arg(ZEND_RECV, &(yyvsp[(4) - (4)]), &(yyval), NULL, &(yyvsp[(3) - (4)]), 0 TSRMLS_CC); }
 4152:     break;
 4153: 
 4154:   case 160:
 4155: 
 4156:     { (yyval)=(yyvsp[(1) - (5)]); (yyval).u.op.num++; zend_do_receive_arg(ZEND_RECV, &(yyvsp[(5) - (5)]), &(yyval), NULL, &(yyvsp[(3) - (5)]), 1 TSRMLS_CC); }
 4157:     break;
 4158: 
 4159:   case 161:
 4160: 
 4161:     { (yyval)=(yyvsp[(1) - (7)]); (yyval).u.op.num++; zend_do_receive_arg(ZEND_RECV_INIT, &(yyvsp[(5) - (7)]), &(yyval), &(yyvsp[(7) - (7)]), &(yyvsp[(3) - (7)]), 1 TSRMLS_CC); }
 4162:     break;
 4163: 
 4164:   case 162:
 4165: 
 4166:     { (yyval)=(yyvsp[(1) - (6)]); (yyval).u.op.num++; zend_do_receive_arg(ZEND_RECV_INIT, &(yyvsp[(4) - (6)]), &(yyval), &(yyvsp[(6) - (6)]), &(yyvsp[(3) - (6)]), 0 TSRMLS_CC); }
 4167:     break;
 4168: 
 4169:   case 163:
 4170: 
 4171:     { (yyval).op_type = IS_UNUSED; }
 4172:     break;
 4173: 
 4174:   case 164:
 4175: 
 4176:     { (yyval).op_type = IS_CONST; Z_TYPE((yyval).u.constant)=IS_ARRAY; }
 4177:     break;
 4178: 
 4179:   case 165:
 4180: 
 4181:     { (yyval).op_type = IS_CONST; Z_TYPE((yyval).u.constant)=IS_CALLABLE; }
 4182:     break;
 4183: 
 4184:   case 166:
 4185: 
 4186:     { (yyval) = (yyvsp[(1) - (1)]); }
 4187:     break;
 4188: 
 4189:   case 167:
 4190: 
 4191:     { (yyval) = (yyvsp[(1) - (1)]); }
 4192:     break;
 4193: 
 4194:   case 168:
 4195: 
 4196:     { Z_LVAL((yyval).u.constant) = 0; }
 4197:     break;
 4198: 
 4199:   case 169:
 4200: 
 4201:     { Z_LVAL((yyval).u.constant) = 1;  zend_do_pass_param(&(yyvsp[(1) - (1)]), ZEND_SEND_VAL, Z_LVAL((yyval).u.constant) TSRMLS_CC); }
 4202:     break;
 4203: 
 4204:   case 170:
 4205: 
 4206:     { Z_LVAL((yyval).u.constant) = 1;  zend_do_pass_param(&(yyvsp[(1) - (1)]), ZEND_SEND_VAR, Z_LVAL((yyval).u.constant) TSRMLS_CC); }
 4207:     break;
 4208: 
 4209:   case 171:
 4210: 
 4211:     { Z_LVAL((yyval).u.constant) = 1;  zend_do_pass_param(&(yyvsp[(2) - (2)]), ZEND_SEND_REF, Z_LVAL((yyval).u.constant) TSRMLS_CC); }
 4212:     break;
 4213: 
 4214:   case 172:
 4215: 
 4216:     { Z_LVAL((yyval).u.constant)=Z_LVAL((yyvsp[(1) - (3)]).u.constant)+1;  zend_do_pass_param(&(yyvsp[(3) - (3)]), ZEND_SEND_VAL, Z_LVAL((yyval).u.constant) TSRMLS_CC); }
 4217:     break;
 4218: 
 4219:   case 173:
 4220: 
 4221:     { Z_LVAL((yyval).u.constant)=Z_LVAL((yyvsp[(1) - (3)]).u.constant)+1;  zend_do_pass_param(&(yyvsp[(3) - (3)]), ZEND_SEND_VAR, Z_LVAL((yyval).u.constant) TSRMLS_CC); }
 4222:     break;
 4223: 
 4224:   case 174:
 4225: 
 4226:     { Z_LVAL((yyval).u.constant)=Z_LVAL((yyvsp[(1) - (4)]).u.constant)+1;  zend_do_pass_param(&(yyvsp[(4) - (4)]), ZEND_SEND_REF, Z_LVAL((yyval).u.constant) TSRMLS_CC); }
 4227:     break;
 4228: 
 4229:   case 175:
 4230: 
 4231:     { zend_do_fetch_global_variable(&(yyvsp[(3) - (3)]), NULL, ZEND_FETCH_GLOBAL_LOCK TSRMLS_CC); }
 4232:     break;
 4233: 
 4234:   case 176:
 4235: 
 4236:     { zend_do_fetch_global_variable(&(yyvsp[(1) - (1)]), NULL, ZEND_FETCH_GLOBAL_LOCK TSRMLS_CC); }
 4237:     break;
 4238: 
 4239:   case 177:
 4240: 
 4241:     { (yyval) = (yyvsp[(1) - (1)]); }
 4242:     break;
 4243: 
 4244:   case 178:
 4245: 
 4246:     { (yyval) = (yyvsp[(2) - (2)]); }
 4247:     break;
 4248: 
 4249:   case 179:
 4250: 
 4251:     { (yyval) = (yyvsp[(3) - (4)]); }
 4252:     break;
 4253: 
 4254:   case 180:
 4255: 
 4256:     { zend_do_fetch_static_variable(&(yyvsp[(3) - (3)]), NULL, ZEND_FETCH_STATIC TSRMLS_CC); }
 4257:     break;
 4258: 
 4259:   case 181:
 4260: 
 4261:     { zend_do_fetch_static_variable(&(yyvsp[(3) - (5)]), &(yyvsp[(5) - (5)]), ZEND_FETCH_STATIC TSRMLS_CC); }
 4262:     break;
 4263: 
 4264:   case 182:
 4265: 
 4266:     { zend_do_fetch_static_variable(&(yyvsp[(1) - (1)]), NULL, ZEND_FETCH_STATIC TSRMLS_CC); }
 4267:     break;
 4268: 
 4269:   case 183:
 4270: 
 4271:     { zend_do_fetch_static_variable(&(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]), ZEND_FETCH_STATIC TSRMLS_CC); }
 4272:     break;
 4273: 
 4274:   case 186:
 4275: 
 4276:     { CG(access_type) = Z_LVAL((yyvsp[(1) - (1)]).u.constant); }
 4277:     break;
 4278: 
 4279:   case 190:
 4280: 
 4281:     { zend_do_begin_function_declaration(&(yyvsp[(2) - (4)]), &(yyvsp[(4) - (4)]), 1, (yyvsp[(3) - (4)]).op_type, &(yyvsp[(1) - (4)]) TSRMLS_CC); }
 4282:     break;
 4283: 
 4284:   case 191:
 4285: 
 4286:     { zend_do_abstract_method(&(yyvsp[(4) - (9)]), &(yyvsp[(1) - (9)]), &(yyvsp[(9) - (9)]) TSRMLS_CC); zend_do_end_function_declaration(&(yyvsp[(2) - (9)]) TSRMLS_CC); }
 4287:     break;
 4288: 
 4289:   case 193:
 4290: 
 4291:     { zend_do_use_trait(&(yyvsp[(1) - (1)]) TSRMLS_CC); }
 4292:     break;
 4293: 
 4294:   case 194:
 4295: 
 4296:     { zend_do_use_trait(&(yyvsp[(3) - (3)]) TSRMLS_CC); }
 4297:     break;
 4298: 
 4299:   case 203:
 4300: 
 4301:     { zend_add_trait_precedence(&(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 4302:     break;
 4303: 
 4304:   case 204:
 4305: 
 4306:     { zend_resolve_class_name(&(yyvsp[(1) - (1)]), ZEND_FETCH_CLASS_GLOBAL, 1 TSRMLS_CC); zend_init_list(&(yyval).u.op.ptr, Z_STRVAL((yyvsp[(1) - (1)]).u.constant) TSRMLS_CC); }
 4307:     break;
 4308: 
 4309:   case 205:
 4310: 
 4311:     { zend_resolve_class_name(&(yyvsp[(3) - (3)]), ZEND_FETCH_CLASS_GLOBAL, 1 TSRMLS_CC); zend_add_to_list(&(yyvsp[(1) - (3)]).u.op.ptr, Z_STRVAL((yyvsp[(3) - (3)]).u.constant) TSRMLS_CC); (yyval) = (yyvsp[(1) - (3)]); }
 4312:     break;
 4313: 
 4314:   case 206:
 4315: 
 4316:     { zend_prepare_reference(&(yyval), NULL, &(yyvsp[(1) - (1)]) TSRMLS_CC); }
 4317:     break;
 4318: 
 4319:   case 207:
 4320: 
 4321:     { (yyval) = (yyvsp[(1) - (1)]); }
 4322:     break;
 4323: 
 4324:   case 208:
 4325: 
 4326:     { zend_prepare_reference(&(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 4327:     break;
 4328: 
 4329:   case 209:
 4330: 
 4331:     { zend_add_trait_alias(&(yyvsp[(1) - (4)]), &(yyvsp[(3) - (4)]), &(yyvsp[(4) - (4)]) TSRMLS_CC); }
 4332:     break;
 4333: 
 4334:   case 210:
 4335: 
 4336:     { zend_add_trait_alias(&(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]), NULL TSRMLS_CC); }
 4337:     break;
 4338: 
 4339:   case 211:
 4340: 
 4341:     { Z_LVAL((yyval).u.constant) = 0x0; }
 4342:     break;
 4343: 
 4344:   case 212:
 4345: 
 4346:     { (yyval) = (yyvsp[(1) - (1)]); }
 4347:     break;
 4348: 
 4349:   case 213:
 4350: 
 4351:     { Z_LVAL((yyval).u.constant) = ZEND_ACC_ABSTRACT; }
 4352:     break;
 4353: 
 4354:   case 214:
 4355: 
 4356:     { Z_LVAL((yyval).u.constant) = 0;	}
 4357:     break;
 4358: 
 4359:   case 215:
 4360: 
 4361:     { (yyval) = (yyvsp[(1) - (1)]); }
 4362:     break;
 4363: 
 4364:   case 216:
 4365: 
 4366:     { Z_LVAL((yyval).u.constant) = ZEND_ACC_PUBLIC; }
 4367:     break;
 4368: 
 4369:   case 217:
 4370: 
 4371:     { Z_LVAL((yyval).u.constant) = ZEND_ACC_PUBLIC; }
 4372:     break;
 4373: 
 4374:   case 218:
 4375: 
 4376:     { (yyval) = (yyvsp[(1) - (1)]);  if (!(Z_LVAL((yyval).u.constant) & ZEND_ACC_PPP_MASK)) { Z_LVAL((yyval).u.constant) |= ZEND_ACC_PUBLIC; } }
 4377:     break;
 4378: 
 4379:   case 219:
 4380: 
 4381:     { (yyval) = (yyvsp[(1) - (1)]); }
 4382:     break;
 4383: 
 4384:   case 220:
 4385: 
 4386:     { Z_LVAL((yyval).u.constant) = zend_do_verify_access_types(&(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)])); }
 4387:     break;
 4388: 
 4389:   case 221:
 4390: 
 4391:     { Z_LVAL((yyval).u.constant) = ZEND_ACC_PUBLIC; }
 4392:     break;
 4393: 
 4394:   case 222:
 4395: 
 4396:     { Z_LVAL((yyval).u.constant) = ZEND_ACC_PROTECTED; }
 4397:     break;
 4398: 
 4399:   case 223:
 4400: 
 4401:     { Z_LVAL((yyval).u.constant) = ZEND_ACC_PRIVATE; }
 4402:     break;
 4403: 
 4404:   case 224:
 4405: 
 4406:     { Z_LVAL((yyval).u.constant) = ZEND_ACC_STATIC; }
 4407:     break;
 4408: 
 4409:   case 225:
 4410: 
 4411:     { Z_LVAL((yyval).u.constant) = ZEND_ACC_ABSTRACT; }
 4412:     break;
 4413: 
 4414:   case 226:
 4415: 
 4416:     { Z_LVAL((yyval).u.constant) = ZEND_ACC_FINAL; }
 4417:     break;
 4418: 
 4419:   case 227:
 4420: 
 4421:     { zend_do_declare_property(&(yyvsp[(3) - (3)]), NULL, CG(access_type) TSRMLS_CC); }
 4422:     break;
 4423: 
 4424:   case 228:
 4425: 
 4426:     { zend_do_declare_property(&(yyvsp[(3) - (5)]), &(yyvsp[(5) - (5)]), CG(access_type) TSRMLS_CC); }
 4427:     break;
 4428: 
 4429:   case 229:
 4430: 
 4431:     { zend_do_declare_property(&(yyvsp[(1) - (1)]), NULL, CG(access_type) TSRMLS_CC); }
 4432:     break;
 4433: 
 4434:   case 230:
 4435: 
 4436:     { zend_do_declare_property(&(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]), CG(access_type) TSRMLS_CC); }
 4437:     break;
 4438: 
 4439:   case 231:
 4440: 
 4441:     { zend_do_declare_class_constant(&(yyvsp[(3) - (5)]), &(yyvsp[(5) - (5)]) TSRMLS_CC); }
 4442:     break;
 4443: 
 4444:   case 232:
 4445: 
 4446:     { zend_do_declare_class_constant(&(yyvsp[(2) - (4)]), &(yyvsp[(4) - (4)]) TSRMLS_CC); }
 4447:     break;
 4448: 
 4449:   case 233:
 4450: 
 4451:     { zend_do_echo(&(yyvsp[(3) - (3)]) TSRMLS_CC); }
 4452:     break;
 4453: 
 4454:   case 234:
 4455: 
 4456:     { zend_do_echo(&(yyvsp[(1) - (1)]) TSRMLS_CC); }
 4457:     break;
 4458: 
 4459:   case 235:
 4460: 
 4461:     { (yyval).op_type = IS_CONST;  Z_TYPE((yyval).u.constant) = IS_BOOL;  Z_LVAL((yyval).u.constant) = 1; }
 4462:     break;
 4463: 
 4464:   case 236:
 4465: 
 4466:     { (yyval) = (yyvsp[(1) - (1)]); }
 4467:     break;
 4468: 
 4469:   case 237:
 4470: 
 4471:     { zend_do_free(&(yyvsp[(1) - (2)]) TSRMLS_CC); }
 4472:     break;
 4473: 
 4474:   case 238:
 4475: 
 4476:     { (yyval) = (yyvsp[(4) - (4)]); }
 4477:     break;
 4478: 
 4479:   case 239:
 4480: 
 4481:     { (yyval) = (yyvsp[(1) - (1)]); }
 4482:     break;
 4483: 
 4484:   case 240:
 4485: 
 4486:     { (yyval).EA = (yyvsp[(2) - (2)]).EA; }
 4487:     break;
 4488: 
 4489:   case 241:
 4490: 
 4491:     { (yyval).EA = (yyvsp[(1) - (1)]).EA; }
 4492:     break;
 4493: 
 4494:   case 242:
 4495: 
 4496:     { fetch_array_dim(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(3) - (4)]) TSRMLS_CC); }
 4497:     break;
 4498: 
 4499:   case 243:
 4500: 
 4501:     { zend_do_pop_object(&(yyvsp[(1) - (3)]) TSRMLS_CC); fetch_array_dim(&(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(2) - (3)]) TSRMLS_CC); }
 4502:     break;
 4503: 
 4504:   case 244:
 4505: 
 4506:     { zend_do_push_object(&(yyvsp[(1) - (1)]) TSRMLS_CC); }
 4507:     break;
 4508: 
 4509:   case 245:
 4510: 
 4511:     { (yyval) = (yyvsp[(3) - (3)]); }
 4512:     break;
 4513: 
 4514:   case 246:
 4515: 
 4516:     { zend_do_push_object(&(yyvsp[(1) - (1)]) TSRMLS_CC); (yyval) = (yyvsp[(1) - (1)]); }
 4517:     break;
 4518: 
 4519:   case 247:
 4520: 
 4521:     { (yyval) = (yyvsp[(1) - (1)]); }
 4522:     break;
 4523: 
 4524:   case 248:
 4525: 
 4526:     { (yyval) = (yyvsp[(0) - (0)]); }
 4527:     break;
 4528: 
 4529:   case 249:
 4530: 
 4531:     { zend_do_push_object(&(yyvsp[(0) - (0)]) TSRMLS_CC); zend_do_begin_variable_parse(TSRMLS_C); }
 4532:     break;
 4533: 
 4534:   case 250:
 4535: 
 4536:     { zend_do_pop_object(&(yyval) TSRMLS_CC); zend_do_end_variable_parse(&(yyvsp[(2) - (2)]), BP_VAR_R, 0 TSRMLS_CC); }
 4537:     break;
 4538: 
 4539:   case 251:
 4540: 
 4541:     { zend_do_extended_fcall_begin(TSRMLS_C); zend_do_begin_new_object(&(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
 4542:     break;
 4543: 
 4544:   case 252:
 4545: 
 4546:     { zend_do_end_new_object(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(4) - (4)]) TSRMLS_CC); zend_do_extended_fcall_end(TSRMLS_C);}
 4547:     break;
 4548: 
 4549:   case 253:
 4550: 
 4551:     { zend_do_list_init(TSRMLS_C); }
 4552:     break;
 4553: 
 4554:   case 254:
 4555: 
 4556:     { zend_do_list_end(&(yyval), &(yyvsp[(7) - (7)]) TSRMLS_CC); }
 4557:     break;
 4558: 
 4559:   case 255:
 4560: 
 4561:     { zend_check_writable_variable(&(yyvsp[(1) - (3)])); zend_do_assign(&(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 4562:     break;
 4563: 
 4564:   case 256:
 4565: 
 4566:     { zend_check_writable_variable(&(yyvsp[(1) - (4)])); zend_do_end_variable_parse(&(yyvsp[(4) - (4)]), BP_VAR_W, 1 TSRMLS_CC); zend_do_end_variable_parse(&(yyvsp[(1) - (4)]), BP_VAR_W, 0 TSRMLS_CC); zend_do_assign_ref(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(4) - (4)]) TSRMLS_CC); }
 4567:     break;
 4568: 
 4569:   case 257:
 4570: 
 4571:     { zend_error(E_DEPRECATED, "Assigning the return value of new by reference is deprecated");  zend_check_writable_variable(&(yyvsp[(1) - (5)])); zend_do_extended_fcall_begin(TSRMLS_C); zend_do_begin_new_object(&(yyvsp[(4) - (5)]), &(yyvsp[(5) - (5)]) TSRMLS_CC); }
 4572:     break;
 4573: 
 4574:   case 258:
 4575: 
 4576:     { zend_do_end_new_object(&(yyvsp[(3) - (7)]), &(yyvsp[(4) - (7)]), &(yyvsp[(7) - (7)]) TSRMLS_CC); zend_do_extended_fcall_end(TSRMLS_C); zend_do_end_variable_parse(&(yyvsp[(1) - (7)]), BP_VAR_W, 0 TSRMLS_CC); (yyvsp[(3) - (7)]).EA = ZEND_PARSED_NEW; zend_do_assign_ref(&(yyval), &(yyvsp[(1) - (7)]), &(yyvsp[(3) - (7)]) TSRMLS_CC); }
 4577:     break;
 4578: 
 4579:   case 259:
 4580: 
 4581:     { zend_do_clone(&(yyval), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
 4582:     break;
 4583: 
 4584:   case 260:
 4585: 
 4586:     { zend_check_writable_variable(&(yyvsp[(1) - (3)])); zend_do_end_variable_parse(&(yyvsp[(1) - (3)]), BP_VAR_RW, 0 TSRMLS_CC); zend_do_binary_assign_op(ZEND_ASSIGN_ADD, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 4587:     break;
 4588: 
 4589:   case 261:
 4590: 
 4591:     { zend_check_writable_variable(&(yyvsp[(1) - (3)])); zend_do_end_variable_parse(&(yyvsp[(1) - (3)]), BP_VAR_RW, 0 TSRMLS_CC); zend_do_binary_assign_op(ZEND_ASSIGN_SUB, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 4592:     break;
 4593: 
 4594:   case 262:
 4595: 
 4596:     { zend_check_writable_variable(&(yyvsp[(1) - (3)])); zend_do_end_variable_parse(&(yyvsp[(1) - (3)]), BP_VAR_RW, 0 TSRMLS_CC); zend_do_binary_assign_op(ZEND_ASSIGN_MUL, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 4597:     break;
 4598: 
 4599:   case 263:
 4600: 
 4601:     { zend_check_writable_variable(&(yyvsp[(1) - (3)])); zend_do_end_variable_parse(&(yyvsp[(1) - (3)]), BP_VAR_RW, 0 TSRMLS_CC); zend_do_binary_assign_op(ZEND_ASSIGN_DIV, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 4602:     break;
 4603: 
 4604:   case 264:
 4605: 
 4606:     { zend_check_writable_variable(&(yyvsp[(1) - (3)])); zend_do_end_variable_parse(&(yyvsp[(1) - (3)]), BP_VAR_RW, 0 TSRMLS_CC); zend_do_binary_assign_op(ZEND_ASSIGN_CONCAT, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 4607:     break;
 4608: 
 4609:   case 265:
 4610: 
 4611:     { zend_check_writable_variable(&(yyvsp[(1) - (3)])); zend_do_end_variable_parse(&(yyvsp[(1) - (3)]), BP_VAR_RW, 0 TSRMLS_CC); zend_do_binary_assign_op(ZEND_ASSIGN_MOD, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 4612:     break;
 4613: 
 4614:   case 266:
 4615: 
 4616:     { zend_check_writable_variable(&(yyvsp[(1) - (3)])); zend_do_end_variable_parse(&(yyvsp[(1) - (3)]), BP_VAR_RW, 0 TSRMLS_CC); zend_do_binary_assign_op(ZEND_ASSIGN_BW_AND, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 4617:     break;
 4618: 
 4619:   case 267:
 4620: 
 4621:     { zend_check_writable_variable(&(yyvsp[(1) - (3)])); zend_do_end_variable_parse(&(yyvsp[(1) - (3)]), BP_VAR_RW, 0 TSRMLS_CC); zend_do_binary_assign_op(ZEND_ASSIGN_BW_OR, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 4622:     break;
 4623: 
 4624:   case 268:
 4625: 
 4626:     { zend_check_writable_variable(&(yyvsp[(1) - (3)])); zend_do_end_variable_parse(&(yyvsp[(1) - (3)]), BP_VAR_RW, 0 TSRMLS_CC); zend_do_binary_assign_op(ZEND_ASSIGN_BW_XOR, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 4627:     break;
 4628: 
 4629:   case 269:
 4630: 
 4631:     { zend_check_writable_variable(&(yyvsp[(1) - (3)])); zend_do_end_variable_parse(&(yyvsp[(1) - (3)]), BP_VAR_RW, 0 TSRMLS_CC); zend_do_binary_assign_op(ZEND_ASSIGN_SL, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 4632:     break;
 4633: 
 4634:   case 270:
 4635: 
 4636:     { zend_check_writable_variable(&(yyvsp[(1) - (3)])); zend_do_end_variable_parse(&(yyvsp[(1) - (3)]), BP_VAR_RW, 0 TSRMLS_CC); zend_do_binary_assign_op(ZEND_ASSIGN_SR, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 4637:     break;
 4638: 
 4639:   case 271:
 4640: 
 4641:     { zend_do_post_incdec(&(yyval), &(yyvsp[(1) - (2)]), ZEND_POST_INC TSRMLS_CC); }
 4642:     break;
 4643: 
 4644:   case 272:
 4645: 
 4646:     { zend_do_pre_incdec(&(yyval), &(yyvsp[(2) - (2)]), ZEND_PRE_INC TSRMLS_CC); }
 4647:     break;
 4648: 
 4649:   case 273:
 4650: 
 4651:     { zend_do_post_incdec(&(yyval), &(yyvsp[(1) - (2)]), ZEND_POST_DEC TSRMLS_CC); }
 4652:     break;
 4653: 
 4654:   case 274:
 4655: 
 4656:     { zend_do_pre_incdec(&(yyval), &(yyvsp[(2) - (2)]), ZEND_PRE_DEC TSRMLS_CC); }
 4657:     break;
 4658: 
 4659:   case 275:
 4660: 
 4661:     { zend_do_boolean_or_begin(&(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
 4662:     break;
 4663: 
 4664:   case 276:
 4665: 
 4666:     { zend_do_boolean_or_end(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(4) - (4)]), &(yyvsp[(2) - (4)]) TSRMLS_CC); }
 4667:     break;
 4668: 
 4669:   case 277:
 4670: 
 4671:     { zend_do_boolean_and_begin(&(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
 4672:     break;
 4673: 
 4674:   case 278:
 4675: 
 4676:     { zend_do_boolean_and_end(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(4) - (4)]), &(yyvsp[(2) - (4)]) TSRMLS_CC); }
 4677:     break;
 4678: 
 4679:   case 279:
 4680: 
 4681:     { zend_do_boolean_or_begin(&(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
 4682:     break;
 4683: 
 4684:   case 280:
 4685: 
 4686:     { zend_do_boolean_or_end(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(4) - (4)]), &(yyvsp[(2) - (4)]) TSRMLS_CC); }
 4687:     break;
 4688: 
 4689:   case 281:
 4690: 
 4691:     { zend_do_boolean_and_begin(&(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
 4692:     break;
 4693: 
 4694:   case 282:
 4695: 
 4696:     { zend_do_boolean_and_end(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(4) - (4)]), &(yyvsp[(2) - (4)]) TSRMLS_CC); }
 4697:     break;
 4698: 
 4699:   case 283:
 4700: 
 4701:     { zend_do_binary_op(ZEND_BOOL_XOR, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 4702:     break;
 4703: 
 4704:   case 284:
 4705: 
 4706:     { zend_do_binary_op(ZEND_BW_OR, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 4707:     break;
 4708: 
 4709:   case 285:
 4710: 
 4711:     { zend_do_binary_op(ZEND_BW_AND, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 4712:     break;
 4713: 
 4714:   case 286:
 4715: 
 4716:     { zend_do_binary_op(ZEND_BW_XOR, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 4717:     break;
 4718: 
 4719:   case 287:
 4720: 
 4721:     { zend_do_binary_op(ZEND_CONCAT, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 4722:     break;
 4723: 
 4724:   case 288:
 4725: 
 4726:     { zend_do_binary_op(ZEND_ADD, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 4727:     break;
 4728: 
 4729:   case 289:
 4730: 
 4731:     { zend_do_binary_op(ZEND_SUB, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 4732:     break;
 4733: 
 4734:   case 290:
 4735: 
 4736:     { zend_do_binary_op(ZEND_MUL, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 4737:     break;
 4738: 
 4739:   case 291:
 4740: 
 4741:     { zend_do_binary_op(ZEND_DIV, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 4742:     break;
 4743: 
 4744:   case 292:
 4745: 
 4746:     { zend_do_binary_op(ZEND_MOD, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 4747:     break;
 4748: 
 4749:   case 293:
 4750: 
 4751:     { zend_do_binary_op(ZEND_SL, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 4752:     break;
 4753: 
 4754:   case 294:
 4755: 
 4756:     { zend_do_binary_op(ZEND_SR, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 4757:     break;
 4758: 
 4759:   case 295:
 4760: 
 4761:     { ZVAL_LONG(&(yyvsp[(1) - (2)]).u.constant, 0); if ((yyvsp[(2) - (2)]).op_type == IS_CONST) { add_function(&(yyvsp[(2) - (2)]).u.constant, &(yyvsp[(1) - (2)]).u.constant, &(yyvsp[(2) - (2)]).u.constant TSRMLS_CC); (yyval) = (yyvsp[(2) - (2)]); } else { (yyvsp[(1) - (2)]).op_type = IS_CONST; INIT_PZVAL(&(yyvsp[(1) - (2)]).u.constant); zend_do_binary_op(ZEND_ADD, &(yyval), &(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); } }
 4762:     break;
 4763: 
 4764:   case 296:
 4765: 
 4766:     { ZVAL_LONG(&(yyvsp[(1) - (2)]).u.constant, 0); if ((yyvsp[(2) - (2)]).op_type == IS_CONST) { sub_function(&(yyvsp[(2) - (2)]).u.constant, &(yyvsp[(1) - (2)]).u.constant, &(yyvsp[(2) - (2)]).u.constant TSRMLS_CC); (yyval) = (yyvsp[(2) - (2)]); } else { (yyvsp[(1) - (2)]).op_type = IS_CONST; INIT_PZVAL(&(yyvsp[(1) - (2)]).u.constant); zend_do_binary_op(ZEND_SUB, &(yyval), &(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); } }
 4767:     break;
 4768: 
 4769:   case 297:
 4770: 
 4771:     { zend_do_unary_op(ZEND_BOOL_NOT, &(yyval), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
 4772:     break;
 4773: 
 4774:   case 298:
 4775: 
 4776:     { zend_do_unary_op(ZEND_BW_NOT, &(yyval), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
 4777:     break;
 4778: 
 4779:   case 299:
 4780: 
 4781:     { zend_do_binary_op(ZEND_IS_IDENTICAL, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 4782:     break;
 4783: 
 4784:   case 300:
 4785: 
 4786:     { zend_do_binary_op(ZEND_IS_NOT_IDENTICAL, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 4787:     break;
 4788: 
 4789:   case 301:
 4790: 
 4791:     { zend_do_binary_op(ZEND_IS_EQUAL, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 4792:     break;
 4793: 
 4794:   case 302:
 4795: 
 4796:     { zend_do_binary_op(ZEND_IS_NOT_EQUAL, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 4797:     break;
 4798: 
 4799:   case 303:
 4800: 
 4801:     { zend_do_binary_op(ZEND_IS_SMALLER, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 4802:     break;
 4803: 
 4804:   case 304:
 4805: 
 4806:     { zend_do_binary_op(ZEND_IS_SMALLER_OR_EQUAL, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 4807:     break;
 4808: 
 4809:   case 305:
 4810: 
 4811:     { zend_do_binary_op(ZEND_IS_SMALLER, &(yyval), &(yyvsp[(3) - (3)]), &(yyvsp[(1) - (3)]) TSRMLS_CC); }
 4812:     break;
 4813: 
 4814:   case 306:
 4815: 
 4816:     { zend_do_binary_op(ZEND_IS_SMALLER_OR_EQUAL, &(yyval), &(yyvsp[(3) - (3)]), &(yyvsp[(1) - (3)]) TSRMLS_CC); }
 4817:     break;
 4818: 
 4819:   case 307:
 4820: 
 4821:     { zend_do_instanceof(&(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]), 0 TSRMLS_CC); }
 4822:     break;
 4823: 
 4824:   case 308:
 4825: 
 4826:     { (yyval) = (yyvsp[(2) - (3)]); }
 4827:     break;
 4828: 
 4829:   case 309:
 4830: 
 4831:     { (yyval) = (yyvsp[(1) - (1)]); }
 4832:     break;
 4833: 
 4834:   case 310:
 4835: 
 4836:     { (yyval) = (yyvsp[(2) - (3)]); }
 4837:     break;
 4838: 
 4839:   case 311:
 4840: 
 4841:     { (yyval) = (yyvsp[(5) - (5)]); }
 4842:     break;
 4843: 
 4844:   case 312:
 4845: 
 4846:     { zend_do_begin_qm_op(&(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
 4847:     break;
 4848: 
 4849:   case 313:
 4850: 
 4851:     { zend_do_qm_true(&(yyvsp[(4) - (5)]), &(yyvsp[(2) - (5)]), &(yyvsp[(5) - (5)]) TSRMLS_CC); }
 4852:     break;
 4853: 
 4854:   case 314:
 4855: 
 4856:     { zend_do_qm_false(&(yyval), &(yyvsp[(7) - (7)]), &(yyvsp[(2) - (7)]), &(yyvsp[(5) - (7)]) TSRMLS_CC); }
 4857:     break;
 4858: 
 4859:   case 315:
 4860: 
 4861:     { zend_do_jmp_set(&(yyvsp[(1) - (3)]), &(yyvsp[(2) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 4862:     break;
 4863: 
 4864:   case 316:
 4865: 
 4866:     { zend_do_jmp_set_else(&(yyval), &(yyvsp[(5) - (5)]), &(yyvsp[(2) - (5)]), &(yyvsp[(3) - (5)]) TSRMLS_CC); }
 4867:     break;
 4868: 
 4869:   case 317:
 4870: 
 4871:     { (yyval) = (yyvsp[(1) - (1)]); }
 4872:     break;
 4873: 
 4874:   case 318:
 4875: 
 4876:     { zend_do_cast(&(yyval), &(yyvsp[(2) - (2)]), IS_LONG TSRMLS_CC); }
 4877:     break;
 4878: 
 4879:   case 319:
 4880: 
 4881:     { zend_do_cast(&(yyval), &(yyvsp[(2) - (2)]), IS_DOUBLE TSRMLS_CC); }
 4882:     break;
 4883: 
 4884:   case 320:
 4885: 
 4886:     { zend_do_cast(&(yyval), &(yyvsp[(2) - (2)]), IS_STRING TSRMLS_CC); }
 4887:     break;
 4888: 
 4889:   case 321:
 4890: 
 4891:     { zend_do_cast(&(yyval), &(yyvsp[(2) - (2)]), IS_ARRAY TSRMLS_CC); }
 4892:     break;
 4893: 
 4894:   case 322:
 4895: 
 4896:     { zend_do_cast(&(yyval), &(yyvsp[(2) - (2)]), IS_OBJECT TSRMLS_CC); }
 4897:     break;
 4898: 
 4899:   case 323:
 4900: 
 4901:     { zend_do_cast(&(yyval), &(yyvsp[(2) - (2)]), IS_BOOL TSRMLS_CC); }
 4902:     break;
 4903: 
 4904:   case 324:
 4905: 
 4906:     { zend_do_cast(&(yyval), &(yyvsp[(2) - (2)]), IS_NULL TSRMLS_CC); }
 4907:     break;
 4908: 
 4909:   case 325:
 4910: 
 4911:     { zend_do_exit(&(yyval), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
 4912:     break;
 4913: 
 4914:   case 326:
 4915: 
 4916:     { zend_do_begin_silence(&(yyvsp[(1) - (1)]) TSRMLS_CC); }
 4917:     break;
 4918: 
 4919:   case 327:
 4920: 
 4921:     { zend_do_end_silence(&(yyvsp[(1) - (3)]) TSRMLS_CC); (yyval) = (yyvsp[(3) - (3)]); }
 4922:     break;
 4923: 
 4924:   case 328:
 4925: 
 4926:     { (yyval) = (yyvsp[(1) - (1)]); }
 4927:     break;
 4928: 
 4929:   case 329:
 4930: 
 4931:     { (yyval) = (yyvsp[(3) - (4)]); }
 4932:     break;
 4933: 
 4934:   case 330:
 4935: 
 4936:     { (yyval) = (yyvsp[(2) - (3)]); }
 4937:     break;
 4938: 
 4939:   case 331:
 4940: 
 4941:     { zend_do_shell_exec(&(yyval), &(yyvsp[(2) - (3)]) TSRMLS_CC); }
 4942:     break;
 4943: 
 4944:   case 332:
 4945: 
 4946:     { zend_do_print(&(yyval), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
 4947:     break;
 4948: 
 4949:   case 333:
 4950: 
 4951:     { zend_do_begin_lambda_function_declaration(&(yyval), &(yyvsp[(1) - (3)]), (yyvsp[(2) - (3)]).op_type, 0 TSRMLS_CC); }
 4952:     break;
 4953: 
 4954:   case 334:
 4955: 
 4956:     {  zend_do_end_function_declaration(&(yyvsp[(1) - (10)]) TSRMLS_CC); (yyval) = (yyvsp[(4) - (10)]); }
 4957:     break;
 4958: 
 4959:   case 335:
 4960: 
 4961:     { zend_do_begin_lambda_function_declaration(&(yyval), &(yyvsp[(2) - (4)]), (yyvsp[(3) - (4)]).op_type, 1 TSRMLS_CC); }
 4962:     break;
 4963: 
 4964:   case 336:
 4965: 
 4966:     {  zend_do_end_function_declaration(&(yyvsp[(2) - (11)]) TSRMLS_CC); (yyval) = (yyvsp[(5) - (11)]); }
 4967:     break;
 4968: 
 4969:   case 337:
 4970: 
 4971:     { (yyval).u.op.opline_num = CG(zend_lineno); }
 4972:     break;
 4973: 
 4974:   case 340:
 4975: 
 4976:     { zend_do_fetch_lexical_variable(&(yyvsp[(3) - (3)]), 0 TSRMLS_CC); }
 4977:     break;
 4978: 
 4979:   case 341:
 4980: 
 4981:     { zend_do_fetch_lexical_variable(&(yyvsp[(4) - (4)]), 1 TSRMLS_CC); }
 4982:     break;
 4983: 
 4984:   case 342:
 4985: 
 4986:     { zend_do_fetch_lexical_variable(&(yyvsp[(1) - (1)]), 0 TSRMLS_CC); }
 4987:     break;
 4988: 
 4989:   case 343:
 4990: 
 4991:     { zend_do_fetch_lexical_variable(&(yyvsp[(2) - (2)]), 1 TSRMLS_CC); }
 4992:     break;
 4993: 
 4994:   case 344:
 4995: 
 4996:     { (yyvsp[(2) - (2)]).u.op.opline_num = zend_do_begin_function_call(&(yyvsp[(1) - (2)]), 1 TSRMLS_CC); }
 4997:     break;
 4998: 
 4999:   case 345:
 5000: 
 5001:     { zend_do_end_function_call(&(yyvsp[(1) - (5)]), &(yyval), &(yyvsp[(4) - (5)]), 0, (yyvsp[(2) - (5)]).u.op.opline_num TSRMLS_CC); zend_do_extended_fcall_end(TSRMLS_C); }
 5002:     break;
 5003: 
 5004:   case 346:
 5005: 
 5006:     { (yyvsp[(1) - (4)]).op_type = IS_CONST; ZVAL_EMPTY_STRING(&(yyvsp[(1) - (4)]).u.constant);  zend_do_build_namespace_name(&(yyvsp[(1) - (4)]), &(yyvsp[(1) - (4)]), &(yyvsp[(3) - (4)]) TSRMLS_CC); (yyvsp[(4) - (4)]).u.op.opline_num = zend_do_begin_function_call(&(yyvsp[(1) - (4)]), 0 TSRMLS_CC); }
 5007:     break;
 5008: 
 5009:   case 347:
 5010: 
 5011:     { zend_do_end_function_call(&(yyvsp[(1) - (7)]), &(yyval), &(yyvsp[(6) - (7)]), 0, (yyvsp[(4) - (7)]).u.op.opline_num TSRMLS_CC); zend_do_extended_fcall_end(TSRMLS_C); }
 5012:     break;
 5013: 
 5014:   case 348:
 5015: 
 5016:     { (yyvsp[(3) - (3)]).u.op.opline_num = zend_do_begin_function_call(&(yyvsp[(2) - (3)]), 0 TSRMLS_CC); }
 5017:     break;
 5018: 
 5019:   case 349:
 5020: 
 5021:     { zend_do_end_function_call(&(yyvsp[(2) - (6)]), &(yyval), &(yyvsp[(5) - (6)]), 0, (yyvsp[(3) - (6)]).u.op.opline_num TSRMLS_CC); zend_do_extended_fcall_end(TSRMLS_C); }
 5022:     break;
 5023: 
 5024:   case 350:
 5025: 
 5026:     { (yyvsp[(4) - (4)]).u.op.opline_num = zend_do_begin_class_member_function_call(&(yyvsp[(1) - (4)]), &(yyvsp[(3) - (4)]) TSRMLS_CC); }
 5027:     break;
 5028: 
 5029:   case 351:
 5030: 
 5031:     { zend_do_end_function_call((yyvsp[(4) - (7)]).u.op.opline_num?NULL:&(yyvsp[(3) - (7)]), &(yyval), &(yyvsp[(6) - (7)]), (yyvsp[(4) - (7)]).u.op.opline_num, (yyvsp[(4) - (7)]).u.op.opline_num TSRMLS_CC); zend_do_extended_fcall_end(TSRMLS_C);}
 5032:     break;
 5033: 
 5034:   case 352:
 5035: 
 5036:     { zend_do_end_variable_parse(&(yyvsp[(3) - (4)]), BP_VAR_R, 0 TSRMLS_CC); zend_do_begin_class_member_function_call(&(yyvsp[(1) - (4)]), &(yyvsp[(3) - (4)]) TSRMLS_CC); }
 5037:     break;
 5038: 
 5039:   case 353:
 5040: 
 5041:     { zend_do_end_function_call(NULL, &(yyval), &(yyvsp[(6) - (7)]), 1, 1 TSRMLS_CC); zend_do_extended_fcall_end(TSRMLS_C);}
 5042:     break;
 5043: 
 5044:   case 354:
 5045: 
 5046:     { zend_do_begin_class_member_function_call(&(yyvsp[(1) - (4)]), &(yyvsp[(3) - (4)]) TSRMLS_CC); }
 5047:     break;
 5048: 
 5049:   case 355:
 5050: 
 5051:     { zend_do_end_function_call(NULL, &(yyval), &(yyvsp[(6) - (7)]), 1, 1 TSRMLS_CC); zend_do_extended_fcall_end(TSRMLS_C);}
 5052:     break;
 5053: 
 5054:   case 356:
 5055: 
 5056:     { zend_do_end_variable_parse(&(yyvsp[(3) - (4)]), BP_VAR_R, 0 TSRMLS_CC); zend_do_begin_class_member_function_call(&(yyvsp[(1) - (4)]), &(yyvsp[(3) - (4)]) TSRMLS_CC); }
 5057:     break;
 5058: 
 5059:   case 357:
 5060: 
 5061:     { zend_do_end_function_call(NULL, &(yyval), &(yyvsp[(6) - (7)]), 1, 1 TSRMLS_CC); zend_do_extended_fcall_end(TSRMLS_C);}
 5062:     break;
 5063: 
 5064:   case 358:
 5065: 
 5066:     { zend_do_end_variable_parse(&(yyvsp[(1) - (2)]), BP_VAR_R, 0 TSRMLS_CC); zend_do_begin_dynamic_function_call(&(yyvsp[(1) - (2)]), 0 TSRMLS_CC); }
 5067:     break;
 5068: 
 5069:   case 359:
 5070: 
 5071:     { zend_do_end_function_call(&(yyvsp[(1) - (5)]), &(yyval), &(yyvsp[(4) - (5)]), 0, 1 TSRMLS_CC); zend_do_extended_fcall_end(TSRMLS_C);}
 5072:     break;
 5073: 
 5074:   case 360:
 5075: 
 5076:     { (yyval).op_type = IS_CONST; ZVAL_STRINGL(&(yyval).u.constant, "static", sizeof("static")-1, 1);}
 5077:     break;
 5078: 
 5079:   case 361:
 5080: 
 5081:     { (yyval) = (yyvsp[(1) - (1)]); }
 5082:     break;
 5083: 
 5084:   case 362:
 5085: 
 5086:     { (yyval).op_type = IS_CONST; ZVAL_EMPTY_STRING(&(yyval).u.constant);  zend_do_build_namespace_name(&(yyval), &(yyval), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 5087:     break;
 5088: 
 5089:   case 363:
 5090: 
 5091:     { char *tmp = estrndup(Z_STRVAL((yyvsp[(2) - (2)]).u.constant), Z_STRLEN((yyvsp[(2) - (2)]).u.constant)+1); memcpy(&(tmp[1]), Z_STRVAL((yyvsp[(2) - (2)]).u.constant), Z_STRLEN((yyvsp[(2) - (2)]).u.constant)+1); tmp[0] = '\\'; efree(Z_STRVAL((yyvsp[(2) - (2)]).u.constant)); Z_STRVAL((yyvsp[(2) - (2)]).u.constant) = tmp; ++Z_STRLEN((yyvsp[(2) - (2)]).u.constant); (yyval) = (yyvsp[(2) - (2)]); }
 5092:     break;
 5093: 
 5094:   case 364:
 5095: 
 5096:     { (yyval) = (yyvsp[(1) - (1)]); }
 5097:     break;
 5098: 
 5099:   case 365:
 5100: 
 5101:     { (yyval).op_type = IS_CONST; ZVAL_EMPTY_STRING(&(yyval).u.constant);  zend_do_build_namespace_name(&(yyval), &(yyval), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 5102:     break;
 5103: 
 5104:   case 366:
 5105: 
 5106:     { char *tmp = estrndup(Z_STRVAL((yyvsp[(2) - (2)]).u.constant), Z_STRLEN((yyvsp[(2) - (2)]).u.constant)+1); memcpy(&(tmp[1]), Z_STRVAL((yyvsp[(2) - (2)]).u.constant), Z_STRLEN((yyvsp[(2) - (2)]).u.constant)+1); tmp[0] = '\\'; efree(Z_STRVAL((yyvsp[(2) - (2)]).u.constant)); Z_STRVAL((yyvsp[(2) - (2)]).u.constant) = tmp; ++Z_STRLEN((yyvsp[(2) - (2)]).u.constant); (yyval) = (yyvsp[(2) - (2)]); }
 5107:     break;
 5108: 
 5109:   case 367:
 5110: 
 5111:     { zend_do_fetch_class(&(yyval), &(yyvsp[(1) - (1)]) TSRMLS_CC); }
 5112:     break;
 5113: 
 5114:   case 368:
 5115: 
 5116:     { zend_do_end_variable_parse(&(yyvsp[(1) - (1)]), BP_VAR_R, 0 TSRMLS_CC); zend_do_fetch_class(&(yyval), &(yyvsp[(1) - (1)]) TSRMLS_CC); }
 5117:     break;
 5118: 
 5119:   case 369:
 5120: 
 5121:     { zend_do_push_object(&(yyvsp[(1) - (2)]) TSRMLS_CC); }
 5122:     break;
 5123: 
 5124:   case 370:
 5125: 
 5126:     { zend_do_push_object(&(yyvsp[(4) - (4)]) TSRMLS_CC); }
 5127:     break;
 5128: 
 5129:   case 371:
 5130: 
 5131:     { zend_do_pop_object(&(yyval) TSRMLS_CC); (yyval).EA = ZEND_PARSED_MEMBER; }
 5132:     break;
 5133: 
 5134:   case 372:
 5135: 
 5136:     { (yyval) = (yyvsp[(1) - (1)]); }
 5137:     break;
 5138: 
 5139:   case 375:
 5140: 
 5141:     { zend_do_push_object(&(yyvsp[(2) - (2)]) TSRMLS_CC); }
 5142:     break;
 5143: 
 5144:   case 376:
 5145: 
 5146:     { memset(&(yyval), 0, sizeof(znode)); (yyval).op_type = IS_UNUSED; }
 5147:     break;
 5148: 
 5149:   case 377:
 5150: 
 5151:     { memset(&(yyval), 0, sizeof(znode)); (yyval).op_type = IS_UNUSED; }
 5152:     break;
 5153: 
 5154:   case 378:
 5155: 
 5156:     { (yyval) = (yyvsp[(2) - (3)]); }
 5157:     break;
 5158: 
 5159:   case 379:
 5160: 
 5161:     { ZVAL_EMPTY_STRING(&(yyval).u.constant); INIT_PZVAL(&(yyval).u.constant); (yyval).op_type = IS_CONST; }
 5162:     break;
 5163: 
 5164:   case 380:
 5165: 
 5166:     { (yyval) = (yyvsp[(1) - (1)]); }
 5167:     break;
 5168: 
 5169:   case 381:
 5170: 
 5171:     { (yyval) = (yyvsp[(1) - (1)]); }
 5172:     break;
 5173: 
 5174:   case 382:
 5175: 
 5176:     { Z_LVAL((yyval).u.constant)=0; }
 5177:     break;
 5178: 
 5179:   case 383:
 5180: 
 5181:     { (yyval) = (yyvsp[(2) - (3)]); }
 5182:     break;
 5183: 
 5184:   case 384:
 5185: 
 5186:     { (yyval) = (yyvsp[(1) - (1)]); }
 5187:     break;
 5188: 
 5189:   case 385:
 5190: 
 5191:     { (yyval) = (yyvsp[(1) - (1)]); }
 5192:     break;
 5193: 
 5194:   case 386:
 5195: 
 5196:     { (yyval) = (yyvsp[(1) - (1)]); }
 5197:     break;
 5198: 
 5199:   case 387:
 5200: 
 5201:     { (yyval) = (yyvsp[(1) - (1)]); }
 5202:     break;
 5203: 
 5204:   case 388:
 5205: 
 5206:     { (yyval) = (yyvsp[(1) - (1)]); }
 5207:     break;
 5208: 
 5209:   case 389:
 5210: 
 5211:     { (yyval) = (yyvsp[(1) - (1)]); }
 5212:     break;
 5213: 
 5214:   case 390:
 5215: 
 5216:     { (yyval) = (yyvsp[(1) - (1)]); }
 5217:     break;
 5218: 
 5219:   case 391:
 5220: 
 5221:     { (yyval) = (yyvsp[(1) - (1)]); }
 5222:     break;
 5223: 
 5224:   case 392:
 5225: 
 5226:     { (yyval) = (yyvsp[(1) - (1)]); }
 5227:     break;
 5228: 
 5229:   case 393:
 5230: 
 5231:     { (yyval) = (yyvsp[(1) - (1)]); }
 5232:     break;
 5233: 
 5234:   case 394:
 5235: 
 5236:     { (yyval) = (yyvsp[(2) - (3)]); CG(heredoc) = Z_STRVAL((yyvsp[(1) - (3)]).u.constant); CG(heredoc_len) = Z_STRLEN((yyvsp[(1) - (3)]).u.constant); }
 5237:     break;
 5238: 
 5239:   case 395:
 5240: 
 5241:     { ZVAL_EMPTY_STRING(&(yyval).u.constant); INIT_PZVAL(&(yyval).u.constant); (yyval).op_type = IS_CONST; CG(heredoc) = Z_STRVAL((yyvsp[(1) - (2)]).u.constant); CG(heredoc_len) = Z_STRLEN((yyvsp[(1) - (2)]).u.constant); }
 5242:     break;
 5243: 
 5244:   case 396:
 5245: 
 5246:     { (yyval) = (yyvsp[(1) - (1)]); }
 5247:     break;
 5248: 
 5249:   case 397:
 5250: 
 5251:     { zend_do_fetch_constant(&(yyval), NULL, &(yyvsp[(1) - (1)]), ZEND_CT, 1 TSRMLS_CC); }
 5252:     break;
 5253: 
 5254:   case 398:
 5255: 
 5256:     { (yyval).op_type = IS_CONST; ZVAL_EMPTY_STRING(&(yyval).u.constant);  zend_do_build_namespace_name(&(yyval), &(yyval), &(yyvsp[(3) - (3)]) TSRMLS_CC); (yyvsp[(3) - (3)]) = (yyval); zend_do_fetch_constant(&(yyval), NULL, &(yyvsp[(3) - (3)]), ZEND_CT, 0 TSRMLS_CC); }
 5257:     break;
 5258: 
 5259:   case 399:
 5260: 
 5261:     { char *tmp = estrndup(Z_STRVAL((yyvsp[(2) - (2)]).u.constant), Z_STRLEN((yyvsp[(2) - (2)]).u.constant)+1); memcpy(&(tmp[1]), Z_STRVAL((yyvsp[(2) - (2)]).u.constant), Z_STRLEN((yyvsp[(2) - (2)]).u.constant)+1); tmp[0] = '\\'; efree(Z_STRVAL((yyvsp[(2) - (2)]).u.constant)); Z_STRVAL((yyvsp[(2) - (2)]).u.constant) = tmp; ++Z_STRLEN((yyvsp[(2) - (2)]).u.constant); zend_do_fetch_constant(&(yyval), NULL, &(yyvsp[(2) - (2)]), ZEND_CT, 0 TSRMLS_CC); }
 5262:     break;
 5263: 
 5264:   case 400:
 5265: 
 5266:     { ZVAL_LONG(&(yyvsp[(1) - (2)]).u.constant, 0); add_function(&(yyvsp[(2) - (2)]).u.constant, &(yyvsp[(1) - (2)]).u.constant, &(yyvsp[(2) - (2)]).u.constant TSRMLS_CC); (yyval) = (yyvsp[(2) - (2)]); }
 5267:     break;
 5268: 
 5269:   case 401:
 5270: 
 5271:     { ZVAL_LONG(&(yyvsp[(1) - (2)]).u.constant, 0); sub_function(&(yyvsp[(2) - (2)]).u.constant, &(yyvsp[(1) - (2)]).u.constant, &(yyvsp[(2) - (2)]).u.constant TSRMLS_CC); (yyval) = (yyvsp[(2) - (2)]); }
 5272:     break;
 5273: 
 5274:   case 402:
 5275: 
 5276:     { (yyval) = (yyvsp[(3) - (4)]); Z_TYPE((yyval).u.constant) = IS_CONSTANT_ARRAY; }
 5277:     break;
 5278: 
 5279:   case 403:
 5280: 
 5281:     { (yyval) = (yyvsp[(2) - (3)]); Z_TYPE((yyval).u.constant) = IS_CONSTANT_ARRAY; }
 5282:     break;
 5283: 
 5284:   case 404:
 5285: 
 5286:     { (yyval) = (yyvsp[(1) - (1)]); }
 5287:     break;
 5288: 
 5289:   case 405:
 5290: 
 5291:     { (yyval) = (yyvsp[(1) - (1)]); }
 5292:     break;
 5293: 
 5294:   case 406:
 5295: 
 5296:     { zend_do_fetch_constant(&(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]), ZEND_CT, 0 TSRMLS_CC); }
 5297:     break;
 5298: 
 5299:   case 407:
 5300: 
 5301:     { (yyval) = (yyvsp[(1) - (1)]); }
 5302:     break;
 5303: 
 5304:   case 408:
 5305: 
 5306:     { (yyval) = (yyvsp[(1) - (1)]); }
 5307:     break;
 5308: 
 5309:   case 409:
 5310: 
 5311:     { zend_do_fetch_constant(&(yyval), NULL, &(yyvsp[(1) - (1)]), ZEND_RT, 1 TSRMLS_CC); }
 5312:     break;
 5313: 
 5314:   case 410:
 5315: 
 5316:     { (yyval).op_type = IS_CONST; ZVAL_EMPTY_STRING(&(yyval).u.constant);  zend_do_build_namespace_name(&(yyval), &(yyval), &(yyvsp[(3) - (3)]) TSRMLS_CC); (yyvsp[(3) - (3)]) = (yyval); zend_do_fetch_constant(&(yyval), NULL, &(yyvsp[(3) - (3)]), ZEND_RT, 0 TSRMLS_CC); }
 5317:     break;
 5318: 
 5319:   case 411:
 5320: 
 5321:     { char *tmp = estrndup(Z_STRVAL((yyvsp[(2) - (2)]).u.constant), Z_STRLEN((yyvsp[(2) - (2)]).u.constant)+1); memcpy(&(tmp[1]), Z_STRVAL((yyvsp[(2) - (2)]).u.constant), Z_STRLEN((yyvsp[(2) - (2)]).u.constant)+1); tmp[0] = '\\'; efree(Z_STRVAL((yyvsp[(2) - (2)]).u.constant)); Z_STRVAL((yyvsp[(2) - (2)]).u.constant) = tmp; ++Z_STRLEN((yyvsp[(2) - (2)]).u.constant); zend_do_fetch_constant(&(yyval), NULL, &(yyvsp[(2) - (2)]), ZEND_RT, 0 TSRMLS_CC); }
 5322:     break;
 5323: 
 5324:   case 412:
 5325: 
 5326:     { (yyval) = (yyvsp[(1) - (1)]); }
 5327:     break;
 5328: 
 5329:   case 413:
 5330: 
 5331:     { (yyval) = (yyvsp[(2) - (3)]); }
 5332:     break;
 5333: 
 5334:   case 414:
 5335: 
 5336:     { (yyval) = (yyvsp[(2) - (3)]); CG(heredoc) = Z_STRVAL((yyvsp[(1) - (3)]).u.constant); CG(heredoc_len) = Z_STRLEN((yyvsp[(1) - (3)]).u.constant); }
 5337:     break;
 5338: 
 5339:   case 415:
 5340: 
 5341:     { if (Z_TYPE((yyvsp[(1) - (1)]).u.constant) == IS_CONSTANT) {zend_do_fetch_constant(&(yyval), NULL, &(yyvsp[(1) - (1)]), ZEND_RT, 1 TSRMLS_CC);} else {(yyval) = (yyvsp[(1) - (1)]);} }
 5342:     break;
 5343: 
 5344:   case 416:
 5345: 
 5346:     { (yyval).op_type = IS_CONST; INIT_PZVAL(&(yyval).u.constant); array_init(&(yyval).u.constant); }
 5347:     break;
 5348: 
 5349:   case 417:
 5350: 
 5351:     { (yyval) = (yyvsp[(1) - (2)]); }
 5352:     break;
 5353: 
 5354:   case 420:
 5355: 
 5356:     { zend_do_add_static_array_element(&(yyval), &(yyvsp[(3) - (5)]), &(yyvsp[(5) - (5)])); }
 5357:     break;
 5358: 
 5359:   case 421:
 5360: 
 5361:     { zend_do_add_static_array_element(&(yyval), NULL, &(yyvsp[(3) - (3)])); }
 5362:     break;
 5363: 
 5364:   case 422:
 5365: 
 5366:     { (yyval).op_type = IS_CONST; INIT_PZVAL(&(yyval).u.constant); array_init(&(yyval).u.constant); zend_do_add_static_array_element(&(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)])); }
 5367:     break;
 5368: 
 5369:   case 423:
 5370: 
 5371:     { (yyval).op_type = IS_CONST; INIT_PZVAL(&(yyval).u.constant); array_init(&(yyval).u.constant); zend_do_add_static_array_element(&(yyval), NULL, &(yyvsp[(1) - (1)])); }
 5372:     break;
 5373: 
 5374:   case 424:
 5375: 
 5376:     { (yyval) = (yyvsp[(1) - (1)]); }
 5377:     break;
 5378: 
 5379:   case 425:
 5380: 
 5381:     { (yyval) = (yyvsp[(1) - (1)]); }
 5382:     break;
 5383: 
 5384:   case 426:
 5385: 
 5386:     { zend_do_end_variable_parse(&(yyvsp[(1) - (1)]), BP_VAR_R, 0 TSRMLS_CC); (yyval) = (yyvsp[(1) - (1)]); }
 5387:     break;
 5388: 
 5389:   case 427:
 5390: 
 5391:     { zend_do_end_variable_parse(&(yyvsp[(1) - (1)]), BP_VAR_W, 0 TSRMLS_CC); (yyval) = (yyvsp[(1) - (1)]);
 5392: 				  zend_check_writable_variable(&(yyvsp[(1) - (1)])); }
 5393:     break;
 5394: 
 5395:   case 428:
 5396: 
 5397:     { zend_do_end_variable_parse(&(yyvsp[(1) - (1)]), BP_VAR_RW, 0 TSRMLS_CC); (yyval) = (yyvsp[(1) - (1)]);
 5398: 				  zend_check_writable_variable(&(yyvsp[(1) - (1)])); }
 5399:     break;
 5400: 
 5401:   case 429:
 5402: 
 5403:     { zend_do_push_object(&(yyvsp[(1) - (2)]) TSRMLS_CC); }
 5404:     break;
 5405: 
 5406:   case 430:
 5407: 
 5408:     { zend_do_push_object(&(yyvsp[(4) - (4)]) TSRMLS_CC); }
 5409:     break;
 5410: 
 5411:   case 431:
 5412: 
 5413:     { zend_do_pop_object(&(yyval) TSRMLS_CC); (yyval).EA = (yyvsp[(1) - (7)]).EA | ((yyvsp[(7) - (7)]).EA ? (yyvsp[(7) - (7)]).EA : (yyvsp[(6) - (7)]).EA); }
 5414:     break;
 5415: 
 5416:   case 432:
 5417: 
 5418:     { (yyval) = (yyvsp[(1) - (1)]); }
 5419:     break;
 5420: 
 5421:   case 433:
 5422: 
 5423:     { (yyval).EA = (yyvsp[(2) - (2)]).EA; }
 5424:     break;
 5425: 
 5426:   case 434:
 5427: 
 5428:     { (yyval).EA = 0; }
 5429:     break;
 5430: 
 5431:   case 435:
 5432: 
 5433:     { zend_do_push_object(&(yyvsp[(2) - (2)]) TSRMLS_CC); }
 5434:     break;
 5435: 
 5436:   case 436:
 5437: 
 5438:     { (yyval).EA = (yyvsp[(4) - (4)]).EA; }
 5439:     break;
 5440: 
 5441:   case 437:
 5442: 
 5443:     { fetch_array_dim(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(3) - (4)]) TSRMLS_CC); }
 5444:     break;
 5445: 
 5446:   case 438:
 5447: 
 5448:     { (yyvsp[(1) - (4)]).EA = ZEND_PARSED_METHOD_CALL; fetch_array_dim(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(3) - (4)]) TSRMLS_CC); }
 5449:     break;
 5450: 
 5451:   case 439:
 5452: 
 5453:     { zend_do_pop_object(&(yyvsp[(1) - (1)]) TSRMLS_CC); zend_do_begin_method_call(&(yyvsp[(1) - (1)]) TSRMLS_CC); }
 5454:     break;
 5455: 
 5456:   case 440:
 5457: 
 5458:     { zend_do_end_function_call(&(yyvsp[(1) - (4)]), &(yyval), &(yyvsp[(3) - (4)]), 1, 1 TSRMLS_CC); zend_do_extended_fcall_end(TSRMLS_C); }
 5459:     break;
 5460: 
 5461:   case 441:
 5462: 
 5463:     { (yyval) = (yyvsp[(1) - (1)]); (yyval).EA = ZEND_PARSED_METHOD_CALL; zend_do_push_object(&(yyval) TSRMLS_CC); }
 5464:     break;
 5465: 
 5466:   case 442:
 5467: 
 5468:     { (yyval) = (yyvsp[(1) - (1)]); zend_do_push_object(&(yyval) TSRMLS_CC); }
 5469:     break;
 5470: 
 5471:   case 443:
 5472: 
 5473:     { (yyval).EA = ZEND_PARSED_MEMBER; }
 5474:     break;
 5475: 
 5476:   case 444:
 5477: 
 5478:     { (yyval) = (yyvsp[(1) - (1)]); }
 5479:     break;
 5480: 
 5481:   case 445:
 5482: 
 5483:     { zend_do_indirect_references(&(yyval), &(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
 5484:     break;
 5485: 
 5486:   case 446:
 5487: 
 5488:     { (yyval) = (yyvsp[(3) - (3)]); zend_do_fetch_static_member(&(yyval), &(yyvsp[(1) - (3)]) TSRMLS_CC); }
 5489:     break;
 5490: 
 5491:   case 447:
 5492: 
 5493:     { (yyval) = (yyvsp[(3) - (3)]); zend_do_fetch_static_member(&(yyval), &(yyvsp[(1) - (3)]) TSRMLS_CC); }
 5494:     break;
 5495: 
 5496:   case 448:
 5497: 
 5498:     { zend_do_end_variable_parse(&(yyvsp[(1) - (1)]), BP_VAR_R, 0 TSRMLS_CC); (yyval)=(yyvsp[(1) - (1)]);; }
 5499:     break;
 5500: 
 5501:   case 449:
 5502: 
 5503:     { fetch_array_dim(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(3) - (4)]) TSRMLS_CC); }
 5504:     break;
 5505: 
 5506:   case 450:
 5507: 
 5508:     { zend_do_begin_variable_parse(TSRMLS_C); (yyvsp[(1) - (1)]).EA = ZEND_PARSED_FUNCTION_CALL; }
 5509:     break;
 5510: 
 5511:   case 451:
 5512: 
 5513:     { fetch_array_dim(&(yyval), &(yyvsp[(1) - (5)]), &(yyvsp[(4) - (5)]) TSRMLS_CC); }
 5514:     break;
 5515: 
 5516:   case 452:
 5517: 
 5518:     { (yyval) = (yyvsp[(1) - (1)]); }
 5519:     break;
 5520: 
 5521:   case 453:
 5522: 
 5523:     { (yyval) = (yyvsp[(1) - (1)]); }
 5524:     break;
 5525: 
 5526:   case 454:
 5527: 
 5528:     { zend_do_begin_variable_parse(TSRMLS_C); (yyval) = (yyvsp[(1) - (1)]); (yyval).EA = ZEND_PARSED_FUNCTION_CALL; }
 5529:     break;
 5530: 
 5531:   case 455:
 5532: 
 5533:     { (yyval) = (yyvsp[(1) - (1)]); (yyval).EA = ZEND_PARSED_VARIABLE; }
 5534:     break;
 5535: 
 5536:   case 456:
 5537: 
 5538:     { zend_do_indirect_references(&(yyval), &(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); (yyval).EA = ZEND_PARSED_VARIABLE; }
 5539:     break;
 5540: 
 5541:   case 457:
 5542: 
 5543:     { (yyval) = (yyvsp[(1) - (1)]); (yyval).EA = ZEND_PARSED_STATIC_MEMBER; }
 5544:     break;
 5545: 
 5546:   case 458:
 5547: 
 5548:     { fetch_array_dim(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(3) - (4)]) TSRMLS_CC); }
 5549:     break;
 5550: 
 5551:   case 459:
 5552: 
 5553:     { fetch_string_offset(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(3) - (4)]) TSRMLS_CC); }
 5554:     break;
 5555: 
 5556:   case 460:
 5557: 
 5558:     { zend_do_begin_variable_parse(TSRMLS_C); fetch_simple_variable(&(yyval), &(yyvsp[(1) - (1)]), 1 TSRMLS_CC); }
 5559:     break;
 5560: 
 5561:   case 461:
 5562: 
 5563:     { (yyval) = (yyvsp[(1) - (1)]); }
 5564:     break;
 5565: 
 5566:   case 462:
 5567: 
 5568:     { (yyval) = (yyvsp[(3) - (4)]); }
 5569:     break;
 5570: 
 5571:   case 463:
 5572: 
 5573:     { (yyval).op_type = IS_UNUSED; }
 5574:     break;
 5575: 
 5576:   case 464:
 5577: 
 5578:     { (yyval) = (yyvsp[(1) - (1)]); }
 5579:     break;
 5580: 
 5581:   case 465:
 5582: 
 5583:     { (yyval) = (yyvsp[(1) - (1)]); }
 5584:     break;
 5585: 
 5586:   case 466:
 5587: 
 5588:     { zend_do_end_variable_parse(&(yyvsp[(1) - (1)]), BP_VAR_R, 0 TSRMLS_CC); }
 5589:     break;
 5590: 
 5591:   case 467:
 5592: 
 5593:     { znode tmp_znode;  zend_do_pop_object(&tmp_znode TSRMLS_CC);  zend_do_fetch_property(&(yyval), &tmp_znode, &(yyvsp[(1) - (2)]) TSRMLS_CC);}
 5594:     break;
 5595: 
 5596:   case 468:
 5597: 
 5598:     { fetch_array_dim(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(3) - (4)]) TSRMLS_CC); }
 5599:     break;
 5600: 
 5601:   case 469:
 5602: 
 5603:     { fetch_string_offset(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(3) - (4)]) TSRMLS_CC); }
 5604:     break;
 5605: 
 5606:   case 470:
 5607: 
 5608:     { znode tmp_znode;  zend_do_pop_object(&tmp_znode TSRMLS_CC);  zend_do_fetch_property(&(yyval), &tmp_znode, &(yyvsp[(1) - (1)]) TSRMLS_CC);}
 5609:     break;
 5610: 
 5611:   case 471:
 5612: 
 5613:     { (yyval) = (yyvsp[(1) - (1)]); }
 5614:     break;
 5615: 
 5616:   case 472:
 5617: 
 5618:     { (yyval) = (yyvsp[(2) - (3)]); }
 5619:     break;
 5620: 
 5621:   case 473:
 5622: 
 5623:     { Z_LVAL((yyval).u.constant) = 1; }
 5624:     break;
 5625: 
 5626:   case 474:
 5627: 
 5628:     { Z_LVAL((yyval).u.constant)++; }
 5629:     break;
 5630: 
 5631:   case 477:
 5632: 
 5633:     { zend_do_add_list_element(&(yyvsp[(1) - (1)]) TSRMLS_CC); }
 5634:     break;
 5635: 
 5636:   case 478:
 5637: 
 5638:     { zend_do_new_list_begin(TSRMLS_C); }
 5639:     break;
 5640: 
 5641:   case 479:
 5642: 
 5643:     { zend_do_new_list_end(TSRMLS_C); }
 5644:     break;
 5645: 
 5646:   case 480:
 5647: 
 5648:     { zend_do_add_list_element(NULL TSRMLS_CC); }
 5649:     break;
 5650: 
 5651:   case 481:
 5652: 
 5653:     { zend_do_init_array(&(yyval), NULL, NULL, 0 TSRMLS_CC); }
 5654:     break;
 5655: 
 5656:   case 482:
 5657: 
 5658:     { (yyval) = (yyvsp[(1) - (2)]); }
 5659:     break;
 5660: 
 5661:   case 483:
 5662: 
 5663:     { zend_do_add_array_element(&(yyval), &(yyvsp[(5) - (5)]), &(yyvsp[(3) - (5)]), 0 TSRMLS_CC); }
 5664:     break;
 5665: 
 5666:   case 484:
 5667: 
 5668:     { zend_do_add_array_element(&(yyval), &(yyvsp[(3) - (3)]), NULL, 0 TSRMLS_CC); }
 5669:     break;
 5670: 
 5671:   case 485:
 5672: 
 5673:     { zend_do_init_array(&(yyval), &(yyvsp[(3) - (3)]), &(yyvsp[(1) - (3)]), 0 TSRMLS_CC); }
 5674:     break;
 5675: 
 5676:   case 486:
 5677: 
 5678:     { zend_do_init_array(&(yyval), &(yyvsp[(1) - (1)]), NULL, 0 TSRMLS_CC); }
 5679:     break;
 5680: 
 5681:   case 487:
 5682: 
 5683:     { zend_do_add_array_element(&(yyval), &(yyvsp[(6) - (6)]), &(yyvsp[(3) - (6)]), 1 TSRMLS_CC); }
 5684:     break;
 5685: 
 5686:   case 488:
 5687: 
 5688:     { zend_do_add_array_element(&(yyval), &(yyvsp[(4) - (4)]), NULL, 1 TSRMLS_CC); }
 5689:     break;
 5690: 
 5691:   case 489:
 5692: 
 5693:     { zend_do_init_array(&(yyval), &(yyvsp[(4) - (4)]), &(yyvsp[(1) - (4)]), 1 TSRMLS_CC); }
 5694:     break;
 5695: 
 5696:   case 490:
 5697: 
 5698:     { zend_do_init_array(&(yyval), &(yyvsp[(2) - (2)]), NULL, 1 TSRMLS_CC); }
 5699:     break;
 5700: 
 5701:   case 491:
 5702: 
 5703:     { zend_do_end_variable_parse(&(yyvsp[(2) - (2)]), BP_VAR_R, 0 TSRMLS_CC);  zend_do_add_variable(&(yyval), &(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
 5704:     break;
 5705: 
 5706:   case 492:
 5707: 
 5708:     { zend_do_add_string(&(yyval), &(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
 5709:     break;
 5710: 
 5711:   case 493:
 5712: 
 5713:     { zend_do_end_variable_parse(&(yyvsp[(1) - (1)]), BP_VAR_R, 0 TSRMLS_CC); zend_do_add_variable(&(yyval), NULL, &(yyvsp[(1) - (1)]) TSRMLS_CC); }
 5714:     break;
 5715: 
 5716:   case 494:
 5717: 
 5718:     { zend_do_add_string(&(yyval), NULL, &(yyvsp[(1) - (2)]) TSRMLS_CC); zend_do_end_variable_parse(&(yyvsp[(2) - (2)]), BP_VAR_R, 0 TSRMLS_CC); zend_do_add_variable(&(yyval), &(yyval), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
 5719:     break;
 5720: 
 5721:   case 495:
 5722: 
 5723:     { zend_do_begin_variable_parse(TSRMLS_C); fetch_simple_variable(&(yyval), &(yyvsp[(1) - (1)]), 1 TSRMLS_CC); }
 5724:     break;
 5725: 
 5726:   case 496:
 5727: 
 5728:     { zend_do_begin_variable_parse(TSRMLS_C); }
 5729:     break;
 5730: 
 5731:   case 497:
 5732: 
 5733:     { fetch_array_begin(&(yyval), &(yyvsp[(1) - (5)]), &(yyvsp[(4) - (5)]) TSRMLS_CC); }
 5734:     break;
 5735: 
 5736:   case 498:
 5737: 
 5738:     { zend_do_begin_variable_parse(TSRMLS_C); fetch_simple_variable(&(yyvsp[(2) - (3)]), &(yyvsp[(1) - (3)]), 1 TSRMLS_CC); zend_do_fetch_property(&(yyval), &(yyvsp[(2) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
 5739:     break;
 5740: 
 5741:   case 499:
 5742: 
 5743:     { zend_do_begin_variable_parse(TSRMLS_C);  fetch_simple_variable(&(yyval), &(yyvsp[(2) - (3)]), 1 TSRMLS_CC); }
 5744:     break;
 5745: 
 5746:   case 500:
 5747: 
 5748:     { zend_do_begin_variable_parse(TSRMLS_C);  fetch_array_begin(&(yyval), &(yyvsp[(2) - (6)]), &(yyvsp[(4) - (6)]) TSRMLS_CC); }
 5749:     break;
 5750: 
 5751:   case 501:
 5752: 
 5753:     { (yyval) = (yyvsp[(2) - (3)]); }
 5754:     break;
 5755: 
 5756:   case 502:
 5757: 
 5758:     { (yyval) = (yyvsp[(1) - (1)]); }
 5759:     break;
 5760: 
 5761:   case 503:
 5762: 
 5763:     { (yyval) = (yyvsp[(1) - (1)]); }
 5764:     break;
 5765: 
 5766:   case 504:
 5767: 
 5768:     { fetch_simple_variable(&(yyval), &(yyvsp[(1) - (1)]), 1 TSRMLS_CC); }
 5769:     break;
 5770: 
 5771:   case 505:
 5772: 
 5773:     { (yyval) = (yyvsp[(3) - (4)]); }
 5774:     break;
 5775: 
 5776:   case 506:
 5777: 
 5778:     { zend_do_isset_or_isempty(ZEND_ISEMPTY, &(yyval), &(yyvsp[(3) - (4)]) TSRMLS_CC); }
 5779:     break;
 5780: 
 5781:   case 507:
 5782: 
 5783:     { zend_do_include_or_eval(ZEND_INCLUDE, &(yyval), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
 5784:     break;
 5785: 
 5786:   case 508:
 5787: 
 5788:     { zend_do_include_or_eval(ZEND_INCLUDE_ONCE, &(yyval), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
 5789:     break;
 5790: 
 5791:   case 509:
 5792: 
 5793:     { zend_do_include_or_eval(ZEND_EVAL, &(yyval), &(yyvsp[(3) - (4)]) TSRMLS_CC); }
 5794:     break;
 5795: 
 5796:   case 510:
 5797: 
 5798:     { zend_do_include_or_eval(ZEND_REQUIRE, &(yyval), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
 5799:     break;
 5800: 
 5801:   case 511:
 5802: 
 5803:     { zend_do_include_or_eval(ZEND_REQUIRE_ONCE, &(yyval), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
 5804:     break;
 5805: 
 5806:   case 512:
 5807: 
 5808:     { zend_do_isset_or_isempty(ZEND_ISSET, &(yyval), &(yyvsp[(1) - (1)]) TSRMLS_CC); }
 5809:     break;
 5810: 
 5811:   case 513:
 5812: 
 5813:     { zend_do_boolean_and_begin(&(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
 5814:     break;
 5815: 
 5816:   case 514:
 5817: 
 5818:     { znode tmp; zend_do_isset_or_isempty(ZEND_ISSET, &tmp, &(yyvsp[(4) - (4)]) TSRMLS_CC); zend_do_boolean_and_end(&(yyval), &(yyvsp[(1) - (4)]), &tmp, &(yyvsp[(2) - (4)]) TSRMLS_CC); }
 5819:     break;
 5820: 
 5821:   case 515:
 5822: 
 5823:     { zend_do_fetch_constant(&(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]), ZEND_RT, 0 TSRMLS_CC); }
 5824:     break;
 5825: 
 5826:   case 516:
 5827: 
 5828:     { zend_do_fetch_constant(&(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]), ZEND_RT, 0 TSRMLS_CC); }
 5829:     break;
 5830: 
 5831: 
 5832: 
 5833:       default: break;
 5834:     }
 5835:   /* User semantic actions sometimes alter yychar, and that requires
 5836:      that yytoken be updated with the new translation.  We take the
 5837:      approach of translating immediately before every use of yytoken.
 5838:      One alternative is translating here after every semantic action,
 5839:      but that translation would be missed if the semantic action invokes
 5840:      YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or
 5841:      if it invokes YYBACKUP.  In the case of YYABORT or YYACCEPT, an
 5842:      incorrect destructor might then be invoked immediately.  In the
 5843:      case of YYERROR or YYBACKUP, subsequent parser actions might lead
 5844:      to an incorrect destructor call or verbose syntax error message
 5845:      before the lookahead is translated.  */
 5846:   YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
 5847: 
 5848:   YYPOPSTACK (yylen);
 5849:   yylen = 0;
 5850:   YY_STACK_PRINT (yyss, yyssp);
 5851: 
 5852:   *++yyvsp = yyval;
 5853: 
 5854:   /* Now `shift' the result of the reduction.  Determine what state
 5855:      that goes to, based on the state we popped back to and the rule
 5856:      number reduced by.  */
 5857: 
 5858:   yyn = yyr1[yyn];
 5859: 
 5860:   yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
 5861:   if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
 5862:     yystate = yytable[yystate];
 5863:   else
 5864:     yystate = yydefgoto[yyn - YYNTOKENS];
 5865: 
 5866:   goto yynewstate;
 5867: 
 5868: 
 5869: /*------------------------------------.
 5870: | yyerrlab -- here on detecting error |
 5871: `------------------------------------*/
 5872: yyerrlab:
 5873:   /* Make sure we have latest lookahead translation.  See comments at
 5874:      user semantic actions for why this is necessary.  */
 5875:   yytoken = yychar == YYEMPTY ? YYEMPTY : YYTRANSLATE (yychar);
 5876: 
 5877:   /* If not already recovering from an error, report this error.  */
 5878:   if (!yyerrstatus)
 5879:     {
 5880:       ++yynerrs;
 5881: #if ! YYERROR_VERBOSE
 5882:       yyerror (YY_("syntax error"));
 5883: #else
 5884: # define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \
 5885:                                         yyssp, yytoken)
 5886:       {
 5887:         char const *yymsgp = YY_("syntax error");
 5888:         int yysyntax_error_status;
 5889:         yysyntax_error_status = YYSYNTAX_ERROR;
 5890:         if (yysyntax_error_status == 0)
 5891:           yymsgp = yymsg;
 5892:         else if (yysyntax_error_status == 1)
 5893:           {
 5894:             if (yymsg != yymsgbuf)
 5895:               YYSTACK_FREE (yymsg);
 5896:             yymsg = (char *) YYSTACK_ALLOC (yymsg_alloc);
 5897:             if (!yymsg)
 5898:               {
 5899:                 yymsg = yymsgbuf;
 5900:                 yymsg_alloc = sizeof yymsgbuf;
 5901:                 yysyntax_error_status = 2;
 5902:               }
 5903:             else
 5904:               {
 5905:                 yysyntax_error_status = YYSYNTAX_ERROR;
 5906:                 yymsgp = yymsg;
 5907:               }
 5908:           }
 5909:         yyerror (yymsgp);
 5910:         if (yysyntax_error_status == 2)
 5911:           goto yyexhaustedlab;
 5912:       }
 5913: # undef YYSYNTAX_ERROR
 5914: #endif
 5915:     }
 5916: 
 5917: 
 5918: 
 5919:   if (yyerrstatus == 3)
 5920:     {
 5921:       /* If just tried and failed to reuse lookahead token after an
 5922: 	 error, discard it.  */
 5923: 
 5924:       if (yychar <= YYEOF)
 5925: 	{
 5926: 	  /* Return failure if at end of input.  */
 5927: 	  if (yychar == YYEOF)
 5928: 	    YYABORT;
 5929: 	}
 5930:       else
 5931: 	{
 5932: 	  yydestruct ("Error: discarding",
 5933: 		      yytoken, &yylval);
 5934: 	  yychar = YYEMPTY;
 5935: 	}
 5936:     }
 5937: 
 5938:   /* Else will try to reuse lookahead token after shifting the error
 5939:      token.  */
 5940:   goto yyerrlab1;
 5941: 
 5942: 
 5943: /*---------------------------------------------------.
 5944: | yyerrorlab -- error raised explicitly by YYERROR.  |
 5945: `---------------------------------------------------*/
 5946: yyerrorlab:
 5947: 
 5948:   /* Pacify compilers like GCC when the user code never invokes
 5949:      YYERROR and the label yyerrorlab therefore never appears in user
 5950:      code.  */
 5951:   if (/*CONSTCOND*/ 0)
 5952:      goto yyerrorlab;
 5953: 
 5954:   /* Do not reclaim the symbols of the rule which action triggered
 5955:      this YYERROR.  */
 5956:   YYPOPSTACK (yylen);
 5957:   yylen = 0;
 5958:   YY_STACK_PRINT (yyss, yyssp);
 5959:   yystate = *yyssp;
 5960:   goto yyerrlab1;
 5961: 
 5962: 
 5963: /*-------------------------------------------------------------.
 5964: | yyerrlab1 -- common code for both syntax error and YYERROR.  |
 5965: `-------------------------------------------------------------*/
 5966: yyerrlab1:
 5967:   yyerrstatus = 3;	/* Each real token shifted decrements this.  */
 5968: 
 5969:   for (;;)
 5970:     {
 5971:       yyn = yypact[yystate];
 5972:       if (!yypact_value_is_default (yyn))
 5973: 	{
 5974: 	  yyn += YYTERROR;
 5975: 	  if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
 5976: 	    {
 5977: 	      yyn = yytable[yyn];
 5978: 	      if (0 < yyn)
 5979: 		break;
 5980: 	    }
 5981: 	}
 5982: 
 5983:       /* Pop the current state because it cannot handle the error token.  */
 5984:       if (yyssp == yyss)
 5985: 	YYABORT;
 5986: 
 5987: 
 5988:       yydestruct ("Error: popping",
 5989: 		  yystos[yystate], yyvsp);
 5990:       YYPOPSTACK (1);
 5991:       yystate = *yyssp;
 5992:       YY_STACK_PRINT (yyss, yyssp);
 5993:     }
 5994: 
 5995:   YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
 5996:   *++yyvsp = yylval;
 5997:   YY_IGNORE_MAYBE_UNINITIALIZED_END
 5998: 
 5999: 
 6000:   /* Shift the error token.  */
 6001:   YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
 6002: 
 6003:   yystate = yyn;
 6004:   goto yynewstate;
 6005: 
 6006: 
 6007: /*-------------------------------------.
 6008: | yyacceptlab -- YYACCEPT comes here.  |
 6009: `-------------------------------------*/
 6010: yyacceptlab:
 6011:   yyresult = 0;
 6012:   goto yyreturn;
 6013: 
 6014: /*-----------------------------------.
 6015: | yyabortlab -- YYABORT comes here.  |
 6016: `-----------------------------------*/
 6017: yyabortlab:
 6018:   yyresult = 1;
 6019:   goto yyreturn;
 6020: 
 6021: #if !defined yyoverflow || YYERROR_VERBOSE
 6022: /*-------------------------------------------------.
 6023: | yyexhaustedlab -- memory exhaustion comes here.  |
 6024: `-------------------------------------------------*/
 6025: yyexhaustedlab:
 6026:   yyerror (YY_("memory exhausted"));
 6027:   yyresult = 2;
 6028:   /* Fall through.  */
 6029: #endif
 6030: 
 6031: yyreturn:
 6032:   if (yychar != YYEMPTY)
 6033:     {
 6034:       /* Make sure we have latest lookahead translation.  See comments at
 6035:          user semantic actions for why this is necessary.  */
 6036:       yytoken = YYTRANSLATE (yychar);
 6037:       yydestruct ("Cleanup: discarding lookahead",
 6038:                   yytoken, &yylval);
 6039:     }
 6040:   /* Do not reclaim the symbols of the rule which action triggered
 6041:      this YYABORT or YYACCEPT.  */
 6042:   YYPOPSTACK (yylen);
 6043:   YY_STACK_PRINT (yyss, yyssp);
 6044:   while (yyssp != yyss)
 6045:     {
 6046:       yydestruct ("Cleanup: popping",
 6047: 		  yystos[*yyssp], yyvsp);
 6048:       YYPOPSTACK (1);
 6049:     }
 6050: #ifndef yyoverflow
 6051:   if (yyss != yyssa)
 6052:     YYSTACK_FREE (yyss);
 6053: #endif
 6054: #if YYERROR_VERBOSE
 6055:   if (yymsg != yymsgbuf)
 6056:     YYSTACK_FREE (yymsg);
 6057: #endif
 6058:   /* Make sure YYID is used.  */
 6059:   return YYID (yyresult);
 6060: }
 6061: 
 6062: 
 6063: 
 6064: 
 6065: 
 6066: /* Copy to YYRES the contents of YYSTR after stripping away unnecessary
 6067:    quotes and backslashes, so that it's suitable for yyerror.  The
 6068:    heuristic is that double-quoting is unnecessary unless the string
 6069:    contains an apostrophe, a comma, or backslash (other than
 6070:    backslash-backslash).  YYSTR is taken from yytname.  If YYRES is
 6071:    null, do not copy; instead, return the length of what the result
 6072:    would have been.  */
 6073: static YYSIZE_T zend_yytnamerr(char *yyres, const char *yystr)
 6074: {
 6075: 	if (!yyres) {
 6076: 		return yystrlen(yystr);
 6077: 	}
 6078: 	{
 6079: 		TSRMLS_FETCH();
 6080: 		if (CG(parse_error) == 0) {
 6081: 			char buffer[120];
 6082: 			const unsigned char *end, *str, *tok1 = NULL, *tok2 = NULL;
 6083: 			unsigned int len = 0, toklen = 0, yystr_len;
 6084: 			
 6085: 			CG(parse_error) = 1;
 6086: 
 6087: 			if (LANG_SCNG(yy_text)[0] == 0 &&
 6088: 				LANG_SCNG(yy_leng) == 1 &&
 6089: 				memcmp(yystr, "\"end of file\"", sizeof("\"end of file\"") - 1) == 0) {
 6090: 				yystpcpy(yyres, "end of file");
 6091: 				return sizeof("end of file")-1;
 6092: 			}
 6093: 			
 6094: 			str = LANG_SCNG(yy_text);
 6095: 			end = memchr(str, '\n', LANG_SCNG(yy_leng));
 6096: 			yystr_len = yystrlen(yystr);
 6097: 			
 6098: 			if ((tok1 = memchr(yystr, '(', yystr_len)) != NULL
 6099: 				&& (tok2 = zend_memrchr(yystr, ')', yystr_len)) != NULL) {
 6100: 				toklen = (tok2 - tok1) + 1;
 6101: 			} else {
 6102: 				tok1 = tok2 = NULL;
 6103: 				toklen = 0;
 6104: 			}
 6105: 			
 6106: 			if (end == NULL) {
 6107: 				len = LANG_SCNG(yy_leng) > 30 ? 30 : LANG_SCNG(yy_leng);
 6108: 			} else {
 6109: 				len = (end - str) > 30 ? 30 : (end - str);
 6110: 			}
 6111: 			if (toklen) {
 6112: 				snprintf(buffer, sizeof(buffer), "'%.*s' %.*s", len, str, toklen, tok1);
 6113: 			} else {
 6114: 				snprintf(buffer, sizeof(buffer), "'%.*s'", len, str);
 6115: 			}
 6116: 			yystpcpy(yyres, buffer);
 6117: 			return len + (toklen ? toklen + 1 : 0) + 2;
 6118: 		}		
 6119: 	}	
 6120: 	if (*yystr == '"') {
 6121: 		YYSIZE_T yyn = 0;
 6122: 		const char *yyp = yystr;
 6123: 
 6124: 		for (; *++yyp != '"'; ++yyn) {
 6125: 			yyres[yyn] = *yyp;
 6126: 		}
 6127: 		yyres[yyn] = '\0';
 6128: 		return yyn;
 6129: 	}
 6130: 	yystpcpy(yyres, yystr);
 6131: 	return strlen(yystr);
 6132: }
 6133: 
 6134: /*
 6135:  * Local variables:
 6136:  * tab-width: 4
 6137:  * c-basic-offset: 4
 6138:  * indent-tabs-mode: t
 6139:  * End:
 6140:  */

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>