Coverage Report

Created: 2026-01-18 06:46

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/php-src/Zend/zend_language_parser.c
Line
Count
Source
1
/* A Bison parser, made by GNU Bison 3.5.1.  */
2
3
/* Bison implementation for Yacc-like parsers in C
4
5
   Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2020 Free Software Foundation,
6
   Inc.
7
8
   This program is free software: you can redistribute it and/or modify
9
   it under the terms of the GNU General Public License as published by
10
   the Free Software Foundation, either version 3 of the License, or
11
   (at your option) any later version.
12
13
   This program is distributed in the hope that it will be useful,
14
   but WITHOUT ANY WARRANTY; without even the implied warranty of
15
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16
   GNU General Public License for more details.
17
18
   You should have received a copy of the GNU General Public License
19
   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
20
21
/* As a special exception, you may create a larger work that contains
22
   part or all of the Bison parser skeleton and distribute that work
23
   under terms of your choice, so long as that work isn't itself a
24
   parser generator using the skeleton or a modified version thereof
25
   as a parser skeleton.  Alternatively, if you modify or redistribute
26
   the parser skeleton itself, you may (at your option) remove this
27
   special exception, which will cause the skeleton and the resulting
28
   Bison output files to be licensed under the GNU General Public
29
   License without this special exception.
30
31
   This special exception was added by the Free Software Foundation in
32
   version 2.2 of Bison.  */
33
34
/* C LALR(1) parser skeleton written by Richard Stallman, by
35
   simplifying the original so-called "semantic" parser.  */
36
37
/* All symbols defined below should begin with yy or YY, to avoid
38
   infringing on user name space.  This should be done even for local
39
   variables, as they might otherwise be expanded by user macros.
40
   There are some unavoidable exceptions within include files to
41
   define necessary library symbols; they are noted "INFRINGES ON
42
   USER NAME SPACE" below.  */
43
44
/* Undocumented macros, especially those whose name start with YY_,
45
   are private implementation details.  Do not rely on them.  */
46
47
/* Identify Bison output.  */
48
#define YYBISON 1
49
50
/* Bison version.  */
51
#define YYBISON_VERSION "3.5.1"
52
53
/* Skeleton name.  */
54
#define YYSKELETON_NAME "yacc.c"
55
56
/* Pure parsers.  */
57
#define YYPURE 2
58
59
/* Push parsers.  */
60
#define YYPUSH 0
61
62
/* Pull parsers.  */
63
#define YYPULL 1
64
65
/* "%code top" blocks.  */
66
#line 22 "/src/php-src/Zend/zend_language_parser.y"
67
68
#include "zend.h"
69
#include "zend_list.h"
70
#include "zend_globals.h"
71
#include "zend_API.h"
72
#include "zend_constants.h"
73
#include "zend_language_scanner.h"
74
#include "zend_exceptions.h"
75
76
0
#define YYSIZE_T size_t
77
0
#define yytnamerr zend_yytnamerr
78
static YYSIZE_T zend_yytnamerr(char*, const char*);
79
80
#ifdef _MSC_VER
81
#define YYMALLOC malloc
82
#define YYFREE free
83
#endif
84
85
#line 86 "/src/php-src/Zend/zend_language_parser.c"
86
/* Substitute the type names.  */
87
0
#define YYSTYPE         ZENDSTYPE
88
/* Substitute the variable and function names.  */
89
#define yyparse         zendparse
90
0
#define yylex           zendlex
91
0
#define yyerror         zenderror
92
#define yydebug         zenddebug
93
0
#define yynerrs         zendnerrs
94
95
96
# ifndef YY_CAST
97
#  ifdef __cplusplus
98
#   define YY_CAST(Type, Val) static_cast<Type> (Val)
99
#   define YY_REINTERPRET_CAST(Type, Val) reinterpret_cast<Type> (Val)
100
#  else
101
0
#   define YY_CAST(Type, Val) ((Type) (Val))
102
#   define YY_REINTERPRET_CAST(Type, Val) ((Type) (Val))
103
#  endif
104
# endif
105
# ifndef YY_NULLPTR
106
#  if defined __cplusplus
107
#   if 201103L <= __cplusplus
108
#    define YY_NULLPTR nullptr
109
#   else
110
#    define YY_NULLPTR 0
111
#   endif
112
#  else
113
0
#   define YY_NULLPTR ((void*)0)
114
#  endif
115
# endif
116
117
/* Enabling verbose error messages.  */
118
#ifdef YYERROR_VERBOSE
119
# undef YYERROR_VERBOSE
120
# define YYERROR_VERBOSE 1
121
#else
122
# define YYERROR_VERBOSE 1
123
#endif
124
125
/* Use api.header.include to #include this header
126
   instead of duplicating it here.  */
127
#ifndef YY_ZEND_SRC_PHP_SRC_ZEND_ZEND_LANGUAGE_PARSER_H_INCLUDED
128
# define YY_ZEND_SRC_PHP_SRC_ZEND_ZEND_LANGUAGE_PARSER_H_INCLUDED
129
/* Debug traces.  */
130
#ifndef ZENDDEBUG
131
# if defined YYDEBUG
132
#if YYDEBUG
133
#   define ZENDDEBUG 1
134
#  else
135
#   define ZENDDEBUG 0
136
#  endif
137
# else /* ! defined YYDEBUG */
138
#  define ZENDDEBUG 0
139
# endif /* ! defined YYDEBUG */
140
#endif  /* ! defined ZENDDEBUG */
141
#if ZENDDEBUG
142
extern int zenddebug;
143
#endif
144
/* "%code requires" blocks.  */
145
#line 41 "/src/php-src/Zend/zend_language_parser.y"
146
147
#include "zend_compile.h"
148
149
#line 150 "/src/php-src/Zend/zend_language_parser.c"
150
151
/* Token type.  */
152
#ifndef ZENDTOKENTYPE
153
# define ZENDTOKENTYPE
154
  enum zendtokentype
155
  {
156
    END = 0,
157
    T_THROW = 258,
158
    PREC_ARROW_FUNCTION = 259,
159
    T_INCLUDE = 260,
160
    T_INCLUDE_ONCE = 261,
161
    T_REQUIRE = 262,
162
    T_REQUIRE_ONCE = 263,
163
    T_LOGICAL_OR = 264,
164
    T_LOGICAL_XOR = 265,
165
    T_LOGICAL_AND = 266,
166
    T_PRINT = 267,
167
    T_YIELD = 268,
168
    T_DOUBLE_ARROW = 269,
169
    T_YIELD_FROM = 270,
170
    T_PLUS_EQUAL = 271,
171
    T_MINUS_EQUAL = 272,
172
    T_MUL_EQUAL = 273,
173
    T_DIV_EQUAL = 274,
174
    T_CONCAT_EQUAL = 275,
175
    T_MOD_EQUAL = 276,
176
    T_AND_EQUAL = 277,
177
    T_OR_EQUAL = 278,
178
    T_XOR_EQUAL = 279,
179
    T_SL_EQUAL = 280,
180
    T_SR_EQUAL = 281,
181
    T_POW_EQUAL = 282,
182
    T_COALESCE_EQUAL = 283,
183
    T_COALESCE = 284,
184
    T_BOOLEAN_OR = 285,
185
    T_BOOLEAN_AND = 286,
186
    T_AMPERSAND_NOT_FOLLOWED_BY_VAR_OR_VARARG = 287,
187
    T_AMPERSAND_FOLLOWED_BY_VAR_OR_VARARG = 288,
188
    T_IS_EQUAL = 289,
189
    T_IS_NOT_EQUAL = 290,
190
    T_IS_IDENTICAL = 291,
191
    T_IS_NOT_IDENTICAL = 292,
192
    T_SPACESHIP = 293,
193
    T_IS_SMALLER_OR_EQUAL = 294,
194
    T_IS_GREATER_OR_EQUAL = 295,
195
    T_PIPE = 296,
196
    T_SL = 297,
197
    T_SR = 298,
198
    T_INSTANCEOF = 299,
199
    T_INT_CAST = 300,
200
    T_DOUBLE_CAST = 301,
201
    T_STRING_CAST = 302,
202
    T_ARRAY_CAST = 303,
203
    T_OBJECT_CAST = 304,
204
    T_BOOL_CAST = 305,
205
    T_UNSET_CAST = 306,
206
    T_POW = 307,
207
    T_CLONE = 308,
208
    T_NOELSE = 309,
209
    T_ELSEIF = 310,
210
    T_ELSE = 311,
211
    T_LNUMBER = 312,
212
    T_DNUMBER = 313,
213
    T_STRING = 314,
214
    T_NAME_FULLY_QUALIFIED = 315,
215
    T_NAME_RELATIVE = 316,
216
    T_NAME_QUALIFIED = 317,
217
    T_VARIABLE = 318,
218
    T_INLINE_HTML = 319,
219
    T_ENCAPSED_AND_WHITESPACE = 320,
220
    T_CONSTANT_ENCAPSED_STRING = 321,
221
    T_STRING_VARNAME = 322,
222
    T_NUM_STRING = 323,
223
    T_EVAL = 324,
224
    T_NEW = 325,
225
    T_EXIT = 326,
226
    T_IF = 327,
227
    T_ENDIF = 328,
228
    T_ECHO = 329,
229
    T_DO = 330,
230
    T_WHILE = 331,
231
    T_ENDWHILE = 332,
232
    T_FOR = 333,
233
    T_ENDFOR = 334,
234
    T_FOREACH = 335,
235
    T_ENDFOREACH = 336,
236
    T_DECLARE = 337,
237
    T_ENDDECLARE = 338,
238
    T_AS = 339,
239
    T_SWITCH = 340,
240
    T_ENDSWITCH = 341,
241
    T_CASE = 342,
242
    T_DEFAULT = 343,
243
    T_MATCH = 344,
244
    T_BREAK = 345,
245
    T_CONTINUE = 346,
246
    T_GOTO = 347,
247
    T_FUNCTION = 348,
248
    T_FN = 349,
249
    T_CONST = 350,
250
    T_RETURN = 351,
251
    T_TRY = 352,
252
    T_CATCH = 353,
253
    T_FINALLY = 354,
254
    T_USE = 355,
255
    T_INSTEADOF = 356,
256
    T_GLOBAL = 357,
257
    T_STATIC = 358,
258
    T_ABSTRACT = 359,
259
    T_FINAL = 360,
260
    T_PRIVATE = 361,
261
    T_PROTECTED = 362,
262
    T_PUBLIC = 363,
263
    T_PRIVATE_SET = 364,
264
    T_PROTECTED_SET = 365,
265
    T_PUBLIC_SET = 366,
266
    T_READONLY = 367,
267
    T_VAR = 368,
268
    T_UNSET = 369,
269
    T_ISSET = 370,
270
    T_EMPTY = 371,
271
    T_HALT_COMPILER = 372,
272
    T_CLASS = 373,
273
    T_TRAIT = 374,
274
    T_INTERFACE = 375,
275
    T_ENUM = 376,
276
    T_EXTENDS = 377,
277
    T_IMPLEMENTS = 378,
278
    T_NAMESPACE = 379,
279
    T_LIST = 380,
280
    T_ARRAY = 381,
281
    T_CALLABLE = 382,
282
    T_LINE = 383,
283
    T_FILE = 384,
284
    T_DIR = 385,
285
    T_CLASS_C = 386,
286
    T_TRAIT_C = 387,
287
    T_METHOD_C = 388,
288
    T_FUNC_C = 389,
289
    T_PROPERTY_C = 390,
290
    T_NS_C = 391,
291
    T_ATTRIBUTE = 392,
292
    T_INC = 393,
293
    T_DEC = 394,
294
    T_VOID_CAST = 395,
295
    T_OBJECT_OPERATOR = 396,
296
    T_NULLSAFE_OBJECT_OPERATOR = 397,
297
    T_COMMENT = 398,
298
    T_DOC_COMMENT = 399,
299
    T_OPEN_TAG = 400,
300
    T_OPEN_TAG_WITH_ECHO = 401,
301
    T_CLOSE_TAG = 402,
302
    T_WHITESPACE = 403,
303
    T_START_HEREDOC = 404,
304
    T_END_HEREDOC = 405,
305
    T_DOLLAR_OPEN_CURLY_BRACES = 406,
306
    T_CURLY_OPEN = 407,
307
    T_PAAMAYIM_NEKUDOTAYIM = 408,
308
    T_NS_SEPARATOR = 409,
309
    T_ELLIPSIS = 410,
310
    T_BAD_CHARACTER = 411,
311
    T_ERROR = 412
312
  };
313
#endif
314
315
/* Value type.  */
316
#if ! defined ZENDSTYPE && ! defined ZENDSTYPE_IS_DECLARED
317
typedef zend_parser_stack_elem ZENDSTYPE;
318
# define ZENDSTYPE_IS_TRIVIAL 1
319
# define ZENDSTYPE_IS_DECLARED 1
320
#endif
321
322
323
324
ZEND_API int zendparse (void);
325
326
#endif /* !YY_ZEND_SRC_PHP_SRC_ZEND_ZEND_LANGUAGE_PARSER_H_INCLUDED  */
327
328
329
330
#ifdef short
331
# undef short
332
#endif
333
334
/* On compilers that do not define __PTRDIFF_MAX__ etc., make sure
335
   <limits.h> and (if available) <stdint.h> are included
336
   so that the code can choose integer types of a good width.  */
337
338
#ifndef __PTRDIFF_MAX__
339
# include <limits.h> /* INFRINGES ON USER NAME SPACE */
340
# if defined __STDC_VERSION__ && 199901 <= __STDC_VERSION__
341
#  include <stdint.h> /* INFRINGES ON USER NAME SPACE */
342
#  define YY_STDINT_H
343
# endif
344
#endif
345
346
/* Narrow types that promote to a signed type and that can represent a
347
   signed or unsigned integer of at least N bits.  In tables they can
348
   save space and decrease cache pressure.  Promoting to a signed type
349
   helps avoid bugs in integer arithmetic.  */
350
351
#ifdef __INT_LEAST8_MAX__
352
typedef __INT_LEAST8_TYPE__ yytype_int8;
353
#elif defined YY_STDINT_H
354
typedef int_least8_t yytype_int8;
355
#else
356
typedef signed char yytype_int8;
357
#endif
358
359
#ifdef __INT_LEAST16_MAX__
360
typedef __INT_LEAST16_TYPE__ yytype_int16;
361
#elif defined YY_STDINT_H
362
typedef int_least16_t yytype_int16;
363
#else
364
typedef short yytype_int16;
365
#endif
366
367
#if defined __UINT_LEAST8_MAX__ && __UINT_LEAST8_MAX__ <= __INT_MAX__
368
typedef __UINT_LEAST8_TYPE__ yytype_uint8;
369
#elif (!defined __UINT_LEAST8_MAX__ && defined YY_STDINT_H \
370
       && UINT_LEAST8_MAX <= INT_MAX)
371
typedef uint_least8_t yytype_uint8;
372
#elif !defined __UINT_LEAST8_MAX__ && UCHAR_MAX <= INT_MAX
373
typedef unsigned char yytype_uint8;
374
#else
375
typedef short yytype_uint8;
376
#endif
377
378
#if defined __UINT_LEAST16_MAX__ && __UINT_LEAST16_MAX__ <= __INT_MAX__
379
typedef __UINT_LEAST16_TYPE__ yytype_uint16;
380
#elif (!defined __UINT_LEAST16_MAX__ && defined YY_STDINT_H \
381
       && UINT_LEAST16_MAX <= INT_MAX)
382
typedef uint_least16_t yytype_uint16;
383
#elif !defined __UINT_LEAST16_MAX__ && USHRT_MAX <= INT_MAX
384
typedef unsigned short yytype_uint16;
385
#else
386
typedef int yytype_uint16;
387
#endif
388
389
#ifndef YYPTRDIFF_T
390
# if defined __PTRDIFF_TYPE__ && defined __PTRDIFF_MAX__
391
0
#  define YYPTRDIFF_T __PTRDIFF_TYPE__
392
#  define YYPTRDIFF_MAXIMUM __PTRDIFF_MAX__
393
# elif defined PTRDIFF_MAX
394
#  ifndef ptrdiff_t
395
#   include <stddef.h> /* INFRINGES ON USER NAME SPACE */
396
#  endif
397
#  define YYPTRDIFF_T ptrdiff_t
398
#  define YYPTRDIFF_MAXIMUM PTRDIFF_MAX
399
# else
400
#  define YYPTRDIFF_T long
401
#  define YYPTRDIFF_MAXIMUM LONG_MAX
402
# endif
403
#endif
404
405
#ifndef YYSIZE_T
406
# ifdef __SIZE_TYPE__
407
#  define YYSIZE_T __SIZE_TYPE__
408
# elif defined size_t
409
#  define YYSIZE_T size_t
410
# elif defined __STDC_VERSION__ && 199901 <= __STDC_VERSION__
411
#  include <stddef.h> /* INFRINGES ON USER NAME SPACE */
412
#  define YYSIZE_T size_t
413
# else
414
#  define YYSIZE_T unsigned
415
# endif
416
#endif
417
418
#define YYSIZE_MAXIMUM                                  \
419
0
  YY_CAST (YYPTRDIFF_T,                                 \
420
           (YYPTRDIFF_MAXIMUM < YY_CAST (YYSIZE_T, -1)  \
421
            ? YYPTRDIFF_MAXIMUM                         \
422
            : YY_CAST (YYSIZE_T, -1)))
423
424
0
#define YYSIZEOF(X) YY_CAST (YYPTRDIFF_T, sizeof (X))
425
426
/* Stored state numbers (used for stacks). */
427
typedef yytype_int16 yy_state_t;
428
429
/* State numbers in computations.  */
430
typedef int yy_state_fast_t;
431
432
#ifndef YY_
433
# if defined YYENABLE_NLS && YYENABLE_NLS
434
#  if ENABLE_NLS
435
#   include <libintl.h> /* INFRINGES ON USER NAME SPACE */
436
#   define YY_(Msgid) dgettext ("bison-runtime", Msgid)
437
#  endif
438
# endif
439
# ifndef YY_
440
0
#  define YY_(Msgid) Msgid
441
# endif
442
#endif
443
444
#ifndef YY_ATTRIBUTE_PURE
445
# if defined __GNUC__ && 2 < __GNUC__ + (96 <= __GNUC_MINOR__)
446
#  define YY_ATTRIBUTE_PURE __attribute__ ((__pure__))
447
# else
448
#  define YY_ATTRIBUTE_PURE
449
# endif
450
#endif
451
452
#ifndef YY_ATTRIBUTE_UNUSED
453
# if defined __GNUC__ && 2 < __GNUC__ + (7 <= __GNUC_MINOR__)
454
#  define YY_ATTRIBUTE_UNUSED __attribute__ ((__unused__))
455
# else
456
#  define YY_ATTRIBUTE_UNUSED
457
# endif
458
#endif
459
460
/* Suppress unused-variable warnings by "using" E.  */
461
#if ! defined lint || defined __GNUC__
462
0
# define YYUSE(E) ((void) (E))
463
#else
464
# define YYUSE(E) /* empty */
465
#endif
466
467
#if defined __GNUC__ && ! defined __ICC && 407 <= __GNUC__ * 100 + __GNUC_MINOR__
468
/* Suppress an incorrect diagnostic about yylval being uninitialized.  */
469
# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN                            \
470
    _Pragma ("GCC diagnostic push")                                     \
471
    _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")              \
472
    _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"")
473
# define YY_IGNORE_MAYBE_UNINITIALIZED_END      \
474
    _Pragma ("GCC diagnostic pop")
475
#else
476
0
# define YY_INITIAL_VALUE(Value) Value
477
#endif
478
#ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
479
# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
480
# define YY_IGNORE_MAYBE_UNINITIALIZED_END
481
#endif
482
#ifndef YY_INITIAL_VALUE
483
# define YY_INITIAL_VALUE(Value) /* Nothing. */
484
#endif
485
486
#if defined __cplusplus && defined __GNUC__ && ! defined __ICC && 6 <= __GNUC__
487
# define YY_IGNORE_USELESS_CAST_BEGIN                          \
488
    _Pragma ("GCC diagnostic push")                            \
489
    _Pragma ("GCC diagnostic ignored \"-Wuseless-cast\"")
490
# define YY_IGNORE_USELESS_CAST_END            \
491
    _Pragma ("GCC diagnostic pop")
492
#endif
493
#ifndef YY_IGNORE_USELESS_CAST_BEGIN
494
# define YY_IGNORE_USELESS_CAST_BEGIN
495
# define YY_IGNORE_USELESS_CAST_END
496
#endif
497
498
499
0
#define YY_ASSERT(E) ((void) (0 && (E)))
500
501
#if ! defined yyoverflow || YYERROR_VERBOSE
502
503
/* The parser invokes alloca or malloc; define the necessary symbols.  */
504
505
# ifdef YYSTACK_USE_ALLOCA
506
#  if YYSTACK_USE_ALLOCA
507
#   ifdef __GNUC__
508
#    define YYSTACK_ALLOC __builtin_alloca
509
#   elif defined __BUILTIN_VA_ARG_INCR
510
#    include <alloca.h> /* INFRINGES ON USER NAME SPACE */
511
#   elif defined _AIX
512
#    define YYSTACK_ALLOC __alloca
513
#   elif defined _MSC_VER
514
#    include <malloc.h> /* INFRINGES ON USER NAME SPACE */
515
#    define alloca _alloca
516
#   else
517
#    define YYSTACK_ALLOC alloca
518
#    if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS
519
#     include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
520
      /* Use EXIT_SUCCESS as a witness for stdlib.h.  */
521
#     ifndef EXIT_SUCCESS
522
#      define EXIT_SUCCESS 0
523
#     endif
524
#    endif
525
#   endif
526
#  endif
527
# endif
528
529
# ifdef YYSTACK_ALLOC
530
   /* Pacify GCC's 'empty if-body' warning.  */
531
#  define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)
532
#  ifndef YYSTACK_ALLOC_MAXIMUM
533
    /* The OS might guarantee only one guard page at the bottom of the stack,
534
       and a page size can be as small as 4096 bytes.  So we cannot safely
535
       invoke alloca (N) if N exceeds 4096.  Use a slightly smaller number
536
       to allow for a few compiler-allocated temporary stack slots.  */
537
#   define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
538
#  endif
539
# else
540
#  define YYSTACK_ALLOC YYMALLOC
541
0
#  define YYSTACK_FREE YYFREE
542
#  ifndef YYSTACK_ALLOC_MAXIMUM
543
0
#   define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
544
#  endif
545
#  if (defined __cplusplus && ! defined EXIT_SUCCESS \
546
       && ! ((defined YYMALLOC || defined malloc) \
547
             && (defined YYFREE || defined free)))
548
#   include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
549
#   ifndef EXIT_SUCCESS
550
#    define EXIT_SUCCESS 0
551
#   endif
552
#  endif
553
#  ifndef YYMALLOC
554
#   define YYMALLOC malloc
555
#   if ! defined malloc && ! defined EXIT_SUCCESS
556
void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
557
#   endif
558
#  endif
559
#  ifndef YYFREE
560
0
#   define YYFREE free
561
#   if ! defined free && ! defined EXIT_SUCCESS
562
void free (void *); /* INFRINGES ON USER NAME SPACE */
563
#   endif
564
#  endif
565
# endif
566
#endif /* ! defined yyoverflow || YYERROR_VERBOSE */
567
568
569
#if (! defined yyoverflow \
570
     && (! defined __cplusplus \
571
         || (defined ZENDSTYPE_IS_TRIVIAL && ZENDSTYPE_IS_TRIVIAL)))
572
573
/* A type that is properly aligned for any stack member.  */
574
union yyalloc
575
{
576
  yy_state_t yyss_alloc;
577
  YYSTYPE yyvs_alloc;
578
};
579
580
/* The size of the maximum gap between one aligned stack and the next.  */
581
0
# define YYSTACK_GAP_MAXIMUM (YYSIZEOF (union yyalloc) - 1)
582
583
/* The size of an array large to enough to hold all stacks, each with
584
   N elements.  */
585
# define YYSTACK_BYTES(N) \
586
     ((N) * (YYSIZEOF (yy_state_t) + YYSIZEOF (YYSTYPE)) \
587
      + YYSTACK_GAP_MAXIMUM)
588
589
# define YYCOPY_NEEDED 1
590
591
/* Relocate STACK from its old location to the new one.  The
592
   local variables YYSIZE and YYSTACKSIZE give the old and new number of
593
   elements in the stack, and YYPTR gives the new location of the
594
   stack.  Advance YYPTR to a properly aligned location for the next
595
   stack.  */
596
# define YYSTACK_RELOCATE(Stack_alloc, Stack)                           \
597
0
    do                                                                  \
598
0
      {                                                                 \
599
0
        YYPTRDIFF_T yynewbytes;                                         \
600
0
        YYCOPY (&yyptr->Stack_alloc, Stack, yysize);                    \
601
0
        Stack = &yyptr->Stack_alloc;                                    \
602
0
        yynewbytes = yystacksize * YYSIZEOF (*Stack) + YYSTACK_GAP_MAXIMUM; \
603
0
        yyptr += yynewbytes / YYSIZEOF (*yyptr);                        \
604
0
      }                                                                 \
605
0
    while (0)
606
607
#endif
608
609
#if defined YYCOPY_NEEDED && YYCOPY_NEEDED
610
/* Copy COUNT objects from SRC to DST.  The source and destination do
611
   not overlap.  */
612
# ifndef YYCOPY
613
#  if defined __GNUC__ && 1 < __GNUC__
614
#   define YYCOPY(Dst, Src, Count) \
615
0
      __builtin_memcpy (Dst, Src, YY_CAST (YYSIZE_T, (Count)) * sizeof (*(Src)))
616
#  else
617
#   define YYCOPY(Dst, Src, Count)              \
618
      do                                        \
619
        {                                       \
620
          YYPTRDIFF_T yyi;                      \
621
          for (yyi = 0; yyi < (Count); yyi++)   \
622
            (Dst)[yyi] = (Src)[yyi];            \
623
        }                                       \
624
      while (0)
625
#  endif
626
# endif
627
#endif /* !YYCOPY_NEEDED */
628
629
/* YYFINAL -- State number of the termination state.  */
630
0
#define YYFINAL  3
631
/* YYLAST -- Last index in YYTABLE.  */
632
0
#define YYLAST   10485
633
634
/* YYNTOKENS -- Number of terminals.  */
635
0
#define YYNTOKENS  185
636
/* YYNNTS -- Number of nonterminals.  */
637
#define YYNNTS  189
638
/* YYNRULES -- Number of rules.  */
639
#define YYNRULES  636
640
/* YYNSTATES -- Number of states.  */
641
#define YYNSTATES  1203
642
643
0
#define YYUNDEFTOK  2
644
0
#define YYMAXUTOK   412
645
646
647
/* YYTRANSLATE(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM
648
   as returned by yylex, with out-of-bounds checking.  */
649
#define YYTRANSLATE(YYX)                                                \
650
0
  (0 <= (YYX) && (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
651
652
/* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM
653
   as returned by yylex.  */
654
static const yytype_uint8 yytranslate[] =
655
{
656
       0,     2,     2,     2,     2,     2,     2,     2,     2,     2,
657
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
658
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
659
       2,     2,     2,    57,   183,     2,   184,    56,     2,     2,
660
     177,   178,    54,    52,   174,    53,    49,    55,     2,     2,
661
       2,     2,     2,     2,     2,     2,     2,     2,    31,   176,
662
      44,    16,    46,    30,    67,     2,     2,     2,     2,     2,
663
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
664
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
665
       2,   181,     2,   175,    36,     2,   182,     2,     2,     2,
666
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
667
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
668
       2,     2,     2,   179,    35,   180,    59,     2,     2,     2,
669
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
670
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
671
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
672
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
673
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
674
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
675
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
676
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
677
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
678
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
679
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
680
       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
681
       2,     2,     2,     2,     2,     2,     1,     2,     3,     4,
682
       5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
683
      15,    17,    18,    19,    20,    21,    22,    23,    24,    25,
684
      26,    27,    28,    29,    32,    33,    34,    37,    38,    39,
685
      40,    41,    42,    43,    45,    47,    48,    50,    51,    58,
686
      60,    61,    62,    63,    64,    65,    66,    68,    69,    70,
687
      71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
688
      81,    82,    83,    84,    85,    86,    87,    88,    89,    90,
689
      91,    92,    93,    94,    95,    96,    97,    98,    99,   100,
690
     101,   102,   103,   104,   105,   106,   107,   108,   109,   110,
691
     111,   112,   113,   114,   115,   116,   117,   118,   119,   120,
692
     121,   122,   123,   124,   125,   126,   127,   128,   129,   130,
693
     131,   132,   133,   134,   135,   136,   137,   138,   139,   140,
694
     141,   142,   143,   144,   145,   146,   147,   148,   149,   150,
695
     151,   152,   153,   154,   155,   156,   157,   158,   159,   160,
696
     161,   162,   163,   164,   165,   166,   167,   168,   169,   170,
697
     171,   172,   173
698
};
699
700
#if ZENDDEBUG
701
  /* YYRLINE[YYN] -- Source line where rule number YYN was defined.  */
702
static const yytype_int16 yyrline[] =
703
{
704
       0,   304,   304,   308,   308,   308,   308,   308,   308,   308,
705
     308,   309,   309,   309,   309,   309,   309,   309,   309,   309,
706
     309,   309,   309,   310,   310,   310,   310,   310,   310,   310,
707
     310,   310,   310,   311,   311,   311,   311,   311,   311,   311,
708
     311,   311,   311,   312,   312,   312,   312,   312,   312,   312,
709
     312,   312,   312,   312,   313,   313,   313,   313,   313,   313,
710
     313,   313,   314,   314,   314,   314,   314,   314,   314,   314,
711
     314,   314,   314,   315,   319,   320,   320,   320,   320,   320,
712
     320,   320,   324,   325,   329,   330,   338,   339,   344,   345,
713
     350,   351,   356,   357,   361,   362,   363,   364,   368,   370,
714
     375,   377,   382,   386,   387,   391,   392,   393,   394,   395,
715
     399,   400,   404,   405,   406,   407,   411,   414,   414,   417,
716
     417,   420,   421,   422,   423,   427,   428,   432,   437,   442,
717
     443,   447,   449,   454,   456,   461,   463,   468,   469,   473,
718
     475,   480,   482,   487,   488,   492,   494,   500,   501,   502,
719
     503,   510,   511,   512,   513,   515,   517,   519,   521,   522,
720
     523,   524,   525,   526,   527,   528,   529,   530,   532,   536,
721
     535,   539,   540,   542,   543,   544,   548,   550,   555,   556,
722
     560,   561,   565,   566,   570,   571,   575,   579,   580,   588,
723
     595,   596,   600,   601,   605,   605,   608,   608,   614,   615,
724
     620,   622,   627,   628,   632,   633,   634,   638,   638,   644,
725
     644,   650,   650,   656,   657,   661,   666,   667,   671,   672,
726
     676,   677,   681,   682,   686,   687,   688,   689,   693,   694,
727
     698,   699,   703,   704,   708,   709,   710,   711,   715,   716,
728
     718,   720,   722,   728,   733,   734,   738,   739,   743,   745,
729
     750,   751,   756,   757,   762,   765,   771,   772,   777,   780,
730
     786,   787,   793,   794,   799,   801,   806,   807,   811,   813,
731
     819,   823,   830,   831,   835,   836,   837,   838,   842,   843,
732
     847,   848,   852,   854,   859,   860,   867,   868,   869,   870,
733
     874,   875,   876,   880,   881,   885,   887,   892,   894,   899,
734
     900,   904,   905,   909,   911,   925,   926,   927,   931,   933,
735
     935,   940,   942,   944,   946,   948,   953,   954,   958,   959,
736
     963,   969,   970,   974,   975,   979,   981,   987,   990,   993,
737
     996,   999,  1003,  1007,  1008,  1009,  1014,  1015,  1019,  1020,
738
    1021,  1025,  1027,  1032,  1033,  1037,  1042,  1044,  1048,  1053,
739
    1061,  1063,  1067,  1072,  1073,  1077,  1080,  1085,  1087,  1094,
740
    1096,  1103,  1105,  1110,  1111,  1112,  1113,  1114,  1115,  1116,
741
    1117,  1118,  1119,  1123,  1124,  1128,  1130,  1135,  1137,  1142,
742
    1143,  1144,  1150,  1151,  1155,  1156,  1164,  1163,  1174,  1175,
743
    1176,  1181,  1182,  1186,  1187,  1191,  1192,  1200,  1204,  1205,
744
    1208,  1212,  1213,  1214,  1218,  1219,  1223,  1224,  1225,  1226,
745
    1230,  1230,  1240,  1242,  1244,  1249,  1254,  1256,  1258,  1260,
746
    1262,  1264,  1269,  1274,  1276,  1278,  1280,  1282,  1284,  1286,
747
    1288,  1290,  1292,  1294,  1296,  1298,  1300,  1301,  1302,  1303,
748
    1304,  1306,  1308,  1310,  1312,  1314,  1315,  1316,  1317,  1318,
749
    1319,  1320,  1321,  1322,  1323,  1324,  1325,  1326,  1327,  1328,
750
    1329,  1330,  1331,  1333,  1335,  1337,  1339,  1341,  1343,  1345,
751
    1347,  1349,  1351,  1353,  1358,  1359,  1360,  1362,  1364,  1366,
752
    1367,  1368,  1369,  1370,  1371,  1372,  1373,  1374,  1379,  1380,
753
    1381,  1382,  1383,  1384,  1385,  1386,  1387,  1388,  1389,  1390,
754
    1391,  1393,  1398,  1403,  1411,  1415,  1419,  1423,  1427,  1431,
755
    1432,  1436,  1437,  1441,  1442,  1446,  1447,  1451,  1453,  1458,
756
    1460,  1462,  1462,  1469,  1472,  1476,  1477,  1478,  1482,  1484,
757
    1485,  1490,  1491,  1496,  1497,  1498,  1499,  1503,  1504,  1505,
758
    1506,  1508,  1509,  1510,  1511,  1515,  1516,  1517,  1518,  1519,
759
    1520,  1521,  1522,  1523,  1524,  1528,  1530,  1532,  1534,  1539,
760
    1540,  1544,  1548,  1549,  1553,  1554,  1555,  1559,  1560,  1564,
761
    1565,  1566,  1567,  1571,  1573,  1575,  1577,  1579,  1583,  1585,
762
    1587,  1589,  1594,  1595,  1596,  1600,  1602,  1607,  1609,  1611,
763
    1613,  1615,  1617,  1622,  1623,  1624,  1628,  1629,  1630,  1634,
764
    1639,  1640,  1644,  1646,  1651,  1653,  1655,  1657,  1659,  1661,
765
    1664,  1670,  1672,  1674,  1676,  1681,  1683,  1686,  1689,  1692,
766
    1694,  1696,  1699,  1703,  1704,  1705,  1706,  1711,  1712,  1713,
767
    1715,  1717,  1719,  1721,  1726,  1727,  1732
768
};
769
#endif
770
771
#if ZENDDEBUG || YYERROR_VERBOSE || 1
772
/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
773
   First, the terminals, then, starting at YYNTOKENS, nonterminals.  */
774
static const char *const yytname[] =
775
{
776
  "\"end of file\"", "error", "$undefined", "\"'throw'\"",
777
  "PREC_ARROW_FUNCTION", "\"'include'\"", "\"'include_once'\"",
778
  "\"'require'\"", "\"'require_once'\"", "\"'or'\"", "\"'xor'\"",
779
  "\"'and'\"", "\"'print'\"", "\"'yield'\"", "\"'=>'\"",
780
  "\"'yield from'\"", "'='", "\"'+='\"", "\"'-='\"", "\"'*='\"",
781
  "\"'/='\"", "\"'.='\"", "\"'%='\"", "\"'&='\"", "\"'|='\"", "\"'^='\"",
782
  "\"'<<='\"", "\"'>>='\"", "\"'**='\"", "\"'?""?='\"", "'?'", "':'",
783
  "\"'?""?'\"", "\"'||'\"", "\"'&&'\"", "'|'", "'^'", "\"amp\"", "\"'&'\"",
784
  "\"'=='\"", "\"'!='\"", "\"'==='\"", "\"'!=='\"", "\"'<=>'\"", "'<'",
785
  "\"'<='\"", "'>'", "\"'>='\"", "\"'|>'\"", "'.'", "\"'<<'\"", "\"'>>'\"",
786
  "'+'", "'-'", "'*'", "'/'", "'%'", "'!'", "\"'instanceof'\"", "'~'",
787
  "\"'(int)'\"", "\"'(float)'\"", "\"'(string)'\"", "\"'(array)'\"",
788
  "\"'(object)'\"", "\"'(bool)'\"", "\"'(unset)'\"", "'@'", "\"'**'\"",
789
  "\"'clone'\"", "T_NOELSE", "\"'elseif'\"", "\"'else'\"", "\"integer\"",
790
  "\"floating-point number\"", "\"identifier\"",
791
  "\"fully qualified name\"", "\"namespace-relative name\"",
792
  "\"namespaced name\"", "\"variable\"", "T_INLINE_HTML",
793
  "\"string content\"", "\"quoted string\"", "\"variable name\"",
794
  "\"number\"", "\"'eval'\"", "\"'new'\"", "\"'exit'\"", "\"'if'\"",
795
  "\"'endif'\"", "\"'echo'\"", "\"'do'\"", "\"'while'\"", "\"'endwhile'\"",
796
  "\"'for'\"", "\"'endfor'\"", "\"'foreach'\"", "\"'endforeach'\"",
797
  "\"'declare'\"", "\"'enddeclare'\"", "\"'as'\"", "\"'switch'\"",
798
  "\"'endswitch'\"", "\"'case'\"", "\"'default'\"", "\"'match'\"",
799
  "\"'break'\"", "\"'continue'\"", "\"'goto'\"", "\"'function'\"",
800
  "\"'fn'\"", "\"'const'\"", "\"'return'\"", "\"'try'\"", "\"'catch'\"",
801
  "\"'finally'\"", "\"'use'\"", "\"'insteadof'\"", "\"'global'\"",
802
  "\"'static'\"", "\"'abstract'\"", "\"'final'\"", "\"'private'\"",
803
  "\"'protected'\"", "\"'public'\"", "\"'private(set)'\"",
804
  "\"'protected(set)'\"", "\"'public(set)'\"", "\"'readonly'\"",
805
  "\"'var'\"", "\"'unset'\"", "\"'isset'\"", "\"'empty'\"",
806
  "\"'__halt_compiler'\"", "\"'class'\"", "\"'trait'\"", "\"'interface'\"",
807
  "\"'enum'\"", "\"'extends'\"", "\"'implements'\"", "\"'namespace'\"",
808
  "\"'list'\"", "\"'array'\"", "\"'callable'\"", "\"'__LINE__'\"",
809
  "\"'__FILE__'\"", "\"'__DIR__'\"", "\"'__CLASS__'\"", "\"'__TRAIT__'\"",
810
  "\"'__METHOD__'\"", "\"'__FUNCTION__'\"", "\"'__PROPERTY__'\"",
811
  "\"'__NAMESPACE__'\"", "\"'#['\"", "\"'++'\"", "\"'--'\"",
812
  "\"'(void)'\"", "\"'->'\"", "\"'?->'\"", "\"comment\"",
813
  "\"doc comment\"", "\"open tag\"", "\"'<?='\"", "\"'?>'\"",
814
  "\"whitespace\"", "\"heredoc start\"", "\"heredoc end\"", "\"'${'\"",
815
  "\"'{$'\"", "\"'::'\"", "\"'\\\\'\"", "\"'...'\"",
816
  "\"invalid character\"", "T_ERROR", "','", "']'", "';'", "'('", "')'",
817
  "'{'", "'}'", "'['", "'`'", "'\"'", "'$'", "$accept", "start",
818
  "reserved_non_modifiers", "semi_reserved", "ampersand", "identifier",
819
  "top_statement_list", "namespace_declaration_name", "namespace_name",
820
  "legacy_namespace_name", "name", "attribute_decl", "attribute_group",
821
  "attribute", "attributes", "attributed_statement",
822
  "attributed_top_statement", "top_statement", "$@1", "$@2", "use_type",
823
  "group_use_declaration", "mixed_group_use_declaration", "possible_comma",
824
  "inline_use_declarations", "unprefixed_use_declarations",
825
  "use_declarations", "inline_use_declaration",
826
  "unprefixed_use_declaration", "use_declaration", "const_list",
827
  "inner_statement_list", "inner_statement", "statement", "$@3",
828
  "catch_list", "catch_name_list", "optional_variable",
829
  "finally_statement", "unset_variables", "unset_variable",
830
  "function_name", "function_declaration_statement", "is_reference",
831
  "is_variadic", "class_declaration_statement", "@4", "@5",
832
  "class_modifiers", "anonymous_class_modifiers",
833
  "anonymous_class_modifiers_optional", "class_modifier",
834
  "trait_declaration_statement", "@6", "interface_declaration_statement",
835
  "@7", "enum_declaration_statement", "@8", "enum_backing_type",
836
  "enum_case", "enum_case_expr", "extends_from", "interface_extends_list",
837
  "implements_list", "foreach_variable", "for_statement",
838
  "foreach_statement", "declare_statement", "switch_case_list",
839
  "case_list", "match", "match_arm_list", "non_empty_match_arm_list",
840
  "match_arm", "match_arm_cond_list", "while_statement",
841
  "if_stmt_without_else", "if_stmt", "alt_if_stmt_without_else",
842
  "alt_if_stmt", "parameter_list", "non_empty_parameter_list",
843
  "attributed_parameter", "optional_cpp_modifiers", "parameter",
844
  "optional_type_without_static", "type_expr", "type",
845
  "union_type_element", "union_type", "intersection_type",
846
  "type_expr_without_static", "type_without_static",
847
  "union_type_without_static_element", "union_type_without_static",
848
  "intersection_type_without_static", "return_type", "argument_list",
849
  "non_empty_argument_list", "clone_argument_list",
850
  "non_empty_clone_argument_list", "argument_no_expr", "argument",
851
  "global_var_list", "global_var", "static_var_list", "static_var",
852
  "class_statement_list", "attributed_class_statement", "class_statement",
853
  "class_name_list", "trait_adaptations", "trait_adaptation_list",
854
  "trait_adaptation", "trait_precedence", "trait_alias",
855
  "trait_method_reference", "absolute_trait_method_reference",
856
  "method_body", "property_modifiers", "method_modifiers",
857
  "class_const_modifiers", "non_empty_member_modifiers", "member_modifier",
858
  "property_list", "property", "hooked_property", "property_hook_list",
859
  "optional_property_hook_list", "property_hook_modifiers",
860
  "property_hook", "@9", "property_hook_body", "optional_parameter_list",
861
  "class_const_list", "class_const_decl", "const_decl", "echo_expr_list",
862
  "echo_expr", "for_cond_exprs", "for_exprs", "non_empty_for_exprs",
863
  "anonymous_class", "@10", "new_dereferenceable",
864
  "new_non_dereferenceable", "expr", "inline_function", "fn", "function",
865
  "backup_doc_comment", "backup_fn_flags", "backup_lex_pos", "returns_ref",
866
  "lexical_vars", "lexical_var_list", "lexical_var", "function_call",
867
  "@11", "class_name", "class_name_reference", "backticks_expr",
868
  "ctor_arguments", "dereferenceable_scalar", "scalar", "constant",
869
  "class_constant", "optional_expr", "variable_class_name",
870
  "fully_dereferenceable", "array_object_dereferenceable", "callable_expr",
871
  "callable_variable", "variable", "simple_variable", "static_member",
872
  "new_variable", "member_name", "property_name", "array_pair_list",
873
  "possible_array_pair", "non_empty_array_pair_list", "array_pair",
874
  "encaps_list", "encaps_var", "encaps_var_offset",
875
  "internal_functions_in_yacc", "isset_variables", "isset_variable", YY_NULLPTR
876
};
877
#endif
878
879
# ifdef YYPRINT
880
/* YYTOKNUM[NUM] -- (External) token number corresponding to the
881
   (internal) symbol number NUM (which must be that of a token).  */
882
static const yytype_int16 yytoknum[] =
883
{
884
       0,   256,   257,   258,   259,   260,   261,   262,   263,   264,
885
     265,   266,   267,   268,   269,   270,    61,   271,   272,   273,
886
     274,   275,   276,   277,   278,   279,   280,   281,   282,   283,
887
      63,    58,   284,   285,   286,   124,    94,   287,   288,   289,
888
     290,   291,   292,   293,    60,   294,    62,   295,   296,    46,
889
     297,   298,    43,    45,    42,    47,    37,    33,   299,   126,
890
     300,   301,   302,   303,   304,   305,   306,    64,   307,   308,
891
     309,   310,   311,   312,   313,   314,   315,   316,   317,   318,
892
     319,   320,   321,   322,   323,   324,   325,   326,   327,   328,
893
     329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
894
     339,   340,   341,   342,   343,   344,   345,   346,   347,   348,
895
     349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
896
     359,   360,   361,   362,   363,   364,   365,   366,   367,   368,
897
     369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
898
     379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
899
     389,   390,   391,   392,   393,   394,   395,   396,   397,   398,
900
     399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
901
     409,   410,   411,   412,    44,    93,    59,    40,    41,   123,
902
     125,    91,    96,    34,    36
903
};
904
# endif
905
906
0
#define YYPACT_NINF (-1085)
907
908
#define yypact_value_is_default(Yyn) \
909
0
  ((Yyn) == YYPACT_NINF)
910
911
0
#define YYTABLE_NINF (-608)
912
913
#define yytable_value_is_error(Yyn) \
914
0
  ((Yyn) == YYTABLE_NINF)
915
916
  /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
917
     STATE-NUM.  */
918
static const yytype_int16 yypact[] =
919
{
920
   -1085,    60,  2287, -1085,  7369,  7369,  7369,  7369,  7369,  7369,
921
    7369,  7369,  7369,  7369,  7369,  7369,  7369,  7369,  7369,  7369,
922
    7369,  7369,  7369,  7369,  7523, -1085, -1085,    35, -1085, -1085,
923
   -1085, -1085, -1085, -1085,  -106,   275,   -90,   -76,  7369,  5674,
924
     -24,    27,    38,    42,    84,   108,  7369,  7369,    22, -1085,
925
   -1085,    92,  7369,   111,   454,   -42,   -28, -1085, -1085,   -90,
926
     149,   190,   206,   215, -1085, -1085, -1085, -1085,  9623,   222,
927
     229, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085,
928
   -1085, 10001, 10001,  7369,   139, -1085,  7369, -1085,  5828,   240,
929
     251,   -48,   127, -1085,   603, -1085, -1085, -1085, -1085, -1085,
930
   -1085,   221, -1085, -1085, -1085, -1085, -1085,   180, -1085,   333,
931
   -1085,   274, -1085,  9133, -1085,   587,   587, -1085,   147,   410,
932
   -1085,   113,   379,   243,   248,   358, -1085,   277,  1843, -1085,
933
   -1085, -1085, -1085,   573,   -90,   268, 10325,   587, 10325, 10325,
934
   10325, 10325,  4598, 10417,  4598,   376,   376,   140,   376,   376,
935
     376,   376,   376,   376,   376,   376,   376,  1279, -1085, -1085,
936
   -1085,  7369, -1085, -1085,  7369, -1085,   431,   490,   323, -1085,
937
   -1085,   320,   -90, -1085,   439,  1461, -1085, -1085,  7369,   -96,
938
   -1085, 10325,   400,  7369,  6290,  7369,    92,  7369,  7369, 10325,
939
     324,   341,   362,   518,    57, -1085,   365, -1085, -1085, -1085,
940
   -1085, -1085, -1085, -1085,   -38,   310,   370,   259, -1085,   352,
941
   -1085, -1085,   545,   368, -1085, -1085, -1085, 10001,  7369,  7369,
942
     386,   505,   511,   514,   526, -1085, -1085, -1085, -1085, -1085,
943
   -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085,
944
   -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085,
945
   -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085,
946
   -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085,
947
   -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085,
948
   -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085,
949
   -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085,
950
   -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085,   417,   428,
951
    5828,  5828,   296,   275,  7369,  5828,   427,   465, -1085, -1085,
952
     476,   476,  9183,   457,   179, -1085,  6444, 10001,   214, -1085,
953
    8483,  2441, -1085, -1085,   492,  7369, 10001, 10225,   441, -1085,
954
     475, -1085,   196,   449,   281,   196,    -4,  7369, -1085, -1085,
955
     573, -1085, -1085, -1085, -1085, -1085,   512,  5674,   516,   634,
956
     515,  7369,  7369,  7369,  6598,  7369,  7369,  7369,  7369,  7369,
957
    7369,  7369,  7369,  7369,  7369,  7369,  7369,  7369,  7369,  7369,
958
    7369,  7369,  7369,  7369,  7369,  7369,  7369,  7369,  7369,  7369,
959
     150,  7369, -1085, -1085, -1085,    20,  4604,  4754,    51,    51,
960
    7369,   -90,  5982,  7369,  7369,  7369,  7369,  7369,  7369,  7369,
961
    7369,  7369,  7369,  7369,  7369,  7369, -1085, -1085, -1085,  7369,
962
    7369,  7369,  7369,  7369,  7369,  7369,  6752, -1085,  7523,    24,
963
    -106,   551,    17,   108,   678,   680,   -36,   -90,   190,   206,
964
     222,   229,   685,   686,   688,   695,   696,   698,   699,   701,
965
     710,  7369, -1085,   720,   580, -1085,  8433,  8533,  8583, -1085,
966
   -1085, -1085,   -42, -1085,    51,    51,   -42,  7369, -1085,   583,
967
   -1085, -1085, 10325,  8633,  7369, -1085,   578,  8683,  7369,   582,
968
     590, 10325, 10156,   102,  8733,  8783, -1085, -1085, -1085,  7369,
969
      92, -1085, -1085,  2595,   690,   589,   -35,   594,   445, -1085,
970
     310, -1085,   -42, -1085,  7369,   687, -1085,   600, -1085,   249,
971
   10325,   601, -1085,  8833,   602,   638, -1085,   644,   754, -1085,
972
     607, -1085,   610,   611, -1085,   616,   -90,   -90,  8883,   619,
973
   -1085,   717,   721,   286, -1085, -1085,   507,  8131,   620, -1085,
974
   -1085, -1085,   425,   637, -1085,   979, -1085, -1085, -1085,  5828,
975
   10325,   267,  6136,   781,  5828, -1085, -1085,  8181, -1085,   740,
976
    7369, -1085,  7369, -1085, -1085, 10374,  9616,  4598,  7369, 10275,
977
    7676,  7831,  7981,  4753,  9750,  9898,  9898, 10049, 10049, 10049,
978
   10049, 10049,  1630,  1630,  1630,  1630,   753,  1121,   802,   802,
979
     692,   692,   140,   140,   140, -1085,   376,   639, -1085, -1085,
980
   -1085,   640,  7369,   642,   646,   -90,  7369,   642,   646,   -90,
981
   -1085,  7369, -1085,   -90,   -90,   649, -1085, 10001,  4598,  4598,
982
    4598,  4598,  4598,  4598,  4598,  4598,  4598,  4598,  4598,  4598,
983
    4598,  4598,  4598, 10325,  6907,  1825,   647,  1643, -1085, -1085,
984
     -90, -1085, -1085, -1085, -1085,   651,  1825,   650,  4904, -1085,
985
    7369,  5058, 10325,  6290,  7061,  9370, -1085,    -8,   648, 10325,
986
   -1085, -1085, -1085,   315,   652, -1085, -1085,   730, -1085, -1085,
987
   10325, -1085, 10001,   654,  7369,   655, -1085, -1085,   296,   697,
988
     659,   296, -1085,   146,   697, -1085,  1979,   826, -1085,   296,
989
     669, -1085,   668, -1085, -1085, -1085,   762, -1085, -1085, -1085,
990
     672, -1085,  7369, -1085, -1085,   670, -1085,   673,   675, 10001,
991
   10325,  7369, -1085, -1085,   638,  8933,  8983,  2749,  7676,  7369,
992
    1894,   691,  1894,  8231, -1085,  8282, -1085,  8332, -1085, -1085,
993
   -1085,   476, -1085, 10325, -1085, -1085, -1085, -1085,   638, -1085,
994
   -1085, -1085, -1085, -1085,  9033, -1085, -1085, -1085,   702,   689,
995
    9333,  7369, 10325,   700,  5828, 10001,     8,    28,  5212,   703,
996
     704, -1085,  7215, -1085,   581,   774,   224,   707, -1085, -1085,
997
     224, -1085,   708, -1085, -1085, -1085,   296, -1085, -1085,   711,
998
   -1085,   683,   480, -1085, -1085, -1085,   480, -1085, -1085,   154,
999
     840,   851,   852, -1085, -1085,  2133, -1085,  7369, -1085, -1085,
1000
   -1085, -1085,  9283,   714,   826,  5828,   502,  4598,   697,  5674,
1001
     860,   716,  7676, -1085, -1085, -1085, -1085, -1085, -1085, -1085,
1002
   -1085, -1085, -1085,  1540,   719,   724, -1085,   166, -1085,  1722,
1003
   -1085,  1894,   722,   725,   725, -1085,   697,  4443,   727,  2903,
1004
    6290,  7061, 10325,  5828,   726,    29,  9370,  5366, -1085, -1085,
1005
   -1085, -1085,   472, -1085,    65,   733,   729,   736, -1085,   737,
1006
   10325,   735,   734, -1085,   839, -1085,   315,   739,   741, -1085,
1007
   -1085,   711,   742,  1130,   296, -1085, -1085,   879,    19,   480,
1008
      15,    15,   480,   745, -1085,  4598,   746, -1085,   747, -1085,
1009
   -1085, -1085, -1085, -1085,   889,  2048, -1085,   494,   494,   890,
1010
   -1085,   615,   894,   895,   896, -1085,   758,   816, -1085, -1085,
1011
     761,   760,  9383,   763,    31,   765, -1085, -1085, -1085,  3057,
1012
     537,   768,  7369,    41,    74, -1085, -1085,   932, -1085,  7215,
1013
   -1085,  7369,   933,   296, -1085, -1085, -1085, -1085,   224,   769,
1014
   -1085, -1085,   296, -1085, -1085,  1376, -1085, -1085, -1085,   166,
1015
     841,   837,  2209, -1085,  2356, -1085, -1085, -1085, -1085, -1085,
1016
   -1085, -1085, -1085,   826,   776,  4443,   146,   939, -1085, -1085,
1017
     919,    21, -1085,   786,   494,   171,   171,   494,   889,   787,
1018
     889,   779, -1085,  5520, -1085,  5366,  3211,   791,   792, -1085,
1019
    9083, -1085, -1085, -1085,  7369, -1085, 10325,  7369,    48, -1085,
1020
    3365, -1085, -1085,  2818,  9773,   157, -1085,   892,   587,  7985,
1021
   -1085,  2972, -1085, -1085, -1085, -1085, -1085,   893, -1085, -1085,
1022
   -1085, -1085, -1085, -1085,   300, -1085, -1085, -1085, -1085, -1085,
1023
   -1085,   797, -1085, -1085, -1085, -1085,  4443,  4443, 10325, 10325,
1024
     296, -1085,   798, -1085, -1085,   961, -1085,  7684, -1085,   962,
1025
     482, -1085, -1085,  9773,   965,   966,   969,   970,   971,  9923,
1026
     488, -1085, -1085,  3126, -1085, -1085,   809, -1085,   910,   817,
1027
   -1085,   813,  3280,  3519, -1085,  4443,  4443, -1085,   818,  7369,
1028
     819,   824, -1085, -1085,  7834, -1085,   823,   827,   900,   885,
1029
     838,  7369,   831,   936, -1085, -1085,  7369,  7369,   965,   499,
1030
    9923, -1085, -1085,  7369,     1, -1085, -1085,   300,   833, -1085,
1031
   -1085,   836, -1085, 10325, -1085, -1085, -1085, -1085, -1085,  9473,
1032
     296,  9773, 10325, -1085,  1000, -1085,   842, 10325, 10325, -1085,
1033
   -1085, 10325,  7369, -1085, -1085,  3673, -1085, -1085,  3827, -1085,
1034
    3981, -1085, -1085,  9773,   711, -1085,   844,  1095,  7369, -1085,
1035
    1894, -1085, -1085, -1085,  8382,  1142, -1085, -1085, -1085, -1085,
1036
   -1085, -1085,  1540,  1722,   587, -1085, 10325,   846, -1085, -1085,
1037
   -1085, -1085,  1180, -1085,   942, -1085,   889, -1085, -1085, -1085,
1038
   -1085,   -80,   843, -1085, -1085, -1085,  1894, -1085,  4135, -1085,
1039
     849,    14, -1085, -1085,  7369, -1085, -1085, -1085,  9233,  4289,
1040
   -1085, -1085, -1085
1041
};
1042
1043
  /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
1044
     Performed when YYTABLE does not specify something else to do.  Zero
1045
     means the default is an error.  */
1046
static const yytype_int16 yydefact[] =
1047
{
1048
      87,     0,     2,     1,     0,     0,     0,     0,     0,     0,
1049
     492,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1050
       0,     0,     0,     0,     0,   537,   538,    94,    96,    97,
1051
      95,   582,   164,   535,     0,   202,   531,     0,     0,     0,
1052
       0,     0,     0,     0,     0,     0,   559,   559,     0,   505,
1053
     504,     0,   559,     0,     0,     0,   523,   204,   205,   206,
1054
       0,     0,     0,     0,   196,   207,   209,   211,   119,     0,
1055
       0,   546,   547,   548,   554,   549,   550,   551,   552,   553,
1056
     506,     0,     0,     0,     0,   171,     0,   146,   600,   528,
1057
       0,     0,   545,   103,     0,   110,   113,    86,   112,   105,
1058
     106,     0,   198,   107,   108,   109,   501,   256,   152,     0,
1059
     153,   474,   475,     0,   497,   509,   509,   577,     0,   542,
1060
     489,   543,   544,     0,   567,     0,   521,   578,   416,   573,
1061
     579,   479,    94,   523,     0,     0,   496,   509,   629,   630,
1062
     632,   633,   491,   493,   495,   458,   459,   460,   461,   480,
1063
     481,   482,   483,   484,   485,   486,   488,     0,   421,   422,
1064
     174,     0,   523,   206,     0,   524,   202,   203,     0,   200,
1065
     413,   525,   415,   587,   526,     0,   532,   487,     0,     0,
1066
     399,   400,     0,     0,   404,     0,     0,     0,     0,   560,
1067
       0,     0,     0,     0,     0,   144,     0,   146,    90,    93,
1068
      91,   125,   126,    92,   141,     0,     0,     0,   136,     0,
1069
     319,   320,   323,     0,   322,   499,   518,     0,     0,     0,
1070
       0,     0,     0,     0,     0,    33,     3,     4,     6,     7,
1071
       8,     9,    10,    46,    47,    11,    13,    16,    17,    84,
1072
      89,     5,    12,    14,    15,    18,    19,    20,    21,    22,
1073
      23,    24,    25,    26,    27,    28,    29,    49,    50,    51,
1074
      52,    71,    53,    41,    42,    43,    70,    44,    45,    30,
1075
      31,    32,    34,    35,    36,    75,    76,    77,    78,    79,
1076
      80,    81,    37,    38,    39,    40,    61,    59,    60,    72,
1077
      56,    57,    58,    48,    54,    55,    66,    67,    68,    62,
1078
      63,    65,    64,    73,    69,    74,    85,    88,   117,     0,
1079
     600,   600,     0,   202,     0,   600,   566,   564,   568,   565,
1080
     437,   439,     0,   615,     0,   540,     0,     0,     0,   613,
1081
       0,     0,    83,    82,     0,     0,     0,   605,     0,   603,
1082
     599,   601,   529,     0,   530,     0,     0,     0,   584,   517,
1083
       0,   104,   114,   498,   194,   199,     0,     0,     0,     0,
1084
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1085
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1086
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1087
       0,     0,   165,   510,   506,   506,     0,     0,     0,     0,
1088
     559,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1089
       0,     0,     0,     0,     0,     0,   436,   438,   506,     0,
1090
      33,     3,     4,     6,     7,    46,   492,   313,    13,    94,
1091
       5,    12,   531,    71,   505,   504,    75,    81,    39,    40,
1092
      48,    54,   546,   547,   548,   554,   549,   550,   551,   552,
1093
     553,   312,   305,     0,   129,   309,     0,     0,     0,   414,
1094
     201,   410,     0,   412,     0,     0,     0,   559,   301,   129,
1095
     317,   303,   316,     0,     0,   163,     0,     0,     0,     0,
1096
     405,   409,     0,     0,     0,     0,   158,   159,   173,     0,
1097
       0,   111,   160,     0,     0,     0,   141,     0,     0,   121,
1098
       0,   123,     0,   161,     0,     0,   162,   129,   184,   562,
1099
     636,   129,   634,     0,     0,   218,   506,   220,   213,   116,
1100
       0,    87,     0,     0,   100,   129,    98,     0,     0,     0,
1101
     175,     0,     0,     0,   539,   614,     0,     0,   562,   612,
1102
     541,   611,   473,     0,   151,     0,   148,   145,   147,   600,
1103
     608,   562,     0,   534,   600,   490,   536,     0,   500,     0,
1104
       0,   257,     0,   146,   260,   442,   444,   443,     0,     0,
1105
     478,   440,   441,   445,   448,   446,   447,   464,   465,   462,
1106
     463,   471,   467,   468,   469,   470,   466,   449,   456,   457,
1107
     450,   451,   452,   454,   455,   472,   453,     0,   187,   188,
1108
     506,     0,     0,   555,   585,     0,     0,   556,   586,     0,
1109
     596,     0,   598,   580,   581,     0,   522,     0,   419,   423,
1110
     424,   425,   427,   428,   429,   430,   431,   432,   433,   434,
1111
     426,   435,   494,   315,     0,   130,     0,     0,   631,   527,
1112
     531,   591,   589,   590,   592,     0,   130,     0,     0,   398,
1113
       0,     0,   408,   401,     0,     0,   169,     0,     0,   506,
1114
     143,   176,   142,     0,     0,   122,   124,   141,   135,   318,
1115
     324,   321,   130,     0,   130,     0,   628,   115,     0,   222,
1116
       0,     0,   506,     0,   222,    87,     0,     0,   533,   130,
1117
       0,    99,   563,   534,   617,   618,     0,   623,   626,   624,
1118
       0,   620,     0,   619,   622,     0,   149,     0,     0,     0,
1119
     604,     0,   602,   583,   218,     0,     0,     0,   477,     0,
1120
     268,     0,   268,     0,   519,     0,   520,     0,   575,   576,
1121
     574,   420,   314,   311,   310,   306,   307,   308,   218,   588,
1122
     304,   302,   146,   254,     0,   146,   252,   154,     0,     0,
1123
     403,     0,   406,     0,   600,     0,     0,   562,     0,   238,
1124
     238,   157,   244,   397,   182,   139,     0,   129,   132,   137,
1125
       0,   185,     0,   635,   627,   219,     0,   506,   326,   221,
1126
     336,     0,     0,   279,   290,   291,     0,   292,   214,   274,
1127
       0,   276,   277,   278,   506,     0,   120,     0,   101,   102,
1128
     625,   616,     0,     0,   610,   600,   562,   418,   222,     0,
1129
       0,     0,   476,   369,   370,   371,   365,   364,   363,   368,
1130
     367,   366,   372,   268,     0,   129,   264,   272,   267,   269,
1131
     361,   268,     0,   557,   558,   597,   222,   258,     0,     0,
1132
     404,     0,   407,   600,     0,   562,     0,     0,   146,   232,
1133
     170,   238,     0,   238,     0,   129,     0,   129,   246,   129,
1134
     250,     0,     0,   172,     0,   138,   130,     0,   129,   134,
1135
     166,   223,     0,   357,     0,   326,   275,     0,     0,     0,
1136
       0,     0,     0,     0,   118,   417,     0,   150,     0,   506,
1137
     255,   146,   261,   266,   299,   268,   262,     0,     0,   190,
1138
     273,   286,     0,   288,   289,   362,     0,   511,   506,   155,
1139
       0,     0,   402,     0,   534,     0,   146,   230,   167,     0,
1140
       0,     0,     0,     0,     0,   234,   130,     0,   243,   130,
1141
     245,   130,     0,     0,   146,   140,   131,   128,   130,     0,
1142
     326,   506,     0,   356,   208,   357,   332,   333,   325,   272,
1143
       0,     0,   355,   337,   357,   281,   284,   280,   282,   283,
1144
     285,   326,   621,   609,     0,   259,     0,     0,   265,   287,
1145
       0,     0,   191,   192,     0,     0,     0,     0,   299,     0,
1146
     299,     0,   253,     0,   226,     0,     0,     0,     0,   236,
1147
       0,   146,   146,   235,     0,   247,   251,     0,   180,   178,
1148
       0,   133,   127,   357,     0,     0,   334,     0,   509,     0,
1149
     210,   357,   326,   300,   507,   294,   193,     0,   297,   293,
1150
     295,   296,   298,   507,     0,   507,   326,   146,   228,   156,
1151
     168,     0,   233,   237,   146,   146,   241,   242,   249,   248,
1152
       0,   181,     0,   183,   197,   216,   338,     0,   335,   506,
1153
       0,   374,   328,     0,    94,   279,   290,   291,     0,     0,
1154
       0,   394,   212,   357,   508,   506,     0,   515,     0,   129,
1155
     514,     0,   357,     0,   231,   239,   240,   179,     0,     0,
1156
       0,    75,   339,   350,     0,   341,     0,     0,     0,   351,
1157
       0,     0,   375,     0,   327,   506,     0,     0,     0,     0,
1158
       0,   329,   195,     0,   382,   146,   516,   130,     0,   146,
1159
     411,     0,   146,   217,   215,   340,   342,   343,   344,     0,
1160
       0,     0,   506,   379,   506,   373,     0,   506,   506,   330,
1161
     393,   507,     0,   379,   270,     0,   513,   512,     0,   229,
1162
       0,   346,   347,   349,   345,   352,   376,   384,     0,   375,
1163
     268,   395,   396,   503,   382,   384,   507,   507,   177,   348,
1164
     379,   377,   384,   385,   509,   380,   506,     0,   271,   383,
1165
     189,   502,   384,   381,     0,   376,   299,   378,   506,   507,
1166
     386,     0,   391,   353,   146,   507,   268,   507,     0,   331,
1167
       0,     0,   354,   392,     0,   388,   146,   507,     0,     0,
1168
     387,   390,   389
1169
};
1170
1171
  /* YYPGOTO[NTERM-NUM].  */
1172
static const yytype_int16 yypgoto[] =
1173
{
1174
   -1085, -1085,  -101,  -930,  -102,   -39,  -475, -1085,   -44,  -180,
1175
     -15,   340, -1085,   -10,    -2,     0,   937, -1085, -1085, -1085,
1176
     982, -1085, -1085,  -457, -1085, -1085,   828,   172,  -726,   539,
1177
     856,   131, -1085,   136, -1085, -1085, -1085, -1085, -1085, -1085,
1178
     371, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085,
1179
   -1085,    -1, -1085, -1085, -1085, -1085, -1085, -1085, -1085, -1085,
1180
   -1085,  -653, -1085,  -620,   191, -1085,    59, -1085, -1085,  -701,
1181
   -1085, -1085, -1085,   117, -1085, -1085, -1085, -1085, -1085, -1085,
1182
    -692, -1085,   153, -1085,   226,   103,  -825,  -442,  -182, -1085,
1183
     270, -1085,  -738,  -273, -1085,   156,  -942,   361, -1085, -1085,
1184
   -1085,   903,  -380, -1085,   555, -1085,   558,  -812,   119, -1085,
1185
    -761, -1085, -1085,   -18, -1085, -1085, -1085, -1085, -1085, -1085,
1186
   -1085, -1085,  -771,  -797, -1085,   -26, -1085, -1084,   -86, -1085,
1187
     -87, -1085, -1085, -1085,    13,   -22,   586, -1085,   609, -1085,
1188
     241,   432,   918, -1085,   -77, -1085,    99,   -47, -1085,     4,
1189
     -69,  -984, -1085,  -113, -1085, -1085,   -20, -1085, -1085,   -34,
1190
    -246, -1085,   450,   -74, -1085,   -63,   -55,   -31, -1085, -1085,
1191
   -1085, -1085, -1085,   -12,   814, -1085, -1085,   694,  -197,  -258,
1192
     538, -1085, -1085,   617,   435, -1085, -1085, -1085,   420
1193
};
1194
1195
  /* YYDEFGOTO[NTERM-NUM].  */
1196
static const yytype_int16 yydefgoto[] =
1197
{
1198
      -1,     1,   305,   306,   336,   453,     2,   308,   765,   204,
1199
      92,   524,   525,    93,   135,   546,    96,    97,   520,   309,
1200
     766,   497,   206,   636,   767,   868,   207,   768,   769,   208,
1201
     194,   331,   547,   548,   758,   764,   998,  1042,   863,   507,
1202
     508,   600,    99,   973,  1017,   100,   559,   221,   101,   167,
1203
     168,   102,   103,   222,   104,   223,   105,   224,   684,   946,
1204
    1080,   679,   682,   777,   756,  1029,   918,   850,   761,   852,
1205
     106,   856,   857,   858,   859,   747,   107,   108,   109,   110,
1206
     824,   825,   826,   827,   828,   899,   788,   789,   790,   791,
1207
     792,   900,   793,   902,   903,   904,   967,   176,   469,   158,
1208
     454,   470,   471,   209,   210,   213,   214,   873,   947,   948,
1209
     779,  1048,  1084,  1085,  1086,  1087,  1088,  1089,  1185,   949,
1210
     950,   951,   829,   830,  1050,  1051,  1052,  1147,  1134,  1164,
1211
    1165,  1182,  1197,  1187,  1060,  1061,   195,   179,   180,   748,
1212
     479,   480,   170,   640,   111,   112,   113,   114,   115,   137,
1213
     601,  1064,  1103,   394,   980,  1069,  1070,   117,   401,   118,
1214
     172,   343,   177,   119,   120,   121,   122,   190,   123,   124,
1215
     125,   126,   127,   128,   129,   130,   174,   605,   613,   338,
1216
     339,   340,   341,   328,   329,   700,   131,   511,   512
1217
};
1218
1219
  /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM.  If
1220
     positive, shift that token.  If negative, reduce the rule whose
1221
     number is the opposite.  If YYTABLE_NINF, syntax error.  */
1222
static const yytype_int16 yytable[] =
1223
{
1224
      94,   171,    95,   395,   316,   316,   116,   317,   317,   215,
1225
     203,   312,   647,   393,   393,   871,   191,  1132,   318,   318,
1226
     165,   196,   846,   759,   418,   496,   319,   319,  1194,   307,
1227
     832,    31,   905,   166,   169,   393,  1023,    31,  1025,  1066,
1228
     865,  1071,  -224,  -225,   869,  -227,   686,   353,   -14,  1155,
1229
     673,   212,   522,   523,   675,   -84,   882,   529,   977,   854,
1230
       3,   808,   494,   954,   794,   494,   160,   527,   690,   320,
1231
     321,   161,   991,    49,    50,   323,  1172,   539,   474,  1058,
1232
     475,    49,    50,  1040,   351,   836,   215,   175,   353,   901,
1233
     132,    28,    29,    30,    95,   598,  1183,   192,   116,  1184,
1234
     355,   178,   952,   136,   138,   139,   140,   141,   142,   143,
1235
     144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
1236
     154,   155,   156,   159,   -84,   351,   610,  1041,  1003,  1058,
1237
      31,   347,   495,  -523,   783,   664,    91,   181,    98,   906,
1238
     316,  1013,    91,   317,   595,   189,   189,  1153,   599,  1011,
1239
     920,   189,   924,   183,   318,   905,   351,   784,   785,   969,
1240
     970,   203,   319,   326,   327,   169,   460,   193,   922,   923,
1241
    1058,   760,  1170,  1171,   952,   182,   782,   922,   923,   556,
1242
    1133,  1005,   322,   952,  1059,   330,   847,   337,   889,  -280,
1243
    1195,   879,   786,  1196,   175,  1181,   897,   955,   390,  1015,
1244
    1063,  1189,   614,  1191,   184,   509,  -224,  -225,   391,  -227,
1245
     795,   901,  1001,  1200,  1072,   185,   908,   992,   323,   186,
1246
     324,   132,    28,    29,    30,   132,    28,    29,    30,    31,
1247
     611,   490,   952,   491,  1179,    91,  1018,  1019,  1019,  1022,
1248
     952,   132,    28,    29,    30,   925,   132,    28,    29,    30,
1249
     316,   356,   357,   317,   993,   734,   456,   737,   323,   316,
1250
     457,   187,   317,   458,   318,   783,   740,   642,   643,   162,
1251
    -568,  -568,   319,   318,   472,   323,   490,   473,   526,   171,
1252
     656,   319,   477,   481,   482,   188,   484,   485,   784,   785,
1253
     197,   707,   952,   323,  -568,   539,  -524,   165,   165,   198,
1254
     617,   952,   200,   558,   175,   325,   326,   327,   784,   785,
1255
     867,   166,   169,   784,   785,   538,   396,   510,   513,   323,
1256
     667,   342,  1143,   786,   551,   597,   217,   164,   493,   545,
1257
     323,   874,   345,  1046,    91,   116,  1047,   332,   333,   696,
1258
     876,    57,    58,   898,   877,   534,   326,   327,   898,   163,
1259
     132,    28,    29,    30,    31,   354,   171,   603,   607,  1144,
1260
     323,   697,   539,   326,   327,   698,   905,   218,   896,   615,
1261
     699,   132,    28,    29,    30,   165,  1163,    49,    50,  1067,
1262
     540,   326,   327,   219,  1163,   198,   199,   350,   200,   215,
1263
     198,  1163,   220,   200,   162,    57,    58,   171,   927,   310,
1264
     930,  1163,   932,   163,   358,   359,   311,   326,   327,   337,
1265
     337,   939,   397,   528,   337,   162,   165,  -561,   326,   327,
1266
     216,    80,   360,  -186,   201,   537,   202,  -186,    80,   166,
1267
     169,  -566,  -566,   500,   550,   501,   645,   956,   957,   957,
1268
     960,  -607,  -607,  -566,   391,  -607,   557,   680,   326,   327,
1269
     709,  -572,   164,   349,  -569,  -566,   203,   461,  1167,    91,
1270
     565,   566,   567,   569,   570,   571,   572,   573,   574,   575,
1271
     576,   577,   578,   579,   580,   581,   582,   583,   584,   585,
1272
     586,   587,   588,   589,   590,   591,   592,   593,   594,   462,
1273
     596,   545,   476,   561,  1190,   216,   844,   116,   353,   189,
1274
     486,   618,   619,   620,   621,   622,   623,   624,   625,   626,
1275
     627,   628,   629,   630,   631,   398,   399,   487,   632,   136,
1276
     138,   139,   140,   141,   142,   143,   502,   159,   503,   198,
1277
     199,   721,   200,   463,   489,   351,  -565,  -565,   488,   400,
1278
     316,   492,   505,   317,   506,   706,   499,   888,  -565,   116,
1279
     633,    57,    58,   755,   318,   132,    28,    29,    30,   163,
1280
    -565,   504,   319,   201,   514,   202,   189,  -564,  -564,   132,
1281
      28,    29,    30,   181,   921,   922,   923,   652,   316,  -564,
1282
     515,   317,  -563,  -563,    80,   913,   516,  -571,   659,   517,
1283
     763,  -564,   318,   519,  -563,   316,   464,   465,   317,   783,
1284
     319,   518,  -570,   670,  -572,   731,  -563,   521,   466,   318,
1285
      57,    58,  1108,   781,   531,   532,   553,   319,   163,   500,
1286
     467,   666,   784,   785,   332,   333,   132,    28,    29,    30,
1287
      31,   555,   316,  -562,  -562,   317,   784,   785,   533,   988,
1288
     922,   923,  -571,   757,   775,  -562,   318,   780,   337,   554,
1289
    -293,   710,   974,   337,   319,   526,  1093,  -562,  1094,   715,
1290
     509,   716,  1100,   165,  1101,   563,   165,   718,   787,   549,
1291
     162,    57,    58,  1100,   165,  1129,  -606,  -606,   316,   163,
1292
    -606,   317,    49,    50,    94,  -202,    95,   701,   702,   560,
1293
     116,   564,   318,   562,   717,   861,   862,   806,   958,   959,
1294
     319,   723,  1020,  1021,    80,   725,   344,   346,   872,   -43,
1295
     727,   -70,    49,    50,    51,   545,   -66,   -67,   823,   -68,
1296
     823,   116,   350,    57,    58,   883,   -62,   -63,   164,   -65,
1297
     -64,   163,   -73,   733,   472,    91,   472,    64,    65,    66,
1298
      67,   -69,   780,   845,   755,   472,   387,   388,   389,   744,
1299
     390,   634,   750,   752,   635,   650,    80,   646,   653,   535,
1300
     391,   165,   616,   541,   654,   662,   212,   787,   663,   316,
1301
     665,   787,   317,   510,   672,   674,   678,   535,   677,   541,
1302
     535,   541,   681,   318,   743,   683,   685,   746,   687,   688,
1303
     689,   319,   694,    94,   693,    95,   695,   711,   216,   116,
1304
     704,   802,   382,   383,   384,   385,   386,   387,   388,   389,
1305
     807,   390,   787,   351,   705,   714,   720,   722,   812,  -593,
1306
     964,   391,    98,  -595,   730,   735,   739,   762,   741,   823,
1307
     494,   770,   772,   774,   757,   545,   776,   545,   778,   981,
1308
     953,   116,   797,   116,   799,  -570,   800,   801,   803,   173,
1309
     842,   804,   805,   337,   385,   386,   387,   388,   389,   165,
1310
     390,   860,   875,   841,   787,   787,   787,   787,   831,   211,
1311
     391,   945,  1004,   837,   864,   880,   839,   843,   840,   851,
1312
     853,   866,   787,   787,   870,   874,   881,   691,   463,   882,
1313
     887,   891,   892,   823,   849,  1053,   885,   894,   895,   999,
1314
     907,   914,  -594,   909,   337,   348,   393,   926,   780,   928,
1315
     929,   931,   933,   934,   935,   938,   879,   545,   165,   937,
1316
     966,   940,  1068,   116,   961,   963,   962,   165,   972,   975,
1317
     976,    98,   979,   977,   787,   351,   978,   982,   983,   481,
1318
     912,   984,   337,   985,   989,   890,   994,   997,  1009,  1002,
1319
      49,   787,   945,  1014,  1008,  1012,   974,  1016,  1026,   787,
1320
     787,   787,   787,   545,  1024,  1045,   724,  1032,  1033,   116,
1321
     726,  1049,  1065,  1074,   728,   729,  1078,  1079,  1091,   919,
1322
    1092,  1096,   -75,   917,   545,   -54,   -55,  1097,  1105,  1106,
1323
     116,  1107,  1109,  -523,   787,  1114,  1104,  1112,   545,  1117,
1324
    1119,   945,  1120,  1118,   116,  1068,  1077,  1121,  1083,   945,
1325
    1123,  1137,  1139,  1090,  1095,  1124,  1148,  1178,  1142,  1150,
1326
    1186,   990,   965,  1160,  1176,   165,  1126,  1193,   860,   798,
1327
     996,   352,   165,   498,   545,   545,   205,   915,   936,   668,
1328
     116,   116,   483,   771,  1030,  1083,   995,   986,   968,   893,
1329
    1090,  1174,  1007,  1146,   971,  1149,   878,   669,  1151,  1152,
1330
     455,   945,   393,   671,  1006,  1000,  1116,  1125,  1168,   165,
1331
     945,   545,  1099,   545,   545,  1173,   660,   116,  1130,   116,
1332
     116,   911,  1145,   649,   459,   749,   780,  1136,    49,    50,
1333
     738,   609,   712,  1038,   773,     0,  1039,  1175,   350,    57,
1334
      58,     0,     0,     0,  1159,   165,     0,   163,     0,  1180,
1335
       0,     0,     0,    64,    65,    66,    67,     0,     0,  1028,
1336
       0,   917,  1036,  1037,     0,     0,     0,   173,     0,     0,
1337
       0,     0,    80,   545,     0,     0,   545,     0,   545,   116,
1338
       0,     0,   116,     0,   116,  1162,     0,     0,   823,     0,
1339
       0,     0,   351,  1162,     0,     0,     0,     0,  1073,     0,
1340
       0,     0,     0,     0,     0,  1075,  1076,     0,     0,     0,
1341
    1162,   383,   384,   385,   386,   387,   388,   389,  1113,   390,
1342
       0,     0,     0,     0,   823,     0,   545,     0,     0,   391,
1343
    1122,     0,   116,     0,     0,  1127,  1128,   545,     0,     0,
1344
       0,     0,  1131,   116,   173,     0,     0,     0,     0,     0,
1345
     604,   608,   612,   612,   813,   814,   815,   816,   817,   818,
1346
     819,   820,   821,   822,     0,     0,     0,     0,     0,     0,
1347
       0,  1154,     0,   941,     0,     0,  1135,     0,     0,     0,
1348
    1138,  -359,     0,  1140,     0,   173,   942,  1166,    80,   813,
1349
     814,   815,   816,   817,   818,   819,   820,   821,   822,   943,
1350
       0,   813,   814,   815,   816,   817,   818,   819,   820,   821,
1351
     822,     0,     0,     0,     0,  1161,   641,     0,   612,   612,
1352
     644,     0,   420,    80,   421,   422,   423,   424,   230,   231,
1353
     232,   425,   426,  1198,    11,    80,     0,     0,     0,   813,
1354
     814,   815,   816,   817,   818,   819,   820,   821,   822,   427,
1355
     944,     0,     0,     0,     0,  1188,   211,     0,     0,     0,
1356
       0,     0,  1169,     0,     0,     0,     0,  1199,     0,     0,
1357
       0,    12,    13,    80,     0,     0,    14,   235,    15,    16,
1358
      17,    18,    19,    20,    21,    22,    23,     0,   428,     0,
1359
     237,   238,    25,    26,   429,    28,    29,    30,    31,     0,
1360
    1177,    33,     0,     0,   430,   431,   432,   244,   245,   246,
1361
     247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
1362
     257,   258,   259,   260,   433,   262,   263,   264,   434,   435,
1363
     267,   268,   269,   270,   271,   272,   273,   274,   436,   276,
1364
     277,   278,   279,   280,     0,     0,     0,   437,   282,   283,
1365
     438,   439,     0,   286,   287,   288,   289,   290,   291,   292,
1366
     440,   441,   295,   442,   443,   444,   445,   446,   447,   448,
1367
     449,   450,    80,    81,    82,     0,     0,     0,     0,     0,
1368
       0,     0,     0,     0,    84,     0,     0,     0,     0,     0,
1369
     451,     0,     0,     0,     0,     0,    86,   452,     0,     0,
1370
      88,    89,    90,    91,   420,     0,   421,   422,   423,   424,
1371
     230,   231,   232,   425,   426,     0,    11,     0,     0,   941,
1372
       0,     0,     0,     0,     0,     0,     0,  -359,     0,     0,
1373
       0,   427,     0,     0,     0,   813,   814,   815,   816,   817,
1374
     818,   819,   820,   821,   822,   943,     0,     0,     0,     0,
1375
       0,     0,     0,    12,    13,     0,     0,     0,    14,   235,
1376
      15,    16,    17,    18,    19,    20,    21,    22,    23,    80,
1377
     428,     0,   237,   238,    25,    26,   429,    28,    29,    30,
1378
      31,     0,     0,    33,     0,     0,   430,   431,   432,   244,
1379
     245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
1380
     255,   256,   257,   258,   259,   260,   433,   262,   263,   264,
1381
     434,   435,   267,   268,   269,   270,   271,   272,   273,   274,
1382
     436,   276,   277,   278,   279,   280,     0,     0,     0,   437,
1383
     282,   283,   438,   439,     0,   286,   287,   288,   289,   290,
1384
     291,   292,   440,   441,   295,   442,   443,   444,   445,   446,
1385
     447,   448,   449,   450,    80,    81,    82,     0,     0,     0,
1386
       0,     0,     0,     0,     0,     0,    84,     0,     0,     0,
1387
       0,     0,   451,     0,     0,     0,     0,     0,    86,   468,
1388
       0,     0,    88,    89,    90,    91,   420,     0,   421,   422,
1389
     423,   424,   230,   231,   232,   425,   426,     0,    11,   813,
1390
     814,   815,   816,   817,   818,   819,   820,   821,   822,     0,
1391
       0,     0,     0,   427,  -608,  -608,  -608,  -608,   381,   382,
1392
     383,   384,   385,   386,   387,   388,   389,     0,   390,     0,
1393
       0,     0,     0,    80,     0,    12,    13,     0,   391,     0,
1394
      14,   235,    15,    16,    17,    18,    19,    20,    21,    22,
1395
      23,     0,   428,     0,   237,   238,    25,    26,   429,    28,
1396
      29,    30,    31,     0,     0,    33,     0,     0,   430,   431,
1397
     432,   244,   245,   246,   247,   248,   249,   250,   251,   252,
1398
     253,   254,   255,   256,   257,   258,   259,   260,   433,   262,
1399
     263,   264,   434,   435,   267,   268,   269,   270,   271,   272,
1400
     273,   274,   436,   276,   277,   278,   279,   280,     0,     0,
1401
       0,   437,   282,   283,   438,   439,     0,   286,   287,   288,
1402
     289,   290,   291,   292,   440,   441,   295,   442,   443,   444,
1403
     445,   446,   447,   448,   449,   450,    80,    81,    82,     0,
1404
       0,     0,     0,     0,     0,     0,     0,     0,    84,     0,
1405
       0,     0,     0,     0,   451,     0,     0,     0,     0,     0,
1406
      86,   736,     0,     0,    88,    89,    90,    91,   420,     0,
1407
     421,   422,   423,   424,   230,   231,   232,   425,   426,     0,
1408
      11,   813,   814,   815,   816,   817,   818,   819,   820,   821,
1409
     822,     0,     0,     0,     0,   427,     0,     0,     0,   402,
1410
     403,   404,   405,   406,   407,   408,   409,   410,   411,   412,
1411
     413,   414,   415,     0,     0,     0,     0,    12,    13,     0,
1412
       0,     0,    14,   235,    15,    16,    17,    18,    19,    20,
1413
      21,    22,    23,     0,   428,     0,   237,   238,    25,    26,
1414
     429,    28,    29,    30,    31,     0,     0,    33,     0,     0,
1415
     430,   431,   432,   244,   245,   246,   247,   248,   249,   250,
1416
     251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
1417
     433,   262,   263,   264,   434,   435,   267,   268,   269,   270,
1418
     271,   272,   273,   274,   436,   276,   277,   278,   279,   280,
1419
       0,     0,     0,   437,   282,   283,   438,   439,     0,   286,
1420
     287,   288,   289,   290,   291,   292,   440,   441,   295,   442,
1421
     443,   444,   445,   446,   447,   448,   449,   450,    80,    81,
1422
      82,     0,     4,     0,     5,     6,     7,     8,     0,     0,
1423
      84,     9,    10,     0,    11,     0,   451,   416,   417,     0,
1424
    -562,  -562,    86,     0,     0,     0,    88,    89,    90,    91,
1425
       0,     0,  -562,   813,   814,   815,   816,   817,   818,   819,
1426
     820,   821,   822,     0,  -562,     0,     0,     0,     0,     0,
1427
       0,    12,    13,     0,     0,     0,    14,     0,    15,    16,
1428
      17,    18,    19,    20,    21,    22,    23,    80,    24,     0,
1429
       0,     0,    25,    26,    27,    28,    29,    30,    31,    32,
1430
       0,    33,     0,     0,    34,    35,    36,    37,     0,    38,
1431
      39,    40,  -263,    41,     0,    42,     0,    43,     0,     0,
1432
      44,     0,     0,     0,    45,    46,    47,    48,    49,    50,
1433
      51,    52,    53,     0,     0,    54,     0,    55,    56,    57,
1434
      58,     0,     0,     0,     0,     0,     0,    59,     0,    60,
1435
      61,    62,    63,    64,    65,    66,    67,     0,     0,    68,
1436
      69,    70,     0,    71,    72,    73,    74,    75,    76,    77,
1437
      78,    79,    80,    81,    82,    83,     4,     0,     5,     6,
1438
       7,     8,     0,     0,    84,     9,    10,     0,    11,     0,
1439
       0,     0,     0,     0,     0,    85,    86,     0,    87,   796,
1440
      88,    89,    90,    91,     0,     0,     0,   813,   814,   815,
1441
     816,   817,   818,   819,   820,   821,   822,     0,     0,     0,
1442
       0,     0,     0,     0,     0,    12,    13,     0,     0,     0,
1443
      14,     0,    15,    16,    17,    18,    19,    20,    21,    22,
1444
      23,    80,    24,     0,     0,     0,    25,    26,    27,    28,
1445
      29,    30,    31,    32,     0,    33,     0,     0,    34,    35,
1446
      36,    37,     0,    38,    39,    40,  -130,    41,     0,    42,
1447
       0,    43,     0,     0,    44,     0,     0,     0,    45,    46,
1448
      47,    48,    49,    50,    51,    52,    53,     0,     0,    54,
1449
       0,    55,    56,    57,    58,     0,     0,     0,     0,     0,
1450
       0,    59,     0,    60,    61,    62,    63,    64,    65,    66,
1451
      67,     0,     0,    68,    69,    70,     0,    71,    72,    73,
1452
      74,    75,    76,    77,    78,    79,    80,    81,    82,    83,
1453
       4,     0,     5,     6,     7,     8,     0,     0,    84,     9,
1454
      10,     0,    11,     0,     0,     0,     0,     0,     0,    85,
1455
      86,     0,    87,   884,    88,    89,    90,    91,  -358,     0,
1456
    -360,     0,     0,     0,     0,     0,     0,     0,   813,   814,
1457
     815,   816,   817,   818,   819,   820,   821,   822,     0,    12,
1458
      13,     0,     0,     0,    14,     0,    15,    16,    17,    18,
1459
      19,    20,    21,    22,    23,     0,    24,     0,     0,     0,
1460
      25,    26,    27,    28,    29,    30,    31,    32,     0,    33,
1461
       0,     0,    34,    35,    36,    37,     0,    38,    39,    40,
1462
       0,    41,     0,    42,     0,    43,     0,     0,    44,     0,
1463
       0,     0,    45,    46,    47,    48,    49,    50,    51,    52,
1464
      53,     0,     0,    54,     0,    55,    56,    57,    58,     0,
1465
       0,     0,     0,     0,     0,    59,     0,    60,    61,    62,
1466
      63,    64,    65,    66,    67,     0,     0,    68,    69,    70,
1467
       0,    71,    72,    73,    74,    75,    76,    77,    78,    79,
1468
      80,    81,    82,    83,     4,     0,     5,     6,     7,     8,
1469
       0,     0,    84,     9,    10,     0,    11,     0,     0,   941,
1470
       0,     0,     0,    85,    86,     0,    87,  -359,    88,    89,
1471
      90,    91,   942,     0,     0,   813,   814,   815,   816,   817,
1472
     818,   819,   820,   821,   822,   943,     0,     0,     0,     0,
1473
       0,     0,     0,    12,    13,     0,     0,     0,    14,     0,
1474
      15,    16,    17,    18,    19,    20,    21,    22,    23,    80,
1475
      24,     0,     0,     0,    25,    26,    27,    28,    29,    30,
1476
      31,    32,     0,    33,     0,     0,    34,    35,    36,    37,
1477
       0,    38,    39,    40,     0,    41,  1010,    42,     0,    43,
1478
       0,     0,    44,     0,     0,     0,    45,    46,    47,    48,
1479
      49,    50,     0,    52,    53,     0,     0,     0,     0,    55,
1480
      56,    57,    58,     0,     0,     0,     0,     0,     0,    59,
1481
       0,    60,    61,    62,   543,    64,    65,    66,    67,     0,
1482
       0,     0,    69,    70,     0,    71,    72,    73,    74,    75,
1483
      76,    77,    78,    79,    80,    81,    82,    83,     4,     0,
1484
       5,     6,     7,     8,     0,     0,    84,     9,    10,     0,
1485
      11,     0,     0,     0,     0,     0,     0,    85,    86,     0,
1486
      87,   544,    88,    89,    90,    91,     0,     0,     0,     0,
1487
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1488
       0,     0,     0,     0,     0,     0,     0,    12,    13,     0,
1489
       0,     0,    14,     0,    15,    16,    17,    18,    19,    20,
1490
      21,    22,    23,     0,    24,     0,     0,     0,    25,    26,
1491
      27,    28,    29,    30,    31,    32,     0,    33,     0,     0,
1492
      34,    35,    36,    37,     0,    38,    39,    40,     0,    41,
1493
       0,    42,     0,    43,     0,     0,    44,     0,     0,     0,
1494
      45,    46,    47,    48,    49,    50,     0,    52,    53,     0,
1495
       0,     0,     0,    55,    56,    57,    58,     0,     0,     0,
1496
       0,     0,     0,    59,     0,    60,    61,    62,   543,    64,
1497
      65,    66,    67,     0,     0,     0,    69,    70,     0,    71,
1498
      72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
1499
      82,    83,     4,     0,     5,     6,     7,     8,     0,     0,
1500
      84,     9,    10,     0,    11,     0,     0,     0,     0,     0,
1501
       0,    85,    86,     0,    87,   661,    88,    89,    90,    91,
1502
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1503
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1504
       0,    12,    13,     0,     0,     0,    14,     0,    15,    16,
1505
      17,    18,    19,    20,    21,    22,    23,     0,    24,     0,
1506
       0,     0,    25,    26,    27,    28,    29,    30,    31,    32,
1507
       0,    33,     0,     0,    34,    35,    36,    37,   811,    38,
1508
      39,    40,     0,    41,     0,    42,     0,    43,     0,     0,
1509
      44,     0,     0,     0,    45,    46,    47,    48,    49,    50,
1510
       0,    52,    53,     0,     0,     0,     0,    55,    56,    57,
1511
      58,     0,     0,     0,     0,     0,     0,    59,     0,    60,
1512
      61,    62,   543,    64,    65,    66,    67,     0,     0,     0,
1513
      69,    70,     0,    71,    72,    73,    74,    75,    76,    77,
1514
      78,    79,    80,    81,    82,    83,     4,     0,     5,     6,
1515
       7,     8,     0,     0,    84,     9,    10,     0,    11,     0,
1516
       0,   941,     0,     0,     0,    85,    86,     0,    87,  -359,
1517
      88,    89,    90,    91,   942,     0,     0,   813,   814,   815,
1518
     816,   817,   818,   819,   820,   821,   822,   943,     0,     0,
1519
       0,     0,     0,     0,     0,    12,    13,     0,     0,     0,
1520
      14,     0,    15,    16,    17,    18,    19,    20,    21,    22,
1521
      23,    80,    24,     0,     0,     0,    25,    26,    27,    28,
1522
      29,    30,    31,    32,     0,    33,     0,     0,    34,    35,
1523
      36,    37,     0,    38,    39,    40,   910,    41,  1044,    42,
1524
       0,    43,     0,     0,    44,     0,     0,     0,    45,    46,
1525
      47,    48,    49,    50,     0,    52,    53,     0,     0,     0,
1526
       0,    55,    56,    57,    58,     0,     0,     0,     0,     0,
1527
       0,    59,     0,    60,    61,    62,   543,    64,    65,    66,
1528
      67,     0,     0,     0,    69,    70,     0,    71,    72,    73,
1529
      74,    75,    76,    77,    78,    79,    80,    81,    82,    83,
1530
       4,     0,     5,     6,     7,     8,     0,     0,    84,     9,
1531
      10,     0,    11,     0,     0,   941,     0,     0,     0,    85,
1532
      86,     0,    87,  -359,    88,    89,    90,    91,   942,     0,
1533
       0,   813,   814,   815,   816,   817,   818,   819,   820,   821,
1534
     822,   943,     0,     0,     0,     0,     0,     0,     0,    12,
1535
      13,     0,     0,     0,    14,     0,    15,    16,    17,    18,
1536
      19,    20,    21,    22,    23,    80,    24,     0,     0,     0,
1537
      25,    26,    27,    28,    29,    30,    31,    32,     0,    33,
1538
       0,     0,    34,    35,    36,    37,     0,    38,    39,    40,
1539
       0,    41,  1062,    42,     0,    43,   987,     0,    44,     0,
1540
       0,     0,    45,    46,    47,    48,    49,    50,     0,    52,
1541
      53,     0,     0,     0,     0,    55,    56,    57,    58,     0,
1542
       0,     0,     0,     0,     0,    59,     0,    60,    61,    62,
1543
     543,    64,    65,    66,    67,     0,     0,     0,    69,    70,
1544
       0,    71,    72,    73,    74,    75,    76,    77,    78,    79,
1545
      80,    81,    82,    83,     4,     0,     5,     6,     7,     8,
1546
       0,     0,    84,     9,    10,     0,    11,     0,     0,   941,
1547
       0,     0,     0,    85,    86,     0,    87,  -359,    88,    89,
1548
      90,    91,   942,     0,     0,   813,   814,   815,   816,   817,
1549
     818,   819,   820,   821,   822,   943,     0,     0,     0,     0,
1550
       0,     0,     0,    12,    13,     0,     0,     0,    14,     0,
1551
      15,    16,    17,    18,    19,    20,    21,    22,    23,    80,
1552
      24,     0,     0,     0,    25,    26,    27,    28,    29,    30,
1553
      31,    32,     0,    33,     0,     0,    34,    35,    36,    37,
1554
       0,    38,    39,    40,     0,    41,  1102,    42,  1031,    43,
1555
       0,     0,    44,     0,     0,     0,    45,    46,    47,    48,
1556
      49,    50,     0,    52,    53,     0,     0,     0,     0,    55,
1557
      56,    57,    58,     0,     0,     0,     0,     0,     0,    59,
1558
       0,    60,    61,    62,   543,    64,    65,    66,    67,     0,
1559
       0,     0,    69,    70,     0,    71,    72,    73,    74,    75,
1560
      76,    77,    78,    79,    80,    81,    82,    83,     4,     0,
1561
       5,     6,     7,     8,     0,     0,    84,     9,    10,     0,
1562
      11,     0,     0,   941,     0,     0,     0,    85,    86,     0,
1563
      87,  -359,    88,    89,    90,    91,   942,     0,     0,   813,
1564
     814,   815,   816,   817,   818,   819,   820,   821,   822,   943,
1565
       0,     0,     0,     0,     0,     0,     0,    12,    13,     0,
1566
       0,     0,    14,     0,    15,    16,    17,    18,    19,    20,
1567
      21,    22,    23,    80,    24,     0,     0,     0,    25,    26,
1568
      27,    28,    29,    30,    31,    32,     0,    33,     0,     0,
1569
      34,    35,    36,    37,     0,    38,    39,    40,     0,    41,
1570
    1110,    42,     0,    43,     0,     0,    44,     0,     0,     0,
1571
      45,    46,    47,    48,    49,    50,     0,    52,    53,     0,
1572
       0,     0,     0,    55,    56,    57,    58,     0,     0,     0,
1573
       0,     0,     0,    59,     0,    60,    61,    62,   543,    64,
1574
      65,    66,    67,     0,     0,     0,    69,    70,     0,    71,
1575
      72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
1576
      82,    83,     4,     0,     5,     6,     7,     8,     0,     0,
1577
      84,     9,    10,     0,    11,     0,     0,     0,     0,     0,
1578
       0,    85,    86,     0,    87,  1043,    88,    89,    90,    91,
1579
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1580
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1581
       0,    12,    13,     0,     0,     0,    14,     0,    15,    16,
1582
      17,    18,    19,    20,    21,    22,    23,     0,    24,     0,
1583
       0,     0,    25,    26,    27,    28,    29,    30,    31,    32,
1584
       0,    33,     0,     0,    34,    35,    36,    37,     0,    38,
1585
      39,    40,     0,    41,  1111,    42,     0,    43,     0,     0,
1586
      44,     0,     0,     0,    45,    46,    47,    48,    49,    50,
1587
       0,    52,    53,     0,     0,     0,     0,    55,    56,    57,
1588
      58,     0,     0,     0,     0,     0,     0,    59,     0,    60,
1589
      61,    62,   543,    64,    65,    66,    67,     0,     0,     0,
1590
      69,    70,     0,    71,    72,    73,    74,    75,    76,    77,
1591
      78,    79,    80,    81,    82,    83,     4,     0,     5,     6,
1592
       7,     8,     0,     0,    84,     9,    10,     0,    11,     0,
1593
       0,     0,     0,     0,     0,    85,    86,     0,    87,     0,
1594
      88,    89,    90,    91,     0,     0,     0,     0,     0,     0,
1595
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1596
       0,     0,     0,     0,     0,    12,    13,     0,     0,     0,
1597
      14,     0,    15,    16,    17,    18,    19,    20,    21,    22,
1598
      23,     0,    24,     0,     0,     0,    25,    26,    27,    28,
1599
      29,    30,    31,    32,     0,    33,     0,     0,    34,    35,
1600
      36,    37,     0,    38,    39,    40,     0,    41,     0,    42,
1601
       0,    43,     0,     0,    44,     0,     0,     0,    45,    46,
1602
      47,    48,    49,    50,     0,    52,    53,     0,     0,     0,
1603
       0,    55,    56,    57,    58,     0,     0,     0,     0,     0,
1604
       0,    59,     0,    60,    61,    62,   543,    64,    65,    66,
1605
      67,     0,     0,     0,    69,    70,     0,    71,    72,    73,
1606
      74,    75,    76,    77,    78,    79,    80,    81,    82,    83,
1607
       4,     0,     5,     6,     7,     8,     0,     0,    84,     9,
1608
      10,     0,    11,     0,     0,     0,     0,     0,     0,    85,
1609
      86,     0,    87,  1156,    88,    89,    90,    91,     0,     0,
1610
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1611
       0,     0,     0,     0,     0,     0,     0,     0,     0,    12,
1612
      13,     0,     0,     0,    14,     0,    15,    16,    17,    18,
1613
      19,    20,    21,    22,    23,     0,    24,     0,     0,     0,
1614
      25,    26,    27,    28,    29,    30,    31,    32,     0,    33,
1615
       0,     0,    34,    35,    36,    37,     0,    38,    39,    40,
1616
       0,    41,     0,    42,     0,    43,     0,     0,    44,     0,
1617
       0,     0,    45,    46,    47,    48,    49,    50,     0,    52,
1618
      53,     0,     0,     0,     0,    55,    56,    57,    58,     0,
1619
       0,     0,     0,     0,     0,    59,     0,    60,    61,    62,
1620
     543,    64,    65,    66,    67,     0,     0,     0,    69,    70,
1621
       0,    71,    72,    73,    74,    75,    76,    77,    78,    79,
1622
      80,    81,    82,    83,     4,     0,     5,     6,     7,     8,
1623
       0,     0,    84,     9,    10,     0,    11,     0,     0,     0,
1624
       0,     0,     0,    85,    86,     0,    87,  1157,    88,    89,
1625
      90,    91,     0,     0,     0,     0,     0,     0,     0,     0,
1626
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1627
       0,     0,     0,    12,    13,     0,     0,     0,    14,     0,
1628
      15,    16,    17,    18,    19,    20,    21,    22,    23,     0,
1629
      24,     0,     0,     0,    25,    26,    27,    28,    29,    30,
1630
      31,    32,     0,    33,     0,     0,    34,    35,    36,    37,
1631
       0,    38,    39,    40,     0,    41,     0,    42,     0,    43,
1632
       0,     0,    44,     0,     0,     0,    45,    46,    47,    48,
1633
      49,    50,     0,    52,    53,     0,     0,     0,     0,    55,
1634
      56,    57,    58,     0,     0,     0,     0,     0,     0,    59,
1635
       0,    60,    61,    62,   543,    64,    65,    66,    67,     0,
1636
       0,     0,    69,    70,     0,    71,    72,    73,    74,    75,
1637
      76,    77,    78,    79,    80,    81,    82,    83,     4,     0,
1638
       5,     6,     7,     8,     0,     0,    84,     9,    10,     0,
1639
      11,     0,     0,     0,     0,     0,     0,    85,    86,     0,
1640
      87,  1158,    88,    89,    90,    91,     0,     0,     0,     0,
1641
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1642
       0,     0,     0,     0,     0,     0,     0,    12,    13,     0,
1643
       0,     0,    14,     0,    15,    16,    17,    18,    19,    20,
1644
      21,    22,    23,     0,    24,     0,     0,     0,    25,    26,
1645
      27,    28,    29,    30,    31,    32,     0,    33,     0,     0,
1646
      34,    35,    36,    37,     0,    38,    39,    40,     0,    41,
1647
       0,    42,     0,    43,     0,     0,    44,     0,     0,     0,
1648
      45,    46,    47,    48,    49,    50,     0,    52,    53,     0,
1649
       0,     0,     0,    55,    56,    57,    58,     0,     0,     0,
1650
       0,     0,     0,    59,     0,    60,    61,    62,   543,    64,
1651
      65,    66,    67,     0,     0,     0,    69,    70,     0,    71,
1652
      72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
1653
      82,    83,     4,     0,     5,     6,     7,     8,     0,     0,
1654
      84,     9,    10,     0,    11,     0,     0,     0,     0,     0,
1655
       0,    85,    86,     0,    87,  1192,    88,    89,    90,    91,
1656
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1657
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1658
       0,    12,    13,     0,     0,     0,    14,     0,    15,    16,
1659
      17,    18,    19,    20,    21,    22,    23,     0,    24,     0,
1660
       0,     0,    25,    26,    27,    28,    29,    30,    31,    32,
1661
       0,    33,     0,     0,    34,    35,    36,    37,     0,    38,
1662
      39,    40,     0,    41,     0,    42,     0,    43,     0,     0,
1663
      44,     0,     0,     0,    45,    46,    47,    48,    49,    50,
1664
       0,    52,    53,     0,     0,     0,     0,    55,    56,    57,
1665
      58,     0,     0,     0,     0,     0,     0,    59,     0,    60,
1666
      61,    62,   543,    64,    65,    66,    67,     0,     0,     0,
1667
      69,    70,     0,    71,    72,    73,    74,    75,    76,    77,
1668
      78,    79,    80,    81,    82,    83,     4,     0,     5,     6,
1669
       7,     8,     0,     0,    84,     9,    10,     0,    11,     0,
1670
       0,     0,     0,     0,     0,    85,    86,     0,    87,  1202,
1671
      88,    89,    90,    91,     0,     0,     0,     0,     0,     0,
1672
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1673
       0,     0,     0,     0,     0,    12,    13,     0,     0,     0,
1674
      14,     0,    15,    16,    17,    18,    19,    20,    21,    22,
1675
      23,     0,    24,     0,     0,     0,    25,    26,    27,    28,
1676
      29,    30,    31,    32,     0,    33,     0,     0,    34,    35,
1677
      36,    37,     0,    38,    39,    40,     0,    41,     0,    42,
1678
       0,    43,     0,     0,    44,     0,     0,     0,    45,    46,
1679
      47,    48,    49,    50,     0,    52,    53,     0,     0,     0,
1680
       0,    55,    56,    57,    58,     0,     0,     0,     0,     0,
1681
       0,    59,     0,    60,    61,    62,   543,    64,    65,    66,
1682
      67,     0,     0,     0,    69,    70,     0,    71,    72,    73,
1683
      74,    75,    76,    77,    78,    79,    80,    81,    82,    83,
1684
       0,     0,     0,     0,     0,     0,     0,   225,    84,   226,
1685
     227,   228,   229,   230,   231,   232,   233,   234,     0,    85,
1686
      86,     0,    87,     0,    88,    89,    90,    91,   364,     0,
1687
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
1688
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
1689
     385,   386,   387,   388,   389,     0,   390,     0,     0,     0,
1690
       0,     0,   235,     0,     0,     0,   391,     0,     0,     0,
1691
       0,     0,     0,   236,     0,   237,   238,     0,     0,   239,
1692
       0,     0,     0,    31,     0,     0,     0,     0,     0,   241,
1693
     242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
1694
     252,   253,   254,   255,   256,   257,   258,   259,   260,   261,
1695
     262,   263,   264,   265,   266,   267,   268,   269,   270,   271,
1696
     272,   273,   274,   275,   276,   277,   278,   279,   280,     0,
1697
       0,     0,   281,   282,   283,   284,   285,     0,   286,   287,
1698
     288,   289,   290,   291,   292,   293,   294,   295,   296,   297,
1699
     298,   299,   300,   301,   302,   303,   304,   225,     0,   226,
1700
     227,   228,   229,   230,   231,   232,   233,   234,     0,     0,
1701
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1702
       0,     0,     0,   602,     0,     0,     0,     0,    91,   369,
1703
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
1704
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
1705
       0,   390,   235,     0,     0,     0,     0,     0,     0,     0,
1706
       0,   391,     0,   236,     0,   237,   238,     0,     0,   239,
1707
       0,     0,     0,    31,     0,     0,     0,     0,     0,   241,
1708
     242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
1709
     252,   253,   254,   255,   256,   257,   258,   259,   260,   261,
1710
     262,   263,   264,   265,   266,   267,   268,   269,   270,   271,
1711
     272,   273,   274,   275,   276,   277,   278,   279,   280,     0,
1712
       0,     0,   281,   282,   283,   284,   285,     0,   286,   287,
1713
     288,   289,   290,   291,   292,   293,   294,   295,   296,   297,
1714
     298,   299,   300,   301,   302,   303,   304,     4,     0,     5,
1715
       6,     7,     8,     0,     0,     0,     9,    10,     0,    11,
1716
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1717
       0,     0,     0,   606,     0,   742,     0,     0,    91,     0,
1718
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1719
       0,     0,     0,     0,     0,     0,    12,    13,     0,     0,
1720
       0,    14,     0,    15,    16,    17,    18,    19,    20,    21,
1721
      22,    23,     0,    24,     0,     0,     0,    25,    26,    27,
1722
      28,    29,    30,    31,    32,     0,    33,     0,     0,    34,
1723
      35,    36,    37,     0,    38,    39,    40,     0,    41,     0,
1724
      42,     0,    43,     0,     0,    44,     0,     0,     0,    45,
1725
      46,    47,    48,    49,    50,     0,    52,    53,     0,     0,
1726
       0,     0,    55,    56,     0,     0,     0,     0,     0,     0,
1727
       0,     0,   134,     0,    60,    61,    62,     0,     0,     0,
1728
       0,     0,     0,     0,     0,    69,    70,     0,    71,    72,
1729
      73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
1730
      83,     4,     0,     5,     6,     7,     8,     0,     0,    84,
1731
       9,    10,     0,    11,     0,     0,     0,     0,     0,     0,
1732
      85,    86,     0,    87,     0,    88,    89,    90,    91,   745,
1733
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1734
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1735
      12,    13,     0,     0,     0,    14,     0,    15,    16,    17,
1736
      18,    19,    20,    21,    22,    23,     0,    24,     0,     0,
1737
       0,    25,    26,    27,    28,    29,    30,    31,    32,     0,
1738
      33,     0,     0,    34,    35,    36,    37,     0,    38,    39,
1739
      40,     0,    41,     0,    42,     0,    43,     0,     0,    44,
1740
       0,     0,     0,    45,    46,    47,    48,    49,    50,     0,
1741
      52,    53,     0,     0,     0,     0,    55,    56,     0,     0,
1742
       0,     0,     0,     0,     0,     0,   134,     0,    60,    61,
1743
      62,     0,     0,     0,     0,     0,     0,     0,     0,    69,
1744
      70,     0,    71,    72,    73,    74,    75,    76,    77,    78,
1745
      79,    80,    81,    82,    83,     4,     0,     5,     6,     7,
1746
       8,     0,     0,    84,     9,    10,     0,    11,     0,     0,
1747
       0,     0,     0,     0,    85,    86,     0,    87,     0,    88,
1748
      89,    90,    91,   848,     0,     0,     0,     0,     0,     0,
1749
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1750
       0,     0,     0,     0,    12,    13,     0,     0,     0,    14,
1751
       0,    15,    16,    17,    18,    19,    20,    21,    22,    23,
1752
       0,    24,     0,     0,     0,    25,    26,    27,    28,    29,
1753
      30,    31,    32,     0,    33,     0,     0,    34,    35,    36,
1754
      37,     0,    38,    39,    40,     0,    41,     0,    42,     0,
1755
      43,     0,     0,    44,     0,     0,     0,    45,    46,    47,
1756
      48,    49,    50,     0,    52,    53,     0,     0,     0,     0,
1757
      55,    56,     0,     0,     0,     0,     0,     0,     0,     0,
1758
     134,     0,    60,    61,    62,     0,     0,     0,     0,     0,
1759
       0,     0,     0,    69,    70,     0,    71,    72,    73,    74,
1760
      75,    76,    77,    78,    79,    80,    81,    82,    83,     4,
1761
       0,     5,     6,     7,     8,     0,     0,    84,     9,    10,
1762
       0,    11,     0,     0,     0,     0,     0,     0,    85,    86,
1763
       0,    87,     0,    88,    89,    90,    91,   916,     0,     0,
1764
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1765
       0,     0,     0,     0,     0,     0,     0,     0,    12,    13,
1766
       0,     0,     0,    14,     0,    15,    16,    17,    18,    19,
1767
      20,    21,    22,    23,     0,    24,     0,     0,     0,    25,
1768
      26,    27,    28,    29,    30,    31,    32,     0,    33,     0,
1769
       0,    34,    35,    36,    37,     0,    38,    39,    40,     0,
1770
      41,     0,    42,     0,    43,     0,     0,    44,     0,     0,
1771
       0,    45,    46,    47,    48,    49,    50,     0,    52,    53,
1772
       0,     0,     0,     0,    55,    56,     0,     0,     0,     0,
1773
       0,     0,     0,     0,   134,     0,    60,    61,    62,     0,
1774
       0,     0,     0,     0,     0,     0,     0,    69,    70,     0,
1775
      71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
1776
      81,    82,    83,     4,     0,     5,     6,     7,     8,     0,
1777
       0,    84,     9,    10,     0,    11,     0,     0,     0,     0,
1778
       0,     0,    85,    86,     0,    87,     0,    88,    89,    90,
1779
      91,  1027,     0,     0,     0,     0,     0,     0,     0,     0,
1780
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1781
       0,     0,    12,    13,     0,     0,     0,    14,     0,    15,
1782
      16,    17,    18,    19,    20,    21,    22,    23,     0,    24,
1783
       0,     0,     0,    25,    26,    27,    28,    29,    30,    31,
1784
      32,     0,    33,     0,     0,    34,    35,    36,    37,     0,
1785
      38,    39,    40,     0,    41,     0,    42,     0,    43,     0,
1786
       0,    44,     0,     0,     0,    45,    46,    47,    48,    49,
1787
      50,     0,    52,    53,     0,     0,     0,     0,    55,    56,
1788
       0,     0,     0,     0,     0,     0,     0,     0,   134,     0,
1789
      60,    61,    62,     0,     0,     0,     0,     0,     0,     0,
1790
       0,    69,    70,     0,    71,    72,    73,    74,    75,    76,
1791
      77,    78,    79,    80,    81,    82,    83,     4,     0,     5,
1792
       6,     7,     8,     0,     0,    84,     9,    10,     0,    11,
1793
       0,     0,     0,     0,     0,     0,    85,    86,     0,    87,
1794
       0,    88,    89,    90,    91,     0,     0,     0,     0,     0,
1795
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1796
       0,     0,     0,     0,     0,     0,    12,    13,     0,     0,
1797
       0,    14,     0,    15,    16,    17,    18,    19,    20,    21,
1798
      22,    23,     0,    24,     0,     0,     0,    25,    26,    27,
1799
      28,    29,    30,    31,    32,     0,    33,     0,     0,    34,
1800
      35,    36,    37,     0,    38,    39,    40,     0,    41,     0,
1801
      42,     0,    43,     0,     0,    44,     0,     0,     0,    45,
1802
      46,    47,    48,    49,    50,     0,    52,    53,     0,     0,
1803
       0,     0,    55,    56,     0,     0,     0,     0,     0,     0,
1804
       0,     0,   134,     0,    60,    61,    62,     0,     0,     0,
1805
       0,     0,     0,     0,     0,    69,    70,     0,    71,    72,
1806
      73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
1807
      83,     4,     0,     5,     6,     7,     8,     0,     0,    84,
1808
       9,    10,     0,    11,     0,     0,     0,     0,     0,     0,
1809
      85,    86,     0,    87,     0,    88,    89,    90,    91,     0,
1810
       0,     0,     0,     0,     0,   332,   333,     0,     0,     0,
1811
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1812
      12,    13,     0,     0,     0,    14,     0,    15,    16,    17,
1813
      18,    19,    20,    21,    22,    23,     0,    24,     0,     0,
1814
       0,    25,    26,   132,    28,    29,    30,    31,     0,     0,
1815
      33,     0,     0,    34,    35,    36,     0,     0,     0,     0,
1816
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1817
       0,     0,     0,    45,     0,     0,     0,    49,    50,     0,
1818
       0,     0,     0,     0,     0,     0,     0,   133,     0,     0,
1819
       0,     0,     0,     0,     0,     0,   134,     0,     0,    61,
1820
      62,     0,     0,     0,     0,     0,     0,     0,     0,   334,
1821
      70,     0,    71,    72,    73,    74,    75,    76,    77,    78,
1822
      79,    80,    81,    82,     0,     4,     0,     5,     6,     7,
1823
       8,     0,     0,    84,     9,    10,     0,    11,     0,   335,
1824
       0,     0,     0,     0,     0,    86,     0,     0,     0,    88,
1825
      89,    90,    91,     0,     0,     0,     0,     0,     0,   332,
1826
     333,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1827
       0,     0,     0,     0,    12,    13,     0,     0,     0,    14,
1828
       0,    15,    16,    17,    18,    19,    20,    21,    22,    23,
1829
       0,    24,     0,     0,     0,    25,    26,   132,    28,    29,
1830
      30,    31,     0,     0,    33,     0,     0,    34,    35,    36,
1831
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1832
       0,     0,     0,     0,     0,     0,     0,    45,     0,     0,
1833
       0,    49,    50,     0,     0,     0,     0,     0,     0,     0,
1834
       0,   133,     0,     0,     0,     0,     0,     0,     0,     0,
1835
     134,     0,     0,    61,    62,     0,     0,     0,     0,     0,
1836
       0,     0,     0,    69,    70,     0,    71,    72,    73,    74,
1837
      75,    76,    77,    78,    79,    80,    81,    82,     0,     4,
1838
       0,     5,     6,     7,     8,     0,     0,    84,     9,    10,
1839
       0,    11,     0,     0,     0,     0,     0,     0,     0,    86,
1840
       0,     0,     0,    88,    89,    90,    91,     0,     0,     0,
1841
       0,     0,     0,   332,   333,     0,     0,     0,     0,     0,
1842
       0,     0,     0,     0,     0,     0,     0,     0,    12,    13,
1843
       0,     0,     0,    14,     0,    15,    16,    17,    18,    19,
1844
      20,    21,    22,    23,     0,    24,     0,     0,     0,    25,
1845
      26,   132,    28,    29,    30,    31,     0,     0,    33,     0,
1846
       0,    34,    35,    36,     0,     0,     0,     0,     0,     0,
1847
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1848
       0,    45,     0,     0,     0,    49,    50,     0,     0,     0,
1849
       0,     0,     0,     0,     0,   133,     0,     0,     0,     0,
1850
       0,     0,     0,     0,   134,     0,     0,    61,    62,     0,
1851
       0,     0,     0,     0,     0,     0,     0,   708,    70,     0,
1852
      71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
1853
      81,    82,     0,     4,     0,     5,     6,     7,     8,     0,
1854
       0,    84,     9,    10,     0,    11,     0,     0,     0,     0,
1855
       0,     0,     0,    86,     0,     0,     0,    88,    89,    90,
1856
      91,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1857
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1858
       0,     0,    12,    13,     0,     0,     0,    14,     0,    15,
1859
      16,    17,    18,    19,    20,    21,    22,    23,     0,    24,
1860
       0,     0,     0,    25,    26,   132,    28,    29,    30,    31,
1861
       0,     0,    33,     0,     0,    34,    35,    36,     0,     0,
1862
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1863
       0,     0,     0,     0,     0,    45,     0,     0,     0,    49,
1864
      50,     0,     0,     0,     0,     0,     0,     0,     0,   133,
1865
       0,     0,     0,     0,     0,     0,     0,     0,   134,     0,
1866
       0,    61,    62,     0,     0,     0,     0,     0,     0,     0,
1867
       0,    69,    70,     0,    71,    72,    73,    74,    75,    76,
1868
      77,    78,    79,    80,    81,    82,   478,     4,     0,     5,
1869
       6,     7,     8,     0,     0,    84,     9,    10,     0,    11,
1870
       0,     0,     0,     0,     0,     0,     0,    86,     0,     0,
1871
       0,    88,    89,    90,    91,     0,     0,     0,     0,     0,
1872
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1873
       0,     0,     0,     0,     0,     0,    12,    13,     0,     0,
1874
       0,    14,     0,    15,    16,    17,    18,    19,    20,    21,
1875
      22,    23,     0,    24,     0,     0,     0,    25,    26,   132,
1876
      28,    29,    30,    31,     0,     0,    33,   536,     0,    34,
1877
      35,    36,     0,     0,     0,     0,     0,     0,     0,     0,
1878
       0,     0,     0,     0,     0,     0,     0,     0,     0,    45,
1879
       0,     0,     0,    49,    50,     0,     0,     0,     0,     0,
1880
       0,     0,     0,   133,     0,     0,     0,     0,     0,     0,
1881
       0,     0,   134,     0,     0,    61,    62,     0,     0,     0,
1882
       0,     0,     0,     0,     0,    69,    70,     0,    71,    72,
1883
      73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
1884
       0,     4,     0,     5,     6,     7,     8,     0,     0,    84,
1885
       9,    10,     0,    11,     0,     0,     0,     0,     0,     0,
1886
       0,    86,     0,     0,     0,    88,    89,    90,    91,   568,
1887
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1888
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1889
      12,    13,     0,     0,     0,    14,     0,    15,    16,    17,
1890
      18,    19,    20,    21,    22,    23,     0,    24,     0,     0,
1891
       0,    25,    26,   132,    28,    29,    30,    31,     0,     0,
1892
      33,     0,     0,    34,    35,    36,     0,     0,     0,     0,
1893
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1894
       0,     0,     0,    45,     0,     0,     0,    49,    50,     0,
1895
       0,     0,     0,     0,     0,     0,     0,   133,     0,     0,
1896
       0,     0,     0,     0,     0,     0,   134,     0,     0,    61,
1897
      62,     0,     0,     0,     0,     0,     0,     0,     0,    69,
1898
      70,     0,    71,    72,    73,    74,    75,    76,    77,    78,
1899
      79,    80,    81,    82,     0,     4,     0,     5,     6,     7,
1900
       8,     0,     0,    84,     9,    10,     0,    11,     0,     0,
1901
       0,     0,     0,     0,     0,    86,     0,     0,     0,    88,
1902
      89,    90,    91,   -47,     0,     0,     0,     0,     0,     0,
1903
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1904
       0,     0,     0,     0,    12,    13,     0,     0,     0,    14,
1905
       0,    15,    16,    17,    18,    19,    20,    21,    22,    23,
1906
       0,    24,     0,     0,     0,    25,    26,   132,    28,    29,
1907
      30,    31,     0,     0,    33,     0,     0,    34,    35,    36,
1908
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1909
       0,     0,     0,     0,     0,     0,     0,    45,     0,     0,
1910
       0,    49,    50,     0,     0,     0,     0,     0,     0,     0,
1911
       0,   133,     0,     0,     0,     0,     0,     0,     0,     0,
1912
     134,     0,     0,    61,    62,     0,     0,     0,     0,     0,
1913
       0,     0,     0,    69,    70,     0,    71,    72,    73,    74,
1914
      75,    76,    77,    78,    79,    80,    81,    82,     0,     0,
1915
       4,     0,     5,     6,     7,     8,     0,    84,     0,     9,
1916
      10,     0,    11,     0,     0,     0,     0,     0,     0,    86,
1917
       0,     0,     0,    88,    89,    90,    91,   732,     0,     0,
1918
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1919
       0,     0,     0,     0,     0,     0,     0,     0,     0,    12,
1920
      13,     0,     0,     0,    14,     0,    15,    16,    17,    18,
1921
      19,    20,    21,    22,    23,     0,    24,     0,     0,     0,
1922
      25,    26,   132,    28,    29,    30,    31,     0,     0,    33,
1923
       0,     0,    34,    35,    36,     0,     0,     0,     0,     0,
1924
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1925
       0,     0,    45,     0,     0,     0,    49,    50,     0,     0,
1926
       0,     0,     0,     0,     0,     0,   133,     0,     0,     0,
1927
       0,     0,     0,     0,     0,   134,     0,     0,    61,    62,
1928
       0,     0,     0,     0,     0,     0,     0,     0,    69,    70,
1929
       0,    71,    72,    73,    74,    75,    76,    77,    78,    79,
1930
      80,    81,    82,     0,     4,     0,     5,     6,     7,     8,
1931
       0,     0,    84,     9,    10,     0,    11,     0,     0,     0,
1932
       0,     0,     0,     0,    86,     0,     0,     0,    88,    89,
1933
      90,    91,     0,     0,     0,     0,     0,     0,     0,     0,
1934
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1935
       0,     0,     0,    12,    13,     0,     0,     0,    14,     0,
1936
      15,    16,    17,    18,    19,    20,    21,    22,    23,     0,
1937
      24,     0,     0,     0,    25,    26,   132,    28,    29,    30,
1938
      31,     0,     0,    33,     0,     0,    34,    35,    36,     0,
1939
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1940
       0,     0,     0,     0,     0,     0,    45,     0,     0,     0,
1941
      49,    50,     0,     0,     0,     0,     0,     0,     0,     0,
1942
     133,     0,     0,     0,     0,     0,     0,     0,     0,   134,
1943
       0,     0,    61,    62,     0,     0,     0,     0,     0,     0,
1944
       0,     0,    69,    70,     0,    71,    72,    73,    74,    75,
1945
      76,    77,    78,    79,    80,    81,    82,   751,     4,     0,
1946
       5,     6,     7,     8,     0,     0,    84,     9,    10,     0,
1947
      11,     0,     0,     0,     0,     0,     0,     0,    86,     0,
1948
       0,     0,    88,    89,    90,    91,     0,     0,     0,     0,
1949
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1950
       0,     0,     0,     0,     0,     0,     0,    12,    13,     0,
1951
       0,     0,    14,     0,    15,    16,    17,    18,    19,    20,
1952
      21,    22,    23,     0,    24,     0,     0,     0,    25,    26,
1953
     132,    28,    29,    30,    31,     0,     0,    33,     0,     0,
1954
      34,    35,    36,     0,     0,     0,     0,     0,     0,     0,
1955
       0,     0,     0,     0,     0,     0,     0,     0,     0,   855,
1956
      45,     0,     0,     0,    49,    50,     0,     0,     0,     0,
1957
       0,     0,     0,     0,   133,     0,     0,     0,     0,     0,
1958
       0,     0,     0,   134,     0,     0,    61,    62,     0,     0,
1959
       0,     0,     0,     0,     0,     0,    69,    70,     0,    71,
1960
      72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
1961
      82,     0,     4,     0,     5,     6,     7,     8,     0,     0,
1962
      84,     9,    10,     0,    11,     0,     0,     0,     0,     0,
1963
       0,     0,    86,     0,     0,     0,    88,    89,    90,    91,
1964
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1965
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1966
       0,    12,    13,     0,     0,     0,    14,     0,    15,    16,
1967
      17,    18,    19,    20,    21,    22,    23,     0,    24,     0,
1968
       0,     0,    25,    26,   132,    28,    29,    30,    31,     0,
1969
       0,    33,     0,     0,    34,    35,    36,     0,     0,     0,
1970
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1971
       0,     0,     0,     0,    45,     0,     0,     0,    49,    50,
1972
       0,     0,     0,     0,     0,     0,     0,     0,   133,     0,
1973
       0,     0,     0,     0,     0,     0,     0,   134,     0,     0,
1974
      61,    62,     0,     0,     0,     0,     0,     0,     0,     0,
1975
      69,    70,     0,    71,    72,    73,    74,    75,    76,    77,
1976
      78,    79,    80,    81,    82,     0,     4,     0,     5,     6,
1977
       7,     8,     0,     0,    84,     9,    10,     0,    11,     0,
1978
       0,     0,     0,     0,     0,     0,    86,     0,     0,     0,
1979
      88,    89,    90,    91,     0,     0,     0,     0,     0,     0,
1980
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1981
       0,     0,     0,     0,     0,    12,    13,     0,     0,     0,
1982
      14,     0,    15,    16,    17,    18,    19,    20,    21,    22,
1983
      23,     0,    24,     0,     0,     0,    25,    26,   132,    28,
1984
      29,    30,    31,     0,     0,    33,     0,     0,    34,    35,
1985
      36,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1986
       0,     0,     0,     0,     0,     0,     0,     0,    45,     0,
1987
       0,     0,    49,    50,     0,     0,     0,     0,     0,     0,
1988
       0,     0,   133,     0,     0,     0,     0,     0,     0,     0,
1989
       0,   134,     0,     0,    61,    62,     0,     0,     0,     0,
1990
       0,     0,     0,     0,    69,    70,     0,    71,    72,    73,
1991
      74,    75,    76,    77,    78,    79,    80,    81,    82,     0,
1992
       0,     0,     0,     0,     0,     0,     0,   225,    84,   226,
1993
     227,   228,   229,   230,   231,   232,   233,   234,     0,     0,
1994
     157,     0,     0,     0,    88,    89,    90,    91,   365,   366,
1995
     367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
1996
     377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
1997
     387,   388,   389,     0,   390,     0,     0,     0,     0,     0,
1998
       0,     0,   235,     0,   391,     0,     0,     0,     0,     0,
1999
       0,     0,     0,   236,     0,   237,   238,     0,     0,   429,
2000
      28,    29,    30,     0,     0,     0,     0,     0,     0,   241,
2001
     242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
2002
     252,   253,   254,   255,   256,   257,   258,   259,   260,   261,
2003
     262,   263,   264,   265,   266,   267,   268,   269,   270,   271,
2004
     272,   273,   274,  1081,   276,   277,   278,   279,   280,     0,
2005
       0,     0,   281,   282,   283,   284,   285,     0,   286,   287,
2006
     288,   289,   290,   291,   292,   293,   294,   295,   296,   297,
2007
     298,   299,   300,   301,   302,   303,   304,   225,     0,   226,
2008
     227,   228,   229,   230,   231,   232,   233,   234,     0,     0,
2009
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2010
       0,     0,     0,     0,  1082,   367,   368,   369,   370,   371,
2011
     372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
2012
     382,   383,   384,   385,   386,   387,   388,   389,     0,   390,
2013
       0,     0,   235,     0,     0,     0,     0,     0,     0,   391,
2014
       0,     0,     0,   236,     0,   237,   238,     0,     0,   429,
2015
      28,    29,    30,     0,     0,     0,     0,     0,     0,   241,
2016
     242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
2017
     252,   253,   254,   255,   256,   257,   258,   259,   260,   261,
2018
     262,   263,   264,   265,   266,   267,   268,   269,   270,   271,
2019
     272,   273,   274,  1081,   276,   277,   278,   279,   280,     0,
2020
       0,     0,   281,   282,   283,   284,   285,     0,   286,   287,
2021
     288,   289,   290,   291,   292,   293,   294,   295,   296,   297,
2022
     298,   299,   300,   301,   302,   303,   304,     0,   225,     0,
2023
     226,   227,   228,   229,   230,   231,   232,   233,   234,     0,
2024
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2025
       0,     0,     0,     0,  1115,   782,   368,   369,   370,   371,
2026
     372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
2027
     382,   383,   384,   385,   386,   387,   388,   389,     0,   390,
2028
       0,     0,     0,   235,     0,     0,     0,     0,     0,   391,
2029
       0,     0,     0,     0,   236,     0,   237,   238,     0,     0,
2030
    1054,    28,    29,    30,     0,     0,     0,     0,     0,     0,
2031
     241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
2032
     251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
2033
     261,   262,   263,   264,   265,   266,   267,   268,   269,   270,
2034
     271,   272,   273,   274,  1055,   276,   277,   278,   279,   280,
2035
       0,     0,     0,   281,   282,   283,   284,   285,     0,   286,
2036
     287,   288,   289,   290,   291,   292,   293,  1056,  1057,   296,
2037
     297,   298,   299,   300,   301,   302,   303,   304,     0,     0,
2038
     361,   362,   363,     0,     0,     0,     0,     0,     0,     0,
2039
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2040
       0,   364,   786,   365,   366,   367,   368,   369,   370,   371,
2041
     372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
2042
     382,   383,   384,   385,   386,   387,   388,   389,     0,   390,
2043
     361,   362,   363,     0,     0,     0,     0,     0,     0,   391,
2044
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2045
       0,   364,     0,   365,   366,   367,   368,   369,   370,   371,
2046
     372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
2047
     382,   383,   384,   385,   386,   387,   388,   389,     0,   390,
2048
     361,   362,   363,     0,     0,     0,     0,     0,     0,   391,
2049
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2050
       0,   364,     0,   365,   366,   367,   368,   369,   370,   371,
2051
     372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
2052
     382,   383,   384,   385,   386,   387,   388,   389,     0,   390,
2053
       0,   361,   362,   363,     0,     0,     0,     0,     0,   391,
2054
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2055
       0,   703,   364,     0,   365,   366,   367,   368,   369,   370,
2056
     371,   372,   373,   374,   375,   376,   377,   378,   379,   380,
2057
     381,   382,   383,   384,   385,   386,   387,   388,   389,     0,
2058
     390,   361,   362,   363,     0,     0,     0,     0,     0,     0,
2059
     391,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2060
       0,   713,   364,     0,   365,   366,   367,   368,   369,   370,
2061
     371,   372,   373,   374,   375,   376,   377,   378,   379,   380,
2062
     381,   382,   383,   384,   385,   386,   387,   388,   389,     0,
2063
     390,   361,   362,   363,     0,     0,     0,     0,     0,     0,
2064
     391,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2065
       0,   833,   364,     0,   365,   366,   367,   368,   369,   370,
2066
     371,   372,   373,   374,   375,   376,   377,   378,   379,   380,
2067
     381,   382,   383,   384,   385,   386,   387,   388,   389,     0,
2068
     390,     0,   361,   362,   363,     0,     0,     0,     0,     0,
2069
     391,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2070
       0,     0,   834,   364,     0,   365,   366,   367,   368,   369,
2071
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2072
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2073
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2074
       0,   391,     0,     0,     0,     0,     0,     0,     0,     0,
2075
       0,     0,   835,   364,     0,   365,   366,   367,   368,   369,
2076
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2077
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2078
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2079
       0,   391,     0,     0,     0,     0,     0,     0,     0,     0,
2080
       0,  1133,     0,   364,     0,   365,   366,   367,   368,   369,
2081
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2082
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2083
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2084
       0,   391,     0,     0,     0,     0,     0,   637,     0,     0,
2085
       0,   542,     0,   364,     0,   365,   366,   367,   368,   369,
2086
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2087
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2088
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2089
       0,   391,     0,     0,     0,     0,     0,     0,     0,     0,
2090
       0,   542,     0,   364,     0,   365,   366,   367,   368,   369,
2091
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2092
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2093
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2094
       0,   391,     0,     0,     0,     0,     0,     0,     0,     0,
2095
       0,   638,     0,   364,     0,   365,   366,   367,   368,   369,
2096
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2097
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2098
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2099
       0,   391,     0,     0,     0,     0,     0,     0,     0,     0,
2100
       0,   639,     0,   364,     0,   365,   366,   367,   368,   369,
2101
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2102
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2103
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2104
       0,   391,     0,     0,     0,     0,     0,     0,     0,     0,
2105
       0,   648,     0,   364,     0,   365,   366,   367,   368,   369,
2106
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2107
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2108
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2109
       0,   391,     0,     0,     0,     0,     0,     0,     0,     0,
2110
       0,   651,     0,   364,     0,   365,   366,   367,   368,   369,
2111
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2112
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2113
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2114
       0,   391,     0,     0,     0,     0,     0,     0,     0,     0,
2115
       0,   657,     0,   364,     0,   365,   366,   367,   368,   369,
2116
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2117
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2118
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2119
       0,   391,     0,     0,     0,     0,     0,     0,     0,     0,
2120
       0,   658,     0,   364,     0,   365,   366,   367,   368,   369,
2121
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2122
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2123
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2124
       0,   391,     0,     0,     0,     0,     0,     0,     0,     0,
2125
       0,   676,     0,   364,     0,   365,   366,   367,   368,   369,
2126
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2127
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2128
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2129
       0,   391,     0,     0,     0,     0,     0,     0,     0,     0,
2130
       0,   692,     0,   364,     0,   365,   366,   367,   368,   369,
2131
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2132
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2133
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2134
       0,   391,     0,     0,     0,     0,     0,     0,     0,     0,
2135
       0,   809,     0,   364,  1034,   365,   366,   367,   368,   369,
2136
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2137
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2138
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2139
       0,   391,     0,     0,     0,     0,     0,     0,     0,     0,
2140
       0,   810,     0,   364,     0,   365,   366,   367,   368,   369,
2141
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2142
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2143
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2144
       0,   391,     0,     0,     0,     0,     0,     0,     0,     0,
2145
       0,   838,     0,   364,     0,   365,   366,   367,   368,   369,
2146
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2147
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2148
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2149
       0,   391,     0,     0,     0,     0,     0,     0,     0,  1035,
2150
       0,     0,     0,   364,     0,   365,   366,   367,   368,   369,
2151
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2152
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2153
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2154
       0,   391,     0,     0,     0,     0,     0,     0,     0,   392,
2155
       0,     0,     0,   364,     0,   365,   366,   367,   368,   369,
2156
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2157
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2158
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2159
       0,   391,     0,     0,     0,     0,     0,     0,     0,   530,
2160
       0,     0,     0,   364,     0,   365,   366,   367,   368,   369,
2161
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2162
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2163
       0,   390,   361,   362,   363,     0,     0,     0,     0,     0,
2164
       0,   391,     0,     0,     0,     0,     0,   332,   333,  1201,
2165
       0,     0,     0,   364,     0,   365,   366,   367,   368,   369,
2166
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
2167
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
2168
       0,   390,     0,     0,     0,   132,    28,    29,    30,    31,
2169
       0,   391,    33,     0,     0,     0,   313,     0,   886,     0,
2170
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2171
       0,     0,     0,     0,     0,     0,   225,     0,   226,   227,
2172
     228,   229,   230,   231,   232,   233,   234,     0,     0,   162,
2173
       0,     0,     0,     0,     0,     0,     0,     0,   134,     0,
2174
       0,     0,     0,     0,     0,     0,     0,  -409,     0,     0,
2175
       0,   753,    70,     0,    71,    72,    73,    74,    75,    76,
2176
      77,    78,    79,     0,     0,     0,     0,     0,     0,     0,
2177
       0,   235,     0,     0,     0,     0,     0,     0,     0,     0,
2178
       0,     0,   236,     0,   237,   238,     0,   314,  1141,     0,
2179
       0,   754,     0,    90,    91,     0,     0,  -406,   241,   242,
2180
     243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
2181
     253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
2182
     263,   264,   265,   266,   267,   268,   269,   270,   271,   272,
2183
     273,   274,   813,   814,   815,   816,   817,   818,   819,   820,
2184
     821,   822,   282,   283,   284,   285,     0,   286,   287,   288,
2185
     289,   290,   291,   292,   293,   294,   295,   296,   297,   298,
2186
     299,   300,   301,   302,   303,   304,   225,   363,   226,   227,
2187
     228,   229,   230,   231,   232,   233,   234,     0,     0,     0,
2188
       0,     0,     0,     0,     0,     0,   364,     0,   365,   366,
2189
     367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
2190
     377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
2191
     387,   388,   389,     0,   390,     0,     0,     0,     0,     0,
2192
       0,   235,     0,     0,   391,     0,     0,     0,     0,     0,
2193
       0,     0,   236,     0,   237,   238,     0,     0,   239,     0,
2194
       0,   240,     0,     0,     0,     0,     0,     0,   241,   242,
2195
     243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
2196
     253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
2197
     263,   264,   265,   266,   267,   268,   269,   270,   271,   272,
2198
     273,   274,   275,   276,   277,   278,   279,   280,     0,     0,
2199
       0,   281,   282,   283,   284,   285,     0,   286,   287,   288,
2200
     289,   290,   291,   292,   293,   294,   295,   296,   297,   298,
2201
     299,   300,   301,   302,   303,   304,   225,     0,   226,   227,
2202
     228,   229,   230,   231,   232,   233,   234,   370,   371,   372,
2203
     373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
2204
     383,   384,   385,   386,   387,   388,   389,     0,   390,     0,
2205
       0,     0,     0,     0,     0,     0,     0,     0,   391,     0,
2206
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2207
       0,   235,     0,     0,     0,     0,     0,     0,     0,     0,
2208
       0,     0,   236,     0,   237,   238,     0,     0,   239,     0,
2209
       0,     0,     0,     0,     0,     0,     0,     0,   241,   242,
2210
     243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
2211
     253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
2212
     263,   264,   265,   266,   267,   268,   269,   270,   271,   272,
2213
     273,   274,   275,   276,   277,   278,   279,   280,     0,     0,
2214
       0,   281,   282,   283,   284,   285,     0,   286,   287,   288,
2215
     289,   290,   291,   292,   293,   294,   295,   296,   297,   298,
2216
     299,   300,   301,   302,   303,   304,   225,     0,   226,   227,
2217
     228,   229,   230,   231,   232,   233,   234,   372,   373,   374,
2218
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2219
     385,   386,   387,   388,   389,     0,   390,     0,     0,     0,
2220
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2221
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2222
       0,   235,     0,     0,     0,     0,     0,     0,     0,     0,
2223
       0,     0,   236,     0,   237,   238,     0,     0,  1098,     0,
2224
       0,     0,     0,     0,     0,     0,     0,     0,   241,   242,
2225
     243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
2226
     253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
2227
     263,   264,   265,   266,   267,   268,   269,   270,   271,   272,
2228
     273,   274,   275,   276,   277,   278,   279,   280,     0,     0,
2229
       0,   281,   282,   283,   284,   285,     0,   286,   287,   288,
2230
     289,   290,   291,   292,   293,   294,   295,   296,   297,   298,
2231
     299,   300,   301,   302,   303,   304,   132,    28,    29,    30,
2232
      31,     0,     0,    33,     0,     0,     0,   313,  -608,  -608,
2233
    -608,  -608,  -608,   377,   378,   379,   380,   381,   382,   383,
2234
     384,   385,   386,   387,   388,   389,     0,   390,     0,     0,
2235
       0,     0,     0,     0,     0,     0,     0,   391,     0,     0,
2236
     162,     0,     0,     0,     0,     0,     0,     0,     0,   134,
2237
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2238
       0,     0,     0,    70,     0,    71,    72,    73,    74,    75,
2239
      76,    77,    78,    79,     0,     0,     0,     0,     0,     0,
2240
       0,     0,     0,     0,     0,   361,   362,   363,     0,     0,
2241
       0,     0,     0,     0,     0,     0,     0,     0,   314,     0,
2242
       0,     0,   315,     0,    90,    91,   364,     0,   365,   366,
2243
     367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
2244
     377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
2245
     387,   388,   389,     0,   390,     0,     0,     0,     0,     0,
2246
       0,     0,     0,     0,   391,     0,     0,     0,     0,     0,
2247
       0,     0,     0,     0,   361,   362,   363,     0,     0,   552,
2248
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2249
       0,     0,     0,     0,     0,   364,   655,   365,   366,   367,
2250
     368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
2251
     378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
2252
     388,   389,     0,   390,   361,   362,   363,     0,     0,     0,
2253
       0,     0,     0,   391,     0,     0,     0,     0,     0,     0,
2254
       0,     0,     0,     0,     0,   364,   719,   365,   366,   367,
2255
     368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
2256
     378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
2257
     388,   389,     0,   390,   361,   362,   363,     0,     0,     0,
2258
       0,     0,     0,   391,     0,     0,     0,     0,     0,     0,
2259
       0,     0,     0,     0,     0,   364,     0,   365,   366,   367,
2260
     368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
2261
     378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
2262
     388,   389,     0,   390,   362,   363,     0,     0,     0,     0,
2263
       0,     0,     0,   391,     0,     0,     0,     0,     0,     0,
2264
       0,     0,     0,     0,   364,     0,   365,   366,   367,   368,
2265
     369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
2266
     379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
2267
     389,   419,   390,     0,     0,     0,     0,     0,     0,     0,
2268
       0,     0,   391,     0,     0,     0,     0,   364,     0,   365,
2269
     366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
2270
     376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
2271
     386,   387,   388,   389,     0,   390,     0,     0,     0,     0,
2272
       0,     0,     0,     0,     0,   391
2273
};
2274
2275
static const yytype_int16 yycheck[] =
2276
{
2277
       2,    35,     2,   116,    81,    82,     2,    81,    82,    56,
2278
      54,    80,   469,   115,   116,   776,    47,    16,    81,    82,
2279
      35,    52,    14,    31,   137,   205,    81,    82,    14,    68,
2280
     722,    79,   829,    35,    35,   137,   978,    79,   980,  1023,
2281
     766,  1025,    14,    14,   770,    14,   521,    94,    31,  1133,
2282
     507,    79,   310,   311,   511,    31,    37,   315,    37,   760,
2283
       0,   714,   100,   875,   684,   100,    31,   313,   525,    81,
2284
      82,   177,    31,   109,   110,    79,  1160,    81,   174,  1009,
2285
     176,   109,   110,    35,    94,   738,   133,   177,   135,   827,
2286
      75,    76,    77,    78,    94,    75,   176,    75,    94,   179,
2287
     101,   177,   873,     4,     5,     6,     7,     8,     9,    10,
2288
      11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
2289
      21,    22,    23,    24,   100,   135,    75,    79,   940,  1059,
2290
      79,   179,   170,   169,   119,   170,   184,    38,     2,   831,
2291
     217,   966,   184,   217,   390,    46,    47,  1131,   128,   961,
2292
     851,    52,   853,   177,   217,   952,   166,   142,   143,   897,
2293
     898,   205,   217,   167,   168,   166,   167,    75,   103,   104,
2294
    1100,   179,  1156,  1157,   945,    39,    30,   103,   104,   183,
2295
     179,   942,    83,   954,  1009,    86,   178,    88,   808,    35,
2296
     176,    37,   177,   179,   177,  1179,    30,   178,    58,   178,
2297
    1012,  1185,   399,  1187,   177,   217,   178,   178,    68,   178,
2298
     685,   949,   938,  1197,  1026,   177,   836,   176,    79,   177,
2299
      81,    75,    76,    77,    78,    75,    76,    77,    78,    79,
2300
     179,   174,  1003,   176,  1176,   184,   974,   975,   976,   977,
2301
    1011,    75,    76,    77,    78,   180,    75,    76,    77,    78,
2302
     327,    71,    72,   327,   180,   635,   157,   637,    79,   336,
2303
     161,   177,   336,   164,   327,   119,   646,   464,   465,   119,
2304
     157,   158,   327,   336,   175,    79,   174,   178,   312,   313,
2305
     178,   336,   183,   184,   185,   177,   187,   188,   142,   143,
2306
     179,   549,  1063,    79,   181,    81,   169,   312,   313,    75,
2307
     402,  1072,    78,   350,   177,   166,   167,   168,   142,   143,
2308
     767,   313,   313,   142,   143,   327,   169,   218,   219,    79,
2309
     500,    81,  1119,   177,   336,   394,   177,   177,   197,   331,
2310
      79,   174,    81,   176,   184,   331,   179,    37,    38,    53,
2311
     782,   120,   121,   177,   786,   166,   167,   168,   177,   128,
2312
      75,    76,    77,    78,    79,   134,   390,   396,   397,  1120,
2313
      79,    75,    81,   167,   168,    79,  1163,   177,   825,   400,
2314
      84,    75,    76,    77,    78,   390,  1147,   109,   110,    79,
2315
     166,   167,   168,   177,  1155,    75,    76,   119,    78,   436,
2316
      75,  1162,   177,    78,   119,   120,   121,   431,   855,   177,
2317
     857,  1172,   859,   128,    71,    72,   177,   167,   168,   310,
2318
     311,   868,   169,   314,   315,   119,   431,   169,   167,   168,
2319
      59,   153,    89,   174,   109,   326,   111,   178,   153,   431,
2320
     431,   157,   158,   174,   335,   176,   467,   879,   880,   881,
2321
     882,   174,   175,   169,    68,   178,   347,   516,   167,   168,
2322
     552,   177,   177,    92,   177,   181,   500,   134,  1150,   184,
2323
     361,   362,   363,   364,   365,   366,   367,   368,   369,   370,
2324
     371,   372,   373,   374,   375,   376,   377,   378,   379,   380,
2325
     381,   382,   383,   384,   385,   386,   387,   388,   389,   169,
2326
     391,   493,    92,   357,  1186,   134,   754,   493,   545,   400,
2327
     176,   402,   403,   404,   405,   406,   407,   408,   409,   410,
2328
     411,   412,   413,   414,   415,   157,   158,   176,   419,   420,
2329
     421,   422,   423,   424,   425,   426,   174,   428,   176,    75,
2330
      76,   600,    78,   172,    16,   545,   157,   158,   176,   181,
2331
     617,   176,   174,   617,   176,   545,   176,   805,   169,   545,
2332
     451,   120,   121,   655,   617,    75,    76,    77,    78,   128,
2333
     181,    16,   617,   109,   178,   111,   467,   157,   158,    75,
2334
      76,    77,    78,   474,   102,   103,   104,   478,   655,   169,
2335
      75,   655,   157,   158,   153,   843,    75,   177,   489,    75,
2336
     659,   181,   655,   176,   169,   672,   157,   158,   672,   119,
2337
     655,    75,   177,   504,   177,   617,   181,   179,   169,   672,
2338
     120,   121,  1069,   682,   157,   158,   175,   672,   128,   174,
2339
     181,   176,   142,   143,    37,    38,    75,    76,    77,    78,
2340
      79,   182,   709,   157,   158,   709,   142,   143,   181,   102,
2341
     103,   104,   177,   655,   678,   169,   709,   681,   549,   174,
2342
      35,   552,    37,   554,   709,   689,   174,   181,   176,   560,
2343
     672,   562,   174,   678,   176,    31,   681,   568,   683,   177,
2344
     119,   120,   121,   174,   689,   176,   174,   175,   755,   128,
2345
     178,   755,   109,   110,   686,   134,   686,   180,   181,   177,
2346
     686,   176,   755,   177,   563,   114,   115,   709,   880,   881,
2347
     755,   602,   975,   976,   153,   606,    89,    90,   777,    31,
2348
     611,    31,   109,   110,   111,   717,    31,    31,   720,    31,
2349
     722,   717,   119,   120,   121,   794,    31,    31,   177,    31,
2350
      31,   128,    31,   634,   635,   184,   637,   134,   135,   136,
2351
     137,    31,   776,   755,   846,   646,    54,    55,    56,   650,
2352
      58,    31,   653,   654,   174,   177,   153,   174,   176,   324,
2353
      68,   776,   401,   328,   174,    75,    79,   782,   179,   846,
2354
     176,   786,   846,   674,   174,   174,   138,   342,   176,   344,
2355
     345,   346,   138,   846,   648,    31,   179,   651,   178,   178,
2356
     174,   846,    75,   795,   175,   795,    75,    16,   437,   795,
2357
     180,   702,    49,    50,    51,    52,    53,    54,    55,    56,
2358
     711,    58,   827,   823,   177,    75,   177,   177,   719,   177,
2359
     889,    68,   686,   177,   175,   178,   175,   179,   178,   831,
2360
     100,   179,   178,   178,   846,   837,   139,   839,   179,   908,
2361
     874,   837,    16,   839,   175,   177,    84,   175,   178,    35,
2362
     751,   178,   177,   754,    52,    53,    54,    55,    56,   874,
2363
      58,   762,   179,   174,   879,   880,   881,   882,   177,    55,
2364
      68,   873,   941,   742,   100,    35,   745,   177,   176,   176,
2365
     176,   174,   897,   898,   176,   174,    35,   526,   527,    37,
2366
     176,    31,   176,   895,   758,  1008,   797,   178,   174,   933,
2367
     178,   175,   177,   176,   805,    91,  1008,   174,   942,   180,
2368
     174,   174,   177,   179,    75,   174,    37,   919,   933,   180,
2369
      31,   179,  1024,   919,   179,   178,   180,   942,    38,    35,
2370
      35,   795,   116,    37,   949,   945,   178,   176,   178,   840,
2371
     841,   178,   843,   178,   176,   809,    14,    14,   111,   180,
2372
     109,   966,   954,    14,   950,   179,    37,   171,   179,   974,
2373
     975,   976,   977,   965,   177,  1004,   605,   176,   176,   965,
2374
     609,    79,    79,   176,   613,   614,   178,    16,    16,   848,
2375
    1049,    16,    16,   847,   986,    16,    16,    16,   179,    79,
2376
     986,   174,   179,   169,  1009,   176,  1065,   179,  1000,   176,
2377
     100,  1003,   117,   176,  1000,  1107,  1040,   169,  1047,  1011,
2378
     179,   178,   176,  1047,  1053,    79,    16,    75,  1119,   177,
2379
     177,   922,   891,   179,   178,  1040,  1095,   178,   929,   689,
2380
     931,    94,  1047,   205,  1036,  1037,    54,   846,   866,   500,
2381
    1036,  1037,   186,   672,   985,  1084,   929,   916,   895,   823,
2382
    1084,  1164,   949,  1122,   898,  1124,   786,   502,  1127,  1128,
2383
     157,  1063,  1164,   505,   945,   934,  1084,  1093,  1154,  1084,
2384
    1072,  1073,  1059,  1075,  1076,  1162,   490,  1073,  1100,  1075,
2385
    1076,   840,  1121,   474,   166,   653,  1120,  1107,   109,   110,
2386
     640,   397,   554,   994,   674,    -1,   997,  1166,   119,   120,
2387
     121,    -1,    -1,    -1,  1143,  1120,    -1,   128,    -1,  1178,
2388
      -1,    -1,    -1,   134,   135,   136,   137,    -1,    -1,   983,
2389
      -1,   985,   991,   992,    -1,    -1,    -1,   313,    -1,    -1,
2390
      -1,    -1,   153,  1135,    -1,    -1,  1138,    -1,  1140,  1135,
2391
      -1,    -1,  1138,    -1,  1140,  1147,    -1,    -1,  1150,    -1,
2392
      -1,    -1,  1162,  1155,    -1,    -1,    -1,    -1,  1027,    -1,
2393
      -1,    -1,    -1,    -1,    -1,  1034,  1035,    -1,    -1,    -1,
2394
    1172,    50,    51,    52,    53,    54,    55,    56,  1079,    58,
2395
      -1,    -1,    -1,    -1,  1186,    -1,  1188,    -1,    -1,    68,
2396
    1091,    -1,  1188,    -1,    -1,  1096,  1097,  1199,    -1,    -1,
2397
      -1,    -1,  1103,  1199,   390,    -1,    -1,    -1,    -1,    -1,
2398
     396,   397,   398,   399,   119,   120,   121,   122,   123,   124,
2399
     125,   126,   127,   128,    -1,    -1,    -1,    -1,    -1,    -1,
2400
      -1,  1132,    -1,   103,    -1,    -1,  1105,    -1,    -1,    -1,
2401
    1109,   111,    -1,  1112,    -1,   431,   116,  1148,   153,   119,
2402
     120,   121,   122,   123,   124,   125,   126,   127,   128,   129,
2403
      -1,   119,   120,   121,   122,   123,   124,   125,   126,   127,
2404
     128,    -1,    -1,    -1,    -1,   180,   462,    -1,   464,   465,
2405
     466,    -1,     3,   153,     5,     6,     7,     8,     9,    10,
2406
      11,    12,    13,  1194,    15,   153,    -1,    -1,    -1,   119,
2407
     120,   121,   122,   123,   124,   125,   126,   127,   128,    30,
2408
     180,    -1,    -1,    -1,    -1,  1184,   502,    -1,    -1,    -1,
2409
      -1,    -1,   180,    -1,    -1,    -1,    -1,  1196,    -1,    -1,
2410
      -1,    52,    53,   153,    -1,    -1,    57,    58,    59,    60,
2411
      61,    62,    63,    64,    65,    66,    67,    -1,    69,    -1,
2412
      71,    72,    73,    74,    75,    76,    77,    78,    79,    -1,
2413
     180,    82,    -1,    -1,    85,    86,    87,    88,    89,    90,
2414
      91,    92,    93,    94,    95,    96,    97,    98,    99,   100,
2415
     101,   102,   103,   104,   105,   106,   107,   108,   109,   110,
2416
     111,   112,   113,   114,   115,   116,   117,   118,   119,   120,
2417
     121,   122,   123,   124,    -1,    -1,    -1,   128,   129,   130,
2418
     131,   132,    -1,   134,   135,   136,   137,   138,   139,   140,
2419
     141,   142,   143,   144,   145,   146,   147,   148,   149,   150,
2420
     151,   152,   153,   154,   155,    -1,    -1,    -1,    -1,    -1,
2421
      -1,    -1,    -1,    -1,   165,    -1,    -1,    -1,    -1,    -1,
2422
     171,    -1,    -1,    -1,    -1,    -1,   177,   178,    -1,    -1,
2423
     181,   182,   183,   184,     3,    -1,     5,     6,     7,     8,
2424
       9,    10,    11,    12,    13,    -1,    15,    -1,    -1,   103,
2425
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   111,    -1,    -1,
2426
      -1,    30,    -1,    -1,    -1,   119,   120,   121,   122,   123,
2427
     124,   125,   126,   127,   128,   129,    -1,    -1,    -1,    -1,
2428
      -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,    58,
2429
      59,    60,    61,    62,    63,    64,    65,    66,    67,   153,
2430
      69,    -1,    71,    72,    73,    74,    75,    76,    77,    78,
2431
      79,    -1,    -1,    82,    -1,    -1,    85,    86,    87,    88,
2432
      89,    90,    91,    92,    93,    94,    95,    96,    97,    98,
2433
      99,   100,   101,   102,   103,   104,   105,   106,   107,   108,
2434
     109,   110,   111,   112,   113,   114,   115,   116,   117,   118,
2435
     119,   120,   121,   122,   123,   124,    -1,    -1,    -1,   128,
2436
     129,   130,   131,   132,    -1,   134,   135,   136,   137,   138,
2437
     139,   140,   141,   142,   143,   144,   145,   146,   147,   148,
2438
     149,   150,   151,   152,   153,   154,   155,    -1,    -1,    -1,
2439
      -1,    -1,    -1,    -1,    -1,    -1,   165,    -1,    -1,    -1,
2440
      -1,    -1,   171,    -1,    -1,    -1,    -1,    -1,   177,   178,
2441
      -1,    -1,   181,   182,   183,   184,     3,    -1,     5,     6,
2442
       7,     8,     9,    10,    11,    12,    13,    -1,    15,   119,
2443
     120,   121,   122,   123,   124,   125,   126,   127,   128,    -1,
2444
      -1,    -1,    -1,    30,    44,    45,    46,    47,    48,    49,
2445
      50,    51,    52,    53,    54,    55,    56,    -1,    58,    -1,
2446
      -1,    -1,    -1,   153,    -1,    52,    53,    -1,    68,    -1,
2447
      57,    58,    59,    60,    61,    62,    63,    64,    65,    66,
2448
      67,    -1,    69,    -1,    71,    72,    73,    74,    75,    76,
2449
      77,    78,    79,    -1,    -1,    82,    -1,    -1,    85,    86,
2450
      87,    88,    89,    90,    91,    92,    93,    94,    95,    96,
2451
      97,    98,    99,   100,   101,   102,   103,   104,   105,   106,
2452
     107,   108,   109,   110,   111,   112,   113,   114,   115,   116,
2453
     117,   118,   119,   120,   121,   122,   123,   124,    -1,    -1,
2454
      -1,   128,   129,   130,   131,   132,    -1,   134,   135,   136,
2455
     137,   138,   139,   140,   141,   142,   143,   144,   145,   146,
2456
     147,   148,   149,   150,   151,   152,   153,   154,   155,    -1,
2457
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   165,    -1,
2458
      -1,    -1,    -1,    -1,   171,    -1,    -1,    -1,    -1,    -1,
2459
     177,   178,    -1,    -1,   181,   182,   183,   184,     3,    -1,
2460
       5,     6,     7,     8,     9,    10,    11,    12,    13,    -1,
2461
      15,   119,   120,   121,   122,   123,   124,   125,   126,   127,
2462
     128,    -1,    -1,    -1,    -1,    30,    -1,    -1,    -1,    16,
2463
      17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
2464
      27,    28,    29,    -1,    -1,    -1,    -1,    52,    53,    -1,
2465
      -1,    -1,    57,    58,    59,    60,    61,    62,    63,    64,
2466
      65,    66,    67,    -1,    69,    -1,    71,    72,    73,    74,
2467
      75,    76,    77,    78,    79,    -1,    -1,    82,    -1,    -1,
2468
      85,    86,    87,    88,    89,    90,    91,    92,    93,    94,
2469
      95,    96,    97,    98,    99,   100,   101,   102,   103,   104,
2470
     105,   106,   107,   108,   109,   110,   111,   112,   113,   114,
2471
     115,   116,   117,   118,   119,   120,   121,   122,   123,   124,
2472
      -1,    -1,    -1,   128,   129,   130,   131,   132,    -1,   134,
2473
     135,   136,   137,   138,   139,   140,   141,   142,   143,   144,
2474
     145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
2475
     155,    -1,     3,    -1,     5,     6,     7,     8,    -1,    -1,
2476
     165,    12,    13,    -1,    15,    -1,   171,   154,   155,    -1,
2477
     157,   158,   177,    -1,    -1,    -1,   181,   182,   183,   184,
2478
      -1,    -1,   169,   119,   120,   121,   122,   123,   124,   125,
2479
     126,   127,   128,    -1,   181,    -1,    -1,    -1,    -1,    -1,
2480
      -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,
2481
      61,    62,    63,    64,    65,    66,    67,   153,    69,    -1,
2482
      -1,    -1,    73,    74,    75,    76,    77,    78,    79,    80,
2483
      -1,    82,    -1,    -1,    85,    86,    87,    88,    -1,    90,
2484
      91,    92,   178,    94,    -1,    96,    -1,    98,    -1,    -1,
2485
     101,    -1,    -1,    -1,   105,   106,   107,   108,   109,   110,
2486
     111,   112,   113,    -1,    -1,   116,    -1,   118,   119,   120,
2487
     121,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,   130,
2488
     131,   132,   133,   134,   135,   136,   137,    -1,    -1,   140,
2489
     141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
2490
     151,   152,   153,   154,   155,   156,     3,    -1,     5,     6,
2491
       7,     8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,
2492
      -1,    -1,    -1,    -1,    -1,   176,   177,    -1,   179,   180,
2493
     181,   182,   183,   184,    -1,    -1,    -1,   119,   120,   121,
2494
     122,   123,   124,   125,   126,   127,   128,    -1,    -1,    -1,
2495
      -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,
2496
      57,    -1,    59,    60,    61,    62,    63,    64,    65,    66,
2497
      67,   153,    69,    -1,    -1,    -1,    73,    74,    75,    76,
2498
      77,    78,    79,    80,    -1,    82,    -1,    -1,    85,    86,
2499
      87,    88,    -1,    90,    91,    92,   178,    94,    -1,    96,
2500
      -1,    98,    -1,    -1,   101,    -1,    -1,    -1,   105,   106,
2501
     107,   108,   109,   110,   111,   112,   113,    -1,    -1,   116,
2502
      -1,   118,   119,   120,   121,    -1,    -1,    -1,    -1,    -1,
2503
      -1,   128,    -1,   130,   131,   132,   133,   134,   135,   136,
2504
     137,    -1,    -1,   140,   141,   142,    -1,   144,   145,   146,
2505
     147,   148,   149,   150,   151,   152,   153,   154,   155,   156,
2506
       3,    -1,     5,     6,     7,     8,    -1,    -1,   165,    12,
2507
      13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,   176,
2508
     177,    -1,   179,   180,   181,   182,   183,   184,   109,    -1,
2509
     111,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   119,   120,
2510
     121,   122,   123,   124,   125,   126,   127,   128,    -1,    52,
2511
      53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,
2512
      63,    64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,
2513
      73,    74,    75,    76,    77,    78,    79,    80,    -1,    82,
2514
      -1,    -1,    85,    86,    87,    88,    -1,    90,    91,    92,
2515
      -1,    94,    -1,    96,    -1,    98,    -1,    -1,   101,    -1,
2516
      -1,    -1,   105,   106,   107,   108,   109,   110,   111,   112,
2517
     113,    -1,    -1,   116,    -1,   118,   119,   120,   121,    -1,
2518
      -1,    -1,    -1,    -1,    -1,   128,    -1,   130,   131,   132,
2519
     133,   134,   135,   136,   137,    -1,    -1,   140,   141,   142,
2520
      -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
2521
     153,   154,   155,   156,     3,    -1,     5,     6,     7,     8,
2522
      -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,   103,
2523
      -1,    -1,    -1,   176,   177,    -1,   179,   111,   181,   182,
2524
     183,   184,   116,    -1,    -1,   119,   120,   121,   122,   123,
2525
     124,   125,   126,   127,   128,   129,    -1,    -1,    -1,    -1,
2526
      -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,
2527
      59,    60,    61,    62,    63,    64,    65,    66,    67,   153,
2528
      69,    -1,    -1,    -1,    73,    74,    75,    76,    77,    78,
2529
      79,    80,    -1,    82,    -1,    -1,    85,    86,    87,    88,
2530
      -1,    90,    91,    92,    -1,    94,   180,    96,    -1,    98,
2531
      -1,    -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,
2532
     109,   110,    -1,   112,   113,    -1,    -1,    -1,    -1,   118,
2533
     119,   120,   121,    -1,    -1,    -1,    -1,    -1,    -1,   128,
2534
      -1,   130,   131,   132,   133,   134,   135,   136,   137,    -1,
2535
      -1,    -1,   141,   142,    -1,   144,   145,   146,   147,   148,
2536
     149,   150,   151,   152,   153,   154,   155,   156,     3,    -1,
2537
       5,     6,     7,     8,    -1,    -1,   165,    12,    13,    -1,
2538
      15,    -1,    -1,    -1,    -1,    -1,    -1,   176,   177,    -1,
2539
     179,   180,   181,   182,   183,   184,    -1,    -1,    -1,    -1,
2540
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2541
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,
2542
      -1,    -1,    57,    -1,    59,    60,    61,    62,    63,    64,
2543
      65,    66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,
2544
      75,    76,    77,    78,    79,    80,    -1,    82,    -1,    -1,
2545
      85,    86,    87,    88,    -1,    90,    91,    92,    -1,    94,
2546
      -1,    96,    -1,    98,    -1,    -1,   101,    -1,    -1,    -1,
2547
     105,   106,   107,   108,   109,   110,    -1,   112,   113,    -1,
2548
      -1,    -1,    -1,   118,   119,   120,   121,    -1,    -1,    -1,
2549
      -1,    -1,    -1,   128,    -1,   130,   131,   132,   133,   134,
2550
     135,   136,   137,    -1,    -1,    -1,   141,   142,    -1,   144,
2551
     145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
2552
     155,   156,     3,    -1,     5,     6,     7,     8,    -1,    -1,
2553
     165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,
2554
      -1,   176,   177,    -1,   179,   180,   181,   182,   183,   184,
2555
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2556
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2557
      -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,
2558
      61,    62,    63,    64,    65,    66,    67,    -1,    69,    -1,
2559
      -1,    -1,    73,    74,    75,    76,    77,    78,    79,    80,
2560
      -1,    82,    -1,    -1,    85,    86,    87,    88,    89,    90,
2561
      91,    92,    -1,    94,    -1,    96,    -1,    98,    -1,    -1,
2562
     101,    -1,    -1,    -1,   105,   106,   107,   108,   109,   110,
2563
      -1,   112,   113,    -1,    -1,    -1,    -1,   118,   119,   120,
2564
     121,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,   130,
2565
     131,   132,   133,   134,   135,   136,   137,    -1,    -1,    -1,
2566
     141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
2567
     151,   152,   153,   154,   155,   156,     3,    -1,     5,     6,
2568
       7,     8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,
2569
      -1,   103,    -1,    -1,    -1,   176,   177,    -1,   179,   111,
2570
     181,   182,   183,   184,   116,    -1,    -1,   119,   120,   121,
2571
     122,   123,   124,   125,   126,   127,   128,   129,    -1,    -1,
2572
      -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,
2573
      57,    -1,    59,    60,    61,    62,    63,    64,    65,    66,
2574
      67,   153,    69,    -1,    -1,    -1,    73,    74,    75,    76,
2575
      77,    78,    79,    80,    -1,    82,    -1,    -1,    85,    86,
2576
      87,    88,    -1,    90,    91,    92,    93,    94,   180,    96,
2577
      -1,    98,    -1,    -1,   101,    -1,    -1,    -1,   105,   106,
2578
     107,   108,   109,   110,    -1,   112,   113,    -1,    -1,    -1,
2579
      -1,   118,   119,   120,   121,    -1,    -1,    -1,    -1,    -1,
2580
      -1,   128,    -1,   130,   131,   132,   133,   134,   135,   136,
2581
     137,    -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,
2582
     147,   148,   149,   150,   151,   152,   153,   154,   155,   156,
2583
       3,    -1,     5,     6,     7,     8,    -1,    -1,   165,    12,
2584
      13,    -1,    15,    -1,    -1,   103,    -1,    -1,    -1,   176,
2585
     177,    -1,   179,   111,   181,   182,   183,   184,   116,    -1,
2586
      -1,   119,   120,   121,   122,   123,   124,   125,   126,   127,
2587
     128,   129,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,
2588
      53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,
2589
      63,    64,    65,    66,    67,   153,    69,    -1,    -1,    -1,
2590
      73,    74,    75,    76,    77,    78,    79,    80,    -1,    82,
2591
      -1,    -1,    85,    86,    87,    88,    -1,    90,    91,    92,
2592
      -1,    94,   180,    96,    -1,    98,    99,    -1,   101,    -1,
2593
      -1,    -1,   105,   106,   107,   108,   109,   110,    -1,   112,
2594
     113,    -1,    -1,    -1,    -1,   118,   119,   120,   121,    -1,
2595
      -1,    -1,    -1,    -1,    -1,   128,    -1,   130,   131,   132,
2596
     133,   134,   135,   136,   137,    -1,    -1,    -1,   141,   142,
2597
      -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
2598
     153,   154,   155,   156,     3,    -1,     5,     6,     7,     8,
2599
      -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,   103,
2600
      -1,    -1,    -1,   176,   177,    -1,   179,   111,   181,   182,
2601
     183,   184,   116,    -1,    -1,   119,   120,   121,   122,   123,
2602
     124,   125,   126,   127,   128,   129,    -1,    -1,    -1,    -1,
2603
      -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,
2604
      59,    60,    61,    62,    63,    64,    65,    66,    67,   153,
2605
      69,    -1,    -1,    -1,    73,    74,    75,    76,    77,    78,
2606
      79,    80,    -1,    82,    -1,    -1,    85,    86,    87,    88,
2607
      -1,    90,    91,    92,    -1,    94,   180,    96,    97,    98,
2608
      -1,    -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,
2609
     109,   110,    -1,   112,   113,    -1,    -1,    -1,    -1,   118,
2610
     119,   120,   121,    -1,    -1,    -1,    -1,    -1,    -1,   128,
2611
      -1,   130,   131,   132,   133,   134,   135,   136,   137,    -1,
2612
      -1,    -1,   141,   142,    -1,   144,   145,   146,   147,   148,
2613
     149,   150,   151,   152,   153,   154,   155,   156,     3,    -1,
2614
       5,     6,     7,     8,    -1,    -1,   165,    12,    13,    -1,
2615
      15,    -1,    -1,   103,    -1,    -1,    -1,   176,   177,    -1,
2616
     179,   111,   181,   182,   183,   184,   116,    -1,    -1,   119,
2617
     120,   121,   122,   123,   124,   125,   126,   127,   128,   129,
2618
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,
2619
      -1,    -1,    57,    -1,    59,    60,    61,    62,    63,    64,
2620
      65,    66,    67,   153,    69,    -1,    -1,    -1,    73,    74,
2621
      75,    76,    77,    78,    79,    80,    -1,    82,    -1,    -1,
2622
      85,    86,    87,    88,    -1,    90,    91,    92,    -1,    94,
2623
     180,    96,    -1,    98,    -1,    -1,   101,    -1,    -1,    -1,
2624
     105,   106,   107,   108,   109,   110,    -1,   112,   113,    -1,
2625
      -1,    -1,    -1,   118,   119,   120,   121,    -1,    -1,    -1,
2626
      -1,    -1,    -1,   128,    -1,   130,   131,   132,   133,   134,
2627
     135,   136,   137,    -1,    -1,    -1,   141,   142,    -1,   144,
2628
     145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
2629
     155,   156,     3,    -1,     5,     6,     7,     8,    -1,    -1,
2630
     165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,
2631
      -1,   176,   177,    -1,   179,   180,   181,   182,   183,   184,
2632
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2633
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2634
      -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,
2635
      61,    62,    63,    64,    65,    66,    67,    -1,    69,    -1,
2636
      -1,    -1,    73,    74,    75,    76,    77,    78,    79,    80,
2637
      -1,    82,    -1,    -1,    85,    86,    87,    88,    -1,    90,
2638
      91,    92,    -1,    94,    95,    96,    -1,    98,    -1,    -1,
2639
     101,    -1,    -1,    -1,   105,   106,   107,   108,   109,   110,
2640
      -1,   112,   113,    -1,    -1,    -1,    -1,   118,   119,   120,
2641
     121,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,   130,
2642
     131,   132,   133,   134,   135,   136,   137,    -1,    -1,    -1,
2643
     141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
2644
     151,   152,   153,   154,   155,   156,     3,    -1,     5,     6,
2645
       7,     8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,
2646
      -1,    -1,    -1,    -1,    -1,   176,   177,    -1,   179,    -1,
2647
     181,   182,   183,   184,    -1,    -1,    -1,    -1,    -1,    -1,
2648
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2649
      -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,
2650
      57,    -1,    59,    60,    61,    62,    63,    64,    65,    66,
2651
      67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,
2652
      77,    78,    79,    80,    -1,    82,    -1,    -1,    85,    86,
2653
      87,    88,    -1,    90,    91,    92,    -1,    94,    -1,    96,
2654
      -1,    98,    -1,    -1,   101,    -1,    -1,    -1,   105,   106,
2655
     107,   108,   109,   110,    -1,   112,   113,    -1,    -1,    -1,
2656
      -1,   118,   119,   120,   121,    -1,    -1,    -1,    -1,    -1,
2657
      -1,   128,    -1,   130,   131,   132,   133,   134,   135,   136,
2658
     137,    -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,
2659
     147,   148,   149,   150,   151,   152,   153,   154,   155,   156,
2660
       3,    -1,     5,     6,     7,     8,    -1,    -1,   165,    12,
2661
      13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,   176,
2662
     177,    -1,   179,   180,   181,   182,   183,   184,    -1,    -1,
2663
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2664
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,
2665
      53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,
2666
      63,    64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,
2667
      73,    74,    75,    76,    77,    78,    79,    80,    -1,    82,
2668
      -1,    -1,    85,    86,    87,    88,    -1,    90,    91,    92,
2669
      -1,    94,    -1,    96,    -1,    98,    -1,    -1,   101,    -1,
2670
      -1,    -1,   105,   106,   107,   108,   109,   110,    -1,   112,
2671
     113,    -1,    -1,    -1,    -1,   118,   119,   120,   121,    -1,
2672
      -1,    -1,    -1,    -1,    -1,   128,    -1,   130,   131,   132,
2673
     133,   134,   135,   136,   137,    -1,    -1,    -1,   141,   142,
2674
      -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
2675
     153,   154,   155,   156,     3,    -1,     5,     6,     7,     8,
2676
      -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,    -1,
2677
      -1,    -1,    -1,   176,   177,    -1,   179,   180,   181,   182,
2678
     183,   184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2679
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2680
      -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,
2681
      59,    60,    61,    62,    63,    64,    65,    66,    67,    -1,
2682
      69,    -1,    -1,    -1,    73,    74,    75,    76,    77,    78,
2683
      79,    80,    -1,    82,    -1,    -1,    85,    86,    87,    88,
2684
      -1,    90,    91,    92,    -1,    94,    -1,    96,    -1,    98,
2685
      -1,    -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,
2686
     109,   110,    -1,   112,   113,    -1,    -1,    -1,    -1,   118,
2687
     119,   120,   121,    -1,    -1,    -1,    -1,    -1,    -1,   128,
2688
      -1,   130,   131,   132,   133,   134,   135,   136,   137,    -1,
2689
      -1,    -1,   141,   142,    -1,   144,   145,   146,   147,   148,
2690
     149,   150,   151,   152,   153,   154,   155,   156,     3,    -1,
2691
       5,     6,     7,     8,    -1,    -1,   165,    12,    13,    -1,
2692
      15,    -1,    -1,    -1,    -1,    -1,    -1,   176,   177,    -1,
2693
     179,   180,   181,   182,   183,   184,    -1,    -1,    -1,    -1,
2694
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2695
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,
2696
      -1,    -1,    57,    -1,    59,    60,    61,    62,    63,    64,
2697
      65,    66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,
2698
      75,    76,    77,    78,    79,    80,    -1,    82,    -1,    -1,
2699
      85,    86,    87,    88,    -1,    90,    91,    92,    -1,    94,
2700
      -1,    96,    -1,    98,    -1,    -1,   101,    -1,    -1,    -1,
2701
     105,   106,   107,   108,   109,   110,    -1,   112,   113,    -1,
2702
      -1,    -1,    -1,   118,   119,   120,   121,    -1,    -1,    -1,
2703
      -1,    -1,    -1,   128,    -1,   130,   131,   132,   133,   134,
2704
     135,   136,   137,    -1,    -1,    -1,   141,   142,    -1,   144,
2705
     145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
2706
     155,   156,     3,    -1,     5,     6,     7,     8,    -1,    -1,
2707
     165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,
2708
      -1,   176,   177,    -1,   179,   180,   181,   182,   183,   184,
2709
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2710
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2711
      -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,
2712
      61,    62,    63,    64,    65,    66,    67,    -1,    69,    -1,
2713
      -1,    -1,    73,    74,    75,    76,    77,    78,    79,    80,
2714
      -1,    82,    -1,    -1,    85,    86,    87,    88,    -1,    90,
2715
      91,    92,    -1,    94,    -1,    96,    -1,    98,    -1,    -1,
2716
     101,    -1,    -1,    -1,   105,   106,   107,   108,   109,   110,
2717
      -1,   112,   113,    -1,    -1,    -1,    -1,   118,   119,   120,
2718
     121,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,   130,
2719
     131,   132,   133,   134,   135,   136,   137,    -1,    -1,    -1,
2720
     141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
2721
     151,   152,   153,   154,   155,   156,     3,    -1,     5,     6,
2722
       7,     8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,
2723
      -1,    -1,    -1,    -1,    -1,   176,   177,    -1,   179,   180,
2724
     181,   182,   183,   184,    -1,    -1,    -1,    -1,    -1,    -1,
2725
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2726
      -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,
2727
      57,    -1,    59,    60,    61,    62,    63,    64,    65,    66,
2728
      67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,
2729
      77,    78,    79,    80,    -1,    82,    -1,    -1,    85,    86,
2730
      87,    88,    -1,    90,    91,    92,    -1,    94,    -1,    96,
2731
      -1,    98,    -1,    -1,   101,    -1,    -1,    -1,   105,   106,
2732
     107,   108,   109,   110,    -1,   112,   113,    -1,    -1,    -1,
2733
      -1,   118,   119,   120,   121,    -1,    -1,    -1,    -1,    -1,
2734
      -1,   128,    -1,   130,   131,   132,   133,   134,   135,   136,
2735
     137,    -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,
2736
     147,   148,   149,   150,   151,   152,   153,   154,   155,   156,
2737
      -1,    -1,    -1,    -1,    -1,    -1,    -1,     3,   165,     5,
2738
       6,     7,     8,     9,    10,    11,    12,    13,    -1,   176,
2739
     177,    -1,   179,    -1,   181,   182,   183,   184,    30,    -1,
2740
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
2741
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
2742
      52,    53,    54,    55,    56,    -1,    58,    -1,    -1,    -1,
2743
      -1,    -1,    58,    -1,    -1,    -1,    68,    -1,    -1,    -1,
2744
      -1,    -1,    -1,    69,    -1,    71,    72,    -1,    -1,    75,
2745
      -1,    -1,    -1,    79,    -1,    -1,    -1,    -1,    -1,    85,
2746
      86,    87,    88,    89,    90,    91,    92,    93,    94,    95,
2747
      96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
2748
     106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
2749
     116,   117,   118,   119,   120,   121,   122,   123,   124,    -1,
2750
      -1,    -1,   128,   129,   130,   131,   132,    -1,   134,   135,
2751
     136,   137,   138,   139,   140,   141,   142,   143,   144,   145,
2752
     146,   147,   148,   149,   150,   151,   152,     3,    -1,     5,
2753
       6,     7,     8,     9,    10,    11,    12,    13,    -1,    -1,
2754
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2755
      -1,    -1,    -1,   179,    -1,    -1,    -1,    -1,   184,    36,
2756
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
2757
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
2758
      -1,    58,    58,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2759
      -1,    68,    -1,    69,    -1,    71,    72,    -1,    -1,    75,
2760
      -1,    -1,    -1,    79,    -1,    -1,    -1,    -1,    -1,    85,
2761
      86,    87,    88,    89,    90,    91,    92,    93,    94,    95,
2762
      96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
2763
     106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
2764
     116,   117,   118,   119,   120,   121,   122,   123,   124,    -1,
2765
      -1,    -1,   128,   129,   130,   131,   132,    -1,   134,   135,
2766
     136,   137,   138,   139,   140,   141,   142,   143,   144,   145,
2767
     146,   147,   148,   149,   150,   151,   152,     3,    -1,     5,
2768
       6,     7,     8,    -1,    -1,    -1,    12,    13,    -1,    15,
2769
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2770
      -1,    -1,    -1,   179,    -1,    31,    -1,    -1,   184,    -1,
2771
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2772
      -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,
2773
      -1,    57,    -1,    59,    60,    61,    62,    63,    64,    65,
2774
      66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,
2775
      76,    77,    78,    79,    80,    -1,    82,    -1,    -1,    85,
2776
      86,    87,    88,    -1,    90,    91,    92,    -1,    94,    -1,
2777
      96,    -1,    98,    -1,    -1,   101,    -1,    -1,    -1,   105,
2778
     106,   107,   108,   109,   110,    -1,   112,   113,    -1,    -1,
2779
      -1,    -1,   118,   119,    -1,    -1,    -1,    -1,    -1,    -1,
2780
      -1,    -1,   128,    -1,   130,   131,   132,    -1,    -1,    -1,
2781
      -1,    -1,    -1,    -1,    -1,   141,   142,    -1,   144,   145,
2782
     146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
2783
     156,     3,    -1,     5,     6,     7,     8,    -1,    -1,   165,
2784
      12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,
2785
     176,   177,    -1,   179,    -1,   181,   182,   183,   184,    31,
2786
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2787
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2788
      52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,
2789
      62,    63,    64,    65,    66,    67,    -1,    69,    -1,    -1,
2790
      -1,    73,    74,    75,    76,    77,    78,    79,    80,    -1,
2791
      82,    -1,    -1,    85,    86,    87,    88,    -1,    90,    91,
2792
      92,    -1,    94,    -1,    96,    -1,    98,    -1,    -1,   101,
2793
      -1,    -1,    -1,   105,   106,   107,   108,   109,   110,    -1,
2794
     112,   113,    -1,    -1,    -1,    -1,   118,   119,    -1,    -1,
2795
      -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,   130,   131,
2796
     132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,
2797
     142,    -1,   144,   145,   146,   147,   148,   149,   150,   151,
2798
     152,   153,   154,   155,   156,     3,    -1,     5,     6,     7,
2799
       8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,
2800
      -1,    -1,    -1,    -1,   176,   177,    -1,   179,    -1,   181,
2801
     182,   183,   184,    31,    -1,    -1,    -1,    -1,    -1,    -1,
2802
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2803
      -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,
2804
      -1,    59,    60,    61,    62,    63,    64,    65,    66,    67,
2805
      -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,    77,
2806
      78,    79,    80,    -1,    82,    -1,    -1,    85,    86,    87,
2807
      88,    -1,    90,    91,    92,    -1,    94,    -1,    96,    -1,
2808
      98,    -1,    -1,   101,    -1,    -1,    -1,   105,   106,   107,
2809
     108,   109,   110,    -1,   112,   113,    -1,    -1,    -1,    -1,
2810
     118,   119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2811
     128,    -1,   130,   131,   132,    -1,    -1,    -1,    -1,    -1,
2812
      -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,   147,
2813
     148,   149,   150,   151,   152,   153,   154,   155,   156,     3,
2814
      -1,     5,     6,     7,     8,    -1,    -1,   165,    12,    13,
2815
      -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,   176,   177,
2816
      -1,   179,    -1,   181,   182,   183,   184,    31,    -1,    -1,
2817
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2818
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,
2819
      -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,    63,
2820
      64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,    73,
2821
      74,    75,    76,    77,    78,    79,    80,    -1,    82,    -1,
2822
      -1,    85,    86,    87,    88,    -1,    90,    91,    92,    -1,
2823
      94,    -1,    96,    -1,    98,    -1,    -1,   101,    -1,    -1,
2824
      -1,   105,   106,   107,   108,   109,   110,    -1,   112,   113,
2825
      -1,    -1,    -1,    -1,   118,   119,    -1,    -1,    -1,    -1,
2826
      -1,    -1,    -1,    -1,   128,    -1,   130,   131,   132,    -1,
2827
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,   142,    -1,
2828
     144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
2829
     154,   155,   156,     3,    -1,     5,     6,     7,     8,    -1,
2830
      -1,   165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,
2831
      -1,    -1,   176,   177,    -1,   179,    -1,   181,   182,   183,
2832
     184,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2833
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2834
      -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,
2835
      60,    61,    62,    63,    64,    65,    66,    67,    -1,    69,
2836
      -1,    -1,    -1,    73,    74,    75,    76,    77,    78,    79,
2837
      80,    -1,    82,    -1,    -1,    85,    86,    87,    88,    -1,
2838
      90,    91,    92,    -1,    94,    -1,    96,    -1,    98,    -1,
2839
      -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,   109,
2840
     110,    -1,   112,   113,    -1,    -1,    -1,    -1,   118,   119,
2841
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,
2842
     130,   131,   132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2843
      -1,   141,   142,    -1,   144,   145,   146,   147,   148,   149,
2844
     150,   151,   152,   153,   154,   155,   156,     3,    -1,     5,
2845
       6,     7,     8,    -1,    -1,   165,    12,    13,    -1,    15,
2846
      -1,    -1,    -1,    -1,    -1,    -1,   176,   177,    -1,   179,
2847
      -1,   181,   182,   183,   184,    -1,    -1,    -1,    -1,    -1,
2848
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2849
      -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,
2850
      -1,    57,    -1,    59,    60,    61,    62,    63,    64,    65,
2851
      66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,
2852
      76,    77,    78,    79,    80,    -1,    82,    -1,    -1,    85,
2853
      86,    87,    88,    -1,    90,    91,    92,    -1,    94,    -1,
2854
      96,    -1,    98,    -1,    -1,   101,    -1,    -1,    -1,   105,
2855
     106,   107,   108,   109,   110,    -1,   112,   113,    -1,    -1,
2856
      -1,    -1,   118,   119,    -1,    -1,    -1,    -1,    -1,    -1,
2857
      -1,    -1,   128,    -1,   130,   131,   132,    -1,    -1,    -1,
2858
      -1,    -1,    -1,    -1,    -1,   141,   142,    -1,   144,   145,
2859
     146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
2860
     156,     3,    -1,     5,     6,     7,     8,    -1,    -1,   165,
2861
      12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,
2862
     176,   177,    -1,   179,    -1,   181,   182,   183,   184,    -1,
2863
      -1,    -1,    -1,    -1,    -1,    37,    38,    -1,    -1,    -1,
2864
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2865
      52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,
2866
      62,    63,    64,    65,    66,    67,    -1,    69,    -1,    -1,
2867
      -1,    73,    74,    75,    76,    77,    78,    79,    -1,    -1,
2868
      82,    -1,    -1,    85,    86,    87,    -1,    -1,    -1,    -1,
2869
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2870
      -1,    -1,    -1,   105,    -1,    -1,    -1,   109,   110,    -1,
2871
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   119,    -1,    -1,
2872
      -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,    -1,   131,
2873
     132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,
2874
     142,    -1,   144,   145,   146,   147,   148,   149,   150,   151,
2875
     152,   153,   154,   155,    -1,     3,    -1,     5,     6,     7,
2876
       8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,   171,
2877
      -1,    -1,    -1,    -1,    -1,   177,    -1,    -1,    -1,   181,
2878
     182,   183,   184,    -1,    -1,    -1,    -1,    -1,    -1,    37,
2879
      38,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2880
      -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,
2881
      -1,    59,    60,    61,    62,    63,    64,    65,    66,    67,
2882
      -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,    77,
2883
      78,    79,    -1,    -1,    82,    -1,    -1,    85,    86,    87,
2884
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2885
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,    -1,    -1,
2886
      -1,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2887
      -1,   119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2888
     128,    -1,    -1,   131,   132,    -1,    -1,    -1,    -1,    -1,
2889
      -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,   147,
2890
     148,   149,   150,   151,   152,   153,   154,   155,    -1,     3,
2891
      -1,     5,     6,     7,     8,    -1,    -1,   165,    12,    13,
2892
      -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   177,
2893
      -1,    -1,    -1,   181,   182,   183,   184,    -1,    -1,    -1,
2894
      -1,    -1,    -1,    37,    38,    -1,    -1,    -1,    -1,    -1,
2895
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,
2896
      -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,    63,
2897
      64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,    73,
2898
      74,    75,    76,    77,    78,    79,    -1,    -1,    82,    -1,
2899
      -1,    85,    86,    87,    -1,    -1,    -1,    -1,    -1,    -1,
2900
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2901
      -1,   105,    -1,    -1,    -1,   109,   110,    -1,    -1,    -1,
2902
      -1,    -1,    -1,    -1,    -1,   119,    -1,    -1,    -1,    -1,
2903
      -1,    -1,    -1,    -1,   128,    -1,    -1,   131,   132,    -1,
2904
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,   142,    -1,
2905
     144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
2906
     154,   155,    -1,     3,    -1,     5,     6,     7,     8,    -1,
2907
      -1,   165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,
2908
      -1,    -1,    -1,   177,    -1,    -1,    -1,   181,   182,   183,
2909
     184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2910
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2911
      -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,
2912
      60,    61,    62,    63,    64,    65,    66,    67,    -1,    69,
2913
      -1,    -1,    -1,    73,    74,    75,    76,    77,    78,    79,
2914
      -1,    -1,    82,    -1,    -1,    85,    86,    87,    -1,    -1,
2915
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2916
      -1,    -1,    -1,    -1,    -1,   105,    -1,    -1,    -1,   109,
2917
     110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   119,
2918
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,
2919
      -1,   131,   132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2920
      -1,   141,   142,    -1,   144,   145,   146,   147,   148,   149,
2921
     150,   151,   152,   153,   154,   155,   156,     3,    -1,     5,
2922
       6,     7,     8,    -1,    -1,   165,    12,    13,    -1,    15,
2923
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   177,    -1,    -1,
2924
      -1,   181,   182,   183,   184,    -1,    -1,    -1,    -1,    -1,
2925
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2926
      -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,
2927
      -1,    57,    -1,    59,    60,    61,    62,    63,    64,    65,
2928
      66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,
2929
      76,    77,    78,    79,    -1,    -1,    82,    83,    -1,    85,
2930
      86,    87,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2931
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,
2932
      -1,    -1,    -1,   109,   110,    -1,    -1,    -1,    -1,    -1,
2933
      -1,    -1,    -1,   119,    -1,    -1,    -1,    -1,    -1,    -1,
2934
      -1,    -1,   128,    -1,    -1,   131,   132,    -1,    -1,    -1,
2935
      -1,    -1,    -1,    -1,    -1,   141,   142,    -1,   144,   145,
2936
     146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
2937
      -1,     3,    -1,     5,     6,     7,     8,    -1,    -1,   165,
2938
      12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,
2939
      -1,   177,    -1,    -1,    -1,   181,   182,   183,   184,    31,
2940
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2941
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2942
      52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,
2943
      62,    63,    64,    65,    66,    67,    -1,    69,    -1,    -1,
2944
      -1,    73,    74,    75,    76,    77,    78,    79,    -1,    -1,
2945
      82,    -1,    -1,    85,    86,    87,    -1,    -1,    -1,    -1,
2946
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2947
      -1,    -1,    -1,   105,    -1,    -1,    -1,   109,   110,    -1,
2948
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   119,    -1,    -1,
2949
      -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,    -1,   131,
2950
     132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,
2951
     142,    -1,   144,   145,   146,   147,   148,   149,   150,   151,
2952
     152,   153,   154,   155,    -1,     3,    -1,     5,     6,     7,
2953
       8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,
2954
      -1,    -1,    -1,    -1,    -1,   177,    -1,    -1,    -1,   181,
2955
     182,   183,   184,    31,    -1,    -1,    -1,    -1,    -1,    -1,
2956
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2957
      -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,
2958
      -1,    59,    60,    61,    62,    63,    64,    65,    66,    67,
2959
      -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,    77,
2960
      78,    79,    -1,    -1,    82,    -1,    -1,    85,    86,    87,
2961
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2962
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,    -1,    -1,
2963
      -1,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2964
      -1,   119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2965
     128,    -1,    -1,   131,   132,    -1,    -1,    -1,    -1,    -1,
2966
      -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,   147,
2967
     148,   149,   150,   151,   152,   153,   154,   155,    -1,    -1,
2968
       3,    -1,     5,     6,     7,     8,    -1,   165,    -1,    12,
2969
      13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,   177,
2970
      -1,    -1,    -1,   181,   182,   183,   184,    30,    -1,    -1,
2971
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2972
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,
2973
      53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,
2974
      63,    64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,
2975
      73,    74,    75,    76,    77,    78,    79,    -1,    -1,    82,
2976
      -1,    -1,    85,    86,    87,    -1,    -1,    -1,    -1,    -1,
2977
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2978
      -1,    -1,   105,    -1,    -1,    -1,   109,   110,    -1,    -1,
2979
      -1,    -1,    -1,    -1,    -1,    -1,   119,    -1,    -1,    -1,
2980
      -1,    -1,    -1,    -1,    -1,   128,    -1,    -1,   131,   132,
2981
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,   142,
2982
      -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
2983
     153,   154,   155,    -1,     3,    -1,     5,     6,     7,     8,
2984
      -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,    -1,
2985
      -1,    -1,    -1,    -1,   177,    -1,    -1,    -1,   181,   182,
2986
     183,   184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2987
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2988
      -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,
2989
      59,    60,    61,    62,    63,    64,    65,    66,    67,    -1,
2990
      69,    -1,    -1,    -1,    73,    74,    75,    76,    77,    78,
2991
      79,    -1,    -1,    82,    -1,    -1,    85,    86,    87,    -1,
2992
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2993
      -1,    -1,    -1,    -1,    -1,    -1,   105,    -1,    -1,    -1,
2994
     109,   110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2995
     119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,
2996
      -1,    -1,   131,   132,    -1,    -1,    -1,    -1,    -1,    -1,
2997
      -1,    -1,   141,   142,    -1,   144,   145,   146,   147,   148,
2998
     149,   150,   151,   152,   153,   154,   155,   156,     3,    -1,
2999
       5,     6,     7,     8,    -1,    -1,   165,    12,    13,    -1,
3000
      15,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   177,    -1,
3001
      -1,    -1,   181,   182,   183,   184,    -1,    -1,    -1,    -1,
3002
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3003
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,
3004
      -1,    -1,    57,    -1,    59,    60,    61,    62,    63,    64,
3005
      65,    66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,
3006
      75,    76,    77,    78,    79,    -1,    -1,    82,    -1,    -1,
3007
      85,    86,    87,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3008
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   104,
3009
     105,    -1,    -1,    -1,   109,   110,    -1,    -1,    -1,    -1,
3010
      -1,    -1,    -1,    -1,   119,    -1,    -1,    -1,    -1,    -1,
3011
      -1,    -1,    -1,   128,    -1,    -1,   131,   132,    -1,    -1,
3012
      -1,    -1,    -1,    -1,    -1,    -1,   141,   142,    -1,   144,
3013
     145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
3014
     155,    -1,     3,    -1,     5,     6,     7,     8,    -1,    -1,
3015
     165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,
3016
      -1,    -1,   177,    -1,    -1,    -1,   181,   182,   183,   184,
3017
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3018
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3019
      -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,
3020
      61,    62,    63,    64,    65,    66,    67,    -1,    69,    -1,
3021
      -1,    -1,    73,    74,    75,    76,    77,    78,    79,    -1,
3022
      -1,    82,    -1,    -1,    85,    86,    87,    -1,    -1,    -1,
3023
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3024
      -1,    -1,    -1,    -1,   105,    -1,    -1,    -1,   109,   110,
3025
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   119,    -1,
3026
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,    -1,
3027
     131,   132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3028
     141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
3029
     151,   152,   153,   154,   155,    -1,     3,    -1,     5,     6,
3030
       7,     8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,
3031
      -1,    -1,    -1,    -1,    -1,    -1,   177,    -1,    -1,    -1,
3032
     181,   182,   183,   184,    -1,    -1,    -1,    -1,    -1,    -1,
3033
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3034
      -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,
3035
      57,    -1,    59,    60,    61,    62,    63,    64,    65,    66,
3036
      67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,
3037
      77,    78,    79,    -1,    -1,    82,    -1,    -1,    85,    86,
3038
      87,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3039
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,    -1,
3040
      -1,    -1,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,
3041
      -1,    -1,   119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3042
      -1,   128,    -1,    -1,   131,   132,    -1,    -1,    -1,    -1,
3043
      -1,    -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,
3044
     147,   148,   149,   150,   151,   152,   153,   154,   155,    -1,
3045
      -1,    -1,    -1,    -1,    -1,    -1,    -1,     3,   165,     5,
3046
       6,     7,     8,     9,    10,    11,    12,    13,    -1,    -1,
3047
     177,    -1,    -1,    -1,   181,   182,   183,   184,    32,    33,
3048
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3049
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3050
      54,    55,    56,    -1,    58,    -1,    -1,    -1,    -1,    -1,
3051
      -1,    -1,    58,    -1,    68,    -1,    -1,    -1,    -1,    -1,
3052
      -1,    -1,    -1,    69,    -1,    71,    72,    -1,    -1,    75,
3053
      76,    77,    78,    -1,    -1,    -1,    -1,    -1,    -1,    85,
3054
      86,    87,    88,    89,    90,    91,    92,    93,    94,    95,
3055
      96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
3056
     106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
3057
     116,   117,   118,   119,   120,   121,   122,   123,   124,    -1,
3058
      -1,    -1,   128,   129,   130,   131,   132,    -1,   134,   135,
3059
     136,   137,   138,   139,   140,   141,   142,   143,   144,   145,
3060
     146,   147,   148,   149,   150,   151,   152,     3,    -1,     5,
3061
       6,     7,     8,     9,    10,    11,    12,    13,    -1,    -1,
3062
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3063
      -1,    -1,    -1,    -1,   180,    34,    35,    36,    37,    38,
3064
      39,    40,    41,    42,    43,    44,    45,    46,    47,    48,
3065
      49,    50,    51,    52,    53,    54,    55,    56,    -1,    58,
3066
      -1,    -1,    58,    -1,    -1,    -1,    -1,    -1,    -1,    68,
3067
      -1,    -1,    -1,    69,    -1,    71,    72,    -1,    -1,    75,
3068
      76,    77,    78,    -1,    -1,    -1,    -1,    -1,    -1,    85,
3069
      86,    87,    88,    89,    90,    91,    92,    93,    94,    95,
3070
      96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
3071
     106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
3072
     116,   117,   118,   119,   120,   121,   122,   123,   124,    -1,
3073
      -1,    -1,   128,   129,   130,   131,   132,    -1,   134,   135,
3074
     136,   137,   138,   139,   140,   141,   142,   143,   144,   145,
3075
     146,   147,   148,   149,   150,   151,   152,    -1,     3,    -1,
3076
       5,     6,     7,     8,     9,    10,    11,    12,    13,    -1,
3077
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3078
      -1,    -1,    -1,    -1,   180,    30,    35,    36,    37,    38,
3079
      39,    40,    41,    42,    43,    44,    45,    46,    47,    48,
3080
      49,    50,    51,    52,    53,    54,    55,    56,    -1,    58,
3081
      -1,    -1,    -1,    58,    -1,    -1,    -1,    -1,    -1,    68,
3082
      -1,    -1,    -1,    -1,    69,    -1,    71,    72,    -1,    -1,
3083
      75,    76,    77,    78,    -1,    -1,    -1,    -1,    -1,    -1,
3084
      85,    86,    87,    88,    89,    90,    91,    92,    93,    94,
3085
      95,    96,    97,    98,    99,   100,   101,   102,   103,   104,
3086
     105,   106,   107,   108,   109,   110,   111,   112,   113,   114,
3087
     115,   116,   117,   118,   119,   120,   121,   122,   123,   124,
3088
      -1,    -1,    -1,   128,   129,   130,   131,   132,    -1,   134,
3089
     135,   136,   137,   138,   139,   140,   141,   142,   143,   144,
3090
     145,   146,   147,   148,   149,   150,   151,   152,    -1,    -1,
3091
       9,    10,    11,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3092
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3093
      -1,    30,   177,    32,    33,    34,    35,    36,    37,    38,
3094
      39,    40,    41,    42,    43,    44,    45,    46,    47,    48,
3095
      49,    50,    51,    52,    53,    54,    55,    56,    -1,    58,
3096
       9,    10,    11,    -1,    -1,    -1,    -1,    -1,    -1,    68,
3097
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3098
      -1,    30,    -1,    32,    33,    34,    35,    36,    37,    38,
3099
      39,    40,    41,    42,    43,    44,    45,    46,    47,    48,
3100
      49,    50,    51,    52,    53,    54,    55,    56,    -1,    58,
3101
       9,    10,    11,    -1,    -1,    -1,    -1,    -1,    -1,    68,
3102
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3103
      -1,    30,    -1,    32,    33,    34,    35,    36,    37,    38,
3104
      39,    40,    41,    42,    43,    44,    45,    46,    47,    48,
3105
      49,    50,    51,    52,    53,    54,    55,    56,    -1,    58,
3106
      -1,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,    68,
3107
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3108
      -1,   180,    30,    -1,    32,    33,    34,    35,    36,    37,
3109
      38,    39,    40,    41,    42,    43,    44,    45,    46,    47,
3110
      48,    49,    50,    51,    52,    53,    54,    55,    56,    -1,
3111
      58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,    -1,
3112
      68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3113
      -1,   180,    30,    -1,    32,    33,    34,    35,    36,    37,
3114
      38,    39,    40,    41,    42,    43,    44,    45,    46,    47,
3115
      48,    49,    50,    51,    52,    53,    54,    55,    56,    -1,
3116
      58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,    -1,
3117
      68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3118
      -1,   180,    30,    -1,    32,    33,    34,    35,    36,    37,
3119
      38,    39,    40,    41,    42,    43,    44,    45,    46,    47,
3120
      48,    49,    50,    51,    52,    53,    54,    55,    56,    -1,
3121
      58,    -1,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3122
      68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3123
      -1,    -1,   180,    30,    -1,    32,    33,    34,    35,    36,
3124
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3125
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3126
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3127
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3128
      -1,    -1,   180,    30,    -1,    32,    33,    34,    35,    36,
3129
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3130
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3131
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3132
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3133
      -1,   179,    -1,    30,    -1,    32,    33,    34,    35,    36,
3134
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3135
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3136
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3137
      -1,    68,    -1,    -1,    -1,    -1,    -1,   174,    -1,    -1,
3138
      -1,   178,    -1,    30,    -1,    32,    33,    34,    35,    36,
3139
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3140
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3141
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3142
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3143
      -1,   178,    -1,    30,    -1,    32,    33,    34,    35,    36,
3144
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3145
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3146
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3147
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3148
      -1,   178,    -1,    30,    -1,    32,    33,    34,    35,    36,
3149
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3150
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3151
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3152
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3153
      -1,   178,    -1,    30,    -1,    32,    33,    34,    35,    36,
3154
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3155
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3156
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3157
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3158
      -1,   178,    -1,    30,    -1,    32,    33,    34,    35,    36,
3159
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3160
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3161
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3162
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3163
      -1,   178,    -1,    30,    -1,    32,    33,    34,    35,    36,
3164
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3165
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3166
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3167
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3168
      -1,   178,    -1,    30,    -1,    32,    33,    34,    35,    36,
3169
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3170
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3171
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3172
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3173
      -1,   178,    -1,    30,    -1,    32,    33,    34,    35,    36,
3174
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3175
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3176
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3177
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3178
      -1,   178,    -1,    30,    -1,    32,    33,    34,    35,    36,
3179
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3180
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3181
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3182
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3183
      -1,   178,    -1,    30,    -1,    32,    33,    34,    35,    36,
3184
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3185
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3186
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3187
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3188
      -1,   178,    -1,    30,    31,    32,    33,    34,    35,    36,
3189
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3190
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3191
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3192
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3193
      -1,   178,    -1,    30,    -1,    32,    33,    34,    35,    36,
3194
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3195
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3196
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3197
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3198
      -1,   178,    -1,    30,    -1,    32,    33,    34,    35,    36,
3199
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3200
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3201
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3202
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   176,
3203
      -1,    -1,    -1,    30,    -1,    32,    33,    34,    35,    36,
3204
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3205
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3206
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3207
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   176,
3208
      -1,    -1,    -1,    30,    -1,    32,    33,    34,    35,    36,
3209
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3210
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3211
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3212
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   176,
3213
      -1,    -1,    -1,    30,    -1,    32,    33,    34,    35,    36,
3214
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3215
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3216
      -1,    58,     9,    10,    11,    -1,    -1,    -1,    -1,    -1,
3217
      -1,    68,    -1,    -1,    -1,    -1,    -1,    37,    38,   176,
3218
      -1,    -1,    -1,    30,    -1,    32,    33,    34,    35,    36,
3219
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3220
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3221
      -1,    58,    -1,    -1,    -1,    75,    76,    77,    78,    79,
3222
      -1,    68,    82,    -1,    -1,    -1,    86,    -1,   175,    -1,
3223
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3224
      -1,    -1,    -1,    -1,    -1,    -1,     3,    -1,     5,     6,
3225
       7,     8,     9,    10,    11,    12,    13,    -1,    -1,   119,
3226
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,
3227
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   174,    -1,    -1,
3228
      -1,   141,   142,    -1,   144,   145,   146,   147,   148,   149,
3229
     150,   151,   152,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3230
      -1,    58,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3231
      -1,    -1,    69,    -1,    71,    72,    -1,   177,    75,    -1,
3232
      -1,   181,    -1,   183,   184,    -1,    -1,   174,    85,    86,
3233
      87,    88,    89,    90,    91,    92,    93,    94,    95,    96,
3234
      97,    98,    99,   100,   101,   102,   103,   104,   105,   106,
3235
     107,   108,   109,   110,   111,   112,   113,   114,   115,   116,
3236
     117,   118,   119,   120,   121,   122,   123,   124,   125,   126,
3237
     127,   128,   129,   130,   131,   132,    -1,   134,   135,   136,
3238
     137,   138,   139,   140,   141,   142,   143,   144,   145,   146,
3239
     147,   148,   149,   150,   151,   152,     3,    11,     5,     6,
3240
       7,     8,     9,    10,    11,    12,    13,    -1,    -1,    -1,
3241
      -1,    -1,    -1,    -1,    -1,    -1,    30,    -1,    32,    33,
3242
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3243
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3244
      54,    55,    56,    -1,    58,    -1,    -1,    -1,    -1,    -1,
3245
      -1,    58,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,
3246
      -1,    -1,    69,    -1,    71,    72,    -1,    -1,    75,    -1,
3247
      -1,    78,    -1,    -1,    -1,    -1,    -1,    -1,    85,    86,
3248
      87,    88,    89,    90,    91,    92,    93,    94,    95,    96,
3249
      97,    98,    99,   100,   101,   102,   103,   104,   105,   106,
3250
     107,   108,   109,   110,   111,   112,   113,   114,   115,   116,
3251
     117,   118,   119,   120,   121,   122,   123,   124,    -1,    -1,
3252
      -1,   128,   129,   130,   131,   132,    -1,   134,   135,   136,
3253
     137,   138,   139,   140,   141,   142,   143,   144,   145,   146,
3254
     147,   148,   149,   150,   151,   152,     3,    -1,     5,     6,
3255
       7,     8,     9,    10,    11,    12,    13,    37,    38,    39,
3256
      40,    41,    42,    43,    44,    45,    46,    47,    48,    49,
3257
      50,    51,    52,    53,    54,    55,    56,    -1,    58,    -1,
3258
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,
3259
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3260
      -1,    58,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3261
      -1,    -1,    69,    -1,    71,    72,    -1,    -1,    75,    -1,
3262
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    85,    86,
3263
      87,    88,    89,    90,    91,    92,    93,    94,    95,    96,
3264
      97,    98,    99,   100,   101,   102,   103,   104,   105,   106,
3265
     107,   108,   109,   110,   111,   112,   113,   114,   115,   116,
3266
     117,   118,   119,   120,   121,   122,   123,   124,    -1,    -1,
3267
      -1,   128,   129,   130,   131,   132,    -1,   134,   135,   136,
3268
     137,   138,   139,   140,   141,   142,   143,   144,   145,   146,
3269
     147,   148,   149,   150,   151,   152,     3,    -1,     5,     6,
3270
       7,     8,     9,    10,    11,    12,    13,    39,    40,    41,
3271
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3272
      52,    53,    54,    55,    56,    -1,    58,    -1,    -1,    -1,
3273
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3274
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3275
      -1,    58,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3276
      -1,    -1,    69,    -1,    71,    72,    -1,    -1,    75,    -1,
3277
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    85,    86,
3278
      87,    88,    89,    90,    91,    92,    93,    94,    95,    96,
3279
      97,    98,    99,   100,   101,   102,   103,   104,   105,   106,
3280
     107,   108,   109,   110,   111,   112,   113,   114,   115,   116,
3281
     117,   118,   119,   120,   121,   122,   123,   124,    -1,    -1,
3282
      -1,   128,   129,   130,   131,   132,    -1,   134,   135,   136,
3283
     137,   138,   139,   140,   141,   142,   143,   144,   145,   146,
3284
     147,   148,   149,   150,   151,   152,    75,    76,    77,    78,
3285
      79,    -1,    -1,    82,    -1,    -1,    -1,    86,    39,    40,
3286
      41,    42,    43,    44,    45,    46,    47,    48,    49,    50,
3287
      51,    52,    53,    54,    55,    56,    -1,    58,    -1,    -1,
3288
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,
3289
     119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,
3290
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3291
      -1,    -1,    -1,   142,    -1,   144,   145,   146,   147,   148,
3292
     149,   150,   151,   152,    -1,    -1,    -1,    -1,    -1,    -1,
3293
      -1,    -1,    -1,    -1,    -1,     9,    10,    11,    -1,    -1,
3294
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   177,    -1,
3295
      -1,    -1,   181,    -1,   183,   184,    30,    -1,    32,    33,
3296
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3297
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3298
      54,    55,    56,    -1,    58,    -1,    -1,    -1,    -1,    -1,
3299
      -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,
3300
      -1,    -1,    -1,    -1,     9,    10,    11,    -1,    -1,    14,
3301
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3302
      -1,    -1,    -1,    -1,    -1,    30,   100,    32,    33,    34,
3303
      35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
3304
      45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
3305
      55,    56,    -1,    58,     9,    10,    11,    -1,    -1,    -1,
3306
      -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,
3307
      -1,    -1,    -1,    -1,    -1,    30,    31,    32,    33,    34,
3308
      35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
3309
      45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
3310
      55,    56,    -1,    58,     9,    10,    11,    -1,    -1,    -1,
3311
      -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,
3312
      -1,    -1,    -1,    -1,    -1,    30,    -1,    32,    33,    34,
3313
      35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
3314
      45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
3315
      55,    56,    -1,    58,    10,    11,    -1,    -1,    -1,    -1,
3316
      -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,
3317
      -1,    -1,    -1,    -1,    30,    -1,    32,    33,    34,    35,
3318
      36,    37,    38,    39,    40,    41,    42,    43,    44,    45,
3319
      46,    47,    48,    49,    50,    51,    52,    53,    54,    55,
3320
      56,    14,    58,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3321
      -1,    -1,    68,    -1,    -1,    -1,    -1,    30,    -1,    32,
3322
      33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
3323
      43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
3324
      53,    54,    55,    56,    -1,    58,    -1,    -1,    -1,    -1,
3325
      -1,    -1,    -1,    -1,    -1,    68
3326
};
3327
3328
  /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
3329
     symbol of state STATE-NUM.  */
3330
static const yytype_int16 yystos[] =
3331
{
3332
       0,   186,   191,     0,     3,     5,     6,     7,     8,    12,
3333
      13,    15,    52,    53,    57,    59,    60,    61,    62,    63,
3334
      64,    65,    66,    67,    69,    73,    74,    75,    76,    77,
3335
      78,    79,    80,    82,    85,    86,    87,    88,    90,    91,
3336
      92,    94,    96,    98,   101,   105,   106,   107,   108,   109,
3337
     110,   111,   112,   113,   116,   118,   119,   120,   121,   128,
3338
     130,   131,   132,   133,   134,   135,   136,   137,   140,   141,
3339
     142,   144,   145,   146,   147,   148,   149,   150,   151,   152,
3340
     153,   154,   155,   156,   165,   176,   177,   179,   181,   182,
3341
     183,   184,   195,   198,   199,   200,   201,   202,   218,   227,
3342
     230,   233,   236,   237,   239,   241,   255,   261,   262,   263,
3343
     264,   329,   330,   331,   332,   333,   334,   342,   344,   348,
3344
     349,   350,   351,   353,   354,   355,   356,   357,   358,   359,
3345
     360,   371,    75,   119,   128,   199,   331,   334,   331,   331,
3346
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3347
     331,   331,   331,   331,   331,   331,   331,   177,   284,   331,
3348
      31,   177,   119,   128,   177,   195,   199,   234,   235,   236,
3349
     327,   344,   345,   359,   361,   177,   282,   347,   177,   322,
3350
     323,   331,   218,   177,   177,   177,   177,   177,   177,   331,
3351
     352,   352,    75,    75,   215,   321,   352,   179,    75,    76,
3352
      78,   109,   111,   193,   194,   205,   207,   211,   214,   288,
3353
     289,   359,    79,   290,   291,   332,   282,   177,   177,   177,
3354
     177,   232,   238,   240,   242,     3,     5,     6,     7,     8,
3355
       9,    10,    11,    12,    13,    58,    69,    71,    72,    75,
3356
      78,    85,    86,    87,    88,    89,    90,    91,    92,    93,
3357
      94,    95,    96,    97,    98,    99,   100,   101,   102,   103,
3358
     104,   105,   106,   107,   108,   109,   110,   111,   112,   113,
3359
     114,   115,   116,   117,   118,   119,   120,   121,   122,   123,
3360
     124,   128,   129,   130,   131,   132,   134,   135,   136,   137,
3361
     138,   139,   140,   141,   142,   143,   144,   145,   146,   147,
3362
     148,   149,   150,   151,   152,   187,   188,   190,   192,   204,
3363
     177,   177,   335,    86,   177,   181,   329,   348,   350,   351,
3364
     358,   358,   331,    79,    81,   166,   167,   168,   368,   369,
3365
     331,   216,    37,    38,   141,   171,   189,   331,   364,   365,
3366
     366,   367,    81,   346,   368,    81,   368,   179,   359,   282,
3367
     119,   198,   201,   332,   134,   236,    71,    72,    71,    72,
3368
      89,     9,    10,    11,    30,    32,    33,    34,    35,    36,
3369
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3370
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3371
      58,    68,   176,   189,   338,   338,   169,   169,   157,   158,
3372
     181,   343,    16,    17,    18,    19,    20,    21,    22,    23,
3373
      24,    25,    26,    27,    28,    29,   154,   155,   338,    14,
3374
       3,     5,     6,     7,     8,    12,    13,    30,    69,    75,
3375
      85,    86,    87,   105,   109,   110,   119,   128,   131,   132,
3376
     141,   142,   144,   145,   146,   147,   148,   149,   150,   151,
3377
     152,   171,   178,   190,   285,   286,   331,   331,   331,   327,
3378
     236,   134,   169,   282,   157,   158,   169,   181,   178,   283,
3379
     286,   287,   331,   331,   174,   176,    92,   331,   156,   325,
3380
     326,   331,   331,   215,   331,   331,   176,   176,   176,    16,
3381
     174,   176,   176,   216,   100,   170,   194,   206,   211,   176,
3382
     174,   176,   174,   176,    16,   174,   176,   224,   225,   358,
3383
     331,   372,   373,   331,   178,    75,    75,    75,    75,   176,
3384
     203,   179,   364,   364,   196,   197,   344,   345,   331,   364,
3385
     176,   157,   158,   181,   166,   369,    83,   331,   358,    81,
3386
     166,   369,   178,   133,   180,   199,   200,   217,   218,   177,
3387
     331,   358,    14,   175,   174,   182,   183,   331,   332,   231,
3388
     177,   218,   177,    31,   176,   331,   331,   331,    31,   331,
3389
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3390
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3391
     331,   331,   331,   331,   331,   345,   331,   335,    75,   128,
3392
     226,   335,   179,   190,   359,   362,   179,   190,   359,   362,
3393
      75,   179,   359,   363,   363,   352,   282,   189,   331,   331,
3394
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3395
     331,   331,   331,   331,    31,   174,   208,   174,   178,   178,
3396
     328,   359,   363,   363,   359,   352,   174,   208,   178,   323,
3397
     177,   178,   331,   176,   174,   100,   178,   178,   178,   331,
3398
     321,   180,    75,   179,   170,   176,   176,   194,   214,   289,
3399
     331,   291,   174,   208,   174,   208,   178,   176,   138,   246,
3400
     335,   138,   247,    31,   243,   179,   191,   178,   178,   174,
3401
     208,   282,   178,   175,    75,    75,    53,    75,    79,    84,
3402
     370,   180,   181,   180,   180,   177,   200,   364,   141,   189,
3403
     331,    16,   365,   180,    75,   331,   331,   216,   331,    31,
3404
     177,   335,   177,   331,   282,   331,   282,   331,   282,   282,
3405
     175,   358,    30,   331,   287,   178,   178,   287,   347,   175,
3406
     287,   178,    31,   218,   331,    31,   218,   260,   324,   326,
3407
     331,   156,   331,   141,   181,   189,   249,   358,   219,    31,
3408
     179,   253,   179,   335,   220,   193,   205,   209,   212,   213,
3409
     179,   225,   178,   373,   178,   344,   139,   248,   179,   295,
3410
     344,   335,    30,   119,   142,   143,   177,   195,   271,   272,
3411
     273,   274,   275,   277,   248,   191,   180,    16,   196,   175,
3412
      84,   175,   331,   178,   178,   177,   358,   331,   246,   178,
3413
     178,    89,   331,   119,   120,   121,   122,   123,   124,   125,
3414
     126,   127,   128,   199,   265,   266,   267,   268,   269,   307,
3415
     308,   177,   265,   180,   180,   180,   246,   216,   178,   216,
3416
     176,   174,   331,   177,   364,   358,    14,   178,    31,   218,
3417
     252,   176,   254,   176,   254,   104,   256,   257,   258,   259,
3418
     331,   114,   115,   223,   100,   213,   174,   208,   210,   213,
3419
     176,   295,   335,   292,   174,   179,   272,   272,   275,    37,
3420
      35,    35,    37,   335,   180,   331,   175,   176,   364,   248,
3421
     218,    31,   176,   269,   178,   174,   208,    30,   177,   270,
3422
     276,   277,   278,   279,   280,   308,   265,   178,   248,   176,
3423
      93,   325,   331,   364,   175,   249,    31,   218,   251,   216,
3424
     254,   102,   103,   104,   254,   180,   174,   208,   180,   174,
3425
     208,   174,   208,   177,   179,    75,   212,   180,   174,   208,
3426
     179,   103,   116,   129,   180,   199,   244,   293,   294,   304,
3427
     305,   306,   307,   344,   292,   178,   272,   272,   273,   273,
3428
     272,   179,   180,   178,   335,   216,    31,   281,   267,   277,
3429
     277,   280,    38,   228,    37,    35,    35,    37,   178,   116,
3430
     339,   335,   176,   178,   178,   178,   216,    99,   102,   176,
3431
     331,    31,   176,   180,    14,   258,   331,    14,   221,   344,
3432
     216,   213,   180,   292,   335,   295,   293,   270,   334,   111,
3433
     180,   292,   179,   271,    14,   178,   171,   229,   277,   277,
3434
     278,   278,   277,   281,   177,   281,   179,    31,   218,   250,
3435
     251,    97,   176,   176,    31,   176,   216,   216,   331,   331,
3436
      35,    79,   222,   180,   180,   190,   176,   179,   296,    79,
3437
     309,   310,   311,   338,    75,   119,   142,   143,   188,   271,
3438
     319,   320,   180,   292,   336,    79,   336,    79,   189,   340,
3439
     341,   336,   292,   216,   176,   216,   216,   344,   178,    16,
3440
     245,   119,   180,   190,   297,   298,   299,   300,   301,   302,
3441
     344,    16,   335,   174,   176,   190,    16,    16,    75,   319,
3442
     174,   176,   180,   337,   335,   179,    79,   174,   208,   179,
3443
     180,    95,   179,   331,   176,   180,   298,   176,   176,   100,
3444
     117,   169,   331,   179,    79,   310,   335,   331,   331,   176,
3445
     320,   331,    16,   179,   313,   216,   341,   178,   216,   176,
3446
     216,    75,   187,   308,   295,   190,   335,   312,    16,   335,
3447
     177,   335,   335,   336,   331,   312,   180,   180,   180,   190,
3448
     179,   180,   199,   307,   314,   315,   331,   265,   313,   180,
3449
     336,   336,   312,   315,   338,   335,   178,   180,    75,   281,
3450
     335,   336,   316,   176,   179,   303,   177,   318,   216,   336,
3451
     265,   336,   180,   178,    14,   176,   179,   317,   331,   216,
3452
     336,   176,   180
3453
};
3454
3455
  /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
3456
static const yytype_int16 yyr1[] =
3457
{
3458
       0,   185,   186,   187,   187,   187,   187,   187,   187,   187,
3459
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3460
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3461
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3462
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3463
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3464
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3465
     187,   187,   187,   187,   188,   188,   188,   188,   188,   188,
3466
     188,   188,   189,   189,   190,   190,   191,   191,   192,   192,
3467
     193,   193,   194,   194,   195,   195,   195,   195,   196,   196,
3468
     197,   197,   198,   199,   199,   200,   200,   200,   200,   200,
3469
     201,   201,   202,   202,   202,   202,   202,   203,   202,   204,
3470
     202,   202,   202,   202,   202,   205,   205,   206,   207,   208,
3471
     208,   209,   209,   210,   210,   211,   211,   212,   212,   213,
3472
     213,   214,   214,   215,   215,   216,   216,   217,   217,   217,
3473
     217,   218,   218,   218,   218,   218,   218,   218,   218,   218,
3474
     218,   218,   218,   218,   218,   218,   218,   218,   218,   219,
3475
     218,   218,   218,   218,   218,   218,   220,   220,   221,   221,
3476
     222,   222,   223,   223,   224,   224,   225,   226,   226,   227,
3477
     228,   228,   229,   229,   231,   230,   232,   230,   233,   233,
3478
     234,   234,   235,   235,   236,   236,   236,   238,   237,   240,
3479
     239,   242,   241,   243,   243,   244,   245,   245,   246,   246,
3480
     247,   247,   248,   248,   249,   249,   249,   249,   250,   250,
3481
     251,   251,   252,   252,   253,   253,   253,   253,   254,   254,
3482
     254,   254,   254,   255,   256,   256,   257,   257,   258,   258,
3483
     259,   259,   260,   260,   261,   261,   262,   262,   263,   263,
3484
     264,   264,   265,   265,   266,   266,   267,   267,   268,   268,
3485
     269,   269,   270,   270,   271,   271,   271,   271,   272,   272,
3486
     273,   273,   274,   274,   275,   275,   276,   276,   276,   276,
3487
     277,   277,   277,   278,   278,   279,   279,   280,   280,   281,
3488
     281,   282,   282,   283,   283,   284,   284,   284,   285,   285,
3489
     285,   286,   286,   286,   286,   286,   287,   287,   288,   288,
3490
     289,   290,   290,   291,   291,   292,   292,   293,   293,   293,
3491
     293,   293,   293,   294,   294,   294,   295,   295,   296,   296,
3492
     296,   297,   297,   298,   298,   299,   300,   300,   300,   300,
3493
     301,   301,   302,   303,   303,   304,   304,   305,   305,   306,
3494
     306,   307,   307,   308,   308,   308,   308,   308,   308,   308,
3495
     308,   308,   308,   309,   309,   310,   310,   311,   311,   312,
3496
     312,   312,   313,   313,   314,   314,   316,   315,   317,   317,
3497
     317,   318,   318,   319,   319,   320,   320,   321,   322,   322,
3498
     323,   324,   324,   324,   325,   325,   326,   326,   326,   326,
3499
     328,   327,   329,   329,   329,   330,   331,   331,   331,   331,
3500
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3501
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3502
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3503
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3504
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3505
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3506
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3507
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3508
     331,   331,   332,   332,   333,   334,   335,   336,   337,   338,
3509
     338,   339,   339,   340,   340,   341,   341,   342,   342,   342,
3510
     342,   343,   342,   344,   344,   345,   345,   345,   346,   346,
3511
     346,   347,   347,   348,   348,   348,   348,   349,   349,   349,
3512
     349,   349,   349,   349,   349,   350,   350,   350,   350,   350,
3513
     350,   350,   350,   350,   350,   351,   351,   351,   351,   352,
3514
     352,   353,   354,   354,   354,   354,   354,   355,   355,   356,
3515
     356,   356,   356,   357,   357,   357,   357,   357,   358,   358,
3516
     358,   358,   359,   359,   359,   360,   360,   361,   361,   361,
3517
     361,   361,   361,   362,   362,   362,   363,   363,   363,   364,
3518
     365,   365,   366,   366,   367,   367,   367,   367,   367,   367,
3519
     367,   368,   368,   368,   368,   369,   369,   369,   369,   369,
3520
     369,   369,   369,   370,   370,   370,   370,   371,   371,   371,
3521
     371,   371,   371,   371,   372,   372,   373
3522
};
3523
3524
  /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN.  */
3525
static const yytype_int8 yyr2[] =
3526
{
3527
       0,     2,     1,     1,     1,     1,     1,     1,     1,     1,
3528
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3529
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3530
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3531
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3532
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3533
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3534
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3535
       1,     1,     1,     1,     1,     1,     2,     0,     1,     1,
3536
       1,     1,     1,     1,     1,     1,     1,     1,     1,     2,
3537
       1,     3,     5,     1,     2,     1,     1,     1,     1,     1,
3538
       1,     3,     1,     1,     2,     4,     3,     0,     6,     0,
3539
       5,     3,     4,     3,     4,     1,     1,     6,     6,     0,
3540
       1,     3,     1,     3,     1,     3,     1,     1,     2,     1,
3541
       3,     1,     3,     3,     1,     2,     0,     1,     1,     2,
3542
       4,     3,     1,     1,     5,     7,     9,     5,     3,     3,
3543
       3,     3,     3,     3,     1,     2,     6,     7,     9,     0,
3544
       6,     1,     6,     3,     2,     3,     0,     9,     1,     3,
3545
       0,     1,     0,     4,     1,     3,     1,     1,     1,    13,
3546
       0,     1,     0,     1,     0,    10,     0,     9,     1,     2,
3547
       1,     2,     0,     1,     1,     1,     1,     0,     7,     0,
3548
       8,     0,     9,     0,     2,     5,     0,     2,     0,     2,
3549
       0,     2,     0,     2,     1,     2,     4,     3,     1,     4,
3550
       1,     4,     1,     4,     3,     4,     4,     5,     0,     5,
3551
       5,     4,     4,     7,     0,     2,     1,     3,     4,     4,
3552
       1,     3,     1,     4,     5,     6,     1,     3,     6,     7,
3553
       3,     6,     2,     0,     1,     3,     2,     1,     0,     1,
3554
       7,     9,     0,     1,     1,     2,     1,     1,     1,     1,
3555
       1,     3,     3,     3,     3,     3,     1,     2,     1,     1,
3556
       1,     1,     1,     1,     3,     3,     3,     3,     3,     0,
3557
       2,     2,     4,     1,     3,     2,     4,     4,     3,     1,
3558
       3,     3,     1,     1,     3,     2,     1,     1,     3,     1,
3559
       1,     3,     1,     1,     3,     2,     0,     4,     3,     4,
3560
       5,    12,     1,     1,     2,     3,     1,     3,     1,     2,
3561
       3,     1,     2,     2,     2,     3,     3,     3,     4,     3,
3562
       1,     1,     3,     1,     3,     1,     1,     0,     1,     0,
3563
       1,     1,     2,     1,     1,     1,     1,     1,     1,     1,
3564
       1,     1,     1,     3,     1,     2,     4,     5,     7,     0,
3565
       2,     3,     0,     3,     0,     1,     0,     9,     1,     3,
3566
       3,     0,     3,     3,     1,     4,     4,     4,     3,     1,
3567
       1,     0,     3,     1,     0,     1,     3,     4,     2,     1,
3568
       0,    10,     3,     2,     3,     2,     1,     6,     5,     3,
3569
       4,     2,     2,     3,     3,     3,     3,     3,     3,     3,
3570
       3,     3,     3,     3,     3,     3,     2,     2,     2,     2,
3571
       3,     3,     3,     3,     3,     3,     3,     3,     3,     3,
3572
       3,     3,     3,     3,     3,     3,     3,     3,     2,     2,
3573
       2,     2,     3,     3,     3,     3,     3,     3,     3,     3,
3574
       3,     3,     3,     3,     1,     1,     5,     4,     3,     1,
3575
       2,     2,     2,     2,     2,     2,     2,     2,     2,     1,
3576
       3,     2,     1,     2,     4,     2,     2,     1,     2,     2,
3577
       3,     1,    13,    12,     1,     1,     0,     0,     0,     0,
3578
       1,     0,     5,     3,     1,     1,     2,     2,     2,     4,
3579
       4,     0,     3,     1,     1,     1,     1,     3,     0,     1,
3580
       1,     0,     1,     4,     3,     1,     3,     1,     1,     3,
3581
       2,     3,     1,     1,     1,     1,     1,     1,     1,     1,
3582
       1,     1,     1,     1,     1,     3,     3,     5,     5,     0,
3583
       1,     1,     1,     3,     1,     1,     1,     1,     1,     1,
3584
       3,     1,     1,     1,     4,     4,     4,     1,     1,     1,
3585
       3,     3,     1,     4,     2,     3,     3,     1,     4,     3,
3586
       3,     3,     3,     1,     3,     1,     1,     3,     1,     1,
3587
       0,     1,     3,     1,     3,     1,     4,     2,     2,     6,
3588
       4,     2,     2,     1,     2,     1,     4,     3,     3,     3,
3589
       3,     6,     3,     1,     1,     2,     1,     5,     4,     2,
3590
       2,     4,     2,     2,     1,     3,     1
3591
};
3592
3593
3594
#define yyerrok         (yyerrstatus = 0)
3595
#define yyclearin       (yychar = YYEMPTY)
3596
0
#define YYEMPTY         (-2)
3597
0
#define YYEOF           0
3598
3599
0
#define YYACCEPT        goto yyacceptlab
3600
0
#define YYABORT         goto yyabortlab
3601
0
#define YYERROR         goto yyerrorlab
3602
3603
3604
#define YYRECOVERING()  (!!yyerrstatus)
3605
3606
#define YYBACKUP(Token, Value)                                    \
3607
  do                                                              \
3608
    if (yychar == YYEMPTY)                                        \
3609
      {                                                           \
3610
        yychar = (Token);                                         \
3611
        yylval = (Value);                                         \
3612
        YYPOPSTACK (yylen);                                       \
3613
        yystate = *yyssp;                                         \
3614
        goto yybackup;                                            \
3615
      }                                                           \
3616
    else                                                          \
3617
      {                                                           \
3618
        yyerror (YY_("syntax error: cannot back up")); \
3619
        YYERROR;                                                  \
3620
      }                                                           \
3621
  while (0)
3622
3623
/* Error token number */
3624
0
#define YYTERROR        1
3625
#define YYERRCODE       256
3626
3627
3628
3629
/* Enable debugging if requested.  */
3630
#if ZENDDEBUG
3631
3632
# ifndef YYFPRINTF
3633
#  include <stdio.h> /* INFRINGES ON USER NAME SPACE */
3634
#  define YYFPRINTF fprintf
3635
# endif
3636
3637
# define YYDPRINTF(Args)                        \
3638
do {                                            \
3639
  if (yydebug)                                  \
3640
    YYFPRINTF Args;                             \
3641
} while (0)
3642
3643
/* This macro is provided for backward compatibility. */
3644
#ifndef YY_LOCATION_PRINT
3645
# define YY_LOCATION_PRINT(File, Loc) ((void) 0)
3646
#endif
3647
3648
3649
# define YY_SYMBOL_PRINT(Title, Type, Value, Location)                    \
3650
do {                                                                      \
3651
  if (yydebug)                                                            \
3652
    {                                                                     \
3653
      YYFPRINTF (stderr, "%s ", Title);                                   \
3654
      yy_symbol_print (stderr,                                            \
3655
                  Type, Value); \
3656
      YYFPRINTF (stderr, "\n");                                           \
3657
    }                                                                     \
3658
} while (0)
3659
3660
3661
/*-----------------------------------.
3662
| Print this symbol's value on YYO.  |
3663
`-----------------------------------*/
3664
3665
static void
3666
yy_symbol_value_print (FILE *yyo, int yytype, YYSTYPE const * const yyvaluep)
3667
{
3668
  FILE *yyoutput = yyo;
3669
  YYUSE (yyoutput);
3670
  if (!yyvaluep)
3671
    return;
3672
# ifdef YYPRINT
3673
  if (yytype < YYNTOKENS)
3674
    YYPRINT (yyo, yytoknum[yytype], *yyvaluep);
3675
# endif
3676
  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
3677
  YYUSE (yytype);
3678
  YY_IGNORE_MAYBE_UNINITIALIZED_END
3679
}
3680
3681
3682
/*---------------------------.
3683
| Print this symbol on YYO.  |
3684
`---------------------------*/
3685
3686
static void
3687
yy_symbol_print (FILE *yyo, int yytype, YYSTYPE const * const yyvaluep)
3688
{
3689
  YYFPRINTF (yyo, "%s %s (",
3690
             yytype < YYNTOKENS ? "token" : "nterm", yytname[yytype]);
3691
3692
  yy_symbol_value_print (yyo, yytype, yyvaluep);
3693
  YYFPRINTF (yyo, ")");
3694
}
3695
3696
/*------------------------------------------------------------------.
3697
| yy_stack_print -- Print the state stack from its BOTTOM up to its |
3698
| TOP (included).                                                   |
3699
`------------------------------------------------------------------*/
3700
3701
static void
3702
yy_stack_print (yy_state_t *yybottom, yy_state_t *yytop)
3703
{
3704
  YYFPRINTF (stderr, "Stack now");
3705
  for (; yybottom <= yytop; yybottom++)
3706
    {
3707
      int yybot = *yybottom;
3708
      YYFPRINTF (stderr, " %d", yybot);
3709
    }
3710
  YYFPRINTF (stderr, "\n");
3711
}
3712
3713
# define YY_STACK_PRINT(Bottom, Top)                            \
3714
do {                                                            \
3715
  if (yydebug)                                                  \
3716
    yy_stack_print ((Bottom), (Top));                           \
3717
} while (0)
3718
3719
3720
/*------------------------------------------------.
3721
| Report that the YYRULE is going to be reduced.  |
3722
`------------------------------------------------*/
3723
3724
static void
3725
yy_reduce_print (yy_state_t *yyssp, YYSTYPE *yyvsp, int yyrule)
3726
{
3727
  int yylno = yyrline[yyrule];
3728
  int yynrhs = yyr2[yyrule];
3729
  int yyi;
3730
  YYFPRINTF (stderr, "Reducing stack by rule %d (line %d):\n",
3731
             yyrule - 1, yylno);
3732
  /* The symbols being reduced.  */
3733
  for (yyi = 0; yyi < yynrhs; yyi++)
3734
    {
3735
      YYFPRINTF (stderr, "   $%d = ", yyi + 1);
3736
      yy_symbol_print (stderr,
3737
                       yystos[+yyssp[yyi + 1 - yynrhs]],
3738
                       &yyvsp[(yyi + 1) - (yynrhs)]
3739
                                              );
3740
      YYFPRINTF (stderr, "\n");
3741
    }
3742
}
3743
3744
# define YY_REDUCE_PRINT(Rule)          \
3745
do {                                    \
3746
  if (yydebug)                          \
3747
    yy_reduce_print (yyssp, yyvsp, Rule); \
3748
} while (0)
3749
3750
/* Nonzero means print parse trace.  It is left uninitialized so that
3751
   multiple parsers can coexist.  */
3752
int yydebug;
3753
#else /* !ZENDDEBUG */
3754
# define YYDPRINTF(Args)
3755
# define YY_SYMBOL_PRINT(Title, Type, Value, Location)
3756
# define YY_STACK_PRINT(Bottom, Top)
3757
# define YY_REDUCE_PRINT(Rule)
3758
#endif /* !ZENDDEBUG */
3759
3760
3761
/* YYINITDEPTH -- initial size of the parser's stacks.  */
3762
#ifndef YYINITDEPTH
3763
0
# define YYINITDEPTH 200
3764
#endif
3765
3766
/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
3767
   if the built-in stack extension method is used).
3768
3769
   Do not make this value too large; the results are undefined if
3770
   YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
3771
   evaluated with infinite-precision integer arithmetic.  */
3772
3773
#ifndef YYMAXDEPTH
3774
0
# define YYMAXDEPTH 10000
3775
#endif
3776
3777
3778
#if YYERROR_VERBOSE
3779
3780
# ifndef yystrlen
3781
#  if defined __GLIBC__ && defined _STRING_H
3782
0
#   define yystrlen(S) (YY_CAST (YYPTRDIFF_T, strlen (S)))
3783
#  else
3784
/* Return the length of YYSTR.  */
3785
static YYPTRDIFF_T
3786
yystrlen (const char *yystr)
3787
{
3788
  YYPTRDIFF_T yylen;
3789
  for (yylen = 0; yystr[yylen]; yylen++)
3790
    continue;
3791
  return yylen;
3792
}
3793
#  endif
3794
# endif
3795
3796
# ifndef yystpcpy
3797
#  if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
3798
0
#   define yystpcpy stpcpy
3799
#  else
3800
/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
3801
   YYDEST.  */
3802
static char *
3803
yystpcpy (char *yydest, const char *yysrc)
3804
{
3805
  char *yyd = yydest;
3806
  const char *yys = yysrc;
3807
3808
  while ((*yyd++ = *yys++) != '\0')
3809
    continue;
3810
3811
  return yyd - 1;
3812
}
3813
#  endif
3814
# endif
3815
3816
# ifndef yytnamerr
3817
/* Copy to YYRES the contents of YYSTR after stripping away unnecessary
3818
   quotes and backslashes, so that it's suitable for yyerror.  The
3819
   heuristic is that double-quoting is unnecessary unless the string
3820
   contains an apostrophe, a comma, or backslash (other than
3821
   backslash-backslash).  YYSTR is taken from yytname.  If YYRES is
3822
   null, do not copy; instead, return the length of what the result
3823
   would have been.  */
3824
static YYPTRDIFF_T
3825
yytnamerr (char *yyres, const char *yystr)
3826
{
3827
  if (*yystr == '"')
3828
    {
3829
      YYPTRDIFF_T yyn = 0;
3830
      char const *yyp = yystr;
3831
3832
      for (;;)
3833
        switch (*++yyp)
3834
          {
3835
          case '\'':
3836
          case ',':
3837
            goto do_not_strip_quotes;
3838
3839
          case '\\':
3840
            if (*++yyp != '\\')
3841
              goto do_not_strip_quotes;
3842
            else
3843
              goto append;
3844
3845
          append:
3846
          default:
3847
            if (yyres)
3848
              yyres[yyn] = *yyp;
3849
            yyn++;
3850
            break;
3851
3852
          case '"':
3853
            if (yyres)
3854
              yyres[yyn] = '\0';
3855
            return yyn;
3856
          }
3857
    do_not_strip_quotes: ;
3858
    }
3859
3860
  if (yyres)
3861
    return yystpcpy (yyres, yystr) - yyres;
3862
  else
3863
    return yystrlen (yystr);
3864
}
3865
# endif
3866
3867
/* Copy into *YYMSG, which is of size *YYMSG_ALLOC, an error message
3868
   about the unexpected token YYTOKEN for the state stack whose top is
3869
   YYSSP.
3870
3871
   Return 0 if *YYMSG was successfully written.  Return 1 if *YYMSG is
3872
   not large enough to hold the message.  In that case, also set
3873
   *YYMSG_ALLOC to the required number of bytes.  Return 2 if the
3874
   required number of bytes is too large to store.  */
3875
static int
3876
yysyntax_error (YYPTRDIFF_T *yymsg_alloc, char **yymsg,
3877
                yy_state_t *yyssp, int yytoken)
3878
0
{
3879
0
  enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
3880
  /* Internationalized format string. */
3881
0
  const char *yyformat = YY_NULLPTR;
3882
  /* Arguments of yyformat: reported tokens (one for the "unexpected",
3883
     one per "expected"). */
3884
0
  char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
3885
  /* Actual size of YYARG. */
3886
0
  int yycount = 0;
3887
  /* Cumulated lengths of YYARG.  */
3888
0
  YYPTRDIFF_T yysize = 0;
3889
3890
  /* There are many possibilities here to consider:
3891
     - If this state is a consistent state with a default action, then
3892
       the only way this function was invoked is if the default action
3893
       is an error action.  In that case, don't check for expected
3894
       tokens because there are none.
3895
     - The only way there can be no lookahead present (in yychar) is if
3896
       this state is a consistent state with a default action.  Thus,
3897
       detecting the absence of a lookahead is sufficient to determine
3898
       that there is no unexpected or expected token to report.  In that
3899
       case, just report a simple "syntax error".
3900
     - Don't assume there isn't a lookahead just because this state is a
3901
       consistent state with a default action.  There might have been a
3902
       previous inconsistent state, consistent state with a non-default
3903
       action, or user semantic action that manipulated yychar.
3904
     - Of course, the expected token list depends on states to have
3905
       correct lookahead information, and it depends on the parser not
3906
       to perform extra reductions after fetching a lookahead from the
3907
       scanner and before detecting a syntax error.  Thus, state merging
3908
       (from LALR or IELR) and default reductions corrupt the expected
3909
       token list.  However, the list is correct for canonical LR with
3910
       one exception: it will still contain any token that will not be
3911
       accepted due to an error action in a later state.
3912
  */
3913
0
  if (yytoken != YYEMPTY)
3914
0
    {
3915
0
      int yyn = yypact[+*yyssp];
3916
0
      YYPTRDIFF_T yysize0 = yytnamerr (YY_NULLPTR, yytname[yytoken]);
3917
0
      yysize = yysize0;
3918
0
      yyarg[yycount++] = yytname[yytoken];
3919
0
      if (!yypact_value_is_default (yyn))
3920
0
        {
3921
          /* Start YYX at -YYN if negative to avoid negative indexes in
3922
             YYCHECK.  In other words, skip the first -YYN actions for
3923
             this state because they are default actions.  */
3924
0
          int yyxbegin = yyn < 0 ? -yyn : 0;
3925
          /* Stay within bounds of both yycheck and yytname.  */
3926
0
          int yychecklim = YYLAST - yyn + 1;
3927
0
          int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
3928
0
          int yyx;
3929
3930
0
          for (yyx = yyxbegin; yyx < yyxend; ++yyx)
3931
0
            if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR
3932
0
                && !yytable_value_is_error (yytable[yyx + yyn]))
3933
0
              {
3934
0
                if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
3935
0
                  {
3936
0
                    yycount = 1;
3937
0
                    yysize = yysize0;
3938
0
                    break;
3939
0
                  }
3940
0
                yyarg[yycount++] = yytname[yyx];
3941
0
                {
3942
0
                  YYPTRDIFF_T yysize1
3943
0
                    = yysize + yytnamerr (YY_NULLPTR, yytname[yyx]);
3944
0
                  if (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM)
3945
0
                    yysize = yysize1;
3946
0
                  else
3947
0
                    return 2;
3948
0
                }
3949
0
              }
3950
0
        }
3951
0
    }
3952
3953
0
  switch (yycount)
3954
0
    {
3955
0
# define YYCASE_(N, S)                      \
3956
0
      case N:                               \
3957
0
        yyformat = S;                       \
3958
0
      break
3959
0
    default: /* Avoid compiler warnings. */
3960
0
      YYCASE_(0, YY_("syntax error"));
3961
0
      YYCASE_(1, YY_("syntax error, unexpected %s"));
3962
0
      YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s"));
3963
0
      YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s"));
3964
0
      YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s"));
3965
0
      YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"));
3966
0
# undef YYCASE_
3967
0
    }
3968
3969
0
  {
3970
    /* Don't count the "%s"s in the final size, but reserve room for
3971
       the terminator.  */
3972
0
    YYPTRDIFF_T yysize1 = yysize + (yystrlen (yyformat) - 2 * yycount) + 1;
3973
0
    if (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM)
3974
0
      yysize = yysize1;
3975
0
    else
3976
0
      return 2;
3977
0
  }
3978
3979
0
  if (*yymsg_alloc < yysize)
3980
0
    {
3981
0
      *yymsg_alloc = 2 * yysize;
3982
0
      if (! (yysize <= *yymsg_alloc
3983
0
             && *yymsg_alloc <= YYSTACK_ALLOC_MAXIMUM))
3984
0
        *yymsg_alloc = YYSTACK_ALLOC_MAXIMUM;
3985
0
      return 1;
3986
0
    }
3987
3988
  /* Avoid sprintf, as that infringes on the user's name space.
3989
     Don't have undefined behavior even if the translation
3990
     produced a string with the wrong number of "%s"s.  */
3991
0
  {
3992
0
    char *yyp = *yymsg;
3993
0
    int yyi = 0;
3994
0
    while ((*yyp = *yyformat) != '\0')
3995
0
      if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount)
3996
0
        {
3997
0
          yyp += yytnamerr (yyp, yyarg[yyi++]);
3998
0
          yyformat += 2;
3999
0
        }
4000
0
      else
4001
0
        {
4002
0
          ++yyp;
4003
0
          ++yyformat;
4004
0
        }
4005
0
  }
4006
0
  return 0;
4007
0
}
4008
#endif /* YYERROR_VERBOSE */
4009
4010
/*-----------------------------------------------.
4011
| Release the memory associated to this symbol.  |
4012
`-----------------------------------------------*/
4013
4014
static void
4015
yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)
4016
0
{
4017
0
  YYUSE (yyvaluep);
4018
0
  if (!yymsg)
4019
0
    yymsg = "Deleting";
4020
0
  YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
4021
4022
0
  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
4023
0
  switch (yytype)
4024
0
    {
4025
0
    case 73: /* "integer"  */
4026
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4027
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4028
0
#line 4029 "/src/php-src/Zend/zend_language_parser.c"
4029
0
        break;
4030
4031
0
    case 74: /* "floating-point number"  */
4032
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4033
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4034
0
#line 4035 "/src/php-src/Zend/zend_language_parser.c"
4035
0
        break;
4036
4037
0
    case 75: /* "identifier"  */
4038
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4039
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4040
0
#line 4041 "/src/php-src/Zend/zend_language_parser.c"
4041
0
        break;
4042
4043
0
    case 76: /* "fully qualified name"  */
4044
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4045
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4046
0
#line 4047 "/src/php-src/Zend/zend_language_parser.c"
4047
0
        break;
4048
4049
0
    case 77: /* "namespace-relative name"  */
4050
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4051
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4052
0
#line 4053 "/src/php-src/Zend/zend_language_parser.c"
4053
0
        break;
4054
4055
0
    case 78: /* "namespaced name"  */
4056
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4057
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4058
0
#line 4059 "/src/php-src/Zend/zend_language_parser.c"
4059
0
        break;
4060
4061
0
    case 79: /* "variable"  */
4062
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4063
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4064
0
#line 4065 "/src/php-src/Zend/zend_language_parser.c"
4065
0
        break;
4066
4067
0
    case 80: /* T_INLINE_HTML  */
4068
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4069
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4070
0
#line 4071 "/src/php-src/Zend/zend_language_parser.c"
4071
0
        break;
4072
4073
0
    case 81: /* "string content"  */
4074
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4075
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4076
0
#line 4077 "/src/php-src/Zend/zend_language_parser.c"
4077
0
        break;
4078
4079
0
    case 82: /* "quoted string"  */
4080
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4081
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4082
0
#line 4083 "/src/php-src/Zend/zend_language_parser.c"
4083
0
        break;
4084
4085
0
    case 83: /* "variable name"  */
4086
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4087
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4088
0
#line 4089 "/src/php-src/Zend/zend_language_parser.c"
4089
0
        break;
4090
4091
0
    case 84: /* "number"  */
4092
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4093
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4094
0
#line 4095 "/src/php-src/Zend/zend_language_parser.c"
4095
0
        break;
4096
4097
0
    case 190: /* identifier  */
4098
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4099
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4100
0
#line 4101 "/src/php-src/Zend/zend_language_parser.c"
4101
0
        break;
4102
4103
0
    case 191: /* top_statement_list  */
4104
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4105
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4106
0
#line 4107 "/src/php-src/Zend/zend_language_parser.c"
4107
0
        break;
4108
4109
0
    case 192: /* namespace_declaration_name  */
4110
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4111
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4112
0
#line 4113 "/src/php-src/Zend/zend_language_parser.c"
4113
0
        break;
4114
4115
0
    case 193: /* namespace_name  */
4116
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4117
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4118
0
#line 4119 "/src/php-src/Zend/zend_language_parser.c"
4119
0
        break;
4120
4121
0
    case 194: /* legacy_namespace_name  */
4122
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4123
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4124
0
#line 4125 "/src/php-src/Zend/zend_language_parser.c"
4125
0
        break;
4126
4127
0
    case 195: /* name  */
4128
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4129
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4130
0
#line 4131 "/src/php-src/Zend/zend_language_parser.c"
4131
0
        break;
4132
4133
0
    case 196: /* attribute_decl  */
4134
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4135
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4136
0
#line 4137 "/src/php-src/Zend/zend_language_parser.c"
4137
0
        break;
4138
4139
0
    case 197: /* attribute_group  */
4140
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4141
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4142
0
#line 4143 "/src/php-src/Zend/zend_language_parser.c"
4143
0
        break;
4144
4145
0
    case 198: /* attribute  */
4146
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4147
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4148
0
#line 4149 "/src/php-src/Zend/zend_language_parser.c"
4149
0
        break;
4150
4151
0
    case 199: /* attributes  */
4152
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4153
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4154
0
#line 4155 "/src/php-src/Zend/zend_language_parser.c"
4155
0
        break;
4156
4157
0
    case 200: /* attributed_statement  */
4158
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4159
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4160
0
#line 4161 "/src/php-src/Zend/zend_language_parser.c"
4161
0
        break;
4162
4163
0
    case 201: /* attributed_top_statement  */
4164
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4165
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4166
0
#line 4167 "/src/php-src/Zend/zend_language_parser.c"
4167
0
        break;
4168
4169
0
    case 202: /* top_statement  */
4170
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4171
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4172
0
#line 4173 "/src/php-src/Zend/zend_language_parser.c"
4173
0
        break;
4174
4175
0
    case 206: /* group_use_declaration  */
4176
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4177
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4178
0
#line 4179 "/src/php-src/Zend/zend_language_parser.c"
4179
0
        break;
4180
4181
0
    case 207: /* mixed_group_use_declaration  */
4182
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4183
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4184
0
#line 4185 "/src/php-src/Zend/zend_language_parser.c"
4185
0
        break;
4186
4187
0
    case 209: /* inline_use_declarations  */
4188
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4189
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4190
0
#line 4191 "/src/php-src/Zend/zend_language_parser.c"
4191
0
        break;
4192
4193
0
    case 210: /* unprefixed_use_declarations  */
4194
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4195
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4196
0
#line 4197 "/src/php-src/Zend/zend_language_parser.c"
4197
0
        break;
4198
4199
0
    case 211: /* use_declarations  */
4200
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4201
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4202
0
#line 4203 "/src/php-src/Zend/zend_language_parser.c"
4203
0
        break;
4204
4205
0
    case 212: /* inline_use_declaration  */
4206
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4207
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4208
0
#line 4209 "/src/php-src/Zend/zend_language_parser.c"
4209
0
        break;
4210
4211
0
    case 213: /* unprefixed_use_declaration  */
4212
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4213
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4214
0
#line 4215 "/src/php-src/Zend/zend_language_parser.c"
4215
0
        break;
4216
4217
0
    case 214: /* use_declaration  */
4218
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4219
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4220
0
#line 4221 "/src/php-src/Zend/zend_language_parser.c"
4221
0
        break;
4222
4223
0
    case 215: /* const_list  */
4224
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4225
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4226
0
#line 4227 "/src/php-src/Zend/zend_language_parser.c"
4227
0
        break;
4228
4229
0
    case 216: /* inner_statement_list  */
4230
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4231
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4232
0
#line 4233 "/src/php-src/Zend/zend_language_parser.c"
4233
0
        break;
4234
4235
0
    case 217: /* inner_statement  */
4236
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4237
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4238
0
#line 4239 "/src/php-src/Zend/zend_language_parser.c"
4239
0
        break;
4240
4241
0
    case 218: /* statement  */
4242
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4243
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4244
0
#line 4245 "/src/php-src/Zend/zend_language_parser.c"
4245
0
        break;
4246
4247
0
    case 220: /* catch_list  */
4248
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4249
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4250
0
#line 4251 "/src/php-src/Zend/zend_language_parser.c"
4251
0
        break;
4252
4253
0
    case 221: /* catch_name_list  */
4254
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4255
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4256
0
#line 4257 "/src/php-src/Zend/zend_language_parser.c"
4257
0
        break;
4258
4259
0
    case 222: /* optional_variable  */
4260
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4261
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4262
0
#line 4263 "/src/php-src/Zend/zend_language_parser.c"
4263
0
        break;
4264
4265
0
    case 223: /* finally_statement  */
4266
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4267
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4268
0
#line 4269 "/src/php-src/Zend/zend_language_parser.c"
4269
0
        break;
4270
4271
0
    case 224: /* unset_variables  */
4272
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4273
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4274
0
#line 4275 "/src/php-src/Zend/zend_language_parser.c"
4275
0
        break;
4276
4277
0
    case 225: /* unset_variable  */
4278
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4279
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4280
0
#line 4281 "/src/php-src/Zend/zend_language_parser.c"
4281
0
        break;
4282
4283
0
    case 226: /* function_name  */
4284
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4285
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4286
0
#line 4287 "/src/php-src/Zend/zend_language_parser.c"
4287
0
        break;
4288
4289
0
    case 227: /* function_declaration_statement  */
4290
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4291
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4292
0
#line 4293 "/src/php-src/Zend/zend_language_parser.c"
4293
0
        break;
4294
4295
0
    case 230: /* class_declaration_statement  */
4296
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4297
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4298
0
#line 4299 "/src/php-src/Zend/zend_language_parser.c"
4299
0
        break;
4300
4301
0
    case 237: /* trait_declaration_statement  */
4302
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4303
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4304
0
#line 4305 "/src/php-src/Zend/zend_language_parser.c"
4305
0
        break;
4306
4307
0
    case 239: /* interface_declaration_statement  */
4308
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4309
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4310
0
#line 4311 "/src/php-src/Zend/zend_language_parser.c"
4311
0
        break;
4312
4313
0
    case 241: /* enum_declaration_statement  */
4314
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4315
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4316
0
#line 4317 "/src/php-src/Zend/zend_language_parser.c"
4317
0
        break;
4318
4319
0
    case 243: /* enum_backing_type  */
4320
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4321
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4322
0
#line 4323 "/src/php-src/Zend/zend_language_parser.c"
4323
0
        break;
4324
4325
0
    case 244: /* enum_case  */
4326
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4327
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4328
0
#line 4329 "/src/php-src/Zend/zend_language_parser.c"
4329
0
        break;
4330
4331
0
    case 245: /* enum_case_expr  */
4332
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4333
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4334
0
#line 4335 "/src/php-src/Zend/zend_language_parser.c"
4335
0
        break;
4336
4337
0
    case 246: /* extends_from  */
4338
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4339
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4340
0
#line 4341 "/src/php-src/Zend/zend_language_parser.c"
4341
0
        break;
4342
4343
0
    case 247: /* interface_extends_list  */
4344
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4345
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4346
0
#line 4347 "/src/php-src/Zend/zend_language_parser.c"
4347
0
        break;
4348
4349
0
    case 248: /* implements_list  */
4350
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4351
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4352
0
#line 4353 "/src/php-src/Zend/zend_language_parser.c"
4353
0
        break;
4354
4355
0
    case 249: /* foreach_variable  */
4356
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4357
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4358
0
#line 4359 "/src/php-src/Zend/zend_language_parser.c"
4359
0
        break;
4360
4361
0
    case 250: /* for_statement  */
4362
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4363
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4364
0
#line 4365 "/src/php-src/Zend/zend_language_parser.c"
4365
0
        break;
4366
4367
0
    case 251: /* foreach_statement  */
4368
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4369
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4370
0
#line 4371 "/src/php-src/Zend/zend_language_parser.c"
4371
0
        break;
4372
4373
0
    case 252: /* declare_statement  */
4374
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4375
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4376
0
#line 4377 "/src/php-src/Zend/zend_language_parser.c"
4377
0
        break;
4378
4379
0
    case 253: /* switch_case_list  */
4380
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4381
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4382
0
#line 4383 "/src/php-src/Zend/zend_language_parser.c"
4383
0
        break;
4384
4385
0
    case 254: /* case_list  */
4386
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4387
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4388
0
#line 4389 "/src/php-src/Zend/zend_language_parser.c"
4389
0
        break;
4390
4391
0
    case 255: /* match  */
4392
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4393
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4394
0
#line 4395 "/src/php-src/Zend/zend_language_parser.c"
4395
0
        break;
4396
4397
0
    case 256: /* match_arm_list  */
4398
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4399
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4400
0
#line 4401 "/src/php-src/Zend/zend_language_parser.c"
4401
0
        break;
4402
4403
0
    case 257: /* non_empty_match_arm_list  */
4404
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4405
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4406
0
#line 4407 "/src/php-src/Zend/zend_language_parser.c"
4407
0
        break;
4408
4409
0
    case 258: /* match_arm  */
4410
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4411
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4412
0
#line 4413 "/src/php-src/Zend/zend_language_parser.c"
4413
0
        break;
4414
4415
0
    case 259: /* match_arm_cond_list  */
4416
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4417
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4418
0
#line 4419 "/src/php-src/Zend/zend_language_parser.c"
4419
0
        break;
4420
4421
0
    case 260: /* while_statement  */
4422
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4423
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4424
0
#line 4425 "/src/php-src/Zend/zend_language_parser.c"
4425
0
        break;
4426
4427
0
    case 261: /* if_stmt_without_else  */
4428
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4429
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4430
0
#line 4431 "/src/php-src/Zend/zend_language_parser.c"
4431
0
        break;
4432
4433
0
    case 262: /* if_stmt  */
4434
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4435
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4436
0
#line 4437 "/src/php-src/Zend/zend_language_parser.c"
4437
0
        break;
4438
4439
0
    case 263: /* alt_if_stmt_without_else  */
4440
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4441
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4442
0
#line 4443 "/src/php-src/Zend/zend_language_parser.c"
4443
0
        break;
4444
4445
0
    case 264: /* alt_if_stmt  */
4446
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4447
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4448
0
#line 4449 "/src/php-src/Zend/zend_language_parser.c"
4449
0
        break;
4450
4451
0
    case 265: /* parameter_list  */
4452
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4453
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4454
0
#line 4455 "/src/php-src/Zend/zend_language_parser.c"
4455
0
        break;
4456
4457
0
    case 266: /* non_empty_parameter_list  */
4458
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4459
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4460
0
#line 4461 "/src/php-src/Zend/zend_language_parser.c"
4461
0
        break;
4462
4463
0
    case 267: /* attributed_parameter  */
4464
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4465
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4466
0
#line 4467 "/src/php-src/Zend/zend_language_parser.c"
4467
0
        break;
4468
4469
0
    case 269: /* parameter  */
4470
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4471
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4472
0
#line 4473 "/src/php-src/Zend/zend_language_parser.c"
4473
0
        break;
4474
4475
0
    case 270: /* optional_type_without_static  */
4476
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4477
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4478
0
#line 4479 "/src/php-src/Zend/zend_language_parser.c"
4479
0
        break;
4480
4481
0
    case 271: /* type_expr  */
4482
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4483
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4484
0
#line 4485 "/src/php-src/Zend/zend_language_parser.c"
4485
0
        break;
4486
4487
0
    case 272: /* type  */
4488
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4489
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4490
0
#line 4491 "/src/php-src/Zend/zend_language_parser.c"
4491
0
        break;
4492
4493
0
    case 273: /* union_type_element  */
4494
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4495
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4496
0
#line 4497 "/src/php-src/Zend/zend_language_parser.c"
4497
0
        break;
4498
4499
0
    case 274: /* union_type  */
4500
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4501
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4502
0
#line 4503 "/src/php-src/Zend/zend_language_parser.c"
4503
0
        break;
4504
4505
0
    case 275: /* intersection_type  */
4506
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4507
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4508
0
#line 4509 "/src/php-src/Zend/zend_language_parser.c"
4509
0
        break;
4510
4511
0
    case 276: /* type_expr_without_static  */
4512
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4513
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4514
0
#line 4515 "/src/php-src/Zend/zend_language_parser.c"
4515
0
        break;
4516
4517
0
    case 277: /* type_without_static  */
4518
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4519
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4520
0
#line 4521 "/src/php-src/Zend/zend_language_parser.c"
4521
0
        break;
4522
4523
0
    case 278: /* union_type_without_static_element  */
4524
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4525
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4526
0
#line 4527 "/src/php-src/Zend/zend_language_parser.c"
4527
0
        break;
4528
4529
0
    case 279: /* union_type_without_static  */
4530
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4531
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4532
0
#line 4533 "/src/php-src/Zend/zend_language_parser.c"
4533
0
        break;
4534
4535
0
    case 280: /* intersection_type_without_static  */
4536
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4537
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4538
0
#line 4539 "/src/php-src/Zend/zend_language_parser.c"
4539
0
        break;
4540
4541
0
    case 281: /* return_type  */
4542
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4543
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4544
0
#line 4545 "/src/php-src/Zend/zend_language_parser.c"
4545
0
        break;
4546
4547
0
    case 282: /* argument_list  */
4548
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4549
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4550
0
#line 4551 "/src/php-src/Zend/zend_language_parser.c"
4551
0
        break;
4552
4553
0
    case 283: /* non_empty_argument_list  */
4554
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4555
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4556
0
#line 4557 "/src/php-src/Zend/zend_language_parser.c"
4557
0
        break;
4558
4559
0
    case 284: /* clone_argument_list  */
4560
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4561
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4562
0
#line 4563 "/src/php-src/Zend/zend_language_parser.c"
4563
0
        break;
4564
4565
0
    case 285: /* non_empty_clone_argument_list  */
4566
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4567
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4568
0
#line 4569 "/src/php-src/Zend/zend_language_parser.c"
4569
0
        break;
4570
4571
0
    case 286: /* argument_no_expr  */
4572
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4573
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4574
0
#line 4575 "/src/php-src/Zend/zend_language_parser.c"
4575
0
        break;
4576
4577
0
    case 287: /* argument  */
4578
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4579
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4580
0
#line 4581 "/src/php-src/Zend/zend_language_parser.c"
4581
0
        break;
4582
4583
0
    case 288: /* global_var_list  */
4584
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4585
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4586
0
#line 4587 "/src/php-src/Zend/zend_language_parser.c"
4587
0
        break;
4588
4589
0
    case 289: /* global_var  */
4590
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4591
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4592
0
#line 4593 "/src/php-src/Zend/zend_language_parser.c"
4593
0
        break;
4594
4595
0
    case 290: /* static_var_list  */
4596
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4597
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4598
0
#line 4599 "/src/php-src/Zend/zend_language_parser.c"
4599
0
        break;
4600
4601
0
    case 291: /* static_var  */
4602
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4603
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4604
0
#line 4605 "/src/php-src/Zend/zend_language_parser.c"
4605
0
        break;
4606
4607
0
    case 292: /* class_statement_list  */
4608
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4609
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4610
0
#line 4611 "/src/php-src/Zend/zend_language_parser.c"
4611
0
        break;
4612
4613
0
    case 293: /* attributed_class_statement  */
4614
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4615
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4616
0
#line 4617 "/src/php-src/Zend/zend_language_parser.c"
4617
0
        break;
4618
4619
0
    case 294: /* class_statement  */
4620
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4621
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4622
0
#line 4623 "/src/php-src/Zend/zend_language_parser.c"
4623
0
        break;
4624
4625
0
    case 295: /* class_name_list  */
4626
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4627
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4628
0
#line 4629 "/src/php-src/Zend/zend_language_parser.c"
4629
0
        break;
4630
4631
0
    case 296: /* trait_adaptations  */
4632
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4633
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4634
0
#line 4635 "/src/php-src/Zend/zend_language_parser.c"
4635
0
        break;
4636
4637
0
    case 297: /* trait_adaptation_list  */
4638
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4639
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4640
0
#line 4641 "/src/php-src/Zend/zend_language_parser.c"
4641
0
        break;
4642
4643
0
    case 298: /* trait_adaptation  */
4644
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4645
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4646
0
#line 4647 "/src/php-src/Zend/zend_language_parser.c"
4647
0
        break;
4648
4649
0
    case 299: /* trait_precedence  */
4650
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4651
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4652
0
#line 4653 "/src/php-src/Zend/zend_language_parser.c"
4653
0
        break;
4654
4655
0
    case 300: /* trait_alias  */
4656
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4657
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4658
0
#line 4659 "/src/php-src/Zend/zend_language_parser.c"
4659
0
        break;
4660
4661
0
    case 301: /* trait_method_reference  */
4662
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4663
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4664
0
#line 4665 "/src/php-src/Zend/zend_language_parser.c"
4665
0
        break;
4666
4667
0
    case 302: /* absolute_trait_method_reference  */
4668
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4669
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4670
0
#line 4671 "/src/php-src/Zend/zend_language_parser.c"
4671
0
        break;
4672
4673
0
    case 303: /* method_body  */
4674
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4675
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4676
0
#line 4677 "/src/php-src/Zend/zend_language_parser.c"
4677
0
        break;
4678
4679
0
    case 307: /* non_empty_member_modifiers  */
4680
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4681
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4682
0
#line 4683 "/src/php-src/Zend/zend_language_parser.c"
4683
0
        break;
4684
4685
0
    case 309: /* property_list  */
4686
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4687
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4688
0
#line 4689 "/src/php-src/Zend/zend_language_parser.c"
4689
0
        break;
4690
4691
0
    case 310: /* property  */
4692
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4693
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4694
0
#line 4695 "/src/php-src/Zend/zend_language_parser.c"
4695
0
        break;
4696
4697
0
    case 311: /* hooked_property  */
4698
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4699
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4700
0
#line 4701 "/src/php-src/Zend/zend_language_parser.c"
4701
0
        break;
4702
4703
0
    case 312: /* property_hook_list  */
4704
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4705
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4706
0
#line 4707 "/src/php-src/Zend/zend_language_parser.c"
4707
0
        break;
4708
4709
0
    case 313: /* optional_property_hook_list  */
4710
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4711
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4712
0
#line 4713 "/src/php-src/Zend/zend_language_parser.c"
4713
0
        break;
4714
4715
0
    case 315: /* property_hook  */
4716
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4717
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4718
0
#line 4719 "/src/php-src/Zend/zend_language_parser.c"
4719
0
        break;
4720
4721
0
    case 317: /* property_hook_body  */
4722
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4723
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4724
0
#line 4725 "/src/php-src/Zend/zend_language_parser.c"
4725
0
        break;
4726
4727
0
    case 318: /* optional_parameter_list  */
4728
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4729
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4730
0
#line 4731 "/src/php-src/Zend/zend_language_parser.c"
4731
0
        break;
4732
4733
0
    case 319: /* class_const_list  */
4734
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4735
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4736
0
#line 4737 "/src/php-src/Zend/zend_language_parser.c"
4737
0
        break;
4738
4739
0
    case 320: /* class_const_decl  */
4740
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4741
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4742
0
#line 4743 "/src/php-src/Zend/zend_language_parser.c"
4743
0
        break;
4744
4745
0
    case 321: /* const_decl  */
4746
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4747
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4748
0
#line 4749 "/src/php-src/Zend/zend_language_parser.c"
4749
0
        break;
4750
4751
0
    case 322: /* echo_expr_list  */
4752
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4753
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4754
0
#line 4755 "/src/php-src/Zend/zend_language_parser.c"
4755
0
        break;
4756
4757
0
    case 323: /* echo_expr  */
4758
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4759
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4760
0
#line 4761 "/src/php-src/Zend/zend_language_parser.c"
4761
0
        break;
4762
4763
0
    case 324: /* for_cond_exprs  */
4764
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4765
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4766
0
#line 4767 "/src/php-src/Zend/zend_language_parser.c"
4767
0
        break;
4768
4769
0
    case 325: /* for_exprs  */
4770
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4771
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4772
0
#line 4773 "/src/php-src/Zend/zend_language_parser.c"
4773
0
        break;
4774
4775
0
    case 326: /* non_empty_for_exprs  */
4776
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4777
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4778
0
#line 4779 "/src/php-src/Zend/zend_language_parser.c"
4779
0
        break;
4780
4781
0
    case 327: /* anonymous_class  */
4782
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4783
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4784
0
#line 4785 "/src/php-src/Zend/zend_language_parser.c"
4785
0
        break;
4786
4787
0
    case 329: /* new_dereferenceable  */
4788
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4789
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4790
0
#line 4791 "/src/php-src/Zend/zend_language_parser.c"
4791
0
        break;
4792
4793
0
    case 330: /* new_non_dereferenceable  */
4794
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4795
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4796
0
#line 4797 "/src/php-src/Zend/zend_language_parser.c"
4797
0
        break;
4798
4799
0
    case 331: /* expr  */
4800
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4801
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4802
0
#line 4803 "/src/php-src/Zend/zend_language_parser.c"
4803
0
        break;
4804
4805
0
    case 332: /* inline_function  */
4806
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4807
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4808
0
#line 4809 "/src/php-src/Zend/zend_language_parser.c"
4809
0
        break;
4810
4811
0
    case 335: /* backup_doc_comment  */
4812
0
#line 52 "/src/php-src/Zend/zend_language_parser.y"
4813
0
            { if (((*yyvaluep).str)) zend_string_release_ex(((*yyvaluep).str), 0); }
4814
0
#line 4815 "/src/php-src/Zend/zend_language_parser.c"
4815
0
        break;
4816
4817
0
    case 339: /* lexical_vars  */
4818
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4819
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4820
0
#line 4821 "/src/php-src/Zend/zend_language_parser.c"
4821
0
        break;
4822
4823
0
    case 340: /* lexical_var_list  */
4824
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4825
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4826
0
#line 4827 "/src/php-src/Zend/zend_language_parser.c"
4827
0
        break;
4828
4829
0
    case 341: /* lexical_var  */
4830
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4831
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4832
0
#line 4833 "/src/php-src/Zend/zend_language_parser.c"
4833
0
        break;
4834
4835
0
    case 342: /* function_call  */
4836
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4837
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4838
0
#line 4839 "/src/php-src/Zend/zend_language_parser.c"
4839
0
        break;
4840
4841
0
    case 344: /* class_name  */
4842
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4843
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4844
0
#line 4845 "/src/php-src/Zend/zend_language_parser.c"
4845
0
        break;
4846
4847
0
    case 345: /* class_name_reference  */
4848
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4849
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4850
0
#line 4851 "/src/php-src/Zend/zend_language_parser.c"
4851
0
        break;
4852
4853
0
    case 346: /* backticks_expr  */
4854
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4855
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4856
0
#line 4857 "/src/php-src/Zend/zend_language_parser.c"
4857
0
        break;
4858
4859
0
    case 347: /* ctor_arguments  */
4860
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4861
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4862
0
#line 4863 "/src/php-src/Zend/zend_language_parser.c"
4863
0
        break;
4864
4865
0
    case 348: /* dereferenceable_scalar  */
4866
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4867
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4868
0
#line 4869 "/src/php-src/Zend/zend_language_parser.c"
4869
0
        break;
4870
4871
0
    case 349: /* scalar  */
4872
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4873
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4874
0
#line 4875 "/src/php-src/Zend/zend_language_parser.c"
4875
0
        break;
4876
4877
0
    case 350: /* constant  */
4878
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4879
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4880
0
#line 4881 "/src/php-src/Zend/zend_language_parser.c"
4881
0
        break;
4882
4883
0
    case 351: /* class_constant  */
4884
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4885
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4886
0
#line 4887 "/src/php-src/Zend/zend_language_parser.c"
4887
0
        break;
4888
4889
0
    case 352: /* optional_expr  */
4890
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4891
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4892
0
#line 4893 "/src/php-src/Zend/zend_language_parser.c"
4893
0
        break;
4894
4895
0
    case 353: /* variable_class_name  */
4896
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4897
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4898
0
#line 4899 "/src/php-src/Zend/zend_language_parser.c"
4899
0
        break;
4900
4901
0
    case 354: /* fully_dereferenceable  */
4902
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4903
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4904
0
#line 4905 "/src/php-src/Zend/zend_language_parser.c"
4905
0
        break;
4906
4907
0
    case 355: /* array_object_dereferenceable  */
4908
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4909
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4910
0
#line 4911 "/src/php-src/Zend/zend_language_parser.c"
4911
0
        break;
4912
4913
0
    case 356: /* callable_expr  */
4914
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4915
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4916
0
#line 4917 "/src/php-src/Zend/zend_language_parser.c"
4917
0
        break;
4918
4919
0
    case 357: /* callable_variable  */
4920
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4921
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4922
0
#line 4923 "/src/php-src/Zend/zend_language_parser.c"
4923
0
        break;
4924
4925
0
    case 358: /* variable  */
4926
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4927
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4928
0
#line 4929 "/src/php-src/Zend/zend_language_parser.c"
4929
0
        break;
4930
4931
0
    case 359: /* simple_variable  */
4932
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4933
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4934
0
#line 4935 "/src/php-src/Zend/zend_language_parser.c"
4935
0
        break;
4936
4937
0
    case 360: /* static_member  */
4938
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4939
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4940
0
#line 4941 "/src/php-src/Zend/zend_language_parser.c"
4941
0
        break;
4942
4943
0
    case 361: /* new_variable  */
4944
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4945
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4946
0
#line 4947 "/src/php-src/Zend/zend_language_parser.c"
4947
0
        break;
4948
4949
0
    case 362: /* member_name  */
4950
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4951
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4952
0
#line 4953 "/src/php-src/Zend/zend_language_parser.c"
4953
0
        break;
4954
4955
0
    case 363: /* property_name  */
4956
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4957
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4958
0
#line 4959 "/src/php-src/Zend/zend_language_parser.c"
4959
0
        break;
4960
4961
0
    case 364: /* array_pair_list  */
4962
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4963
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4964
0
#line 4965 "/src/php-src/Zend/zend_language_parser.c"
4965
0
        break;
4966
4967
0
    case 365: /* possible_array_pair  */
4968
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4969
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4970
0
#line 4971 "/src/php-src/Zend/zend_language_parser.c"
4971
0
        break;
4972
4973
0
    case 366: /* non_empty_array_pair_list  */
4974
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4975
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4976
0
#line 4977 "/src/php-src/Zend/zend_language_parser.c"
4977
0
        break;
4978
4979
0
    case 367: /* array_pair  */
4980
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4981
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4982
0
#line 4983 "/src/php-src/Zend/zend_language_parser.c"
4983
0
        break;
4984
4985
0
    case 368: /* encaps_list  */
4986
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4987
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4988
0
#line 4989 "/src/php-src/Zend/zend_language_parser.c"
4989
0
        break;
4990
4991
0
    case 369: /* encaps_var  */
4992
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4993
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4994
0
#line 4995 "/src/php-src/Zend/zend_language_parser.c"
4995
0
        break;
4996
4997
0
    case 370: /* encaps_var_offset  */
4998
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4999
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
5000
0
#line 5001 "/src/php-src/Zend/zend_language_parser.c"
5001
0
        break;
5002
5003
0
    case 371: /* internal_functions_in_yacc  */
5004
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
5005
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
5006
0
#line 5007 "/src/php-src/Zend/zend_language_parser.c"
5007
0
        break;
5008
5009
0
    case 372: /* isset_variables  */
5010
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
5011
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
5012
0
#line 5013 "/src/php-src/Zend/zend_language_parser.c"
5013
0
        break;
5014
5015
0
    case 373: /* isset_variable  */
5016
0
#line 51 "/src/php-src/Zend/zend_language_parser.y"
5017
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
5018
0
#line 5019 "/src/php-src/Zend/zend_language_parser.c"
5019
0
        break;
5020
5021
0
      default:
5022
0
        break;
5023
0
    }
5024
0
  YY_IGNORE_MAYBE_UNINITIALIZED_END
5025
0
}
5026
5027
5028
5029
5030
/*----------.
5031
| yyparse.  |
5032
`----------*/
5033
5034
int
5035
yyparse (void)
5036
0
{
5037
/* The lookahead symbol.  */
5038
0
int yychar;
5039
5040
5041
/* The semantic value of the lookahead symbol.  */
5042
/* Default value used for initialization, for pacifying older GCCs
5043
   or non-GCC compilers.  */
5044
0
YY_INITIAL_VALUE (static YYSTYPE yyval_default;)
5045
0
YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
5046
5047
    /* Number of syntax errors so far.  */
5048
0
    int yynerrs;
5049
5050
0
    yy_state_fast_t yystate;
5051
    /* Number of tokens to shift before error messages enabled.  */
5052
0
    int yyerrstatus;
5053
5054
    /* The stacks and their tools:
5055
       'yyss': related to states.
5056
       'yyvs': related to semantic values.
5057
5058
       Refer to the stacks through separate pointers, to allow yyoverflow
5059
       to reallocate them elsewhere.  */
5060
5061
    /* The state stack.  */
5062
0
    yy_state_t yyssa[YYINITDEPTH];
5063
0
    yy_state_t *yyss;
5064
0
    yy_state_t *yyssp;
5065
5066
    /* The semantic value stack.  */
5067
0
    YYSTYPE yyvsa[YYINITDEPTH];
5068
0
    YYSTYPE *yyvs;
5069
0
    YYSTYPE *yyvsp;
5070
5071
0
    YYPTRDIFF_T yystacksize;
5072
5073
0
  int yyn;
5074
0
  int yyresult;
5075
  /* Lookahead token as an internal (translated) token number.  */
5076
0
  int yytoken = 0;
5077
  /* The variables used to return semantic value and location from the
5078
     action routines.  */
5079
0
  YYSTYPE yyval;
5080
5081
0
#if YYERROR_VERBOSE
5082
  /* Buffer for error messages, and its allocated size.  */
5083
0
  char yymsgbuf[128];
5084
0
  char *yymsg = yymsgbuf;
5085
0
  YYPTRDIFF_T yymsg_alloc = sizeof yymsgbuf;
5086
0
#endif
5087
5088
0
#define YYPOPSTACK(N)   (yyvsp -= (N), yyssp -= (N))
5089
5090
  /* The number of symbols on the RHS of the reduced rule.
5091
     Keep to zero when no symbol should be popped.  */
5092
0
  int yylen = 0;
5093
5094
0
  yyssp = yyss = yyssa;
5095
0
  yyvsp = yyvs = yyvsa;
5096
0
  yystacksize = YYINITDEPTH;
5097
5098
0
  YYDPRINTF ((stderr, "Starting parse\n"));
5099
5100
0
  yystate = 0;
5101
0
  yyerrstatus = 0;
5102
0
  yynerrs = 0;
5103
0
  yychar = YYEMPTY; /* Cause a token to be read.  */
5104
0
  goto yysetstate;
5105
5106
5107
/*------------------------------------------------------------.
5108
| yynewstate -- push a new state, which is found in yystate.  |
5109
`------------------------------------------------------------*/
5110
0
yynewstate:
5111
  /* In all cases, when you get here, the value and location stacks
5112
     have just been pushed.  So pushing a state here evens the stacks.  */
5113
0
  yyssp++;
5114
5115
5116
/*--------------------------------------------------------------------.
5117
| yysetstate -- set current state (the top of the stack) to yystate.  |
5118
`--------------------------------------------------------------------*/
5119
0
yysetstate:
5120
0
  YYDPRINTF ((stderr, "Entering state %d\n", yystate));
5121
0
  YY_ASSERT (0 <= yystate && yystate < YYNSTATES);
5122
0
  YY_IGNORE_USELESS_CAST_BEGIN
5123
0
  *yyssp = YY_CAST (yy_state_t, yystate);
5124
0
  YY_IGNORE_USELESS_CAST_END
5125
5126
0
  if (yyss + yystacksize - 1 <= yyssp)
5127
#if !defined yyoverflow && !defined YYSTACK_RELOCATE
5128
    goto yyexhaustedlab;
5129
#else
5130
0
    {
5131
      /* Get the current used size of the three stacks, in elements.  */
5132
0
      YYPTRDIFF_T yysize = yyssp - yyss + 1;
5133
5134
# if defined yyoverflow
5135
      {
5136
        /* Give user a chance to reallocate the stack.  Use copies of
5137
           these so that the &'s don't force the real ones into
5138
           memory.  */
5139
        yy_state_t *yyss1 = yyss;
5140
        YYSTYPE *yyvs1 = yyvs;
5141
5142
        /* Each stack pointer address is followed by the size of the
5143
           data in use in that stack, in bytes.  This used to be a
5144
           conditional around just the two extra args, but that might
5145
           be undefined if yyoverflow is a macro.  */
5146
        yyoverflow (YY_("memory exhausted"),
5147
                    &yyss1, yysize * YYSIZEOF (*yyssp),
5148
                    &yyvs1, yysize * YYSIZEOF (*yyvsp),
5149
                    &yystacksize);
5150
        yyss = yyss1;
5151
        yyvs = yyvs1;
5152
      }
5153
# else /* defined YYSTACK_RELOCATE */
5154
      /* Extend the stack our own way.  */
5155
0
      if (YYMAXDEPTH <= yystacksize)
5156
0
        goto yyexhaustedlab;
5157
0
      yystacksize *= 2;
5158
0
      if (YYMAXDEPTH < yystacksize)
5159
0
        yystacksize = YYMAXDEPTH;
5160
5161
0
      {
5162
0
        yy_state_t *yyss1 = yyss;
5163
0
        union yyalloc *yyptr =
5164
0
          YY_CAST (union yyalloc *,
5165
0
                   YYSTACK_ALLOC (YY_CAST (YYSIZE_T, YYSTACK_BYTES (yystacksize))));
5166
0
        if (! yyptr)
5167
0
          goto yyexhaustedlab;
5168
0
        YYSTACK_RELOCATE (yyss_alloc, yyss);
5169
0
        YYSTACK_RELOCATE (yyvs_alloc, yyvs);
5170
0
# undef YYSTACK_RELOCATE
5171
0
        if (yyss1 != yyssa)
5172
0
          YYSTACK_FREE (yyss1);
5173
0
      }
5174
0
# endif
5175
5176
0
      yyssp = yyss + yysize - 1;
5177
0
      yyvsp = yyvs + yysize - 1;
5178
5179
0
      YY_IGNORE_USELESS_CAST_BEGIN
5180
0
      YYDPRINTF ((stderr, "Stack size increased to %ld\n",
5181
0
                  YY_CAST (long, yystacksize)));
5182
0
      YY_IGNORE_USELESS_CAST_END
5183
5184
0
      if (yyss + yystacksize - 1 <= yyssp)
5185
0
        YYABORT;
5186
0
    }
5187
0
#endif /* !defined yyoverflow && !defined YYSTACK_RELOCATE */
5188
5189
0
  if (yystate == YYFINAL)
5190
0
    YYACCEPT;
5191
5192
0
  goto yybackup;
5193
5194
5195
/*-----------.
5196
| yybackup.  |
5197
`-----------*/
5198
0
yybackup:
5199
  /* Do appropriate processing given the current state.  Read a
5200
     lookahead token if we need one and don't already have one.  */
5201
5202
  /* First try to decide what to do without reference to lookahead token.  */
5203
0
  yyn = yypact[yystate];
5204
0
  if (yypact_value_is_default (yyn))
5205
0
    goto yydefault;
5206
5207
  /* Not known => get a lookahead token if don't already have one.  */
5208
5209
  /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol.  */
5210
0
  if (yychar == YYEMPTY)
5211
0
    {
5212
0
      YYDPRINTF ((stderr, "Reading a token: "));
5213
0
      yychar = yylex (&yylval);
5214
0
    }
5215
5216
0
  if (yychar <= YYEOF)
5217
0
    {
5218
0
      yychar = yytoken = YYEOF;
5219
0
      YYDPRINTF ((stderr, "Now at end of input.\n"));
5220
0
    }
5221
0
  else
5222
0
    {
5223
0
      yytoken = YYTRANSLATE (yychar);
5224
0
      YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
5225
0
    }
5226
5227
  /* If the proper action on seeing token YYTOKEN is to reduce or to
5228
     detect an error, take that action.  */
5229
0
  yyn += yytoken;
5230
0
  if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
5231
0
    goto yydefault;
5232
0
  yyn = yytable[yyn];
5233
0
  if (yyn <= 0)
5234
0
    {
5235
0
      if (yytable_value_is_error (yyn))
5236
0
        goto yyerrlab;
5237
0
      yyn = -yyn;
5238
0
      goto yyreduce;
5239
0
    }
5240
5241
  /* Count tokens shifted since error; after three, turn off error
5242
     status.  */
5243
0
  if (yyerrstatus)
5244
0
    yyerrstatus--;
5245
5246
  /* Shift the lookahead token.  */
5247
0
  YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
5248
0
  yystate = yyn;
5249
0
  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
5250
0
  *++yyvsp = yylval;
5251
0
  YY_IGNORE_MAYBE_UNINITIALIZED_END
5252
5253
  /* Discard the shifted token.  */
5254
0
  yychar = YYEMPTY;
5255
0
  goto yynewstate;
5256
5257
5258
/*-----------------------------------------------------------.
5259
| yydefault -- do the default action for the current state.  |
5260
`-----------------------------------------------------------*/
5261
0
yydefault:
5262
0
  yyn = yydefact[yystate];
5263
0
  if (yyn == 0)
5264
0
    goto yyerrlab;
5265
0
  goto yyreduce;
5266
5267
5268
/*-----------------------------.
5269
| yyreduce -- do a reduction.  |
5270
`-----------------------------*/
5271
0
yyreduce:
5272
  /* yyn is the number of a rule to reduce with.  */
5273
0
  yylen = yyr2[yyn];
5274
5275
  /* If YYLEN is nonzero, implement the default value of the action:
5276
     '$$ = $1'.
5277
5278
     Otherwise, the following line sets YYVAL to garbage.
5279
     This behavior is undocumented and Bison
5280
     users should not rely upon it.  Assigning to YYVAL
5281
     unconditionally makes the parser a bit smaller, and it avoids a
5282
     GCC warning that YYVAL may be used uninitialized.  */
5283
0
  yyval = yyvsp[1-yylen];
5284
5285
5286
0
  YY_REDUCE_PRINT (yyn);
5287
0
  switch (yyn)
5288
0
    {
5289
0
  case 2:
5290
0
#line 304 "/src/php-src/Zend/zend_language_parser.y"
5291
0
                                { CG(ast) = (yyvsp[0].ast); (void) zendnerrs; }
5292
0
#line 5293 "/src/php-src/Zend/zend_language_parser.c"
5293
0
    break;
5294
5295
0
  case 84:
5296
0
#line 329 "/src/php-src/Zend/zend_language_parser.y"
5297
0
                         { (yyval.ast) = (yyvsp[0].ast); }
5298
0
#line 5299 "/src/php-src/Zend/zend_language_parser.c"
5299
0
    break;
5300
5301
0
  case 85:
5302
0
#line 330 "/src/php-src/Zend/zend_language_parser.y"
5303
0
                               {
5304
0
      zval zv;
5305
0
      if (zend_lex_tstring(&zv, (yyvsp[0].ident)) == FAILURE) { YYABORT; }
5306
0
      (yyval.ast) = zend_ast_create_zval(&zv);
5307
0
    }
5308
0
#line 5309 "/src/php-src/Zend/zend_language_parser.c"
5309
0
    break;
5310
5311
0
  case 86:
5312
0
#line 338 "/src/php-src/Zend/zend_language_parser.y"
5313
0
                                                 { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
5314
0
#line 5315 "/src/php-src/Zend/zend_language_parser.c"
5315
0
    break;
5316
5317
0
  case 87:
5318
0
#line 339 "/src/php-src/Zend/zend_language_parser.y"
5319
0
                       { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_STMT_LIST); }
5320
0
#line 5321 "/src/php-src/Zend/zend_language_parser.c"
5321
0
    break;
5322
5323
0
  case 88:
5324
0
#line 344 "/src/php-src/Zend/zend_language_parser.y"
5325
0
                                                                                        { (yyval.ast) = (yyvsp[0].ast); }
5326
0
#line 5327 "/src/php-src/Zend/zend_language_parser.c"
5327
0
    break;
5328
5329
0
  case 89:
5330
0
#line 345 "/src/php-src/Zend/zend_language_parser.y"
5331
0
                                                                                { (yyval.ast) = (yyvsp[0].ast); }
5332
0
#line 5333 "/src/php-src/Zend/zend_language_parser.c"
5333
0
    break;
5334
5335
0
  case 90:
5336
0
#line 350 "/src/php-src/Zend/zend_language_parser.y"
5337
0
                                                                                        { (yyval.ast) = (yyvsp[0].ast); }
5338
0
#line 5339 "/src/php-src/Zend/zend_language_parser.c"
5339
0
    break;
5340
5341
0
  case 91:
5342
0
#line 351 "/src/php-src/Zend/zend_language_parser.y"
5343
0
                                                                                { (yyval.ast) = (yyvsp[0].ast); }
5344
0
#line 5345 "/src/php-src/Zend/zend_language_parser.c"
5345
0
    break;
5346
5347
0
  case 92:
5348
0
#line 356 "/src/php-src/Zend/zend_language_parser.y"
5349
0
                                                                                { (yyval.ast) = (yyvsp[0].ast); }
5350
0
#line 5351 "/src/php-src/Zend/zend_language_parser.c"
5351
0
    break;
5352
5353
0
  case 93:
5354
0
#line 357 "/src/php-src/Zend/zend_language_parser.y"
5355
0
                                                                        { (yyval.ast) = (yyvsp[0].ast); }
5356
0
#line 5357 "/src/php-src/Zend/zend_language_parser.c"
5357
0
    break;
5358
5359
0
  case 94:
5360
0
#line 361 "/src/php-src/Zend/zend_language_parser.y"
5361
0
                                                                                                { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_NAME_NOT_FQ; }
5362
0
#line 5363 "/src/php-src/Zend/zend_language_parser.c"
5363
0
    break;
5364
5365
0
  case 95:
5366
0
#line 362 "/src/php-src/Zend/zend_language_parser.y"
5367
0
                                                                                        { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_NAME_NOT_FQ; }
5368
0
#line 5369 "/src/php-src/Zend/zend_language_parser.c"
5369
0
    break;
5370
5371
0
  case 96:
5372
0
#line 363 "/src/php-src/Zend/zend_language_parser.y"
5373
0
                                                                                { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_NAME_FQ; }
5374
0
#line 5375 "/src/php-src/Zend/zend_language_parser.c"
5375
0
    break;
5376
5377
0
  case 97:
5378
0
#line 364 "/src/php-src/Zend/zend_language_parser.y"
5379
0
                                                                                        { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_NAME_RELATIVE; }
5380
0
#line 5381 "/src/php-src/Zend/zend_language_parser.c"
5381
0
    break;
5382
5383
0
  case 98:
5384
0
#line 369 "/src/php-src/Zend/zend_language_parser.y"
5385
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ATTRIBUTE, (yyvsp[0].ast), NULL); }
5386
0
#line 5387 "/src/php-src/Zend/zend_language_parser.c"
5387
0
    break;
5388
5389
0
  case 99:
5390
0
#line 371 "/src/php-src/Zend/zend_language_parser.y"
5391
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ATTRIBUTE, (yyvsp[-1].ast), (yyvsp[0].ast)); }
5392
0
#line 5393 "/src/php-src/Zend/zend_language_parser.c"
5393
0
    break;
5394
5395
0
  case 100:
5396
0
#line 376 "/src/php-src/Zend/zend_language_parser.y"
5397
0
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ATTRIBUTE_GROUP, (yyvsp[0].ast)); }
5398
0
#line 5399 "/src/php-src/Zend/zend_language_parser.c"
5399
0
    break;
5400
5401
0
  case 101:
5402
0
#line 378 "/src/php-src/Zend/zend_language_parser.y"
5403
0
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5404
0
#line 5405 "/src/php-src/Zend/zend_language_parser.c"
5405
0
    break;
5406
5407
0
  case 102:
5408
0
#line 382 "/src/php-src/Zend/zend_language_parser.y"
5409
0
                                                                                        { (yyval.ast) = (yyvsp[-2].ast); CG(doc_comment) = (yyvsp[-3].str); }
5410
0
#line 5411 "/src/php-src/Zend/zend_language_parser.c"
5411
0
    break;
5412
5413
0
  case 103:
5414
0
#line 386 "/src/php-src/Zend/zend_language_parser.y"
5415
0
                                                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ATTRIBUTE_LIST, (yyvsp[0].ast)); }
5416
0
#line 5417 "/src/php-src/Zend/zend_language_parser.c"
5417
0
    break;
5418
5419
0
  case 104:
5420
0
#line 387 "/src/php-src/Zend/zend_language_parser.y"
5421
0
                                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
5422
0
#line 5423 "/src/php-src/Zend/zend_language_parser.c"
5423
0
    break;
5424
5425
0
  case 105:
5426
0
#line 391 "/src/php-src/Zend/zend_language_parser.y"
5427
0
                                                        { (yyval.ast) = (yyvsp[0].ast); }
5428
0
#line 5429 "/src/php-src/Zend/zend_language_parser.c"
5429
0
    break;
5430
5431
0
  case 106:
5432
0
#line 392 "/src/php-src/Zend/zend_language_parser.y"
5433
0
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5434
0
#line 5435 "/src/php-src/Zend/zend_language_parser.c"
5435
0
    break;
5436
5437
0
  case 107:
5438
0
#line 393 "/src/php-src/Zend/zend_language_parser.y"
5439
0
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5440
0
#line 5441 "/src/php-src/Zend/zend_language_parser.c"
5441
0
    break;
5442
5443
0
  case 108:
5444
0
#line 394 "/src/php-src/Zend/zend_language_parser.y"
5445
0
                                                        { (yyval.ast) = (yyvsp[0].ast); }
5446
0
#line 5447 "/src/php-src/Zend/zend_language_parser.c"
5447
0
    break;
5448
5449
0
  case 109:
5450
0
#line 395 "/src/php-src/Zend/zend_language_parser.y"
5451
0
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5452
0
#line 5453 "/src/php-src/Zend/zend_language_parser.c"
5453
0
    break;
5454
5455
0
  case 110:
5456
0
#line 399 "/src/php-src/Zend/zend_language_parser.y"
5457
0
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5458
0
#line 5459 "/src/php-src/Zend/zend_language_parser.c"
5459
0
    break;
5460
5461
0
  case 111:
5462
0
#line 400 "/src/php-src/Zend/zend_language_parser.y"
5463
0
                                                                { (yyval.ast) = (yyvsp[-1].ast); }
5464
0
#line 5465 "/src/php-src/Zend/zend_language_parser.c"
5465
0
    break;
5466
5467
0
  case 112:
5468
0
#line 404 "/src/php-src/Zend/zend_language_parser.y"
5469
0
                                                                                { (yyval.ast) = (yyvsp[0].ast); }
5470
0
#line 5471 "/src/php-src/Zend/zend_language_parser.c"
5471
0
    break;
5472
5473
0
  case 113:
5474
0
#line 405 "/src/php-src/Zend/zend_language_parser.y"
5475
0
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5476
0
#line 5477 "/src/php-src/Zend/zend_language_parser.c"
5477
0
    break;
5478
5479
0
  case 114:
5480
0
#line 406 "/src/php-src/Zend/zend_language_parser.y"
5481
0
                                                        { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
5482
0
#line 5483 "/src/php-src/Zend/zend_language_parser.c"
5483
0
    break;
5484
5485
0
  case 115:
5486
0
#line 408 "/src/php-src/Zend/zend_language_parser.y"
5487
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_HALT_COMPILER,
5488
0
            zend_ast_create_zval_from_long(zend_get_scanned_file_offset()));
5489
0
        zend_stop_lexing(); }
5490
0
#line 5491 "/src/php-src/Zend/zend_language_parser.c"
5491
0
    break;
5492
5493
0
  case 116:
5494
0
#line 412 "/src/php-src/Zend/zend_language_parser.y"
5495
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NAMESPACE, (yyvsp[-1].ast), NULL);
5496
0
        RESET_DOC_COMMENT(); }
5497
0
#line 5498 "/src/php-src/Zend/zend_language_parser.c"
5498
0
    break;
5499
5500
0
  case 117:
5501
0
#line 414 "/src/php-src/Zend/zend_language_parser.y"
5502
0
                                                       { RESET_DOC_COMMENT(); }
5503
0
#line 5504 "/src/php-src/Zend/zend_language_parser.c"
5504
0
    break;
5505
5506
0
  case 118:
5507
0
#line 416 "/src/php-src/Zend/zend_language_parser.y"
5508
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NAMESPACE, (yyvsp[-4].ast), (yyvsp[-1].ast)); }
5509
0
#line 5510 "/src/php-src/Zend/zend_language_parser.c"
5510
0
    break;
5511
5512
0
  case 119:
5513
0
#line 417 "/src/php-src/Zend/zend_language_parser.y"
5514
0
                            { RESET_DOC_COMMENT(); }
5515
0
#line 5516 "/src/php-src/Zend/zend_language_parser.c"
5516
0
    break;
5517
5518
0
  case 120:
5519
0
#line 419 "/src/php-src/Zend/zend_language_parser.y"
5520
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NAMESPACE, NULL, (yyvsp[-1].ast)); }
5521
0
#line 5522 "/src/php-src/Zend/zend_language_parser.c"
5522
0
    break;
5523
5524
0
  case 121:
5525
0
#line 420 "/src/php-src/Zend/zend_language_parser.y"
5526
0
                                                                { (yyval.ast) = (yyvsp[-1].ast); }
5527
0
#line 5528 "/src/php-src/Zend/zend_language_parser.c"
5528
0
    break;
5529
5530
0
  case 122:
5531
0
#line 421 "/src/php-src/Zend/zend_language_parser.y"
5532
0
                                                                { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = (yyvsp[-2].num); }
5533
0
#line 5534 "/src/php-src/Zend/zend_language_parser.c"
5534
0
    break;
5535
5536
0
  case 123:
5537
0
#line 422 "/src/php-src/Zend/zend_language_parser.y"
5538
0
                                                                                { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_SYMBOL_CLASS; }
5539
0
#line 5540 "/src/php-src/Zend/zend_language_parser.c"
5540
0
    break;
5541
5542
0
  case 124:
5543
0
#line 423 "/src/php-src/Zend/zend_language_parser.y"
5544
0
                                                                        { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = (yyvsp[-2].num); }
5545
0
#line 5546 "/src/php-src/Zend/zend_language_parser.c"
5546
0
    break;
5547
5548
0
  case 125:
5549
0
#line 427 "/src/php-src/Zend/zend_language_parser.y"
5550
0
                                        { (yyval.num) = ZEND_SYMBOL_FUNCTION; }
5551
0
#line 5552 "/src/php-src/Zend/zend_language_parser.c"
5552
0
    break;
5553
5554
0
  case 126:
5555
0
#line 428 "/src/php-src/Zend/zend_language_parser.y"
5556
0
                                        { (yyval.num) = ZEND_SYMBOL_CONST; }
5557
0
#line 5558 "/src/php-src/Zend/zend_language_parser.c"
5558
0
    break;
5559
5560
0
  case 127:
5561
0
#line 433 "/src/php-src/Zend/zend_language_parser.y"
5562
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_GROUP_USE, (yyvsp[-5].ast), (yyvsp[-2].ast)); }
5563
0
#line 5564 "/src/php-src/Zend/zend_language_parser.c"
5564
0
    break;
5565
5566
0
  case 128:
5567
0
#line 438 "/src/php-src/Zend/zend_language_parser.y"
5568
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_GROUP_USE, (yyvsp[-5].ast), (yyvsp[-2].ast));}
5569
0
#line 5570 "/src/php-src/Zend/zend_language_parser.c"
5570
0
    break;
5571
5572
0
  case 131:
5573
0
#line 448 "/src/php-src/Zend/zend_language_parser.y"
5574
0
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5575
0
#line 5576 "/src/php-src/Zend/zend_language_parser.c"
5576
0
    break;
5577
5578
0
  case 132:
5579
0
#line 450 "/src/php-src/Zend/zend_language_parser.y"
5580
0
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_USE, (yyvsp[0].ast)); }
5581
0
#line 5582 "/src/php-src/Zend/zend_language_parser.c"
5582
0
    break;
5583
5584
0
  case 133:
5585
0
#line 455 "/src/php-src/Zend/zend_language_parser.y"
5586
0
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5587
0
#line 5588 "/src/php-src/Zend/zend_language_parser.c"
5588
0
    break;
5589
5590
0
  case 134:
5591
0
#line 457 "/src/php-src/Zend/zend_language_parser.y"
5592
0
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_USE, (yyvsp[0].ast)); }
5593
0
#line 5594 "/src/php-src/Zend/zend_language_parser.c"
5594
0
    break;
5595
5596
0
  case 135:
5597
0
#line 462 "/src/php-src/Zend/zend_language_parser.y"
5598
0
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5599
0
#line 5600 "/src/php-src/Zend/zend_language_parser.c"
5600
0
    break;
5601
5602
0
  case 136:
5603
0
#line 464 "/src/php-src/Zend/zend_language_parser.y"
5604
0
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_USE, (yyvsp[0].ast)); }
5605
0
#line 5606 "/src/php-src/Zend/zend_language_parser.c"
5606
0
    break;
5607
5608
0
  case 137:
5609
0
#line 468 "/src/php-src/Zend/zend_language_parser.y"
5610
0
                                           { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_SYMBOL_CLASS; }
5611
0
#line 5612 "/src/php-src/Zend/zend_language_parser.c"
5612
0
    break;
5613
5614
0
  case 138:
5615
0
#line 469 "/src/php-src/Zend/zend_language_parser.y"
5616
0
                                                    { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = (yyvsp[-1].num); }
5617
0
#line 5618 "/src/php-src/Zend/zend_language_parser.c"
5618
0
    break;
5619
5620
0
  case 139:
5621
0
#line 474 "/src/php-src/Zend/zend_language_parser.y"
5622
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_ELEM, (yyvsp[0].ast), NULL); }
5623
0
#line 5624 "/src/php-src/Zend/zend_language_parser.c"
5624
0
    break;
5625
5626
0
  case 140:
5627
0
#line 476 "/src/php-src/Zend/zend_language_parser.y"
5628
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_ELEM, (yyvsp[-2].ast), (yyvsp[0].ast)); }
5629
0
#line 5630 "/src/php-src/Zend/zend_language_parser.c"
5630
0
    break;
5631
5632
0
  case 141:
5633
0
#line 481 "/src/php-src/Zend/zend_language_parser.y"
5634
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_ELEM, (yyvsp[0].ast), NULL); }
5635
0
#line 5636 "/src/php-src/Zend/zend_language_parser.c"
5636
0
    break;
5637
5638
0
  case 142:
5639
0
#line 483 "/src/php-src/Zend/zend_language_parser.y"
5640
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_ELEM, (yyvsp[-2].ast), (yyvsp[0].ast)); }
5641
0
#line 5642 "/src/php-src/Zend/zend_language_parser.c"
5642
0
    break;
5643
5644
0
  case 143:
5645
0
#line 487 "/src/php-src/Zend/zend_language_parser.y"
5646
0
                                          { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5647
0
#line 5648 "/src/php-src/Zend/zend_language_parser.c"
5648
0
    break;
5649
5650
0
  case 144:
5651
0
#line 488 "/src/php-src/Zend/zend_language_parser.y"
5652
0
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_CONST_DECL, (yyvsp[0].ast)); }
5653
0
#line 5654 "/src/php-src/Zend/zend_language_parser.c"
5654
0
    break;
5655
5656
0
  case 145:
5657
0
#line 493 "/src/php-src/Zend/zend_language_parser.y"
5658
0
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
5659
0
#line 5660 "/src/php-src/Zend/zend_language_parser.c"
5660
0
    break;
5661
5662
0
  case 146:
5663
0
#line 495 "/src/php-src/Zend/zend_language_parser.y"
5664
0
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_STMT_LIST); }
5665
0
#line 5666 "/src/php-src/Zend/zend_language_parser.c"
5666
0
    break;
5667
5668
0
  case 147:
5669
0
#line 500 "/src/php-src/Zend/zend_language_parser.y"
5670
0
                          { (yyval.ast) = (yyvsp[0].ast); }
5671
0
#line 5672 "/src/php-src/Zend/zend_language_parser.c"
5672
0
    break;
5673
5674
0
  case 148:
5675
0
#line 501 "/src/php-src/Zend/zend_language_parser.y"
5676
0
                                                                        { (yyval.ast) = (yyvsp[0].ast); }
5677
0
#line 5678 "/src/php-src/Zend/zend_language_parser.c"
5678
0
    break;
5679
5680
0
  case 149:
5681
0
#line 502 "/src/php-src/Zend/zend_language_parser.y"
5682
0
                                                        { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
5683
0
#line 5684 "/src/php-src/Zend/zend_language_parser.c"
5684
0
    break;
5685
5686
0
  case 150:
5687
0
#line 504 "/src/php-src/Zend/zend_language_parser.y"
5688
0
                        { (yyval.ast) = NULL; zend_throw_exception(zend_ce_compile_error,
5689
0
            "__HALT_COMPILER() can only be used from the outermost scope", 0); YYERROR; }
5690
0
#line 5691 "/src/php-src/Zend/zend_language_parser.c"
5691
0
    break;
5692
5693
0
  case 151:
5694
0
#line 510 "/src/php-src/Zend/zend_language_parser.y"
5695
0
                                             { (yyval.ast) = (yyvsp[-1].ast); }
5696
0
#line 5697 "/src/php-src/Zend/zend_language_parser.c"
5697
0
    break;
5698
5699
0
  case 152:
5700
0
#line 511 "/src/php-src/Zend/zend_language_parser.y"
5701
0
                        { (yyval.ast) = (yyvsp[0].ast); }
5702
0
#line 5703 "/src/php-src/Zend/zend_language_parser.c"
5703
0
    break;
5704
5705
0
  case 153:
5706
0
#line 512 "/src/php-src/Zend/zend_language_parser.y"
5707
0
                            { (yyval.ast) = (yyvsp[0].ast); }
5708
0
#line 5709 "/src/php-src/Zend/zend_language_parser.c"
5709
0
    break;
5710
5711
0
  case 154:
5712
0
#line 514 "/src/php-src/Zend/zend_language_parser.y"
5713
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_WHILE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
5714
0
#line 5715 "/src/php-src/Zend/zend_language_parser.c"
5715
0
    break;
5716
5717
0
  case 155:
5718
0
#line 516 "/src/php-src/Zend/zend_language_parser.y"
5719
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DO_WHILE, (yyvsp[-5].ast), (yyvsp[-2].ast)); }
5720
0
#line 5721 "/src/php-src/Zend/zend_language_parser.c"
5721
0
    break;
5722
5723
0
  case 156:
5724
0
#line 518 "/src/php-src/Zend/zend_language_parser.y"
5725
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_FOR, (yyvsp[-6].ast), (yyvsp[-4].ast), (yyvsp[-2].ast), (yyvsp[0].ast)); }
5726
0
#line 5727 "/src/php-src/Zend/zend_language_parser.c"
5727
0
    break;
5728
5729
0
  case 157:
5730
0
#line 520 "/src/php-src/Zend/zend_language_parser.y"
5731
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_SWITCH, (yyvsp[-2].ast), (yyvsp[0].ast)); }
5732
0
#line 5733 "/src/php-src/Zend/zend_language_parser.c"
5733
0
    break;
5734
5735
0
  case 158:
5736
0
#line 521 "/src/php-src/Zend/zend_language_parser.y"
5737
0
                                                        { (yyval.ast) = zend_ast_create(ZEND_AST_BREAK, (yyvsp[-1].ast)); }
5738
0
#line 5739 "/src/php-src/Zend/zend_language_parser.c"
5739
0
    break;
5740
5741
0
  case 159:
5742
0
#line 522 "/src/php-src/Zend/zend_language_parser.y"
5743
0
                                                { (yyval.ast) = zend_ast_create(ZEND_AST_CONTINUE, (yyvsp[-1].ast)); }
5744
0
#line 5745 "/src/php-src/Zend/zend_language_parser.c"
5745
0
    break;
5746
5747
0
  case 160:
5748
0
#line 523 "/src/php-src/Zend/zend_language_parser.y"
5749
0
                                                        { (yyval.ast) = zend_ast_create(ZEND_AST_RETURN, (yyvsp[-1].ast)); }
5750
0
#line 5751 "/src/php-src/Zend/zend_language_parser.c"
5751
0
    break;
5752
5753
0
  case 161:
5754
0
#line 524 "/src/php-src/Zend/zend_language_parser.y"
5755
0
                                                { (yyval.ast) = (yyvsp[-1].ast); }
5756
0
#line 5757 "/src/php-src/Zend/zend_language_parser.c"
5757
0
    break;
5758
5759
0
  case 162:
5760
0
#line 525 "/src/php-src/Zend/zend_language_parser.y"
5761
0
                                                { (yyval.ast) = (yyvsp[-1].ast); }
5762
0
#line 5763 "/src/php-src/Zend/zend_language_parser.c"
5763
0
    break;
5764
5765
0
  case 163:
5766
0
#line 526 "/src/php-src/Zend/zend_language_parser.y"
5767
0
                                                        { (yyval.ast) = (yyvsp[-1].ast); }
5768
0
#line 5769 "/src/php-src/Zend/zend_language_parser.c"
5769
0
    break;
5770
5771
0
  case 164:
5772
0
#line 527 "/src/php-src/Zend/zend_language_parser.y"
5773
0
                              { (yyval.ast) = zend_ast_create(ZEND_AST_ECHO, (yyvsp[0].ast)); }
5774
0
#line 5775 "/src/php-src/Zend/zend_language_parser.c"
5775
0
    break;
5776
5777
0
  case 165:
5778
0
#line 528 "/src/php-src/Zend/zend_language_parser.y"
5779
0
                         { (yyval.ast) = (yyvsp[-1].ast); }
5780
0
#line 5781 "/src/php-src/Zend/zend_language_parser.c"
5781
0
    break;
5782
5783
0
  case 166:
5784
0
#line 529 "/src/php-src/Zend/zend_language_parser.y"
5785
0
                                                                   { (yyval.ast) = (yyvsp[-3].ast); }
5786
0
#line 5787 "/src/php-src/Zend/zend_language_parser.c"
5787
0
    break;
5788
5789
0
  case 167:
5790
0
#line 531 "/src/php-src/Zend/zend_language_parser.y"
5791
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_FOREACH, (yyvsp[-4].ast), (yyvsp[-2].ast), NULL, (yyvsp[0].ast)); }
5792
0
#line 5793 "/src/php-src/Zend/zend_language_parser.c"
5793
0
    break;
5794
5795
0
  case 168:
5796
0
#line 534 "/src/php-src/Zend/zend_language_parser.y"
5797
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_FOREACH, (yyvsp[-6].ast), (yyvsp[-2].ast), (yyvsp[-4].ast), (yyvsp[0].ast)); }
5798
0
#line 5799 "/src/php-src/Zend/zend_language_parser.c"
5799
0
    break;
5800
5801
0
  case 169:
5802
0
#line 536 "/src/php-src/Zend/zend_language_parser.y"
5803
0
                        { if (!zend_handle_encoding_declaration((yyvsp[-1].ast))) { YYERROR; } }
5804
0
#line 5805 "/src/php-src/Zend/zend_language_parser.c"
5805
0
    break;
5806
5807
0
  case 170:
5808
0
#line 538 "/src/php-src/Zend/zend_language_parser.y"
5809
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DECLARE, (yyvsp[-3].ast), (yyvsp[0].ast)); }
5810
0
#line 5811 "/src/php-src/Zend/zend_language_parser.c"
5811
0
    break;
5812
5813
0
  case 171:
5814
0
#line 539 "/src/php-src/Zend/zend_language_parser.y"
5815
0
                                              { (yyval.ast) = NULL; }
5816
0
#line 5817 "/src/php-src/Zend/zend_language_parser.c"
5817
0
    break;
5818
5819
0
  case 172:
5820
0
#line 541 "/src/php-src/Zend/zend_language_parser.y"
5821
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_TRY, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
5822
0
#line 5823 "/src/php-src/Zend/zend_language_parser.c"
5823
0
    break;
5824
5825
0
  case 173:
5826
0
#line 542 "/src/php-src/Zend/zend_language_parser.y"
5827
0
                                    { (yyval.ast) = zend_ast_create(ZEND_AST_GOTO, (yyvsp[-1].ast)); }
5828
0
#line 5829 "/src/php-src/Zend/zend_language_parser.c"
5829
0
    break;
5830
5831
0
  case 174:
5832
0
#line 543 "/src/php-src/Zend/zend_language_parser.y"
5833
0
                             { (yyval.ast) = zend_ast_create(ZEND_AST_LABEL, (yyvsp[-1].ast)); }
5834
0
#line 5835 "/src/php-src/Zend/zend_language_parser.c"
5835
0
    break;
5836
5837
0
  case 175:
5838
0
#line 544 "/src/php-src/Zend/zend_language_parser.y"
5839
0
                                     { (yyval.ast) = zend_ast_create(ZEND_AST_CAST_VOID, (yyvsp[-1].ast)); }
5840
0
#line 5841 "/src/php-src/Zend/zend_language_parser.c"
5841
0
    break;
5842
5843
0
  case 176:
5844
0
#line 549 "/src/php-src/Zend/zend_language_parser.y"
5845
0
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_CATCH_LIST); }
5846
0
#line 5847 "/src/php-src/Zend/zend_language_parser.c"
5847
0
    break;
5848
5849
0
  case 177:
5850
0
#line 551 "/src/php-src/Zend/zend_language_parser.y"
5851
0
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-8].ast), zend_ast_create(ZEND_AST_CATCH, (yyvsp[-5].ast), (yyvsp[-4].ast), (yyvsp[-1].ast))); }
5852
0
#line 5853 "/src/php-src/Zend/zend_language_parser.c"
5853
0
    break;
5854
5855
0
  case 178:
5856
0
#line 555 "/src/php-src/Zend/zend_language_parser.y"
5857
0
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_NAME_LIST, (yyvsp[0].ast)); }
5858
0
#line 5859 "/src/php-src/Zend/zend_language_parser.c"
5859
0
    break;
5860
5861
0
  case 179:
5862
0
#line 556 "/src/php-src/Zend/zend_language_parser.y"
5863
0
                                               { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5864
0
#line 5865 "/src/php-src/Zend/zend_language_parser.c"
5865
0
    break;
5866
5867
0
  case 180:
5868
0
#line 560 "/src/php-src/Zend/zend_language_parser.y"
5869
0
                       { (yyval.ast) = NULL; }
5870
0
#line 5871 "/src/php-src/Zend/zend_language_parser.c"
5871
0
    break;
5872
5873
0
  case 181:
5874
0
#line 561 "/src/php-src/Zend/zend_language_parser.y"
5875
0
                           { (yyval.ast) = (yyvsp[0].ast); }
5876
0
#line 5877 "/src/php-src/Zend/zend_language_parser.c"
5877
0
    break;
5878
5879
0
  case 182:
5880
0
#line 565 "/src/php-src/Zend/zend_language_parser.y"
5881
0
                       { (yyval.ast) = NULL; }
5882
0
#line 5883 "/src/php-src/Zend/zend_language_parser.c"
5883
0
    break;
5884
5885
0
  case 183:
5886
0
#line 566 "/src/php-src/Zend/zend_language_parser.y"
5887
0
                                                       { (yyval.ast) = (yyvsp[-1].ast); }
5888
0
#line 5889 "/src/php-src/Zend/zend_language_parser.c"
5889
0
    break;
5890
5891
0
  case 184:
5892
0
#line 570 "/src/php-src/Zend/zend_language_parser.y"
5893
0
                               { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_STMT_LIST, (yyvsp[0].ast)); }
5894
0
#line 5895 "/src/php-src/Zend/zend_language_parser.c"
5895
0
    break;
5896
5897
0
  case 185:
5898
0
#line 571 "/src/php-src/Zend/zend_language_parser.y"
5899
0
                                                   { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5900
0
#line 5901 "/src/php-src/Zend/zend_language_parser.c"
5901
0
    break;
5902
5903
0
  case 186:
5904
0
#line 575 "/src/php-src/Zend/zend_language_parser.y"
5905
0
                         { (yyval.ast) = zend_ast_create(ZEND_AST_UNSET, (yyvsp[0].ast)); }
5906
0
#line 5907 "/src/php-src/Zend/zend_language_parser.c"
5907
0
    break;
5908
5909
0
  case 187:
5910
0
#line 579 "/src/php-src/Zend/zend_language_parser.y"
5911
0
                         { (yyval.ast) = (yyvsp[0].ast); }
5912
0
#line 5913 "/src/php-src/Zend/zend_language_parser.c"
5913
0
    break;
5914
5915
0
  case 188:
5916
0
#line 580 "/src/php-src/Zend/zend_language_parser.y"
5917
0
                           {
5918
0
      zval zv;
5919
0
      if (zend_lex_tstring(&zv, (yyvsp[0].ident)) == FAILURE) { YYABORT; }
5920
0
      (yyval.ast) = zend_ast_create_zval(&zv);
5921
0
    }
5922
0
#line 5923 "/src/php-src/Zend/zend_language_parser.c"
5923
0
    break;
5924
5925
0
  case 189:
5926
0
#line 590 "/src/php-src/Zend/zend_language_parser.y"
5927
0
                { (yyval.ast) = zend_ast_create_decl(ZEND_AST_FUNC_DECL, (yyvsp[-11].num) | (yyvsp[0].num), (yyvsp[-12].num), (yyvsp[-9].str),
5928
0
          zend_ast_get_str((yyvsp[-10].ast)), (yyvsp[-7].ast), NULL, (yyvsp[-2].ast), (yyvsp[-5].ast), NULL); CG(extra_fn_flags) = (yyvsp[-4].num); }
5929
0
#line 5930 "/src/php-src/Zend/zend_language_parser.c"
5930
0
    break;
5931
5932
0
  case 190:
5933
0
#line 595 "/src/php-src/Zend/zend_language_parser.y"
5934
0
                        { (yyval.num) = 0; }
5935
0
#line 5936 "/src/php-src/Zend/zend_language_parser.c"
5936
0
    break;
5937
5938
0
  case 191:
5939
0
#line 596 "/src/php-src/Zend/zend_language_parser.y"
5940
0
                                                        { (yyval.num) = ZEND_PARAM_REF; }
5941
0
#line 5942 "/src/php-src/Zend/zend_language_parser.c"
5942
0
    break;
5943
5944
0
  case 192:
5945
0
#line 600 "/src/php-src/Zend/zend_language_parser.y"
5946
0
                       { (yyval.num) = 0; }
5947
0
#line 5948 "/src/php-src/Zend/zend_language_parser.c"
5948
0
    break;
5949
5950
0
  case 193:
5951
0
#line 601 "/src/php-src/Zend/zend_language_parser.y"
5952
0
                            { (yyval.num) = ZEND_PARAM_VARIADIC; }
5953
0
#line 5954 "/src/php-src/Zend/zend_language_parser.c"
5954
0
    break;
5955
5956
0
  case 194:
5957
0
#line 605 "/src/php-src/Zend/zend_language_parser.y"
5958
0
                                        { (yyval.num) = CG(zend_lineno); }
5959
0
#line 5960 "/src/php-src/Zend/zend_language_parser.c"
5960
0
    break;
5961
5962
0
  case 195:
5963
0
#line 607 "/src/php-src/Zend/zend_language_parser.y"
5964
0
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_CLASS, (yyvsp[-9].num), (yyvsp[-7].num), (yyvsp[-3].str), zend_ast_get_str((yyvsp[-6].ast)), (yyvsp[-5].ast), (yyvsp[-4].ast), (yyvsp[-1].ast), NULL, NULL); }
5965
0
#line 5966 "/src/php-src/Zend/zend_language_parser.c"
5966
0
    break;
5967
5968
0
  case 196:
5969
0
#line 608 "/src/php-src/Zend/zend_language_parser.y"
5970
0
                        { (yyval.num) = CG(zend_lineno); }
5971
0
#line 5972 "/src/php-src/Zend/zend_language_parser.c"
5972
0
    break;
5973
5974
0
  case 197:
5975
0
#line 610 "/src/php-src/Zend/zend_language_parser.y"
5976
0
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_CLASS, 0, (yyvsp[-7].num), (yyvsp[-3].str), zend_ast_get_str((yyvsp[-6].ast)), (yyvsp[-5].ast), (yyvsp[-4].ast), (yyvsp[-1].ast), NULL, NULL); }
5977
0
#line 5978 "/src/php-src/Zend/zend_language_parser.c"
5978
0
    break;
5979
5980
0
  case 198:
5981
0
#line 614 "/src/php-src/Zend/zend_language_parser.y"
5982
0
                                                                { (yyval.num) = (yyvsp[0].num); }
5983
0
#line 5984 "/src/php-src/Zend/zend_language_parser.c"
5984
0
    break;
5985
5986
0
  case 199:
5987
0
#line 616 "/src/php-src/Zend/zend_language_parser.y"
5988
0
                        { (yyval.num) = zend_add_class_modifier((yyvsp[-1].num), (yyvsp[0].num)); if (!(yyval.num)) { YYERROR; } }
5989
0
#line 5990 "/src/php-src/Zend/zend_language_parser.c"
5990
0
    break;
5991
5992
0
  case 200:
5993
0
#line 621 "/src/php-src/Zend/zend_language_parser.y"
5994
0
                        { (yyval.num) = zend_add_anonymous_class_modifier(0, (yyvsp[0].num)); if (!(yyval.num)) { YYERROR; } }
5995
0
#line 5996 "/src/php-src/Zend/zend_language_parser.c"
5996
0
    break;
5997
5998
0
  case 201:
5999
0
#line 623 "/src/php-src/Zend/zend_language_parser.y"
6000
0
                        { (yyval.num) = zend_add_anonymous_class_modifier((yyvsp[-1].num), (yyvsp[0].num)); if (!(yyval.num)) { YYERROR; } }
6001
0
#line 6002 "/src/php-src/Zend/zend_language_parser.c"
6002
0
    break;
6003
6004
0
  case 202:
6005
0
#line 627 "/src/php-src/Zend/zend_language_parser.y"
6006
0
                                                { (yyval.num) = 0; }
6007
0
#line 6008 "/src/php-src/Zend/zend_language_parser.c"
6008
0
    break;
6009
6010
0
  case 203:
6011
0
#line 628 "/src/php-src/Zend/zend_language_parser.y"
6012
0
                                                { (yyval.num) = (yyvsp[0].num); }
6013
0
#line 6014 "/src/php-src/Zend/zend_language_parser.c"
6014
0
    break;
6015
6016
0
  case 204:
6017
0
#line 632 "/src/php-src/Zend/zend_language_parser.y"
6018
0
                                        { (yyval.num) = ZEND_ACC_EXPLICIT_ABSTRACT_CLASS; }
6019
0
#line 6020 "/src/php-src/Zend/zend_language_parser.c"
6020
0
    break;
6021
6022
0
  case 205:
6023
0
#line 633 "/src/php-src/Zend/zend_language_parser.y"
6024
0
                                        { (yyval.num) = ZEND_ACC_FINAL; }
6025
0
#line 6026 "/src/php-src/Zend/zend_language_parser.c"
6026
0
    break;
6027
6028
0
  case 206:
6029
0
#line 634 "/src/php-src/Zend/zend_language_parser.y"
6030
0
                                        { (yyval.num) = ZEND_ACC_READONLY_CLASS|ZEND_ACC_NO_DYNAMIC_PROPERTIES; }
6031
0
#line 6032 "/src/php-src/Zend/zend_language_parser.c"
6032
0
    break;
6033
6034
0
  case 207:
6035
0
#line 638 "/src/php-src/Zend/zend_language_parser.y"
6036
0
                        { (yyval.num) = CG(zend_lineno); }
6037
0
#line 6038 "/src/php-src/Zend/zend_language_parser.c"
6038
0
    break;
6039
6040
0
  case 208:
6041
0
#line 640 "/src/php-src/Zend/zend_language_parser.y"
6042
0
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_CLASS, ZEND_ACC_TRAIT, (yyvsp[-5].num), (yyvsp[-3].str), zend_ast_get_str((yyvsp[-4].ast)), NULL, NULL, (yyvsp[-1].ast), NULL, NULL); }
6043
0
#line 6044 "/src/php-src/Zend/zend_language_parser.c"
6044
0
    break;
6045
6046
0
  case 209:
6047
0
#line 644 "/src/php-src/Zend/zend_language_parser.y"
6048
0
                            { (yyval.num) = CG(zend_lineno); }
6049
0
#line 6050 "/src/php-src/Zend/zend_language_parser.c"
6050
0
    break;
6051
6052
0
  case 210:
6053
0
#line 646 "/src/php-src/Zend/zend_language_parser.y"
6054
0
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_CLASS, ZEND_ACC_INTERFACE, (yyvsp[-6].num), (yyvsp[-3].str), zend_ast_get_str((yyvsp[-5].ast)), NULL, (yyvsp[-4].ast), (yyvsp[-1].ast), NULL, NULL); }
6055
0
#line 6056 "/src/php-src/Zend/zend_language_parser.c"
6056
0
    break;
6057
6058
0
  case 211:
6059
0
#line 650 "/src/php-src/Zend/zend_language_parser.y"
6060
0
                       { (yyval.num) = CG(zend_lineno); }
6061
0
#line 6062 "/src/php-src/Zend/zend_language_parser.c"
6062
0
    break;
6063
6064
0
  case 212:
6065
0
#line 652 "/src/php-src/Zend/zend_language_parser.y"
6066
0
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_CLASS, ZEND_ACC_ENUM|ZEND_ACC_FINAL, (yyvsp[-7].num), (yyvsp[-3].str), zend_ast_get_str((yyvsp[-6].ast)), NULL, (yyvsp[-4].ast), (yyvsp[-1].ast), NULL, (yyvsp[-5].ast)); }
6067
0
#line 6068 "/src/php-src/Zend/zend_language_parser.c"
6068
0
    break;
6069
6070
0
  case 213:
6071
0
#line 656 "/src/php-src/Zend/zend_language_parser.y"
6072
0
                        { (yyval.ast) = NULL; }
6073
0
#line 6074 "/src/php-src/Zend/zend_language_parser.c"
6074
0
    break;
6075
6076
0
  case 214:
6077
0
#line 657 "/src/php-src/Zend/zend_language_parser.y"
6078
0
                              { (yyval.ast) = (yyvsp[0].ast); }
6079
0
#line 6080 "/src/php-src/Zend/zend_language_parser.c"
6080
0
    break;
6081
6082
0
  case 215:
6083
0
#line 662 "/src/php-src/Zend/zend_language_parser.y"
6084
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ENUM_CASE, (yyvsp[-2].ast), (yyvsp[-1].ast), ((yyvsp[-3].str) ? zend_ast_create_zval_from_str((yyvsp[-3].str)) : NULL), NULL); }
6085
0
#line 6086 "/src/php-src/Zend/zend_language_parser.c"
6086
0
    break;
6087
6088
0
  case 216:
6089
0
#line 666 "/src/php-src/Zend/zend_language_parser.y"
6090
0
                        { (yyval.ast) = NULL; }
6091
0
#line 6092 "/src/php-src/Zend/zend_language_parser.c"
6092
0
    break;
6093
6094
0
  case 217:
6095
0
#line 667 "/src/php-src/Zend/zend_language_parser.y"
6096
0
                         { (yyval.ast) = (yyvsp[0].ast); }
6097
0
#line 6098 "/src/php-src/Zend/zend_language_parser.c"
6098
0
    break;
6099
6100
0
  case 218:
6101
0
#line 671 "/src/php-src/Zend/zend_language_parser.y"
6102
0
                                                { (yyval.ast) = NULL; }
6103
0
#line 6104 "/src/php-src/Zend/zend_language_parser.c"
6104
0
    break;
6105
6106
0
  case 219:
6107
0
#line 672 "/src/php-src/Zend/zend_language_parser.y"
6108
0
                                        { (yyval.ast) = (yyvsp[0].ast); }
6109
0
#line 6110 "/src/php-src/Zend/zend_language_parser.c"
6110
0
    break;
6111
6112
0
  case 220:
6113
0
#line 676 "/src/php-src/Zend/zend_language_parser.y"
6114
0
                                                { (yyval.ast) = NULL; }
6115
0
#line 6116 "/src/php-src/Zend/zend_language_parser.c"
6116
0
    break;
6117
6118
0
  case 221:
6119
0
#line 677 "/src/php-src/Zend/zend_language_parser.y"
6120
0
                                                { (yyval.ast) = (yyvsp[0].ast); }
6121
0
#line 6122 "/src/php-src/Zend/zend_language_parser.c"
6122
0
    break;
6123
6124
0
  case 222:
6125
0
#line 681 "/src/php-src/Zend/zend_language_parser.y"
6126
0
                                                        { (yyval.ast) = NULL; }
6127
0
#line 6128 "/src/php-src/Zend/zend_language_parser.c"
6128
0
    break;
6129
6130
0
  case 223:
6131
0
#line 682 "/src/php-src/Zend/zend_language_parser.y"
6132
0
                                                { (yyval.ast) = (yyvsp[0].ast); }
6133
0
#line 6134 "/src/php-src/Zend/zend_language_parser.c"
6134
0
    break;
6135
6136
0
  case 224:
6137
0
#line 686 "/src/php-src/Zend/zend_language_parser.y"
6138
0
                                                { (yyval.ast) = (yyvsp[0].ast); }
6139
0
#line 6140 "/src/php-src/Zend/zend_language_parser.c"
6140
0
    break;
6141
6142
0
  case 225:
6143
0
#line 687 "/src/php-src/Zend/zend_language_parser.y"
6144
0
                                        { (yyval.ast) = zend_ast_create(ZEND_AST_REF, (yyvsp[0].ast)); }
6145
0
#line 6146 "/src/php-src/Zend/zend_language_parser.c"
6146
0
    break;
6147
6148
0
  case 226:
6149
0
#line 688 "/src/php-src/Zend/zend_language_parser.y"
6150
0
                                               { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_ARRAY_SYNTAX_LIST; }
6151
0
#line 6152 "/src/php-src/Zend/zend_language_parser.c"
6152
0
    break;
6153
6154
0
  case 227:
6155
0
#line 689 "/src/php-src/Zend/zend_language_parser.y"
6156
0
                                        { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_ARRAY_SYNTAX_SHORT; }
6157
0
#line 6158 "/src/php-src/Zend/zend_language_parser.c"
6158
0
    break;
6159
6160
0
  case 228:
6161
0
#line 693 "/src/php-src/Zend/zend_language_parser.y"
6162
0
                          { (yyval.ast) = (yyvsp[0].ast); }
6163
0
#line 6164 "/src/php-src/Zend/zend_language_parser.c"
6164
0
    break;
6165
6166
0
  case 229:
6167
0
#line 694 "/src/php-src/Zend/zend_language_parser.y"
6168
0
                                                      { (yyval.ast) = (yyvsp[-2].ast); }
6169
0
#line 6170 "/src/php-src/Zend/zend_language_parser.c"
6170
0
    break;
6171
6172
0
  case 230:
6173
0
#line 698 "/src/php-src/Zend/zend_language_parser.y"
6174
0
                          { (yyval.ast) = (yyvsp[0].ast); }
6175
0
#line 6176 "/src/php-src/Zend/zend_language_parser.c"
6176
0
    break;
6177
6178
0
  case 231:
6179
0
#line 699 "/src/php-src/Zend/zend_language_parser.y"
6180
0
                                                          { (yyval.ast) = (yyvsp[-2].ast); }
6181
0
#line 6182 "/src/php-src/Zend/zend_language_parser.c"
6182
0
    break;
6183
6184
0
  case 232:
6185
0
#line 703 "/src/php-src/Zend/zend_language_parser.y"
6186
0
                          { (yyval.ast) = (yyvsp[0].ast); }
6187
0
#line 6188 "/src/php-src/Zend/zend_language_parser.c"
6188
0
    break;
6189
6190
0
  case 233:
6191
0
#line 704 "/src/php-src/Zend/zend_language_parser.y"
6192
0
                                                          { (yyval.ast) = (yyvsp[-2].ast); }
6193
0
#line 6194 "/src/php-src/Zend/zend_language_parser.c"
6194
0
    break;
6195
6196
0
  case 234:
6197
0
#line 708 "/src/php-src/Zend/zend_language_parser.y"
6198
0
                                                                        { (yyval.ast) = (yyvsp[-1].ast); }
6199
0
#line 6200 "/src/php-src/Zend/zend_language_parser.c"
6200
0
    break;
6201
6202
0
  case 235:
6203
0
#line 709 "/src/php-src/Zend/zend_language_parser.y"
6204
0
                                                                { (yyval.ast) = (yyvsp[-1].ast); }
6205
0
#line 6206 "/src/php-src/Zend/zend_language_parser.c"
6206
0
    break;
6207
6208
0
  case 236:
6209
0
#line 710 "/src/php-src/Zend/zend_language_parser.y"
6210
0
                                                        { (yyval.ast) = (yyvsp[-2].ast); }
6211
0
#line 6212 "/src/php-src/Zend/zend_language_parser.c"
6212
0
    break;
6213
6214
0
  case 237:
6215
0
#line 711 "/src/php-src/Zend/zend_language_parser.y"
6216
0
                                                        { (yyval.ast) = (yyvsp[-2].ast); }
6217
0
#line 6218 "/src/php-src/Zend/zend_language_parser.c"
6218
0
    break;
6219
6220
0
  case 238:
6221
0
#line 715 "/src/php-src/Zend/zend_language_parser.y"
6222
0
                       { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_SWITCH_LIST); }
6223
0
#line 6224 "/src/php-src/Zend/zend_language_parser.c"
6224
0
    break;
6225
6226
0
  case 239:
6227
0
#line 717 "/src/php-src/Zend/zend_language_parser.y"
6228
0
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-4].ast), zend_ast_create(ZEND_AST_SWITCH_CASE, (yyvsp[-2].ast), (yyvsp[0].ast))); }
6229
0
#line 6230 "/src/php-src/Zend/zend_language_parser.c"
6230
0
    break;
6231
6232
0
  case 240:
6233
0
#line 719 "/src/php-src/Zend/zend_language_parser.y"
6234
0
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-4].ast), zend_ast_create_ex(ZEND_AST_SWITCH_CASE, ZEND_ALT_CASE_SYNTAX, (yyvsp[-2].ast), (yyvsp[0].ast))); }
6235
0
#line 6236 "/src/php-src/Zend/zend_language_parser.c"
6236
0
    break;
6237
6238
0
  case 241:
6239
0
#line 721 "/src/php-src/Zend/zend_language_parser.y"
6240
0
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-3].ast), zend_ast_create(ZEND_AST_SWITCH_CASE, NULL, (yyvsp[0].ast))); }
6241
0
#line 6242 "/src/php-src/Zend/zend_language_parser.c"
6242
0
    break;
6243
6244
0
  case 242:
6245
0
#line 723 "/src/php-src/Zend/zend_language_parser.y"
6246
0
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-3].ast), zend_ast_create_ex(ZEND_AST_SWITCH_CASE, ZEND_ALT_CASE_SYNTAX, NULL, (yyvsp[0].ast))); }
6247
0
#line 6248 "/src/php-src/Zend/zend_language_parser.c"
6248
0
    break;
6249
6250
0
  case 243:
6251
0
#line 729 "/src/php-src/Zend/zend_language_parser.y"
6252
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_MATCH, (yyvsp[-4].ast), (yyvsp[-1].ast)); }
6253
0
#line 6254 "/src/php-src/Zend/zend_language_parser.c"
6254
0
    break;
6255
6256
0
  case 244:
6257
0
#line 733 "/src/php-src/Zend/zend_language_parser.y"
6258
0
                       { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_MATCH_ARM_LIST); }
6259
0
#line 6260 "/src/php-src/Zend/zend_language_parser.c"
6260
0
    break;
6261
6262
0
  case 245:
6263
0
#line 734 "/src/php-src/Zend/zend_language_parser.y"
6264
0
                                                        { (yyval.ast) = (yyvsp[-1].ast); }
6265
0
#line 6266 "/src/php-src/Zend/zend_language_parser.c"
6266
0
    break;
6267
6268
0
  case 246:
6269
0
#line 738 "/src/php-src/Zend/zend_language_parser.y"
6270
0
                          { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_MATCH_ARM_LIST, (yyvsp[0].ast)); }
6271
0
#line 6272 "/src/php-src/Zend/zend_language_parser.c"
6272
0
    break;
6273
6274
0
  case 247:
6275
0
#line 739 "/src/php-src/Zend/zend_language_parser.y"
6276
0
                                                       { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6277
0
#line 6278 "/src/php-src/Zend/zend_language_parser.c"
6278
0
    break;
6279
6280
0
  case 248:
6281
0
#line 744 "/src/php-src/Zend/zend_language_parser.y"
6282
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_MATCH_ARM, (yyvsp[-3].ast), (yyvsp[0].ast)); }
6283
0
#line 6284 "/src/php-src/Zend/zend_language_parser.c"
6284
0
    break;
6285
6286
0
  case 249:
6287
0
#line 746 "/src/php-src/Zend/zend_language_parser.y"
6288
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_MATCH_ARM, NULL, (yyvsp[0].ast)); }
6289
0
#line 6290 "/src/php-src/Zend/zend_language_parser.c"
6290
0
    break;
6291
6292
0
  case 250:
6293
0
#line 750 "/src/php-src/Zend/zend_language_parser.y"
6294
0
                     { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_EXPR_LIST, (yyvsp[0].ast)); }
6295
0
#line 6296 "/src/php-src/Zend/zend_language_parser.c"
6296
0
    break;
6297
6298
0
  case 251:
6299
0
#line 751 "/src/php-src/Zend/zend_language_parser.y"
6300
0
                                             { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6301
0
#line 6302 "/src/php-src/Zend/zend_language_parser.c"
6302
0
    break;
6303
6304
0
  case 252:
6305
0
#line 756 "/src/php-src/Zend/zend_language_parser.y"
6306
0
                          { (yyval.ast) = (yyvsp[0].ast); }
6307
0
#line 6308 "/src/php-src/Zend/zend_language_parser.c"
6308
0
    break;
6309
6310
0
  case 253:
6311
0
#line 757 "/src/php-src/Zend/zend_language_parser.y"
6312
0
                                                        { (yyval.ast) = (yyvsp[-2].ast); }
6313
0
#line 6314 "/src/php-src/Zend/zend_language_parser.c"
6314
0
    break;
6315
6316
0
  case 254:
6317
0
#line 763 "/src/php-src/Zend/zend_language_parser.y"
6318
0
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_IF,
6319
0
            zend_ast_create(ZEND_AST_IF_ELEM, (yyvsp[-2].ast), (yyvsp[0].ast))); }
6320
0
#line 6321 "/src/php-src/Zend/zend_language_parser.c"
6321
0
    break;
6322
6323
0
  case 255:
6324
0
#line 766 "/src/php-src/Zend/zend_language_parser.y"
6325
0
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-5].ast),
6326
0
            zend_ast_create(ZEND_AST_IF_ELEM, (yyvsp[-2].ast), (yyvsp[0].ast))); }
6327
0
#line 6328 "/src/php-src/Zend/zend_language_parser.c"
6328
0
    break;
6329
6330
0
  case 256:
6331
0
#line 771 "/src/php-src/Zend/zend_language_parser.y"
6332
0
                                                    { (yyval.ast) = (yyvsp[0].ast); }
6333
0
#line 6334 "/src/php-src/Zend/zend_language_parser.c"
6334
0
    break;
6335
6336
0
  case 257:
6337
0
#line 773 "/src/php-src/Zend/zend_language_parser.y"
6338
0
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), zend_ast_create(ZEND_AST_IF_ELEM, NULL, (yyvsp[0].ast))); }
6339
0
#line 6340 "/src/php-src/Zend/zend_language_parser.c"
6340
0
    break;
6341
6342
0
  case 258:
6343
0
#line 778 "/src/php-src/Zend/zend_language_parser.y"
6344
0
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_IF,
6345
0
            zend_ast_create(ZEND_AST_IF_ELEM, (yyvsp[-3].ast), (yyvsp[0].ast))); }
6346
0
#line 6347 "/src/php-src/Zend/zend_language_parser.c"
6347
0
    break;
6348
6349
0
  case 259:
6350
0
#line 781 "/src/php-src/Zend/zend_language_parser.y"
6351
0
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-6].ast),
6352
0
            zend_ast_create(ZEND_AST_IF_ELEM, (yyvsp[-3].ast), (yyvsp[0].ast))); }
6353
0
#line 6354 "/src/php-src/Zend/zend_language_parser.c"
6354
0
    break;
6355
6356
0
  case 260:
6357
0
#line 786 "/src/php-src/Zend/zend_language_parser.y"
6358
0
                                                     { (yyval.ast) = (yyvsp[-2].ast); }
6359
0
#line 6360 "/src/php-src/Zend/zend_language_parser.c"
6360
0
    break;
6361
6362
0
  case 261:
6363
0
#line 788 "/src/php-src/Zend/zend_language_parser.y"
6364
0
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-5].ast),
6365
0
            zend_ast_create(ZEND_AST_IF_ELEM, NULL, (yyvsp[-2].ast))); }
6366
0
#line 6367 "/src/php-src/Zend/zend_language_parser.c"
6367
0
    break;
6368
6369
0
  case 262:
6370
0
#line 793 "/src/php-src/Zend/zend_language_parser.y"
6371
0
                                                        { (yyval.ast) = (yyvsp[-1].ast); }
6372
0
#line 6373 "/src/php-src/Zend/zend_language_parser.c"
6373
0
    break;
6374
6375
0
  case 263:
6376
0
#line 794 "/src/php-src/Zend/zend_language_parser.y"
6377
0
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_PARAM_LIST); }
6378
0
#line 6379 "/src/php-src/Zend/zend_language_parser.c"
6379
0
    break;
6380
6381
0
  case 264:
6382
0
#line 800 "/src/php-src/Zend/zend_language_parser.y"
6383
0
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_PARAM_LIST, (yyvsp[0].ast)); }
6384
0
#line 6385 "/src/php-src/Zend/zend_language_parser.c"
6385
0
    break;
6386
6387
0
  case 265:
6388
0
#line 802 "/src/php-src/Zend/zend_language_parser.y"
6389
0
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6390
0
#line 6391 "/src/php-src/Zend/zend_language_parser.c"
6391
0
    break;
6392
6393
0
  case 266:
6394
0
#line 806 "/src/php-src/Zend/zend_language_parser.y"
6395
0
                                        { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
6396
0
#line 6397 "/src/php-src/Zend/zend_language_parser.c"
6397
0
    break;
6398
6399
0
  case 267:
6400
0
#line 807 "/src/php-src/Zend/zend_language_parser.y"
6401
0
                                                        { (yyval.ast) = (yyvsp[0].ast); }
6402
0
#line 6403 "/src/php-src/Zend/zend_language_parser.c"
6403
0
    break;
6404
6405
0
  case 268:
6406
0
#line 812 "/src/php-src/Zend/zend_language_parser.y"
6407
0
                        { (yyval.num) = 0; }
6408
0
#line 6409 "/src/php-src/Zend/zend_language_parser.c"
6409
0
    break;
6410
6411
0
  case 269:
6412
0
#line 814 "/src/php-src/Zend/zend_language_parser.y"
6413
0
                        { (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_CPP, (yyvsp[0].ast));
6414
0
        if (!(yyval.num)) { YYERROR; } }
6415
0
#line 6416 "/src/php-src/Zend/zend_language_parser.c"
6416
0
    break;
6417
6418
0
  case 270:
6419
0
#line 821 "/src/php-src/Zend/zend_language_parser.y"
6420
0
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_PARAM, (yyvsp[-6].num) | (yyvsp[-4].num) | (yyvsp[-3].num), (yyvsp[-5].ast), (yyvsp[-2].ast), NULL,
6421
0
          NULL, (yyvsp[-1].str) ? zend_ast_create_zval_from_str((yyvsp[-1].str)) : NULL, (yyvsp[0].ast)); }
6422
0
#line 6423 "/src/php-src/Zend/zend_language_parser.c"
6423
0
    break;
6424
6425
0
  case 271:
6426
0
#line 825 "/src/php-src/Zend/zend_language_parser.y"
6427
0
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_PARAM, (yyvsp[-8].num) | (yyvsp[-6].num) | (yyvsp[-5].num), (yyvsp[-7].ast), (yyvsp[-4].ast), (yyvsp[-1].ast),
6428
0
          NULL, (yyvsp[-3].str) ? zend_ast_create_zval_from_str((yyvsp[-3].str)) : NULL, (yyvsp[0].ast)); }
6429
0
#line 6430 "/src/php-src/Zend/zend_language_parser.c"
6430
0
    break;
6431
6432
0
  case 272:
6433
0
#line 830 "/src/php-src/Zend/zend_language_parser.y"
6434
0
                        { (yyval.ast) = NULL; }
6435
0
#line 6436 "/src/php-src/Zend/zend_language_parser.c"
6436
0
    break;
6437
6438
0
  case 273:
6439
0
#line 831 "/src/php-src/Zend/zend_language_parser.y"
6440
0
                                                { (yyval.ast) = (yyvsp[0].ast); }
6441
0
#line 6442 "/src/php-src/Zend/zend_language_parser.c"
6442
0
    break;
6443
6444
0
  case 274:
6445
0
#line 835 "/src/php-src/Zend/zend_language_parser.y"
6446
0
                                                { (yyval.ast) = (yyvsp[0].ast); }
6447
0
#line 6448 "/src/php-src/Zend/zend_language_parser.c"
6448
0
    break;
6449
6450
0
  case 275:
6451
0
#line 836 "/src/php-src/Zend/zend_language_parser.y"
6452
0
                                                { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr |= ZEND_TYPE_NULLABLE; }
6453
0
#line 6454 "/src/php-src/Zend/zend_language_parser.c"
6454
0
    break;
6455
6456
0
  case 276:
6457
0
#line 837 "/src/php-src/Zend/zend_language_parser.y"
6458
0
                                                { (yyval.ast) = (yyvsp[0].ast); }
6459
0
#line 6460 "/src/php-src/Zend/zend_language_parser.c"
6460
0
    break;
6461
6462
0
  case 277:
6463
0
#line 838 "/src/php-src/Zend/zend_language_parser.y"
6464
0
                                        { (yyval.ast) = (yyvsp[0].ast); }
6465
0
#line 6466 "/src/php-src/Zend/zend_language_parser.c"
6466
0
    break;
6467
6468
0
  case 278:
6469
0
#line 842 "/src/php-src/Zend/zend_language_parser.y"
6470
0
                                        { (yyval.ast) = (yyvsp[0].ast); }
6471
0
#line 6472 "/src/php-src/Zend/zend_language_parser.c"
6472
0
    break;
6473
6474
0
  case 279:
6475
0
#line 843 "/src/php-src/Zend/zend_language_parser.y"
6476
0
                                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_TYPE, IS_STATIC); }
6477
0
#line 6478 "/src/php-src/Zend/zend_language_parser.c"
6478
0
    break;
6479
6480
0
  case 280:
6481
0
#line 847 "/src/php-src/Zend/zend_language_parser.y"
6482
0
                     { (yyval.ast) = (yyvsp[0].ast); }
6483
0
#line 6484 "/src/php-src/Zend/zend_language_parser.c"
6484
0
    break;
6485
6486
0
  case 281:
6487
0
#line 848 "/src/php-src/Zend/zend_language_parser.y"
6488
0
                                           { (yyval.ast) = (yyvsp[-1].ast); }
6489
0
#line 6490 "/src/php-src/Zend/zend_language_parser.c"
6490
0
    break;
6491
6492
0
  case 282:
6493
0
#line 853 "/src/php-src/Zend/zend_language_parser.y"
6494
0
                        { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_TYPE_UNION, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6495
0
#line 6496 "/src/php-src/Zend/zend_language_parser.c"
6496
0
    break;
6497
6498
0
  case 283:
6499
0
#line 855 "/src/php-src/Zend/zend_language_parser.y"
6500
0
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6501
0
#line 6502 "/src/php-src/Zend/zend_language_parser.c"
6502
0
    break;
6503
6504
0
  case 284:
6505
0
#line 859 "/src/php-src/Zend/zend_language_parser.y"
6506
0
                                                                          { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_TYPE_INTERSECTION, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6507
0
#line 6508 "/src/php-src/Zend/zend_language_parser.c"
6508
0
    break;
6509
6510
0
  case 285:
6511
0
#line 860 "/src/php-src/Zend/zend_language_parser.y"
6512
0
                                                                                 { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6513
0
#line 6514 "/src/php-src/Zend/zend_language_parser.c"
6514
0
    break;
6515
6516
0
  case 286:
6517
0
#line 867 "/src/php-src/Zend/zend_language_parser.y"
6518
0
                                                        { (yyval.ast) = (yyvsp[0].ast); }
6519
0
#line 6520 "/src/php-src/Zend/zend_language_parser.c"
6520
0
    break;
6521
6522
0
  case 287:
6523
0
#line 868 "/src/php-src/Zend/zend_language_parser.y"
6524
0
                                                { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr |= ZEND_TYPE_NULLABLE; }
6525
0
#line 6526 "/src/php-src/Zend/zend_language_parser.c"
6526
0
    break;
6527
6528
0
  case 288:
6529
0
#line 869 "/src/php-src/Zend/zend_language_parser.y"
6530
0
                                                { (yyval.ast) = (yyvsp[0].ast); }
6531
0
#line 6532 "/src/php-src/Zend/zend_language_parser.c"
6532
0
    break;
6533
6534
0
  case 289:
6535
0
#line 870 "/src/php-src/Zend/zend_language_parser.y"
6536
0
                                                        { (yyval.ast) = (yyvsp[0].ast); }
6537
0
#line 6538 "/src/php-src/Zend/zend_language_parser.c"
6538
0
    break;
6539
6540
0
  case 290:
6541
0
#line 874 "/src/php-src/Zend/zend_language_parser.y"
6542
0
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_TYPE, IS_ARRAY); }
6543
0
#line 6544 "/src/php-src/Zend/zend_language_parser.c"
6544
0
    break;
6545
6546
0
  case 291:
6547
0
#line 875 "/src/php-src/Zend/zend_language_parser.y"
6548
0
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_TYPE, IS_CALLABLE); }
6549
0
#line 6550 "/src/php-src/Zend/zend_language_parser.c"
6550
0
    break;
6551
6552
0
  case 292:
6553
0
#line 876 "/src/php-src/Zend/zend_language_parser.y"
6554
0
                                { (yyval.ast) = (yyvsp[0].ast); }
6555
0
#line 6556 "/src/php-src/Zend/zend_language_parser.c"
6556
0
    break;
6557
6558
0
  case 293:
6559
0
#line 880 "/src/php-src/Zend/zend_language_parser.y"
6560
0
                                    { (yyval.ast) = (yyvsp[0].ast); }
6561
0
#line 6562 "/src/php-src/Zend/zend_language_parser.c"
6562
0
    break;
6563
6564
0
  case 294:
6565
0
#line 881 "/src/php-src/Zend/zend_language_parser.y"
6566
0
                                                          { (yyval.ast) = (yyvsp[-1].ast); }
6567
0
#line 6568 "/src/php-src/Zend/zend_language_parser.c"
6568
0
    break;
6569
6570
0
  case 295:
6571
0
#line 886 "/src/php-src/Zend/zend_language_parser.y"
6572
0
                        { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_TYPE_UNION, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6573
0
#line 6574 "/src/php-src/Zend/zend_language_parser.c"
6574
0
    break;
6575
6576
0
  case 296:
6577
0
#line 888 "/src/php-src/Zend/zend_language_parser.y"
6578
0
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6579
0
#line 6580 "/src/php-src/Zend/zend_language_parser.c"
6580
0
    break;
6581
6582
0
  case 297:
6583
0
#line 893 "/src/php-src/Zend/zend_language_parser.y"
6584
0
                        { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_TYPE_INTERSECTION, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6585
0
#line 6586 "/src/php-src/Zend/zend_language_parser.c"
6586
0
    break;
6587
6588
0
  case 298:
6589
0
#line 895 "/src/php-src/Zend/zend_language_parser.y"
6590
0
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6591
0
#line 6592 "/src/php-src/Zend/zend_language_parser.c"
6592
0
    break;
6593
6594
0
  case 299:
6595
0
#line 899 "/src/php-src/Zend/zend_language_parser.y"
6596
0
                        { (yyval.ast) = NULL; }
6597
0
#line 6598 "/src/php-src/Zend/zend_language_parser.c"
6598
0
    break;
6599
6600
0
  case 300:
6601
0
#line 900 "/src/php-src/Zend/zend_language_parser.y"
6602
0
                                { (yyval.ast) = (yyvsp[0].ast); }
6603
0
#line 6604 "/src/php-src/Zend/zend_language_parser.c"
6604
0
    break;
6605
6606
0
  case 301:
6607
0
#line 904 "/src/php-src/Zend/zend_language_parser.y"
6608
0
                        { (yyval.ast) = zend_ast_create_arg_list(0, ZEND_AST_ARG_LIST); }
6609
0
#line 6610 "/src/php-src/Zend/zend_language_parser.c"
6610
0
    break;
6611
6612
0
  case 302:
6613
0
#line 905 "/src/php-src/Zend/zend_language_parser.y"
6614
0
                                                               { (yyval.ast) = (yyvsp[-2].ast); }
6615
0
#line 6616 "/src/php-src/Zend/zend_language_parser.c"
6616
0
    break;
6617
6618
0
  case 303:
6619
0
#line 910 "/src/php-src/Zend/zend_language_parser.y"
6620
0
                        { (yyval.ast) = zend_ast_create_arg_list(1, ZEND_AST_ARG_LIST, (yyvsp[0].ast)); }
6621
0
#line 6622 "/src/php-src/Zend/zend_language_parser.c"
6622
0
    break;
6623
6624
0
  case 304:
6625
0
#line 912 "/src/php-src/Zend/zend_language_parser.y"
6626
0
                        { (yyval.ast) = zend_ast_arg_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6627
0
#line 6628 "/src/php-src/Zend/zend_language_parser.c"
6628
0
    break;
6629
6630
0
  case 305:
6631
0
#line 925 "/src/php-src/Zend/zend_language_parser.y"
6632
0
                        { (yyval.ast) = zend_ast_create_arg_list(0, ZEND_AST_ARG_LIST); }
6633
0
#line 6634 "/src/php-src/Zend/zend_language_parser.c"
6634
0
    break;
6635
6636
0
  case 306:
6637
0
#line 926 "/src/php-src/Zend/zend_language_parser.y"
6638
0
                                                                     { (yyval.ast) = (yyvsp[-2].ast); }
6639
0
#line 6640 "/src/php-src/Zend/zend_language_parser.c"
6640
0
    break;
6641
6642
0
  case 307:
6643
0
#line 927 "/src/php-src/Zend/zend_language_parser.y"
6644
0
                                 { (yyval.ast) = zend_ast_create_arg_list(1, ZEND_AST_ARG_LIST, (yyvsp[-2].ast)); }
6645
0
#line 6646 "/src/php-src/Zend/zend_language_parser.c"
6646
0
    break;
6647
6648
0
  case 308:
6649
0
#line 932 "/src/php-src/Zend/zend_language_parser.y"
6650
0
                        { (yyval.ast) = zend_ast_create_arg_list(2, ZEND_AST_ARG_LIST, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6651
0
#line 6652 "/src/php-src/Zend/zend_language_parser.c"
6652
0
    break;
6653
6654
0
  case 309:
6655
0
#line 934 "/src/php-src/Zend/zend_language_parser.y"
6656
0
                        { (yyval.ast) = zend_ast_create_arg_list(1, ZEND_AST_ARG_LIST, (yyvsp[0].ast)); }
6657
0
#line 6658 "/src/php-src/Zend/zend_language_parser.c"
6658
0
    break;
6659
6660
0
  case 310:
6661
0
#line 936 "/src/php-src/Zend/zend_language_parser.y"
6662
0
                        { (yyval.ast) = zend_ast_arg_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6663
0
#line 6664 "/src/php-src/Zend/zend_language_parser.c"
6664
0
    break;
6665
6666
0
  case 311:
6667
0
#line 941 "/src/php-src/Zend/zend_language_parser.y"
6668
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NAMED_ARG, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6669
0
#line 6670 "/src/php-src/Zend/zend_language_parser.c"
6670
0
    break;
6671
6672
0
  case 312:
6673
0
#line 943 "/src/php-src/Zend/zend_language_parser.y"
6674
0
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_PLACEHOLDER_ARG, ZEND_PLACEHOLDER_VARIADIC); }
6675
0
#line 6676 "/src/php-src/Zend/zend_language_parser.c"
6676
0
    break;
6677
6678
0
  case 313:
6679
0
#line 945 "/src/php-src/Zend/zend_language_parser.y"
6680
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PLACEHOLDER_ARG); }
6681
0
#line 6682 "/src/php-src/Zend/zend_language_parser.c"
6682
0
    break;
6683
6684
0
  case 314:
6685
0
#line 947 "/src/php-src/Zend/zend_language_parser.y"
6686
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NAMED_ARG, (yyvsp[-2].ast), zend_ast_create(ZEND_AST_PLACEHOLDER_ARG)); }
6687
0
#line 6688 "/src/php-src/Zend/zend_language_parser.c"
6688
0
    break;
6689
6690
0
  case 315:
6691
0
#line 949 "/src/php-src/Zend/zend_language_parser.y"
6692
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_UNPACK, (yyvsp[0].ast)); }
6693
0
#line 6694 "/src/php-src/Zend/zend_language_parser.c"
6694
0
    break;
6695
6696
0
  case 316:
6697
0
#line 953 "/src/php-src/Zend/zend_language_parser.y"
6698
0
                     { (yyval.ast) = (yyvsp[0].ast); }
6699
0
#line 6700 "/src/php-src/Zend/zend_language_parser.c"
6700
0
    break;
6701
6702
0
  case 317:
6703
0
#line 954 "/src/php-src/Zend/zend_language_parser.y"
6704
0
                                 { (yyval.ast) = (yyvsp[0].ast); }
6705
0
#line 6706 "/src/php-src/Zend/zend_language_parser.c"
6706
0
    break;
6707
6708
0
  case 318:
6709
0
#line 958 "/src/php-src/Zend/zend_language_parser.y"
6710
0
                                               { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6711
0
#line 6712 "/src/php-src/Zend/zend_language_parser.c"
6712
0
    break;
6713
6714
0
  case 319:
6715
0
#line 959 "/src/php-src/Zend/zend_language_parser.y"
6716
0
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_STMT_LIST, (yyvsp[0].ast)); }
6717
0
#line 6718 "/src/php-src/Zend/zend_language_parser.c"
6718
0
    break;
6719
6720
0
  case 320:
6721
0
#line 964 "/src/php-src/Zend/zend_language_parser.y"
6722
0
                { (yyval.ast) = zend_ast_create(ZEND_AST_GLOBAL, zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast))); }
6723
0
#line 6724 "/src/php-src/Zend/zend_language_parser.c"
6724
0
    break;
6725
6726
0
  case 321:
6727
0
#line 969 "/src/php-src/Zend/zend_language_parser.y"
6728
0
                                               { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6729
0
#line 6730 "/src/php-src/Zend/zend_language_parser.c"
6730
0
    break;
6731
6732
0
  case 322:
6733
0
#line 970 "/src/php-src/Zend/zend_language_parser.y"
6734
0
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_STMT_LIST, (yyvsp[0].ast)); }
6735
0
#line 6736 "/src/php-src/Zend/zend_language_parser.c"
6736
0
    break;
6737
6738
0
  case 323:
6739
0
#line 974 "/src/php-src/Zend/zend_language_parser.y"
6740
0
                                                { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC, (yyvsp[0].ast), NULL); }
6741
0
#line 6742 "/src/php-src/Zend/zend_language_parser.c"
6742
0
    break;
6743
6744
0
  case 324:
6745
0
#line 975 "/src/php-src/Zend/zend_language_parser.y"
6746
0
                                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6747
0
#line 6748 "/src/php-src/Zend/zend_language_parser.c"
6748
0
    break;
6749
6750
0
  case 325:
6751
0
#line 980 "/src/php-src/Zend/zend_language_parser.y"
6752
0
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
6753
0
#line 6754 "/src/php-src/Zend/zend_language_parser.c"
6754
0
    break;
6755
6756
0
  case 326:
6757
0
#line 982 "/src/php-src/Zend/zend_language_parser.y"
6758
0
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_STMT_LIST); }
6759
0
#line 6760 "/src/php-src/Zend/zend_language_parser.c"
6760
0
    break;
6761
6762
0
  case 327:
6763
0
#line 988 "/src/php-src/Zend/zend_language_parser.y"
6764
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP_GROUP, (yyvsp[-2].ast), (yyvsp[-1].ast), NULL);
6765
0
        (yyval.ast)->attr = (yyvsp[-3].num); }
6766
0
#line 6767 "/src/php-src/Zend/zend_language_parser.c"
6767
0
    break;
6768
6769
0
  case 328:
6770
0
#line 991 "/src/php-src/Zend/zend_language_parser.y"
6771
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP_GROUP, (yyvsp[-1].ast), zend_ast_create_list(1, ZEND_AST_PROP_DECL, (yyvsp[0].ast)), NULL);
6772
0
        (yyval.ast)->attr = (yyvsp[-2].num); }
6773
0
#line 6774 "/src/php-src/Zend/zend_language_parser.c"
6774
0
    break;
6775
6776
0
  case 329:
6777
0
#line 994 "/src/php-src/Zend/zend_language_parser.y"
6778
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CLASS_CONST_GROUP, (yyvsp[-1].ast), NULL, NULL);
6779
0
        (yyval.ast)->attr = (yyvsp[-3].num); }
6780
0
#line 6781 "/src/php-src/Zend/zend_language_parser.c"
6781
0
    break;
6782
6783
0
  case 330:
6784
0
#line 997 "/src/php-src/Zend/zend_language_parser.y"
6785
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CLASS_CONST_GROUP, (yyvsp[-1].ast), NULL, (yyvsp[-2].ast));
6786
0
        (yyval.ast)->attr = (yyvsp[-4].num); }
6787
0
#line 6788 "/src/php-src/Zend/zend_language_parser.c"
6788
0
    break;
6789
6790
0
  case 331:
6791
0
#line 1001 "/src/php-src/Zend/zend_language_parser.y"
6792
0
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_METHOD, (yyvsp[-9].num) | (yyvsp[-11].num) | (yyvsp[0].num), (yyvsp[-10].num), (yyvsp[-7].str),
6793
0
          zend_ast_get_str((yyvsp[-8].ast)), (yyvsp[-5].ast), NULL, (yyvsp[-1].ast), (yyvsp[-3].ast), NULL); CG(extra_fn_flags) = (yyvsp[-2].num); }
6794
0
#line 6795 "/src/php-src/Zend/zend_language_parser.c"
6795
0
    break;
6796
6797
0
  case 332:
6798
0
#line 1003 "/src/php-src/Zend/zend_language_parser.y"
6799
0
                          { (yyval.ast) = (yyvsp[0].ast); }
6800
0
#line 6801 "/src/php-src/Zend/zend_language_parser.c"
6801
0
    break;
6802
6803
0
  case 333:
6804
0
#line 1007 "/src/php-src/Zend/zend_language_parser.y"
6805
0
                                           { (yyval.ast) = (yyvsp[0].ast); }
6806
0
#line 6807 "/src/php-src/Zend/zend_language_parser.c"
6807
0
    break;
6808
6809
0
  case 334:
6810
0
#line 1008 "/src/php-src/Zend/zend_language_parser.y"
6811
0
                                                      { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
6812
0
#line 6813 "/src/php-src/Zend/zend_language_parser.c"
6813
0
    break;
6814
6815
0
  case 335:
6816
0
#line 1010 "/src/php-src/Zend/zend_language_parser.y"
6817
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_TRAIT, (yyvsp[-1].ast), (yyvsp[0].ast)); }
6818
0
#line 6819 "/src/php-src/Zend/zend_language_parser.c"
6819
0
    break;
6820
6821
0
  case 336:
6822
0
#line 1014 "/src/php-src/Zend/zend_language_parser.y"
6823
0
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_NAME_LIST, (yyvsp[0].ast)); }
6824
0
#line 6825 "/src/php-src/Zend/zend_language_parser.c"
6825
0
    break;
6826
6827
0
  case 337:
6828
0
#line 1015 "/src/php-src/Zend/zend_language_parser.y"
6829
0
                                               { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6830
0
#line 6831 "/src/php-src/Zend/zend_language_parser.c"
6831
0
    break;
6832
6833
0
  case 338:
6834
0
#line 1019 "/src/php-src/Zend/zend_language_parser.y"
6835
0
                                                                                { (yyval.ast) = NULL; }
6836
0
#line 6837 "/src/php-src/Zend/zend_language_parser.c"
6837
0
    break;
6838
6839
0
  case 339:
6840
0
#line 1020 "/src/php-src/Zend/zend_language_parser.y"
6841
0
                                                                        { (yyval.ast) = NULL; }
6842
0
#line 6843 "/src/php-src/Zend/zend_language_parser.c"
6843
0
    break;
6844
6845
0
  case 340:
6846
0
#line 1021 "/src/php-src/Zend/zend_language_parser.y"
6847
0
                                                { (yyval.ast) = (yyvsp[-1].ast); }
6848
0
#line 6849 "/src/php-src/Zend/zend_language_parser.c"
6849
0
    break;
6850
6851
0
  case 341:
6852
0
#line 1026 "/src/php-src/Zend/zend_language_parser.y"
6853
0
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_TRAIT_ADAPTATIONS, (yyvsp[0].ast)); }
6854
0
#line 6855 "/src/php-src/Zend/zend_language_parser.c"
6855
0
    break;
6856
6857
0
  case 342:
6858
0
#line 1028 "/src/php-src/Zend/zend_language_parser.y"
6859
0
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
6860
0
#line 6861 "/src/php-src/Zend/zend_language_parser.c"
6861
0
    break;
6862
6863
0
  case 343:
6864
0
#line 1032 "/src/php-src/Zend/zend_language_parser.y"
6865
0
                                        { (yyval.ast) = (yyvsp[-1].ast); }
6866
0
#line 6867 "/src/php-src/Zend/zend_language_parser.c"
6867
0
    break;
6868
6869
0
  case 344:
6870
0
#line 1033 "/src/php-src/Zend/zend_language_parser.y"
6871
0
                                                { (yyval.ast) = (yyvsp[-1].ast); }
6872
0
#line 6873 "/src/php-src/Zend/zend_language_parser.c"
6873
0
    break;
6874
6875
0
  case 345:
6876
0
#line 1038 "/src/php-src/Zend/zend_language_parser.y"
6877
0
                { (yyval.ast) = zend_ast_create(ZEND_AST_TRAIT_PRECEDENCE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6878
0
#line 6879 "/src/php-src/Zend/zend_language_parser.c"
6879
0
    break;
6880
6881
0
  case 346:
6882
0
#line 1043 "/src/php-src/Zend/zend_language_parser.y"
6883
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_TRAIT_ALIAS, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6884
0
#line 6885 "/src/php-src/Zend/zend_language_parser.c"
6885
0
    break;
6886
6887
0
  case 347:
6888
0
#line 1045 "/src/php-src/Zend/zend_language_parser.y"
6889
0
                        { zval zv;
6890
0
        if (zend_lex_tstring(&zv, (yyvsp[0].ident)) == FAILURE) { YYABORT; }
6891
0
        (yyval.ast) = zend_ast_create(ZEND_AST_TRAIT_ALIAS, (yyvsp[-2].ast), zend_ast_create_zval(&zv)); }
6892
0
#line 6893 "/src/php-src/Zend/zend_language_parser.c"
6893
0
    break;
6894
6895
0
  case 348:
6896
0
#line 1049 "/src/php-src/Zend/zend_language_parser.y"
6897
0
                        { uint32_t modifiers = zend_modifier_token_to_flag(ZEND_MODIFIER_TARGET_METHOD, (yyvsp[-1].num));
6898
0
        (yyval.ast) = zend_ast_create_ex(ZEND_AST_TRAIT_ALIAS, modifiers, (yyvsp[-3].ast), (yyvsp[0].ast));
6899
        /* identifier nonterminal can cause allocations, so we need to free the node */
6900
0
        if (!modifiers) { zend_ast_destroy((yyval.ast)); YYERROR; } }
6901
0
#line 6902 "/src/php-src/Zend/zend_language_parser.c"
6902
0
    break;
6903
6904
0
  case 349:
6905
0
#line 1054 "/src/php-src/Zend/zend_language_parser.y"
6906
0
                        { uint32_t modifiers = zend_modifier_token_to_flag(ZEND_MODIFIER_TARGET_METHOD, (yyvsp[0].num));
6907
0
        (yyval.ast) = zend_ast_create_ex(ZEND_AST_TRAIT_ALIAS, modifiers, (yyvsp[-2].ast), NULL);
6908
        /* identifier nonterminal can cause allocations, so we need to free the node */
6909
0
        if (!modifiers) { zend_ast_destroy((yyval.ast)); YYERROR; } }
6910
0
#line 6911 "/src/php-src/Zend/zend_language_parser.c"
6911
0
    break;
6912
6913
0
  case 350:
6914
0
#line 1062 "/src/php-src/Zend/zend_language_parser.y"
6915
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_METHOD_REFERENCE, NULL, (yyvsp[0].ast)); }
6916
0
#line 6917 "/src/php-src/Zend/zend_language_parser.c"
6917
0
    break;
6918
6919
0
  case 351:
6920
0
#line 1063 "/src/php-src/Zend/zend_language_parser.y"
6921
0
                                                { (yyval.ast) = (yyvsp[0].ast); }
6922
0
#line 6923 "/src/php-src/Zend/zend_language_parser.c"
6923
0
    break;
6924
6925
0
  case 352:
6926
0
#line 1068 "/src/php-src/Zend/zend_language_parser.y"
6927
0
                { (yyval.ast) = zend_ast_create(ZEND_AST_METHOD_REFERENCE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6928
0
#line 6929 "/src/php-src/Zend/zend_language_parser.c"
6929
0
    break;
6930
6931
0
  case 353:
6932
0
#line 1072 "/src/php-src/Zend/zend_language_parser.y"
6933
0
                                                        { (yyval.ast) = NULL; }
6934
0
#line 6935 "/src/php-src/Zend/zend_language_parser.c"
6935
0
    break;
6936
6937
0
  case 354:
6938
0
#line 1073 "/src/php-src/Zend/zend_language_parser.y"
6939
0
                                                { (yyval.ast) = (yyvsp[-1].ast); }
6940
0
#line 6941 "/src/php-src/Zend/zend_language_parser.c"
6941
0
    break;
6942
6943
0
  case 355:
6944
0
#line 1078 "/src/php-src/Zend/zend_language_parser.y"
6945
0
                        { (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_PROPERTY, (yyvsp[0].ast));
6946
0
        if (!(yyval.num)) { YYERROR; } }
6947
0
#line 6948 "/src/php-src/Zend/zend_language_parser.c"
6948
0
    break;
6949
6950
0
  case 356:
6951
0
#line 1081 "/src/php-src/Zend/zend_language_parser.y"
6952
0
                        { (yyval.num) = ZEND_ACC_PUBLIC; }
6953
0
#line 6954 "/src/php-src/Zend/zend_language_parser.c"
6954
0
    break;
6955
6956
0
  case 357:
6957
0
#line 1086 "/src/php-src/Zend/zend_language_parser.y"
6958
0
                        { (yyval.num) = ZEND_ACC_PUBLIC; }
6959
0
#line 6960 "/src/php-src/Zend/zend_language_parser.c"
6960
0
    break;
6961
6962
0
  case 358:
6963
0
#line 1088 "/src/php-src/Zend/zend_language_parser.y"
6964
0
                        { (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_METHOD, (yyvsp[0].ast));
6965
0
        if (!(yyval.num)) { YYERROR; }
6966
0
        if (!((yyval.num) & ZEND_ACC_PPP_MASK)) { (yyval.num) |= ZEND_ACC_PUBLIC; } }
6967
0
#line 6968 "/src/php-src/Zend/zend_language_parser.c"
6968
0
    break;
6969
6970
0
  case 359:
6971
0
#line 1095 "/src/php-src/Zend/zend_language_parser.y"
6972
0
                        { (yyval.num) = ZEND_ACC_PUBLIC; }
6973
0
#line 6974 "/src/php-src/Zend/zend_language_parser.c"
6974
0
    break;
6975
6976
0
  case 360:
6977
0
#line 1097 "/src/php-src/Zend/zend_language_parser.y"
6978
0
                        { (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_CONSTANT, (yyvsp[0].ast));
6979
0
        if (!(yyval.num)) { YYERROR; }
6980
0
        if (!((yyval.num) & ZEND_ACC_PPP_MASK)) { (yyval.num) |= ZEND_ACC_PUBLIC; } }
6981
0
#line 6982 "/src/php-src/Zend/zend_language_parser.c"
6982
0
    break;
6983
6984
0
  case 361:
6985
0
#line 1104 "/src/php-src/Zend/zend_language_parser.y"
6986
0
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_MODIFIER_LIST, zend_ast_create_zval_from_long((yyvsp[0].num))); }
6987
0
#line 6988 "/src/php-src/Zend/zend_language_parser.c"
6988
0
    break;
6989
6990
0
  case 362:
6991
0
#line 1106 "/src/php-src/Zend/zend_language_parser.y"
6992
0
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), zend_ast_create_zval_from_long((yyvsp[0].num))); }
6993
0
#line 6994 "/src/php-src/Zend/zend_language_parser.c"
6994
0
    break;
6995
6996
0
  case 363:
6997
0
#line 1110 "/src/php-src/Zend/zend_language_parser.y"
6998
0
                                                        { (yyval.num) = T_PUBLIC; }
6999
0
#line 7000 "/src/php-src/Zend/zend_language_parser.c"
7000
0
    break;
7001
7002
0
  case 364:
7003
0
#line 1111 "/src/php-src/Zend/zend_language_parser.y"
7004
0
                                                        { (yyval.num) = T_PROTECTED; }
7005
0
#line 7006 "/src/php-src/Zend/zend_language_parser.c"
7006
0
    break;
7007
7008
0
  case 365:
7009
0
#line 1112 "/src/php-src/Zend/zend_language_parser.y"
7010
0
                                                        { (yyval.num) = T_PRIVATE; }
7011
0
#line 7012 "/src/php-src/Zend/zend_language_parser.c"
7012
0
    break;
7013
7014
0
  case 366:
7015
0
#line 1113 "/src/php-src/Zend/zend_language_parser.y"
7016
0
                                                { (yyval.num) = T_PUBLIC_SET; }
7017
0
#line 7018 "/src/php-src/Zend/zend_language_parser.c"
7018
0
    break;
7019
7020
0
  case 367:
7021
0
#line 1114 "/src/php-src/Zend/zend_language_parser.y"
7022
0
                                                { (yyval.num) = T_PROTECTED_SET; }
7023
0
#line 7024 "/src/php-src/Zend/zend_language_parser.c"
7024
0
    break;
7025
7026
0
  case 368:
7027
0
#line 1115 "/src/php-src/Zend/zend_language_parser.y"
7028
0
                                                { (yyval.num) = T_PRIVATE_SET; }
7029
0
#line 7030 "/src/php-src/Zend/zend_language_parser.c"
7030
0
    break;
7031
7032
0
  case 369:
7033
0
#line 1116 "/src/php-src/Zend/zend_language_parser.y"
7034
0
                                                        { (yyval.num) = T_STATIC; }
7035
0
#line 7036 "/src/php-src/Zend/zend_language_parser.c"
7036
0
    break;
7037
7038
0
  case 370:
7039
0
#line 1117 "/src/php-src/Zend/zend_language_parser.y"
7040
0
                                                        { (yyval.num) = T_ABSTRACT; }
7041
0
#line 7042 "/src/php-src/Zend/zend_language_parser.c"
7042
0
    break;
7043
7044
0
  case 371:
7045
0
#line 1118 "/src/php-src/Zend/zend_language_parser.y"
7046
0
                                                        { (yyval.num) = T_FINAL; }
7047
0
#line 7048 "/src/php-src/Zend/zend_language_parser.c"
7048
0
    break;
7049
7050
0
  case 372:
7051
0
#line 1119 "/src/php-src/Zend/zend_language_parser.y"
7052
0
                                                        { (yyval.num) = T_READONLY; }
7053
0
#line 7054 "/src/php-src/Zend/zend_language_parser.c"
7054
0
    break;
7055
7056
0
  case 373:
7057
0
#line 1123 "/src/php-src/Zend/zend_language_parser.y"
7058
0
                                           { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7059
0
#line 7060 "/src/php-src/Zend/zend_language_parser.c"
7060
0
    break;
7061
7062
0
  case 374:
7063
0
#line 1124 "/src/php-src/Zend/zend_language_parser.y"
7064
0
                         { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_PROP_DECL, (yyvsp[0].ast)); }
7065
0
#line 7066 "/src/php-src/Zend/zend_language_parser.c"
7066
0
    break;
7067
7068
0
  case 375:
7069
0
#line 1129 "/src/php-src/Zend/zend_language_parser.y"
7070
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP_ELEM, (yyvsp[-1].ast), NULL, ((yyvsp[0].str) ? zend_ast_create_zval_from_str((yyvsp[0].str)) : NULL), NULL); }
7071
0
#line 7072 "/src/php-src/Zend/zend_language_parser.c"
7072
0
    break;
7073
7074
0
  case 376:
7075
0
#line 1131 "/src/php-src/Zend/zend_language_parser.y"
7076
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP_ELEM, (yyvsp[-3].ast), (yyvsp[-1].ast), ((yyvsp[0].str) ? zend_ast_create_zval_from_str((yyvsp[0].str)) : NULL), NULL); }
7077
0
#line 7078 "/src/php-src/Zend/zend_language_parser.c"
7078
0
    break;
7079
7080
0
  case 377:
7081
0
#line 1136 "/src/php-src/Zend/zend_language_parser.y"
7082
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP_ELEM, (yyvsp[-4].ast), NULL, ((yyvsp[-3].str) ? zend_ast_create_zval_from_str((yyvsp[-3].str)) : NULL), (yyvsp[-1].ast)); }
7083
0
#line 7084 "/src/php-src/Zend/zend_language_parser.c"
7084
0
    break;
7085
7086
0
  case 378:
7087
0
#line 1138 "/src/php-src/Zend/zend_language_parser.y"
7088
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP_ELEM, (yyvsp[-6].ast), (yyvsp[-4].ast), ((yyvsp[-3].str) ? zend_ast_create_zval_from_str((yyvsp[-3].str)) : NULL), (yyvsp[-1].ast)); }
7089
0
#line 7090 "/src/php-src/Zend/zend_language_parser.c"
7090
0
    break;
7091
7092
0
  case 379:
7093
0
#line 1142 "/src/php-src/Zend/zend_language_parser.y"
7094
0
                       { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_STMT_LIST); }
7095
0
#line 7096 "/src/php-src/Zend/zend_language_parser.c"
7096
0
    break;
7097
7098
0
  case 380:
7099
0
#line 1143 "/src/php-src/Zend/zend_language_parser.y"
7100
0
                                                 { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
7101
0
#line 7102 "/src/php-src/Zend/zend_language_parser.c"
7102
0
    break;
7103
7104
0
  case 381:
7105
0
#line 1144 "/src/php-src/Zend/zend_language_parser.y"
7106
0
                                                            {
7107
0
      (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)));
7108
0
    }
7109
0
#line 7110 "/src/php-src/Zend/zend_language_parser.c"
7110
0
    break;
7111
7112
0
  case 382:
7113
0
#line 1150 "/src/php-src/Zend/zend_language_parser.y"
7114
0
                        { (yyval.ast) = NULL; }
7115
0
#line 7116 "/src/php-src/Zend/zend_language_parser.c"
7116
0
    break;
7117
7118
0
  case 383:
7119
0
#line 1151 "/src/php-src/Zend/zend_language_parser.y"
7120
0
                                                { (yyval.ast) = (yyvsp[-1].ast); }
7121
0
#line 7122 "/src/php-src/Zend/zend_language_parser.c"
7122
0
    break;
7123
7124
0
  case 384:
7125
0
#line 1155 "/src/php-src/Zend/zend_language_parser.y"
7126
0
                       { (yyval.num) = 0; }
7127
0
#line 7128 "/src/php-src/Zend/zend_language_parser.c"
7128
0
    break;
7129
7130
0
  case 385:
7131
0
#line 1156 "/src/php-src/Zend/zend_language_parser.y"
7132
0
                                           {
7133
0
      (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_PROPERTY_HOOK, (yyvsp[0].ast));
7134
0
      if (!(yyval.num)) { YYERROR; }
7135
0
    }
7136
0
#line 7137 "/src/php-src/Zend/zend_language_parser.c"
7137
0
    break;
7138
7139
0
  case 386:
7140
0
#line 1164 "/src/php-src/Zend/zend_language_parser.y"
7141
0
                                   { (yyval.num) = CG(zend_lineno); }
7142
0
#line 7143 "/src/php-src/Zend/zend_language_parser.c"
7143
0
    break;
7144
7145
0
  case 387:
7146
0
#line 1165 "/src/php-src/Zend/zend_language_parser.y"
7147
0
                                                                                           {
7148
0
      (yyval.ast) = zend_ast_create_decl(
7149
0
        ZEND_AST_PROPERTY_HOOK, (yyvsp[-8].num) | (yyvsp[-7].num) | (yyvsp[0].num), (yyvsp[-4].num), (yyvsp[-5].str), zend_ast_get_str((yyvsp[-6].ast)),
7150
0
        (yyvsp[-3].ast), NULL, (yyvsp[-1].ast), NULL, NULL);
7151
0
      CG(extra_fn_flags) = (yyvsp[-2].num);
7152
0
    }
7153
0
#line 7154 "/src/php-src/Zend/zend_language_parser.c"
7154
0
    break;
7155
7156
0
  case 388:
7157
0
#line 1174 "/src/php-src/Zend/zend_language_parser.y"
7158
0
                    { (yyval.ast) = NULL; }
7159
0
#line 7160 "/src/php-src/Zend/zend_language_parser.c"
7160
0
    break;
7161
7162
0
  case 389:
7163
0
#line 1175 "/src/php-src/Zend/zend_language_parser.y"
7164
0
                                             { (yyval.ast) = (yyvsp[-1].ast); }
7165
0
#line 7166 "/src/php-src/Zend/zend_language_parser.c"
7166
0
    break;
7167
7168
0
  case 390:
7169
0
#line 1177 "/src/php-src/Zend/zend_language_parser.y"
7170
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROPERTY_HOOK_SHORT_BODY, (yyvsp[-1].ast)); }
7171
0
#line 7172 "/src/php-src/Zend/zend_language_parser.c"
7172
0
    break;
7173
7174
0
  case 391:
7175
0
#line 1181 "/src/php-src/Zend/zend_language_parser.y"
7176
0
                       { (yyval.ast) = NULL; }
7177
0
#line 7178 "/src/php-src/Zend/zend_language_parser.c"
7178
0
    break;
7179
7180
0
  case 392:
7181
0
#line 1182 "/src/php-src/Zend/zend_language_parser.y"
7182
0
                                       { (yyval.ast) = (yyvsp[-1].ast); }
7183
0
#line 7184 "/src/php-src/Zend/zend_language_parser.c"
7184
0
    break;
7185
7186
0
  case 393:
7187
0
#line 1186 "/src/php-src/Zend/zend_language_parser.y"
7188
0
                                                      { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7189
0
#line 7190 "/src/php-src/Zend/zend_language_parser.c"
7190
0
    break;
7191
7192
0
  case 394:
7193
0
#line 1187 "/src/php-src/Zend/zend_language_parser.y"
7194
0
                                 { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_CLASS_CONST_DECL, (yyvsp[0].ast)); }
7195
0
#line 7196 "/src/php-src/Zend/zend_language_parser.c"
7196
0
    break;
7197
7198
0
  case 395:
7199
0
#line 1191 "/src/php-src/Zend/zend_language_parser.y"
7200
0
                                                     { (yyval.ast) = zend_ast_create(ZEND_AST_CONST_ELEM, (yyvsp[-3].ast), (yyvsp[-1].ast), ((yyvsp[0].str) ? zend_ast_create_zval_from_str((yyvsp[0].str)) : NULL)); }
7201
0
#line 7202 "/src/php-src/Zend/zend_language_parser.c"
7202
0
    break;
7203
7204
0
  case 396:
7205
0
#line 1192 "/src/php-src/Zend/zend_language_parser.y"
7206
0
                                                          {
7207
0
      zval zv;
7208
0
      if (zend_lex_tstring(&zv, (yyvsp[-3].ident)) == FAILURE) { YYABORT; }
7209
0
      (yyval.ast) = zend_ast_create(ZEND_AST_CONST_ELEM, zend_ast_create_zval(&zv), (yyvsp[-1].ast), ((yyvsp[0].str) ? zend_ast_create_zval_from_str((yyvsp[0].str)) : NULL));
7210
0
    }
7211
0
#line 7212 "/src/php-src/Zend/zend_language_parser.c"
7212
0
    break;
7213
7214
0
  case 397:
7215
0
#line 1200 "/src/php-src/Zend/zend_language_parser.y"
7216
0
                                             { (yyval.ast) = zend_ast_create(ZEND_AST_CONST_ELEM, (yyvsp[-3].ast), (yyvsp[-1].ast), ((yyvsp[0].str) ? zend_ast_create_zval_from_str((yyvsp[0].str)) : NULL)); }
7217
0
#line 7218 "/src/php-src/Zend/zend_language_parser.c"
7218
0
    break;
7219
7220
0
  case 398:
7221
0
#line 1204 "/src/php-src/Zend/zend_language_parser.y"
7222
0
                                             { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7223
0
#line 7224 "/src/php-src/Zend/zend_language_parser.c"
7224
0
    break;
7225
7226
0
  case 399:
7227
0
#line 1205 "/src/php-src/Zend/zend_language_parser.y"
7228
0
                          { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_STMT_LIST, (yyvsp[0].ast)); }
7229
0
#line 7230 "/src/php-src/Zend/zend_language_parser.c"
7230
0
    break;
7231
7232
0
  case 400:
7233
0
#line 1208 "/src/php-src/Zend/zend_language_parser.y"
7234
0
             { (yyval.ast) = zend_ast_create(ZEND_AST_ECHO, (yyvsp[0].ast)); }
7235
0
#line 7236 "/src/php-src/Zend/zend_language_parser.c"
7236
0
    break;
7237
7238
0
  case 401:
7239
0
#line 1212 "/src/php-src/Zend/zend_language_parser.y"
7240
0
                                        { (yyval.ast) = NULL; }
7241
0
#line 7242 "/src/php-src/Zend/zend_language_parser.c"
7242
0
    break;
7243
7244
0
  case 402:
7245
0
#line 1213 "/src/php-src/Zend/zend_language_parser.y"
7246
0
                                             { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7247
0
#line 7248 "/src/php-src/Zend/zend_language_parser.c"
7248
0
    break;
7249
7250
0
  case 403:
7251
0
#line 1214 "/src/php-src/Zend/zend_language_parser.y"
7252
0
                     { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_EXPR_LIST, (yyvsp[0].ast)); }
7253
0
#line 7254 "/src/php-src/Zend/zend_language_parser.c"
7254
0
    break;
7255
7256
0
  case 404:
7257
0
#line 1218 "/src/php-src/Zend/zend_language_parser.y"
7258
0
                                        { (yyval.ast) = NULL; }
7259
0
#line 7260 "/src/php-src/Zend/zend_language_parser.c"
7260
0
    break;
7261
7262
0
  case 405:
7263
0
#line 1219 "/src/php-src/Zend/zend_language_parser.y"
7264
0
                                        { (yyval.ast) = (yyvsp[0].ast); }
7265
0
#line 7266 "/src/php-src/Zend/zend_language_parser.c"
7266
0
    break;
7267
7268
0
  case 406:
7269
0
#line 1223 "/src/php-src/Zend/zend_language_parser.y"
7270
0
                                             { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7271
0
#line 7272 "/src/php-src/Zend/zend_language_parser.c"
7272
0
    break;
7273
7274
0
  case 407:
7275
0
#line 1224 "/src/php-src/Zend/zend_language_parser.y"
7276
0
                                                         { (yyval.ast) = zend_ast_list_add((yyvsp[-3].ast), zend_ast_create(ZEND_AST_CAST_VOID, (yyvsp[0].ast))); }
7277
0
#line 7278 "/src/php-src/Zend/zend_language_parser.c"
7278
0
    break;
7279
7280
0
  case 408:
7281
0
#line 1225 "/src/php-src/Zend/zend_language_parser.y"
7282
0
                                 { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_EXPR_LIST, zend_ast_create(ZEND_AST_CAST_VOID, (yyvsp[0].ast))); }
7283
0
#line 7284 "/src/php-src/Zend/zend_language_parser.c"
7284
0
    break;
7285
7286
0
  case 409:
7287
0
#line 1226 "/src/php-src/Zend/zend_language_parser.y"
7288
0
                     { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_EXPR_LIST, (yyvsp[0].ast)); }
7289
0
#line 7290 "/src/php-src/Zend/zend_language_parser.c"
7290
0
    break;
7291
7292
0
  case 410:
7293
0
#line 1230 "/src/php-src/Zend/zend_language_parser.y"
7294
0
                                                           { (yyval.num) = CG(zend_lineno); }
7295
0
#line 7296 "/src/php-src/Zend/zend_language_parser.c"
7296
0
    break;
7297
7298
0
  case 411:
7299
0
#line 1231 "/src/php-src/Zend/zend_language_parser.y"
7300
0
                                                                                             {
7301
0
      zend_ast *decl = zend_ast_create_decl(
7302
0
        ZEND_AST_CLASS, ZEND_ACC_ANON_CLASS | (yyvsp[-9].num), (yyvsp[-7].num), (yyvsp[-3].str), NULL,
7303
0
        (yyvsp[-5].ast), (yyvsp[-4].ast), (yyvsp[-1].ast), NULL, NULL);
7304
0
      (yyval.ast) = zend_ast_create(ZEND_AST_NEW, decl, (yyvsp[-6].ast));
7305
0
    }
7306
0
#line 7307 "/src/php-src/Zend/zend_language_parser.c"
7307
0
    break;
7308
7309
0
  case 412:
7310
0
#line 1241 "/src/php-src/Zend/zend_language_parser.y"
7311
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NEW, (yyvsp[-1].ast), (yyvsp[0].ast)); }
7312
0
#line 7313 "/src/php-src/Zend/zend_language_parser.c"
7313
0
    break;
7314
7315
0
  case 413:
7316
0
#line 1243 "/src/php-src/Zend/zend_language_parser.y"
7317
0
                        { (yyval.ast) = (yyvsp[0].ast); }
7318
0
#line 7319 "/src/php-src/Zend/zend_language_parser.c"
7319
0
    break;
7320
7321
0
  case 414:
7322
0
#line 1245 "/src/php-src/Zend/zend_language_parser.y"
7323
0
                        { zend_ast_with_attributes((yyvsp[0].ast)->child[0], (yyvsp[-1].ast)); (yyval.ast) = (yyvsp[0].ast); }
7324
0
#line 7325 "/src/php-src/Zend/zend_language_parser.c"
7325
0
    break;
7326
7327
0
  case 415:
7328
0
#line 1250 "/src/php-src/Zend/zend_language_parser.y"
7329
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NEW, (yyvsp[0].ast), zend_ast_create_list(0, ZEND_AST_ARG_LIST)); }
7330
0
#line 7331 "/src/php-src/Zend/zend_language_parser.c"
7331
0
    break;
7332
7333
0
  case 416:
7334
0
#line 1255 "/src/php-src/Zend/zend_language_parser.y"
7335
0
                        { (yyval.ast) = (yyvsp[0].ast); }
7336
0
#line 7337 "/src/php-src/Zend/zend_language_parser.c"
7337
0
    break;
7338
7339
0
  case 417:
7340
0
#line 1257 "/src/php-src/Zend/zend_language_parser.y"
7341
0
                        { (yyvsp[-3].ast)->attr = ZEND_ARRAY_SYNTAX_LIST; (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN, (yyvsp[-3].ast), (yyvsp[0].ast)); }
7342
0
#line 7343 "/src/php-src/Zend/zend_language_parser.c"
7343
0
    break;
7344
7345
0
  case 418:
7346
0
#line 1259 "/src/php-src/Zend/zend_language_parser.y"
7347
0
                        { (yyvsp[-3].ast)->attr = ZEND_ARRAY_SYNTAX_SHORT; (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN, (yyvsp[-3].ast), (yyvsp[0].ast)); }
7348
0
#line 7349 "/src/php-src/Zend/zend_language_parser.c"
7349
0
    break;
7350
7351
0
  case 419:
7352
0
#line 1261 "/src/php-src/Zend/zend_language_parser.y"
7353
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7354
0
#line 7355 "/src/php-src/Zend/zend_language_parser.c"
7355
0
    break;
7356
7357
0
  case 420:
7358
0
#line 1263 "/src/php-src/Zend/zend_language_parser.y"
7359
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN_REF, (yyvsp[-3].ast), (yyvsp[0].ast)); }
7360
0
#line 7361 "/src/php-src/Zend/zend_language_parser.c"
7361
0
    break;
7362
7363
0
  case 421:
7364
0
#line 1264 "/src/php-src/Zend/zend_language_parser.y"
7365
0
                                            {
7366
0
      zend_ast *name = zend_ast_create_zval_from_str(ZSTR_KNOWN(ZEND_STR_CLONE));
7367
0
      name->attr = ZEND_NAME_FQ;
7368
0
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, name, (yyvsp[0].ast));
7369
0
    }
7370
0
#line 7371 "/src/php-src/Zend/zend_language_parser.c"
7371
0
    break;
7372
7373
0
  case 422:
7374
0
#line 1269 "/src/php-src/Zend/zend_language_parser.y"
7375
0
                             {
7376
0
      zend_ast *name = zend_ast_create_zval_from_str(ZSTR_KNOWN(ZEND_STR_CLONE));
7377
0
      name->attr = ZEND_NAME_FQ;
7378
0
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, name, zend_ast_create_list(1, ZEND_AST_ARG_LIST, (yyvsp[0].ast)));
7379
0
    }
7380
0
#line 7381 "/src/php-src/Zend/zend_language_parser.c"
7381
0
    break;
7382
7383
0
  case 423:
7384
0
#line 1275 "/src/php-src/Zend/zend_language_parser.y"
7385
0
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_ADD, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7386
0
#line 7387 "/src/php-src/Zend/zend_language_parser.c"
7387
0
    break;
7388
7389
0
  case 424:
7390
0
#line 1277 "/src/php-src/Zend/zend_language_parser.y"
7391
0
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_SUB, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7392
0
#line 7393 "/src/php-src/Zend/zend_language_parser.c"
7393
0
    break;
7394
7395
0
  case 425:
7396
0
#line 1279 "/src/php-src/Zend/zend_language_parser.y"
7397
0
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_MUL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7398
0
#line 7399 "/src/php-src/Zend/zend_language_parser.c"
7399
0
    break;
7400
7401
0
  case 426:
7402
0
#line 1281 "/src/php-src/Zend/zend_language_parser.y"
7403
0
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_POW, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7404
0
#line 7405 "/src/php-src/Zend/zend_language_parser.c"
7405
0
    break;
7406
7407
0
  case 427:
7408
0
#line 1283 "/src/php-src/Zend/zend_language_parser.y"
7409
0
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_DIV, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7410
0
#line 7411 "/src/php-src/Zend/zend_language_parser.c"
7411
0
    break;
7412
7413
0
  case 428:
7414
0
#line 1285 "/src/php-src/Zend/zend_language_parser.y"
7415
0
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_CONCAT, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7416
0
#line 7417 "/src/php-src/Zend/zend_language_parser.c"
7417
0
    break;
7418
7419
0
  case 429:
7420
0
#line 1287 "/src/php-src/Zend/zend_language_parser.y"
7421
0
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_MOD, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7422
0
#line 7423 "/src/php-src/Zend/zend_language_parser.c"
7423
0
    break;
7424
7425
0
  case 430:
7426
0
#line 1289 "/src/php-src/Zend/zend_language_parser.y"
7427
0
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_BW_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7428
0
#line 7429 "/src/php-src/Zend/zend_language_parser.c"
7429
0
    break;
7430
7431
0
  case 431:
7432
0
#line 1291 "/src/php-src/Zend/zend_language_parser.y"
7433
0
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_BW_OR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7434
0
#line 7435 "/src/php-src/Zend/zend_language_parser.c"
7435
0
    break;
7436
7437
0
  case 432:
7438
0
#line 1293 "/src/php-src/Zend/zend_language_parser.y"
7439
0
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_BW_XOR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7440
0
#line 7441 "/src/php-src/Zend/zend_language_parser.c"
7441
0
    break;
7442
7443
0
  case 433:
7444
0
#line 1295 "/src/php-src/Zend/zend_language_parser.y"
7445
0
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_SL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7446
0
#line 7447 "/src/php-src/Zend/zend_language_parser.c"
7447
0
    break;
7448
7449
0
  case 434:
7450
0
#line 1297 "/src/php-src/Zend/zend_language_parser.y"
7451
0
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_SR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7452
0
#line 7453 "/src/php-src/Zend/zend_language_parser.c"
7453
0
    break;
7454
7455
0
  case 435:
7456
0
#line 1299 "/src/php-src/Zend/zend_language_parser.y"
7457
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN_COALESCE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7458
0
#line 7459 "/src/php-src/Zend/zend_language_parser.c"
7459
0
    break;
7460
7461
0
  case 436:
7462
0
#line 1300 "/src/php-src/Zend/zend_language_parser.y"
7463
0
                               { (yyval.ast) = zend_ast_create(ZEND_AST_POST_INC, (yyvsp[-1].ast)); }
7464
0
#line 7465 "/src/php-src/Zend/zend_language_parser.c"
7465
0
    break;
7466
7467
0
  case 437:
7468
0
#line 1301 "/src/php-src/Zend/zend_language_parser.y"
7469
0
                               { (yyval.ast) = zend_ast_create(ZEND_AST_PRE_INC, (yyvsp[0].ast)); }
7470
0
#line 7471 "/src/php-src/Zend/zend_language_parser.c"
7471
0
    break;
7472
7473
0
  case 438:
7474
0
#line 1302 "/src/php-src/Zend/zend_language_parser.y"
7475
0
                               { (yyval.ast) = zend_ast_create(ZEND_AST_POST_DEC, (yyvsp[-1].ast)); }
7476
0
#line 7477 "/src/php-src/Zend/zend_language_parser.c"
7477
0
    break;
7478
7479
0
  case 439:
7480
0
#line 1303 "/src/php-src/Zend/zend_language_parser.y"
7481
0
                               { (yyval.ast) = zend_ast_create(ZEND_AST_PRE_DEC, (yyvsp[0].ast)); }
7482
0
#line 7483 "/src/php-src/Zend/zend_language_parser.c"
7483
0
    break;
7484
7485
0
  case 440:
7486
0
#line 1305 "/src/php-src/Zend/zend_language_parser.y"
7487
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_OR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7488
0
#line 7489 "/src/php-src/Zend/zend_language_parser.c"
7489
0
    break;
7490
7491
0
  case 441:
7492
0
#line 1307 "/src/php-src/Zend/zend_language_parser.y"
7493
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7494
0
#line 7495 "/src/php-src/Zend/zend_language_parser.c"
7495
0
    break;
7496
7497
0
  case 442:
7498
0
#line 1309 "/src/php-src/Zend/zend_language_parser.y"
7499
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_OR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7500
0
#line 7501 "/src/php-src/Zend/zend_language_parser.c"
7501
0
    break;
7502
7503
0
  case 443:
7504
0
#line 1311 "/src/php-src/Zend/zend_language_parser.y"
7505
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7506
0
#line 7507 "/src/php-src/Zend/zend_language_parser.c"
7507
0
    break;
7508
7509
0
  case 444:
7510
0
#line 1313 "/src/php-src/Zend/zend_language_parser.y"
7511
0
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_BOOL_XOR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7512
0
#line 7513 "/src/php-src/Zend/zend_language_parser.c"
7513
0
    break;
7514
7515
0
  case 445:
7516
0
#line 1314 "/src/php-src/Zend/zend_language_parser.y"
7517
0
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_BW_OR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7518
0
#line 7519 "/src/php-src/Zend/zend_language_parser.c"
7519
0
    break;
7520
7521
0
  case 446:
7522
0
#line 1315 "/src/php-src/Zend/zend_language_parser.y"
7523
0
                                                                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_BW_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7524
0
#line 7525 "/src/php-src/Zend/zend_language_parser.c"
7525
0
    break;
7526
7527
0
  case 447:
7528
0
#line 1316 "/src/php-src/Zend/zend_language_parser.y"
7529
0
                                                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_BW_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7530
0
#line 7531 "/src/php-src/Zend/zend_language_parser.c"
7531
0
    break;
7532
7533
0
  case 448:
7534
0
#line 1317 "/src/php-src/Zend/zend_language_parser.y"
7535
0
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_BW_XOR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7536
0
#line 7537 "/src/php-src/Zend/zend_language_parser.c"
7537
0
    break;
7538
7539
0
  case 449:
7540
0
#line 1318 "/src/php-src/Zend/zend_language_parser.y"
7541
0
                                { (yyval.ast) = zend_ast_create_concat_op((yyvsp[-2].ast), (yyvsp[0].ast)); }
7542
0
#line 7543 "/src/php-src/Zend/zend_language_parser.c"
7543
0
    break;
7544
7545
0
  case 450:
7546
0
#line 1319 "/src/php-src/Zend/zend_language_parser.y"
7547
0
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_ADD, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7548
0
#line 7549 "/src/php-src/Zend/zend_language_parser.c"
7549
0
    break;
7550
7551
0
  case 451:
7552
0
#line 1320 "/src/php-src/Zend/zend_language_parser.y"
7553
0
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_SUB, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7554
0
#line 7555 "/src/php-src/Zend/zend_language_parser.c"
7555
0
    break;
7556
7557
0
  case 452:
7558
0
#line 1321 "/src/php-src/Zend/zend_language_parser.y"
7559
0
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_MUL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7560
0
#line 7561 "/src/php-src/Zend/zend_language_parser.c"
7561
0
    break;
7562
7563
0
  case 453:
7564
0
#line 1322 "/src/php-src/Zend/zend_language_parser.y"
7565
0
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_POW, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7566
0
#line 7567 "/src/php-src/Zend/zend_language_parser.c"
7567
0
    break;
7568
7569
0
  case 454:
7570
0
#line 1323 "/src/php-src/Zend/zend_language_parser.y"
7571
0
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_DIV, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7572
0
#line 7573 "/src/php-src/Zend/zend_language_parser.c"
7573
0
    break;
7574
7575
0
  case 455:
7576
0
#line 1324 "/src/php-src/Zend/zend_language_parser.y"
7577
0
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_MOD, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7578
0
#line 7579 "/src/php-src/Zend/zend_language_parser.c"
7579
0
    break;
7580
7581
0
  case 456:
7582
0
#line 1325 "/src/php-src/Zend/zend_language_parser.y"
7583
0
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_SL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7584
0
#line 7585 "/src/php-src/Zend/zend_language_parser.c"
7585
0
    break;
7586
7587
0
  case 457:
7588
0
#line 1326 "/src/php-src/Zend/zend_language_parser.y"
7589
0
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_SR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7590
0
#line 7591 "/src/php-src/Zend/zend_language_parser.c"
7591
0
    break;
7592
7593
0
  case 458:
7594
0
#line 1327 "/src/php-src/Zend/zend_language_parser.y"
7595
0
                                   { (yyval.ast) = zend_ast_create(ZEND_AST_UNARY_PLUS, (yyvsp[0].ast)); }
7596
0
#line 7597 "/src/php-src/Zend/zend_language_parser.c"
7597
0
    break;
7598
7599
0
  case 459:
7600
0
#line 1328 "/src/php-src/Zend/zend_language_parser.y"
7601
0
                                   { (yyval.ast) = zend_ast_create(ZEND_AST_UNARY_MINUS, (yyvsp[0].ast)); }
7602
0
#line 7603 "/src/php-src/Zend/zend_language_parser.c"
7603
0
    break;
7604
7605
0
  case 460:
7606
0
#line 1329 "/src/php-src/Zend/zend_language_parser.y"
7607
0
                         { (yyval.ast) = zend_ast_create_ex(ZEND_AST_UNARY_OP, ZEND_BOOL_NOT, (yyvsp[0].ast)); }
7608
0
#line 7609 "/src/php-src/Zend/zend_language_parser.c"
7609
0
    break;
7610
7611
0
  case 461:
7612
0
#line 1330 "/src/php-src/Zend/zend_language_parser.y"
7613
0
                         { (yyval.ast) = zend_ast_create_ex(ZEND_AST_UNARY_OP, ZEND_BW_NOT, (yyvsp[0].ast)); }
7614
0
#line 7615 "/src/php-src/Zend/zend_language_parser.c"
7615
0
    break;
7616
7617
0
  case 462:
7618
0
#line 1332 "/src/php-src/Zend/zend_language_parser.y"
7619
0
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_IDENTICAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7620
0
#line 7621 "/src/php-src/Zend/zend_language_parser.c"
7621
0
    break;
7622
7623
0
  case 463:
7624
0
#line 1334 "/src/php-src/Zend/zend_language_parser.y"
7625
0
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_NOT_IDENTICAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7626
0
#line 7627 "/src/php-src/Zend/zend_language_parser.c"
7627
0
    break;
7628
7629
0
  case 464:
7630
0
#line 1336 "/src/php-src/Zend/zend_language_parser.y"
7631
0
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_EQUAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7632
0
#line 7633 "/src/php-src/Zend/zend_language_parser.c"
7633
0
    break;
7634
7635
0
  case 465:
7636
0
#line 1338 "/src/php-src/Zend/zend_language_parser.y"
7637
0
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_NOT_EQUAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7638
0
#line 7639 "/src/php-src/Zend/zend_language_parser.c"
7639
0
    break;
7640
7641
0
  case 466:
7642
0
#line 1340 "/src/php-src/Zend/zend_language_parser.y"
7643
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PIPE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7644
0
#line 7645 "/src/php-src/Zend/zend_language_parser.c"
7645
0
    break;
7646
7647
0
  case 467:
7648
0
#line 1342 "/src/php-src/Zend/zend_language_parser.y"
7649
0
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_SMALLER, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7650
0
#line 7651 "/src/php-src/Zend/zend_language_parser.c"
7651
0
    break;
7652
7653
0
  case 468:
7654
0
#line 1344 "/src/php-src/Zend/zend_language_parser.y"
7655
0
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_SMALLER_OR_EQUAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7656
0
#line 7657 "/src/php-src/Zend/zend_language_parser.c"
7657
0
    break;
7658
7659
0
  case 469:
7660
0
#line 1346 "/src/php-src/Zend/zend_language_parser.y"
7661
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_GREATER, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7662
0
#line 7663 "/src/php-src/Zend/zend_language_parser.c"
7663
0
    break;
7664
7665
0
  case 470:
7666
0
#line 1348 "/src/php-src/Zend/zend_language_parser.y"
7667
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_GREATER_EQUAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7668
0
#line 7669 "/src/php-src/Zend/zend_language_parser.c"
7669
0
    break;
7670
7671
0
  case 471:
7672
0
#line 1350 "/src/php-src/Zend/zend_language_parser.y"
7673
0
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_SPACESHIP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7674
0
#line 7675 "/src/php-src/Zend/zend_language_parser.c"
7675
0
    break;
7676
7677
0
  case 472:
7678
0
#line 1352 "/src/php-src/Zend/zend_language_parser.y"
7679
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_INSTANCEOF, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7680
0
#line 7681 "/src/php-src/Zend/zend_language_parser.c"
7681
0
    break;
7682
7683
0
  case 473:
7684
0
#line 1353 "/src/php-src/Zend/zend_language_parser.y"
7685
0
                             {
7686
0
      (yyval.ast) = (yyvsp[-1].ast);
7687
0
      if ((yyval.ast)->kind == ZEND_AST_CONDITIONAL) (yyval.ast)->attr = ZEND_PARENTHESIZED_CONDITIONAL;
7688
0
      if ((yyval.ast)->kind == ZEND_AST_ARROW_FUNC) (yyval.ast)->attr = ZEND_PARENTHESIZED_ARROW_FUNC;
7689
0
    }
7690
0
#line 7691 "/src/php-src/Zend/zend_language_parser.c"
7691
0
    break;
7692
7693
0
  case 474:
7694
0
#line 1358 "/src/php-src/Zend/zend_language_parser.y"
7695
0
                                    { (yyval.ast) = (yyvsp[0].ast); }
7696
0
#line 7697 "/src/php-src/Zend/zend_language_parser.c"
7697
0
    break;
7698
7699
0
  case 475:
7700
0
#line 1359 "/src/php-src/Zend/zend_language_parser.y"
7701
0
                                        { (yyval.ast) = (yyvsp[0].ast); }
7702
0
#line 7703 "/src/php-src/Zend/zend_language_parser.c"
7703
0
    break;
7704
7705
0
  case 476:
7706
0
#line 1361 "/src/php-src/Zend/zend_language_parser.y"
7707
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CONDITIONAL, (yyvsp[-4].ast), (yyvsp[-2].ast), (yyvsp[0].ast)); }
7708
0
#line 7709 "/src/php-src/Zend/zend_language_parser.c"
7709
0
    break;
7710
7711
0
  case 477:
7712
0
#line 1363 "/src/php-src/Zend/zend_language_parser.y"
7713
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CONDITIONAL, (yyvsp[-3].ast), NULL, (yyvsp[0].ast)); }
7714
0
#line 7715 "/src/php-src/Zend/zend_language_parser.c"
7715
0
    break;
7716
7717
0
  case 478:
7718
0
#line 1365 "/src/php-src/Zend/zend_language_parser.y"
7719
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_COALESCE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7720
0
#line 7721 "/src/php-src/Zend/zend_language_parser.c"
7721
0
    break;
7722
7723
0
  case 479:
7724
0
#line 1366 "/src/php-src/Zend/zend_language_parser.y"
7725
0
                                           { (yyval.ast) = (yyvsp[0].ast); }
7726
0
#line 7727 "/src/php-src/Zend/zend_language_parser.c"
7727
0
    break;
7728
7729
0
  case 480:
7730
0
#line 1367 "/src/php-src/Zend/zend_language_parser.y"
7731
0
                                        { (yyval.ast) = zend_ast_create_cast(IS_LONG, (yyvsp[0].ast)); }
7732
0
#line 7733 "/src/php-src/Zend/zend_language_parser.c"
7733
0
    break;
7734
7735
0
  case 481:
7736
0
#line 1368 "/src/php-src/Zend/zend_language_parser.y"
7737
0
                                        { (yyval.ast) = zend_ast_create_cast(IS_DOUBLE, (yyvsp[0].ast)); }
7738
0
#line 7739 "/src/php-src/Zend/zend_language_parser.c"
7739
0
    break;
7740
7741
0
  case 482:
7742
0
#line 1369 "/src/php-src/Zend/zend_language_parser.y"
7743
0
                                        { (yyval.ast) = zend_ast_create_cast(IS_STRING, (yyvsp[0].ast)); }
7744
0
#line 7745 "/src/php-src/Zend/zend_language_parser.c"
7745
0
    break;
7746
7747
0
  case 483:
7748
0
#line 1370 "/src/php-src/Zend/zend_language_parser.y"
7749
0
                                        { (yyval.ast) = zend_ast_create_cast(IS_ARRAY, (yyvsp[0].ast)); }
7750
0
#line 7751 "/src/php-src/Zend/zend_language_parser.c"
7751
0
    break;
7752
7753
0
  case 484:
7754
0
#line 1371 "/src/php-src/Zend/zend_language_parser.y"
7755
0
                                        { (yyval.ast) = zend_ast_create_cast(IS_OBJECT, (yyvsp[0].ast)); }
7756
0
#line 7757 "/src/php-src/Zend/zend_language_parser.c"
7757
0
    break;
7758
7759
0
  case 485:
7760
0
#line 1372 "/src/php-src/Zend/zend_language_parser.y"
7761
0
                                        { (yyval.ast) = zend_ast_create_cast(_IS_BOOL, (yyvsp[0].ast)); }
7762
0
#line 7763 "/src/php-src/Zend/zend_language_parser.c"
7763
0
    break;
7764
7765
0
  case 486:
7766
0
#line 1373 "/src/php-src/Zend/zend_language_parser.y"
7767
0
                                        { (yyval.ast) = zend_ast_create_cast(IS_NULL, (yyvsp[0].ast)); }
7768
0
#line 7769 "/src/php-src/Zend/zend_language_parser.c"
7769
0
    break;
7770
7771
0
  case 487:
7772
0
#line 1374 "/src/php-src/Zend/zend_language_parser.y"
7773
0
                                      {
7774
0
      zend_ast *name = zend_ast_create_zval_from_str(ZSTR_KNOWN(ZEND_STR_EXIT));
7775
0
      name->attr = ZEND_NAME_FQ;
7776
0
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, name, (yyvsp[0].ast));
7777
0
    }
7778
0
#line 7779 "/src/php-src/Zend/zend_language_parser.c"
7779
0
    break;
7780
7781
0
  case 488:
7782
0
#line 1379 "/src/php-src/Zend/zend_language_parser.y"
7783
0
                                                { (yyval.ast) = zend_ast_create(ZEND_AST_SILENCE, (yyvsp[0].ast)); }
7784
0
#line 7785 "/src/php-src/Zend/zend_language_parser.c"
7785
0
    break;
7786
7787
0
  case 489:
7788
0
#line 1380 "/src/php-src/Zend/zend_language_parser.y"
7789
0
                       { (yyval.ast) = (yyvsp[0].ast); }
7790
0
#line 7791 "/src/php-src/Zend/zend_language_parser.c"
7791
0
    break;
7792
7793
0
  case 490:
7794
0
#line 1381 "/src/php-src/Zend/zend_language_parser.y"
7795
0
                                       { (yyval.ast) = zend_ast_create(ZEND_AST_SHELL_EXEC, (yyvsp[-1].ast)); }
7796
0
#line 7797 "/src/php-src/Zend/zend_language_parser.c"
7797
0
    break;
7798
7799
0
  case 491:
7800
0
#line 1382 "/src/php-src/Zend/zend_language_parser.y"
7801
0
                             { (yyval.ast) = zend_ast_create(ZEND_AST_PRINT, (yyvsp[0].ast)); }
7802
0
#line 7803 "/src/php-src/Zend/zend_language_parser.c"
7803
0
    break;
7804
7805
0
  case 492:
7806
0
#line 1383 "/src/php-src/Zend/zend_language_parser.y"
7807
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_YIELD, NULL, NULL); CG(extra_fn_flags) |= ZEND_ACC_GENERATOR; }
7808
0
#line 7809 "/src/php-src/Zend/zend_language_parser.c"
7809
0
    break;
7810
7811
0
  case 493:
7812
0
#line 1384 "/src/php-src/Zend/zend_language_parser.y"
7813
0
                             { (yyval.ast) = zend_ast_create(ZEND_AST_YIELD, (yyvsp[0].ast), NULL); CG(extra_fn_flags) |= ZEND_ACC_GENERATOR; }
7814
0
#line 7815 "/src/php-src/Zend/zend_language_parser.c"
7815
0
    break;
7816
7817
0
  case 494:
7818
0
#line 1385 "/src/php-src/Zend/zend_language_parser.y"
7819
0
                                                 { (yyval.ast) = zend_ast_create(ZEND_AST_YIELD, (yyvsp[0].ast), (yyvsp[-2].ast)); CG(extra_fn_flags) |= ZEND_ACC_GENERATOR; }
7820
0
#line 7821 "/src/php-src/Zend/zend_language_parser.c"
7821
0
    break;
7822
7823
0
  case 495:
7824
0
#line 1386 "/src/php-src/Zend/zend_language_parser.y"
7825
0
                                  { (yyval.ast) = zend_ast_create(ZEND_AST_YIELD_FROM, (yyvsp[0].ast)); CG(extra_fn_flags) |= ZEND_ACC_GENERATOR; }
7826
0
#line 7827 "/src/php-src/Zend/zend_language_parser.c"
7827
0
    break;
7828
7829
0
  case 496:
7830
0
#line 1387 "/src/php-src/Zend/zend_language_parser.y"
7831
0
                             { (yyval.ast) = zend_ast_create(ZEND_AST_THROW, (yyvsp[0].ast)); }
7832
0
#line 7833 "/src/php-src/Zend/zend_language_parser.c"
7833
0
    break;
7834
7835
0
  case 497:
7836
0
#line 1388 "/src/php-src/Zend/zend_language_parser.y"
7837
0
                                { (yyval.ast) = (yyvsp[0].ast); }
7838
0
#line 7839 "/src/php-src/Zend/zend_language_parser.c"
7839
0
    break;
7840
7841
0
  case 498:
7842
0
#line 1389 "/src/php-src/Zend/zend_language_parser.y"
7843
0
                                           { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
7844
0
#line 7845 "/src/php-src/Zend/zend_language_parser.c"
7845
0
    break;
7846
7847
0
  case 499:
7848
0
#line 1390 "/src/php-src/Zend/zend_language_parser.y"
7849
0
                                         { (yyval.ast) = (yyvsp[0].ast); ((zend_ast_decl *) (yyval.ast))->flags |= ZEND_ACC_STATIC; }
7850
0
#line 7851 "/src/php-src/Zend/zend_language_parser.c"
7851
0
    break;
7852
7853
0
  case 500:
7854
0
#line 1392 "/src/php-src/Zend/zend_language_parser.y"
7855
0
                        { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-2].ast)); ((zend_ast_decl *) (yyval.ast))->flags |= ZEND_ACC_STATIC; }
7856
0
#line 7857 "/src/php-src/Zend/zend_language_parser.c"
7857
0
    break;
7858
7859
0
  case 501:
7860
0
#line 1393 "/src/php-src/Zend/zend_language_parser.y"
7861
0
                      { (yyval.ast) = (yyvsp[0].ast); }
7862
0
#line 7863 "/src/php-src/Zend/zend_language_parser.c"
7863
0
    break;
7864
7865
0
  case 502:
7866
0
#line 1400 "/src/php-src/Zend/zend_language_parser.y"
7867
0
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_CLOSURE, (yyvsp[-11].num) | (yyvsp[0].num), (yyvsp[-12].num), (yyvsp[-10].str),
7868
0
          NULL,
7869
0
          (yyvsp[-8].ast), (yyvsp[-6].ast), (yyvsp[-2].ast), (yyvsp[-5].ast), NULL); CG(extra_fn_flags) = (yyvsp[-4].num); }
7870
0
#line 7871 "/src/php-src/Zend/zend_language_parser.c"
7871
0
    break;
7872
7873
0
  case 503:
7874
0
#line 1405 "/src/php-src/Zend/zend_language_parser.y"
7875
0
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_ARROW_FUNC, (yyvsp[-10].num) | (yyvsp[0].num), (yyvsp[-11].num), (yyvsp[-9].str),
7876
0
          NULL, (yyvsp[-7].ast), NULL, (yyvsp[-1].ast), (yyvsp[-5].ast), NULL);
7877
0
          CG(extra_fn_flags) = (yyvsp[-3].num); }
7878
0
#line 7879 "/src/php-src/Zend/zend_language_parser.c"
7879
0
    break;
7880
7881
0
  case 504:
7882
0
#line 1411 "/src/php-src/Zend/zend_language_parser.y"
7883
0
             { (yyval.num) = CG(zend_lineno); }
7884
0
#line 7885 "/src/php-src/Zend/zend_language_parser.c"
7885
0
    break;
7886
7887
0
  case 505:
7888
0
#line 1415 "/src/php-src/Zend/zend_language_parser.y"
7889
0
                   { (yyval.num) = CG(zend_lineno); }
7890
0
#line 7891 "/src/php-src/Zend/zend_language_parser.c"
7891
0
    break;
7892
7893
0
  case 506:
7894
0
#line 1419 "/src/php-src/Zend/zend_language_parser.y"
7895
0
               { (yyval.str) = CG(doc_comment); CG(doc_comment) = NULL; }
7896
0
#line 7897 "/src/php-src/Zend/zend_language_parser.c"
7897
0
    break;
7898
7899
0
  case 507:
7900
0
#line 1423 "/src/php-src/Zend/zend_language_parser.y"
7901
0
                                         { (yyval.num) = CG(extra_fn_flags); CG(extra_fn_flags) = 0; }
7902
0
#line 7903 "/src/php-src/Zend/zend_language_parser.c"
7903
0
    break;
7904
7905
0
  case 508:
7906
0
#line 1427 "/src/php-src/Zend/zend_language_parser.y"
7907
0
               { (yyval.ptr) = LANG_SCNG(yy_text); }
7908
0
#line 7909 "/src/php-src/Zend/zend_language_parser.c"
7909
0
    break;
7910
7911
0
  case 509:
7912
0
#line 1431 "/src/php-src/Zend/zend_language_parser.y"
7913
0
                        { (yyval.num) = 0; }
7914
0
#line 7915 "/src/php-src/Zend/zend_language_parser.c"
7915
0
    break;
7916
7917
0
  case 510:
7918
0
#line 1432 "/src/php-src/Zend/zend_language_parser.y"
7919
0
                                { (yyval.num) = ZEND_ACC_RETURN_REFERENCE; }
7920
0
#line 7921 "/src/php-src/Zend/zend_language_parser.c"
7921
0
    break;
7922
7923
0
  case 511:
7924
0
#line 1436 "/src/php-src/Zend/zend_language_parser.y"
7925
0
                       { (yyval.ast) = NULL; }
7926
0
#line 7927 "/src/php-src/Zend/zend_language_parser.c"
7927
0
    break;
7928
7929
0
  case 512:
7930
0
#line 1437 "/src/php-src/Zend/zend_language_parser.y"
7931
0
                                                              { (yyval.ast) = (yyvsp[-2].ast); }
7932
0
#line 7933 "/src/php-src/Zend/zend_language_parser.c"
7933
0
    break;
7934
7935
0
  case 513:
7936
0
#line 1441 "/src/php-src/Zend/zend_language_parser.y"
7937
0
                                                 { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7938
0
#line 7939 "/src/php-src/Zend/zend_language_parser.c"
7939
0
    break;
7940
7941
0
  case 514:
7942
0
#line 1442 "/src/php-src/Zend/zend_language_parser.y"
7943
0
                            { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_CLOSURE_USES, (yyvsp[0].ast)); }
7944
0
#line 7945 "/src/php-src/Zend/zend_language_parser.c"
7945
0
    break;
7946
7947
0
  case 515:
7948
0
#line 1446 "/src/php-src/Zend/zend_language_parser.y"
7949
0
                                        { (yyval.ast) = (yyvsp[0].ast); }
7950
0
#line 7951 "/src/php-src/Zend/zend_language_parser.c"
7951
0
    break;
7952
7953
0
  case 516:
7954
0
#line 1447 "/src/php-src/Zend/zend_language_parser.y"
7955
0
                                        { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_BIND_REF; }
7956
0
#line 7957 "/src/php-src/Zend/zend_language_parser.c"
7957
0
    break;
7958
7959
0
  case 517:
7960
0
#line 1452 "/src/php-src/Zend/zend_language_parser.y"
7961
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CALL, (yyvsp[-1].ast), (yyvsp[0].ast)); }
7962
0
#line 7963 "/src/php-src/Zend/zend_language_parser.c"
7963
0
    break;
7964
7965
0
  case 518:
7966
0
#line 1453 "/src/php-src/Zend/zend_language_parser.y"
7967
0
                                         {
7968
0
      zval zv;
7969
0
      if (zend_lex_tstring(&zv, (yyvsp[-1].ident)) == FAILURE) { YYABORT; }
7970
0
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, zend_ast_create_zval(&zv), (yyvsp[0].ast));
7971
0
    }
7972
0
#line 7973 "/src/php-src/Zend/zend_language_parser.c"
7973
0
    break;
7974
7975
0
  case 519:
7976
0
#line 1459 "/src/php-src/Zend/zend_language_parser.y"
7977
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_CALL, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
7978
0
#line 7979 "/src/php-src/Zend/zend_language_parser.c"
7979
0
    break;
7980
7981
0
  case 520:
7982
0
#line 1461 "/src/php-src/Zend/zend_language_parser.y"
7983
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_CALL, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
7984
0
#line 7985 "/src/php-src/Zend/zend_language_parser.c"
7985
0
    break;
7986
7987
0
  case 521:
7988
0
#line 1462 "/src/php-src/Zend/zend_language_parser.y"
7989
0
                              { (yyval.num) = CG(zend_lineno); }
7990
0
#line 7991 "/src/php-src/Zend/zend_language_parser.c"
7991
0
    break;
7992
7993
0
  case 522:
7994
0
#line 1462 "/src/php-src/Zend/zend_language_parser.y"
7995
0
                                                                           {
7996
0
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, (yyvsp[-2].ast), (yyvsp[0].ast));
7997
0
      (yyval.ast)->lineno = (yyvsp[-1].num);
7998
0
    }
7999
0
#line 8000 "/src/php-src/Zend/zend_language_parser.c"
8000
0
    break;
8001
8002
0
  case 523:
8003
0
#line 1470 "/src/php-src/Zend/zend_language_parser.y"
8004
0
                        { zval zv; ZVAL_INTERNED_STR(&zv, ZSTR_KNOWN(ZEND_STR_STATIC));
8005
0
        (yyval.ast) = zend_ast_create_zval_ex(&zv, ZEND_NAME_NOT_FQ); }
8006
0
#line 8007 "/src/php-src/Zend/zend_language_parser.c"
8007
0
    break;
8008
8009
0
  case 524:
8010
0
#line 1472 "/src/php-src/Zend/zend_language_parser.y"
8011
0
                     { (yyval.ast) = (yyvsp[0].ast); }
8012
0
#line 8013 "/src/php-src/Zend/zend_language_parser.c"
8013
0
    break;
8014
8015
0
  case 525:
8016
0
#line 1476 "/src/php-src/Zend/zend_language_parser.y"
8017
0
                                        { (yyval.ast) = (yyvsp[0].ast); }
8018
0
#line 8019 "/src/php-src/Zend/zend_language_parser.c"
8019
0
    break;
8020
8021
0
  case 526:
8022
0
#line 1477 "/src/php-src/Zend/zend_language_parser.y"
8023
0
                                { (yyval.ast) = (yyvsp[0].ast); }
8024
0
#line 8025 "/src/php-src/Zend/zend_language_parser.c"
8025
0
    break;
8026
8027
0
  case 527:
8028
0
#line 1478 "/src/php-src/Zend/zend_language_parser.y"
8029
0
                                { (yyval.ast) = (yyvsp[-1].ast); }
8030
0
#line 8031 "/src/php-src/Zend/zend_language_parser.c"
8031
0
    break;
8032
8033
0
  case 528:
8034
0
#line 1483 "/src/php-src/Zend/zend_language_parser.y"
8035
0
                        { (yyval.ast) = zend_ast_create_zval_from_str(ZSTR_EMPTY_ALLOC()); }
8036
0
#line 8037 "/src/php-src/Zend/zend_language_parser.c"
8037
0
    break;
8038
8039
0
  case 529:
8040
0
#line 1484 "/src/php-src/Zend/zend_language_parser.y"
8041
0
                                          { (yyval.ast) = (yyvsp[0].ast); }
8042
0
#line 8043 "/src/php-src/Zend/zend_language_parser.c"
8043
0
    break;
8044
8045
0
  case 530:
8046
0
#line 1485 "/src/php-src/Zend/zend_language_parser.y"
8047
0
                            { (yyval.ast) = (yyvsp[0].ast); }
8048
0
#line 8049 "/src/php-src/Zend/zend_language_parser.c"
8049
0
    break;
8050
8051
0
  case 531:
8052
0
#line 1490 "/src/php-src/Zend/zend_language_parser.y"
8053
0
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_ARG_LIST); }
8054
0
#line 8055 "/src/php-src/Zend/zend_language_parser.c"
8055
0
    break;
8056
8057
0
  case 532:
8058
0
#line 1491 "/src/php-src/Zend/zend_language_parser.y"
8059
0
                              { (yyval.ast) = (yyvsp[0].ast); }
8060
0
#line 8061 "/src/php-src/Zend/zend_language_parser.c"
8061
0
    break;
8062
8063
0
  case 533:
8064
0
#line 1496 "/src/php-src/Zend/zend_language_parser.y"
8065
0
                                                { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_ARRAY_SYNTAX_LONG; }
8066
0
#line 8067 "/src/php-src/Zend/zend_language_parser.c"
8067
0
    break;
8068
8069
0
  case 534:
8070
0
#line 1497 "/src/php-src/Zend/zend_language_parser.y"
8071
0
                                                        { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_ARRAY_SYNTAX_SHORT; }
8072
0
#line 8073 "/src/php-src/Zend/zend_language_parser.c"
8073
0
    break;
8074
8075
0
  case 535:
8076
0
#line 1498 "/src/php-src/Zend/zend_language_parser.y"
8077
0
                                                        { (yyval.ast) = (yyvsp[0].ast); }
8078
0
#line 8079 "/src/php-src/Zend/zend_language_parser.c"
8079
0
    break;
8080
8081
0
  case 536:
8082
0
#line 1499 "/src/php-src/Zend/zend_language_parser.y"
8083
0
                                                                { (yyval.ast) = (yyvsp[-1].ast); }
8084
0
#line 8085 "/src/php-src/Zend/zend_language_parser.c"
8085
0
    break;
8086
8087
0
  case 537:
8088
0
#line 1503 "/src/php-src/Zend/zend_language_parser.y"
8089
0
                                { (yyval.ast) = (yyvsp[0].ast); }
8090
0
#line 8091 "/src/php-src/Zend/zend_language_parser.c"
8091
0
    break;
8092
8093
0
  case 538:
8094
0
#line 1504 "/src/php-src/Zend/zend_language_parser.y"
8095
0
                                { (yyval.ast) = (yyvsp[0].ast); }
8096
0
#line 8097 "/src/php-src/Zend/zend_language_parser.c"
8097
0
    break;
8098
8099
0
  case 539:
8100
0
#line 1505 "/src/php-src/Zend/zend_language_parser.y"
8101
0
                                                                        { (yyval.ast) = (yyvsp[-1].ast); }
8102
0
#line 8103 "/src/php-src/Zend/zend_language_parser.c"
8103
0
    break;
8104
8105
0
  case 540:
8106
0
#line 1507 "/src/php-src/Zend/zend_language_parser.y"
8107
0
                        { (yyval.ast) = zend_ast_create_zval_from_str(ZSTR_EMPTY_ALLOC()); }
8108
0
#line 8109 "/src/php-src/Zend/zend_language_parser.c"
8109
0
    break;
8110
8111
0
  case 541:
8112
0
#line 1508 "/src/php-src/Zend/zend_language_parser.y"
8113
0
                                                          { (yyval.ast) = (yyvsp[-1].ast); }
8114
0
#line 8115 "/src/php-src/Zend/zend_language_parser.c"
8115
0
    break;
8116
8117
0
  case 542:
8118
0
#line 1509 "/src/php-src/Zend/zend_language_parser.y"
8119
0
                                        { (yyval.ast) = (yyvsp[0].ast); }
8120
0
#line 8121 "/src/php-src/Zend/zend_language_parser.c"
8121
0
    break;
8122
8123
0
  case 543:
8124
0
#line 1510 "/src/php-src/Zend/zend_language_parser.y"
8125
0
                                                        { (yyval.ast) = (yyvsp[0].ast); }
8126
0
#line 8127 "/src/php-src/Zend/zend_language_parser.c"
8127
0
    break;
8128
8129
0
  case 544:
8130
0
#line 1511 "/src/php-src/Zend/zend_language_parser.y"
8131
0
                                                { (yyval.ast) = (yyvsp[0].ast); }
8132
0
#line 8133 "/src/php-src/Zend/zend_language_parser.c"
8133
0
    break;
8134
8135
0
  case 545:
8136
0
#line 1515 "/src/php-src/Zend/zend_language_parser.y"
8137
0
                                { (yyval.ast) = zend_ast_create(ZEND_AST_CONST, (yyvsp[0].ast)); }
8138
0
#line 8139 "/src/php-src/Zend/zend_language_parser.c"
8139
0
    break;
8140
8141
0
  case 546:
8142
0
#line 1516 "/src/php-src/Zend/zend_language_parser.y"
8143
0
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_LINE); }
8144
0
#line 8145 "/src/php-src/Zend/zend_language_parser.c"
8145
0
    break;
8146
8147
0
  case 547:
8148
0
#line 1517 "/src/php-src/Zend/zend_language_parser.y"
8149
0
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_FILE); }
8150
0
#line 8151 "/src/php-src/Zend/zend_language_parser.c"
8151
0
    break;
8152
8153
0
  case 548:
8154
0
#line 1518 "/src/php-src/Zend/zend_language_parser.y"
8155
0
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_DIR); }
8156
0
#line 8157 "/src/php-src/Zend/zend_language_parser.c"
8157
0
    break;
8158
8159
0
  case 549:
8160
0
#line 1519 "/src/php-src/Zend/zend_language_parser.y"
8161
0
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_TRAIT_C); }
8162
0
#line 8163 "/src/php-src/Zend/zend_language_parser.c"
8163
0
    break;
8164
8165
0
  case 550:
8166
0
#line 1520 "/src/php-src/Zend/zend_language_parser.y"
8167
0
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_METHOD_C); }
8168
0
#line 8169 "/src/php-src/Zend/zend_language_parser.c"
8169
0
    break;
8170
8171
0
  case 551:
8172
0
#line 1521 "/src/php-src/Zend/zend_language_parser.y"
8173
0
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_FUNC_C); }
8174
0
#line 8175 "/src/php-src/Zend/zend_language_parser.c"
8175
0
    break;
8176
8177
0
  case 552:
8178
0
#line 1522 "/src/php-src/Zend/zend_language_parser.y"
8179
0
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_PROPERTY_C); }
8180
0
#line 8181 "/src/php-src/Zend/zend_language_parser.c"
8181
0
    break;
8182
8183
0
  case 553:
8184
0
#line 1523 "/src/php-src/Zend/zend_language_parser.y"
8185
0
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_NS_C); }
8186
0
#line 8187 "/src/php-src/Zend/zend_language_parser.c"
8187
0
    break;
8188
8189
0
  case 554:
8190
0
#line 1524 "/src/php-src/Zend/zend_language_parser.y"
8191
0
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_CLASS_C); }
8192
0
#line 8193 "/src/php-src/Zend/zend_language_parser.c"
8193
0
    break;
8194
8195
0
  case 555:
8196
0
#line 1529 "/src/php-src/Zend/zend_language_parser.y"
8197
0
                        { (yyval.ast) = zend_ast_create_class_const_or_name((yyvsp[-2].ast), (yyvsp[0].ast)); }
8198
0
#line 8199 "/src/php-src/Zend/zend_language_parser.c"
8199
0
    break;
8200
8201
0
  case 556:
8202
0
#line 1531 "/src/php-src/Zend/zend_language_parser.y"
8203
0
                        { (yyval.ast) = zend_ast_create_class_const_or_name((yyvsp[-2].ast), (yyvsp[0].ast)); }
8204
0
#line 8205 "/src/php-src/Zend/zend_language_parser.c"
8205
0
    break;
8206
8207
0
  case 557:
8208
0
#line 1533 "/src/php-src/Zend/zend_language_parser.y"
8209
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CLASS_CONST, (yyvsp[-4].ast), (yyvsp[-1].ast)); }
8210
0
#line 8211 "/src/php-src/Zend/zend_language_parser.c"
8211
0
    break;
8212
8213
0
  case 558:
8214
0
#line 1535 "/src/php-src/Zend/zend_language_parser.y"
8215
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CLASS_CONST, (yyvsp[-4].ast), (yyvsp[-1].ast)); }
8216
0
#line 8217 "/src/php-src/Zend/zend_language_parser.c"
8217
0
    break;
8218
8219
0
  case 559:
8220
0
#line 1539 "/src/php-src/Zend/zend_language_parser.y"
8221
0
                        { (yyval.ast) = NULL; }
8222
0
#line 8223 "/src/php-src/Zend/zend_language_parser.c"
8223
0
    break;
8224
8225
0
  case 560:
8226
0
#line 1540 "/src/php-src/Zend/zend_language_parser.y"
8227
0
                                { (yyval.ast) = (yyvsp[0].ast); }
8228
0
#line 8229 "/src/php-src/Zend/zend_language_parser.c"
8229
0
    break;
8230
8231
0
  case 561:
8232
0
#line 1544 "/src/php-src/Zend/zend_language_parser.y"
8233
0
                                      { (yyval.ast) = (yyvsp[0].ast); }
8234
0
#line 8235 "/src/php-src/Zend/zend_language_parser.c"
8235
0
    break;
8236
8237
0
  case 562:
8238
0
#line 1548 "/src/php-src/Zend/zend_language_parser.y"
8239
0
                                                        { (yyval.ast) = (yyvsp[0].ast); }
8240
0
#line 8241 "/src/php-src/Zend/zend_language_parser.c"
8241
0
    break;
8242
8243
0
  case 563:
8244
0
#line 1549 "/src/php-src/Zend/zend_language_parser.y"
8245
0
                             {
8246
0
      (yyval.ast) = (yyvsp[-1].ast);
8247
0
      if ((yyval.ast)->kind == ZEND_AST_STATIC_PROP) (yyval.ast)->attr = ZEND_PARENTHESIZED_STATIC_PROP;
8248
0
    }
8249
0
#line 8250 "/src/php-src/Zend/zend_language_parser.c"
8250
0
    break;
8251
8252
0
  case 564:
8253
0
#line 1553 "/src/php-src/Zend/zend_language_parser.y"
8254
0
                                        { (yyval.ast) = (yyvsp[0].ast); }
8255
0
#line 8256 "/src/php-src/Zend/zend_language_parser.c"
8256
0
    break;
8257
8258
0
  case 565:
8259
0
#line 1554 "/src/php-src/Zend/zend_language_parser.y"
8260
0
                                                { (yyval.ast) = (yyvsp[0].ast); }
8261
0
#line 8262 "/src/php-src/Zend/zend_language_parser.c"
8262
0
    break;
8263
8264
0
  case 566:
8265
0
#line 1555 "/src/php-src/Zend/zend_language_parser.y"
8266
0
                                                { (yyval.ast) = (yyvsp[0].ast); }
8267
0
#line 8268 "/src/php-src/Zend/zend_language_parser.c"
8268
0
    break;
8269
8270
0
  case 567:
8271
0
#line 1559 "/src/php-src/Zend/zend_language_parser.y"
8272
0
                                        { (yyval.ast) = (yyvsp[0].ast); }
8273
0
#line 8274 "/src/php-src/Zend/zend_language_parser.c"
8274
0
    break;
8275
8276
0
  case 568:
8277
0
#line 1560 "/src/php-src/Zend/zend_language_parser.y"
8278
0
                                                        { (yyval.ast) = (yyvsp[0].ast); }
8279
0
#line 8280 "/src/php-src/Zend/zend_language_parser.c"
8280
0
    break;
8281
8282
0
  case 569:
8283
0
#line 1564 "/src/php-src/Zend/zend_language_parser.y"
8284
0
                                                { (yyval.ast) = (yyvsp[0].ast); }
8285
0
#line 8286 "/src/php-src/Zend/zend_language_parser.c"
8286
0
    break;
8287
8288
0
  case 570:
8289
0
#line 1565 "/src/php-src/Zend/zend_language_parser.y"
8290
0
                                                { (yyval.ast) = (yyvsp[-1].ast); }
8291
0
#line 8292 "/src/php-src/Zend/zend_language_parser.c"
8292
0
    break;
8293
8294
0
  case 571:
8295
0
#line 1566 "/src/php-src/Zend/zend_language_parser.y"
8296
0
                                        { (yyval.ast) = (yyvsp[0].ast); }
8297
0
#line 8298 "/src/php-src/Zend/zend_language_parser.c"
8298
0
    break;
8299
8300
0
  case 572:
8301
0
#line 1567 "/src/php-src/Zend/zend_language_parser.y"
8302
0
                                                { (yyval.ast) = (yyvsp[0].ast); }
8303
0
#line 8304 "/src/php-src/Zend/zend_language_parser.c"
8304
0
    break;
8305
8306
0
  case 573:
8307
0
#line 1572 "/src/php-src/Zend/zend_language_parser.y"
8308
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8309
0
#line 8310 "/src/php-src/Zend/zend_language_parser.c"
8310
0
    break;
8311
8312
0
  case 574:
8313
0
#line 1574 "/src/php-src/Zend/zend_language_parser.y"
8314
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DIM, (yyvsp[-3].ast), (yyvsp[-1].ast)); }
8315
0
#line 8316 "/src/php-src/Zend/zend_language_parser.c"
8316
0
    break;
8317
8318
0
  case 575:
8319
0
#line 1576 "/src/php-src/Zend/zend_language_parser.y"
8320
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_METHOD_CALL, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
8321
0
#line 8322 "/src/php-src/Zend/zend_language_parser.c"
8322
0
    break;
8323
8324
0
  case 576:
8325
0
#line 1578 "/src/php-src/Zend/zend_language_parser.y"
8326
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NULLSAFE_METHOD_CALL, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
8327
0
#line 8328 "/src/php-src/Zend/zend_language_parser.c"
8328
0
    break;
8329
8330
0
  case 577:
8331
0
#line 1579 "/src/php-src/Zend/zend_language_parser.y"
8332
0
                              { (yyval.ast) = (yyvsp[0].ast); }
8333
0
#line 8334 "/src/php-src/Zend/zend_language_parser.c"
8334
0
    break;
8335
8336
0
  case 578:
8337
0
#line 1584 "/src/php-src/Zend/zend_language_parser.y"
8338
0
                        { (yyval.ast) = (yyvsp[0].ast); }
8339
0
#line 8340 "/src/php-src/Zend/zend_language_parser.c"
8340
0
    break;
8341
8342
0
  case 579:
8343
0
#line 1586 "/src/php-src/Zend/zend_language_parser.y"
8344
0
                        { (yyval.ast) = (yyvsp[0].ast); }
8345
0
#line 8346 "/src/php-src/Zend/zend_language_parser.c"
8346
0
    break;
8347
8348
0
  case 580:
8349
0
#line 1588 "/src/php-src/Zend/zend_language_parser.y"
8350
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8351
0
#line 8352 "/src/php-src/Zend/zend_language_parser.c"
8352
0
    break;
8353
8354
0
  case 581:
8355
0
#line 1590 "/src/php-src/Zend/zend_language_parser.y"
8356
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NULLSAFE_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8357
0
#line 8358 "/src/php-src/Zend/zend_language_parser.c"
8358
0
    break;
8359
8360
0
  case 582:
8361
0
#line 1594 "/src/php-src/Zend/zend_language_parser.y"
8362
0
                                                { (yyval.ast) = (yyvsp[0].ast); }
8363
0
#line 8364 "/src/php-src/Zend/zend_language_parser.c"
8364
0
    break;
8365
8366
0
  case 583:
8367
0
#line 1595 "/src/php-src/Zend/zend_language_parser.y"
8368
0
                                        { (yyval.ast) = (yyvsp[-1].ast); }
8369
0
#line 8370 "/src/php-src/Zend/zend_language_parser.c"
8370
0
    break;
8371
8372
0
  case 584:
8373
0
#line 1596 "/src/php-src/Zend/zend_language_parser.y"
8374
0
                                        { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8375
0
#line 8376 "/src/php-src/Zend/zend_language_parser.c"
8376
0
    break;
8377
8378
0
  case 585:
8379
0
#line 1601 "/src/php-src/Zend/zend_language_parser.y"
8380
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8381
0
#line 8382 "/src/php-src/Zend/zend_language_parser.c"
8382
0
    break;
8383
8384
0
  case 586:
8385
0
#line 1603 "/src/php-src/Zend/zend_language_parser.y"
8386
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8387
0
#line 8388 "/src/php-src/Zend/zend_language_parser.c"
8388
0
    break;
8389
8390
0
  case 587:
8391
0
#line 1608 "/src/php-src/Zend/zend_language_parser.y"
8392
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8393
0
#line 8394 "/src/php-src/Zend/zend_language_parser.c"
8394
0
    break;
8395
8396
0
  case 588:
8397
0
#line 1610 "/src/php-src/Zend/zend_language_parser.y"
8398
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DIM, (yyvsp[-3].ast), (yyvsp[-1].ast)); }
8399
0
#line 8400 "/src/php-src/Zend/zend_language_parser.c"
8400
0
    break;
8401
8402
0
  case 589:
8403
0
#line 1612 "/src/php-src/Zend/zend_language_parser.y"
8404
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8405
0
#line 8406 "/src/php-src/Zend/zend_language_parser.c"
8406
0
    break;
8407
8408
0
  case 590:
8409
0
#line 1614 "/src/php-src/Zend/zend_language_parser.y"
8410
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NULLSAFE_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8411
0
#line 8412 "/src/php-src/Zend/zend_language_parser.c"
8412
0
    break;
8413
8414
0
  case 591:
8415
0
#line 1616 "/src/php-src/Zend/zend_language_parser.y"
8416
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8417
0
#line 8418 "/src/php-src/Zend/zend_language_parser.c"
8418
0
    break;
8419
8420
0
  case 592:
8421
0
#line 1618 "/src/php-src/Zend/zend_language_parser.y"
8422
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8423
0
#line 8424 "/src/php-src/Zend/zend_language_parser.c"
8424
0
    break;
8425
8426
0
  case 593:
8427
0
#line 1622 "/src/php-src/Zend/zend_language_parser.y"
8428
0
                           { (yyval.ast) = (yyvsp[0].ast); }
8429
0
#line 8430 "/src/php-src/Zend/zend_language_parser.c"
8430
0
    break;
8431
8432
0
  case 594:
8433
0
#line 1623 "/src/php-src/Zend/zend_language_parser.y"
8434
0
                                { (yyval.ast) = (yyvsp[-1].ast); }
8435
0
#line 8436 "/src/php-src/Zend/zend_language_parser.c"
8436
0
    break;
8437
8438
0
  case 595:
8439
0
#line 1624 "/src/php-src/Zend/zend_language_parser.y"
8440
0
                                { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8441
0
#line 8442 "/src/php-src/Zend/zend_language_parser.c"
8442
0
    break;
8443
8444
0
  case 596:
8445
0
#line 1628 "/src/php-src/Zend/zend_language_parser.y"
8446
0
                         { (yyval.ast) = (yyvsp[0].ast); }
8447
0
#line 8448 "/src/php-src/Zend/zend_language_parser.c"
8448
0
    break;
8449
8450
0
  case 597:
8451
0
#line 1629 "/src/php-src/Zend/zend_language_parser.y"
8452
0
                                { (yyval.ast) = (yyvsp[-1].ast); }
8453
0
#line 8454 "/src/php-src/Zend/zend_language_parser.c"
8454
0
    break;
8455
8456
0
  case 598:
8457
0
#line 1630 "/src/php-src/Zend/zend_language_parser.y"
8458
0
                                { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8459
0
#line 8460 "/src/php-src/Zend/zend_language_parser.c"
8460
0
    break;
8461
8462
0
  case 599:
8463
0
#line 1635 "/src/php-src/Zend/zend_language_parser.y"
8464
0
                        { /* allow single trailing comma */ (yyval.ast) = zend_ast_list_rtrim((yyvsp[0].ast)); }
8465
0
#line 8466 "/src/php-src/Zend/zend_language_parser.c"
8466
0
    break;
8467
8468
0
  case 600:
8469
0
#line 1639 "/src/php-src/Zend/zend_language_parser.y"
8470
0
                       { (yyval.ast) = NULL; }
8471
0
#line 8472 "/src/php-src/Zend/zend_language_parser.c"
8472
0
    break;
8473
8474
0
  case 601:
8475
0
#line 1640 "/src/php-src/Zend/zend_language_parser.y"
8476
0
                            { (yyval.ast) = (yyvsp[0].ast); }
8477
0
#line 8478 "/src/php-src/Zend/zend_language_parser.c"
8478
0
    break;
8479
8480
0
  case 602:
8481
0
#line 1645 "/src/php-src/Zend/zend_language_parser.y"
8482
0
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
8483
0
#line 8484 "/src/php-src/Zend/zend_language_parser.c"
8484
0
    break;
8485
8486
0
  case 603:
8487
0
#line 1647 "/src/php-src/Zend/zend_language_parser.y"
8488
0
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ARRAY, (yyvsp[0].ast)); }
8489
0
#line 8490 "/src/php-src/Zend/zend_language_parser.c"
8490
0
    break;
8491
8492
0
  case 604:
8493
0
#line 1652 "/src/php-src/Zend/zend_language_parser.y"
8494
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ARRAY_ELEM, (yyvsp[0].ast), (yyvsp[-2].ast)); }
8495
0
#line 8496 "/src/php-src/Zend/zend_language_parser.c"
8496
0
    break;
8497
8498
0
  case 605:
8499
0
#line 1654 "/src/php-src/Zend/zend_language_parser.y"
8500
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ARRAY_ELEM, (yyvsp[0].ast), NULL); }
8501
0
#line 8502 "/src/php-src/Zend/zend_language_parser.c"
8502
0
    break;
8503
8504
0
  case 606:
8505
0
#line 1656 "/src/php-src/Zend/zend_language_parser.y"
8506
0
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_ARRAY_ELEM, 1, (yyvsp[0].ast), (yyvsp[-3].ast)); }
8507
0
#line 8508 "/src/php-src/Zend/zend_language_parser.c"
8508
0
    break;
8509
8510
0
  case 607:
8511
0
#line 1658 "/src/php-src/Zend/zend_language_parser.y"
8512
0
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_ARRAY_ELEM, 1, (yyvsp[0].ast), NULL); }
8513
0
#line 8514 "/src/php-src/Zend/zend_language_parser.c"
8514
0
    break;
8515
8516
0
  case 608:
8517
0
#line 1660 "/src/php-src/Zend/zend_language_parser.y"
8518
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_UNPACK, (yyvsp[0].ast)); }
8519
0
#line 8520 "/src/php-src/Zend/zend_language_parser.c"
8520
0
    break;
8521
8522
0
  case 609:
8523
0
#line 1662 "/src/php-src/Zend/zend_language_parser.y"
8524
0
                        { (yyvsp[-1].ast)->attr = ZEND_ARRAY_SYNTAX_LIST;
8525
0
        (yyval.ast) = zend_ast_create(ZEND_AST_ARRAY_ELEM, (yyvsp[-1].ast), (yyvsp[-5].ast)); }
8526
0
#line 8527 "/src/php-src/Zend/zend_language_parser.c"
8527
0
    break;
8528
8529
0
  case 610:
8530
0
#line 1665 "/src/php-src/Zend/zend_language_parser.y"
8531
0
                        { (yyvsp[-1].ast)->attr = ZEND_ARRAY_SYNTAX_LIST;
8532
0
        (yyval.ast) = zend_ast_create(ZEND_AST_ARRAY_ELEM, (yyvsp[-1].ast), NULL); }
8533
0
#line 8534 "/src/php-src/Zend/zend_language_parser.c"
8534
0
    break;
8535
8536
0
  case 611:
8537
0
#line 1671 "/src/php-src/Zend/zend_language_parser.y"
8538
0
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
8539
0
#line 8540 "/src/php-src/Zend/zend_language_parser.c"
8540
0
    break;
8541
8542
0
  case 612:
8543
0
#line 1673 "/src/php-src/Zend/zend_language_parser.y"
8544
0
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
8545
0
#line 8546 "/src/php-src/Zend/zend_language_parser.c"
8546
0
    break;
8547
8548
0
  case 613:
8549
0
#line 1675 "/src/php-src/Zend/zend_language_parser.y"
8550
0
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ENCAPS_LIST, (yyvsp[0].ast)); }
8551
0
#line 8552 "/src/php-src/Zend/zend_language_parser.c"
8552
0
    break;
8553
8554
0
  case 614:
8555
0
#line 1677 "/src/php-src/Zend/zend_language_parser.y"
8556
0
                        { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_ENCAPS_LIST, (yyvsp[-1].ast), (yyvsp[0].ast)); }
8557
0
#line 8558 "/src/php-src/Zend/zend_language_parser.c"
8558
0
    break;
8559
8560
0
  case 615:
8561
0
#line 1682 "/src/php-src/Zend/zend_language_parser.y"
8562
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8563
0
#line 8564 "/src/php-src/Zend/zend_language_parser.c"
8564
0
    break;
8565
8566
0
  case 616:
8567
0
#line 1684 "/src/php-src/Zend/zend_language_parser.y"
8568
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DIM,
8569
0
            zend_ast_create(ZEND_AST_VAR, (yyvsp[-3].ast)), (yyvsp[-1].ast)); }
8570
0
#line 8571 "/src/php-src/Zend/zend_language_parser.c"
8571
0
    break;
8572
8573
0
  case 617:
8574
0
#line 1687 "/src/php-src/Zend/zend_language_parser.y"
8575
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP,
8576
0
            zend_ast_create(ZEND_AST_VAR, (yyvsp[-2].ast)), (yyvsp[0].ast)); }
8577
0
#line 8578 "/src/php-src/Zend/zend_language_parser.c"
8578
0
    break;
8579
8580
0
  case 618:
8581
0
#line 1690 "/src/php-src/Zend/zend_language_parser.y"
8582
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NULLSAFE_PROP,
8583
0
            zend_ast_create(ZEND_AST_VAR, (yyvsp[-2].ast)), (yyvsp[0].ast)); }
8584
0
#line 8585 "/src/php-src/Zend/zend_language_parser.c"
8585
0
    break;
8586
8587
0
  case 619:
8588
0
#line 1693 "/src/php-src/Zend/zend_language_parser.y"
8589
0
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_VAR, ZEND_ENCAPS_VAR_DOLLAR_CURLY_VAR_VAR, (yyvsp[-1].ast)); }
8590
0
#line 8591 "/src/php-src/Zend/zend_language_parser.c"
8591
0
    break;
8592
8593
0
  case 620:
8594
0
#line 1695 "/src/php-src/Zend/zend_language_parser.y"
8595
0
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_VAR, ZEND_ENCAPS_VAR_DOLLAR_CURLY, (yyvsp[-1].ast)); }
8596
0
#line 8597 "/src/php-src/Zend/zend_language_parser.c"
8597
0
    break;
8598
8599
0
  case 621:
8600
0
#line 1697 "/src/php-src/Zend/zend_language_parser.y"
8601
0
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_DIM, ZEND_ENCAPS_VAR_DOLLAR_CURLY,
8602
0
            zend_ast_create(ZEND_AST_VAR, (yyvsp[-4].ast)), (yyvsp[-2].ast)); }
8603
0
#line 8604 "/src/php-src/Zend/zend_language_parser.c"
8604
0
    break;
8605
8606
0
  case 622:
8607
0
#line 1699 "/src/php-src/Zend/zend_language_parser.y"
8608
0
                                          { (yyval.ast) = (yyvsp[-1].ast); }
8609
0
#line 8610 "/src/php-src/Zend/zend_language_parser.c"
8610
0
    break;
8611
8612
0
  case 623:
8613
0
#line 1703 "/src/php-src/Zend/zend_language_parser.y"
8614
0
                                                { (yyval.ast) = (yyvsp[0].ast); }
8615
0
#line 8616 "/src/php-src/Zend/zend_language_parser.c"
8616
0
    break;
8617
8618
0
  case 624:
8619
0
#line 1704 "/src/php-src/Zend/zend_language_parser.y"
8620
0
                                        { (yyval.ast) = (yyvsp[0].ast); }
8621
0
#line 8622 "/src/php-src/Zend/zend_language_parser.c"
8622
0
    break;
8623
8624
0
  case 625:
8625
0
#line 1705 "/src/php-src/Zend/zend_language_parser.y"
8626
0
                                        { (yyval.ast) = zend_negate_num_string((yyvsp[0].ast)); }
8627
0
#line 8628 "/src/php-src/Zend/zend_language_parser.c"
8628
0
    break;
8629
8630
0
  case 626:
8631
0
#line 1706 "/src/php-src/Zend/zend_language_parser.y"
8632
0
                                                { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8633
0
#line 8634 "/src/php-src/Zend/zend_language_parser.c"
8634
0
    break;
8635
8636
0
  case 627:
8637
0
#line 1711 "/src/php-src/Zend/zend_language_parser.y"
8638
0
                                                               { (yyval.ast) = (yyvsp[-2].ast); }
8639
0
#line 8640 "/src/php-src/Zend/zend_language_parser.c"
8640
0
    break;
8641
8642
0
  case 628:
8643
0
#line 1712 "/src/php-src/Zend/zend_language_parser.y"
8644
0
                                     { (yyval.ast) = zend_ast_create(ZEND_AST_EMPTY, (yyvsp[-1].ast)); }
8645
0
#line 8646 "/src/php-src/Zend/zend_language_parser.c"
8646
0
    break;
8647
8648
0
  case 629:
8649
0
#line 1714 "/src/php-src/Zend/zend_language_parser.y"
8650
0
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_INCLUDE, (yyvsp[0].ast)); }
8651
0
#line 8652 "/src/php-src/Zend/zend_language_parser.c"
8652
0
    break;
8653
8654
0
  case 630:
8655
0
#line 1716 "/src/php-src/Zend/zend_language_parser.y"
8656
0
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_INCLUDE_ONCE, (yyvsp[0].ast)); }
8657
0
#line 8658 "/src/php-src/Zend/zend_language_parser.c"
8658
0
    break;
8659
8660
0
  case 631:
8661
0
#line 1718 "/src/php-src/Zend/zend_language_parser.y"
8662
0
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_EVAL, (yyvsp[-1].ast)); }
8663
0
#line 8664 "/src/php-src/Zend/zend_language_parser.c"
8664
0
    break;
8665
8666
0
  case 632:
8667
0
#line 1720 "/src/php-src/Zend/zend_language_parser.y"
8668
0
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_REQUIRE, (yyvsp[0].ast)); }
8669
0
#line 8670 "/src/php-src/Zend/zend_language_parser.c"
8670
0
    break;
8671
8672
0
  case 633:
8673
0
#line 1722 "/src/php-src/Zend/zend_language_parser.y"
8674
0
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_REQUIRE_ONCE, (yyvsp[0].ast)); }
8675
0
#line 8676 "/src/php-src/Zend/zend_language_parser.c"
8676
0
    break;
8677
8678
0
  case 634:
8679
0
#line 1726 "/src/php-src/Zend/zend_language_parser.y"
8680
0
                               { (yyval.ast) = (yyvsp[0].ast); }
8681
0
#line 8682 "/src/php-src/Zend/zend_language_parser.c"
8682
0
    break;
8683
8684
0
  case 635:
8685
0
#line 1728 "/src/php-src/Zend/zend_language_parser.y"
8686
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8687
0
#line 8688 "/src/php-src/Zend/zend_language_parser.c"
8688
0
    break;
8689
8690
0
  case 636:
8691
0
#line 1732 "/src/php-src/Zend/zend_language_parser.y"
8692
0
                     { (yyval.ast) = zend_ast_create(ZEND_AST_ISSET, (yyvsp[0].ast)); }
8693
0
#line 8694 "/src/php-src/Zend/zend_language_parser.c"
8694
0
    break;
8695
8696
8697
0
#line 8698 "/src/php-src/Zend/zend_language_parser.c"
8698
8699
0
      default: break;
8700
0
    }
8701
  /* User semantic actions sometimes alter yychar, and that requires
8702
     that yytoken be updated with the new translation.  We take the
8703
     approach of translating immediately before every use of yytoken.
8704
     One alternative is translating here after every semantic action,
8705
     but that translation would be missed if the semantic action invokes
8706
     YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or
8707
     if it invokes YYBACKUP.  In the case of YYABORT or YYACCEPT, an
8708
     incorrect destructor might then be invoked immediately.  In the
8709
     case of YYERROR or YYBACKUP, subsequent parser actions might lead
8710
     to an incorrect destructor call or verbose syntax error message
8711
     before the lookahead is translated.  */
8712
0
  YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
8713
8714
0
  YYPOPSTACK (yylen);
8715
0
  yylen = 0;
8716
0
  YY_STACK_PRINT (yyss, yyssp);
8717
8718
0
  *++yyvsp = yyval;
8719
8720
  /* Now 'shift' the result of the reduction.  Determine what state
8721
     that goes to, based on the state we popped back to and the rule
8722
     number reduced by.  */
8723
0
  {
8724
0
    const int yylhs = yyr1[yyn] - YYNTOKENS;
8725
0
    const int yyi = yypgoto[yylhs] + *yyssp;
8726
0
    yystate = (0 <= yyi && yyi <= YYLAST && yycheck[yyi] == *yyssp
8727
0
               ? yytable[yyi]
8728
0
               : yydefgoto[yylhs]);
8729
0
  }
8730
8731
0
  goto yynewstate;
8732
8733
8734
/*--------------------------------------.
8735
| yyerrlab -- here on detecting error.  |
8736
`--------------------------------------*/
8737
0
yyerrlab:
8738
  /* Make sure we have latest lookahead translation.  See comments at
8739
     user semantic actions for why this is necessary.  */
8740
0
  yytoken = yychar == YYEMPTY ? YYEMPTY : YYTRANSLATE (yychar);
8741
8742
  /* If not already recovering from an error, report this error.  */
8743
0
  if (!yyerrstatus)
8744
0
    {
8745
0
      ++yynerrs;
8746
#if ! YYERROR_VERBOSE
8747
      yyerror (YY_("syntax error"));
8748
#else
8749
0
# define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \
8750
0
                                        yyssp, yytoken)
8751
0
      {
8752
0
        char const *yymsgp = YY_("syntax error");
8753
0
        int yysyntax_error_status;
8754
0
        yysyntax_error_status = YYSYNTAX_ERROR;
8755
0
        if (yysyntax_error_status == 0)
8756
0
          yymsgp = yymsg;
8757
0
        else if (yysyntax_error_status == 1)
8758
0
          {
8759
0
            if (yymsg != yymsgbuf)
8760
0
              YYSTACK_FREE (yymsg);
8761
0
            yymsg = YY_CAST (char *, YYSTACK_ALLOC (YY_CAST (YYSIZE_T, yymsg_alloc)));
8762
0
            if (!yymsg)
8763
0
              {
8764
0
                yymsg = yymsgbuf;
8765
0
                yymsg_alloc = sizeof yymsgbuf;
8766
0
                yysyntax_error_status = 2;
8767
0
              }
8768
0
            else
8769
0
              {
8770
0
                yysyntax_error_status = YYSYNTAX_ERROR;
8771
0
                yymsgp = yymsg;
8772
0
              }
8773
0
          }
8774
0
        yyerror (yymsgp);
8775
0
        if (yysyntax_error_status == 2)
8776
0
          goto yyexhaustedlab;
8777
0
      }
8778
0
# undef YYSYNTAX_ERROR
8779
0
#endif
8780
0
    }
8781
8782
8783
8784
0
  if (yyerrstatus == 3)
8785
0
    {
8786
      /* If just tried and failed to reuse lookahead token after an
8787
         error, discard it.  */
8788
8789
0
      if (yychar <= YYEOF)
8790
0
        {
8791
          /* Return failure if at end of input.  */
8792
0
          if (yychar == YYEOF)
8793
0
            YYABORT;
8794
0
        }
8795
0
      else
8796
0
        {
8797
0
          yydestruct ("Error: discarding",
8798
0
                      yytoken, &yylval);
8799
0
          yychar = YYEMPTY;
8800
0
        }
8801
0
    }
8802
8803
  /* Else will try to reuse lookahead token after shifting the error
8804
     token.  */
8805
0
  goto yyerrlab1;
8806
8807
8808
/*---------------------------------------------------.
8809
| yyerrorlab -- error raised explicitly by YYERROR.  |
8810
`---------------------------------------------------*/
8811
0
yyerrorlab:
8812
  /* Pacify compilers when the user code never invokes YYERROR and the
8813
     label yyerrorlab therefore never appears in user code.  */
8814
0
  if (0)
8815
0
    YYERROR;
8816
8817
  /* Do not reclaim the symbols of the rule whose action triggered
8818
     this YYERROR.  */
8819
0
  YYPOPSTACK (yylen);
8820
0
  yylen = 0;
8821
0
  YY_STACK_PRINT (yyss, yyssp);
8822
0
  yystate = *yyssp;
8823
0
  goto yyerrlab1;
8824
8825
8826
/*-------------------------------------------------------------.
8827
| yyerrlab1 -- common code for both syntax error and YYERROR.  |
8828
`-------------------------------------------------------------*/
8829
0
yyerrlab1:
8830
0
  yyerrstatus = 3;      /* Each real token shifted decrements this.  */
8831
8832
0
  for (;;)
8833
0
    {
8834
0
      yyn = yypact[yystate];
8835
0
      if (!yypact_value_is_default (yyn))
8836
0
        {
8837
0
          yyn += YYTERROR;
8838
0
          if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
8839
0
            {
8840
0
              yyn = yytable[yyn];
8841
0
              if (0 < yyn)
8842
0
                break;
8843
0
            }
8844
0
        }
8845
8846
      /* Pop the current state because it cannot handle the error token.  */
8847
0
      if (yyssp == yyss)
8848
0
        YYABORT;
8849
8850
8851
0
      yydestruct ("Error: popping",
8852
0
                  yystos[yystate], yyvsp);
8853
0
      YYPOPSTACK (1);
8854
0
      yystate = *yyssp;
8855
0
      YY_STACK_PRINT (yyss, yyssp);
8856
0
    }
8857
8858
0
  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
8859
0
  *++yyvsp = yylval;
8860
0
  YY_IGNORE_MAYBE_UNINITIALIZED_END
8861
8862
8863
  /* Shift the error token.  */
8864
0
  YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
8865
8866
0
  yystate = yyn;
8867
0
  goto yynewstate;
8868
8869
8870
/*-------------------------------------.
8871
| yyacceptlab -- YYACCEPT comes here.  |
8872
`-------------------------------------*/
8873
0
yyacceptlab:
8874
0
  yyresult = 0;
8875
0
  goto yyreturn;
8876
8877
8878
/*-----------------------------------.
8879
| yyabortlab -- YYABORT comes here.  |
8880
`-----------------------------------*/
8881
0
yyabortlab:
8882
0
  yyresult = 1;
8883
0
  goto yyreturn;
8884
8885
8886
0
#if !defined yyoverflow || YYERROR_VERBOSE
8887
/*-------------------------------------------------.
8888
| yyexhaustedlab -- memory exhaustion comes here.  |
8889
`-------------------------------------------------*/
8890
0
yyexhaustedlab:
8891
0
  yyerror (YY_("memory exhausted"));
8892
0
  yyresult = 2;
8893
  /* Fall through.  */
8894
0
#endif
8895
8896
8897
/*-----------------------------------------------------.
8898
| yyreturn -- parsing is finished, return the result.  |
8899
`-----------------------------------------------------*/
8900
0
yyreturn:
8901
0
  if (yychar != YYEMPTY)
8902
0
    {
8903
      /* Make sure we have latest lookahead translation.  See comments at
8904
         user semantic actions for why this is necessary.  */
8905
0
      yytoken = YYTRANSLATE (yychar);
8906
0
      yydestruct ("Cleanup: discarding lookahead",
8907
0
                  yytoken, &yylval);
8908
0
    }
8909
  /* Do not reclaim the symbols of the rule whose action triggered
8910
     this YYABORT or YYACCEPT.  */
8911
0
  YYPOPSTACK (yylen);
8912
0
  YY_STACK_PRINT (yyss, yyssp);
8913
0
  while (yyssp != yyss)
8914
0
    {
8915
0
      yydestruct ("Cleanup: popping",
8916
0
                  yystos[+*yyssp], yyvsp);
8917
0
      YYPOPSTACK (1);
8918
0
    }
8919
0
#ifndef yyoverflow
8920
0
  if (yyss != yyssa)
8921
0
    YYSTACK_FREE (yyss);
8922
0
#endif
8923
0
#if YYERROR_VERBOSE
8924
0
  if (yymsg != yymsgbuf)
8925
0
    YYSTACK_FREE (yymsg);
8926
0
#endif
8927
0
  return yyresult;
8928
0
}
8929
#line 1735 "/src/php-src/Zend/zend_language_parser.y"
8930
8931
8932
/* Over-ride Bison formatting routine to give better token descriptions.
8933
   Copy to YYRES the contents of YYSTR for use in yyerror.
8934
   YYSTR is taken from yytname, from the %token declaration.
8935
   If YYRES is null, do not copy; instead, return the length of what
8936
   the result would have been.  */
8937
static YYSIZE_T zend_yytnamerr(char *yyres, const char *yystr)
8938
0
{
8939
0
  const char *toktype = yystr;
8940
0
  size_t toktype_len = strlen(toktype);
8941
8942
  /* CG(parse_error) states:
8943
   * 0 => yyres = NULL, yystr is the unexpected token
8944
   * 1 => yyres = NULL, yystr is one of the expected tokens
8945
   * 2 => yyres != NULL, yystr is the unexpected token
8946
   * 3 => yyres != NULL, yystr is one of the expected tokens
8947
   */
8948
0
  if (yyres && CG(parse_error) < 2) {
8949
0
    CG(parse_error) = 2;
8950
0
  }
8951
8952
0
  if (CG(parse_error) % 2 == 0) {
8953
    /* The unexpected token */
8954
0
    char buffer[120];
8955
0
    const unsigned char *tokcontent, *tokcontent_end;
8956
0
    size_t tokcontent_len;
8957
8958
0
    CG(parse_error)++;
8959
8960
0
    if (LANG_SCNG(yy_text)[0] == 0 &&
8961
0
      LANG_SCNG(yy_leng) == 1 &&
8962
0
      strcmp(toktype, "\"end of file\"") == 0) {
8963
0
      if (yyres) {
8964
0
        yystpcpy(yyres, "end of file");
8965
0
      }
8966
0
      return sizeof("end of file")-1;
8967
0
    }
8968
8969
    /* Prevent the backslash getting doubled in the output (eugh) */
8970
0
    if (strcmp(toktype, "\"'\\\\'\"") == 0) {
8971
0
      if (yyres) {
8972
0
        yystpcpy(yyres, "token \"\\\"");
8973
0
      }
8974
0
      return sizeof("token \"\\\"")-1;
8975
0
    }
8976
8977
    /* We used "amp" as a dummy label to avoid a duplicate token literal warning. */
8978
0
    if (strcmp(toktype, "\"amp\"") == 0) {
8979
0
      if (yyres) {
8980
0
        yystpcpy(yyres, "token \"&\"");
8981
0
      }
8982
0
      return sizeof("token \"&\"")-1;
8983
0
    }
8984
8985
    /* Avoid unreadable """ */
8986
    /* "'" would theoretically be just as bad, but is never currently parsed as a separate token */
8987
0
    if (strcmp(toktype, "'\"'") == 0) {
8988
0
      if (yyres) {
8989
0
        yystpcpy(yyres, "double-quote mark");
8990
0
      }
8991
0
      return sizeof("double-quote mark")-1;
8992
0
    }
8993
8994
    /* Strip off the outer quote marks */
8995
0
    if (toktype_len >= 2 && *toktype == '"') {
8996
0
      toktype++;
8997
0
      toktype_len -= 2;
8998
0
    }
8999
9000
    /* If the token always has one form, the %token line should have a single-quoted name */
9001
    /* The parser rules also include single-character un-named tokens which will be single-quoted here */
9002
    /* We re-format this with double quotes here to ensure everything's consistent */
9003
0
    if (toktype_len > 0 && *toktype == '\'') {
9004
0
      if (yyres) {
9005
0
        snprintf(buffer, sizeof(buffer), "token \"%.*s\"", (int)toktype_len-2, toktype+1);
9006
0
        yystpcpy(yyres, buffer);
9007
0
      }
9008
0
      return toktype_len + sizeof("token ")-1;
9009
0
    }
9010
9011
    /* Fetch the content of the last seen token from global lexer state */
9012
0
    tokcontent = LANG_SCNG(yy_text);
9013
0
    tokcontent_len = LANG_SCNG(yy_leng);
9014
9015
    /* For T_BAD_CHARACTER, the content probably won't be a printable char */
9016
    /* Also, "unexpected invalid character" sounds a bit redundant */
9017
0
    if (tokcontent_len == 1 && strcmp(yystr, "\"invalid character\"") == 0) {
9018
0
      if (yyres) {
9019
0
        snprintf(buffer, sizeof(buffer), "character 0x%02hhX", *tokcontent);
9020
0
        yystpcpy(yyres, buffer);
9021
0
      }
9022
0
      return sizeof("character 0x00")-1;
9023
0
    }
9024
9025
    /* Truncate at line end to avoid messing up log formats */
9026
0
    tokcontent_end = memchr(tokcontent, '\n', tokcontent_len);
9027
0
    if (tokcontent_end != NULL) {
9028
0
      tokcontent_len = (tokcontent_end - tokcontent);
9029
0
    }
9030
9031
    /* Try to be helpful about what kind of string was found, before stripping the quotes */
9032
0
    if (tokcontent_len > 0 && strcmp(yystr, "\"quoted string\"") == 0) {
9033
0
      if (*tokcontent == '"') {
9034
0
        toktype = "double-quoted string";
9035
0
        toktype_len = sizeof("double-quoted string")-1;
9036
0
      }
9037
0
      else if (*tokcontent == '\'') {
9038
0
        toktype = "single-quoted string";
9039
0
        toktype_len = sizeof("single-quoted string")-1;
9040
0
      }
9041
0
    }
9042
9043
    /* For quoted strings, strip off another layer of quotes to avoid putting quotes inside quotes */
9044
0
    if (tokcontent_len > 0 && (*tokcontent == '\'' || *tokcontent=='"'))  {
9045
0
      tokcontent++;
9046
0
      tokcontent_len--;
9047
0
    }
9048
0
    if (tokcontent_len > 0 && (tokcontent[tokcontent_len-1] == '\'' || tokcontent[tokcontent_len-1] == '"'))  {
9049
0
      tokcontent_len--;
9050
0
    }
9051
9052
    /* Truncate to 30 characters and add a ... */
9053
0
    if (tokcontent_len > 30 + sizeof("...")-1) {
9054
0
      if (yyres) {
9055
0
        snprintf(buffer, sizeof(buffer), "%.*s \"%.*s...\"", (int)toktype_len, toktype, 30, tokcontent);
9056
0
        yystpcpy(yyres, buffer);
9057
0
      }
9058
0
      return toktype_len + 30 + sizeof(" \"...\"")-1;
9059
0
    }
9060
9061
0
    if (yyres) {
9062
0
      snprintf(buffer, sizeof(buffer), "%.*s \"%.*s\"", (int)toktype_len, toktype, (int)tokcontent_len, tokcontent);
9063
0
      yystpcpy(yyres, buffer);
9064
0
    }
9065
0
    return toktype_len + tokcontent_len + sizeof(" \"\"")-1;
9066
0
  }
9067
9068
  /* One of the expected tokens */
9069
9070
  /* Prevent the backslash getting doubled in the output (eugh) */
9071
0
  if (strcmp(toktype, "\"'\\\\'\"") == 0) {
9072
0
    if (yyres) {
9073
0
      yystpcpy(yyres, "\"\\\"");
9074
0
    }
9075
0
    return sizeof("\"\\\"")-1;
9076
0
  }
9077
9078
  /* We used "amp" as a dummy label to avoid a duplicate token literal warning. */
9079
0
  if (strcmp(toktype, "\"amp\"") == 0) {
9080
0
    if (yyres) {
9081
0
      yystpcpy(yyres, "token \"&\"");
9082
0
    }
9083
0
    return sizeof("token \"&\"")-1;
9084
0
  }
9085
9086
  /* Strip off the outer quote marks */
9087
0
  if (toktype_len >= 2 && *toktype == '"') {
9088
0
    toktype++;
9089
0
    toktype_len -= 2;
9090
0
  }
9091
9092
0
  if (yyres) {
9093
0
    YYSIZE_T yyn = 0;
9094
9095
0
    for (; yyn < toktype_len; ++yyn) {
9096
      /* Replace single quotes with double for consistency */
9097
0
      if (toktype[yyn] == '\'') {
9098
0
        yyres[yyn] = '"';
9099
0
      }
9100
0
      else {
9101
0
        yyres[yyn] = toktype[yyn];
9102
0
      }
9103
0
    }
9104
0
    yyres[toktype_len] = '\0';
9105
0
  }
9106
9107
0
  return toktype_len;
9108
0
}