Coverage Report

Created: 2026-06-02 06:40

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 21 "/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
1.14k
#define YYSIZE_T size_t
77
12.4k
#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
138k
#define YYSTYPE         ZENDSTYPE
88
/* Substitute the variable and function names.  */
89
#define yyparse         zendparse
90
2.85M
#define yylex           zendlex
91
2.15k
#define yyerror         zenderror
92
#define yydebug         zenddebug
93
29.8k
#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
9.09M
#   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
11.3k
#   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 40 "/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
69.1k
#  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
9.17k
  YY_CAST (YYPTRDIFF_T,                                 \
420
           (YYPTRDIFF_MAXIMUM < YY_CAST (YYSIZE_T, -1)  \
421
            ? YYPTRDIFF_MAXIMUM                         \
422
            : YY_CAST (YYSIZE_T, -1)))
423
424
732
#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
2.15k
#  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
114k
# 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
55.3k
# 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
9.07M
#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
124
#  define YYSTACK_FREE YYFREE
542
#  ifndef YYSTACK_ALLOC_MAXIMUM
543
9.17k
#   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
124
#   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
244
# 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
244
    do                                                                  \
598
244
      {                                                                 \
599
244
        YYPTRDIFF_T yynewbytes;                                         \
600
244
        YYCOPY (&yyptr->Stack_alloc, Stack, yysize);                    \
601
244
        Stack = &yyptr->Stack_alloc;                                    \
602
244
        yynewbytes = yystacksize * YYSIZEOF (*Stack) + YYSTACK_GAP_MAXIMUM; \
603
244
        yyptr += yynewbytes / YYSIZEOF (*yyptr);                        \
604
244
      }                                                                 \
605
244
    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
244
      __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
9.07M
#define YYFINAL  3
631
/* YYLAST -- Last index in YYTABLE.  */
632
15.1M
#define YYLAST   10430
633
634
/* YYNTOKENS -- Number of terminals.  */
635
6.20M
#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  1204
642
643
0
#define YYUNDEFTOK  2
644
5.03M
#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
5.04M
  (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,   303,   303,   307,   307,   307,   307,   307,   307,   307,
705
     307,   308,   308,   308,   308,   308,   308,   308,   308,   308,
706
     308,   308,   308,   309,   309,   309,   309,   309,   309,   309,
707
     309,   309,   309,   310,   310,   310,   310,   310,   310,   310,
708
     310,   310,   310,   311,   311,   311,   311,   311,   311,   311,
709
     311,   311,   311,   311,   312,   312,   312,   312,   312,   312,
710
     312,   312,   313,   313,   313,   313,   313,   313,   313,   313,
711
     313,   313,   313,   314,   318,   319,   319,   319,   319,   319,
712
     319,   319,   323,   324,   328,   329,   337,   338,   343,   344,
713
     349,   350,   355,   356,   360,   361,   362,   363,   367,   369,
714
     374,   376,   381,   385,   386,   390,   391,   392,   393,   394,
715
     398,   399,   403,   404,   405,   406,   410,   413,   413,   416,
716
     416,   419,   420,   421,   422,   426,   427,   431,   436,   441,
717
     442,   446,   448,   453,   455,   460,   462,   467,   468,   472,
718
     474,   479,   481,   486,   487,   491,   493,   499,   500,   501,
719
     502,   509,   510,   511,   512,   514,   516,   518,   520,   521,
720
     522,   523,   524,   525,   526,   527,   528,   529,   531,   535,
721
     534,   538,   539,   541,   542,   543,   547,   549,   554,   555,
722
     559,   560,   564,   565,   569,   570,   574,   578,   579,   587,
723
     594,   595,   599,   600,   604,   604,   607,   607,   613,   614,
724
     619,   621,   626,   627,   631,   632,   633,   637,   637,   643,
725
     643,   649,   649,   655,   656,   660,   665,   666,   670,   671,
726
     675,   676,   680,   681,   685,   686,   687,   688,   692,   693,
727
     697,   698,   702,   703,   707,   708,   709,   710,   714,   715,
728
     717,   719,   721,   727,   732,   733,   737,   738,   742,   744,
729
     749,   750,   755,   756,   761,   764,   770,   771,   776,   779,
730
     785,   786,   792,   793,   798,   800,   805,   806,   810,   812,
731
     818,   822,   829,   830,   834,   835,   836,   837,   841,   842,
732
     846,   847,   851,   853,   858,   859,   866,   867,   868,   869,
733
     873,   874,   875,   879,   880,   884,   886,   891,   893,   898,
734
     899,   903,   904,   908,   910,   924,   925,   926,   930,   932,
735
     934,   939,   941,   943,   945,   947,   952,   953,   957,   958,
736
     962,   968,   969,   973,   974,   978,   980,   986,   989,   992,
737
     995,   998,  1002,  1006,  1007,  1008,  1013,  1014,  1018,  1019,
738
    1020,  1024,  1026,  1031,  1032,  1036,  1041,  1043,  1047,  1052,
739
    1060,  1062,  1066,  1071,  1072,  1076,  1079,  1084,  1086,  1093,
740
    1095,  1102,  1104,  1109,  1110,  1111,  1112,  1113,  1114,  1115,
741
    1116,  1117,  1118,  1122,  1123,  1127,  1129,  1134,  1136,  1141,
742
    1142,  1143,  1149,  1150,  1154,  1155,  1163,  1162,  1173,  1174,
743
    1175,  1180,  1181,  1185,  1186,  1190,  1191,  1199,  1203,  1204,
744
    1207,  1211,  1212,  1213,  1217,  1218,  1222,  1223,  1224,  1225,
745
    1229,  1229,  1239,  1241,  1243,  1248,  1253,  1255,  1257,  1259,
746
    1261,  1263,  1268,  1273,  1275,  1277,  1279,  1281,  1283,  1285,
747
    1287,  1289,  1291,  1293,  1295,  1297,  1299,  1300,  1301,  1302,
748
    1303,  1305,  1307,  1309,  1311,  1313,  1314,  1315,  1316,  1317,
749
    1318,  1319,  1320,  1321,  1322,  1323,  1324,  1325,  1326,  1327,
750
    1328,  1329,  1330,  1332,  1334,  1336,  1338,  1340,  1342,  1344,
751
    1346,  1348,  1350,  1352,  1357,  1358,  1359,  1361,  1363,  1365,
752
    1366,  1367,  1368,  1369,  1370,  1371,  1372,  1373,  1378,  1379,
753
    1380,  1381,  1382,  1383,  1384,  1385,  1386,  1387,  1388,  1389,
754
    1390,  1392,  1397,  1402,  1410,  1414,  1418,  1422,  1426,  1430,
755
    1431,  1435,  1436,  1440,  1441,  1445,  1446,  1450,  1452,  1457,
756
    1459,  1461,  1461,  1468,  1471,  1475,  1476,  1477,  1481,  1483,
757
    1484,  1489,  1490,  1495,  1496,  1497,  1498,  1502,  1503,  1504,
758
    1505,  1507,  1508,  1509,  1510,  1514,  1515,  1516,  1517,  1518,
759
    1519,  1520,  1521,  1522,  1523,  1527,  1529,  1531,  1533,  1538,
760
    1539,  1543,  1547,  1548,  1552,  1553,  1554,  1558,  1559,  1563,
761
    1564,  1565,  1566,  1570,  1572,  1574,  1576,  1578,  1582,  1584,
762
    1586,  1588,  1593,  1594,  1595,  1599,  1601,  1606,  1608,  1610,
763
    1612,  1614,  1616,  1621,  1622,  1623,  1627,  1628,  1629,  1633,
764
    1638,  1639,  1643,  1645,  1650,  1652,  1654,  1656,  1658,  1660,
765
    1663,  1669,  1671,  1673,  1675,  1680,  1682,  1685,  1688,  1691,
766
    1693,  1695,  1698,  1702,  1703,  1704,  1705,  1710,  1711,  1712,
767
    1714,  1716,  1718,  1720,  1725,  1726,  1731
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
9.09M
#define YYPACT_NINF (-1071)
907
908
#define yypact_value_is_default(Yyn) \
909
9.09M
  ((Yyn) == YYPACT_NINF)
910
911
118k
#define YYTABLE_NINF (-608)
912
913
#define yytable_value_is_error(Yyn) \
914
118k
  ((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
   -1071,    62,  2252, -1071,  7334,  7334,  7334,  7334,  7334,  7334,
921
    7334,  7334,  7334,  7334,  7334,  7334,  7334,  7334,  7334,  7334,
922
    7334,  7334,  7334,  7334,  7488, -1071, -1071,    52, -1071, -1071,
923
   -1071, -1071, -1071, -1071,   -75,  1041,   -50,   -23,  7334,  5639,
924
      13,    21,    43,    49,   103,   125,  7334,  7334,   108, -1071,
925
   -1071,   156,  7334,    73,   271,   -32,   -20, -1071, -1071,   -50,
926
     149,   157,   180,   186, -1071, -1071, -1071, -1071,  9538,   196,
927
     207, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071,
928
   -1071,  9916,  9916,  7334,   172, -1071,  7334, -1071,  5793,    -1,
929
     153,    -6,   -81, -1071,   836, -1071, -1071, -1071, -1071, -1071,
930
   -1071,   307, -1071, -1071, -1071, -1071, -1071,   461, -1071,   136,
931
   -1071,   214, -1071,  9048, -1071,   501,   501, -1071,   107,   384,
932
   -1071,   170,   390,   184,   220,   388, -1071,   215,  1808, -1071,
933
   -1071, -1071, -1071,   445,   -50,   250, 10240,   501, 10240, 10240,
934
   10240, 10240,  7643, 10332,  7643,   328,   328,     9,   328,   328,
935
     328,   328,   328,   328,   328,   328,   328,  1244, -1071, -1071,
936
   -1071,  7334, -1071, -1071,  7334, -1071,   117,   529,   284, -1071,
937
   -1071,   252,   -50, -1071,   427,  1426, -1071, -1071,  7334,   231,
938
   -1071, 10240,   348,  7334,  6255,  7334,   156,  7334,  7334, 10240,
939
     272,   319,   339,   510,   257, -1071,   367, -1071, -1071, -1071,
940
   -1071, -1071, -1071, -1071,     0,   292,   387,   263, -1071,   318,
941
   -1071, -1071,   556,   324, -1071, -1071, -1071,  9916,  7334,  7334,
942
     413,   508,   536,   539,   559, -1071, -1071, -1071, -1071, -1071,
943
   -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071,
944
   -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071,
945
   -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071,
946
   -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071,
947
   -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071,
948
   -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071,
949
   -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071,
950
   -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071,   462,   473,
951
    5793,  5793,   323,  1041,  7334,  5793,   481,   485, -1071, -1071,
952
     435,   435,  9098,   417,    -8, -1071,  6409,  9916,   176, -1071,
953
    8398,  2406, -1071, -1071,   492,  7334,  9916, 10140,   502, -1071,
954
     505, -1071,   101,   498,   194,   101,    50,  7334, -1071, -1071,
955
     445, -1071, -1071, -1071, -1071, -1071,   504,  5639,   509,   651,
956
     511,  7334,  7334,  7334,  6563,  7334,  7334,  7334,  7334,  7334,
957
    7334,  7334,  7334,  7334,  7334,  7334,  7334,  7334,  7334,  7334,
958
    7334,  7334,  7334,  7334,  7334,  7334,  7334,  7334,  7334,  7334,
959
     135,  7334, -1071, -1071, -1071,   -29,  4569,  4719,    -7,    -7,
960
    7334,   -50,  5947,  7334,  7334,  7334,  7334,  7334,  7334,  7334,
961
    7334,  7334,  7334,  7334,  7334,  7334, -1071, -1071, -1071,  7334,
962
    7334,  7334,  7334,  7334,  7334,  7334,  6717, -1071,  7488,    30,
963
     -75,  1036,    11,   125,   660,   663,    66,   -50,   157,   180,
964
     196,   207,   667,   668,   671,   672,   673,   680,   681,   683,
965
     685,  7334, -1071,   686,   545, -1071,  8347,  8448,  8498, -1071,
966
   -1071, -1071,   -32, -1071,    -7,    -7,   -32,  7334, -1071,   548,
967
   -1071, -1071, 10240,  8548,  7334, -1071,   547,  8598,  7334,   551,
968
     554, 10240, 10071,    28,  8648,  8698, -1071, -1071, -1071,  7334,
969
     156, -1071, -1071,  2560,   654,   558,    74,   555,   405, -1071,
970
     292, -1071,   -32, -1071,  7334,   656, -1071,   565, -1071,    84,
971
   10240,   566, -1071,  8748,   568,   608, -1071,   610,   719, -1071,
972
     572, -1071,   576,   577, -1071,   583,   -50,   -50,  8798,   589,
973
   -1071,   690,   691,   340, -1071, -1071,   440,  8096,   588, -1071,
974
   -1071, -1071,   399,   593, -1071,  4484, -1071, -1071, -1071,  5793,
975
   10240,   121,  6101,   759,  5793, -1071, -1071,  8146, -1071,   701,
976
    7334, -1071,  7334, -1071, -1071, 10289,  9531,  7643,  7334, 10190,
977
    7798,  7947,  9667,  4718,  9815,  9964,  9964, 10362, 10362, 10362,
978
   10362, 10362,  1595,  1595,  1595,  1595,  1156,   823,   834,   834,
979
     704,   704,     9,     9,     9, -1071,   328,   600, -1071, -1071,
980
   -1071,   602,  7334,   603,   604,   -50,  7334,   603,   604,   -50,
981
   -1071,  7334, -1071,   -50,   -50,   611, -1071,  9916,  7643,  7643,
982
    7643,  7643,  7643,  7643,  7643,  7643,  7643,  7643,  7643,  7643,
983
    7643,  7643,  7643, 10240,  6872,  1790,   607,  1608, -1071, -1071,
984
     -50, -1071, -1071, -1071, -1071,   612,  1790,   614,  4869, -1071,
985
    7334,  5023, 10240,  6255,  7026,  9285, -1071,    10,   609, 10240,
986
   -1071, -1071, -1071,   277,   615, -1071, -1071,   689, -1071, -1071,
987
   10240, -1071,  9916,   618,  7334,   619, -1071, -1071,   323,   659,
988
     621,   323, -1071,   189,   659, -1071,  1944,   774, -1071,   323,
989
     628, -1071,   629, -1071, -1071, -1071,   721, -1071, -1071, -1071,
990
     632, -1071,  7334, -1071, -1071,   630, -1071,   633,   638,  9916,
991
   10240,  7334, -1071, -1071,   608,  8848,  8898,  2714,  7798,  7334,
992
    1005,   639,  1005,  8196, -1071,  8247, -1071,  8297, -1071, -1071,
993
   -1071,   435, -1071, 10240, -1071, -1071, -1071, -1071,   608, -1071,
994
   -1071, -1071, -1071, -1071,  8948, -1071, -1071, -1071,   641,   645,
995
    9248,  7334, 10240,   644,  5793,  9916,     8,    14,  5177,   646,
996
     647, -1071,  7180, -1071,   531,   725,   232,   652, -1071, -1071,
997
     232, -1071,   655, -1071, -1071, -1071,   323, -1071, -1071,   653,
998
   -1071,   649,   301, -1071, -1071, -1071,   301, -1071, -1071,   523,
999
     798,   801,   805, -1071, -1071,  2098, -1071,  7334, -1071, -1071,
1000
   -1071, -1071,  9198,   662,   774,  5793,   248,  7643,   659,  5639,
1001
     813,   669,  7798, -1071, -1071, -1071, -1071, -1071, -1071, -1071,
1002
   -1071, -1071, -1071,  1341,   670,   677, -1071,   564, -1071,  1687,
1003
   -1071,  1005,   674,   678,   678, -1071,   659,  4408,   682,  2868,
1004
    6255,  7026, 10240,  5793,   687,    17,  9285,  5331, -1071, -1071,
1005
   -1071, -1071,   355, -1071,   -46,   694,   705,   695, -1071,   696,
1006
   10240,   718,   684, -1071,   772, -1071,   277,   717,   724, -1071,
1007
   -1071,   653,   722,  2321,   323, -1071, -1071,   866,     6,   301,
1008
     171,   171,   301,   726, -1071,  7643,   727, -1071,   728, -1071,
1009
   -1071, -1071, -1071, -1071,   878,  1117, -1071,   459,   459,   872,
1010
   -1071,   552,   876,   877,   879, -1071,   735,   799, -1071, -1071,
1011
     738,   741,  9298,   742,    23,   744, -1071, -1071, -1071,  3022,
1012
     426,   748,  7334,    20,   -38, -1071, -1071,   911, -1071,  7180,
1013
   -1071,  7334,   912,   323, -1071, -1071, -1071, -1071,   232,   749,
1014
   -1071, -1071,   323, -1071, -1071,  1161, -1071, -1071, -1071,   564,
1015
     821,   820,  1859, -1071,  2783, -1071, -1071, -1071, -1071, -1071,
1016
   -1071, -1071, -1071,   774,   754,  4408,   189,   922, -1071, -1071,
1017
     900,    16, -1071,   767,   459,   374,   374,   459,   878,   764,
1018
     878,   770, -1071,  5485, -1071,  5331,  3176,   777,   782, -1071,
1019
    8998, -1071, -1071, -1071,  7334, -1071, 10240,  7334,    46, -1071,
1020
    3330, -1071, -1071,  2937,  9688,   -82, -1071,   864,   501,  7950,
1021
   -1071,  3091, -1071, -1071, -1071, -1071, -1071,   869, -1071, -1071,
1022
   -1071, -1071, -1071, -1071,   285, -1071, -1071, -1071, -1071, -1071,
1023
   -1071,   789, -1071, -1071, -1071, -1071,  4408,  4408, 10240, 10240,
1024
     323, -1071,   788, -1071, -1071,   934, -1071,  7649, -1071,   951,
1025
     423, -1071, -1071,  9688,   952,   958,   959,   960,   961,  9838,
1026
     433, -1071, -1071,  3245, -1071,   962,   800, -1071,   902,   808,
1027
   -1071,   804,  3553,  3484, -1071,  4408,  4408, -1071,   806,  7334,
1028
     810,   819, -1071, -1071,  7799, -1071,   815,   816,   895,   880,
1029
     830,  7334,   824,   921, -1071, -1071,  7334,  7334,   952,   436,
1030
    9838, -1071, -1071,  7334,  7334,   826, -1071, -1071,   285,   832,
1031
   -1071, -1071,   835, -1071, 10240, -1071, -1071, -1071, -1071, -1071,
1032
    9388,   323,  9688, 10240, -1071,   986, -1071,   831, 10240, 10240,
1033
   -1071, -1071, 10240, 10240, -1071, -1071,  3638, -1071, -1071,  3792,
1034
   -1071,  3946, -1071, -1071,  9688,   653, -1071,   833,   503,  7334,
1035
   -1071,  1005, -1071, -1071, -1071,   826,  1327, -1071, -1071, -1071,
1036
   -1071, -1071, -1071,  1341,  1687,   501, -1071, 10240,   837, -1071,
1037
   -1071, -1071, -1071,  1509, -1071,   939, -1071,   878, -1071, -1071,
1038
   -1071, -1071,   154,   839, -1071, -1071, -1071,  1005, -1071,  4100,
1039
   -1071,   840,    24, -1071, -1071,  7334, -1071, -1071, -1071,  9148,
1040
    4254, -1071, -1071, -1071
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,     0,   382,   146,   516,   130,     0,
1159
     146,   411,     0,   146,   217,   215,   340,   342,   343,   344,
1160
       0,     0,     0,   506,   379,   506,   373,     0,   506,   506,
1161
     330,   393,   507,   506,   379,   270,     0,   513,   512,     0,
1162
     229,     0,   346,   347,   349,   345,   352,   376,   384,     0,
1163
     375,   268,   395,   396,   503,   382,   384,   507,   507,   177,
1164
     348,   379,   377,   384,   385,   509,   380,   506,     0,   271,
1165
     383,   189,   502,   384,   381,     0,   376,   299,   378,   506,
1166
     507,   386,     0,   391,   353,   146,   507,   268,   507,     0,
1167
     331,     0,     0,   354,   392,     0,   388,   146,   507,     0,
1168
       0,   387,   390,   389
1169
};
1170
1171
  /* YYPGOTO[NTERM-NUM].  */
1172
static const yytype_int16 yypgoto[] =
1173
{
1174
   -1071, -1071,  -103,  -974,    34,   -60,  -481, -1071,   -44,  -191,
1175
     -15,   334, -1071,   -91,    -2,     7,   933, -1071, -1071, -1071,
1176
     975, -1071, -1071,  -451, -1071, -1071,   828,   165,  -745,   537,
1177
     850,  -178, -1071,    37, -1071, -1071, -1071, -1071, -1071, -1071,
1178
     366, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071,
1179
   -1071,   -19, -1071, -1071, -1071, -1071, -1071, -1071, -1071, -1071,
1180
   -1071,  -651, -1071,  -655,   193, -1071,    58, -1071, -1071,  -712,
1181
   -1071, -1071, -1071,   115, -1071, -1071, -1071, -1071, -1071, -1071,
1182
    -698, -1071,   150, -1071,   223,    98,  -914,  -658,  -216, -1071,
1183
     262, -1071,  -734,  -303, -1071,   151,  -948,   169, -1071, -1071,
1184
   -1071,   896,  -346, -1071,   550, -1071,   560,  -796,   110, -1071,
1185
    -763, -1071, -1071,   -27, -1071, -1071, -1071, -1071, -1071, -1071,
1186
   -1071, -1071,  -718,  -814, -1071,   -30, -1071, -1070,   -89, -1071,
1187
     -96, -1071, -1071, -1071,    19,   -25,   578, -1071,   616, -1071,
1188
     236,   428,   917, -1071,   -77, -1071,    99,   -49, -1071,     4,
1189
     -69,  -989, -1071,  -114, -1071, -1071,   -22, -1071, -1071,   -34,
1190
    -258, -1071,   448,   -55, -1071,   -12,    54,   -35, -1071, -1071,
1191
   -1071, -1071, -1071,    75,   769, -1071, -1071,   688,  -160,  -261,
1192
     535, -1071, -1071,   586,   291, -1071, -1071, -1071,   418
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,  1186,   949,
1210
     950,   951,   829,   830,  1050,  1051,  1052,  1148,  1135,  1165,
1211
    1166,  1183,  1198,  1188,  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,   395,   351,   316,   316,   116,   215,   307,    95,
1225
     203,   312,   191,   871,   496,   905,   169,   196,   647,   493,
1226
     165,   865,   846,   418,   832,   869,   317,   317,  -224,   794,
1227
    1023,  -225,  1025,   166,  1066,  1058,  1071,  -227,  1195,    98,
1228
     686,   759,   -14,   882,   351,   353,   598,    31,   854,   522,
1229
     523,   991,  1013,   977,   529,   527,   673,   922,   923,   212,
1230
     675,   -84,     3,   808,  1156,   922,   923,   390,   610,   318,
1231
     318,   323,    31,    31,   690,   351,   182,   391,   323,   954,
1232
     342,  1040,   355,   160,   215,  1058,   353,   836,  -524,    49,
1233
      50,  1173,   874,   901,  1046,  1059,   175,  1047,   116,   599,
1234
     494,    95,   161,   136,   138,   139,   140,   141,   142,   143,
1235
     144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
1236
     154,   155,   156,   159,   876,  1041,  1058,   175,   877,   323,
1237
     -84,   539,   595,   906,   925,   319,   319,   181,   905,   920,
1238
     316,   924,   993,  1154,  1003,   189,   189,   169,   460,   393,
1239
     393,   189,    91,   889,   178,   952,   320,   321,   534,   326,
1240
     327,   203,   317,   969,   970,  1011,   326,   327,  1171,  1172,
1241
     495,   393,   611,   347,   494,    49,    50,    91,    91,  1005,
1242
     323,   908,   322,   192,   955,   330,   847,   337,   175,   760,
1243
     183,  1182,  -224,  1001,  1015,  -225,   992,  1190,   184,  1192,
1244
    1196,  -227,   490,  1197,   795,   318,   656,   358,   359,  1201,
1245
     132,    28,    29,    30,    31,   901,  1063,   326,   327,   782,
1246
     185,   956,   957,   957,   960,   360,   186,   952,   216,  1180,
1247
    1072,   193,   323,   556,   345,  -523,   952,    57,    58,   614,
1248
    1018,  1019,  1019,  1022,   664,   163,   132,    28,    29,    30,
1249
     316,   323,   197,   324,   162,   323,   456,   539,  -186,   316,
1250
     457,   349,  -186,   458,   132,    28,    29,    30,   326,   327,
1251
      80,   319,   317,   323,   472,   539,   396,   473,   526,   171,
1252
     187,   317,   477,   481,   482,   952,   484,   485,   707,   734,
1253
     783,   737,   509,   952,   169,  -607,  -607,   165,   165,  -607,
1254
     740,   558,   188,   216,   642,   643,  1144,   198,   783,   667,
1255
     200,   166,   164,   784,   785,   318,   867,   510,   513,    91,
1256
     326,   327,   332,   333,   318,   597,   217,  -568,  -568,   545,
1257
    1184,   784,   785,  1185,   218,   116,   603,   607,   325,   326,
1258
     327,   463,   540,   326,   327,   952,   198,   199,   786,   200,
1259
     905,  -568,   198,   397,   952,   200,   171,   219,  1145,    49,
1260
      50,   326,   327,   220,  1067,   615,   786,   198,   199,   350,
1261
     200,  -566,  -566,   310,   896,   165,   132,    28,    29,    30,
1262
     201,   319,   202,  -566,   311,   717,   201,   215,   202,  -561,
1263
     319,  -572,  -569,   696,   561,  -566,   391,   171,   132,    28,
1264
      29,    30,   538,    80,   927,   474,   930,   475,   932,   337,
1265
     337,   551,   169,   528,   337,   697,   165,   939,   461,   698,
1266
     783,   462,  -606,  -606,   699,   537,  -606,    57,    58,   166,
1267
    1164,   490,   645,   491,   550,   163,   617,   500,  1164,   501,
1268
     476,   354,   162,   784,   785,  1164,   557,   680,   486,   132,
1269
      28,    29,    30,  1168,   351,  1164,   203,   921,   922,   923,
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,  1191,
1273
     596,   545,   502,   844,   503,   487,   353,   116,   505,   189,
1274
     506,   618,   619,   620,   621,   622,   623,   624,   625,   626,
1275
     627,   628,   629,   630,   631,   488,   784,   785,   632,   136,
1276
     138,   139,   140,   141,   142,   143,   489,   159,   988,   922,
1277
     923,   721,   356,   357,   132,    28,    29,    30,   332,   333,
1278
     316,  -564,  -564,   492,   888,   398,   399,  -565,  -565,   116,
1279
     633,   898,   706,  -564,    49,    50,  -563,  -563,  -280,  -565,
1280
     879,  -571,   317,   499,   837,  -564,   189,   839,  -563,   400,
1281
     616,  -565,   504,   181,   531,   532,  -570,   652,   316,   500,
1282
    -563,   666,   913,   515,   464,   465,   709,  -293,   659,   974,
1283
     763,   514,  -562,  -562,   897,   316,   466,  1093,   533,  1094,
1284
     317,   784,   785,   670,  -562,   318,   216,  1100,   467,  1101,
1285
    1100,   516,  1130,   781,   517,   535,  -562,   317,  1109,   541,
1286
     701,   702,   813,   814,   815,   816,   817,   818,   819,   820,
1287
     821,   822,   316,   535,   518,   541,   535,   541,   519,   132,
1288
      28,    29,    30,   318,   775,   861,   862,   780,   337,    57,
1289
      58,   710,   521,   337,   317,   526,    80,   163,  -572,   715,
1290
     318,   716,  -571,   165,   958,   959,   165,   718,   787,   549,
1291
     919,   319,  1020,  1021,   165,   344,   346,   553,   316,   554,
1292
     555,   560,   563,  1162,    94,   743,   562,   564,   746,   755,
1293
     116,   -43,   731,    95,   -70,   691,   463,   318,   -66,   -67,
1294
     317,   723,   -68,   -62,   -63,   725,   784,   785,   872,   319,
1295
     727,   -65,   -64,   965,   -73,   545,   -69,   634,   823,   635,
1296
     823,   116,   646,    98,   650,   883,   319,   653,   654,   662,
1297
     757,   665,   351,   733,   472,   212,   472,   663,   986,   672,
1298
     674,   898,   780,   318,   677,   472,   678,   509,   681,   744,
1299
     683,   685,   750,   752,   687,   688,  1000,   689,   387,   388,
1300
     389,   165,   390,   319,   693,   694,   695,   787,   704,   316,
1301
     705,   787,   391,   510,   724,   711,   714,   720,   726,   722,
1302
    -593,  -595,   728,   729,   806,   735,   730,   739,   762,   494,
1303
     797,   317,   741,    94,   770,   849,   772,   774,   776,   116,
1304
     778,   802,    95,   799,   173,   800,  -570,   801,   803,   319,
1305
     807,   804,   787,  1036,  1037,   805,   831,   840,   812,   841,
1306
     964,   843,   851,   853,   211,   864,   866,   874,   875,   823,
1307
     845,   870,    98,   880,   318,   545,   881,   545,   887,   981,
1308
     953,   116,   882,   116,   891,   892,   890,   935,   894,  1073,
1309
     842,   895,   907,   337,   351,  -594,  1075,  1076,   909,   165,
1310
     348,   860,   914,   934,   787,   787,   787,   787,   926,   929,
1311
     931,   945,  1004,   383,   384,   385,   386,   387,   388,   389,
1312
     755,   390,   787,   787,   917,   928,   385,   386,   387,   388,
1313
     389,   391,   390,   823,  1053,   933,   885,   937,   938,   999,
1314
     319,   940,   391,   879,   337,   961,   963,   962,   780,   966,
1315
     972,   975,   976,   978,   982,   979,   977,   545,   165,   983,
1316
     984,   757,   985,   116,   989,   994,   997,   165,  1136,  1002,
1317
      49,  1009,  1139,  1012,   787,  1141,  1014,   974,  1016,   481,
1318
     912,  1024,   337,  1049,  1045,    49,    50,    51,  1065,  1026,
1319
    1079,   787,   945,  1032,  1008,   350,    57,    58,  1033,   787,
1320
     787,   787,   787,   545,   163,  1074,  1078,  1091,  1096,   116,
1321
      64,    65,    66,    67,   -75,   -54,   -55,  1097,  1104,  1106,
1322
    1092,  1107,  1108,  1110,   545,  1113,  1115,  1083,  -523,    80,
1323
     116,  1118,  1119,  1095,   787,  1120,  1105,  1121,   545,  1122,
1324
    1125,   945,  1149,  1124,   116,  1134,  1077,  1189,  1151,   945,
1325
    1138,  1140,  1161,  1090,  1179,  1177,  1187,  1143,  1194,  1200,
1326
    1028,   990,   917,   798,  1083,   165,  1127,   352,   860,   205,
1327
     996,   936,   165,   498,   545,   545,   483,   668,   771,   915,
1328
     116,   116,   393,  1030,   995,   968,   893,  1007,   878,   971,
1329
    1090,  1175,   669,   455,  1147,  1006,  1150,  1117,  1068,  1152,
1330
    1153,   945,  1146,  1126,  1155,   671,  1169,  1174,   660,   165,
1331
     945,   545,   351,   545,   545,  1131,   911,   116,  1099,   116,
1332
     116,   749,   173,   459,  1160,   609,  1137,   780,   738,   712,
1333
     649,     0,   773,  1038,     0,     0,  1039,     0,  1176,     0,
1334
       0,     0,     0,     0,     0,     0,   165,     0,     0,     0,
1335
    1181,   132,    28,    29,    30,    31,   132,    28,    29,    30,
1336
      31,     0,     0,     0,   813,   814,   815,   816,   817,   818,
1337
     819,   820,   821,   822,   545,     0,     0,   545,     0,   545,
1338
     116,     0,  1068,   116,     0,   116,  1163,     0,     0,   823,
1339
       0,     0,     0,     0,  1163,   162,    57,    58,    80,   173,
1340
     162,    57,    58,     0,   163,   604,   608,   612,   612,   163,
1341
    -202,  1163,     0,     0,     0,     0,     0,     0,  1114,     0,
1342
       0,     0,     0,  -263,     0,   823,     0,   545,     0,    80,
1343
    1123,     0,     0,   116,    80,  1128,  1129,     0,   545,   393,
1344
     173,     0,  1132,  1133,   116,   382,   383,   384,   385,   386,
1345
     387,   388,   389,   164,   390,     0,     0,     0,   164,     0,
1346
      91,     0,     0,     0,   391,    91,     0,     0,     0,     0,
1347
       0,   641,     0,   612,   612,   644,   813,   814,   815,   816,
1348
     817,   818,   819,   820,   821,   822,     0,   420,  1167,   421,
1349
     422,   423,   424,   230,   231,   232,   425,   426,     0,    11,
1350
       0,     0,     0,     0,   941,     0,     0,     0,     0,     0,
1351
      80,   211,  -359,     0,   427,     0,     0,     0,     0,     0,
1352
     813,   814,   815,   816,   817,   818,   819,   820,   821,   822,
1353
     943,     0,     0,     0,  1199,  -130,    12,    13,     0,     0,
1354
       0,    14,   235,    15,    16,    17,    18,    19,    20,    21,
1355
      22,    23,     0,   428,    80,   237,   238,    25,    26,   429,
1356
      28,    29,    30,    31,     0,     0,    33,     0,     0,   430,
1357
     431,   432,   244,   245,   246,   247,   248,   249,   250,   251,
1358
     252,   253,   254,   255,   256,   257,   258,   259,   260,   433,
1359
     262,   263,   264,   434,   435,   267,   268,   269,   270,   271,
1360
     272,   273,   274,   436,   276,   277,   278,   279,   280,     0,
1361
       0,     0,   437,   282,   283,   438,   439,     0,   286,   287,
1362
     288,   289,   290,   291,   292,   440,   441,   295,   442,   443,
1363
     444,   445,   446,   447,   448,   449,   450,    80,    81,    82,
1364
       0,     0,     0,     0,     0,     0,     0,     0,     0,    84,
1365
       0,     0,     0,     0,     0,   451,     0,     0,     0,     0,
1366
       0,    86,   452,     0,     0,    88,    89,    90,    91,   420,
1367
       0,   421,   422,   423,   424,   230,   231,   232,   425,   426,
1368
       0,    11,     0,     0,     0,     0,   813,   814,   815,   816,
1369
     817,   818,   819,   820,   821,   822,   427,     0,     0,     0,
1370
     813,   814,   815,   816,   817,   818,   819,   820,   821,   822,
1371
       0,     0,     0,     0,     0,     0,     0,     0,    12,    13,
1372
      80,     0,     0,    14,   235,    15,    16,    17,    18,    19,
1373
      20,    21,    22,    23,    80,   428,     0,   237,   238,    25,
1374
      26,   429,    28,    29,    30,    31,     0,  1170,    33,     0,
1375
       0,   430,   431,   432,   244,   245,   246,   247,   248,   249,
1376
     250,   251,   252,   253,   254,   255,   256,   257,   258,   259,
1377
     260,   433,   262,   263,   264,   434,   435,   267,   268,   269,
1378
     270,   271,   272,   273,   274,   436,   276,   277,   278,   279,
1379
     280,     0,     0,     0,   437,   282,   283,   438,   439,     0,
1380
     286,   287,   288,   289,   290,   291,   292,   440,   441,   295,
1381
     442,   443,   444,   445,   446,   447,   448,   449,   450,    80,
1382
      81,    82,     0,     0,     0,     0,     0,     0,     0,     0,
1383
       0,    84,     0,     0,     0,     0,     0,   451,     0,     0,
1384
       0,     0,     0,    86,   468,     0,     0,    88,    89,    90,
1385
      91,   420,     0,   421,   422,   423,   424,   230,   231,   232,
1386
     425,   426,     0,    11,     0,     0,     0,     0,   813,   814,
1387
     815,   816,   817,   818,   819,   820,   821,   822,   427,  -608,
1388
    -608,  -608,  -608,   381,   382,   383,   384,   385,   386,   387,
1389
     388,   389,     0,   390,     0,     0,     0,     0,     0,     0,
1390
      12,    13,    80,   391,     0,    14,   235,    15,    16,    17,
1391
      18,    19,    20,    21,    22,    23,     0,   428,     0,   237,
1392
     238,    25,    26,   429,    28,    29,    30,    31,     0,  1178,
1393
      33,     0,     0,   430,   431,   432,   244,   245,   246,   247,
1394
     248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
1395
     258,   259,   260,   433,   262,   263,   264,   434,   435,   267,
1396
     268,   269,   270,   271,   272,   273,   274,   436,   276,   277,
1397
     278,   279,   280,     0,     0,     0,   437,   282,   283,   438,
1398
     439,     0,   286,   287,   288,   289,   290,   291,   292,   440,
1399
     441,   295,   442,   443,   444,   445,   446,   447,   448,   449,
1400
     450,    80,    81,    82,     0,     0,     0,     0,     0,     0,
1401
       0,     0,     0,    84,     0,     0,     0,     0,     0,   451,
1402
       0,     0,     0,     0,     0,    86,   736,     0,     0,    88,
1403
      89,    90,    91,   420,     0,   421,   422,   423,   424,   230,
1404
     231,   232,   425,   426,     0,    11,   813,   814,   815,   816,
1405
     817,   818,   819,   820,   821,   822,     0,     0,     0,     0,
1406
     427,     0,     0,     0,   402,   403,   404,   405,   406,   407,
1407
     408,   409,   410,   411,   412,   413,   414,   415,     0,     0,
1408
       0,     0,    12,    13,     0,     0,     0,    14,   235,    15,
1409
      16,    17,    18,    19,    20,    21,    22,    23,     0,   428,
1410
       0,   237,   238,    25,    26,   429,    28,    29,    30,    31,
1411
       0,     0,    33,     0,     0,   430,   431,   432,   244,   245,
1412
     246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
1413
     256,   257,   258,   259,   260,   433,   262,   263,   264,   434,
1414
     435,   267,   268,   269,   270,   271,   272,   273,   274,   436,
1415
     276,   277,   278,   279,   280,     0,     0,     0,   437,   282,
1416
     283,   438,   439,     0,   286,   287,   288,   289,   290,   291,
1417
     292,   440,   441,   295,   442,   443,   444,   445,   446,   447,
1418
     448,   449,   450,    80,    81,    82,     0,     4,     0,     5,
1419
       6,     7,     8,     0,     0,    84,     9,    10,     0,    11,
1420
       0,   451,   416,   417,     0,  -562,  -562,    86,  -358,     0,
1421
    -360,    88,    89,    90,    91,     0,     0,  -562,   813,   814,
1422
     815,   816,   817,   818,   819,   820,   821,   822,     0,  -562,
1423
       0,     0,     0,     0,     0,     0,    12,    13,     0,     0,
1424
       0,    14,     0,    15,    16,    17,    18,    19,    20,    21,
1425
      22,    23,     0,    24,     0,     0,     0,    25,    26,    27,
1426
      28,    29,    30,    31,    32,     0,    33,     0,     0,    34,
1427
      35,    36,    37,     0,    38,    39,    40,     0,    41,     0,
1428
      42,     0,    43,     0,     0,    44,     0,     0,     0,    45,
1429
      46,    47,    48,    49,    50,    51,    52,    53,     0,     0,
1430
      54,     0,    55,    56,    57,    58,     0,     0,     0,     0,
1431
       0,     0,    59,     0,    60,    61,    62,    63,    64,    65,
1432
      66,    67,     0,     0,    68,    69,    70,     0,    71,    72,
1433
      73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
1434
      83,     4,     0,     5,     6,     7,     8,     0,     0,    84,
1435
       9,    10,     0,    11,     0,     0,     0,     0,     0,     0,
1436
      85,    86,     0,    87,   796,    88,    89,    90,    91,     0,
1437
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1438
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1439
      12,    13,     0,     0,     0,    14,     0,    15,    16,    17,
1440
      18,    19,    20,    21,    22,    23,     0,    24,     0,     0,
1441
       0,    25,    26,    27,    28,    29,    30,    31,    32,     0,
1442
      33,     0,     0,    34,    35,    36,    37,     0,    38,    39,
1443
      40,     0,    41,     0,    42,     0,    43,     0,     0,    44,
1444
       0,     0,     0,    45,    46,    47,    48,    49,    50,    51,
1445
      52,    53,     0,     0,    54,     0,    55,    56,    57,    58,
1446
       0,     0,     0,     0,     0,     0,    59,     0,    60,    61,
1447
      62,    63,    64,    65,    66,    67,     0,     0,    68,    69,
1448
      70,     0,    71,    72,    73,    74,    75,    76,    77,    78,
1449
      79,    80,    81,    82,    83,     4,     0,     5,     6,     7,
1450
       8,     0,     0,    84,     9,    10,     0,    11,     0,     0,
1451
       0,     0,     0,     0,    85,    86,     0,    87,   884,    88,
1452
      89,    90,    91,     0,     0,     0,     0,     0,     0,     0,
1453
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1454
       0,     0,     0,     0,    12,    13,     0,     0,     0,    14,
1455
       0,    15,    16,    17,    18,    19,    20,    21,    22,    23,
1456
       0,    24,     0,     0,     0,    25,    26,    27,    28,    29,
1457
      30,    31,    32,     0,    33,     0,     0,    34,    35,    36,
1458
      37,     0,    38,    39,    40,     0,    41,     0,    42,     0,
1459
      43,     0,     0,    44,     0,     0,     0,    45,    46,    47,
1460
      48,    49,    50,    51,    52,    53,     0,     0,    54,     0,
1461
      55,    56,    57,    58,     0,     0,     0,     0,     0,     0,
1462
      59,     0,    60,    61,    62,    63,    64,    65,    66,    67,
1463
       0,     0,    68,    69,    70,     0,    71,    72,    73,    74,
1464
      75,    76,    77,    78,    79,    80,    81,    82,    83,     4,
1465
       0,     5,     6,     7,     8,     0,     0,    84,     9,    10,
1466
       0,    11,     0,     0,   941,     0,     0,     0,    85,    86,
1467
       0,    87,  -359,    88,    89,    90,    91,   942,     0,     0,
1468
     813,   814,   815,   816,   817,   818,   819,   820,   821,   822,
1469
     943,     0,     0,     0,     0,     0,     0,     0,    12,    13,
1470
       0,     0,     0,    14,     0,    15,    16,    17,    18,    19,
1471
      20,    21,    22,    23,    80,    24,     0,     0,     0,    25,
1472
      26,    27,    28,    29,    30,    31,    32,     0,    33,     0,
1473
       0,    34,    35,    36,    37,     0,    38,    39,    40,     0,
1474
      41,   944,    42,     0,    43,     0,     0,    44,     0,     0,
1475
       0,    45,    46,    47,    48,    49,    50,     0,    52,    53,
1476
       0,     0,     0,     0,    55,    56,    57,    58,     0,     0,
1477
       0,     0,     0,     0,    59,     0,    60,    61,    62,   543,
1478
      64,    65,    66,    67,     0,     0,     0,    69,    70,     0,
1479
      71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
1480
      81,    82,    83,     4,     0,     5,     6,     7,     8,     0,
1481
       0,    84,     9,    10,     0,    11,     0,     0,     0,     0,
1482
       0,     0,    85,    86,     0,    87,   544,    88,    89,    90,
1483
      91,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1484
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1485
       0,     0,    12,    13,     0,     0,     0,    14,     0,    15,
1486
      16,    17,    18,    19,    20,    21,    22,    23,     0,    24,
1487
       0,     0,     0,    25,    26,    27,    28,    29,    30,    31,
1488
      32,     0,    33,     0,     0,    34,    35,    36,    37,     0,
1489
      38,    39,    40,     0,    41,     0,    42,     0,    43,     0,
1490
       0,    44,     0,     0,     0,    45,    46,    47,    48,    49,
1491
      50,     0,    52,    53,     0,     0,     0,     0,    55,    56,
1492
      57,    58,     0,     0,     0,     0,     0,     0,    59,     0,
1493
      60,    61,    62,   543,    64,    65,    66,    67,     0,     0,
1494
       0,    69,    70,     0,    71,    72,    73,    74,    75,    76,
1495
      77,    78,    79,    80,    81,    82,    83,     4,     0,     5,
1496
       6,     7,     8,     0,     0,    84,     9,    10,     0,    11,
1497
       0,     0,     0,     0,     0,     0,    85,    86,     0,    87,
1498
     661,    88,    89,    90,    91,     0,     0,     0,     0,     0,
1499
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1500
       0,     0,     0,     0,     0,     0,    12,    13,     0,     0,
1501
       0,    14,     0,    15,    16,    17,    18,    19,    20,    21,
1502
      22,    23,     0,    24,     0,     0,     0,    25,    26,    27,
1503
      28,    29,    30,    31,    32,     0,    33,     0,     0,    34,
1504
      35,    36,    37,   811,    38,    39,    40,     0,    41,     0,
1505
      42,     0,    43,     0,     0,    44,     0,     0,     0,    45,
1506
      46,    47,    48,    49,    50,     0,    52,    53,     0,     0,
1507
       0,     0,    55,    56,    57,    58,     0,     0,     0,     0,
1508
       0,     0,    59,     0,    60,    61,    62,   543,    64,    65,
1509
      66,    67,     0,     0,     0,    69,    70,     0,    71,    72,
1510
      73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
1511
      83,     4,     0,     5,     6,     7,     8,     0,     0,    84,
1512
       9,    10,     0,    11,     0,     0,   941,     0,     0,     0,
1513
      85,    86,     0,    87,  -359,    88,    89,    90,    91,   942,
1514
       0,     0,   813,   814,   815,   816,   817,   818,   819,   820,
1515
     821,   822,   943,     0,     0,     0,     0,     0,     0,     0,
1516
      12,    13,     0,     0,     0,    14,     0,    15,    16,    17,
1517
      18,    19,    20,    21,    22,    23,    80,    24,     0,     0,
1518
       0,    25,    26,    27,    28,    29,    30,    31,    32,     0,
1519
      33,     0,     0,    34,    35,    36,    37,     0,    38,    39,
1520
      40,   910,    41,  1010,    42,     0,    43,     0,     0,    44,
1521
       0,     0,     0,    45,    46,    47,    48,    49,    50,     0,
1522
      52,    53,     0,     0,     0,     0,    55,    56,    57,    58,
1523
       0,     0,     0,     0,     0,     0,    59,     0,    60,    61,
1524
      62,   543,    64,    65,    66,    67,     0,     0,     0,    69,
1525
      70,     0,    71,    72,    73,    74,    75,    76,    77,    78,
1526
      79,    80,    81,    82,    83,     4,     0,     5,     6,     7,
1527
       8,     0,     0,    84,     9,    10,     0,    11,     0,     0,
1528
     941,     0,     0,     0,    85,    86,     0,    87,  -359,    88,
1529
      89,    90,    91,   942,     0,     0,   813,   814,   815,   816,
1530
     817,   818,   819,   820,   821,   822,   943,     0,     0,     0,
1531
       0,     0,     0,     0,    12,    13,     0,     0,     0,    14,
1532
       0,    15,    16,    17,    18,    19,    20,    21,    22,    23,
1533
      80,    24,     0,     0,     0,    25,    26,    27,    28,    29,
1534
      30,    31,    32,     0,    33,     0,     0,    34,    35,    36,
1535
      37,     0,    38,    39,    40,     0,    41,  1044,    42,     0,
1536
      43,   987,     0,    44,     0,     0,     0,    45,    46,    47,
1537
      48,    49,    50,     0,    52,    53,     0,     0,     0,     0,
1538
      55,    56,    57,    58,     0,     0,     0,     0,     0,     0,
1539
      59,     0,    60,    61,    62,   543,    64,    65,    66,    67,
1540
       0,     0,     0,    69,    70,     0,    71,    72,    73,    74,
1541
      75,    76,    77,    78,    79,    80,    81,    82,    83,     4,
1542
       0,     5,     6,     7,     8,     0,     0,    84,     9,    10,
1543
       0,    11,     0,     0,   941,     0,     0,     0,    85,    86,
1544
       0,    87,  -359,    88,    89,    90,    91,   942,     0,     0,
1545
     813,   814,   815,   816,   817,   818,   819,   820,   821,   822,
1546
     943,     0,     0,     0,     0,     0,     0,     0,    12,    13,
1547
       0,     0,     0,    14,     0,    15,    16,    17,    18,    19,
1548
      20,    21,    22,    23,    80,    24,     0,     0,     0,    25,
1549
      26,    27,    28,    29,    30,    31,    32,     0,    33,     0,
1550
       0,    34,    35,    36,    37,     0,    38,    39,    40,     0,
1551
      41,  1062,    42,  1031,    43,     0,     0,    44,     0,     0,
1552
       0,    45,    46,    47,    48,    49,    50,     0,    52,    53,
1553
       0,     0,     0,     0,    55,    56,    57,    58,     0,     0,
1554
       0,     0,     0,     0,    59,     0,    60,    61,    62,   543,
1555
      64,    65,    66,    67,     0,     0,     0,    69,    70,     0,
1556
      71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
1557
      81,    82,    83,     4,     0,     5,     6,     7,     8,     0,
1558
       0,    84,     9,    10,     0,    11,     0,     0,   941,     0,
1559
       0,     0,    85,    86,     0,    87,  -359,    88,    89,    90,
1560
      91,   942,     0,     0,   813,   814,   815,   816,   817,   818,
1561
     819,   820,   821,   822,   943,     0,     0,     0,     0,     0,
1562
       0,     0,    12,    13,     0,     0,     0,    14,     0,    15,
1563
      16,    17,    18,    19,    20,    21,    22,    23,    80,    24,
1564
       0,     0,     0,    25,    26,    27,    28,    29,    30,    31,
1565
      32,     0,    33,     0,     0,    34,    35,    36,    37,     0,
1566
      38,    39,    40,     0,    41,  1102,    42,     0,    43,     0,
1567
       0,    44,     0,     0,     0,    45,    46,    47,    48,    49,
1568
      50,     0,    52,    53,     0,     0,     0,     0,    55,    56,
1569
      57,    58,     0,     0,     0,     0,     0,     0,    59,     0,
1570
      60,    61,    62,   543,    64,    65,    66,    67,     0,     0,
1571
       0,    69,    70,     0,    71,    72,    73,    74,    75,    76,
1572
      77,    78,    79,    80,    81,    82,    83,     4,     0,     5,
1573
       6,     7,     8,     0,     0,    84,     9,    10,     0,    11,
1574
       0,     0,     0,     0,     0,     0,    85,    86,     0,    87,
1575
    1043,    88,    89,    90,    91,     0,     0,     0,     0,     0,
1576
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1577
       0,     0,     0,     0,     0,     0,    12,    13,     0,     0,
1578
       0,    14,     0,    15,    16,    17,    18,    19,    20,    21,
1579
      22,    23,     0,    24,     0,     0,     0,    25,    26,    27,
1580
      28,    29,    30,    31,    32,     0,    33,     0,     0,    34,
1581
      35,    36,    37,     0,    38,    39,    40,     0,    41,  1112,
1582
      42,     0,    43,     0,     0,    44,     0,     0,     0,    45,
1583
      46,    47,    48,    49,    50,     0,    52,    53,     0,     0,
1584
       0,     0,    55,    56,    57,    58,     0,     0,     0,     0,
1585
       0,     0,    59,     0,    60,    61,    62,   543,    64,    65,
1586
      66,    67,     0,     0,     0,    69,    70,     0,    71,    72,
1587
      73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
1588
      83,     4,     0,     5,     6,     7,     8,     0,     0,    84,
1589
       9,    10,     0,    11,     0,     0,   941,     0,     0,     0,
1590
      85,    86,     0,    87,  -359,    88,    89,    90,    91,   942,
1591
       0,     0,   813,   814,   815,   816,   817,   818,   819,   820,
1592
     821,   822,   943,     0,     0,     0,     0,     0,     0,     0,
1593
      12,    13,     0,     0,     0,    14,     0,    15,    16,    17,
1594
      18,    19,    20,    21,    22,    23,    80,    24,     0,     0,
1595
       0,    25,    26,    27,    28,    29,    30,    31,    32,     0,
1596
      33,     0,     0,    34,    35,    36,    37,     0,    38,    39,
1597
      40,     0,    41,  1111,    42,     0,    43,     0,     0,    44,
1598
       0,     0,     0,    45,    46,    47,    48,    49,    50,     0,
1599
      52,    53,     0,     0,     0,     0,    55,    56,    57,    58,
1600
       0,     0,     0,     0,     0,     0,    59,     0,    60,    61,
1601
      62,   543,    64,    65,    66,    67,     0,     0,     0,    69,
1602
      70,     0,    71,    72,    73,    74,    75,    76,    77,    78,
1603
      79,    80,    81,    82,    83,     4,     0,     5,     6,     7,
1604
       8,     0,     0,    84,     9,    10,     0,    11,     0,     0,
1605
       0,     0,     0,     0,    85,    86,     0,    87,  1157,    88,
1606
      89,    90,    91,     0,     0,     0,     0,     0,     0,     0,
1607
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1608
       0,     0,     0,     0,    12,    13,     0,     0,     0,    14,
1609
       0,    15,    16,    17,    18,    19,    20,    21,    22,    23,
1610
       0,    24,     0,     0,     0,    25,    26,    27,    28,    29,
1611
      30,    31,    32,     0,    33,     0,     0,    34,    35,    36,
1612
      37,     0,    38,    39,    40,     0,    41,     0,    42,     0,
1613
      43,     0,     0,    44,     0,     0,     0,    45,    46,    47,
1614
      48,    49,    50,     0,    52,    53,     0,     0,     0,     0,
1615
      55,    56,    57,    58,     0,     0,     0,     0,     0,     0,
1616
      59,     0,    60,    61,    62,   543,    64,    65,    66,    67,
1617
       0,     0,     0,    69,    70,     0,    71,    72,    73,    74,
1618
      75,    76,    77,    78,    79,    80,    81,    82,    83,     4,
1619
       0,     5,     6,     7,     8,     0,     0,    84,     9,    10,
1620
       0,    11,     0,     0,     0,     0,     0,     0,    85,    86,
1621
       0,    87,  1158,    88,    89,    90,    91,     0,     0,     0,
1622
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1623
       0,     0,     0,     0,     0,     0,     0,     0,    12,    13,
1624
       0,     0,     0,    14,     0,    15,    16,    17,    18,    19,
1625
      20,    21,    22,    23,     0,    24,     0,     0,     0,    25,
1626
      26,    27,    28,    29,    30,    31,    32,     0,    33,     0,
1627
       0,    34,    35,    36,    37,     0,    38,    39,    40,     0,
1628
      41,     0,    42,     0,    43,     0,     0,    44,     0,     0,
1629
       0,    45,    46,    47,    48,    49,    50,     0,    52,    53,
1630
       0,     0,     0,     0,    55,    56,    57,    58,     0,     0,
1631
       0,     0,     0,     0,    59,     0,    60,    61,    62,   543,
1632
      64,    65,    66,    67,     0,     0,     0,    69,    70,     0,
1633
      71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
1634
      81,    82,    83,     4,     0,     5,     6,     7,     8,     0,
1635
       0,    84,     9,    10,     0,    11,     0,     0,     0,     0,
1636
       0,     0,    85,    86,     0,    87,  1159,    88,    89,    90,
1637
      91,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1638
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1639
       0,     0,    12,    13,     0,     0,     0,    14,     0,    15,
1640
      16,    17,    18,    19,    20,    21,    22,    23,     0,    24,
1641
       0,     0,     0,    25,    26,    27,    28,    29,    30,    31,
1642
      32,     0,    33,     0,     0,    34,    35,    36,    37,     0,
1643
      38,    39,    40,     0,    41,     0,    42,     0,    43,     0,
1644
       0,    44,     0,     0,     0,    45,    46,    47,    48,    49,
1645
      50,     0,    52,    53,     0,     0,     0,     0,    55,    56,
1646
      57,    58,     0,     0,     0,     0,     0,     0,    59,     0,
1647
      60,    61,    62,   543,    64,    65,    66,    67,     0,     0,
1648
       0,    69,    70,     0,    71,    72,    73,    74,    75,    76,
1649
      77,    78,    79,    80,    81,    82,    83,     4,     0,     5,
1650
       6,     7,     8,     0,     0,    84,     9,    10,     0,    11,
1651
       0,     0,     0,     0,     0,     0,    85,    86,     0,    87,
1652
    1193,    88,    89,    90,    91,     0,     0,     0,     0,     0,
1653
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1654
       0,     0,     0,     0,     0,     0,    12,    13,     0,     0,
1655
       0,    14,     0,    15,    16,    17,    18,    19,    20,    21,
1656
      22,    23,     0,    24,     0,     0,     0,    25,    26,    27,
1657
      28,    29,    30,    31,    32,     0,    33,     0,     0,    34,
1658
      35,    36,    37,     0,    38,    39,    40,     0,    41,     0,
1659
      42,     0,    43,     0,     0,    44,     0,     0,     0,    45,
1660
      46,    47,    48,    49,    50,     0,    52,    53,     0,     0,
1661
       0,     0,    55,    56,    57,    58,     0,     0,     0,     0,
1662
       0,     0,    59,     0,    60,    61,    62,   543,    64,    65,
1663
      66,    67,     0,     0,     0,    69,    70,     0,    71,    72,
1664
      73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
1665
      83,     4,     0,     5,     6,     7,     8,     0,     0,    84,
1666
       9,    10,     0,    11,     0,     0,     0,     0,     0,     0,
1667
      85,    86,     0,    87,  1203,    88,    89,    90,    91,     0,
1668
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1669
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1670
      12,    13,     0,     0,     0,    14,     0,    15,    16,    17,
1671
      18,    19,    20,    21,    22,    23,     0,    24,     0,     0,
1672
       0,    25,    26,    27,    28,    29,    30,    31,    32,     0,
1673
      33,     0,     0,    34,    35,    36,    37,     0,    38,    39,
1674
      40,     0,    41,     0,    42,     0,    43,     0,     0,    44,
1675
       0,     0,     0,    45,    46,    47,    48,    49,    50,     0,
1676
      52,    53,     0,     0,     0,     0,    55,    56,    57,    58,
1677
       0,     0,     0,     0,     0,     0,    59,     0,    60,    61,
1678
      62,   543,    64,    65,    66,    67,     0,     0,     0,    69,
1679
      70,     0,    71,    72,    73,    74,    75,    76,    77,    78,
1680
      79,    80,    81,    82,    83,     0,     0,     0,     0,     0,
1681
       0,     0,   225,    84,   226,   227,   228,   229,   230,   231,
1682
     232,   233,   234,     0,    85,    86,     0,    87,     0,    88,
1683
      89,    90,    91,    49,    50,     0,     0,     0,     0,     0,
1684
       0,     0,     0,   350,    57,    58,     0,     0,     0,     0,
1685
       0,     0,   163,     0,     0,     0,     0,     0,    64,    65,
1686
      66,    67,     0,     0,     0,     0,     0,   235,     0,     0,
1687
       0,     0,     0,     0,     0,     0,     0,    80,   236,     0,
1688
     237,   238,     0,     0,   239,     0,     0,     0,    31,     0,
1689
       0,     0,     0,     0,   241,   242,   243,   244,   245,   246,
1690
     247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
1691
     257,   258,   259,   260,   261,   262,   263,   264,   265,   266,
1692
     267,   268,   269,   270,   271,   272,   273,   274,   275,   276,
1693
     277,   278,   279,   280,     0,     0,     0,   281,   282,   283,
1694
     284,   285,     0,   286,   287,   288,   289,   290,   291,   292,
1695
     293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
1696
     303,   304,   225,     0,   226,   227,   228,   229,   230,   231,
1697
     232,   233,   234,     0,     0,     0,     0,     0,     0,     0,
1698
       0,     0,     0,     0,     0,     0,     0,     0,   602,     0,
1699
       0,     0,     0,    91,   369,   370,   371,   372,   373,   374,
1700
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
1701
     385,   386,   387,   388,   389,     0,   390,   235,     0,     0,
1702
       0,     0,     0,     0,     0,     0,   391,     0,   236,     0,
1703
     237,   238,     0,     0,   239,     0,     0,     0,    31,     0,
1704
       0,     0,     0,     0,   241,   242,   243,   244,   245,   246,
1705
     247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
1706
     257,   258,   259,   260,   261,   262,   263,   264,   265,   266,
1707
     267,   268,   269,   270,   271,   272,   273,   274,   275,   276,
1708
     277,   278,   279,   280,     0,     0,     0,   281,   282,   283,
1709
     284,   285,     0,   286,   287,   288,   289,   290,   291,   292,
1710
     293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
1711
     303,   304,     4,     0,     5,     6,     7,     8,     0,     0,
1712
       0,     9,    10,     0,    11,     0,     0,     0,     0,     0,
1713
       0,     0,     0,     0,     0,     0,     0,     0,   606,     0,
1714
     742,     0,     0,    91,     0,     0,     0,     0,     0,     0,
1715
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1716
       0,    12,    13,     0,     0,     0,    14,     0,    15,    16,
1717
      17,    18,    19,    20,    21,    22,    23,     0,    24,     0,
1718
       0,     0,    25,    26,    27,    28,    29,    30,    31,    32,
1719
       0,    33,     0,     0,    34,    35,    36,    37,     0,    38,
1720
      39,    40,     0,    41,     0,    42,     0,    43,     0,     0,
1721
      44,     0,     0,     0,    45,    46,    47,    48,    49,    50,
1722
       0,    52,    53,     0,     0,     0,     0,    55,    56,     0,
1723
       0,     0,     0,     0,     0,     0,     0,   134,     0,    60,
1724
      61,    62,     0,     0,     0,     0,     0,     0,     0,     0,
1725
      69,    70,     0,    71,    72,    73,    74,    75,    76,    77,
1726
      78,    79,    80,    81,    82,    83,     4,     0,     5,     6,
1727
       7,     8,     0,     0,    84,     9,    10,     0,    11,     0,
1728
       0,     0,     0,     0,     0,    85,    86,     0,    87,     0,
1729
      88,    89,    90,    91,   745,     0,     0,     0,     0,     0,
1730
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1731
       0,     0,     0,     0,     0,    12,    13,     0,     0,     0,
1732
      14,     0,    15,    16,    17,    18,    19,    20,    21,    22,
1733
      23,     0,    24,     0,     0,     0,    25,    26,    27,    28,
1734
      29,    30,    31,    32,     0,    33,     0,     0,    34,    35,
1735
      36,    37,     0,    38,    39,    40,     0,    41,     0,    42,
1736
       0,    43,     0,     0,    44,     0,     0,     0,    45,    46,
1737
      47,    48,    49,    50,     0,    52,    53,     0,     0,     0,
1738
       0,    55,    56,     0,     0,     0,     0,     0,     0,     0,
1739
       0,   134,     0,    60,    61,    62,     0,     0,     0,     0,
1740
       0,     0,     0,     0,    69,    70,     0,    71,    72,    73,
1741
      74,    75,    76,    77,    78,    79,    80,    81,    82,    83,
1742
       4,     0,     5,     6,     7,     8,     0,     0,    84,     9,
1743
      10,     0,    11,     0,     0,     0,     0,     0,     0,    85,
1744
      86,     0,    87,     0,    88,    89,    90,    91,   848,     0,
1745
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1746
       0,     0,     0,     0,     0,     0,     0,     0,     0,    12,
1747
      13,     0,     0,     0,    14,     0,    15,    16,    17,    18,
1748
      19,    20,    21,    22,    23,     0,    24,     0,     0,     0,
1749
      25,    26,    27,    28,    29,    30,    31,    32,     0,    33,
1750
       0,     0,    34,    35,    36,    37,     0,    38,    39,    40,
1751
       0,    41,     0,    42,     0,    43,     0,     0,    44,     0,
1752
       0,     0,    45,    46,    47,    48,    49,    50,     0,    52,
1753
      53,     0,     0,     0,     0,    55,    56,     0,     0,     0,
1754
       0,     0,     0,     0,     0,   134,     0,    60,    61,    62,
1755
       0,     0,     0,     0,     0,     0,     0,     0,    69,    70,
1756
       0,    71,    72,    73,    74,    75,    76,    77,    78,    79,
1757
      80,    81,    82,    83,     4,     0,     5,     6,     7,     8,
1758
       0,     0,    84,     9,    10,     0,    11,     0,     0,     0,
1759
       0,     0,     0,    85,    86,     0,    87,     0,    88,    89,
1760
      90,    91,   916,     0,     0,     0,     0,     0,     0,     0,
1761
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1762
       0,     0,     0,    12,    13,     0,     0,     0,    14,     0,
1763
      15,    16,    17,    18,    19,    20,    21,    22,    23,     0,
1764
      24,     0,     0,     0,    25,    26,    27,    28,    29,    30,
1765
      31,    32,     0,    33,     0,     0,    34,    35,    36,    37,
1766
       0,    38,    39,    40,     0,    41,     0,    42,     0,    43,
1767
       0,     0,    44,     0,     0,     0,    45,    46,    47,    48,
1768
      49,    50,     0,    52,    53,     0,     0,     0,     0,    55,
1769
      56,     0,     0,     0,     0,     0,     0,     0,     0,   134,
1770
       0,    60,    61,    62,     0,     0,     0,     0,     0,     0,
1771
       0,     0,    69,    70,     0,    71,    72,    73,    74,    75,
1772
      76,    77,    78,    79,    80,    81,    82,    83,     4,     0,
1773
       5,     6,     7,     8,     0,     0,    84,     9,    10,     0,
1774
      11,     0,     0,     0,     0,     0,     0,    85,    86,     0,
1775
      87,     0,    88,    89,    90,    91,  1027,     0,     0,     0,
1776
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1777
       0,     0,     0,     0,     0,     0,     0,    12,    13,     0,
1778
       0,     0,    14,     0,    15,    16,    17,    18,    19,    20,
1779
      21,    22,    23,     0,    24,     0,     0,     0,    25,    26,
1780
      27,    28,    29,    30,    31,    32,     0,    33,     0,     0,
1781
      34,    35,    36,    37,     0,    38,    39,    40,     0,    41,
1782
       0,    42,     0,    43,     0,     0,    44,     0,     0,     0,
1783
      45,    46,    47,    48,    49,    50,     0,    52,    53,     0,
1784
       0,     0,     0,    55,    56,     0,     0,     0,     0,     0,
1785
       0,     0,     0,   134,     0,    60,    61,    62,     0,     0,
1786
       0,     0,     0,     0,     0,     0,    69,    70,     0,    71,
1787
      72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
1788
      82,    83,     4,     0,     5,     6,     7,     8,     0,     0,
1789
      84,     9,    10,     0,    11,     0,     0,     0,     0,     0,
1790
       0,    85,    86,     0,    87,     0,    88,    89,    90,    91,
1791
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1792
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1793
       0,    12,    13,     0,     0,     0,    14,     0,    15,    16,
1794
      17,    18,    19,    20,    21,    22,    23,     0,    24,     0,
1795
       0,     0,    25,    26,    27,    28,    29,    30,    31,    32,
1796
       0,    33,     0,     0,    34,    35,    36,    37,     0,    38,
1797
      39,    40,     0,    41,     0,    42,     0,    43,     0,     0,
1798
      44,     0,     0,     0,    45,    46,    47,    48,    49,    50,
1799
       0,    52,    53,     0,     0,     0,     0,    55,    56,     0,
1800
       0,     0,     0,     0,     0,     0,     0,   134,     0,    60,
1801
      61,    62,     0,     0,     0,     0,     0,     0,     0,     0,
1802
      69,    70,     0,    71,    72,    73,    74,    75,    76,    77,
1803
      78,    79,    80,    81,    82,    83,     4,     0,     5,     6,
1804
       7,     8,     0,     0,    84,     9,    10,     0,    11,     0,
1805
       0,     0,     0,     0,     0,    85,    86,     0,    87,     0,
1806
      88,    89,    90,    91,     0,     0,     0,     0,     0,     0,
1807
     332,   333,     0,     0,     0,     0,     0,     0,     0,     0,
1808
       0,     0,     0,     0,     0,    12,    13,     0,     0,     0,
1809
      14,     0,    15,    16,    17,    18,    19,    20,    21,    22,
1810
      23,     0,    24,     0,     0,     0,    25,    26,   132,    28,
1811
      29,    30,    31,     0,     0,    33,     0,     0,    34,    35,
1812
      36,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1813
       0,     0,     0,     0,     0,     0,     0,     0,    45,     0,
1814
       0,     0,    49,    50,     0,     0,     0,     0,     0,     0,
1815
       0,     0,   133,     0,     0,     0,     0,     0,     0,     0,
1816
       0,   134,     0,     0,    61,    62,     0,     0,     0,     0,
1817
       0,     0,     0,     0,   334,    70,     0,    71,    72,    73,
1818
      74,    75,    76,    77,    78,    79,    80,    81,    82,     0,
1819
       4,     0,     5,     6,     7,     8,     0,     0,    84,     9,
1820
      10,     0,    11,     0,   335,     0,     0,     0,     0,     0,
1821
      86,     0,     0,     0,    88,    89,    90,    91,     0,     0,
1822
       0,     0,     0,     0,   332,   333,     0,     0,     0,     0,
1823
       0,     0,     0,     0,     0,     0,     0,     0,     0,    12,
1824
      13,     0,     0,     0,    14,     0,    15,    16,    17,    18,
1825
      19,    20,    21,    22,    23,     0,    24,     0,     0,     0,
1826
      25,    26,   132,    28,    29,    30,    31,     0,     0,    33,
1827
       0,     0,    34,    35,    36,     0,     0,     0,     0,     0,
1828
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1829
       0,     0,    45,     0,     0,     0,    49,    50,     0,     0,
1830
       0,     0,     0,     0,     0,     0,   133,     0,     0,     0,
1831
       0,     0,     0,     0,     0,   134,     0,     0,    61,    62,
1832
       0,     0,     0,     0,     0,     0,     0,     0,    69,    70,
1833
       0,    71,    72,    73,    74,    75,    76,    77,    78,    79,
1834
      80,    81,    82,     0,     4,     0,     5,     6,     7,     8,
1835
       0,     0,    84,     9,    10,     0,    11,     0,     0,     0,
1836
       0,     0,     0,     0,    86,     0,     0,     0,    88,    89,
1837
      90,    91,     0,     0,     0,     0,     0,     0,   332,   333,
1838
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1839
       0,     0,     0,    12,    13,     0,     0,     0,    14,     0,
1840
      15,    16,    17,    18,    19,    20,    21,    22,    23,     0,
1841
      24,     0,     0,     0,    25,    26,   132,    28,    29,    30,
1842
      31,     0,     0,    33,     0,     0,    34,    35,    36,     0,
1843
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1844
       0,     0,     0,     0,     0,     0,    45,     0,     0,     0,
1845
      49,    50,     0,     0,     0,     0,     0,     0,     0,     0,
1846
     133,     0,     0,     0,     0,     0,     0,     0,     0,   134,
1847
       0,     0,    61,    62,     0,     0,     0,     0,     0,     0,
1848
       0,     0,   708,    70,     0,    71,    72,    73,    74,    75,
1849
      76,    77,    78,    79,    80,    81,    82,     0,     4,     0,
1850
       5,     6,     7,     8,     0,     0,    84,     9,    10,     0,
1851
      11,     0,     0,     0,     0,     0,     0,     0,    86,     0,
1852
       0,     0,    88,    89,    90,    91,     0,     0,     0,     0,
1853
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1854
       0,     0,     0,     0,     0,     0,     0,    12,    13,     0,
1855
       0,     0,    14,     0,    15,    16,    17,    18,    19,    20,
1856
      21,    22,    23,     0,    24,     0,     0,     0,    25,    26,
1857
     132,    28,    29,    30,    31,     0,     0,    33,     0,     0,
1858
      34,    35,    36,     0,     0,     0,     0,     0,     0,     0,
1859
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1860
      45,     0,     0,     0,    49,    50,     0,     0,     0,     0,
1861
       0,     0,     0,     0,   133,     0,     0,     0,     0,     0,
1862
       0,     0,     0,   134,     0,     0,    61,    62,     0,     0,
1863
       0,     0,     0,     0,     0,     0,    69,    70,     0,    71,
1864
      72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
1865
      82,   478,     4,     0,     5,     6,     7,     8,     0,     0,
1866
      84,     9,    10,     0,    11,     0,     0,     0,     0,     0,
1867
       0,     0,    86,     0,     0,     0,    88,    89,    90,    91,
1868
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1869
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1870
       0,    12,    13,     0,     0,     0,    14,     0,    15,    16,
1871
      17,    18,    19,    20,    21,    22,    23,     0,    24,     0,
1872
       0,     0,    25,    26,   132,    28,    29,    30,    31,     0,
1873
       0,    33,   536,     0,    34,    35,    36,     0,     0,     0,
1874
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1875
       0,     0,     0,     0,    45,     0,     0,     0,    49,    50,
1876
       0,     0,     0,     0,     0,     0,     0,     0,   133,     0,
1877
       0,     0,     0,     0,     0,     0,     0,   134,     0,     0,
1878
      61,    62,     0,     0,     0,     0,     0,     0,     0,     0,
1879
      69,    70,     0,    71,    72,    73,    74,    75,    76,    77,
1880
      78,    79,    80,    81,    82,     0,     4,     0,     5,     6,
1881
       7,     8,     0,     0,    84,     9,    10,     0,    11,     0,
1882
       0,     0,     0,     0,     0,     0,    86,     0,     0,     0,
1883
      88,    89,    90,    91,   568,     0,     0,     0,     0,     0,
1884
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1885
       0,     0,     0,     0,     0,    12,    13,     0,     0,     0,
1886
      14,     0,    15,    16,    17,    18,    19,    20,    21,    22,
1887
      23,     0,    24,     0,     0,     0,    25,    26,   132,    28,
1888
      29,    30,    31,     0,     0,    33,     0,     0,    34,    35,
1889
      36,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1890
       0,     0,     0,     0,     0,     0,     0,     0,    45,     0,
1891
       0,     0,    49,    50,     0,     0,     0,     0,     0,     0,
1892
       0,     0,   133,     0,     0,     0,     0,     0,     0,     0,
1893
       0,   134,     0,     0,    61,    62,     0,     0,     0,     0,
1894
       0,     0,     0,     0,    69,    70,     0,    71,    72,    73,
1895
      74,    75,    76,    77,    78,    79,    80,    81,    82,     0,
1896
       4,     0,     5,     6,     7,     8,     0,     0,    84,     9,
1897
      10,     0,    11,     0,     0,     0,     0,     0,     0,     0,
1898
      86,     0,     0,     0,    88,    89,    90,    91,   -47,     0,
1899
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1900
       0,     0,     0,     0,     0,     0,     0,     0,     0,    12,
1901
      13,     0,     0,     0,    14,     0,    15,    16,    17,    18,
1902
      19,    20,    21,    22,    23,     0,    24,     0,     0,     0,
1903
      25,    26,   132,    28,    29,    30,    31,     0,     0,    33,
1904
       0,     0,    34,    35,    36,     0,     0,     0,     0,     0,
1905
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1906
       0,     0,    45,     0,     0,     0,    49,    50,     0,     0,
1907
       0,     0,     0,     0,     0,     0,   133,     0,     0,     0,
1908
       0,     0,     0,     0,     0,   134,     0,     0,    61,    62,
1909
       0,     0,     0,     0,     0,     0,     0,     0,    69,    70,
1910
       0,    71,    72,    73,    74,    75,    76,    77,    78,    79,
1911
      80,    81,    82,     0,     0,     4,     0,     5,     6,     7,
1912
       8,     0,    84,     0,     9,    10,     0,    11,     0,     0,
1913
       0,     0,     0,     0,    86,     0,     0,     0,    88,    89,
1914
      90,    91,   732,     0,     0,     0,     0,     0,     0,     0,
1915
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1916
       0,     0,     0,     0,    12,    13,     0,     0,     0,    14,
1917
       0,    15,    16,    17,    18,    19,    20,    21,    22,    23,
1918
       0,    24,     0,     0,     0,    25,    26,   132,    28,    29,
1919
      30,    31,     0,     0,    33,     0,     0,    34,    35,    36,
1920
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1921
       0,     0,     0,     0,     0,     0,     0,    45,     0,     0,
1922
       0,    49,    50,     0,     0,     0,     0,     0,     0,     0,
1923
       0,   133,     0,     0,     0,     0,     0,     0,     0,     0,
1924
     134,     0,     0,    61,    62,     0,     0,     0,     0,     0,
1925
       0,     0,     0,    69,    70,     0,    71,    72,    73,    74,
1926
      75,    76,    77,    78,    79,    80,    81,    82,     0,     4,
1927
       0,     5,     6,     7,     8,     0,     0,    84,     9,    10,
1928
       0,    11,     0,     0,     0,     0,     0,     0,     0,    86,
1929
       0,     0,     0,    88,    89,    90,    91,     0,     0,     0,
1930
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1931
       0,     0,     0,     0,     0,     0,     0,     0,    12,    13,
1932
       0,     0,     0,    14,     0,    15,    16,    17,    18,    19,
1933
      20,    21,    22,    23,     0,    24,     0,     0,     0,    25,
1934
      26,   132,    28,    29,    30,    31,     0,     0,    33,     0,
1935
       0,    34,    35,    36,     0,     0,     0,     0,     0,     0,
1936
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1937
       0,    45,     0,     0,     0,    49,    50,     0,     0,     0,
1938
       0,     0,     0,     0,     0,   133,     0,     0,     0,     0,
1939
       0,     0,     0,     0,   134,     0,     0,    61,    62,     0,
1940
       0,     0,     0,     0,     0,     0,     0,    69,    70,     0,
1941
      71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
1942
      81,    82,   751,     4,     0,     5,     6,     7,     8,     0,
1943
       0,    84,     9,    10,     0,    11,     0,     0,     0,     0,
1944
       0,     0,     0,    86,     0,     0,     0,    88,    89,    90,
1945
      91,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1946
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1947
       0,     0,    12,    13,     0,     0,     0,    14,     0,    15,
1948
      16,    17,    18,    19,    20,    21,    22,    23,     0,    24,
1949
       0,     0,     0,    25,    26,   132,    28,    29,    30,    31,
1950
       0,     0,    33,     0,     0,    34,    35,    36,     0,     0,
1951
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1952
       0,     0,     0,     0,   855,    45,     0,     0,     0,    49,
1953
      50,     0,     0,     0,     0,     0,     0,     0,     0,   133,
1954
       0,     0,     0,     0,     0,     0,     0,     0,   134,     0,
1955
       0,    61,    62,     0,     0,     0,     0,     0,     0,     0,
1956
       0,    69,    70,     0,    71,    72,    73,    74,    75,    76,
1957
      77,    78,    79,    80,    81,    82,     0,     4,     0,     5,
1958
       6,     7,     8,     0,     0,    84,     9,    10,     0,    11,
1959
       0,     0,     0,     0,     0,     0,     0,    86,     0,     0,
1960
       0,    88,    89,    90,    91,     0,     0,     0,     0,     0,
1961
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1962
       0,     0,     0,     0,     0,     0,    12,    13,     0,     0,
1963
       0,    14,     0,    15,    16,    17,    18,    19,    20,    21,
1964
      22,    23,     0,    24,     0,     0,     0,    25,    26,   132,
1965
      28,    29,    30,    31,     0,     0,    33,     0,     0,    34,
1966
      35,    36,     0,     0,     0,     0,     0,     0,     0,     0,
1967
       0,     0,     0,     0,     0,     0,     0,     0,     0,    45,
1968
       0,     0,     0,    49,    50,     0,     0,     0,     0,     0,
1969
       0,     0,     0,   133,     0,     0,     0,     0,     0,     0,
1970
       0,     0,   134,     0,     0,    61,    62,     0,     0,     0,
1971
       0,     0,     0,     0,     0,    69,    70,     0,    71,    72,
1972
      73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
1973
       0,     4,     0,     5,     6,     7,     8,     0,     0,    84,
1974
       9,    10,     0,    11,     0,     0,     0,     0,     0,     0,
1975
       0,    86,     0,     0,     0,    88,    89,    90,    91,     0,
1976
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1977
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1978
      12,    13,     0,     0,     0,    14,     0,    15,    16,    17,
1979
      18,    19,    20,    21,    22,    23,     0,    24,     0,     0,
1980
       0,    25,    26,   132,    28,    29,    30,    31,     0,     0,
1981
      33,     0,     0,    34,    35,    36,     0,     0,     0,     0,
1982
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1983
       0,     0,     0,    45,     0,     0,     0,    49,    50,     0,
1984
       0,     0,     0,     0,     0,     0,     0,   133,     0,     0,
1985
       0,     0,     0,     0,     0,     0,   134,     0,     0,    61,
1986
      62,     0,     0,     0,     0,     0,     0,     0,     0,    69,
1987
      70,     0,    71,    72,    73,    74,    75,    76,    77,    78,
1988
      79,    80,    81,    82,     0,     0,     0,     0,     0,     0,
1989
       0,     0,   225,    84,   226,   227,   228,   229,   230,   231,
1990
     232,   233,   234,     0,     0,   157,     0,     0,     0,    88,
1991
      89,    90,    91,   364,     0,   365,   366,   367,   368,   369,
1992
     370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
1993
     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
1994
       0,   390,     0,     0,     0,     0,     0,   235,     0,     0,
1995
       0,   391,     0,     0,     0,     0,     0,     0,   236,     0,
1996
     237,   238,     0,     0,   429,    28,    29,    30,     0,     0,
1997
       0,     0,     0,     0,   241,   242,   243,   244,   245,   246,
1998
     247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
1999
     257,   258,   259,   260,   261,   262,   263,   264,   265,   266,
2000
     267,   268,   269,   270,   271,   272,   273,   274,  1081,   276,
2001
     277,   278,   279,   280,     0,     0,     0,   281,   282,   283,
2002
     284,   285,     0,   286,   287,   288,   289,   290,   291,   292,
2003
     293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
2004
     303,   304,   225,     0,   226,   227,   228,   229,   230,   231,
2005
     232,   233,   234,     0,     0,     0,     0,     0,     0,     0,
2006
       0,     0,     0,     0,     0,     0,     0,     0,     0,  1082,
2007
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2008
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2009
     385,   386,   387,   388,   389,     0,   390,   235,     0,     0,
2010
       0,     0,     0,     0,     0,     0,   391,     0,   236,     0,
2011
     237,   238,     0,     0,   429,    28,    29,    30,     0,     0,
2012
       0,     0,     0,     0,   241,   242,   243,   244,   245,   246,
2013
     247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
2014
     257,   258,   259,   260,   261,   262,   263,   264,   265,   266,
2015
     267,   268,   269,   270,   271,   272,   273,   274,  1081,   276,
2016
     277,   278,   279,   280,     0,     0,     0,   281,   282,   283,
2017
     284,   285,     0,   286,   287,   288,   289,   290,   291,   292,
2018
     293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
2019
     303,   304,     0,   225,     0,   226,   227,   228,   229,   230,
2020
     231,   232,   233,   234,     0,     0,     0,     0,     0,     0,
2021
       0,     0,     0,     0,     0,     0,     0,     0,     0,  1116,
2022
     782,   367,   368,   369,   370,   371,   372,   373,   374,   375,
2023
     376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
2024
     386,   387,   388,   389,     0,   390,     0,     0,   235,     0,
2025
       0,     0,     0,     0,     0,   391,     0,     0,     0,   236,
2026
       0,   237,   238,     0,     0,  1054,    28,    29,    30,     0,
2027
       0,     0,     0,     0,     0,   241,   242,   243,   244,   245,
2028
     246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
2029
     256,   257,   258,   259,   260,   261,   262,   263,   264,   265,
2030
     266,   267,   268,   269,   270,   271,   272,   273,   274,  1055,
2031
     276,   277,   278,   279,   280,     0,     0,     0,   281,   282,
2032
     283,   284,   285,     0,   286,   287,   288,   289,   290,   291,
2033
     292,   293,  1056,  1057,   296,   297,   298,   299,   300,   301,
2034
     302,   303,   304,     0,     0,   361,   362,   363,     0,     0,
2035
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2036
       0,     0,     0,     0,     0,     0,   364,   786,   365,   366,
2037
     367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
2038
     377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
2039
     387,   388,   389,     0,   390,   361,   362,   363,     0,     0,
2040
       0,     0,     0,     0,   391,     0,     0,     0,     0,     0,
2041
       0,     0,     0,     0,     0,     0,   364,     0,   365,   366,
2042
     367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
2043
     377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
2044
     387,   388,   389,     0,   390,   361,   362,   363,     0,     0,
2045
       0,     0,     0,     0,   391,     0,     0,     0,     0,     0,
2046
       0,     0,     0,     0,     0,     0,   364,     0,   365,   366,
2047
     367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
2048
     377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
2049
     387,   388,   389,     0,   390,     0,   361,   362,   363,     0,
2050
       0,     0,     0,     0,   391,     0,     0,     0,     0,     0,
2051
       0,     0,     0,     0,     0,     0,   703,   364,     0,   365,
2052
     366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
2053
     376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
2054
     386,   387,   388,   389,     0,   390,   361,   362,   363,     0,
2055
       0,     0,     0,     0,     0,   391,     0,     0,     0,     0,
2056
       0,     0,     0,     0,     0,     0,   713,   364,     0,   365,
2057
     366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
2058
     376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
2059
     386,   387,   388,   389,     0,   390,   361,   362,   363,     0,
2060
       0,     0,     0,     0,     0,   391,     0,     0,     0,     0,
2061
       0,     0,     0,     0,     0,     0,   833,   364,     0,   365,
2062
     366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
2063
     376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
2064
     386,   387,   388,   389,     0,   390,     0,   361,   362,   363,
2065
       0,     0,     0,     0,     0,   391,     0,     0,     0,     0,
2066
       0,     0,     0,     0,     0,     0,     0,   834,   364,     0,
2067
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2068
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2069
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2070
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2071
       0,     0,     0,     0,     0,     0,     0,   835,   364,     0,
2072
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2073
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2074
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2075
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2076
       0,   637,     0,     0,     0,   542,     0,     0,   364,     0,
2077
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2078
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2079
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2080
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2081
       0,     0,     0,     0,     0,     0,   542,     0,   364,     0,
2082
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2083
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2084
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2085
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2086
       0,     0,     0,     0,     0,     0,   638,     0,   364,     0,
2087
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2088
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2089
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2090
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2091
       0,     0,     0,     0,     0,     0,   639,     0,   364,     0,
2092
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2093
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2094
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2095
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2096
       0,     0,     0,     0,     0,     0,   648,     0,   364,     0,
2097
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2098
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2099
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2100
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2101
       0,     0,     0,     0,     0,     0,   651,     0,   364,     0,
2102
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2103
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2104
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2105
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2106
       0,     0,     0,     0,     0,     0,   657,     0,   364,     0,
2107
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2108
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2109
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2110
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2111
       0,     0,     0,     0,     0,     0,   658,     0,   364,     0,
2112
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2113
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2114
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2115
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2116
       0,     0,     0,     0,     0,     0,   676,     0,   364,     0,
2117
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2118
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2119
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2120
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2121
       0,     0,     0,     0,     0,     0,   692,     0,   364,     0,
2122
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2123
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2124
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2125
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2126
       0,     0,     0,     0,     0,     0,   809,     0,   364,  1034,
2127
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2128
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2129
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2130
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2131
       0,     0,     0,     0,     0,     0,   810,     0,   364,     0,
2132
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2133
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2134
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2135
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2136
       0,     0,     0,     0,     0,     0,   838,     0,   364,     0,
2137
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2138
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2139
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2140
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2141
       0,     0,     0,     0,  1035,     0,     0,     0,   364,     0,
2142
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2143
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2144
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2145
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2146
       0,     0,     0,     0,   392,     0,     0,     0,   364,     0,
2147
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2148
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2149
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2150
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2151
       0,     0,     0,     0,   530,     0,     0,     0,   364,     0,
2152
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2153
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2154
     385,   386,   387,   388,   389,     0,   390,   361,   362,   363,
2155
       0,     0,     0,     0,     0,     0,   391,     0,     0,     0,
2156
       0,     0,   332,   333,  1202,     0,     0,     0,   364,     0,
2157
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2158
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2159
     385,   386,   387,   388,   389,     0,   390,     0,     0,     0,
2160
     132,    28,    29,    30,    31,     0,   391,    33,     0,     0,
2161
       0,   313,     0,   886,     0,     0,     0,     0,     0,     0,
2162
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2163
       0,   225,     0,   226,   227,   228,   229,   230,   231,   232,
2164
     233,   234,     0,     0,   162,     0,     0,     0,     0,     0,
2165
       0,     0,     0,   134,     0,     0,     0,     0,     0,     0,
2166
       0,     0,  -409,     0,     0,     0,   753,    70,     0,    71,
2167
      72,    73,    74,    75,    76,    77,    78,    79,     0,     0,
2168
       0,     0,     0,     0,     0,     0,   235,     0,     0,     0,
2169
       0,     0,     0,     0,     0,     0,     0,   236,     0,   237,
2170
     238,     0,   314,  1142,     0,     0,   754,     0,    90,    91,
2171
       0,     0,  -406,   241,   242,   243,   244,   245,   246,   247,
2172
     248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
2173
     258,   259,   260,   261,   262,   263,   264,   265,   266,   267,
2174
     268,   269,   270,   271,   272,   273,   274,   813,   814,   815,
2175
     816,   817,   818,   819,   820,   821,   822,   282,   283,   284,
2176
     285,     0,   286,   287,   288,   289,   290,   291,   292,   293,
2177
     294,   295,   296,   297,   298,   299,   300,   301,   302,   303,
2178
     304,   225,   363,   226,   227,   228,   229,   230,   231,   232,
2179
     233,   234,     0,     0,     0,     0,     0,     0,     0,     0,
2180
       0,   364,     0,   365,   366,   367,   368,   369,   370,   371,
2181
     372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
2182
     382,   383,   384,   385,   386,   387,   388,   389,     0,   390,
2183
       0,     0,     0,     0,     0,     0,   235,     0,     0,   391,
2184
       0,     0,     0,     0,     0,     0,     0,   236,     0,   237,
2185
     238,     0,     0,   239,     0,     0,   240,     0,     0,     0,
2186
       0,     0,     0,   241,   242,   243,   244,   245,   246,   247,
2187
     248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
2188
     258,   259,   260,   261,   262,   263,   264,   265,   266,   267,
2189
     268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
2190
     278,   279,   280,     0,     0,     0,   281,   282,   283,   284,
2191
     285,     0,   286,   287,   288,   289,   290,   291,   292,   293,
2192
     294,   295,   296,   297,   298,   299,   300,   301,   302,   303,
2193
     304,   225,     0,   226,   227,   228,   229,   230,   231,   232,
2194
     233,   234,   368,   369,   370,   371,   372,   373,   374,   375,
2195
     376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
2196
     386,   387,   388,   389,     0,   390,     0,     0,     0,     0,
2197
       0,     0,     0,     0,     0,   391,     0,     0,     0,     0,
2198
       0,     0,     0,     0,     0,     0,   235,     0,     0,     0,
2199
       0,     0,     0,     0,     0,     0,     0,   236,     0,   237,
2200
     238,     0,     0,   239,     0,     0,     0,     0,     0,     0,
2201
       0,     0,     0,   241,   242,   243,   244,   245,   246,   247,
2202
     248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
2203
     258,   259,   260,   261,   262,   263,   264,   265,   266,   267,
2204
     268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
2205
     278,   279,   280,     0,     0,     0,   281,   282,   283,   284,
2206
     285,     0,   286,   287,   288,   289,   290,   291,   292,   293,
2207
     294,   295,   296,   297,   298,   299,   300,   301,   302,   303,
2208
     304,   225,     0,   226,   227,   228,   229,   230,   231,   232,
2209
     233,   234,   370,   371,   372,   373,   374,   375,   376,   377,
2210
     378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
2211
     388,   389,     0,   390,     0,     0,     0,     0,     0,     0,
2212
       0,     0,     0,   391,     0,     0,     0,     0,     0,     0,
2213
       0,     0,     0,     0,     0,     0,   235,     0,     0,     0,
2214
       0,     0,     0,     0,     0,     0,     0,   236,     0,   237,
2215
     238,     0,     0,  1098,     0,     0,     0,     0,     0,     0,
2216
       0,     0,     0,   241,   242,   243,   244,   245,   246,   247,
2217
     248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
2218
     258,   259,   260,   261,   262,   263,   264,   265,   266,   267,
2219
     268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
2220
     278,   279,   280,     0,     0,     0,   281,   282,   283,   284,
2221
     285,     0,   286,   287,   288,   289,   290,   291,   292,   293,
2222
     294,   295,   296,   297,   298,   299,   300,   301,   302,   303,
2223
     304,   132,    28,    29,    30,    31,     0,     0,    33,     0,
2224
       0,     0,   313,   372,   373,   374,   375,   376,   377,   378,
2225
     379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
2226
     389,     0,   390,     0,     0,     0,     0,     0,     0,     0,
2227
       0,     0,   391,     0,     0,   162,     0,     0,     0,     0,
2228
       0,     0,     0,     0,   134,     0,     0,     0,     0,     0,
2229
       0,     0,     0,     0,     0,     0,     0,     0,    70,     0,
2230
      71,    72,    73,    74,    75,    76,    77,    78,    79,     0,
2231
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2232
     361,   362,   363,     0,     0,     0,     0,     0,     0,     0,
2233
       0,     0,     0,   314,     0,     0,     0,   315,     0,    90,
2234
      91,   364,     0,   365,   366,   367,   368,   369,   370,   371,
2235
     372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
2236
     382,   383,   384,   385,   386,   387,   388,   389,     0,   390,
2237
       0,     0,     0,     0,     0,     0,     0,     0,     0,   391,
2238
       0,     0,     0,     0,     0,     0,     0,     0,     0,   361,
2239
     362,   363,     0,     0,   552,     0,     0,     0,     0,     0,
2240
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2241
     364,   655,   365,   366,   367,   368,   369,   370,   371,   372,
2242
     373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
2243
     383,   384,   385,   386,   387,   388,   389,     0,   390,   361,
2244
     362,   363,     0,     0,     0,     0,     0,     0,   391,     0,
2245
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2246
     364,   719,   365,   366,   367,   368,   369,   370,   371,   372,
2247
     373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
2248
     383,   384,   385,   386,   387,   388,   389,     0,   390,   361,
2249
     362,   363,     0,     0,     0,     0,     0,     0,   391,     0,
2250
       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2251
     364,     0,   365,   366,   367,   368,   369,   370,   371,   372,
2252
     373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
2253
     383,   384,   385,   386,   387,   388,   389,     0,   390,   362,
2254
     363,     0,     0,     0,     0,     0,     0,     0,   391,     0,
2255
       0,     0,     0,     0,     0,     0,     0,     0,     0,   364,
2256
       0,   365,   366,   367,   368,   369,   370,   371,   372,   373,
2257
     374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
2258
     384,   385,   386,   387,   388,   389,   419,   390,     0,     0,
2259
       0,     0,     0,     0,     0,     0,     0,   391,     0,     0,
2260
       0,     0,   364,     0,   365,   366,   367,   368,   369,   370,
2261
     371,   372,   373,   374,   375,   376,   377,   378,   379,   380,
2262
     381,   382,   383,   384,   385,   386,   387,   388,   389,     0,
2263
     390,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2264
     391,  -608,  -608,  -608,  -608,  -608,   377,   378,   379,   380,
2265
     381,   382,   383,   384,   385,   386,   387,   388,   389,     0,
2266
     390,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2267
     391
2268
};
2269
2270
static const yytype_int16 yycheck[] =
2271
{
2272
       2,    35,   116,    94,    81,    82,     2,    56,    68,     2,
2273
      54,    80,    47,   776,   205,   829,    35,    52,   469,   197,
2274
      35,   766,    14,   137,   722,   770,    81,    82,    14,   684,
2275
     978,    14,   980,    35,  1023,  1009,  1025,    14,    14,     2,
2276
     521,    31,    31,    37,   135,    94,    75,    79,   760,   310,
2277
     311,    31,   966,    37,   315,   313,   507,   103,   104,    79,
2278
     511,    31,     0,   714,  1134,   103,   104,    58,    75,    81,
2279
      82,    79,    79,    79,   525,   166,    39,    68,    79,   875,
2280
      81,    35,   101,    31,   133,  1059,   135,   738,   169,   109,
2281
     110,  1161,   174,   827,   176,  1009,   177,   179,    94,   128,
2282
     100,    94,   177,     4,     5,     6,     7,     8,     9,    10,
2283
      11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
2284
      21,    22,    23,    24,   782,    79,  1100,   177,   786,    79,
2285
     100,    81,   390,   831,   180,    81,    82,    38,   952,   851,
2286
     217,   853,   180,  1132,   940,    46,    47,   166,   167,   115,
2287
     116,    52,   184,   808,   177,   873,    81,    82,   166,   167,
2288
     168,   205,   217,   897,   898,   961,   167,   168,  1157,  1158,
2289
     170,   137,   179,   179,   100,   109,   110,   184,   184,   942,
2290
      79,   836,    83,    75,   178,    86,   178,    88,   177,   179,
2291
     177,  1180,   178,   938,   178,   178,   176,  1186,   177,  1188,
2292
     176,   178,   174,   179,   685,   217,   178,    71,    72,  1198,
2293
      75,    76,    77,    78,    79,   949,  1012,   167,   168,    30,
2294
     177,   879,   880,   881,   882,    89,   177,   945,    59,  1177,
2295
    1026,    75,    79,   183,    81,   169,   954,   120,   121,   399,
2296
     974,   975,   976,   977,   170,   128,    75,    76,    77,    78,
2297
     327,    79,   179,    81,   119,    79,   157,    81,   174,   336,
2298
     161,    92,   178,   164,    75,    76,    77,    78,   167,   168,
2299
     153,   217,   327,    79,   175,    81,   169,   178,   312,   313,
2300
     177,   336,   183,   184,   185,  1003,   187,   188,   549,   635,
2301
     119,   637,   217,  1011,   313,   174,   175,   312,   313,   178,
2302
     646,   350,   177,   134,   464,   465,  1120,    75,   119,   500,
2303
      78,   313,   177,   142,   143,   327,   767,   218,   219,   184,
2304
     167,   168,    37,    38,   336,   394,   177,   157,   158,   331,
2305
     176,   142,   143,   179,   177,   331,   396,   397,   166,   167,
2306
     168,   172,   166,   167,   168,  1063,    75,    76,   177,    78,
2307
    1164,   181,    75,   169,  1072,    78,   390,   177,  1121,   109,
2308
     110,   167,   168,   177,    79,   400,   177,    75,    76,   119,
2309
      78,   157,   158,   177,   825,   390,    75,    76,    77,    78,
2310
     109,   327,   111,   169,   177,   563,   109,   436,   111,   169,
2311
     336,   177,   177,    53,   357,   181,    68,   431,    75,    76,
2312
      77,    78,   327,   153,   855,   174,   857,   176,   859,   310,
2313
     311,   336,   431,   314,   315,    75,   431,   868,   134,    79,
2314
     119,   169,   174,   175,    84,   326,   178,   120,   121,   431,
2315
    1148,   174,   467,   176,   335,   128,   402,   174,  1156,   176,
2316
      92,   134,   119,   142,   143,  1163,   347,   516,   176,    75,
2317
      76,    77,    78,  1151,   545,  1173,   500,   102,   103,   104,
2318
     361,   362,   363,   364,   365,   366,   367,   368,   369,   370,
2319
     371,   372,   373,   374,   375,   376,   377,   378,   379,   380,
2320
     381,   382,   383,   384,   385,   386,   387,   388,   389,  1187,
2321
     391,   493,   174,   754,   176,   176,   545,   493,   174,   400,
2322
     176,   402,   403,   404,   405,   406,   407,   408,   409,   410,
2323
     411,   412,   413,   414,   415,   176,   142,   143,   419,   420,
2324
     421,   422,   423,   424,   425,   426,    16,   428,   102,   103,
2325
     104,   600,    71,    72,    75,    76,    77,    78,    37,    38,
2326
     617,   157,   158,   176,   805,   157,   158,   157,   158,   545,
2327
     451,   177,   545,   169,   109,   110,   157,   158,    35,   169,
2328
      37,   177,   617,   176,   742,   181,   467,   745,   169,   181,
2329
     401,   181,    16,   474,   157,   158,   177,   478,   655,   174,
2330
     181,   176,   843,    75,   157,   158,   552,    35,   489,    37,
2331
     659,   178,   157,   158,    30,   672,   169,   174,   181,   176,
2332
     655,   142,   143,   504,   169,   617,   437,   174,   181,   176,
2333
     174,    75,   176,   682,    75,   324,   181,   672,  1069,   328,
2334
     180,   181,   119,   120,   121,   122,   123,   124,   125,   126,
2335
     127,   128,   709,   342,    75,   344,   345,   346,   176,    75,
2336
      76,    77,    78,   655,   678,   114,   115,   681,   549,   120,
2337
     121,   552,   179,   554,   709,   689,   153,   128,   177,   560,
2338
     672,   562,   177,   678,   880,   881,   681,   568,   683,   177,
2339
     848,   617,   975,   976,   689,    89,    90,   175,   755,   174,
2340
     182,   177,    31,   180,   686,   648,   177,   176,   651,   655,
2341
     686,    31,   617,   686,    31,   526,   527,   709,    31,    31,
2342
     755,   602,    31,    31,    31,   606,   142,   143,   777,   655,
2343
     611,    31,    31,   891,    31,   717,    31,    31,   720,   174,
2344
     722,   717,   174,   686,   177,   794,   672,   176,   174,    75,
2345
     655,   176,   823,   634,   635,    79,   637,   179,   916,   174,
2346
     174,   177,   776,   755,   176,   646,   138,   672,   138,   650,
2347
      31,   179,   653,   654,   178,   178,   934,   174,    54,    55,
2348
      56,   776,    58,   709,   175,    75,    75,   782,   180,   846,
2349
     177,   786,    68,   674,   605,    16,    75,   177,   609,   177,
2350
     177,   177,   613,   614,   709,   178,   175,   175,   179,   100,
2351
      16,   846,   178,   795,   179,   758,   178,   178,   139,   795,
2352
     179,   702,   795,   175,    35,    84,   177,   175,   178,   755,
2353
     711,   178,   827,   991,   992,   177,   177,   176,   719,   174,
2354
     889,   177,   176,   176,    55,   100,   174,   174,   179,   831,
2355
     755,   176,   795,    35,   846,   837,    35,   839,   176,   908,
2356
     874,   837,    37,   839,    31,   176,   809,    75,   178,  1027,
2357
     751,   174,   178,   754,   945,   177,  1034,  1035,   176,   874,
2358
      91,   762,   175,   179,   879,   880,   881,   882,   174,   174,
2359
     174,   873,   941,    50,    51,    52,    53,    54,    55,    56,
2360
     846,    58,   897,   898,   847,   180,    52,    53,    54,    55,
2361
      56,    68,    58,   895,  1008,   177,   797,   180,   174,   933,
2362
     846,   179,    68,    37,   805,   179,   178,   180,   942,    31,
2363
      38,    35,    35,   178,   176,   116,    37,   919,   933,   178,
2364
     178,   846,   178,   919,   176,    14,    14,   942,  1106,   180,
2365
     109,   111,  1110,   179,   949,  1113,    14,    37,   171,   840,
2366
     841,   177,   843,    79,  1004,   109,   110,   111,    79,   179,
2367
      16,   966,   954,   176,   950,   119,   120,   121,   176,   974,
2368
     975,   976,   977,   965,   128,   176,   178,    16,    16,   965,
2369
     134,   135,   136,   137,    16,    16,    16,    16,    16,   179,
2370
    1049,    79,   174,   179,   986,   179,   176,  1047,   169,   153,
2371
     986,   176,   176,  1053,  1009,   100,  1065,   117,  1000,   169,
2372
      79,  1003,    16,   179,  1000,   179,  1040,  1185,   177,  1011,
2373
     178,   176,   179,  1047,    75,   178,   177,  1120,   178,  1197,
2374
     983,   922,   985,   689,  1084,  1040,  1095,    94,   929,    54,
2375
     931,   866,  1047,   205,  1036,  1037,   186,   500,   672,   846,
2376
    1036,  1037,  1008,   985,   929,   895,   823,   949,   786,   898,
2377
    1084,  1165,   502,   157,  1123,   945,  1125,  1084,  1024,  1128,
2378
    1129,  1063,  1122,  1093,  1133,   505,  1155,  1163,   490,  1084,
2379
    1072,  1073,  1163,  1075,  1076,  1100,   840,  1073,  1059,  1075,
2380
    1076,   653,   313,   166,  1144,   397,  1108,  1121,   640,   554,
2381
     474,    -1,   674,   994,    -1,    -1,   997,    -1,  1167,    -1,
2382
      -1,    -1,    -1,    -1,    -1,    -1,  1121,    -1,    -1,    -1,
2383
    1179,    75,    76,    77,    78,    79,    75,    76,    77,    78,
2384
      79,    -1,    -1,    -1,   119,   120,   121,   122,   123,   124,
2385
     125,   126,   127,   128,  1136,    -1,    -1,  1139,    -1,  1141,
2386
    1136,    -1,  1108,  1139,    -1,  1141,  1148,    -1,    -1,  1151,
2387
      -1,    -1,    -1,    -1,  1156,   119,   120,   121,   153,   390,
2388
     119,   120,   121,    -1,   128,   396,   397,   398,   399,   128,
2389
     134,  1173,    -1,    -1,    -1,    -1,    -1,    -1,  1079,    -1,
2390
      -1,    -1,    -1,   178,    -1,  1187,    -1,  1189,    -1,   153,
2391
    1091,    -1,    -1,  1189,   153,  1096,  1097,    -1,  1200,  1165,
2392
     431,    -1,  1103,  1104,  1200,    49,    50,    51,    52,    53,
2393
      54,    55,    56,   177,    58,    -1,    -1,    -1,   177,    -1,
2394
     184,    -1,    -1,    -1,    68,   184,    -1,    -1,    -1,    -1,
2395
      -1,   462,    -1,   464,   465,   466,   119,   120,   121,   122,
2396
     123,   124,   125,   126,   127,   128,    -1,     3,  1149,     5,
2397
       6,     7,     8,     9,    10,    11,    12,    13,    -1,    15,
2398
      -1,    -1,    -1,    -1,   103,    -1,    -1,    -1,    -1,    -1,
2399
     153,   502,   111,    -1,    30,    -1,    -1,    -1,    -1,    -1,
2400
     119,   120,   121,   122,   123,   124,   125,   126,   127,   128,
2401
     129,    -1,    -1,    -1,  1195,   178,    52,    53,    -1,    -1,
2402
      -1,    57,    58,    59,    60,    61,    62,    63,    64,    65,
2403
      66,    67,    -1,    69,   153,    71,    72,    73,    74,    75,
2404
      76,    77,    78,    79,    -1,    -1,    82,    -1,    -1,    85,
2405
      86,    87,    88,    89,    90,    91,    92,    93,    94,    95,
2406
      96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
2407
     106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
2408
     116,   117,   118,   119,   120,   121,   122,   123,   124,    -1,
2409
      -1,    -1,   128,   129,   130,   131,   132,    -1,   134,   135,
2410
     136,   137,   138,   139,   140,   141,   142,   143,   144,   145,
2411
     146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
2412
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   165,
2413
      -1,    -1,    -1,    -1,    -1,   171,    -1,    -1,    -1,    -1,
2414
      -1,   177,   178,    -1,    -1,   181,   182,   183,   184,     3,
2415
      -1,     5,     6,     7,     8,     9,    10,    11,    12,    13,
2416
      -1,    15,    -1,    -1,    -1,    -1,   119,   120,   121,   122,
2417
     123,   124,   125,   126,   127,   128,    30,    -1,    -1,    -1,
2418
     119,   120,   121,   122,   123,   124,   125,   126,   127,   128,
2419
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,
2420
     153,    -1,    -1,    57,    58,    59,    60,    61,    62,    63,
2421
      64,    65,    66,    67,   153,    69,    -1,    71,    72,    73,
2422
      74,    75,    76,    77,    78,    79,    -1,   180,    82,    -1,
2423
      -1,    85,    86,    87,    88,    89,    90,    91,    92,    93,
2424
      94,    95,    96,    97,    98,    99,   100,   101,   102,   103,
2425
     104,   105,   106,   107,   108,   109,   110,   111,   112,   113,
2426
     114,   115,   116,   117,   118,   119,   120,   121,   122,   123,
2427
     124,    -1,    -1,    -1,   128,   129,   130,   131,   132,    -1,
2428
     134,   135,   136,   137,   138,   139,   140,   141,   142,   143,
2429
     144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
2430
     154,   155,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2431
      -1,   165,    -1,    -1,    -1,    -1,    -1,   171,    -1,    -1,
2432
      -1,    -1,    -1,   177,   178,    -1,    -1,   181,   182,   183,
2433
     184,     3,    -1,     5,     6,     7,     8,     9,    10,    11,
2434
      12,    13,    -1,    15,    -1,    -1,    -1,    -1,   119,   120,
2435
     121,   122,   123,   124,   125,   126,   127,   128,    30,    44,
2436
      45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
2437
      55,    56,    -1,    58,    -1,    -1,    -1,    -1,    -1,    -1,
2438
      52,    53,   153,    68,    -1,    57,    58,    59,    60,    61,
2439
      62,    63,    64,    65,    66,    67,    -1,    69,    -1,    71,
2440
      72,    73,    74,    75,    76,    77,    78,    79,    -1,   180,
2441
      82,    -1,    -1,    85,    86,    87,    88,    89,    90,    91,
2442
      92,    93,    94,    95,    96,    97,    98,    99,   100,   101,
2443
     102,   103,   104,   105,   106,   107,   108,   109,   110,   111,
2444
     112,   113,   114,   115,   116,   117,   118,   119,   120,   121,
2445
     122,   123,   124,    -1,    -1,    -1,   128,   129,   130,   131,
2446
     132,    -1,   134,   135,   136,   137,   138,   139,   140,   141,
2447
     142,   143,   144,   145,   146,   147,   148,   149,   150,   151,
2448
     152,   153,   154,   155,    -1,    -1,    -1,    -1,    -1,    -1,
2449
      -1,    -1,    -1,   165,    -1,    -1,    -1,    -1,    -1,   171,
2450
      -1,    -1,    -1,    -1,    -1,   177,   178,    -1,    -1,   181,
2451
     182,   183,   184,     3,    -1,     5,     6,     7,     8,     9,
2452
      10,    11,    12,    13,    -1,    15,   119,   120,   121,   122,
2453
     123,   124,   125,   126,   127,   128,    -1,    -1,    -1,    -1,
2454
      30,    -1,    -1,    -1,    16,    17,    18,    19,    20,    21,
2455
      22,    23,    24,    25,    26,    27,    28,    29,    -1,    -1,
2456
      -1,    -1,    52,    53,    -1,    -1,    -1,    57,    58,    59,
2457
      60,    61,    62,    63,    64,    65,    66,    67,    -1,    69,
2458
      -1,    71,    72,    73,    74,    75,    76,    77,    78,    79,
2459
      -1,    -1,    82,    -1,    -1,    85,    86,    87,    88,    89,
2460
      90,    91,    92,    93,    94,    95,    96,    97,    98,    99,
2461
     100,   101,   102,   103,   104,   105,   106,   107,   108,   109,
2462
     110,   111,   112,   113,   114,   115,   116,   117,   118,   119,
2463
     120,   121,   122,   123,   124,    -1,    -1,    -1,   128,   129,
2464
     130,   131,   132,    -1,   134,   135,   136,   137,   138,   139,
2465
     140,   141,   142,   143,   144,   145,   146,   147,   148,   149,
2466
     150,   151,   152,   153,   154,   155,    -1,     3,    -1,     5,
2467
       6,     7,     8,    -1,    -1,   165,    12,    13,    -1,    15,
2468
      -1,   171,   154,   155,    -1,   157,   158,   177,   109,    -1,
2469
     111,   181,   182,   183,   184,    -1,    -1,   169,   119,   120,
2470
     121,   122,   123,   124,   125,   126,   127,   128,    -1,   181,
2471
      -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,
2472
      -1,    57,    -1,    59,    60,    61,    62,    63,    64,    65,
2473
      66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,
2474
      76,    77,    78,    79,    80,    -1,    82,    -1,    -1,    85,
2475
      86,    87,    88,    -1,    90,    91,    92,    -1,    94,    -1,
2476
      96,    -1,    98,    -1,    -1,   101,    -1,    -1,    -1,   105,
2477
     106,   107,   108,   109,   110,   111,   112,   113,    -1,    -1,
2478
     116,    -1,   118,   119,   120,   121,    -1,    -1,    -1,    -1,
2479
      -1,    -1,   128,    -1,   130,   131,   132,   133,   134,   135,
2480
     136,   137,    -1,    -1,   140,   141,   142,    -1,   144,   145,
2481
     146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
2482
     156,     3,    -1,     5,     6,     7,     8,    -1,    -1,   165,
2483
      12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,
2484
     176,   177,    -1,   179,   180,   181,   182,   183,   184,    -1,
2485
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2486
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2487
      52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,
2488
      62,    63,    64,    65,    66,    67,    -1,    69,    -1,    -1,
2489
      -1,    73,    74,    75,    76,    77,    78,    79,    80,    -1,
2490
      82,    -1,    -1,    85,    86,    87,    88,    -1,    90,    91,
2491
      92,    -1,    94,    -1,    96,    -1,    98,    -1,    -1,   101,
2492
      -1,    -1,    -1,   105,   106,   107,   108,   109,   110,   111,
2493
     112,   113,    -1,    -1,   116,    -1,   118,   119,   120,   121,
2494
      -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,   130,   131,
2495
     132,   133,   134,   135,   136,   137,    -1,    -1,   140,   141,
2496
     142,    -1,   144,   145,   146,   147,   148,   149,   150,   151,
2497
     152,   153,   154,   155,   156,     3,    -1,     5,     6,     7,
2498
       8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,
2499
      -1,    -1,    -1,    -1,   176,   177,    -1,   179,   180,   181,
2500
     182,   183,   184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2501
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2502
      -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,
2503
      -1,    59,    60,    61,    62,    63,    64,    65,    66,    67,
2504
      -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,    77,
2505
      78,    79,    80,    -1,    82,    -1,    -1,    85,    86,    87,
2506
      88,    -1,    90,    91,    92,    -1,    94,    -1,    96,    -1,
2507
      98,    -1,    -1,   101,    -1,    -1,    -1,   105,   106,   107,
2508
     108,   109,   110,   111,   112,   113,    -1,    -1,   116,    -1,
2509
     118,   119,   120,   121,    -1,    -1,    -1,    -1,    -1,    -1,
2510
     128,    -1,   130,   131,   132,   133,   134,   135,   136,   137,
2511
      -1,    -1,   140,   141,   142,    -1,   144,   145,   146,   147,
2512
     148,   149,   150,   151,   152,   153,   154,   155,   156,     3,
2513
      -1,     5,     6,     7,     8,    -1,    -1,   165,    12,    13,
2514
      -1,    15,    -1,    -1,   103,    -1,    -1,    -1,   176,   177,
2515
      -1,   179,   111,   181,   182,   183,   184,   116,    -1,    -1,
2516
     119,   120,   121,   122,   123,   124,   125,   126,   127,   128,
2517
     129,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,
2518
      -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,    63,
2519
      64,    65,    66,    67,   153,    69,    -1,    -1,    -1,    73,
2520
      74,    75,    76,    77,    78,    79,    80,    -1,    82,    -1,
2521
      -1,    85,    86,    87,    88,    -1,    90,    91,    92,    -1,
2522
      94,   180,    96,    -1,    98,    -1,    -1,   101,    -1,    -1,
2523
      -1,   105,   106,   107,   108,   109,   110,    -1,   112,   113,
2524
      -1,    -1,    -1,    -1,   118,   119,   120,   121,    -1,    -1,
2525
      -1,    -1,    -1,    -1,   128,    -1,   130,   131,   132,   133,
2526
     134,   135,   136,   137,    -1,    -1,    -1,   141,   142,    -1,
2527
     144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
2528
     154,   155,   156,     3,    -1,     5,     6,     7,     8,    -1,
2529
      -1,   165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,
2530
      -1,    -1,   176,   177,    -1,   179,   180,   181,   182,   183,
2531
     184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2532
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2533
      -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,
2534
      60,    61,    62,    63,    64,    65,    66,    67,    -1,    69,
2535
      -1,    -1,    -1,    73,    74,    75,    76,    77,    78,    79,
2536
      80,    -1,    82,    -1,    -1,    85,    86,    87,    88,    -1,
2537
      90,    91,    92,    -1,    94,    -1,    96,    -1,    98,    -1,
2538
      -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,   109,
2539
     110,    -1,   112,   113,    -1,    -1,    -1,    -1,   118,   119,
2540
     120,   121,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,
2541
     130,   131,   132,   133,   134,   135,   136,   137,    -1,    -1,
2542
      -1,   141,   142,    -1,   144,   145,   146,   147,   148,   149,
2543
     150,   151,   152,   153,   154,   155,   156,     3,    -1,     5,
2544
       6,     7,     8,    -1,    -1,   165,    12,    13,    -1,    15,
2545
      -1,    -1,    -1,    -1,    -1,    -1,   176,   177,    -1,   179,
2546
     180,   181,   182,   183,   184,    -1,    -1,    -1,    -1,    -1,
2547
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2548
      -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,
2549
      -1,    57,    -1,    59,    60,    61,    62,    63,    64,    65,
2550
      66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,
2551
      76,    77,    78,    79,    80,    -1,    82,    -1,    -1,    85,
2552
      86,    87,    88,    89,    90,    91,    92,    -1,    94,    -1,
2553
      96,    -1,    98,    -1,    -1,   101,    -1,    -1,    -1,   105,
2554
     106,   107,   108,   109,   110,    -1,   112,   113,    -1,    -1,
2555
      -1,    -1,   118,   119,   120,   121,    -1,    -1,    -1,    -1,
2556
      -1,    -1,   128,    -1,   130,   131,   132,   133,   134,   135,
2557
     136,   137,    -1,    -1,    -1,   141,   142,    -1,   144,   145,
2558
     146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
2559
     156,     3,    -1,     5,     6,     7,     8,    -1,    -1,   165,
2560
      12,    13,    -1,    15,    -1,    -1,   103,    -1,    -1,    -1,
2561
     176,   177,    -1,   179,   111,   181,   182,   183,   184,   116,
2562
      -1,    -1,   119,   120,   121,   122,   123,   124,   125,   126,
2563
     127,   128,   129,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2564
      52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,
2565
      62,    63,    64,    65,    66,    67,   153,    69,    -1,    -1,
2566
      -1,    73,    74,    75,    76,    77,    78,    79,    80,    -1,
2567
      82,    -1,    -1,    85,    86,    87,    88,    -1,    90,    91,
2568
      92,    93,    94,   180,    96,    -1,    98,    -1,    -1,   101,
2569
      -1,    -1,    -1,   105,   106,   107,   108,   109,   110,    -1,
2570
     112,   113,    -1,    -1,    -1,    -1,   118,   119,   120,   121,
2571
      -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,   130,   131,
2572
     132,   133,   134,   135,   136,   137,    -1,    -1,    -1,   141,
2573
     142,    -1,   144,   145,   146,   147,   148,   149,   150,   151,
2574
     152,   153,   154,   155,   156,     3,    -1,     5,     6,     7,
2575
       8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,
2576
     103,    -1,    -1,    -1,   176,   177,    -1,   179,   111,   181,
2577
     182,   183,   184,   116,    -1,    -1,   119,   120,   121,   122,
2578
     123,   124,   125,   126,   127,   128,   129,    -1,    -1,    -1,
2579
      -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,
2580
      -1,    59,    60,    61,    62,    63,    64,    65,    66,    67,
2581
     153,    69,    -1,    -1,    -1,    73,    74,    75,    76,    77,
2582
      78,    79,    80,    -1,    82,    -1,    -1,    85,    86,    87,
2583
      88,    -1,    90,    91,    92,    -1,    94,   180,    96,    -1,
2584
      98,    99,    -1,   101,    -1,    -1,    -1,   105,   106,   107,
2585
     108,   109,   110,    -1,   112,   113,    -1,    -1,    -1,    -1,
2586
     118,   119,   120,   121,    -1,    -1,    -1,    -1,    -1,    -1,
2587
     128,    -1,   130,   131,   132,   133,   134,   135,   136,   137,
2588
      -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,   147,
2589
     148,   149,   150,   151,   152,   153,   154,   155,   156,     3,
2590
      -1,     5,     6,     7,     8,    -1,    -1,   165,    12,    13,
2591
      -1,    15,    -1,    -1,   103,    -1,    -1,    -1,   176,   177,
2592
      -1,   179,   111,   181,   182,   183,   184,   116,    -1,    -1,
2593
     119,   120,   121,   122,   123,   124,   125,   126,   127,   128,
2594
     129,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,
2595
      -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,    63,
2596
      64,    65,    66,    67,   153,    69,    -1,    -1,    -1,    73,
2597
      74,    75,    76,    77,    78,    79,    80,    -1,    82,    -1,
2598
      -1,    85,    86,    87,    88,    -1,    90,    91,    92,    -1,
2599
      94,   180,    96,    97,    98,    -1,    -1,   101,    -1,    -1,
2600
      -1,   105,   106,   107,   108,   109,   110,    -1,   112,   113,
2601
      -1,    -1,    -1,    -1,   118,   119,   120,   121,    -1,    -1,
2602
      -1,    -1,    -1,    -1,   128,    -1,   130,   131,   132,   133,
2603
     134,   135,   136,   137,    -1,    -1,    -1,   141,   142,    -1,
2604
     144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
2605
     154,   155,   156,     3,    -1,     5,     6,     7,     8,    -1,
2606
      -1,   165,    12,    13,    -1,    15,    -1,    -1,   103,    -1,
2607
      -1,    -1,   176,   177,    -1,   179,   111,   181,   182,   183,
2608
     184,   116,    -1,    -1,   119,   120,   121,   122,   123,   124,
2609
     125,   126,   127,   128,   129,    -1,    -1,    -1,    -1,    -1,
2610
      -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,
2611
      60,    61,    62,    63,    64,    65,    66,    67,   153,    69,
2612
      -1,    -1,    -1,    73,    74,    75,    76,    77,    78,    79,
2613
      80,    -1,    82,    -1,    -1,    85,    86,    87,    88,    -1,
2614
      90,    91,    92,    -1,    94,   180,    96,    -1,    98,    -1,
2615
      -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,   109,
2616
     110,    -1,   112,   113,    -1,    -1,    -1,    -1,   118,   119,
2617
     120,   121,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,
2618
     130,   131,   132,   133,   134,   135,   136,   137,    -1,    -1,
2619
      -1,   141,   142,    -1,   144,   145,   146,   147,   148,   149,
2620
     150,   151,   152,   153,   154,   155,   156,     3,    -1,     5,
2621
       6,     7,     8,    -1,    -1,   165,    12,    13,    -1,    15,
2622
      -1,    -1,    -1,    -1,    -1,    -1,   176,   177,    -1,   179,
2623
     180,   181,   182,   183,   184,    -1,    -1,    -1,    -1,    -1,
2624
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2625
      -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,
2626
      -1,    57,    -1,    59,    60,    61,    62,    63,    64,    65,
2627
      66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,
2628
      76,    77,    78,    79,    80,    -1,    82,    -1,    -1,    85,
2629
      86,    87,    88,    -1,    90,    91,    92,    -1,    94,    95,
2630
      96,    -1,    98,    -1,    -1,   101,    -1,    -1,    -1,   105,
2631
     106,   107,   108,   109,   110,    -1,   112,   113,    -1,    -1,
2632
      -1,    -1,   118,   119,   120,   121,    -1,    -1,    -1,    -1,
2633
      -1,    -1,   128,    -1,   130,   131,   132,   133,   134,   135,
2634
     136,   137,    -1,    -1,    -1,   141,   142,    -1,   144,   145,
2635
     146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
2636
     156,     3,    -1,     5,     6,     7,     8,    -1,    -1,   165,
2637
      12,    13,    -1,    15,    -1,    -1,   103,    -1,    -1,    -1,
2638
     176,   177,    -1,   179,   111,   181,   182,   183,   184,   116,
2639
      -1,    -1,   119,   120,   121,   122,   123,   124,   125,   126,
2640
     127,   128,   129,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2641
      52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,
2642
      62,    63,    64,    65,    66,    67,   153,    69,    -1,    -1,
2643
      -1,    73,    74,    75,    76,    77,    78,    79,    80,    -1,
2644
      82,    -1,    -1,    85,    86,    87,    88,    -1,    90,    91,
2645
      92,    -1,    94,   180,    96,    -1,    98,    -1,    -1,   101,
2646
      -1,    -1,    -1,   105,   106,   107,   108,   109,   110,    -1,
2647
     112,   113,    -1,    -1,    -1,    -1,   118,   119,   120,   121,
2648
      -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,   130,   131,
2649
     132,   133,   134,   135,   136,   137,    -1,    -1,    -1,   141,
2650
     142,    -1,   144,   145,   146,   147,   148,   149,   150,   151,
2651
     152,   153,   154,   155,   156,     3,    -1,     5,     6,     7,
2652
       8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,
2653
      -1,    -1,    -1,    -1,   176,   177,    -1,   179,   180,   181,
2654
     182,   183,   184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2655
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2656
      -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,
2657
      -1,    59,    60,    61,    62,    63,    64,    65,    66,    67,
2658
      -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,    77,
2659
      78,    79,    80,    -1,    82,    -1,    -1,    85,    86,    87,
2660
      88,    -1,    90,    91,    92,    -1,    94,    -1,    96,    -1,
2661
      98,    -1,    -1,   101,    -1,    -1,    -1,   105,   106,   107,
2662
     108,   109,   110,    -1,   112,   113,    -1,    -1,    -1,    -1,
2663
     118,   119,   120,   121,    -1,    -1,    -1,    -1,    -1,    -1,
2664
     128,    -1,   130,   131,   132,   133,   134,   135,   136,   137,
2665
      -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,   147,
2666
     148,   149,   150,   151,   152,   153,   154,   155,   156,     3,
2667
      -1,     5,     6,     7,     8,    -1,    -1,   165,    12,    13,
2668
      -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,   176,   177,
2669
      -1,   179,   180,   181,   182,   183,   184,    -1,    -1,    -1,
2670
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2671
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,
2672
      -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,    63,
2673
      64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,    73,
2674
      74,    75,    76,    77,    78,    79,    80,    -1,    82,    -1,
2675
      -1,    85,    86,    87,    88,    -1,    90,    91,    92,    -1,
2676
      94,    -1,    96,    -1,    98,    -1,    -1,   101,    -1,    -1,
2677
      -1,   105,   106,   107,   108,   109,   110,    -1,   112,   113,
2678
      -1,    -1,    -1,    -1,   118,   119,   120,   121,    -1,    -1,
2679
      -1,    -1,    -1,    -1,   128,    -1,   130,   131,   132,   133,
2680
     134,   135,   136,   137,    -1,    -1,    -1,   141,   142,    -1,
2681
     144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
2682
     154,   155,   156,     3,    -1,     5,     6,     7,     8,    -1,
2683
      -1,   165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,
2684
      -1,    -1,   176,   177,    -1,   179,   180,   181,   182,   183,
2685
     184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2686
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2687
      -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,
2688
      60,    61,    62,    63,    64,    65,    66,    67,    -1,    69,
2689
      -1,    -1,    -1,    73,    74,    75,    76,    77,    78,    79,
2690
      80,    -1,    82,    -1,    -1,    85,    86,    87,    88,    -1,
2691
      90,    91,    92,    -1,    94,    -1,    96,    -1,    98,    -1,
2692
      -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,   109,
2693
     110,    -1,   112,   113,    -1,    -1,    -1,    -1,   118,   119,
2694
     120,   121,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,
2695
     130,   131,   132,   133,   134,   135,   136,   137,    -1,    -1,
2696
      -1,   141,   142,    -1,   144,   145,   146,   147,   148,   149,
2697
     150,   151,   152,   153,   154,   155,   156,     3,    -1,     5,
2698
       6,     7,     8,    -1,    -1,   165,    12,    13,    -1,    15,
2699
      -1,    -1,    -1,    -1,    -1,    -1,   176,   177,    -1,   179,
2700
     180,   181,   182,   183,   184,    -1,    -1,    -1,    -1,    -1,
2701
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2702
      -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,
2703
      -1,    57,    -1,    59,    60,    61,    62,    63,    64,    65,
2704
      66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,
2705
      76,    77,    78,    79,    80,    -1,    82,    -1,    -1,    85,
2706
      86,    87,    88,    -1,    90,    91,    92,    -1,    94,    -1,
2707
      96,    -1,    98,    -1,    -1,   101,    -1,    -1,    -1,   105,
2708
     106,   107,   108,   109,   110,    -1,   112,   113,    -1,    -1,
2709
      -1,    -1,   118,   119,   120,   121,    -1,    -1,    -1,    -1,
2710
      -1,    -1,   128,    -1,   130,   131,   132,   133,   134,   135,
2711
     136,   137,    -1,    -1,    -1,   141,   142,    -1,   144,   145,
2712
     146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
2713
     156,     3,    -1,     5,     6,     7,     8,    -1,    -1,   165,
2714
      12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,
2715
     176,   177,    -1,   179,   180,   181,   182,   183,   184,    -1,
2716
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2717
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2718
      52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,
2719
      62,    63,    64,    65,    66,    67,    -1,    69,    -1,    -1,
2720
      -1,    73,    74,    75,    76,    77,    78,    79,    80,    -1,
2721
      82,    -1,    -1,    85,    86,    87,    88,    -1,    90,    91,
2722
      92,    -1,    94,    -1,    96,    -1,    98,    -1,    -1,   101,
2723
      -1,    -1,    -1,   105,   106,   107,   108,   109,   110,    -1,
2724
     112,   113,    -1,    -1,    -1,    -1,   118,   119,   120,   121,
2725
      -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,   130,   131,
2726
     132,   133,   134,   135,   136,   137,    -1,    -1,    -1,   141,
2727
     142,    -1,   144,   145,   146,   147,   148,   149,   150,   151,
2728
     152,   153,   154,   155,   156,    -1,    -1,    -1,    -1,    -1,
2729
      -1,    -1,     3,   165,     5,     6,     7,     8,     9,    10,
2730
      11,    12,    13,    -1,   176,   177,    -1,   179,    -1,   181,
2731
     182,   183,   184,   109,   110,    -1,    -1,    -1,    -1,    -1,
2732
      -1,    -1,    -1,   119,   120,   121,    -1,    -1,    -1,    -1,
2733
      -1,    -1,   128,    -1,    -1,    -1,    -1,    -1,   134,   135,
2734
     136,   137,    -1,    -1,    -1,    -1,    -1,    58,    -1,    -1,
2735
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   153,    69,    -1,
2736
      71,    72,    -1,    -1,    75,    -1,    -1,    -1,    79,    -1,
2737
      -1,    -1,    -1,    -1,    85,    86,    87,    88,    89,    90,
2738
      91,    92,    93,    94,    95,    96,    97,    98,    99,   100,
2739
     101,   102,   103,   104,   105,   106,   107,   108,   109,   110,
2740
     111,   112,   113,   114,   115,   116,   117,   118,   119,   120,
2741
     121,   122,   123,   124,    -1,    -1,    -1,   128,   129,   130,
2742
     131,   132,    -1,   134,   135,   136,   137,   138,   139,   140,
2743
     141,   142,   143,   144,   145,   146,   147,   148,   149,   150,
2744
     151,   152,     3,    -1,     5,     6,     7,     8,     9,    10,
2745
      11,    12,    13,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2746
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   179,    -1,
2747
      -1,    -1,    -1,   184,    36,    37,    38,    39,    40,    41,
2748
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
2749
      52,    53,    54,    55,    56,    -1,    58,    58,    -1,    -1,
2750
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    69,    -1,
2751
      71,    72,    -1,    -1,    75,    -1,    -1,    -1,    79,    -1,
2752
      -1,    -1,    -1,    -1,    85,    86,    87,    88,    89,    90,
2753
      91,    92,    93,    94,    95,    96,    97,    98,    99,   100,
2754
     101,   102,   103,   104,   105,   106,   107,   108,   109,   110,
2755
     111,   112,   113,   114,   115,   116,   117,   118,   119,   120,
2756
     121,   122,   123,   124,    -1,    -1,    -1,   128,   129,   130,
2757
     131,   132,    -1,   134,   135,   136,   137,   138,   139,   140,
2758
     141,   142,   143,   144,   145,   146,   147,   148,   149,   150,
2759
     151,   152,     3,    -1,     5,     6,     7,     8,    -1,    -1,
2760
      -1,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,
2761
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   179,    -1,
2762
      31,    -1,    -1,   184,    -1,    -1,    -1,    -1,    -1,    -1,
2763
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2764
      -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,
2765
      61,    62,    63,    64,    65,    66,    67,    -1,    69,    -1,
2766
      -1,    -1,    73,    74,    75,    76,    77,    78,    79,    80,
2767
      -1,    82,    -1,    -1,    85,    86,    87,    88,    -1,    90,
2768
      91,    92,    -1,    94,    -1,    96,    -1,    98,    -1,    -1,
2769
     101,    -1,    -1,    -1,   105,   106,   107,   108,   109,   110,
2770
      -1,   112,   113,    -1,    -1,    -1,    -1,   118,   119,    -1,
2771
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,   130,
2772
     131,   132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2773
     141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
2774
     151,   152,   153,   154,   155,   156,     3,    -1,     5,     6,
2775
       7,     8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,
2776
      -1,    -1,    -1,    -1,    -1,   176,   177,    -1,   179,    -1,
2777
     181,   182,   183,   184,    31,    -1,    -1,    -1,    -1,    -1,
2778
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2779
      -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,
2780
      57,    -1,    59,    60,    61,    62,    63,    64,    65,    66,
2781
      67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,
2782
      77,    78,    79,    80,    -1,    82,    -1,    -1,    85,    86,
2783
      87,    88,    -1,    90,    91,    92,    -1,    94,    -1,    96,
2784
      -1,    98,    -1,    -1,   101,    -1,    -1,    -1,   105,   106,
2785
     107,   108,   109,   110,    -1,   112,   113,    -1,    -1,    -1,
2786
      -1,   118,   119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2787
      -1,   128,    -1,   130,   131,   132,    -1,    -1,    -1,    -1,
2788
      -1,    -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,
2789
     147,   148,   149,   150,   151,   152,   153,   154,   155,   156,
2790
       3,    -1,     5,     6,     7,     8,    -1,    -1,   165,    12,
2791
      13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,   176,
2792
     177,    -1,   179,    -1,   181,   182,   183,   184,    31,    -1,
2793
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2794
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,
2795
      53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,
2796
      63,    64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,
2797
      73,    74,    75,    76,    77,    78,    79,    80,    -1,    82,
2798
      -1,    -1,    85,    86,    87,    88,    -1,    90,    91,    92,
2799
      -1,    94,    -1,    96,    -1,    98,    -1,    -1,   101,    -1,
2800
      -1,    -1,   105,   106,   107,   108,   109,   110,    -1,   112,
2801
     113,    -1,    -1,    -1,    -1,   118,   119,    -1,    -1,    -1,
2802
      -1,    -1,    -1,    -1,    -1,   128,    -1,   130,   131,   132,
2803
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,   142,
2804
      -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
2805
     153,   154,   155,   156,     3,    -1,     5,     6,     7,     8,
2806
      -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,    -1,
2807
      -1,    -1,    -1,   176,   177,    -1,   179,    -1,   181,   182,
2808
     183,   184,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2809
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2810
      -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,
2811
      59,    60,    61,    62,    63,    64,    65,    66,    67,    -1,
2812
      69,    -1,    -1,    -1,    73,    74,    75,    76,    77,    78,
2813
      79,    80,    -1,    82,    -1,    -1,    85,    86,    87,    88,
2814
      -1,    90,    91,    92,    -1,    94,    -1,    96,    -1,    98,
2815
      -1,    -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,
2816
     109,   110,    -1,   112,   113,    -1,    -1,    -1,    -1,   118,
2817
     119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,
2818
      -1,   130,   131,   132,    -1,    -1,    -1,    -1,    -1,    -1,
2819
      -1,    -1,   141,   142,    -1,   144,   145,   146,   147,   148,
2820
     149,   150,   151,   152,   153,   154,   155,   156,     3,    -1,
2821
       5,     6,     7,     8,    -1,    -1,   165,    12,    13,    -1,
2822
      15,    -1,    -1,    -1,    -1,    -1,    -1,   176,   177,    -1,
2823
     179,    -1,   181,   182,   183,   184,    31,    -1,    -1,    -1,
2824
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2825
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,
2826
      -1,    -1,    57,    -1,    59,    60,    61,    62,    63,    64,
2827
      65,    66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,
2828
      75,    76,    77,    78,    79,    80,    -1,    82,    -1,    -1,
2829
      85,    86,    87,    88,    -1,    90,    91,    92,    -1,    94,
2830
      -1,    96,    -1,    98,    -1,    -1,   101,    -1,    -1,    -1,
2831
     105,   106,   107,   108,   109,   110,    -1,   112,   113,    -1,
2832
      -1,    -1,    -1,   118,   119,    -1,    -1,    -1,    -1,    -1,
2833
      -1,    -1,    -1,   128,    -1,   130,   131,   132,    -1,    -1,
2834
      -1,    -1,    -1,    -1,    -1,    -1,   141,   142,    -1,   144,
2835
     145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
2836
     155,   156,     3,    -1,     5,     6,     7,     8,    -1,    -1,
2837
     165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,
2838
      -1,   176,   177,    -1,   179,    -1,   181,   182,   183,   184,
2839
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2840
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2841
      -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,
2842
      61,    62,    63,    64,    65,    66,    67,    -1,    69,    -1,
2843
      -1,    -1,    73,    74,    75,    76,    77,    78,    79,    80,
2844
      -1,    82,    -1,    -1,    85,    86,    87,    88,    -1,    90,
2845
      91,    92,    -1,    94,    -1,    96,    -1,    98,    -1,    -1,
2846
     101,    -1,    -1,    -1,   105,   106,   107,   108,   109,   110,
2847
      -1,   112,   113,    -1,    -1,    -1,    -1,   118,   119,    -1,
2848
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,   130,
2849
     131,   132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2850
     141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
2851
     151,   152,   153,   154,   155,   156,     3,    -1,     5,     6,
2852
       7,     8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,
2853
      -1,    -1,    -1,    -1,    -1,   176,   177,    -1,   179,    -1,
2854
     181,   182,   183,   184,    -1,    -1,    -1,    -1,    -1,    -1,
2855
      37,    38,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2856
      -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,
2857
      57,    -1,    59,    60,    61,    62,    63,    64,    65,    66,
2858
      67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,
2859
      77,    78,    79,    -1,    -1,    82,    -1,    -1,    85,    86,
2860
      87,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2861
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,    -1,
2862
      -1,    -1,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,
2863
      -1,    -1,   119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2864
      -1,   128,    -1,    -1,   131,   132,    -1,    -1,    -1,    -1,
2865
      -1,    -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,
2866
     147,   148,   149,   150,   151,   152,   153,   154,   155,    -1,
2867
       3,    -1,     5,     6,     7,     8,    -1,    -1,   165,    12,
2868
      13,    -1,    15,    -1,   171,    -1,    -1,    -1,    -1,    -1,
2869
     177,    -1,    -1,    -1,   181,   182,   183,   184,    -1,    -1,
2870
      -1,    -1,    -1,    -1,    37,    38,    -1,    -1,    -1,    -1,
2871
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,
2872
      53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,
2873
      63,    64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,
2874
      73,    74,    75,    76,    77,    78,    79,    -1,    -1,    82,
2875
      -1,    -1,    85,    86,    87,    -1,    -1,    -1,    -1,    -1,
2876
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2877
      -1,    -1,   105,    -1,    -1,    -1,   109,   110,    -1,    -1,
2878
      -1,    -1,    -1,    -1,    -1,    -1,   119,    -1,    -1,    -1,
2879
      -1,    -1,    -1,    -1,    -1,   128,    -1,    -1,   131,   132,
2880
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,   142,
2881
      -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
2882
     153,   154,   155,    -1,     3,    -1,     5,     6,     7,     8,
2883
      -1,    -1,   165,    12,    13,    -1,    15,    -1,    -1,    -1,
2884
      -1,    -1,    -1,    -1,   177,    -1,    -1,    -1,   181,   182,
2885
     183,   184,    -1,    -1,    -1,    -1,    -1,    -1,    37,    38,
2886
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2887
      -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,
2888
      59,    60,    61,    62,    63,    64,    65,    66,    67,    -1,
2889
      69,    -1,    -1,    -1,    73,    74,    75,    76,    77,    78,
2890
      79,    -1,    -1,    82,    -1,    -1,    85,    86,    87,    -1,
2891
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2892
      -1,    -1,    -1,    -1,    -1,    -1,   105,    -1,    -1,    -1,
2893
     109,   110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2894
     119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,
2895
      -1,    -1,   131,   132,    -1,    -1,    -1,    -1,    -1,    -1,
2896
      -1,    -1,   141,   142,    -1,   144,   145,   146,   147,   148,
2897
     149,   150,   151,   152,   153,   154,   155,    -1,     3,    -1,
2898
       5,     6,     7,     8,    -1,    -1,   165,    12,    13,    -1,
2899
      15,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   177,    -1,
2900
      -1,    -1,   181,   182,   183,   184,    -1,    -1,    -1,    -1,
2901
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2902
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,
2903
      -1,    -1,    57,    -1,    59,    60,    61,    62,    63,    64,
2904
      65,    66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,
2905
      75,    76,    77,    78,    79,    -1,    -1,    82,    -1,    -1,
2906
      85,    86,    87,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2907
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2908
     105,    -1,    -1,    -1,   109,   110,    -1,    -1,    -1,    -1,
2909
      -1,    -1,    -1,    -1,   119,    -1,    -1,    -1,    -1,    -1,
2910
      -1,    -1,    -1,   128,    -1,    -1,   131,   132,    -1,    -1,
2911
      -1,    -1,    -1,    -1,    -1,    -1,   141,   142,    -1,   144,
2912
     145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
2913
     155,   156,     3,    -1,     5,     6,     7,     8,    -1,    -1,
2914
     165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,
2915
      -1,    -1,   177,    -1,    -1,    -1,   181,   182,   183,   184,
2916
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2917
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2918
      -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,
2919
      61,    62,    63,    64,    65,    66,    67,    -1,    69,    -1,
2920
      -1,    -1,    73,    74,    75,    76,    77,    78,    79,    -1,
2921
      -1,    82,    83,    -1,    85,    86,    87,    -1,    -1,    -1,
2922
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2923
      -1,    -1,    -1,    -1,   105,    -1,    -1,    -1,   109,   110,
2924
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   119,    -1,
2925
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,    -1,
2926
     131,   132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2927
     141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
2928
     151,   152,   153,   154,   155,    -1,     3,    -1,     5,     6,
2929
       7,     8,    -1,    -1,   165,    12,    13,    -1,    15,    -1,
2930
      -1,    -1,    -1,    -1,    -1,    -1,   177,    -1,    -1,    -1,
2931
     181,   182,   183,   184,    31,    -1,    -1,    -1,    -1,    -1,
2932
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2933
      -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,
2934
      57,    -1,    59,    60,    61,    62,    63,    64,    65,    66,
2935
      67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,
2936
      77,    78,    79,    -1,    -1,    82,    -1,    -1,    85,    86,
2937
      87,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2938
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,    -1,
2939
      -1,    -1,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,
2940
      -1,    -1,   119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2941
      -1,   128,    -1,    -1,   131,   132,    -1,    -1,    -1,    -1,
2942
      -1,    -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,
2943
     147,   148,   149,   150,   151,   152,   153,   154,   155,    -1,
2944
       3,    -1,     5,     6,     7,     8,    -1,    -1,   165,    12,
2945
      13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2946
     177,    -1,    -1,    -1,   181,   182,   183,   184,    31,    -1,
2947
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2948
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,
2949
      53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,
2950
      63,    64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,
2951
      73,    74,    75,    76,    77,    78,    79,    -1,    -1,    82,
2952
      -1,    -1,    85,    86,    87,    -1,    -1,    -1,    -1,    -1,
2953
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2954
      -1,    -1,   105,    -1,    -1,    -1,   109,   110,    -1,    -1,
2955
      -1,    -1,    -1,    -1,    -1,    -1,   119,    -1,    -1,    -1,
2956
      -1,    -1,    -1,    -1,    -1,   128,    -1,    -1,   131,   132,
2957
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,   142,
2958
      -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
2959
     153,   154,   155,    -1,    -1,     3,    -1,     5,     6,     7,
2960
       8,    -1,   165,    -1,    12,    13,    -1,    15,    -1,    -1,
2961
      -1,    -1,    -1,    -1,   177,    -1,    -1,    -1,   181,   182,
2962
     183,   184,    30,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2963
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2964
      -1,    -1,    -1,    -1,    52,    53,    -1,    -1,    -1,    57,
2965
      -1,    59,    60,    61,    62,    63,    64,    65,    66,    67,
2966
      -1,    69,    -1,    -1,    -1,    73,    74,    75,    76,    77,
2967
      78,    79,    -1,    -1,    82,    -1,    -1,    85,    86,    87,
2968
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2969
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,    -1,    -1,
2970
      -1,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2971
      -1,   119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2972
     128,    -1,    -1,   131,   132,    -1,    -1,    -1,    -1,    -1,
2973
      -1,    -1,    -1,   141,   142,    -1,   144,   145,   146,   147,
2974
     148,   149,   150,   151,   152,   153,   154,   155,    -1,     3,
2975
      -1,     5,     6,     7,     8,    -1,    -1,   165,    12,    13,
2976
      -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   177,
2977
      -1,    -1,    -1,   181,   182,   183,   184,    -1,    -1,    -1,
2978
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2979
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    53,
2980
      -1,    -1,    -1,    57,    -1,    59,    60,    61,    62,    63,
2981
      64,    65,    66,    67,    -1,    69,    -1,    -1,    -1,    73,
2982
      74,    75,    76,    77,    78,    79,    -1,    -1,    82,    -1,
2983
      -1,    85,    86,    87,    -1,    -1,    -1,    -1,    -1,    -1,
2984
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2985
      -1,   105,    -1,    -1,    -1,   109,   110,    -1,    -1,    -1,
2986
      -1,    -1,    -1,    -1,    -1,   119,    -1,    -1,    -1,    -1,
2987
      -1,    -1,    -1,    -1,   128,    -1,    -1,   131,   132,    -1,
2988
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,   142,    -1,
2989
     144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
2990
     154,   155,   156,     3,    -1,     5,     6,     7,     8,    -1,
2991
      -1,   165,    12,    13,    -1,    15,    -1,    -1,    -1,    -1,
2992
      -1,    -1,    -1,   177,    -1,    -1,    -1,   181,   182,   183,
2993
     184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2994
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2995
      -1,    -1,    52,    53,    -1,    -1,    -1,    57,    -1,    59,
2996
      60,    61,    62,    63,    64,    65,    66,    67,    -1,    69,
2997
      -1,    -1,    -1,    73,    74,    75,    76,    77,    78,    79,
2998
      -1,    -1,    82,    -1,    -1,    85,    86,    87,    -1,    -1,
2999
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3000
      -1,    -1,    -1,    -1,   104,   105,    -1,    -1,    -1,   109,
3001
     110,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   119,
3002
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,
3003
      -1,   131,   132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3004
      -1,   141,   142,    -1,   144,   145,   146,   147,   148,   149,
3005
     150,   151,   152,   153,   154,   155,    -1,     3,    -1,     5,
3006
       6,     7,     8,    -1,    -1,   165,    12,    13,    -1,    15,
3007
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   177,    -1,    -1,
3008
      -1,   181,   182,   183,   184,    -1,    -1,    -1,    -1,    -1,
3009
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3010
      -1,    -1,    -1,    -1,    -1,    -1,    52,    53,    -1,    -1,
3011
      -1,    57,    -1,    59,    60,    61,    62,    63,    64,    65,
3012
      66,    67,    -1,    69,    -1,    -1,    -1,    73,    74,    75,
3013
      76,    77,    78,    79,    -1,    -1,    82,    -1,    -1,    85,
3014
      86,    87,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3015
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,
3016
      -1,    -1,    -1,   109,   110,    -1,    -1,    -1,    -1,    -1,
3017
      -1,    -1,    -1,   119,    -1,    -1,    -1,    -1,    -1,    -1,
3018
      -1,    -1,   128,    -1,    -1,   131,   132,    -1,    -1,    -1,
3019
      -1,    -1,    -1,    -1,    -1,   141,   142,    -1,   144,   145,
3020
     146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
3021
      -1,     3,    -1,     5,     6,     7,     8,    -1,    -1,   165,
3022
      12,    13,    -1,    15,    -1,    -1,    -1,    -1,    -1,    -1,
3023
      -1,   177,    -1,    -1,    -1,   181,   182,   183,   184,    -1,
3024
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3025
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3026
      52,    53,    -1,    -1,    -1,    57,    -1,    59,    60,    61,
3027
      62,    63,    64,    65,    66,    67,    -1,    69,    -1,    -1,
3028
      -1,    73,    74,    75,    76,    77,    78,    79,    -1,    -1,
3029
      82,    -1,    -1,    85,    86,    87,    -1,    -1,    -1,    -1,
3030
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3031
      -1,    -1,    -1,   105,    -1,    -1,    -1,   109,   110,    -1,
3032
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   119,    -1,    -1,
3033
      -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,    -1,   131,
3034
     132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   141,
3035
     142,    -1,   144,   145,   146,   147,   148,   149,   150,   151,
3036
     152,   153,   154,   155,    -1,    -1,    -1,    -1,    -1,    -1,
3037
      -1,    -1,     3,   165,     5,     6,     7,     8,     9,    10,
3038
      11,    12,    13,    -1,    -1,   177,    -1,    -1,    -1,   181,
3039
     182,   183,   184,    30,    -1,    32,    33,    34,    35,    36,
3040
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3041
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3042
      -1,    58,    -1,    -1,    -1,    -1,    -1,    58,    -1,    -1,
3043
      -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,    69,    -1,
3044
      71,    72,    -1,    -1,    75,    76,    77,    78,    -1,    -1,
3045
      -1,    -1,    -1,    -1,    85,    86,    87,    88,    89,    90,
3046
      91,    92,    93,    94,    95,    96,    97,    98,    99,   100,
3047
     101,   102,   103,   104,   105,   106,   107,   108,   109,   110,
3048
     111,   112,   113,   114,   115,   116,   117,   118,   119,   120,
3049
     121,   122,   123,   124,    -1,    -1,    -1,   128,   129,   130,
3050
     131,   132,    -1,   134,   135,   136,   137,   138,   139,   140,
3051
     141,   142,   143,   144,   145,   146,   147,   148,   149,   150,
3052
     151,   152,     3,    -1,     5,     6,     7,     8,     9,    10,
3053
      11,    12,    13,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3054
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   180,
3055
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3056
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3057
      52,    53,    54,    55,    56,    -1,    58,    58,    -1,    -1,
3058
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    69,    -1,
3059
      71,    72,    -1,    -1,    75,    76,    77,    78,    -1,    -1,
3060
      -1,    -1,    -1,    -1,    85,    86,    87,    88,    89,    90,
3061
      91,    92,    93,    94,    95,    96,    97,    98,    99,   100,
3062
     101,   102,   103,   104,   105,   106,   107,   108,   109,   110,
3063
     111,   112,   113,   114,   115,   116,   117,   118,   119,   120,
3064
     121,   122,   123,   124,    -1,    -1,    -1,   128,   129,   130,
3065
     131,   132,    -1,   134,   135,   136,   137,   138,   139,   140,
3066
     141,   142,   143,   144,   145,   146,   147,   148,   149,   150,
3067
     151,   152,    -1,     3,    -1,     5,     6,     7,     8,     9,
3068
      10,    11,    12,    13,    -1,    -1,    -1,    -1,    -1,    -1,
3069
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   180,
3070
      30,    34,    35,    36,    37,    38,    39,    40,    41,    42,
3071
      43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
3072
      53,    54,    55,    56,    -1,    58,    -1,    -1,    58,    -1,
3073
      -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    69,
3074
      -1,    71,    72,    -1,    -1,    75,    76,    77,    78,    -1,
3075
      -1,    -1,    -1,    -1,    -1,    85,    86,    87,    88,    89,
3076
      90,    91,    92,    93,    94,    95,    96,    97,    98,    99,
3077
     100,   101,   102,   103,   104,   105,   106,   107,   108,   109,
3078
     110,   111,   112,   113,   114,   115,   116,   117,   118,   119,
3079
     120,   121,   122,   123,   124,    -1,    -1,    -1,   128,   129,
3080
     130,   131,   132,    -1,   134,   135,   136,   137,   138,   139,
3081
     140,   141,   142,   143,   144,   145,   146,   147,   148,   149,
3082
     150,   151,   152,    -1,    -1,     9,    10,    11,    -1,    -1,
3083
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3084
      -1,    -1,    -1,    -1,    -1,    -1,    30,   177,    32,    33,
3085
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3086
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3087
      54,    55,    56,    -1,    58,     9,    10,    11,    -1,    -1,
3088
      -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,
3089
      -1,    -1,    -1,    -1,    -1,    -1,    30,    -1,    32,    33,
3090
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3091
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3092
      54,    55,    56,    -1,    58,     9,    10,    11,    -1,    -1,
3093
      -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,
3094
      -1,    -1,    -1,    -1,    -1,    -1,    30,    -1,    32,    33,
3095
      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
3096
      44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
3097
      54,    55,    56,    -1,    58,    -1,     9,    10,    11,    -1,
3098
      -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,
3099
      -1,    -1,    -1,    -1,    -1,    -1,   180,    30,    -1,    32,
3100
      33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
3101
      43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
3102
      53,    54,    55,    56,    -1,    58,     9,    10,    11,    -1,
3103
      -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,
3104
      -1,    -1,    -1,    -1,    -1,    -1,   180,    30,    -1,    32,
3105
      33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
3106
      43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
3107
      53,    54,    55,    56,    -1,    58,     9,    10,    11,    -1,
3108
      -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,
3109
      -1,    -1,    -1,    -1,    -1,    -1,   180,    30,    -1,    32,
3110
      33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
3111
      43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
3112
      53,    54,    55,    56,    -1,    58,    -1,     9,    10,    11,
3113
      -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,
3114
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   180,    30,    -1,
3115
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3116
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3117
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3118
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3119
      -1,    -1,    -1,    -1,    -1,    -1,    -1,   180,    30,    -1,
3120
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3121
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3122
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3123
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3124
      -1,   174,    -1,    -1,    -1,   178,    -1,    -1,    30,    -1,
3125
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3126
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3127
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3128
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3129
      -1,    -1,    -1,    -1,    -1,    -1,   178,    -1,    30,    -1,
3130
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3131
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3132
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3133
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3134
      -1,    -1,    -1,    -1,    -1,    -1,   178,    -1,    30,    -1,
3135
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3136
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3137
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3138
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3139
      -1,    -1,    -1,    -1,    -1,    -1,   178,    -1,    30,    -1,
3140
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3141
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3142
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3143
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3144
      -1,    -1,    -1,    -1,    -1,    -1,   178,    -1,    30,    -1,
3145
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3146
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3147
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3148
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3149
      -1,    -1,    -1,    -1,    -1,    -1,   178,    -1,    30,    -1,
3150
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3151
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3152
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3153
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3154
      -1,    -1,    -1,    -1,    -1,    -1,   178,    -1,    30,    -1,
3155
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3156
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3157
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3158
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3159
      -1,    -1,    -1,    -1,    -1,    -1,   178,    -1,    30,    -1,
3160
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3161
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3162
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3163
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3164
      -1,    -1,    -1,    -1,    -1,    -1,   178,    -1,    30,    -1,
3165
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3166
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3167
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3168
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3169
      -1,    -1,    -1,    -1,    -1,    -1,   178,    -1,    30,    -1,
3170
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3171
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3172
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3173
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3174
      -1,    -1,    -1,    -1,    -1,    -1,   178,    -1,    30,    31,
3175
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3176
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3177
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3178
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3179
      -1,    -1,    -1,    -1,    -1,    -1,   178,    -1,    30,    -1,
3180
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3181
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3182
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3183
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3184
      -1,    -1,    -1,    -1,    -1,    -1,   178,    -1,    30,    -1,
3185
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3186
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3187
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3188
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3189
      -1,    -1,    -1,    -1,   176,    -1,    -1,    -1,    30,    -1,
3190
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3191
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3192
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3193
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3194
      -1,    -1,    -1,    -1,   176,    -1,    -1,    -1,    30,    -1,
3195
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3196
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3197
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3198
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3199
      -1,    -1,    -1,    -1,   176,    -1,    -1,    -1,    30,    -1,
3200
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3201
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3202
      52,    53,    54,    55,    56,    -1,    58,     9,    10,    11,
3203
      -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,
3204
      -1,    -1,    37,    38,   176,    -1,    -1,    -1,    30,    -1,
3205
      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
3206
      42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
3207
      52,    53,    54,    55,    56,    -1,    58,    -1,    -1,    -1,
3208
      75,    76,    77,    78,    79,    -1,    68,    82,    -1,    -1,
3209
      -1,    86,    -1,   175,    -1,    -1,    -1,    -1,    -1,    -1,
3210
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3211
      -1,     3,    -1,     5,     6,     7,     8,     9,    10,    11,
3212
      12,    13,    -1,    -1,   119,    -1,    -1,    -1,    -1,    -1,
3213
      -1,    -1,    -1,   128,    -1,    -1,    -1,    -1,    -1,    -1,
3214
      -1,    -1,   174,    -1,    -1,    -1,   141,   142,    -1,   144,
3215
     145,   146,   147,   148,   149,   150,   151,   152,    -1,    -1,
3216
      -1,    -1,    -1,    -1,    -1,    -1,    58,    -1,    -1,    -1,
3217
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    69,    -1,    71,
3218
      72,    -1,   177,    75,    -1,    -1,   181,    -1,   183,   184,
3219
      -1,    -1,   174,    85,    86,    87,    88,    89,    90,    91,
3220
      92,    93,    94,    95,    96,    97,    98,    99,   100,   101,
3221
     102,   103,   104,   105,   106,   107,   108,   109,   110,   111,
3222
     112,   113,   114,   115,   116,   117,   118,   119,   120,   121,
3223
     122,   123,   124,   125,   126,   127,   128,   129,   130,   131,
3224
     132,    -1,   134,   135,   136,   137,   138,   139,   140,   141,
3225
     142,   143,   144,   145,   146,   147,   148,   149,   150,   151,
3226
     152,     3,    11,     5,     6,     7,     8,     9,    10,    11,
3227
      12,    13,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3228
      -1,    30,    -1,    32,    33,    34,    35,    36,    37,    38,
3229
      39,    40,    41,    42,    43,    44,    45,    46,    47,    48,
3230
      49,    50,    51,    52,    53,    54,    55,    56,    -1,    58,
3231
      -1,    -1,    -1,    -1,    -1,    -1,    58,    -1,    -1,    68,
3232
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    69,    -1,    71,
3233
      72,    -1,    -1,    75,    -1,    -1,    78,    -1,    -1,    -1,
3234
      -1,    -1,    -1,    85,    86,    87,    88,    89,    90,    91,
3235
      92,    93,    94,    95,    96,    97,    98,    99,   100,   101,
3236
     102,   103,   104,   105,   106,   107,   108,   109,   110,   111,
3237
     112,   113,   114,   115,   116,   117,   118,   119,   120,   121,
3238
     122,   123,   124,    -1,    -1,    -1,   128,   129,   130,   131,
3239
     132,    -1,   134,   135,   136,   137,   138,   139,   140,   141,
3240
     142,   143,   144,   145,   146,   147,   148,   149,   150,   151,
3241
     152,     3,    -1,     5,     6,     7,     8,     9,    10,    11,
3242
      12,    13,    35,    36,    37,    38,    39,    40,    41,    42,
3243
      43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
3244
      53,    54,    55,    56,    -1,    58,    -1,    -1,    -1,    -1,
3245
      -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,
3246
      -1,    -1,    -1,    -1,    -1,    -1,    58,    -1,    -1,    -1,
3247
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    69,    -1,    71,
3248
      72,    -1,    -1,    75,    -1,    -1,    -1,    -1,    -1,    -1,
3249
      -1,    -1,    -1,    85,    86,    87,    88,    89,    90,    91,
3250
      92,    93,    94,    95,    96,    97,    98,    99,   100,   101,
3251
     102,   103,   104,   105,   106,   107,   108,   109,   110,   111,
3252
     112,   113,   114,   115,   116,   117,   118,   119,   120,   121,
3253
     122,   123,   124,    -1,    -1,    -1,   128,   129,   130,   131,
3254
     132,    -1,   134,   135,   136,   137,   138,   139,   140,   141,
3255
     142,   143,   144,   145,   146,   147,   148,   149,   150,   151,
3256
     152,     3,    -1,     5,     6,     7,     8,     9,    10,    11,
3257
      12,    13,    37,    38,    39,    40,    41,    42,    43,    44,
3258
      45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
3259
      55,    56,    -1,    58,    -1,    -1,    -1,    -1,    -1,    -1,
3260
      -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,    -1,
3261
      -1,    -1,    -1,    -1,    -1,    -1,    58,    -1,    -1,    -1,
3262
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    69,    -1,    71,
3263
      72,    -1,    -1,    75,    -1,    -1,    -1,    -1,    -1,    -1,
3264
      -1,    -1,    -1,    85,    86,    87,    88,    89,    90,    91,
3265
      92,    93,    94,    95,    96,    97,    98,    99,   100,   101,
3266
     102,   103,   104,   105,   106,   107,   108,   109,   110,   111,
3267
     112,   113,   114,   115,   116,   117,   118,   119,   120,   121,
3268
     122,   123,   124,    -1,    -1,    -1,   128,   129,   130,   131,
3269
     132,    -1,   134,   135,   136,   137,   138,   139,   140,   141,
3270
     142,   143,   144,   145,   146,   147,   148,   149,   150,   151,
3271
     152,    75,    76,    77,    78,    79,    -1,    -1,    82,    -1,
3272
      -1,    -1,    86,    39,    40,    41,    42,    43,    44,    45,
3273
      46,    47,    48,    49,    50,    51,    52,    53,    54,    55,
3274
      56,    -1,    58,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3275
      -1,    -1,    68,    -1,    -1,   119,    -1,    -1,    -1,    -1,
3276
      -1,    -1,    -1,    -1,   128,    -1,    -1,    -1,    -1,    -1,
3277
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   142,    -1,
3278
     144,   145,   146,   147,   148,   149,   150,   151,   152,    -1,
3279
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3280
       9,    10,    11,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3281
      -1,    -1,    -1,   177,    -1,    -1,    -1,   181,    -1,   183,
3282
     184,    30,    -1,    32,    33,    34,    35,    36,    37,    38,
3283
      39,    40,    41,    42,    43,    44,    45,    46,    47,    48,
3284
      49,    50,    51,    52,    53,    54,    55,    56,    -1,    58,
3285
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    68,
3286
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,     9,
3287
      10,    11,    -1,    -1,    14,    -1,    -1,    -1,    -1,    -1,
3288
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3289
      30,   100,    32,    33,    34,    35,    36,    37,    38,    39,
3290
      40,    41,    42,    43,    44,    45,    46,    47,    48,    49,
3291
      50,    51,    52,    53,    54,    55,    56,    -1,    58,     9,
3292
      10,    11,    -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,
3293
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3294
      30,    31,    32,    33,    34,    35,    36,    37,    38,    39,
3295
      40,    41,    42,    43,    44,    45,    46,    47,    48,    49,
3296
      50,    51,    52,    53,    54,    55,    56,    -1,    58,     9,
3297
      10,    11,    -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,
3298
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3299
      30,    -1,    32,    33,    34,    35,    36,    37,    38,    39,
3300
      40,    41,    42,    43,    44,    45,    46,    47,    48,    49,
3301
      50,    51,    52,    53,    54,    55,    56,    -1,    58,    10,
3302
      11,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,
3303
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    30,
3304
      -1,    32,    33,    34,    35,    36,    37,    38,    39,    40,
3305
      41,    42,    43,    44,    45,    46,    47,    48,    49,    50,
3306
      51,    52,    53,    54,    55,    56,    14,    58,    -1,    -1,
3307
      -1,    -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,
3308
      -1,    -1,    30,    -1,    32,    33,    34,    35,    36,    37,
3309
      38,    39,    40,    41,    42,    43,    44,    45,    46,    47,
3310
      48,    49,    50,    51,    52,    53,    54,    55,    56,    -1,
3311
      58,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3312
      68,    39,    40,    41,    42,    43,    44,    45,    46,    47,
3313
      48,    49,    50,    51,    52,    53,    54,    55,    56,    -1,
3314
      58,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
3315
      68
3316
};
3317
3318
  /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
3319
     symbol of state STATE-NUM.  */
3320
static const yytype_int16 yystos[] =
3321
{
3322
       0,   186,   191,     0,     3,     5,     6,     7,     8,    12,
3323
      13,    15,    52,    53,    57,    59,    60,    61,    62,    63,
3324
      64,    65,    66,    67,    69,    73,    74,    75,    76,    77,
3325
      78,    79,    80,    82,    85,    86,    87,    88,    90,    91,
3326
      92,    94,    96,    98,   101,   105,   106,   107,   108,   109,
3327
     110,   111,   112,   113,   116,   118,   119,   120,   121,   128,
3328
     130,   131,   132,   133,   134,   135,   136,   137,   140,   141,
3329
     142,   144,   145,   146,   147,   148,   149,   150,   151,   152,
3330
     153,   154,   155,   156,   165,   176,   177,   179,   181,   182,
3331
     183,   184,   195,   198,   199,   200,   201,   202,   218,   227,
3332
     230,   233,   236,   237,   239,   241,   255,   261,   262,   263,
3333
     264,   329,   330,   331,   332,   333,   334,   342,   344,   348,
3334
     349,   350,   351,   353,   354,   355,   356,   357,   358,   359,
3335
     360,   371,    75,   119,   128,   199,   331,   334,   331,   331,
3336
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3337
     331,   331,   331,   331,   331,   331,   331,   177,   284,   331,
3338
      31,   177,   119,   128,   177,   195,   199,   234,   235,   236,
3339
     327,   344,   345,   359,   361,   177,   282,   347,   177,   322,
3340
     323,   331,   218,   177,   177,   177,   177,   177,   177,   331,
3341
     352,   352,    75,    75,   215,   321,   352,   179,    75,    76,
3342
      78,   109,   111,   193,   194,   205,   207,   211,   214,   288,
3343
     289,   359,    79,   290,   291,   332,   282,   177,   177,   177,
3344
     177,   232,   238,   240,   242,     3,     5,     6,     7,     8,
3345
       9,    10,    11,    12,    13,    58,    69,    71,    72,    75,
3346
      78,    85,    86,    87,    88,    89,    90,    91,    92,    93,
3347
      94,    95,    96,    97,    98,    99,   100,   101,   102,   103,
3348
     104,   105,   106,   107,   108,   109,   110,   111,   112,   113,
3349
     114,   115,   116,   117,   118,   119,   120,   121,   122,   123,
3350
     124,   128,   129,   130,   131,   132,   134,   135,   136,   137,
3351
     138,   139,   140,   141,   142,   143,   144,   145,   146,   147,
3352
     148,   149,   150,   151,   152,   187,   188,   190,   192,   204,
3353
     177,   177,   335,    86,   177,   181,   329,   348,   350,   351,
3354
     358,   358,   331,    79,    81,   166,   167,   168,   368,   369,
3355
     331,   216,    37,    38,   141,   171,   189,   331,   364,   365,
3356
     366,   367,    81,   346,   368,    81,   368,   179,   359,   282,
3357
     119,   198,   201,   332,   134,   236,    71,    72,    71,    72,
3358
      89,     9,    10,    11,    30,    32,    33,    34,    35,    36,
3359
      37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
3360
      47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
3361
      58,    68,   176,   189,   338,   338,   169,   169,   157,   158,
3362
     181,   343,    16,    17,    18,    19,    20,    21,    22,    23,
3363
      24,    25,    26,    27,    28,    29,   154,   155,   338,    14,
3364
       3,     5,     6,     7,     8,    12,    13,    30,    69,    75,
3365
      85,    86,    87,   105,   109,   110,   119,   128,   131,   132,
3366
     141,   142,   144,   145,   146,   147,   148,   149,   150,   151,
3367
     152,   171,   178,   190,   285,   286,   331,   331,   331,   327,
3368
     236,   134,   169,   282,   157,   158,   169,   181,   178,   283,
3369
     286,   287,   331,   331,   174,   176,    92,   331,   156,   325,
3370
     326,   331,   331,   215,   331,   331,   176,   176,   176,    16,
3371
     174,   176,   176,   216,   100,   170,   194,   206,   211,   176,
3372
     174,   176,   174,   176,    16,   174,   176,   224,   225,   358,
3373
     331,   372,   373,   331,   178,    75,    75,    75,    75,   176,
3374
     203,   179,   364,   364,   196,   197,   344,   345,   331,   364,
3375
     176,   157,   158,   181,   166,   369,    83,   331,   358,    81,
3376
     166,   369,   178,   133,   180,   199,   200,   217,   218,   177,
3377
     331,   358,    14,   175,   174,   182,   183,   331,   332,   231,
3378
     177,   218,   177,    31,   176,   331,   331,   331,    31,   331,
3379
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3380
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3381
     331,   331,   331,   331,   331,   345,   331,   335,    75,   128,
3382
     226,   335,   179,   190,   359,   362,   179,   190,   359,   362,
3383
      75,   179,   359,   363,   363,   352,   282,   189,   331,   331,
3384
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3385
     331,   331,   331,   331,    31,   174,   208,   174,   178,   178,
3386
     328,   359,   363,   363,   359,   352,   174,   208,   178,   323,
3387
     177,   178,   331,   176,   174,   100,   178,   178,   178,   331,
3388
     321,   180,    75,   179,   170,   176,   176,   194,   214,   289,
3389
     331,   291,   174,   208,   174,   208,   178,   176,   138,   246,
3390
     335,   138,   247,    31,   243,   179,   191,   178,   178,   174,
3391
     208,   282,   178,   175,    75,    75,    53,    75,    79,    84,
3392
     370,   180,   181,   180,   180,   177,   200,   364,   141,   189,
3393
     331,    16,   365,   180,    75,   331,   331,   216,   331,    31,
3394
     177,   335,   177,   331,   282,   331,   282,   331,   282,   282,
3395
     175,   358,    30,   331,   287,   178,   178,   287,   347,   175,
3396
     287,   178,    31,   218,   331,    31,   218,   260,   324,   326,
3397
     331,   156,   331,   141,   181,   189,   249,   358,   219,    31,
3398
     179,   253,   179,   335,   220,   193,   205,   209,   212,   213,
3399
     179,   225,   178,   373,   178,   344,   139,   248,   179,   295,
3400
     344,   335,    30,   119,   142,   143,   177,   195,   271,   272,
3401
     273,   274,   275,   277,   248,   191,   180,    16,   196,   175,
3402
      84,   175,   331,   178,   178,   177,   358,   331,   246,   178,
3403
     178,    89,   331,   119,   120,   121,   122,   123,   124,   125,
3404
     126,   127,   128,   199,   265,   266,   267,   268,   269,   307,
3405
     308,   177,   265,   180,   180,   180,   246,   216,   178,   216,
3406
     176,   174,   331,   177,   364,   358,    14,   178,    31,   218,
3407
     252,   176,   254,   176,   254,   104,   256,   257,   258,   259,
3408
     331,   114,   115,   223,   100,   213,   174,   208,   210,   213,
3409
     176,   295,   335,   292,   174,   179,   272,   272,   275,    37,
3410
      35,    35,    37,   335,   180,   331,   175,   176,   364,   248,
3411
     218,    31,   176,   269,   178,   174,   208,    30,   177,   270,
3412
     276,   277,   278,   279,   280,   308,   265,   178,   248,   176,
3413
      93,   325,   331,   364,   175,   249,    31,   218,   251,   216,
3414
     254,   102,   103,   104,   254,   180,   174,   208,   180,   174,
3415
     208,   174,   208,   177,   179,    75,   212,   180,   174,   208,
3416
     179,   103,   116,   129,   180,   199,   244,   293,   294,   304,
3417
     305,   306,   307,   344,   292,   178,   272,   272,   273,   273,
3418
     272,   179,   180,   178,   335,   216,    31,   281,   267,   277,
3419
     277,   280,    38,   228,    37,    35,    35,    37,   178,   116,
3420
     339,   335,   176,   178,   178,   178,   216,    99,   102,   176,
3421
     331,    31,   176,   180,    14,   258,   331,    14,   221,   344,
3422
     216,   213,   180,   292,   335,   295,   293,   270,   334,   111,
3423
     180,   292,   179,   271,    14,   178,   171,   229,   277,   277,
3424
     278,   278,   277,   281,   177,   281,   179,    31,   218,   250,
3425
     251,    97,   176,   176,    31,   176,   216,   216,   331,   331,
3426
      35,    79,   222,   180,   180,   190,   176,   179,   296,    79,
3427
     309,   310,   311,   338,    75,   119,   142,   143,   188,   271,
3428
     319,   320,   180,   292,   336,    79,   336,    79,   189,   340,
3429
     341,   336,   292,   216,   176,   216,   216,   344,   178,    16,
3430
     245,   119,   180,   190,   297,   298,   299,   300,   301,   302,
3431
     344,    16,   335,   174,   176,   190,    16,    16,    75,   319,
3432
     174,   176,   180,   337,    16,   335,   179,    79,   174,   208,
3433
     179,   180,    95,   179,   331,   176,   180,   298,   176,   176,
3434
     100,   117,   169,   331,   179,    79,   310,   335,   331,   331,
3435
     176,   320,   331,   331,   179,   313,   216,   341,   178,   216,
3436
     176,   216,    75,   187,   308,   295,   190,   335,   312,    16,
3437
     335,   177,   335,   335,   336,   335,   312,   180,   180,   180,
3438
     190,   179,   180,   199,   307,   314,   315,   331,   265,   313,
3439
     180,   336,   336,   312,   315,   338,   335,   178,   180,    75,
3440
     281,   335,   336,   316,   176,   179,   303,   177,   318,   216,
3441
     336,   265,   336,   180,   178,    14,   176,   179,   317,   331,
3442
     216,   336,   176,   180
3443
};
3444
3445
  /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
3446
static const yytype_int16 yyr1[] =
3447
{
3448
       0,   185,   186,   187,   187,   187,   187,   187,   187,   187,
3449
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3450
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3451
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3452
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3453
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3454
     187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
3455
     187,   187,   187,   187,   188,   188,   188,   188,   188,   188,
3456
     188,   188,   189,   189,   190,   190,   191,   191,   192,   192,
3457
     193,   193,   194,   194,   195,   195,   195,   195,   196,   196,
3458
     197,   197,   198,   199,   199,   200,   200,   200,   200,   200,
3459
     201,   201,   202,   202,   202,   202,   202,   203,   202,   204,
3460
     202,   202,   202,   202,   202,   205,   205,   206,   207,   208,
3461
     208,   209,   209,   210,   210,   211,   211,   212,   212,   213,
3462
     213,   214,   214,   215,   215,   216,   216,   217,   217,   217,
3463
     217,   218,   218,   218,   218,   218,   218,   218,   218,   218,
3464
     218,   218,   218,   218,   218,   218,   218,   218,   218,   219,
3465
     218,   218,   218,   218,   218,   218,   220,   220,   221,   221,
3466
     222,   222,   223,   223,   224,   224,   225,   226,   226,   227,
3467
     228,   228,   229,   229,   231,   230,   232,   230,   233,   233,
3468
     234,   234,   235,   235,   236,   236,   236,   238,   237,   240,
3469
     239,   242,   241,   243,   243,   244,   245,   245,   246,   246,
3470
     247,   247,   248,   248,   249,   249,   249,   249,   250,   250,
3471
     251,   251,   252,   252,   253,   253,   253,   253,   254,   254,
3472
     254,   254,   254,   255,   256,   256,   257,   257,   258,   258,
3473
     259,   259,   260,   260,   261,   261,   262,   262,   263,   263,
3474
     264,   264,   265,   265,   266,   266,   267,   267,   268,   268,
3475
     269,   269,   270,   270,   271,   271,   271,   271,   272,   272,
3476
     273,   273,   274,   274,   275,   275,   276,   276,   276,   276,
3477
     277,   277,   277,   278,   278,   279,   279,   280,   280,   281,
3478
     281,   282,   282,   283,   283,   284,   284,   284,   285,   285,
3479
     285,   286,   286,   286,   286,   286,   287,   287,   288,   288,
3480
     289,   290,   290,   291,   291,   292,   292,   293,   293,   293,
3481
     293,   293,   293,   294,   294,   294,   295,   295,   296,   296,
3482
     296,   297,   297,   298,   298,   299,   300,   300,   300,   300,
3483
     301,   301,   302,   303,   303,   304,   304,   305,   305,   306,
3484
     306,   307,   307,   308,   308,   308,   308,   308,   308,   308,
3485
     308,   308,   308,   309,   309,   310,   310,   311,   311,   312,
3486
     312,   312,   313,   313,   314,   314,   316,   315,   317,   317,
3487
     317,   318,   318,   319,   319,   320,   320,   321,   322,   322,
3488
     323,   324,   324,   324,   325,   325,   326,   326,   326,   326,
3489
     328,   327,   329,   329,   329,   330,   331,   331,   331,   331,
3490
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3491
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3492
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3493
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3494
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3495
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3496
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3497
     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
3498
     331,   331,   332,   332,   333,   334,   335,   336,   337,   338,
3499
     338,   339,   339,   340,   340,   341,   341,   342,   342,   342,
3500
     342,   343,   342,   344,   344,   345,   345,   345,   346,   346,
3501
     346,   347,   347,   348,   348,   348,   348,   349,   349,   349,
3502
     349,   349,   349,   349,   349,   350,   350,   350,   350,   350,
3503
     350,   350,   350,   350,   350,   351,   351,   351,   351,   352,
3504
     352,   353,   354,   354,   354,   354,   354,   355,   355,   356,
3505
     356,   356,   356,   357,   357,   357,   357,   357,   358,   358,
3506
     358,   358,   359,   359,   359,   360,   360,   361,   361,   361,
3507
     361,   361,   361,   362,   362,   362,   363,   363,   363,   364,
3508
     365,   365,   366,   366,   367,   367,   367,   367,   367,   367,
3509
     367,   368,   368,   368,   368,   369,   369,   369,   369,   369,
3510
     369,   369,   369,   370,   370,   370,   370,   371,   371,   371,
3511
     371,   371,   371,   371,   372,   372,   373
3512
};
3513
3514
  /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN.  */
3515
static const yytype_int8 yyr2[] =
3516
{
3517
       0,     2,     1,     1,     1,     1,     1,     1,     1,     1,
3518
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3519
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3520
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3521
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3522
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3523
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3524
       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3525
       1,     1,     1,     1,     1,     1,     2,     0,     1,     1,
3526
       1,     1,     1,     1,     1,     1,     1,     1,     1,     2,
3527
       1,     3,     5,     1,     2,     1,     1,     1,     1,     1,
3528
       1,     3,     1,     1,     2,     4,     3,     0,     6,     0,
3529
       5,     3,     4,     3,     4,     1,     1,     6,     6,     0,
3530
       1,     3,     1,     3,     1,     3,     1,     1,     2,     1,
3531
       3,     1,     3,     3,     1,     2,     0,     1,     1,     2,
3532
       4,     3,     1,     1,     5,     7,     9,     5,     3,     3,
3533
       3,     3,     3,     3,     1,     2,     6,     7,     9,     0,
3534
       6,     1,     6,     3,     2,     3,     0,     9,     1,     3,
3535
       0,     1,     0,     4,     1,     3,     1,     1,     1,    13,
3536
       0,     1,     0,     1,     0,    10,     0,     9,     1,     2,
3537
       1,     2,     0,     1,     1,     1,     1,     0,     7,     0,
3538
       8,     0,     9,     0,     2,     5,     0,     2,     0,     2,
3539
       0,     2,     0,     2,     1,     2,     4,     3,     1,     4,
3540
       1,     4,     1,     4,     3,     4,     4,     5,     0,     5,
3541
       5,     4,     4,     7,     0,     2,     1,     3,     4,     4,
3542
       1,     3,     1,     4,     5,     6,     1,     3,     6,     7,
3543
       3,     6,     2,     0,     1,     3,     2,     1,     0,     1,
3544
       7,     9,     0,     1,     1,     2,     1,     1,     1,     1,
3545
       1,     3,     3,     3,     3,     3,     1,     2,     1,     1,
3546
       1,     1,     1,     1,     3,     3,     3,     3,     3,     0,
3547
       2,     2,     4,     1,     3,     2,     4,     4,     3,     1,
3548
       3,     3,     1,     1,     3,     2,     1,     1,     3,     1,
3549
       1,     3,     1,     1,     3,     2,     0,     4,     3,     4,
3550
       5,    12,     1,     1,     2,     3,     1,     3,     1,     2,
3551
       3,     1,     2,     2,     2,     3,     3,     3,     4,     3,
3552
       1,     1,     3,     1,     3,     1,     1,     0,     1,     0,
3553
       1,     1,     2,     1,     1,     1,     1,     1,     1,     1,
3554
       1,     1,     1,     3,     1,     2,     4,     5,     7,     0,
3555
       2,     3,     0,     3,     0,     1,     0,     9,     1,     3,
3556
       3,     0,     3,     3,     1,     4,     4,     4,     3,     1,
3557
       1,     0,     3,     1,     0,     1,     3,     4,     2,     1,
3558
       0,    10,     3,     2,     3,     2,     1,     6,     5,     3,
3559
       4,     2,     2,     3,     3,     3,     3,     3,     3,     3,
3560
       3,     3,     3,     3,     3,     3,     2,     2,     2,     2,
3561
       3,     3,     3,     3,     3,     3,     3,     3,     3,     3,
3562
       3,     3,     3,     3,     3,     3,     3,     3,     2,     2,
3563
       2,     2,     3,     3,     3,     3,     3,     3,     3,     3,
3564
       3,     3,     3,     3,     1,     1,     5,     4,     3,     1,
3565
       2,     2,     2,     2,     2,     2,     2,     2,     2,     1,
3566
       3,     2,     1,     2,     4,     2,     2,     1,     2,     2,
3567
       3,     1,    13,    12,     1,     1,     0,     0,     0,     0,
3568
       1,     0,     5,     3,     1,     1,     2,     2,     2,     4,
3569
       4,     0,     3,     1,     1,     1,     1,     3,     0,     1,
3570
       1,     0,     1,     4,     3,     1,     3,     1,     1,     3,
3571
       2,     3,     1,     1,     1,     1,     1,     1,     1,     1,
3572
       1,     1,     1,     1,     1,     3,     3,     5,     5,     0,
3573
       1,     1,     1,     3,     1,     1,     1,     1,     1,     1,
3574
       3,     1,     1,     1,     4,     4,     4,     1,     1,     1,
3575
       3,     3,     1,     4,     2,     3,     3,     1,     4,     3,
3576
       3,     3,     3,     1,     3,     1,     1,     3,     1,     1,
3577
       0,     1,     3,     1,     3,     1,     4,     2,     2,     6,
3578
       4,     2,     2,     1,     2,     1,     4,     3,     3,     3,
3579
       3,     6,     3,     1,     1,     2,     1,     5,     4,     2,
3580
       2,     4,     2,     2,     1,     3,     1
3581
};
3582
3583
3584
#define yyerrok         (yyerrstatus = 0)
3585
#define yyclearin       (yychar = YYEMPTY)
3586
7.99M
#define YYEMPTY         (-2)
3587
5.13M
#define YYEOF           0
3588
3589
25.4k
#define YYACCEPT        goto yyacceptlab
3590
2.17k
#define YYABORT         goto yyabortlab
3591
18
#define YYERROR         goto yyerrorlab
3592
3593
3594
#define YYRECOVERING()  (!!yyerrstatus)
3595
3596
#define YYBACKUP(Token, Value)                                    \
3597
  do                                                              \
3598
    if (yychar == YYEMPTY)                                        \
3599
      {                                                           \
3600
        yychar = (Token);                                         \
3601
        yylval = (Value);                                         \
3602
        YYPOPSTACK (yylen);                                       \
3603
        yystate = *yyssp;                                         \
3604
        goto yybackup;                                            \
3605
      }                                                           \
3606
    else                                                          \
3607
      {                                                           \
3608
        yyerror (YY_("syntax error: cannot back up")); \
3609
        YYERROR;                                                  \
3610
      }                                                           \
3611
  while (0)
3612
3613
/* Error token number */
3614
239k
#define YYTERROR        1
3615
#define YYERRCODE       256
3616
3617
3618
3619
/* Enable debugging if requested.  */
3620
#if ZENDDEBUG
3621
3622
# ifndef YYFPRINTF
3623
#  include <stdio.h> /* INFRINGES ON USER NAME SPACE */
3624
#  define YYFPRINTF fprintf
3625
# endif
3626
3627
# define YYDPRINTF(Args)                        \
3628
do {                                            \
3629
  if (yydebug)                                  \
3630
    YYFPRINTF Args;                             \
3631
} while (0)
3632
3633
/* This macro is provided for backward compatibility. */
3634
#ifndef YY_LOCATION_PRINT
3635
# define YY_LOCATION_PRINT(File, Loc) ((void) 0)
3636
#endif
3637
3638
3639
# define YY_SYMBOL_PRINT(Title, Type, Value, Location)                    \
3640
do {                                                                      \
3641
  if (yydebug)                                                            \
3642
    {                                                                     \
3643
      YYFPRINTF (stderr, "%s ", Title);                                   \
3644
      yy_symbol_print (stderr,                                            \
3645
                  Type, Value); \
3646
      YYFPRINTF (stderr, "\n");                                           \
3647
    }                                                                     \
3648
} while (0)
3649
3650
3651
/*-----------------------------------.
3652
| Print this symbol's value on YYO.  |
3653
`-----------------------------------*/
3654
3655
static void
3656
yy_symbol_value_print (FILE *yyo, int yytype, YYSTYPE const * const yyvaluep)
3657
{
3658
  FILE *yyoutput = yyo;
3659
  YYUSE (yyoutput);
3660
  if (!yyvaluep)
3661
    return;
3662
# ifdef YYPRINT
3663
  if (yytype < YYNTOKENS)
3664
    YYPRINT (yyo, yytoknum[yytype], *yyvaluep);
3665
# endif
3666
  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
3667
  YYUSE (yytype);
3668
  YY_IGNORE_MAYBE_UNINITIALIZED_END
3669
}
3670
3671
3672
/*---------------------------.
3673
| Print this symbol on YYO.  |
3674
`---------------------------*/
3675
3676
static void
3677
yy_symbol_print (FILE *yyo, int yytype, YYSTYPE const * const yyvaluep)
3678
{
3679
  YYFPRINTF (yyo, "%s %s (",
3680
             yytype < YYNTOKENS ? "token" : "nterm", yytname[yytype]);
3681
3682
  yy_symbol_value_print (yyo, yytype, yyvaluep);
3683
  YYFPRINTF (yyo, ")");
3684
}
3685
3686
/*------------------------------------------------------------------.
3687
| yy_stack_print -- Print the state stack from its BOTTOM up to its |
3688
| TOP (included).                                                   |
3689
`------------------------------------------------------------------*/
3690
3691
static void
3692
yy_stack_print (yy_state_t *yybottom, yy_state_t *yytop)
3693
{
3694
  YYFPRINTF (stderr, "Stack now");
3695
  for (; yybottom <= yytop; yybottom++)
3696
    {
3697
      int yybot = *yybottom;
3698
      YYFPRINTF (stderr, " %d", yybot);
3699
    }
3700
  YYFPRINTF (stderr, "\n");
3701
}
3702
3703
# define YY_STACK_PRINT(Bottom, Top)                            \
3704
do {                                                            \
3705
  if (yydebug)                                                  \
3706
    yy_stack_print ((Bottom), (Top));                           \
3707
} while (0)
3708
3709
3710
/*------------------------------------------------.
3711
| Report that the YYRULE is going to be reduced.  |
3712
`------------------------------------------------*/
3713
3714
static void
3715
yy_reduce_print (yy_state_t *yyssp, YYSTYPE *yyvsp, int yyrule)
3716
{
3717
  int yylno = yyrline[yyrule];
3718
  int yynrhs = yyr2[yyrule];
3719
  int yyi;
3720
  YYFPRINTF (stderr, "Reducing stack by rule %d (line %d):\n",
3721
             yyrule - 1, yylno);
3722
  /* The symbols being reduced.  */
3723
  for (yyi = 0; yyi < yynrhs; yyi++)
3724
    {
3725
      YYFPRINTF (stderr, "   $%d = ", yyi + 1);
3726
      yy_symbol_print (stderr,
3727
                       yystos[+yyssp[yyi + 1 - yynrhs]],
3728
                       &yyvsp[(yyi + 1) - (yynrhs)]
3729
                                              );
3730
      YYFPRINTF (stderr, "\n");
3731
    }
3732
}
3733
3734
# define YY_REDUCE_PRINT(Rule)          \
3735
do {                                    \
3736
  if (yydebug)                          \
3737
    yy_reduce_print (yyssp, yyvsp, Rule); \
3738
} while (0)
3739
3740
/* Nonzero means print parse trace.  It is left uninitialized so that
3741
   multiple parsers can coexist.  */
3742
int yydebug;
3743
#else /* !ZENDDEBUG */
3744
# define YYDPRINTF(Args)
3745
# define YY_SYMBOL_PRINT(Title, Type, Value, Location)
3746
# define YY_STACK_PRINT(Bottom, Top)
3747
# define YY_REDUCE_PRINT(Rule)
3748
#endif /* !ZENDDEBUG */
3749
3750
3751
/* YYINITDEPTH -- initial size of the parser's stacks.  */
3752
#ifndef YYINITDEPTH
3753
27.6k
# define YYINITDEPTH 200
3754
#endif
3755
3756
/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
3757
   if the built-in stack extension method is used).
3758
3759
   Do not make this value too large; the results are undefined if
3760
   YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
3761
   evaluated with infinite-precision integer arithmetic.  */
3762
3763
#ifndef YYMAXDEPTH
3764
248
# define YYMAXDEPTH 10000
3765
#endif
3766
3767
3768
#if YYERROR_VERBOSE
3769
3770
# ifndef yystrlen
3771
#  if defined __GLIBC__ && defined _STRING_H
3772
2.15k
#   define yystrlen(S) (YY_CAST (YYPTRDIFF_T, strlen (S)))
3773
#  else
3774
/* Return the length of YYSTR.  */
3775
static YYPTRDIFF_T
3776
yystrlen (const char *yystr)
3777
{
3778
  YYPTRDIFF_T yylen;
3779
  for (yylen = 0; yystr[yylen]; yylen++)
3780
    continue;
3781
  return yylen;
3782
}
3783
#  endif
3784
# endif
3785
3786
# ifndef yystpcpy
3787
#  if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
3788
2.15k
#   define yystpcpy stpcpy
3789
#  else
3790
/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
3791
   YYDEST.  */
3792
static char *
3793
yystpcpy (char *yydest, const char *yysrc)
3794
{
3795
  char *yyd = yydest;
3796
  const char *yys = yysrc;
3797
3798
  while ((*yyd++ = *yys++) != '\0')
3799
    continue;
3800
3801
  return yyd - 1;
3802
}
3803
#  endif
3804
# endif
3805
3806
# ifndef yytnamerr
3807
/* Copy to YYRES the contents of YYSTR after stripping away unnecessary
3808
   quotes and backslashes, so that it's suitable for yyerror.  The
3809
   heuristic is that double-quoting is unnecessary unless the string
3810
   contains an apostrophe, a comma, or backslash (other than
3811
   backslash-backslash).  YYSTR is taken from yytname.  If YYRES is
3812
   null, do not copy; instead, return the length of what the result
3813
   would have been.  */
3814
static YYPTRDIFF_T
3815
yytnamerr (char *yyres, const char *yystr)
3816
{
3817
  if (*yystr == '"')
3818
    {
3819
      YYPTRDIFF_T yyn = 0;
3820
      char const *yyp = yystr;
3821
3822
      for (;;)
3823
        switch (*++yyp)
3824
          {
3825
          case '\'':
3826
          case ',':
3827
            goto do_not_strip_quotes;
3828
3829
          case '\\':
3830
            if (*++yyp != '\\')
3831
              goto do_not_strip_quotes;
3832
            else
3833
              goto append;
3834
3835
          append:
3836
          default:
3837
            if (yyres)
3838
              yyres[yyn] = *yyp;
3839
            yyn++;
3840
            break;
3841
3842
          case '"':
3843
            if (yyres)
3844
              yyres[yyn] = '\0';
3845
            return yyn;
3846
          }
3847
    do_not_strip_quotes: ;
3848
    }
3849
3850
  if (yyres)
3851
    return yystpcpy (yyres, yystr) - yyres;
3852
  else
3853
    return yystrlen (yystr);
3854
}
3855
# endif
3856
3857
/* Copy into *YYMSG, which is of size *YYMSG_ALLOC, an error message
3858
   about the unexpected token YYTOKEN for the state stack whose top is
3859
   YYSSP.
3860
3861
   Return 0 if *YYMSG was successfully written.  Return 1 if *YYMSG is
3862
   not large enough to hold the message.  In that case, also set
3863
   *YYMSG_ALLOC to the required number of bytes.  Return 2 if the
3864
   required number of bytes is too large to store.  */
3865
static int
3866
yysyntax_error (YYPTRDIFF_T *yymsg_alloc, char **yymsg,
3867
                yy_state_t *yyssp, int yytoken)
3868
2.15k
{
3869
2.15k
  enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
3870
  /* Internationalized format string. */
3871
2.15k
  const char *yyformat = YY_NULLPTR;
3872
  /* Arguments of yyformat: reported tokens (one for the "unexpected",
3873
     one per "expected"). */
3874
2.15k
  char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
3875
  /* Actual size of YYARG. */
3876
2.15k
  int yycount = 0;
3877
  /* Cumulated lengths of YYARG.  */
3878
2.15k
  YYPTRDIFF_T yysize = 0;
3879
3880
  /* There are many possibilities here to consider:
3881
     - If this state is a consistent state with a default action, then
3882
       the only way this function was invoked is if the default action
3883
       is an error action.  In that case, don't check for expected
3884
       tokens because there are none.
3885
     - The only way there can be no lookahead present (in yychar) is if
3886
       this state is a consistent state with a default action.  Thus,
3887
       detecting the absence of a lookahead is sufficient to determine
3888
       that there is no unexpected or expected token to report.  In that
3889
       case, just report a simple "syntax error".
3890
     - Don't assume there isn't a lookahead just because this state is a
3891
       consistent state with a default action.  There might have been a
3892
       previous inconsistent state, consistent state with a non-default
3893
       action, or user semantic action that manipulated yychar.
3894
     - Of course, the expected token list depends on states to have
3895
       correct lookahead information, and it depends on the parser not
3896
       to perform extra reductions after fetching a lookahead from the
3897
       scanner and before detecting a syntax error.  Thus, state merging
3898
       (from LALR or IELR) and default reductions corrupt the expected
3899
       token list.  However, the list is correct for canonical LR with
3900
       one exception: it will still contain any token that will not be
3901
       accepted due to an error action in a later state.
3902
  */
3903
2.15k
  if (yytoken != YYEMPTY)
3904
2.15k
    {
3905
2.15k
      int yyn = yypact[+*yyssp];
3906
2.15k
      YYPTRDIFF_T yysize0 = yytnamerr (YY_NULLPTR, yytname[yytoken]);
3907
2.15k
      yysize = yysize0;
3908
2.15k
      yyarg[yycount++] = yytname[yytoken];
3909
2.15k
      if (!yypact_value_is_default (yyn))
3910
2.15k
        {
3911
          /* Start YYX at -YYN if negative to avoid negative indexes in
3912
             YYCHECK.  In other words, skip the first -YYN actions for
3913
             this state because they are default actions.  */
3914
2.15k
          int yyxbegin = yyn < 0 ? -yyn : 0;
3915
          /* Stay within bounds of both yycheck and yytname.  */
3916
2.15k
          int yychecklim = YYLAST - yyn + 1;
3917
2.15k
          int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
3918
2.15k
          int yyx;
3919
3920
165k
          for (yyx = yyxbegin; yyx < yyxend; ++yyx)
3921
165k
            if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR
3922
8.48k
                && !yytable_value_is_error (yytable[yyx + yyn]))
3923
8.47k
              {
3924
8.47k
                if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
3925
1.46k
                  {
3926
1.46k
                    yycount = 1;
3927
1.46k
                    yysize = yysize0;
3928
1.46k
                    break;
3929
1.46k
                  }
3930
7.01k
                yyarg[yycount++] = yytname[yyx];
3931
7.01k
                {
3932
7.01k
                  YYPTRDIFF_T yysize1
3933
7.01k
                    = yysize + yytnamerr (YY_NULLPTR, yytname[yyx]);
3934
7.01k
                  if (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM)
3935
7.01k
                    yysize = yysize1;
3936
0
                  else
3937
0
                    return 2;
3938
7.01k
                }
3939
7.01k
              }
3940
2.15k
        }
3941
2.15k
    }
3942
3943
2.15k
  switch (yycount)
3944
2.15k
    {
3945
0
# define YYCASE_(N, S)                      \
3946
2.15k
      case N:                               \
3947
2.15k
        yyformat = S;                       \
3948
2.15k
      break
3949
0
    default: /* Avoid compiler warnings. */
3950
0
      YYCASE_(0, YY_("syntax error"));
3951
1.46k
      YYCASE_(1, YY_("syntax error, unexpected %s"));
3952
494
      YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s"));
3953
32
      YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s"));
3954
76
      YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s"));
3955
2.15k
      YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"));
3956
2.15k
# undef YYCASE_
3957
2.15k
    }
3958
3959
2.15k
  {
3960
    /* Don't count the "%s"s in the final size, but reserve room for
3961
       the terminator.  */
3962
2.15k
    YYPTRDIFF_T yysize1 = yysize + (yystrlen (yyformat) - 2 * yycount) + 1;
3963
2.15k
    if (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM)
3964
2.15k
      yysize = yysize1;
3965
0
    else
3966
0
      return 2;
3967
2.15k
  }
3968
3969
2.15k
  if (*yymsg_alloc < yysize)
3970
2
    {
3971
2
      *yymsg_alloc = 2 * yysize;
3972
2
      if (! (yysize <= *yymsg_alloc
3973
2
             && *yymsg_alloc <= YYSTACK_ALLOC_MAXIMUM))
3974
0
        *yymsg_alloc = YYSTACK_ALLOC_MAXIMUM;
3975
2
      return 1;
3976
2
    }
3977
3978
  /* Avoid sprintf, as that infringes on the user's name space.
3979
     Don't have undefined behavior even if the translation
3980
     produced a string with the wrong number of "%s"s.  */
3981
2.15k
  {
3982
2.15k
    char *yyp = *yymsg;
3983
2.15k
    int yyi = 0;
3984
69.4k
    while ((*yyp = *yyformat) != '\0')
3985
67.3k
      if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount)
3986
3.30k
        {
3987
3.30k
          yyp += yytnamerr (yyp, yyarg[yyi++]);
3988
3.30k
          yyformat += 2;
3989
3.30k
        }
3990
64.0k
      else
3991
64.0k
        {
3992
64.0k
          ++yyp;
3993
64.0k
          ++yyformat;
3994
64.0k
        }
3995
2.15k
  }
3996
2.15k
  return 0;
3997
2.15k
}
3998
#endif /* YYERROR_VERBOSE */
3999
4000
/*-----------------------------------------------.
4001
| Release the memory associated to this symbol.  |
4002
`-----------------------------------------------*/
4003
4004
static void
4005
yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)
4006
114k
{
4007
114k
  YYUSE (yyvaluep);
4008
114k
  if (!yymsg)
4009
0
    yymsg = "Deleting";
4010
114k
  YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
4011
4012
114k
  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
4013
114k
  switch (yytype)
4014
114k
    {
4015
24
    case 73: /* "integer"  */
4016
24
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4017
24
            { zend_ast_destroy(((*yyvaluep).ast)); }
4018
24
#line 4019 "/src/php-src/Zend/zend_language_parser.c"
4019
24
        break;
4020
4021
2
    case 74: /* "floating-point number"  */
4022
2
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4023
2
            { zend_ast_destroy(((*yyvaluep).ast)); }
4024
2
#line 4025 "/src/php-src/Zend/zend_language_parser.c"
4025
2
        break;
4026
4027
380
    case 75: /* "identifier"  */
4028
380
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4029
380
            { zend_ast_destroy(((*yyvaluep).ast)); }
4030
380
#line 4031 "/src/php-src/Zend/zend_language_parser.c"
4031
380
        break;
4032
4033
4
    case 76: /* "fully qualified name"  */
4034
4
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4035
4
            { zend_ast_destroy(((*yyvaluep).ast)); }
4036
4
#line 4037 "/src/php-src/Zend/zend_language_parser.c"
4037
4
        break;
4038
4039
4
    case 77: /* "namespace-relative name"  */
4040
4
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4041
4
            { zend_ast_destroy(((*yyvaluep).ast)); }
4042
4
#line 4043 "/src/php-src/Zend/zend_language_parser.c"
4043
4
        break;
4044
4045
4
    case 78: /* "namespaced name"  */
4046
4
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4047
4
            { zend_ast_destroy(((*yyvaluep).ast)); }
4048
4
#line 4049 "/src/php-src/Zend/zend_language_parser.c"
4049
4
        break;
4050
4051
276
    case 79: /* "variable"  */
4052
276
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4053
276
            { zend_ast_destroy(((*yyvaluep).ast)); }
4054
276
#line 4055 "/src/php-src/Zend/zend_language_parser.c"
4055
276
        break;
4056
4057
0
    case 80: /* T_INLINE_HTML  */
4058
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4059
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4060
0
#line 4061 "/src/php-src/Zend/zend_language_parser.c"
4061
0
        break;
4062
4063
1.59k
    case 81: /* "string content"  */
4064
1.59k
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4065
1.59k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4066
1.59k
#line 4067 "/src/php-src/Zend/zend_language_parser.c"
4067
1.59k
        break;
4068
4069
30
    case 82: /* "quoted string"  */
4070
30
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4071
30
            { zend_ast_destroy(((*yyvaluep).ast)); }
4072
30
#line 4073 "/src/php-src/Zend/zend_language_parser.c"
4073
30
        break;
4074
4075
2
    case 83: /* "variable name"  */
4076
2
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4077
2
            { zend_ast_destroy(((*yyvaluep).ast)); }
4078
2
#line 4079 "/src/php-src/Zend/zend_language_parser.c"
4079
2
        break;
4080
4081
0
    case 84: /* "number"  */
4082
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4083
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4084
0
#line 4085 "/src/php-src/Zend/zend_language_parser.c"
4085
0
        break;
4086
4087
82
    case 190: /* identifier  */
4088
82
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4089
82
            { zend_ast_destroy(((*yyvaluep).ast)); }
4090
82
#line 4091 "/src/php-src/Zend/zend_language_parser.c"
4091
82
        break;
4092
4093
2.13k
    case 191: /* top_statement_list  */
4094
2.13k
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4095
2.13k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4096
2.13k
#line 4097 "/src/php-src/Zend/zend_language_parser.c"
4097
2.13k
        break;
4098
4099
10
    case 192: /* namespace_declaration_name  */
4100
10
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4101
10
            { zend_ast_destroy(((*yyvaluep).ast)); }
4102
10
#line 4103 "/src/php-src/Zend/zend_language_parser.c"
4103
10
        break;
4104
4105
2
    case 193: /* namespace_name  */
4106
2
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4107
2
            { zend_ast_destroy(((*yyvaluep).ast)); }
4108
2
#line 4109 "/src/php-src/Zend/zend_language_parser.c"
4109
2
        break;
4110
4111
2
    case 194: /* legacy_namespace_name  */
4112
2
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4113
2
            { zend_ast_destroy(((*yyvaluep).ast)); }
4114
2
#line 4115 "/src/php-src/Zend/zend_language_parser.c"
4115
2
        break;
4116
4117
668
    case 195: /* name  */
4118
668
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4119
668
            { zend_ast_destroy(((*yyvaluep).ast)); }
4120
668
#line 4121 "/src/php-src/Zend/zend_language_parser.c"
4121
668
        break;
4122
4123
0
    case 196: /* attribute_decl  */
4124
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4125
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4126
0
#line 4127 "/src/php-src/Zend/zend_language_parser.c"
4127
0
        break;
4128
4129
4
    case 197: /* attribute_group  */
4130
4
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4131
4
            { zend_ast_destroy(((*yyvaluep).ast)); }
4132
4
#line 4133 "/src/php-src/Zend/zend_language_parser.c"
4133
4
        break;
4134
4135
0
    case 198: /* attribute  */
4136
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4137
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4138
0
#line 4139 "/src/php-src/Zend/zend_language_parser.c"
4139
0
        break;
4140
4141
26
    case 199: /* attributes  */
4142
26
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4143
26
            { zend_ast_destroy(((*yyvaluep).ast)); }
4144
26
#line 4145 "/src/php-src/Zend/zend_language_parser.c"
4145
26
        break;
4146
4147
0
    case 200: /* attributed_statement  */
4148
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4149
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4150
0
#line 4151 "/src/php-src/Zend/zend_language_parser.c"
4151
0
        break;
4152
4153
0
    case 201: /* attributed_top_statement  */
4154
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4155
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4156
0
#line 4157 "/src/php-src/Zend/zend_language_parser.c"
4157
0
        break;
4158
4159
0
    case 202: /* top_statement  */
4160
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4161
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4162
0
#line 4163 "/src/php-src/Zend/zend_language_parser.c"
4163
0
        break;
4164
4165
0
    case 206: /* group_use_declaration  */
4166
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4167
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4168
0
#line 4169 "/src/php-src/Zend/zend_language_parser.c"
4169
0
        break;
4170
4171
0
    case 207: /* mixed_group_use_declaration  */
4172
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4173
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4174
0
#line 4175 "/src/php-src/Zend/zend_language_parser.c"
4175
0
        break;
4176
4177
2
    case 209: /* inline_use_declarations  */
4178
2
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4179
2
            { zend_ast_destroy(((*yyvaluep).ast)); }
4180
2
#line 4181 "/src/php-src/Zend/zend_language_parser.c"
4181
2
        break;
4182
4183
0
    case 210: /* unprefixed_use_declarations  */
4184
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4185
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4186
0
#line 4187 "/src/php-src/Zend/zend_language_parser.c"
4187
0
        break;
4188
4189
0
    case 211: /* use_declarations  */
4190
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4191
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4192
0
#line 4193 "/src/php-src/Zend/zend_language_parser.c"
4193
0
        break;
4194
4195
0
    case 212: /* inline_use_declaration  */
4196
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4197
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4198
0
#line 4199 "/src/php-src/Zend/zend_language_parser.c"
4199
0
        break;
4200
4201
0
    case 213: /* unprefixed_use_declaration  */
4202
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4203
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4204
0
#line 4205 "/src/php-src/Zend/zend_language_parser.c"
4205
0
        break;
4206
4207
0
    case 214: /* use_declaration  */
4208
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4209
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4210
0
#line 4211 "/src/php-src/Zend/zend_language_parser.c"
4211
0
        break;
4212
4213
4
    case 215: /* const_list  */
4214
4
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4215
4
            { zend_ast_destroy(((*yyvaluep).ast)); }
4216
4
#line 4217 "/src/php-src/Zend/zend_language_parser.c"
4217
4
        break;
4218
4219
14.8k
    case 216: /* inner_statement_list  */
4220
14.8k
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4221
14.8k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4222
14.8k
#line 4223 "/src/php-src/Zend/zend_language_parser.c"
4223
14.8k
        break;
4224
4225
0
    case 217: /* inner_statement  */
4226
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4227
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4228
0
#line 4229 "/src/php-src/Zend/zend_language_parser.c"
4229
0
        break;
4230
4231
2
    case 218: /* statement  */
4232
2
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4233
2
            { zend_ast_destroy(((*yyvaluep).ast)); }
4234
2
#line 4235 "/src/php-src/Zend/zend_language_parser.c"
4235
2
        break;
4236
4237
140
    case 220: /* catch_list  */
4238
140
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4239
140
            { zend_ast_destroy(((*yyvaluep).ast)); }
4240
140
#line 4241 "/src/php-src/Zend/zend_language_parser.c"
4241
140
        break;
4242
4243
50
    case 221: /* catch_name_list  */
4244
50
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4245
50
            { zend_ast_destroy(((*yyvaluep).ast)); }
4246
50
#line 4247 "/src/php-src/Zend/zend_language_parser.c"
4247
50
        break;
4248
4249
50
    case 222: /* optional_variable  */
4250
50
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4251
50
            { zend_ast_destroy(((*yyvaluep).ast)); }
4252
50
#line 4253 "/src/php-src/Zend/zend_language_parser.c"
4253
50
        break;
4254
4255
0
    case 223: /* finally_statement  */
4256
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4257
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4258
0
#line 4259 "/src/php-src/Zend/zend_language_parser.c"
4259
0
        break;
4260
4261
0
    case 224: /* unset_variables  */
4262
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4263
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4264
0
#line 4265 "/src/php-src/Zend/zend_language_parser.c"
4265
0
        break;
4266
4267
0
    case 225: /* unset_variable  */
4268
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4269
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4270
0
#line 4271 "/src/php-src/Zend/zend_language_parser.c"
4271
0
        break;
4272
4273
134
    case 226: /* function_name  */
4274
134
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4275
134
            { zend_ast_destroy(((*yyvaluep).ast)); }
4276
134
#line 4277 "/src/php-src/Zend/zend_language_parser.c"
4277
134
        break;
4278
4279
0
    case 227: /* function_declaration_statement  */
4280
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4281
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4282
0
#line 4283 "/src/php-src/Zend/zend_language_parser.c"
4283
0
        break;
4284
4285
0
    case 230: /* class_declaration_statement  */
4286
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4287
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4288
0
#line 4289 "/src/php-src/Zend/zend_language_parser.c"
4289
0
        break;
4290
4291
0
    case 237: /* trait_declaration_statement  */
4292
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4293
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4294
0
#line 4295 "/src/php-src/Zend/zend_language_parser.c"
4295
0
        break;
4296
4297
0
    case 239: /* interface_declaration_statement  */
4298
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4299
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4300
0
#line 4301 "/src/php-src/Zend/zend_language_parser.c"
4301
0
        break;
4302
4303
0
    case 241: /* enum_declaration_statement  */
4304
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4305
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4306
0
#line 4307 "/src/php-src/Zend/zend_language_parser.c"
4307
0
        break;
4308
4309
0
    case 243: /* enum_backing_type  */
4310
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4311
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4312
0
#line 4313 "/src/php-src/Zend/zend_language_parser.c"
4313
0
        break;
4314
4315
0
    case 244: /* enum_case  */
4316
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4317
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4318
0
#line 4319 "/src/php-src/Zend/zend_language_parser.c"
4319
0
        break;
4320
4321
0
    case 245: /* enum_case_expr  */
4322
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4323
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4324
0
#line 4325 "/src/php-src/Zend/zend_language_parser.c"
4325
0
        break;
4326
4327
150
    case 246: /* extends_from  */
4328
150
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4329
150
            { zend_ast_destroy(((*yyvaluep).ast)); }
4330
150
#line 4331 "/src/php-src/Zend/zend_language_parser.c"
4331
150
        break;
4332
4333
4
    case 247: /* interface_extends_list  */
4334
4
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4335
4
            { zend_ast_destroy(((*yyvaluep).ast)); }
4336
4
#line 4337 "/src/php-src/Zend/zend_language_parser.c"
4337
4
        break;
4338
4339
150
    case 248: /* implements_list  */
4340
150
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4341
150
            { zend_ast_destroy(((*yyvaluep).ast)); }
4342
150
#line 4343 "/src/php-src/Zend/zend_language_parser.c"
4343
150
        break;
4344
4345
116
    case 249: /* foreach_variable  */
4346
116
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4347
116
            { zend_ast_destroy(((*yyvaluep).ast)); }
4348
116
#line 4349 "/src/php-src/Zend/zend_language_parser.c"
4349
116
        break;
4350
4351
0
    case 250: /* for_statement  */
4352
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4353
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4354
0
#line 4355 "/src/php-src/Zend/zend_language_parser.c"
4355
0
        break;
4356
4357
0
    case 251: /* foreach_statement  */
4358
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4359
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4360
0
#line 4361 "/src/php-src/Zend/zend_language_parser.c"
4361
0
        break;
4362
4363
0
    case 252: /* declare_statement  */
4364
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4365
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4366
0
#line 4367 "/src/php-src/Zend/zend_language_parser.c"
4367
0
        break;
4368
4369
0
    case 253: /* switch_case_list  */
4370
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4371
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4372
0
#line 4373 "/src/php-src/Zend/zend_language_parser.c"
4373
0
        break;
4374
4375
12
    case 254: /* case_list  */
4376
12
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4377
12
            { zend_ast_destroy(((*yyvaluep).ast)); }
4378
12
#line 4379 "/src/php-src/Zend/zend_language_parser.c"
4379
12
        break;
4380
4381
0
    case 255: /* match  */
4382
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4383
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4384
0
#line 4385 "/src/php-src/Zend/zend_language_parser.c"
4385
0
        break;
4386
4387
4
    case 256: /* match_arm_list  */
4388
4
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4389
4
            { zend_ast_destroy(((*yyvaluep).ast)); }
4390
4
#line 4391 "/src/php-src/Zend/zend_language_parser.c"
4391
4
        break;
4392
4393
2
    case 257: /* non_empty_match_arm_list  */
4394
2
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4395
2
            { zend_ast_destroy(((*yyvaluep).ast)); }
4396
2
#line 4397 "/src/php-src/Zend/zend_language_parser.c"
4397
2
        break;
4398
4399
0
    case 258: /* match_arm  */
4400
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4401
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4402
0
#line 4403 "/src/php-src/Zend/zend_language_parser.c"
4403
0
        break;
4404
4405
4
    case 259: /* match_arm_cond_list  */
4406
4
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4407
4
            { zend_ast_destroy(((*yyvaluep).ast)); }
4408
4
#line 4409 "/src/php-src/Zend/zend_language_parser.c"
4409
4
        break;
4410
4411
0
    case 260: /* while_statement  */
4412
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4413
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4414
0
#line 4415 "/src/php-src/Zend/zend_language_parser.c"
4415
0
        break;
4416
4417
4
    case 261: /* if_stmt_without_else  */
4418
4
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4419
4
            { zend_ast_destroy(((*yyvaluep).ast)); }
4420
4
#line 4421 "/src/php-src/Zend/zend_language_parser.c"
4421
4
        break;
4422
4423
0
    case 262: /* if_stmt  */
4424
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4425
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4426
0
#line 4427 "/src/php-src/Zend/zend_language_parser.c"
4427
0
        break;
4428
4429
2
    case 263: /* alt_if_stmt_without_else  */
4430
2
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4431
2
            { zend_ast_destroy(((*yyvaluep).ast)); }
4432
2
#line 4433 "/src/php-src/Zend/zend_language_parser.c"
4433
2
        break;
4434
4435
0
    case 264: /* alt_if_stmt  */
4436
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4437
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4438
0
#line 4439 "/src/php-src/Zend/zend_language_parser.c"
4439
0
        break;
4440
4441
244
    case 265: /* parameter_list  */
4442
244
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4443
244
            { zend_ast_destroy(((*yyvaluep).ast)); }
4444
244
#line 4445 "/src/php-src/Zend/zend_language_parser.c"
4445
244
        break;
4446
4447
30
    case 266: /* non_empty_parameter_list  */
4448
30
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4449
30
            { zend_ast_destroy(((*yyvaluep).ast)); }
4450
30
#line 4451 "/src/php-src/Zend/zend_language_parser.c"
4451
30
        break;
4452
4453
0
    case 267: /* attributed_parameter  */
4454
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4455
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4456
0
#line 4457 "/src/php-src/Zend/zend_language_parser.c"
4457
0
        break;
4458
4459
0
    case 269: /* parameter  */
4460
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4461
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4462
0
#line 4463 "/src/php-src/Zend/zend_language_parser.c"
4463
0
        break;
4464
4465
164
    case 270: /* optional_type_without_static  */
4466
164
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4467
164
            { zend_ast_destroy(((*yyvaluep).ast)); }
4468
164
#line 4469 "/src/php-src/Zend/zend_language_parser.c"
4469
164
        break;
4470
4471
0
    case 271: /* type_expr  */
4472
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4473
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4474
0
#line 4475 "/src/php-src/Zend/zend_language_parser.c"
4475
0
        break;
4476
4477
0
    case 272: /* type  */
4478
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4479
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4480
0
#line 4481 "/src/php-src/Zend/zend_language_parser.c"
4481
0
        break;
4482
4483
0
    case 273: /* union_type_element  */
4484
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4485
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4486
0
#line 4487 "/src/php-src/Zend/zend_language_parser.c"
4487
0
        break;
4488
4489
0
    case 274: /* union_type  */
4490
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4491
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4492
0
#line 4493 "/src/php-src/Zend/zend_language_parser.c"
4493
0
        break;
4494
4495
0
    case 275: /* intersection_type  */
4496
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4497
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4498
0
#line 4499 "/src/php-src/Zend/zend_language_parser.c"
4499
0
        break;
4500
4501
0
    case 276: /* type_expr_without_static  */
4502
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4503
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4504
0
#line 4505 "/src/php-src/Zend/zend_language_parser.c"
4505
0
        break;
4506
4507
0
    case 277: /* type_without_static  */
4508
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4509
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4510
0
#line 4511 "/src/php-src/Zend/zend_language_parser.c"
4511
0
        break;
4512
4513
0
    case 278: /* union_type_without_static_element  */
4514
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4515
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4516
0
#line 4517 "/src/php-src/Zend/zend_language_parser.c"
4517
0
        break;
4518
4519
0
    case 279: /* union_type_without_static  */
4520
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4521
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4522
0
#line 4523 "/src/php-src/Zend/zend_language_parser.c"
4523
0
        break;
4524
4525
0
    case 280: /* intersection_type_without_static  */
4526
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4527
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4528
0
#line 4529 "/src/php-src/Zend/zend_language_parser.c"
4529
0
        break;
4530
4531
234
    case 281: /* return_type  */
4532
234
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4533
234
            { zend_ast_destroy(((*yyvaluep).ast)); }
4534
234
#line 4535 "/src/php-src/Zend/zend_language_parser.c"
4535
234
        break;
4536
4537
0
    case 282: /* argument_list  */
4538
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4539
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4540
0
#line 4541 "/src/php-src/Zend/zend_language_parser.c"
4541
0
        break;
4542
4543
146
    case 283: /* non_empty_argument_list  */
4544
146
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4545
146
            { zend_ast_destroy(((*yyvaluep).ast)); }
4546
146
#line 4547 "/src/php-src/Zend/zend_language_parser.c"
4547
146
        break;
4548
4549
0
    case 284: /* clone_argument_list  */
4550
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4551
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4552
0
#line 4553 "/src/php-src/Zend/zend_language_parser.c"
4553
0
        break;
4554
4555
4
    case 285: /* non_empty_clone_argument_list  */
4556
4
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4557
4
            { zend_ast_destroy(((*yyvaluep).ast)); }
4558
4
#line 4559 "/src/php-src/Zend/zend_language_parser.c"
4559
4
        break;
4560
4561
0
    case 286: /* argument_no_expr  */
4562
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4563
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4564
0
#line 4565 "/src/php-src/Zend/zend_language_parser.c"
4565
0
        break;
4566
4567
0
    case 287: /* argument  */
4568
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4569
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4570
0
#line 4571 "/src/php-src/Zend/zend_language_parser.c"
4571
0
        break;
4572
4573
0
    case 288: /* global_var_list  */
4574
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4575
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4576
0
#line 4577 "/src/php-src/Zend/zend_language_parser.c"
4577
0
        break;
4578
4579
0
    case 289: /* global_var  */
4580
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4581
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4582
0
#line 4583 "/src/php-src/Zend/zend_language_parser.c"
4583
0
        break;
4584
4585
6
    case 290: /* static_var_list  */
4586
6
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4587
6
            { zend_ast_destroy(((*yyvaluep).ast)); }
4588
6
#line 4589 "/src/php-src/Zend/zend_language_parser.c"
4589
6
        break;
4590
4591
0
    case 291: /* static_var  */
4592
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4593
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4594
0
#line 4595 "/src/php-src/Zend/zend_language_parser.c"
4595
0
        break;
4596
4597
150
    case 292: /* class_statement_list  */
4598
150
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4599
150
            { zend_ast_destroy(((*yyvaluep).ast)); }
4600
150
#line 4601 "/src/php-src/Zend/zend_language_parser.c"
4601
150
        break;
4602
4603
0
    case 293: /* attributed_class_statement  */
4604
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4605
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4606
0
#line 4607 "/src/php-src/Zend/zend_language_parser.c"
4607
0
        break;
4608
4609
0
    case 294: /* class_statement  */
4610
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4611
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4612
0
#line 4613 "/src/php-src/Zend/zend_language_parser.c"
4613
0
        break;
4614
4615
12
    case 295: /* class_name_list  */
4616
12
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4617
12
            { zend_ast_destroy(((*yyvaluep).ast)); }
4618
12
#line 4619 "/src/php-src/Zend/zend_language_parser.c"
4619
12
        break;
4620
4621
0
    case 296: /* trait_adaptations  */
4622
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4623
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4624
0
#line 4625 "/src/php-src/Zend/zend_language_parser.c"
4625
0
        break;
4626
4627
4
    case 297: /* trait_adaptation_list  */
4628
4
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4629
4
            { zend_ast_destroy(((*yyvaluep).ast)); }
4630
4
#line 4631 "/src/php-src/Zend/zend_language_parser.c"
4631
4
        break;
4632
4633
0
    case 298: /* trait_adaptation  */
4634
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4635
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4636
0
#line 4637 "/src/php-src/Zend/zend_language_parser.c"
4637
0
        break;
4638
4639
2
    case 299: /* trait_precedence  */
4640
2
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4641
2
            { zend_ast_destroy(((*yyvaluep).ast)); }
4642
2
#line 4643 "/src/php-src/Zend/zend_language_parser.c"
4643
2
        break;
4644
4645
2
    case 300: /* trait_alias  */
4646
2
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4647
2
            { zend_ast_destroy(((*yyvaluep).ast)); }
4648
2
#line 4649 "/src/php-src/Zend/zend_language_parser.c"
4649
2
        break;
4650
4651
4
    case 301: /* trait_method_reference  */
4652
4
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4653
4
            { zend_ast_destroy(((*yyvaluep).ast)); }
4654
4
#line 4655 "/src/php-src/Zend/zend_language_parser.c"
4655
4
        break;
4656
4657
2
    case 302: /* absolute_trait_method_reference  */
4658
2
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4659
2
            { zend_ast_destroy(((*yyvaluep).ast)); }
4660
2
#line 4661 "/src/php-src/Zend/zend_language_parser.c"
4661
2
        break;
4662
4663
0
    case 303: /* method_body  */
4664
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4665
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4666
0
#line 4667 "/src/php-src/Zend/zend_language_parser.c"
4667
0
        break;
4668
4669
0
    case 307: /* non_empty_member_modifiers  */
4670
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4671
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4672
0
#line 4673 "/src/php-src/Zend/zend_language_parser.c"
4673
0
        break;
4674
4675
2
    case 309: /* property_list  */
4676
2
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4677
2
            { zend_ast_destroy(((*yyvaluep).ast)); }
4678
2
#line 4679 "/src/php-src/Zend/zend_language_parser.c"
4679
2
        break;
4680
4681
0
    case 310: /* property  */
4682
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4683
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4684
0
#line 4685 "/src/php-src/Zend/zend_language_parser.c"
4685
0
        break;
4686
4687
0
    case 311: /* hooked_property  */
4688
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4689
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4690
0
#line 4691 "/src/php-src/Zend/zend_language_parser.c"
4691
0
        break;
4692
4693
84
    case 312: /* property_hook_list  */
4694
84
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4695
84
            { zend_ast_destroy(((*yyvaluep).ast)); }
4696
84
#line 4697 "/src/php-src/Zend/zend_language_parser.c"
4697
84
        break;
4698
4699
0
    case 313: /* optional_property_hook_list  */
4700
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4701
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4702
0
#line 4703 "/src/php-src/Zend/zend_language_parser.c"
4703
0
        break;
4704
4705
0
    case 315: /* property_hook  */
4706
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4707
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4708
0
#line 4709 "/src/php-src/Zend/zend_language_parser.c"
4709
0
        break;
4710
4711
0
    case 317: /* property_hook_body  */
4712
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4713
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4714
0
#line 4715 "/src/php-src/Zend/zend_language_parser.c"
4715
0
        break;
4716
4717
10
    case 318: /* optional_parameter_list  */
4718
10
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4719
10
            { zend_ast_destroy(((*yyvaluep).ast)); }
4720
10
#line 4721 "/src/php-src/Zend/zend_language_parser.c"
4721
10
        break;
4722
4723
0
    case 319: /* class_const_list  */
4724
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4725
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4726
0
#line 4727 "/src/php-src/Zend/zend_language_parser.c"
4727
0
        break;
4728
4729
0
    case 320: /* class_const_decl  */
4730
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4731
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4732
0
#line 4733 "/src/php-src/Zend/zend_language_parser.c"
4733
0
        break;
4734
4735
0
    case 321: /* const_decl  */
4736
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4737
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4738
0
#line 4739 "/src/php-src/Zend/zend_language_parser.c"
4739
0
        break;
4740
4741
24
    case 322: /* echo_expr_list  */
4742
24
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4743
24
            { zend_ast_destroy(((*yyvaluep).ast)); }
4744
24
#line 4745 "/src/php-src/Zend/zend_language_parser.c"
4745
24
        break;
4746
4747
0
    case 323: /* echo_expr  */
4748
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4749
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4750
0
#line 4751 "/src/php-src/Zend/zend_language_parser.c"
4751
0
        break;
4752
4753
122
    case 324: /* for_cond_exprs  */
4754
122
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4755
122
            { zend_ast_destroy(((*yyvaluep).ast)); }
4756
122
#line 4757 "/src/php-src/Zend/zend_language_parser.c"
4757
122
        break;
4758
4759
182
    case 325: /* for_exprs  */
4760
182
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4761
182
            { zend_ast_destroy(((*yyvaluep).ast)); }
4762
182
#line 4763 "/src/php-src/Zend/zend_language_parser.c"
4763
182
        break;
4764
4765
2
    case 326: /* non_empty_for_exprs  */
4766
2
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4767
2
            { zend_ast_destroy(((*yyvaluep).ast)); }
4768
2
#line 4769 "/src/php-src/Zend/zend_language_parser.c"
4769
2
        break;
4770
4771
0
    case 327: /* anonymous_class  */
4772
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4773
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4774
0
#line 4775 "/src/php-src/Zend/zend_language_parser.c"
4775
0
        break;
4776
4777
0
    case 329: /* new_dereferenceable  */
4778
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4779
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4780
0
#line 4781 "/src/php-src/Zend/zend_language_parser.c"
4781
0
        break;
4782
4783
0
    case 330: /* new_non_dereferenceable  */
4784
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4785
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4786
0
#line 4787 "/src/php-src/Zend/zend_language_parser.c"
4787
0
        break;
4788
4789
1.28k
    case 331: /* expr  */
4790
1.28k
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4791
1.28k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4792
1.28k
#line 4793 "/src/php-src/Zend/zend_language_parser.c"
4793
1.28k
        break;
4794
4795
0
    case 332: /* inline_function  */
4796
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4797
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4798
0
#line 4799 "/src/php-src/Zend/zend_language_parser.c"
4799
0
        break;
4800
4801
660
    case 335: /* backup_doc_comment  */
4802
660
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4803
660
            { if (((*yyvaluep).str)) zend_string_release_ex(((*yyvaluep).str), 0); }
4804
660
#line 4805 "/src/php-src/Zend/zend_language_parser.c"
4805
660
        break;
4806
4807
40
    case 339: /* lexical_vars  */
4808
40
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4809
40
            { zend_ast_destroy(((*yyvaluep).ast)); }
4810
40
#line 4811 "/src/php-src/Zend/zend_language_parser.c"
4811
40
        break;
4812
4813
2
    case 340: /* lexical_var_list  */
4814
2
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4815
2
            { zend_ast_destroy(((*yyvaluep).ast)); }
4816
2
#line 4817 "/src/php-src/Zend/zend_language_parser.c"
4817
2
        break;
4818
4819
0
    case 341: /* lexical_var  */
4820
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4821
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4822
0
#line 4823 "/src/php-src/Zend/zend_language_parser.c"
4823
0
        break;
4824
4825
0
    case 342: /* function_call  */
4826
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4827
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4828
0
#line 4829 "/src/php-src/Zend/zend_language_parser.c"
4829
0
        break;
4830
4831
52
    case 344: /* class_name  */
4832
52
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4833
52
            { zend_ast_destroy(((*yyvaluep).ast)); }
4834
52
#line 4835 "/src/php-src/Zend/zend_language_parser.c"
4835
52
        break;
4836
4837
18
    case 345: /* class_name_reference  */
4838
18
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4839
18
            { zend_ast_destroy(((*yyvaluep).ast)); }
4840
18
#line 4841 "/src/php-src/Zend/zend_language_parser.c"
4841
18
        break;
4842
4843
40
    case 346: /* backticks_expr  */
4844
40
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4845
40
            { zend_ast_destroy(((*yyvaluep).ast)); }
4846
40
#line 4847 "/src/php-src/Zend/zend_language_parser.c"
4847
40
        break;
4848
4849
6
    case 347: /* ctor_arguments  */
4850
6
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4851
6
            { zend_ast_destroy(((*yyvaluep).ast)); }
4852
6
#line 4853 "/src/php-src/Zend/zend_language_parser.c"
4853
6
        break;
4854
4855
0
    case 348: /* dereferenceable_scalar  */
4856
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4857
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4858
0
#line 4859 "/src/php-src/Zend/zend_language_parser.c"
4859
0
        break;
4860
4861
0
    case 349: /* scalar  */
4862
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4863
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4864
0
#line 4865 "/src/php-src/Zend/zend_language_parser.c"
4865
0
        break;
4866
4867
0
    case 350: /* constant  */
4868
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4869
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4870
0
#line 4871 "/src/php-src/Zend/zend_language_parser.c"
4871
0
        break;
4872
4873
0
    case 351: /* class_constant  */
4874
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4875
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4876
0
#line 4877 "/src/php-src/Zend/zend_language_parser.c"
4877
0
        break;
4878
4879
64
    case 352: /* optional_expr  */
4880
64
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4881
64
            { zend_ast_destroy(((*yyvaluep).ast)); }
4882
64
#line 4883 "/src/php-src/Zend/zend_language_parser.c"
4883
64
        break;
4884
4885
12
    case 353: /* variable_class_name  */
4886
12
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4887
12
            { zend_ast_destroy(((*yyvaluep).ast)); }
4888
12
#line 4889 "/src/php-src/Zend/zend_language_parser.c"
4889
12
        break;
4890
4891
0
    case 354: /* fully_dereferenceable  */
4892
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4893
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4894
0
#line 4895 "/src/php-src/Zend/zend_language_parser.c"
4895
0
        break;
4896
4897
124
    case 355: /* array_object_dereferenceable  */
4898
124
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4899
124
            { zend_ast_destroy(((*yyvaluep).ast)); }
4900
124
#line 4901 "/src/php-src/Zend/zend_language_parser.c"
4901
124
        break;
4902
4903
308
    case 356: /* callable_expr  */
4904
308
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4905
308
            { zend_ast_destroy(((*yyvaluep).ast)); }
4906
308
#line 4907 "/src/php-src/Zend/zend_language_parser.c"
4907
308
        break;
4908
4909
0
    case 357: /* callable_variable  */
4910
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4911
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4912
0
#line 4913 "/src/php-src/Zend/zend_language_parser.c"
4913
0
        break;
4914
4915
614
    case 358: /* variable  */
4916
614
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4917
614
            { zend_ast_destroy(((*yyvaluep).ast)); }
4918
614
#line 4919 "/src/php-src/Zend/zend_language_parser.c"
4919
614
        break;
4920
4921
0
    case 359: /* simple_variable  */
4922
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4923
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4924
0
#line 4925 "/src/php-src/Zend/zend_language_parser.c"
4925
0
        break;
4926
4927
0
    case 360: /* static_member  */
4928
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4929
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4930
0
#line 4931 "/src/php-src/Zend/zend_language_parser.c"
4931
0
        break;
4932
4933
0
    case 361: /* new_variable  */
4934
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4935
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4936
0
#line 4937 "/src/php-src/Zend/zend_language_parser.c"
4937
0
        break;
4938
4939
2
    case 362: /* member_name  */
4940
2
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4941
2
            { zend_ast_destroy(((*yyvaluep).ast)); }
4942
2
#line 4943 "/src/php-src/Zend/zend_language_parser.c"
4943
2
        break;
4944
4945
62
    case 363: /* property_name  */
4946
62
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4947
62
            { zend_ast_destroy(((*yyvaluep).ast)); }
4948
62
#line 4949 "/src/php-src/Zend/zend_language_parser.c"
4949
62
        break;
4950
4951
110
    case 364: /* array_pair_list  */
4952
110
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4953
110
            { zend_ast_destroy(((*yyvaluep).ast)); }
4954
110
#line 4955 "/src/php-src/Zend/zend_language_parser.c"
4955
110
        break;
4956
4957
0
    case 365: /* possible_array_pair  */
4958
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4959
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4960
0
#line 4961 "/src/php-src/Zend/zend_language_parser.c"
4961
0
        break;
4962
4963
112
    case 366: /* non_empty_array_pair_list  */
4964
112
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4965
112
            { zend_ast_destroy(((*yyvaluep).ast)); }
4966
112
#line 4967 "/src/php-src/Zend/zend_language_parser.c"
4967
112
        break;
4968
4969
0
    case 367: /* array_pair  */
4970
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4971
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4972
0
#line 4973 "/src/php-src/Zend/zend_language_parser.c"
4973
0
        break;
4974
4975
838
    case 368: /* encaps_list  */
4976
838
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4977
838
            { zend_ast_destroy(((*yyvaluep).ast)); }
4978
838
#line 4979 "/src/php-src/Zend/zend_language_parser.c"
4979
838
        break;
4980
4981
0
    case 369: /* encaps_var  */
4982
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4983
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4984
0
#line 4985 "/src/php-src/Zend/zend_language_parser.c"
4985
0
        break;
4986
4987
64
    case 370: /* encaps_var_offset  */
4988
64
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4989
64
            { zend_ast_destroy(((*yyvaluep).ast)); }
4990
64
#line 4991 "/src/php-src/Zend/zend_language_parser.c"
4991
64
        break;
4992
4993
0
    case 371: /* internal_functions_in_yacc  */
4994
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4995
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4996
0
#line 4997 "/src/php-src/Zend/zend_language_parser.c"
4997
0
        break;
4998
4999
2
    case 372: /* isset_variables  */
5000
2
#line 50 "/src/php-src/Zend/zend_language_parser.y"
5001
2
            { zend_ast_destroy(((*yyvaluep).ast)); }
5002
2
#line 5003 "/src/php-src/Zend/zend_language_parser.c"
5003
2
        break;
5004
5005
0
    case 373: /* isset_variable  */
5006
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
5007
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
5008
0
#line 5009 "/src/php-src/Zend/zend_language_parser.c"
5009
0
        break;
5010
5011
88.0k
      default:
5012
88.0k
        break;
5013
114k
    }
5014
114k
  YY_IGNORE_MAYBE_UNINITIALIZED_END
5015
114k
}
5016
5017
5018
5019
5020
/*----------.
5021
| yyparse.  |
5022
`----------*/
5023
5024
int
5025
yyparse (void)
5026
27.6k
{
5027
/* The lookahead symbol.  */
5028
27.6k
int yychar;
5029
5030
5031
/* The semantic value of the lookahead symbol.  */
5032
/* Default value used for initialization, for pacifying older GCCs
5033
   or non-GCC compilers.  */
5034
27.6k
YY_INITIAL_VALUE (static YYSTYPE yyval_default;)
5035
27.6k
YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
5036
5037
    /* Number of syntax errors so far.  */
5038
27.6k
    int yynerrs;
5039
5040
27.6k
    yy_state_fast_t yystate;
5041
    /* Number of tokens to shift before error messages enabled.  */
5042
27.6k
    int yyerrstatus;
5043
5044
    /* The stacks and their tools:
5045
       'yyss': related to states.
5046
       'yyvs': related to semantic values.
5047
5048
       Refer to the stacks through separate pointers, to allow yyoverflow
5049
       to reallocate them elsewhere.  */
5050
5051
    /* The state stack.  */
5052
27.6k
    yy_state_t yyssa[YYINITDEPTH];
5053
27.6k
    yy_state_t *yyss;
5054
27.6k
    yy_state_t *yyssp;
5055
5056
    /* The semantic value stack.  */
5057
27.6k
    YYSTYPE yyvsa[YYINITDEPTH];
5058
27.6k
    YYSTYPE *yyvs;
5059
27.6k
    YYSTYPE *yyvsp;
5060
5061
27.6k
    YYPTRDIFF_T yystacksize;
5062
5063
27.6k
  int yyn;
5064
27.6k
  int yyresult;
5065
  /* Lookahead token as an internal (translated) token number.  */
5066
27.6k
  int yytoken = 0;
5067
  /* The variables used to return semantic value and location from the
5068
     action routines.  */
5069
27.6k
  YYSTYPE yyval;
5070
5071
27.6k
#if YYERROR_VERBOSE
5072
  /* Buffer for error messages, and its allocated size.  */
5073
27.6k
  char yymsgbuf[128];
5074
27.6k
  char *yymsg = yymsgbuf;
5075
27.6k
  YYPTRDIFF_T yymsg_alloc = sizeof yymsgbuf;
5076
27.6k
#endif
5077
5078
6.33M
#define YYPOPSTACK(N)   (yyvsp -= (N), yyssp -= (N))
5079
5080
  /* The number of symbols on the RHS of the reduced rule.
5081
     Keep to zero when no symbol should be popped.  */
5082
27.6k
  int yylen = 0;
5083
5084
27.6k
  yyssp = yyss = yyssa;
5085
27.6k
  yyvsp = yyvs = yyvsa;
5086
27.6k
  yystacksize = YYINITDEPTH;
5087
5088
27.6k
  YYDPRINTF ((stderr, "Starting parse\n"));
5089
5090
27.6k
  yystate = 0;
5091
27.6k
  yyerrstatus = 0;
5092
27.6k
  yynerrs = 0;
5093
27.6k
  yychar = YYEMPTY; /* Cause a token to be read.  */
5094
27.6k
  goto yysetstate;
5095
5096
5097
/*------------------------------------------------------------.
5098
| yynewstate -- push a new state, which is found in yystate.  |
5099
`------------------------------------------------------------*/
5100
9.05M
yynewstate:
5101
  /* In all cases, when you get here, the value and location stacks
5102
     have just been pushed.  So pushing a state here evens the stacks.  */
5103
9.05M
  yyssp++;
5104
5105
5106
/*--------------------------------------------------------------------.
5107
| yysetstate -- set current state (the top of the stack) to yystate.  |
5108
`--------------------------------------------------------------------*/
5109
9.07M
yysetstate:
5110
9.07M
  YYDPRINTF ((stderr, "Entering state %d\n", yystate));
5111
9.07M
  YY_ASSERT (0 <= yystate && yystate < YYNSTATES);
5112
9.07M
  YY_IGNORE_USELESS_CAST_BEGIN
5113
9.07M
  *yyssp = YY_CAST (yy_state_t, yystate);
5114
9.07M
  YY_IGNORE_USELESS_CAST_END
5115
5116
9.07M
  if (yyss + yystacksize - 1 <= yyssp)
5117
#if !defined yyoverflow && !defined YYSTACK_RELOCATE
5118
    goto yyexhaustedlab;
5119
#else
5120
124
    {
5121
      /* Get the current used size of the three stacks, in elements.  */
5122
124
      YYPTRDIFF_T yysize = yyssp - yyss + 1;
5123
5124
# if defined yyoverflow
5125
      {
5126
        /* Give user a chance to reallocate the stack.  Use copies of
5127
           these so that the &'s don't force the real ones into
5128
           memory.  */
5129
        yy_state_t *yyss1 = yyss;
5130
        YYSTYPE *yyvs1 = yyvs;
5131
5132
        /* Each stack pointer address is followed by the size of the
5133
           data in use in that stack, in bytes.  This used to be a
5134
           conditional around just the two extra args, but that might
5135
           be undefined if yyoverflow is a macro.  */
5136
        yyoverflow (YY_("memory exhausted"),
5137
                    &yyss1, yysize * YYSIZEOF (*yyssp),
5138
                    &yyvs1, yysize * YYSIZEOF (*yyvsp),
5139
                    &yystacksize);
5140
        yyss = yyss1;
5141
        yyvs = yyvs1;
5142
      }
5143
# else /* defined YYSTACK_RELOCATE */
5144
      /* Extend the stack our own way.  */
5145
124
      if (YYMAXDEPTH <= yystacksize)
5146
2
        goto yyexhaustedlab;
5147
122
      yystacksize *= 2;
5148
122
      if (YYMAXDEPTH < yystacksize)
5149
2
        yystacksize = YYMAXDEPTH;
5150
5151
122
      {
5152
122
        yy_state_t *yyss1 = yyss;
5153
122
        union yyalloc *yyptr =
5154
122
          YY_CAST (union yyalloc *,
5155
122
                   YYSTACK_ALLOC (YY_CAST (YYSIZE_T, YYSTACK_BYTES (yystacksize))));
5156
122
        if (! yyptr)
5157
0
          goto yyexhaustedlab;
5158
122
        YYSTACK_RELOCATE (yyss_alloc, yyss);
5159
122
        YYSTACK_RELOCATE (yyvs_alloc, yyvs);
5160
122
# undef YYSTACK_RELOCATE
5161
122
        if (yyss1 != yyssa)
5162
72
          YYSTACK_FREE (yyss1);
5163
122
      }
5164
0
# endif
5165
5166
0
      yyssp = yyss + yysize - 1;
5167
122
      yyvsp = yyvs + yysize - 1;
5168
5169
122
      YY_IGNORE_USELESS_CAST_BEGIN
5170
122
      YYDPRINTF ((stderr, "Stack size increased to %ld\n",
5171
122
                  YY_CAST (long, yystacksize)));
5172
122
      YY_IGNORE_USELESS_CAST_END
5173
5174
122
      if (yyss + yystacksize - 1 <= yyssp)
5175
0
        YYABORT;
5176
122
    }
5177
9.07M
#endif /* !defined yyoverflow && !defined YYSTACK_RELOCATE */
5178
5179
9.07M
  if (yystate == YYFINAL)
5180
25.4k
    YYACCEPT;
5181
5182
9.05M
  goto yybackup;
5183
5184
5185
/*-----------.
5186
| yybackup.  |
5187
`-----------*/
5188
9.05M
yybackup:
5189
  /* Do appropriate processing given the current state.  Read a
5190
     lookahead token if we need one and don't already have one.  */
5191
5192
  /* First try to decide what to do without reference to lookahead token.  */
5193
9.05M
  yyn = yypact[yystate];
5194
9.05M
  if (yypact_value_is_default (yyn))
5195
3.96M
    goto yydefault;
5196
5197
  /* Not known => get a lookahead token if don't already have one.  */
5198
5199
  /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol.  */
5200
5.08M
  if (yychar == YYEMPTY)
5201
2.85M
    {
5202
2.85M
      YYDPRINTF ((stderr, "Reading a token: "));
5203
2.85M
      yychar = yylex (&yylval);
5204
2.85M
    }
5205
5206
5.08M
  if (yychar <= YYEOF)
5207
51.6k
    {
5208
51.6k
      yychar = yytoken = YYEOF;
5209
51.6k
      YYDPRINTF ((stderr, "Now at end of input.\n"));
5210
51.6k
    }
5211
5.03M
  else
5212
5.03M
    {
5213
5.03M
      yytoken = YYTRANSLATE (yychar);
5214
5.03M
      YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
5215
5.03M
    }
5216
5217
  /* If the proper action on seeing token YYTOKEN is to reduce or to
5218
     detect an error, take that action.  */
5219
5.08M
  yyn += yytoken;
5220
5.08M
  if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
5221
2.12M
    goto yydefault;
5222
2.96M
  yyn = yytable[yyn];
5223
2.96M
  if (yyn <= 0)
5224
109k
    {
5225
109k
      if (yytable_value_is_error (yyn))
5226
2
        goto yyerrlab;
5227
109k
      yyn = -yyn;
5228
109k
      goto yyreduce;
5229
109k
    }
5230
5231
  /* Count tokens shifted since error; after three, turn off error
5232
     status.  */
5233
2.85M
  if (yyerrstatus)
5234
0
    yyerrstatus--;
5235
5236
  /* Shift the lookahead token.  */
5237
2.85M
  YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
5238
2.85M
  yystate = yyn;
5239
2.85M
  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
5240
2.85M
  *++yyvsp = yylval;
5241
2.85M
  YY_IGNORE_MAYBE_UNINITIALIZED_END
5242
5243
  /* Discard the shifted token.  */
5244
2.85M
  yychar = YYEMPTY;
5245
2.85M
  goto yynewstate;
5246
5247
5248
/*-----------------------------------------------------------.
5249
| yydefault -- do the default action for the current state.  |
5250
`-----------------------------------------------------------*/
5251
6.09M
yydefault:
5252
6.09M
  yyn = yydefact[yystate];
5253
6.09M
  if (yyn == 0)
5254
2.15k
    goto yyerrlab;
5255
6.08M
  goto yyreduce;
5256
5257
5258
/*-----------------------------.
5259
| yyreduce -- do a reduction.  |
5260
`-----------------------------*/
5261
6.19M
yyreduce:
5262
  /* yyn is the number of a rule to reduce with.  */
5263
6.19M
  yylen = yyr2[yyn];
5264
5265
  /* If YYLEN is nonzero, implement the default value of the action:
5266
     '$$ = $1'.
5267
5268
     Otherwise, the following line sets YYVAL to garbage.
5269
     This behavior is undocumented and Bison
5270
     users should not rely upon it.  Assigning to YYVAL
5271
     unconditionally makes the parser a bit smaller, and it avoids a
5272
     GCC warning that YYVAL may be used uninitialized.  */
5273
6.19M
  yyval = yyvsp[1-yylen];
5274
5275
5276
6.19M
  YY_REDUCE_PRINT (yyn);
5277
6.19M
  switch (yyn)
5278
6.19M
    {
5279
25.5k
  case 2:
5280
25.5k
#line 303 "/src/php-src/Zend/zend_language_parser.y"
5281
25.5k
                                { CG(ast) = (yyvsp[0].ast); (void) zendnerrs; }
5282
25.5k
#line 5283 "/src/php-src/Zend/zend_language_parser.c"
5283
25.5k
    break;
5284
5285
19.4k
  case 84:
5286
19.4k
#line 328 "/src/php-src/Zend/zend_language_parser.y"
5287
19.4k
                         { (yyval.ast) = (yyvsp[0].ast); }
5288
19.4k
#line 5289 "/src/php-src/Zend/zend_language_parser.c"
5289
19.4k
    break;
5290
5291
3.75k
  case 85:
5292
3.75k
#line 329 "/src/php-src/Zend/zend_language_parser.y"
5293
3.75k
                               {
5294
3.75k
      zval zv;
5295
3.75k
      if (zend_lex_tstring(&zv, (yyvsp[0].ident)) == FAILURE) { YYABORT; }
5296
3.75k
      (yyval.ast) = zend_ast_create_zval(&zv);
5297
3.75k
    }
5298
0
#line 5299 "/src/php-src/Zend/zend_language_parser.c"
5299
0
    break;
5300
5301
169k
  case 86:
5302
169k
#line 337 "/src/php-src/Zend/zend_language_parser.y"
5303
169k
                                                 { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
5304
169k
#line 5305 "/src/php-src/Zend/zend_language_parser.c"
5305
169k
    break;
5306
5307
28.0k
  case 87:
5308
28.0k
#line 338 "/src/php-src/Zend/zend_language_parser.y"
5309
28.0k
                       { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_STMT_LIST); }
5310
28.0k
#line 5311 "/src/php-src/Zend/zend_language_parser.c"
5311
28.0k
    break;
5312
5313
384
  case 88:
5314
384
#line 343 "/src/php-src/Zend/zend_language_parser.y"
5315
384
                                                                                        { (yyval.ast) = (yyvsp[0].ast); }
5316
384
#line 5317 "/src/php-src/Zend/zend_language_parser.c"
5317
384
    break;
5318
5319
124
  case 89:
5320
124
#line 344 "/src/php-src/Zend/zend_language_parser.y"
5321
124
                                                                                { (yyval.ast) = (yyvsp[0].ast); }
5322
124
#line 5323 "/src/php-src/Zend/zend_language_parser.c"
5323
124
    break;
5324
5325
236
  case 90:
5326
236
#line 349 "/src/php-src/Zend/zend_language_parser.y"
5327
236
                                                                                        { (yyval.ast) = (yyvsp[0].ast); }
5328
236
#line 5329 "/src/php-src/Zend/zend_language_parser.c"
5329
236
    break;
5330
5331
190
  case 91:
5332
190
#line 350 "/src/php-src/Zend/zend_language_parser.y"
5333
190
                                                                                { (yyval.ast) = (yyvsp[0].ast); }
5334
190
#line 5335 "/src/php-src/Zend/zend_language_parser.c"
5335
190
    break;
5336
5337
266
  case 92:
5338
266
#line 355 "/src/php-src/Zend/zend_language_parser.y"
5339
266
                                                                                { (yyval.ast) = (yyvsp[0].ast); }
5340
266
#line 5341 "/src/php-src/Zend/zend_language_parser.c"
5341
266
    break;
5342
5343
44
  case 93:
5344
44
#line 356 "/src/php-src/Zend/zend_language_parser.y"
5345
44
                                                                        { (yyval.ast) = (yyvsp[0].ast); }
5346
44
#line 5347 "/src/php-src/Zend/zend_language_parser.c"
5347
44
    break;
5348
5349
150k
  case 94:
5350
150k
#line 360 "/src/php-src/Zend/zend_language_parser.y"
5351
150k
                                                                                                { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_NAME_NOT_FQ; }
5352
150k
#line 5353 "/src/php-src/Zend/zend_language_parser.c"
5353
150k
    break;
5354
5355
430
  case 95:
5356
430
#line 361 "/src/php-src/Zend/zend_language_parser.y"
5357
430
                                                                                        { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_NAME_NOT_FQ; }
5358
430
#line 5359 "/src/php-src/Zend/zend_language_parser.c"
5359
430
    break;
5360
5361
3.94k
  case 96:
5362
3.94k
#line 362 "/src/php-src/Zend/zend_language_parser.y"
5363
3.94k
                                                                                { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_NAME_FQ; }
5364
3.94k
#line 5365 "/src/php-src/Zend/zend_language_parser.c"
5365
3.94k
    break;
5366
5367
180
  case 97:
5368
180
#line 363 "/src/php-src/Zend/zend_language_parser.y"
5369
180
                                                                                        { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_NAME_RELATIVE; }
5370
180
#line 5371 "/src/php-src/Zend/zend_language_parser.c"
5371
180
    break;
5372
5373
1.38k
  case 98:
5374
1.38k
#line 368 "/src/php-src/Zend/zend_language_parser.y"
5375
1.38k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ATTRIBUTE, (yyvsp[0].ast), NULL); }
5376
1.38k
#line 5377 "/src/php-src/Zend/zend_language_parser.c"
5377
1.38k
    break;
5378
5379
509
  case 99:
5380
509
#line 370 "/src/php-src/Zend/zend_language_parser.y"
5381
509
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ATTRIBUTE, (yyvsp[-1].ast), (yyvsp[0].ast)); }
5382
509
#line 5383 "/src/php-src/Zend/zend_language_parser.c"
5383
509
    break;
5384
5385
1.85k
  case 100:
5386
1.85k
#line 375 "/src/php-src/Zend/zend_language_parser.y"
5387
1.85k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ATTRIBUTE_GROUP, (yyvsp[0].ast)); }
5388
1.85k
#line 5389 "/src/php-src/Zend/zend_language_parser.c"
5389
1.85k
    break;
5390
5391
37
  case 101:
5392
37
#line 377 "/src/php-src/Zend/zend_language_parser.y"
5393
37
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5394
37
#line 5395 "/src/php-src/Zend/zend_language_parser.c"
5395
37
    break;
5396
5397
1.84k
  case 102:
5398
1.84k
#line 381 "/src/php-src/Zend/zend_language_parser.y"
5399
1.84k
                                                                                        { (yyval.ast) = (yyvsp[-2].ast); CG(doc_comment) = (yyvsp[-3].str); }
5400
1.84k
#line 5401 "/src/php-src/Zend/zend_language_parser.c"
5401
1.84k
    break;
5402
5403
1.46k
  case 103:
5404
1.46k
#line 385 "/src/php-src/Zend/zend_language_parser.y"
5405
1.46k
                                                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ATTRIBUTE_LIST, (yyvsp[0].ast)); }
5406
1.46k
#line 5407 "/src/php-src/Zend/zend_language_parser.c"
5407
1.46k
    break;
5408
5409
382
  case 104:
5410
382
#line 386 "/src/php-src/Zend/zend_language_parser.y"
5411
382
                                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
5412
382
#line 5413 "/src/php-src/Zend/zend_language_parser.c"
5413
382
    break;
5414
5415
6.93k
  case 105:
5416
6.93k
#line 390 "/src/php-src/Zend/zend_language_parser.y"
5417
6.93k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
5418
6.93k
#line 5419 "/src/php-src/Zend/zend_language_parser.c"
5419
6.93k
    break;
5420
5421
9.86k
  case 106:
5422
9.86k
#line 391 "/src/php-src/Zend/zend_language_parser.y"
5423
9.86k
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5424
9.86k
#line 5425 "/src/php-src/Zend/zend_language_parser.c"
5425
9.86k
    break;
5426
5427
660
  case 107:
5428
660
#line 392 "/src/php-src/Zend/zend_language_parser.y"
5429
660
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5430
660
#line 5431 "/src/php-src/Zend/zend_language_parser.c"
5431
660
    break;
5432
5433
634
  case 108:
5434
634
#line 393 "/src/php-src/Zend/zend_language_parser.y"
5435
634
                                                        { (yyval.ast) = (yyvsp[0].ast); }
5436
634
#line 5437 "/src/php-src/Zend/zend_language_parser.c"
5437
634
    break;
5438
5439
379
  case 109:
5440
379
#line 394 "/src/php-src/Zend/zend_language_parser.y"
5441
379
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5442
379
#line 5443 "/src/php-src/Zend/zend_language_parser.c"
5443
379
    break;
5444
5445
18.1k
  case 110:
5446
18.1k
#line 398 "/src/php-src/Zend/zend_language_parser.y"
5447
18.1k
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5448
18.1k
#line 5449 "/src/php-src/Zend/zend_language_parser.c"
5449
18.1k
    break;
5450
5451
864
  case 111:
5452
864
#line 399 "/src/php-src/Zend/zend_language_parser.y"
5453
864
                                                                { (yyval.ast) = (yyvsp[-1].ast); }
5454
864
#line 5455 "/src/php-src/Zend/zend_language_parser.c"
5455
864
    break;
5456
5457
149k
  case 112:
5458
149k
#line 403 "/src/php-src/Zend/zend_language_parser.y"
5459
149k
                                                                                { (yyval.ast) = (yyvsp[0].ast); }
5460
149k
#line 5461 "/src/php-src/Zend/zend_language_parser.c"
5461
149k
    break;
5462
5463
18.2k
  case 113:
5464
18.2k
#line 404 "/src/php-src/Zend/zend_language_parser.y"
5465
18.2k
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5466
18.2k
#line 5467 "/src/php-src/Zend/zend_language_parser.c"
5467
18.2k
    break;
5468
5469
789
  case 114:
5470
789
#line 405 "/src/php-src/Zend/zend_language_parser.y"
5471
789
                                                        { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
5472
789
#line 5473 "/src/php-src/Zend/zend_language_parser.c"
5473
789
    break;
5474
5475
8
  case 115:
5476
8
#line 407 "/src/php-src/Zend/zend_language_parser.y"
5477
8
                        { (yyval.ast) = zend_ast_create(ZEND_AST_HALT_COMPILER,
5478
8
            zend_ast_create_zval_from_long(zend_get_scanned_file_offset()));
5479
8
        zend_stop_lexing(); }
5480
8
#line 5481 "/src/php-src/Zend/zend_language_parser.c"
5481
8
    break;
5482
5483
260
  case 116:
5484
260
#line 411 "/src/php-src/Zend/zend_language_parser.y"
5485
260
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NAMESPACE, (yyvsp[-1].ast), NULL);
5486
260
        RESET_DOC_COMMENT(); }
5487
260
#line 5488 "/src/php-src/Zend/zend_language_parser.c"
5488
260
    break;
5489
5490
248
  case 117:
5491
248
#line 413 "/src/php-src/Zend/zend_language_parser.y"
5492
248
                                                       { RESET_DOC_COMMENT(); }
5493
248
#line 5494 "/src/php-src/Zend/zend_language_parser.c"
5494
248
    break;
5495
5496
238
  case 118:
5497
238
#line 415 "/src/php-src/Zend/zend_language_parser.y"
5498
238
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NAMESPACE, (yyvsp[-4].ast), (yyvsp[-1].ast)); }
5499
238
#line 5500 "/src/php-src/Zend/zend_language_parser.c"
5500
238
    break;
5501
5502
138
  case 119:
5503
138
#line 416 "/src/php-src/Zend/zend_language_parser.y"
5504
138
                            { RESET_DOC_COMMENT(); }
5505
138
#line 5506 "/src/php-src/Zend/zend_language_parser.c"
5506
138
    break;
5507
5508
130
  case 120:
5509
130
#line 418 "/src/php-src/Zend/zend_language_parser.y"
5510
130
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NAMESPACE, NULL, (yyvsp[-1].ast)); }
5511
130
#line 5512 "/src/php-src/Zend/zend_language_parser.c"
5512
130
    break;
5513
5514
30
  case 121:
5515
30
#line 419 "/src/php-src/Zend/zend_language_parser.y"
5516
30
                                                                { (yyval.ast) = (yyvsp[-1].ast); }
5517
30
#line 5518 "/src/php-src/Zend/zend_language_parser.c"
5518
30
    break;
5519
5520
20
  case 122:
5521
20
#line 420 "/src/php-src/Zend/zend_language_parser.y"
5522
20
                                                                { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = (yyvsp[-2].num); }
5523
20
#line 5524 "/src/php-src/Zend/zend_language_parser.c"
5524
20
    break;
5525
5526
182
  case 123:
5527
182
#line 421 "/src/php-src/Zend/zend_language_parser.y"
5528
182
                                                                                { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_SYMBOL_CLASS; }
5529
182
#line 5530 "/src/php-src/Zend/zend_language_parser.c"
5530
182
    break;
5531
5532
48
  case 124:
5533
48
#line 422 "/src/php-src/Zend/zend_language_parser.y"
5534
48
                                                                        { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = (yyvsp[-2].num); }
5535
48
#line 5536 "/src/php-src/Zend/zend_language_parser.c"
5536
48
    break;
5537
5538
58
  case 125:
5539
58
#line 426 "/src/php-src/Zend/zend_language_parser.y"
5540
58
                                        { (yyval.num) = ZEND_SYMBOL_FUNCTION; }
5541
58
#line 5542 "/src/php-src/Zend/zend_language_parser.c"
5542
58
    break;
5543
5544
40
  case 126:
5545
40
#line 427 "/src/php-src/Zend/zend_language_parser.y"
5546
40
                                        { (yyval.num) = ZEND_SYMBOL_CONST; }
5547
40
#line 5548 "/src/php-src/Zend/zend_language_parser.c"
5548
40
    break;
5549
5550
20
  case 127:
5551
20
#line 432 "/src/php-src/Zend/zend_language_parser.y"
5552
20
                        { (yyval.ast) = zend_ast_create(ZEND_AST_GROUP_USE, (yyvsp[-5].ast), (yyvsp[-2].ast)); }
5553
20
#line 5554 "/src/php-src/Zend/zend_language_parser.c"
5554
20
    break;
5555
5556
30
  case 128:
5557
30
#line 437 "/src/php-src/Zend/zend_language_parser.y"
5558
30
                        { (yyval.ast) = zend_ast_create(ZEND_AST_GROUP_USE, (yyvsp[-5].ast), (yyvsp[-2].ast));}
5559
30
#line 5560 "/src/php-src/Zend/zend_language_parser.c"
5560
30
    break;
5561
5562
68
  case 131:
5563
68
#line 447 "/src/php-src/Zend/zend_language_parser.y"
5564
68
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5565
68
#line 5566 "/src/php-src/Zend/zend_language_parser.c"
5566
68
    break;
5567
5568
32
  case 132:
5569
32
#line 449 "/src/php-src/Zend/zend_language_parser.y"
5570
32
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_USE, (yyvsp[0].ast)); }
5571
32
#line 5572 "/src/php-src/Zend/zend_language_parser.c"
5572
32
    break;
5573
5574
38
  case 133:
5575
38
#line 454 "/src/php-src/Zend/zend_language_parser.y"
5576
38
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5577
38
#line 5578 "/src/php-src/Zend/zend_language_parser.c"
5578
38
    break;
5579
5580
20
  case 134:
5581
20
#line 456 "/src/php-src/Zend/zend_language_parser.y"
5582
20
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_USE, (yyvsp[0].ast)); }
5583
20
#line 5584 "/src/php-src/Zend/zend_language_parser.c"
5584
20
    break;
5585
5586
28
  case 135:
5587
28
#line 461 "/src/php-src/Zend/zend_language_parser.y"
5588
28
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5589
28
#line 5590 "/src/php-src/Zend/zend_language_parser.c"
5590
28
    break;
5591
5592
230
  case 136:
5593
230
#line 463 "/src/php-src/Zend/zend_language_parser.y"
5594
230
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_USE, (yyvsp[0].ast)); }
5595
230
#line 5596 "/src/php-src/Zend/zend_language_parser.c"
5596
230
    break;
5597
5598
70
  case 137:
5599
70
#line 467 "/src/php-src/Zend/zend_language_parser.y"
5600
70
                                           { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_SYMBOL_CLASS; }
5601
70
#line 5602 "/src/php-src/Zend/zend_language_parser.c"
5602
70
    break;
5603
5604
30
  case 138:
5605
30
#line 468 "/src/php-src/Zend/zend_language_parser.y"
5606
30
                                                    { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = (yyvsp[-1].num); }
5607
30
#line 5608 "/src/php-src/Zend/zend_language_parser.c"
5608
30
    break;
5609
5610
132
  case 139:
5611
132
#line 473 "/src/php-src/Zend/zend_language_parser.y"
5612
132
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_ELEM, (yyvsp[0].ast), NULL); }
5613
132
#line 5614 "/src/php-src/Zend/zend_language_parser.c"
5614
132
    break;
5615
5616
26
  case 140:
5617
26
#line 475 "/src/php-src/Zend/zend_language_parser.y"
5618
26
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_ELEM, (yyvsp[-2].ast), (yyvsp[0].ast)); }
5619
26
#line 5620 "/src/php-src/Zend/zend_language_parser.c"
5620
26
    break;
5621
5622
128
  case 141:
5623
128
#line 480 "/src/php-src/Zend/zend_language_parser.y"
5624
128
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_ELEM, (yyvsp[0].ast), NULL); }
5625
128
#line 5626 "/src/php-src/Zend/zend_language_parser.c"
5626
128
    break;
5627
5628
130
  case 142:
5629
130
#line 482 "/src/php-src/Zend/zend_language_parser.y"
5630
130
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_ELEM, (yyvsp[-2].ast), (yyvsp[0].ast)); }
5631
130
#line 5632 "/src/php-src/Zend/zend_language_parser.c"
5632
130
    break;
5633
5634
14
  case 143:
5635
14
#line 486 "/src/php-src/Zend/zend_language_parser.y"
5636
14
                                          { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5637
14
#line 5638 "/src/php-src/Zend/zend_language_parser.c"
5638
14
    break;
5639
5640
999
  case 144:
5641
999
#line 487 "/src/php-src/Zend/zend_language_parser.y"
5642
999
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_CONST_DECL, (yyvsp[0].ast)); }
5643
999
#line 5644 "/src/php-src/Zend/zend_language_parser.c"
5644
999
    break;
5645
5646
106k
  case 145:
5647
106k
#line 492 "/src/php-src/Zend/zend_language_parser.y"
5648
106k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
5649
106k
#line 5650 "/src/php-src/Zend/zend_language_parser.c"
5650
106k
    break;
5651
5652
83.4k
  case 146:
5653
83.4k
#line 494 "/src/php-src/Zend/zend_language_parser.y"
5654
83.4k
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_STMT_LIST); }
5655
83.4k
#line 5656 "/src/php-src/Zend/zend_language_parser.c"
5656
83.4k
    break;
5657
5658
105k
  case 147:
5659
105k
#line 499 "/src/php-src/Zend/zend_language_parser.y"
5660
105k
                          { (yyval.ast) = (yyvsp[0].ast); }
5661
105k
#line 5662 "/src/php-src/Zend/zend_language_parser.c"
5662
105k
    break;
5663
5664
318
  case 148:
5665
318
#line 500 "/src/php-src/Zend/zend_language_parser.y"
5666
318
                                                                        { (yyval.ast) = (yyvsp[0].ast); }
5667
318
#line 5668 "/src/php-src/Zend/zend_language_parser.c"
5668
318
    break;
5669
5670
8
  case 149:
5671
8
#line 501 "/src/php-src/Zend/zend_language_parser.y"
5672
8
                                                        { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
5673
8
#line 5674 "/src/php-src/Zend/zend_language_parser.c"
5674
8
    break;
5675
5676
4
  case 150:
5677
4
#line 503 "/src/php-src/Zend/zend_language_parser.y"
5678
4
                        { (yyval.ast) = NULL; zend_throw_exception(zend_ce_compile_error,
5679
4
            "__HALT_COMPILER() can only be used from the outermost scope", 0); YYERROR; }
5680
0
#line 5681 "/src/php-src/Zend/zend_language_parser.c"
5681
0
    break;
5682
5683
17.9k
  case 151:
5684
17.9k
#line 509 "/src/php-src/Zend/zend_language_parser.y"
5685
17.9k
                                             { (yyval.ast) = (yyvsp[-1].ast); }
5686
17.9k
#line 5687 "/src/php-src/Zend/zend_language_parser.c"
5687
17.9k
    break;
5688
5689
7.93k
  case 152:
5690
7.93k
#line 510 "/src/php-src/Zend/zend_language_parser.y"
5691
7.93k
                        { (yyval.ast) = (yyvsp[0].ast); }
5692
7.93k
#line 5693 "/src/php-src/Zend/zend_language_parser.c"
5693
7.93k
    break;
5694
5695
8
  case 153:
5696
8
#line 511 "/src/php-src/Zend/zend_language_parser.y"
5697
8
                            { (yyval.ast) = (yyvsp[0].ast); }
5698
8
#line 5699 "/src/php-src/Zend/zend_language_parser.c"
5699
8
    break;
5700
5701
432
  case 154:
5702
432
#line 513 "/src/php-src/Zend/zend_language_parser.y"
5703
432
                        { (yyval.ast) = zend_ast_create(ZEND_AST_WHILE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
5704
432
#line 5705 "/src/php-src/Zend/zend_language_parser.c"
5705
432
    break;
5706
5707
121
  case 155:
5708
121
#line 515 "/src/php-src/Zend/zend_language_parser.y"
5709
121
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DO_WHILE, (yyvsp[-5].ast), (yyvsp[-2].ast)); }
5710
121
#line 5711 "/src/php-src/Zend/zend_language_parser.c"
5711
121
    break;
5712
5713
4.23k
  case 156:
5714
4.23k
#line 517 "/src/php-src/Zend/zend_language_parser.y"
5715
4.23k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_FOR, (yyvsp[-6].ast), (yyvsp[-4].ast), (yyvsp[-2].ast), (yyvsp[0].ast)); }
5716
4.23k
#line 5717 "/src/php-src/Zend/zend_language_parser.c"
5717
4.23k
    break;
5718
5719
181
  case 157:
5720
181
#line 519 "/src/php-src/Zend/zend_language_parser.y"
5721
181
                        { (yyval.ast) = zend_ast_create(ZEND_AST_SWITCH, (yyvsp[-2].ast), (yyvsp[0].ast)); }
5722
181
#line 5723 "/src/php-src/Zend/zend_language_parser.c"
5723
181
    break;
5724
5725
455
  case 158:
5726
455
#line 520 "/src/php-src/Zend/zend_language_parser.y"
5727
455
                                                        { (yyval.ast) = zend_ast_create(ZEND_AST_BREAK, (yyvsp[-1].ast)); }
5728
455
#line 5729 "/src/php-src/Zend/zend_language_parser.c"
5729
455
    break;
5730
5731
106
  case 159:
5732
106
#line 521 "/src/php-src/Zend/zend_language_parser.y"
5733
106
                                                { (yyval.ast) = zend_ast_create(ZEND_AST_CONTINUE, (yyvsp[-1].ast)); }
5734
106
#line 5735 "/src/php-src/Zend/zend_language_parser.c"
5735
106
    break;
5736
5737
7.39k
  case 160:
5738
7.39k
#line 522 "/src/php-src/Zend/zend_language_parser.y"
5739
7.39k
                                                        { (yyval.ast) = zend_ast_create(ZEND_AST_RETURN, (yyvsp[-1].ast)); }
5740
7.39k
#line 5741 "/src/php-src/Zend/zend_language_parser.c"
5741
7.39k
    break;
5742
5743
443
  case 161:
5744
443
#line 523 "/src/php-src/Zend/zend_language_parser.y"
5745
443
                                                { (yyval.ast) = (yyvsp[-1].ast); }
5746
443
#line 5747 "/src/php-src/Zend/zend_language_parser.c"
5747
443
    break;
5748
5749
447
  case 162:
5750
447
#line 524 "/src/php-src/Zend/zend_language_parser.y"
5751
447
                                                { (yyval.ast) = (yyvsp[-1].ast); }
5752
447
#line 5753 "/src/php-src/Zend/zend_language_parser.c"
5753
447
    break;
5754
5755
22.3k
  case 163:
5756
22.3k
#line 525 "/src/php-src/Zend/zend_language_parser.y"
5757
22.3k
                                                        { (yyval.ast) = (yyvsp[-1].ast); }
5758
22.3k
#line 5759 "/src/php-src/Zend/zend_language_parser.c"
5759
22.3k
    break;
5760
5761
22.2k
  case 164:
5762
22.2k
#line 526 "/src/php-src/Zend/zend_language_parser.y"
5763
22.2k
                              { (yyval.ast) = zend_ast_create(ZEND_AST_ECHO, (yyvsp[0].ast)); }
5764
22.2k
#line 5765 "/src/php-src/Zend/zend_language_parser.c"
5765
22.2k
    break;
5766
5767
141k
  case 165:
5768
141k
#line 527 "/src/php-src/Zend/zend_language_parser.y"
5769
141k
                         { (yyval.ast) = (yyvsp[-1].ast); }
5770
141k
#line 5771 "/src/php-src/Zend/zend_language_parser.c"
5771
141k
    break;
5772
5773
1.97k
  case 166:
5774
1.97k
#line 528 "/src/php-src/Zend/zend_language_parser.y"
5775
1.97k
                                                                   { (yyval.ast) = (yyvsp[-3].ast); }
5776
1.97k
#line 5777 "/src/php-src/Zend/zend_language_parser.c"
5777
1.97k
    break;
5778
5779
6.42k
  case 167:
5780
6.42k
#line 530 "/src/php-src/Zend/zend_language_parser.y"
5781
6.42k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_FOREACH, (yyvsp[-4].ast), (yyvsp[-2].ast), NULL, (yyvsp[0].ast)); }
5782
6.42k
#line 5783 "/src/php-src/Zend/zend_language_parser.c"
5783
6.42k
    break;
5784
5785
727
  case 168:
5786
727
#line 533 "/src/php-src/Zend/zend_language_parser.y"
5787
727
                        { (yyval.ast) = zend_ast_create(ZEND_AST_FOREACH, (yyvsp[-6].ast), (yyvsp[-2].ast), (yyvsp[-4].ast), (yyvsp[0].ast)); }
5788
727
#line 5789 "/src/php-src/Zend/zend_language_parser.c"
5789
727
    break;
5790
5791
135
  case 169:
5792
135
#line 535 "/src/php-src/Zend/zend_language_parser.y"
5793
135
                        { if (!zend_handle_encoding_declaration((yyvsp[-1].ast))) { YYERROR; } }
5794
131
#line 5795 "/src/php-src/Zend/zend_language_parser.c"
5795
131
    break;
5796
5797
131
  case 170:
5798
131
#line 537 "/src/php-src/Zend/zend_language_parser.y"
5799
131
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DECLARE, (yyvsp[-3].ast), (yyvsp[0].ast)); }
5800
131
#line 5801 "/src/php-src/Zend/zend_language_parser.c"
5801
131
    break;
5802
5803
28.3k
  case 171:
5804
28.3k
#line 538 "/src/php-src/Zend/zend_language_parser.y"
5805
28.3k
                                              { (yyval.ast) = NULL; }
5806
28.3k
#line 5807 "/src/php-src/Zend/zend_language_parser.c"
5807
28.3k
    break;
5808
5809
12.7k
  case 172:
5810
12.7k
#line 540 "/src/php-src/Zend/zend_language_parser.y"
5811
12.7k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_TRY, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
5812
12.7k
#line 5813 "/src/php-src/Zend/zend_language_parser.c"
5813
12.7k
    break;
5814
5815
132
  case 173:
5816
132
#line 541 "/src/php-src/Zend/zend_language_parser.y"
5817
132
                                    { (yyval.ast) = zend_ast_create(ZEND_AST_GOTO, (yyvsp[-1].ast)); }
5818
132
#line 5819 "/src/php-src/Zend/zend_language_parser.c"
5819
132
    break;
5820
5821
302
  case 174:
5822
302
#line 542 "/src/php-src/Zend/zend_language_parser.y"
5823
302
                             { (yyval.ast) = zend_ast_create(ZEND_AST_LABEL, (yyvsp[-1].ast)); }
5824
302
#line 5825 "/src/php-src/Zend/zend_language_parser.c"
5825
302
    break;
5826
5827
30
  case 175:
5828
30
#line 543 "/src/php-src/Zend/zend_language_parser.y"
5829
30
                                     { (yyval.ast) = zend_ast_create(ZEND_AST_CAST_VOID, (yyvsp[-1].ast)); }
5830
30
#line 5831 "/src/php-src/Zend/zend_language_parser.c"
5831
30
    break;
5832
5833
12.9k
  case 176:
5834
12.9k
#line 548 "/src/php-src/Zend/zend_language_parser.y"
5835
12.9k
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_CATCH_LIST); }
5836
12.9k
#line 5837 "/src/php-src/Zend/zend_language_parser.c"
5837
12.9k
    break;
5838
5839
14.7k
  case 177:
5840
14.7k
#line 550 "/src/php-src/Zend/zend_language_parser.y"
5841
14.7k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-8].ast), zend_ast_create(ZEND_AST_CATCH, (yyvsp[-5].ast), (yyvsp[-4].ast), (yyvsp[-1].ast))); }
5842
14.7k
#line 5843 "/src/php-src/Zend/zend_language_parser.c"
5843
14.7k
    break;
5844
5845
14.7k
  case 178:
5846
14.7k
#line 554 "/src/php-src/Zend/zend_language_parser.y"
5847
14.7k
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_NAME_LIST, (yyvsp[0].ast)); }
5848
14.7k
#line 5849 "/src/php-src/Zend/zend_language_parser.c"
5849
14.7k
    break;
5850
5851
16
  case 179:
5852
16
#line 555 "/src/php-src/Zend/zend_language_parser.y"
5853
16
                                               { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5854
16
#line 5855 "/src/php-src/Zend/zend_language_parser.c"
5855
16
    break;
5856
5857
457
  case 180:
5858
457
#line 559 "/src/php-src/Zend/zend_language_parser.y"
5859
457
                       { (yyval.ast) = NULL; }
5860
457
#line 5861 "/src/php-src/Zend/zend_language_parser.c"
5861
457
    break;
5862
5863
14.3k
  case 181:
5864
14.3k
#line 560 "/src/php-src/Zend/zend_language_parser.y"
5865
14.3k
                           { (yyval.ast) = (yyvsp[0].ast); }
5866
14.3k
#line 5867 "/src/php-src/Zend/zend_language_parser.c"
5867
14.3k
    break;
5868
5869
12.4k
  case 182:
5870
12.4k
#line 564 "/src/php-src/Zend/zend_language_parser.y"
5871
12.4k
                       { (yyval.ast) = NULL; }
5872
12.4k
#line 5873 "/src/php-src/Zend/zend_language_parser.c"
5873
12.4k
    break;
5874
5875
390
  case 183:
5876
390
#line 565 "/src/php-src/Zend/zend_language_parser.y"
5877
390
                                                       { (yyval.ast) = (yyvsp[-1].ast); }
5878
390
#line 5879 "/src/php-src/Zend/zend_language_parser.c"
5879
390
    break;
5880
5881
1.97k
  case 184:
5882
1.97k
#line 569 "/src/php-src/Zend/zend_language_parser.y"
5883
1.97k
                               { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_STMT_LIST, (yyvsp[0].ast)); }
5884
1.97k
#line 5885 "/src/php-src/Zend/zend_language_parser.c"
5885
1.97k
    break;
5886
5887
169
  case 185:
5888
169
#line 570 "/src/php-src/Zend/zend_language_parser.y"
5889
169
                                                   { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5890
169
#line 5891 "/src/php-src/Zend/zend_language_parser.c"
5891
169
    break;
5892
5893
2.14k
  case 186:
5894
2.14k
#line 574 "/src/php-src/Zend/zend_language_parser.y"
5895
2.14k
                         { (yyval.ast) = zend_ast_create(ZEND_AST_UNSET, (yyvsp[0].ast)); }
5896
2.14k
#line 5897 "/src/php-src/Zend/zend_language_parser.c"
5897
2.14k
    break;
5898
5899
7.06k
  case 187:
5900
7.06k
#line 578 "/src/php-src/Zend/zend_language_parser.y"
5901
7.06k
                         { (yyval.ast) = (yyvsp[0].ast); }
5902
7.06k
#line 5903 "/src/php-src/Zend/zend_language_parser.c"
5903
7.06k
    break;
5904
5905
2
  case 188:
5906
2
#line 579 "/src/php-src/Zend/zend_language_parser.y"
5907
2
                           {
5908
2
      zval zv;
5909
2
      if (zend_lex_tstring(&zv, (yyvsp[0].ident)) == FAILURE) { YYABORT; }
5910
2
      (yyval.ast) = zend_ast_create_zval(&zv);
5911
2
    }
5912
0
#line 5913 "/src/php-src/Zend/zend_language_parser.c"
5913
0
    break;
5914
5915
6.93k
  case 189:
5916
6.93k
#line 589 "/src/php-src/Zend/zend_language_parser.y"
5917
6.93k
                { (yyval.ast) = zend_ast_create_decl(ZEND_AST_FUNC_DECL, (yyvsp[-11].num) | (yyvsp[0].num), (yyvsp[-12].num), (yyvsp[-9].str),
5918
6.93k
          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); }
5919
6.93k
#line 5920 "/src/php-src/Zend/zend_language_parser.c"
5920
6.93k
    break;
5921
5922
13.9k
  case 190:
5923
13.9k
#line 594 "/src/php-src/Zend/zend_language_parser.y"
5924
13.9k
                        { (yyval.num) = 0; }
5925
13.9k
#line 5926 "/src/php-src/Zend/zend_language_parser.c"
5926
13.9k
    break;
5927
5928
1.20k
  case 191:
5929
1.20k
#line 595 "/src/php-src/Zend/zend_language_parser.y"
5930
1.20k
                                                        { (yyval.num) = ZEND_PARAM_REF; }
5931
1.20k
#line 5932 "/src/php-src/Zend/zend_language_parser.c"
5932
1.20k
    break;
5933
5934
14.9k
  case 192:
5935
14.9k
#line 599 "/src/php-src/Zend/zend_language_parser.y"
5936
14.9k
                       { (yyval.num) = 0; }
5937
14.9k
#line 5938 "/src/php-src/Zend/zend_language_parser.c"
5938
14.9k
    break;
5939
5940
224
  case 193:
5941
224
#line 600 "/src/php-src/Zend/zend_language_parser.y"
5942
224
                            { (yyval.num) = ZEND_PARAM_VARIADIC; }
5943
224
#line 5944 "/src/php-src/Zend/zend_language_parser.c"
5944
224
    break;
5945
5946
395
  case 194:
5947
395
#line 604 "/src/php-src/Zend/zend_language_parser.y"
5948
395
                                        { (yyval.num) = CG(zend_lineno); }
5949
395
#line 5950 "/src/php-src/Zend/zend_language_parser.c"
5950
395
    break;
5951
5952
385
  case 195:
5953
385
#line 606 "/src/php-src/Zend/zend_language_parser.y"
5954
385
                        { (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); }
5955
385
#line 5956 "/src/php-src/Zend/zend_language_parser.c"
5956
385
    break;
5957
5958
9.61k
  case 196:
5959
9.61k
#line 607 "/src/php-src/Zend/zend_language_parser.y"
5960
9.61k
                        { (yyval.num) = CG(zend_lineno); }
5961
9.61k
#line 5962 "/src/php-src/Zend/zend_language_parser.c"
5962
9.61k
    break;
5963
5964
9.47k
  case 197:
5965
9.47k
#line 609 "/src/php-src/Zend/zend_language_parser.y"
5966
9.47k
                        { (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); }
5967
9.47k
#line 5968 "/src/php-src/Zend/zend_language_parser.c"
5968
9.47k
    break;
5969
5970
395
  case 198:
5971
395
#line 613 "/src/php-src/Zend/zend_language_parser.y"
5972
395
                                                                { (yyval.num) = (yyvsp[0].num); }
5973
395
#line 5974 "/src/php-src/Zend/zend_language_parser.c"
5974
395
    break;
5975
5976
0
  case 199:
5977
0
#line 615 "/src/php-src/Zend/zend_language_parser.y"
5978
0
                        { (yyval.num) = zend_add_class_modifier((yyvsp[-1].num), (yyvsp[0].num)); if (!(yyval.num)) { YYERROR; } }
5979
0
#line 5980 "/src/php-src/Zend/zend_language_parser.c"
5980
0
    break;
5981
5982
4
  case 200:
5983
4
#line 620 "/src/php-src/Zend/zend_language_parser.y"
5984
4
                        { (yyval.num) = zend_add_anonymous_class_modifier(0, (yyvsp[0].num)); if (!(yyval.num)) { YYERROR; } }
5985
4
#line 5986 "/src/php-src/Zend/zend_language_parser.c"
5986
4
    break;
5987
5988
4
  case 201:
5989
0
#line 622 "/src/php-src/Zend/zend_language_parser.y"
5990
0
                        { (yyval.num) = zend_add_anonymous_class_modifier((yyvsp[-1].num), (yyvsp[0].num)); if (!(yyval.num)) { YYERROR; } }
5991
0
#line 5992 "/src/php-src/Zend/zend_language_parser.c"
5992
0
    break;
5993
5994
412
  case 202:
5995
412
#line 626 "/src/php-src/Zend/zend_language_parser.y"
5996
412
                                                { (yyval.num) = 0; }
5997
412
#line 5998 "/src/php-src/Zend/zend_language_parser.c"
5998
412
    break;
5999
6000
4
  case 203:
6001
4
#line 627 "/src/php-src/Zend/zend_language_parser.y"
6002
4
                                                { (yyval.num) = (yyvsp[0].num); }
6003
4
#line 6004 "/src/php-src/Zend/zend_language_parser.c"
6004
4
    break;
6005
6006
234
  case 204:
6007
234
#line 631 "/src/php-src/Zend/zend_language_parser.y"
6008
234
                                        { (yyval.num) = ZEND_ACC_EXPLICIT_ABSTRACT_CLASS; }
6009
234
#line 6010 "/src/php-src/Zend/zend_language_parser.c"
6010
234
    break;
6011
6012
151
  case 205:
6013
151
#line 632 "/src/php-src/Zend/zend_language_parser.y"
6014
151
                                        { (yyval.num) = ZEND_ACC_FINAL; }
6015
151
#line 6016 "/src/php-src/Zend/zend_language_parser.c"
6016
151
    break;
6017
6018
14
  case 206:
6019
14
#line 633 "/src/php-src/Zend/zend_language_parser.y"
6020
14
                                        { (yyval.num) = ZEND_ACC_READONLY_CLASS|ZEND_ACC_NO_DYNAMIC_PROPERTIES; }
6021
14
#line 6022 "/src/php-src/Zend/zend_language_parser.c"
6022
14
    break;
6023
6024
664
  case 207:
6025
664
#line 637 "/src/php-src/Zend/zend_language_parser.y"
6026
664
                        { (yyval.num) = CG(zend_lineno); }
6027
664
#line 6028 "/src/php-src/Zend/zend_language_parser.c"
6028
664
    break;
6029
6030
660
  case 208:
6031
660
#line 639 "/src/php-src/Zend/zend_language_parser.y"
6032
660
                        { (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); }
6033
660
#line 6034 "/src/php-src/Zend/zend_language_parser.c"
6034
660
    break;
6035
6036
638
  case 209:
6037
638
#line 643 "/src/php-src/Zend/zend_language_parser.y"
6038
638
                            { (yyval.num) = CG(zend_lineno); }
6039
638
#line 6040 "/src/php-src/Zend/zend_language_parser.c"
6040
638
    break;
6041
6042
634
  case 210:
6043
634
#line 645 "/src/php-src/Zend/zend_language_parser.y"
6044
634
                        { (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); }
6045
634
#line 6046 "/src/php-src/Zend/zend_language_parser.c"
6046
634
    break;
6047
6048
379
  case 211:
6049
379
#line 649 "/src/php-src/Zend/zend_language_parser.y"
6050
379
                       { (yyval.num) = CG(zend_lineno); }
6051
379
#line 6052 "/src/php-src/Zend/zend_language_parser.c"
6052
379
    break;
6053
6054
379
  case 212:
6055
379
#line 651 "/src/php-src/Zend/zend_language_parser.y"
6056
379
                        { (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)); }
6057
379
#line 6058 "/src/php-src/Zend/zend_language_parser.c"
6058
379
    break;
6059
6060
221
  case 213:
6061
221
#line 655 "/src/php-src/Zend/zend_language_parser.y"
6062
221
                        { (yyval.ast) = NULL; }
6063
221
#line 6064 "/src/php-src/Zend/zend_language_parser.c"
6064
221
    break;
6065
6066
158
  case 214:
6067
158
#line 656 "/src/php-src/Zend/zend_language_parser.y"
6068
158
                              { (yyval.ast) = (yyvsp[0].ast); }
6069
158
#line 6070 "/src/php-src/Zend/zend_language_parser.c"
6070
158
    break;
6071
6072
631
  case 215:
6073
631
#line 661 "/src/php-src/Zend/zend_language_parser.y"
6074
631
                        { (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); }
6075
631
#line 6076 "/src/php-src/Zend/zend_language_parser.c"
6076
631
    break;
6077
6078
341
  case 216:
6079
341
#line 665 "/src/php-src/Zend/zend_language_parser.y"
6080
341
                        { (yyval.ast) = NULL; }
6081
341
#line 6082 "/src/php-src/Zend/zend_language_parser.c"
6082
341
    break;
6083
6084
290
  case 217:
6085
290
#line 666 "/src/php-src/Zend/zend_language_parser.y"
6086
290
                         { (yyval.ast) = (yyvsp[0].ast); }
6087
290
#line 6088 "/src/php-src/Zend/zend_language_parser.c"
6088
290
    break;
6089
6090
8.22k
  case 218:
6091
8.22k
#line 670 "/src/php-src/Zend/zend_language_parser.y"
6092
8.22k
                                                { (yyval.ast) = NULL; }
6093
8.22k
#line 6094 "/src/php-src/Zend/zend_language_parser.c"
6094
8.22k
    break;
6095
6096
2.19k
  case 219:
6097
2.19k
#line 671 "/src/php-src/Zend/zend_language_parser.y"
6098
2.19k
                                        { (yyval.ast) = (yyvsp[0].ast); }
6099
2.19k
#line 6100 "/src/php-src/Zend/zend_language_parser.c"
6100
2.19k
    break;
6101
6102
540
  case 220:
6103
540
#line 675 "/src/php-src/Zend/zend_language_parser.y"
6104
540
                                                { (yyval.ast) = NULL; }
6105
540
#line 6106 "/src/php-src/Zend/zend_language_parser.c"
6106
540
    break;
6107
6108
98
  case 221:
6109
98
#line 676 "/src/php-src/Zend/zend_language_parser.y"
6110
98
                                                { (yyval.ast) = (yyvsp[0].ast); }
6111
98
#line 6112 "/src/php-src/Zend/zend_language_parser.c"
6112
98
    break;
6113
6114
10.0k
  case 222:
6115
10.0k
#line 680 "/src/php-src/Zend/zend_language_parser.y"
6116
10.0k
                                                        { (yyval.ast) = NULL; }
6117
10.0k
#line 6118 "/src/php-src/Zend/zend_language_parser.c"
6118
10.0k
    break;
6119
6120
740
  case 223:
6121
740
#line 681 "/src/php-src/Zend/zend_language_parser.y"
6122
740
                                                { (yyval.ast) = (yyvsp[0].ast); }
6123
740
#line 6124 "/src/php-src/Zend/zend_language_parser.c"
6124
740
    break;
6125
6126
7.44k
  case 224:
6127
7.44k
#line 685 "/src/php-src/Zend/zend_language_parser.y"
6128
7.44k
                                                { (yyval.ast) = (yyvsp[0].ast); }
6129
7.44k
#line 6130 "/src/php-src/Zend/zend_language_parser.c"
6130
7.44k
    break;
6131
6132
448
  case 225:
6133
448
#line 686 "/src/php-src/Zend/zend_language_parser.y"
6134
448
                                        { (yyval.ast) = zend_ast_create(ZEND_AST_REF, (yyvsp[0].ast)); }
6135
448
#line 6136 "/src/php-src/Zend/zend_language_parser.c"
6136
448
    break;
6137
6138
56
  case 226:
6139
56
#line 687 "/src/php-src/Zend/zend_language_parser.y"
6140
56
                                               { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_ARRAY_SYNTAX_LIST; }
6141
56
#line 6142 "/src/php-src/Zend/zend_language_parser.c"
6142
56
    break;
6143
6144
46
  case 227:
6145
46
#line 688 "/src/php-src/Zend/zend_language_parser.y"
6146
46
                                        { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_ARRAY_SYNTAX_SHORT; }
6147
46
#line 6148 "/src/php-src/Zend/zend_language_parser.c"
6148
46
    break;
6149
6150
4.23k
  case 228:
6151
4.23k
#line 692 "/src/php-src/Zend/zend_language_parser.y"
6152
4.23k
                          { (yyval.ast) = (yyvsp[0].ast); }
6153
4.23k
#line 6154 "/src/php-src/Zend/zend_language_parser.c"
6154
4.23k
    break;
6155
6156
0
  case 229:
6157
0
#line 693 "/src/php-src/Zend/zend_language_parser.y"
6158
0
                                                      { (yyval.ast) = (yyvsp[-2].ast); }
6159
0
#line 6160 "/src/php-src/Zend/zend_language_parser.c"
6160
0
    break;
6161
6162
7.15k
  case 230:
6163
7.15k
#line 697 "/src/php-src/Zend/zend_language_parser.y"
6164
7.15k
                          { (yyval.ast) = (yyvsp[0].ast); }
6165
7.15k
#line 6166 "/src/php-src/Zend/zend_language_parser.c"
6166
7.15k
    break;
6167
6168
0
  case 231:
6169
0
#line 698 "/src/php-src/Zend/zend_language_parser.y"
6170
0
                                                          { (yyval.ast) = (yyvsp[-2].ast); }
6171
0
#line 6172 "/src/php-src/Zend/zend_language_parser.c"
6172
0
    break;
6173
6174
131
  case 232:
6175
131
#line 702 "/src/php-src/Zend/zend_language_parser.y"
6176
131
                          { (yyval.ast) = (yyvsp[0].ast); }
6177
131
#line 6178 "/src/php-src/Zend/zend_language_parser.c"
6178
131
    break;
6179
6180
0
  case 233:
6181
0
#line 703 "/src/php-src/Zend/zend_language_parser.y"
6182
0
                                                          { (yyval.ast) = (yyvsp[-2].ast); }
6183
0
#line 6184 "/src/php-src/Zend/zend_language_parser.c"
6184
0
    break;
6185
6186
181
  case 234:
6187
181
#line 707 "/src/php-src/Zend/zend_language_parser.y"
6188
181
                                                                        { (yyval.ast) = (yyvsp[-1].ast); }
6189
181
#line 6190 "/src/php-src/Zend/zend_language_parser.c"
6190
181
    break;
6191
6192
0
  case 235:
6193
0
#line 708 "/src/php-src/Zend/zend_language_parser.y"
6194
0
                                                                { (yyval.ast) = (yyvsp[-1].ast); }
6195
0
#line 6196 "/src/php-src/Zend/zend_language_parser.c"
6196
0
    break;
6197
6198
0
  case 236:
6199
0
#line 709 "/src/php-src/Zend/zend_language_parser.y"
6200
0
                                                        { (yyval.ast) = (yyvsp[-2].ast); }
6201
0
#line 6202 "/src/php-src/Zend/zend_language_parser.c"
6202
0
    break;
6203
6204
0
  case 237:
6205
0
#line 710 "/src/php-src/Zend/zend_language_parser.y"
6206
0
                                                        { (yyval.ast) = (yyvsp[-2].ast); }
6207
0
#line 6208 "/src/php-src/Zend/zend_language_parser.c"
6208
0
    break;
6209
6210
193
  case 238:
6211
193
#line 714 "/src/php-src/Zend/zend_language_parser.y"
6212
193
                       { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_SWITCH_LIST); }
6213
193
#line 6214 "/src/php-src/Zend/zend_language_parser.c"
6214
193
    break;
6215
6216
479
  case 239:
6217
479
#line 716 "/src/php-src/Zend/zend_language_parser.y"
6218
479
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-4].ast), zend_ast_create(ZEND_AST_SWITCH_CASE, (yyvsp[-2].ast), (yyvsp[0].ast))); }
6219
479
#line 6220 "/src/php-src/Zend/zend_language_parser.c"
6220
479
    break;
6221
6222
2
  case 240:
6223
2
#line 718 "/src/php-src/Zend/zend_language_parser.y"
6224
2
                        { (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))); }
6225
2
#line 6226 "/src/php-src/Zend/zend_language_parser.c"
6226
2
    break;
6227
6228
66
  case 241:
6229
66
#line 720 "/src/php-src/Zend/zend_language_parser.y"
6230
66
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-3].ast), zend_ast_create(ZEND_AST_SWITCH_CASE, NULL, (yyvsp[0].ast))); }
6231
66
#line 6232 "/src/php-src/Zend/zend_language_parser.c"
6232
66
    break;
6233
6234
0
  case 242:
6235
0
#line 722 "/src/php-src/Zend/zend_language_parser.y"
6236
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))); }
6237
0
#line 6238 "/src/php-src/Zend/zend_language_parser.c"
6238
0
    break;
6239
6240
418
  case 243:
6241
418
#line 728 "/src/php-src/Zend/zend_language_parser.y"
6242
418
                        { (yyval.ast) = zend_ast_create(ZEND_AST_MATCH, (yyvsp[-4].ast), (yyvsp[-1].ast)); }
6243
418
#line 6244 "/src/php-src/Zend/zend_language_parser.c"
6244
418
    break;
6245
6246
6
  case 244:
6247
6
#line 732 "/src/php-src/Zend/zend_language_parser.y"
6248
6
                       { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_MATCH_ARM_LIST); }
6249
6
#line 6250 "/src/php-src/Zend/zend_language_parser.c"
6250
6
    break;
6251
6252
416
  case 245:
6253
416
#line 733 "/src/php-src/Zend/zend_language_parser.y"
6254
416
                                                        { (yyval.ast) = (yyvsp[-1].ast); }
6255
416
#line 6256 "/src/php-src/Zend/zend_language_parser.c"
6256
416
    break;
6257
6258
418
  case 246:
6259
418
#line 737 "/src/php-src/Zend/zend_language_parser.y"
6260
418
                          { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_MATCH_ARM_LIST, (yyvsp[0].ast)); }
6261
418
#line 6262 "/src/php-src/Zend/zend_language_parser.c"
6262
418
    break;
6263
6264
736
  case 247:
6265
736
#line 738 "/src/php-src/Zend/zend_language_parser.y"
6266
736
                                                       { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6267
736
#line 6268 "/src/php-src/Zend/zend_language_parser.c"
6268
736
    break;
6269
6270
1.01k
  case 248:
6271
1.01k
#line 743 "/src/php-src/Zend/zend_language_parser.y"
6272
1.01k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_MATCH_ARM, (yyvsp[-3].ast), (yyvsp[0].ast)); }
6273
1.01k
#line 6274 "/src/php-src/Zend/zend_language_parser.c"
6274
1.01k
    break;
6275
6276
140
  case 249:
6277
140
#line 745 "/src/php-src/Zend/zend_language_parser.y"
6278
140
                        { (yyval.ast) = zend_ast_create(ZEND_AST_MATCH_ARM, NULL, (yyvsp[0].ast)); }
6279
140
#line 6280 "/src/php-src/Zend/zend_language_parser.c"
6280
140
    break;
6281
6282
1.01k
  case 250:
6283
1.01k
#line 749 "/src/php-src/Zend/zend_language_parser.y"
6284
1.01k
                     { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_EXPR_LIST, (yyvsp[0].ast)); }
6285
1.01k
#line 6286 "/src/php-src/Zend/zend_language_parser.c"
6286
1.01k
    break;
6287
6288
502
  case 251:
6289
502
#line 750 "/src/php-src/Zend/zend_language_parser.y"
6290
502
                                             { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6291
502
#line 6292 "/src/php-src/Zend/zend_language_parser.c"
6292
502
    break;
6293
6294
432
  case 252:
6295
432
#line 755 "/src/php-src/Zend/zend_language_parser.y"
6296
432
                          { (yyval.ast) = (yyvsp[0].ast); }
6297
432
#line 6298 "/src/php-src/Zend/zend_language_parser.c"
6298
432
    break;
6299
6300
0
  case 253:
6301
0
#line 756 "/src/php-src/Zend/zend_language_parser.y"
6302
0
                                                        { (yyval.ast) = (yyvsp[-2].ast); }
6303
0
#line 6304 "/src/php-src/Zend/zend_language_parser.c"
6304
0
    break;
6305
6306
7.93k
  case 254:
6307
7.93k
#line 762 "/src/php-src/Zend/zend_language_parser.y"
6308
7.93k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_IF,
6309
7.93k
            zend_ast_create(ZEND_AST_IF_ELEM, (yyvsp[-2].ast), (yyvsp[0].ast))); }
6310
7.93k
#line 6311 "/src/php-src/Zend/zend_language_parser.c"
6311
7.93k
    break;
6312
6313
99
  case 255:
6314
99
#line 765 "/src/php-src/Zend/zend_language_parser.y"
6315
99
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-5].ast),
6316
99
            zend_ast_create(ZEND_AST_IF_ELEM, (yyvsp[-2].ast), (yyvsp[0].ast))); }
6317
99
#line 6318 "/src/php-src/Zend/zend_language_parser.c"
6318
99
    break;
6319
6320
7.28k
  case 256:
6321
7.28k
#line 770 "/src/php-src/Zend/zend_language_parser.y"
6322
7.28k
                                                    { (yyval.ast) = (yyvsp[0].ast); }
6323
7.28k
#line 6324 "/src/php-src/Zend/zend_language_parser.c"
6324
7.28k
    break;
6325
6326
646
  case 257:
6327
646
#line 772 "/src/php-src/Zend/zend_language_parser.y"
6328
646
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), zend_ast_create(ZEND_AST_IF_ELEM, NULL, (yyvsp[0].ast))); }
6329
646
#line 6330 "/src/php-src/Zend/zend_language_parser.c"
6330
646
    break;
6331
6332
10
  case 258:
6333
10
#line 777 "/src/php-src/Zend/zend_language_parser.y"
6334
10
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_IF,
6335
10
            zend_ast_create(ZEND_AST_IF_ELEM, (yyvsp[-3].ast), (yyvsp[0].ast))); }
6336
10
#line 6337 "/src/php-src/Zend/zend_language_parser.c"
6337
10
    break;
6338
6339
2
  case 259:
6340
2
#line 780 "/src/php-src/Zend/zend_language_parser.y"
6341
2
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-6].ast),
6342
2
            zend_ast_create(ZEND_AST_IF_ELEM, (yyvsp[-3].ast), (yyvsp[0].ast))); }
6343
2
#line 6344 "/src/php-src/Zend/zend_language_parser.c"
6344
2
    break;
6345
6346
2
  case 260:
6347
2
#line 785 "/src/php-src/Zend/zend_language_parser.y"
6348
2
                                                     { (yyval.ast) = (yyvsp[-2].ast); }
6349
2
#line 6350 "/src/php-src/Zend/zend_language_parser.c"
6350
2
    break;
6351
6352
6
  case 261:
6353
6
#line 787 "/src/php-src/Zend/zend_language_parser.y"
6354
6
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-5].ast),
6355
6
            zend_ast_create(ZEND_AST_IF_ELEM, NULL, (yyvsp[-2].ast))); }
6356
6
#line 6357 "/src/php-src/Zend/zend_language_parser.c"
6357
6
    break;
6358
6359
10.6k
  case 262:
6360
10.6k
#line 792 "/src/php-src/Zend/zend_language_parser.y"
6361
10.6k
                                                        { (yyval.ast) = (yyvsp[-1].ast); }
6362
10.6k
#line 6363 "/src/php-src/Zend/zend_language_parser.c"
6363
10.6k
    break;
6364
6365
12.6k
  case 263:
6366
12.6k
#line 793 "/src/php-src/Zend/zend_language_parser.y"
6367
12.6k
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_PARAM_LIST); }
6368
12.6k
#line 6369 "/src/php-src/Zend/zend_language_parser.c"
6369
12.6k
    break;
6370
6371
10.6k
  case 264:
6372
10.6k
#line 799 "/src/php-src/Zend/zend_language_parser.y"
6373
10.6k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_PARAM_LIST, (yyvsp[0].ast)); }
6374
10.6k
#line 6375 "/src/php-src/Zend/zend_language_parser.c"
6375
10.6k
    break;
6376
6377
4.34k
  case 265:
6378
4.34k
#line 801 "/src/php-src/Zend/zend_language_parser.y"
6379
4.34k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6380
4.34k
#line 6381 "/src/php-src/Zend/zend_language_parser.c"
6381
4.34k
    break;
6382
6383
90
  case 266:
6384
90
#line 805 "/src/php-src/Zend/zend_language_parser.y"
6385
90
                                        { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
6386
90
#line 6387 "/src/php-src/Zend/zend_language_parser.c"
6387
90
    break;
6388
6389
14.9k
  case 267:
6390
14.9k
#line 806 "/src/php-src/Zend/zend_language_parser.y"
6391
14.9k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
6392
14.9k
#line 6393 "/src/php-src/Zend/zend_language_parser.c"
6393
14.9k
    break;
6394
6395
14.7k
  case 268:
6396
14.7k
#line 811 "/src/php-src/Zend/zend_language_parser.y"
6397
14.7k
                        { (yyval.num) = 0; }
6398
14.7k
#line 6399 "/src/php-src/Zend/zend_language_parser.c"
6399
14.7k
    break;
6400
6401
439
  case 269:
6402
439
#line 813 "/src/php-src/Zend/zend_language_parser.y"
6403
439
                        { (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_CPP, (yyvsp[0].ast));
6404
439
        if (!(yyval.num)) { YYERROR; } }
6405
439
#line 6406 "/src/php-src/Zend/zend_language_parser.c"
6406
439
    break;
6407
6408
13.0k
  case 270:
6409
13.0k
#line 820 "/src/php-src/Zend/zend_language_parser.y"
6410
13.0k
                        { (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,
6411
13.0k
          NULL, (yyvsp[-1].str) ? zend_ast_create_zval_from_str((yyvsp[-1].str)) : NULL, (yyvsp[0].ast)); }
6412
13.0k
#line 6413 "/src/php-src/Zend/zend_language_parser.c"
6413
13.0k
    break;
6414
6415
1.95k
  case 271:
6416
1.95k
#line 824 "/src/php-src/Zend/zend_language_parser.y"
6417
1.95k
                        { (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[-2].ast),
6418
1.95k
          NULL, (yyvsp[-1].str) ? zend_ast_create_zval_from_str((yyvsp[-1].str)) : NULL, (yyvsp[0].ast)); }
6419
1.95k
#line 6420 "/src/php-src/Zend/zend_language_parser.c"
6420
1.95k
    break;
6421
6422
14.4k
  case 272:
6423
14.4k
#line 829 "/src/php-src/Zend/zend_language_parser.y"
6424
14.4k
                        { (yyval.ast) = NULL; }
6425
14.4k
#line 6426 "/src/php-src/Zend/zend_language_parser.c"
6426
14.4k
    break;
6427
6428
7.57k
  case 273:
6429
7.57k
#line 830 "/src/php-src/Zend/zend_language_parser.y"
6430
7.57k
                                                { (yyval.ast) = (yyvsp[0].ast); }
6431
7.57k
#line 6432 "/src/php-src/Zend/zend_language_parser.c"
6432
7.57k
    break;
6433
6434
2.94k
  case 274:
6435
2.94k
#line 834 "/src/php-src/Zend/zend_language_parser.y"
6436
2.94k
                                                { (yyval.ast) = (yyvsp[0].ast); }
6437
2.94k
#line 6438 "/src/php-src/Zend/zend_language_parser.c"
6438
2.94k
    break;
6439
6440
187
  case 275:
6441
187
#line 835 "/src/php-src/Zend/zend_language_parser.y"
6442
187
                                                { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr |= ZEND_TYPE_NULLABLE; }
6443
187
#line 6444 "/src/php-src/Zend/zend_language_parser.c"
6444
187
    break;
6445
6446
386
  case 276:
6447
386
#line 836 "/src/php-src/Zend/zend_language_parser.y"
6448
386
                                                { (yyval.ast) = (yyvsp[0].ast); }
6449
386
#line 6450 "/src/php-src/Zend/zend_language_parser.c"
6450
386
    break;
6451
6452
92
  case 277:
6453
92
#line 837 "/src/php-src/Zend/zend_language_parser.y"
6454
92
                                        { (yyval.ast) = (yyvsp[0].ast); }
6455
92
#line 6456 "/src/php-src/Zend/zend_language_parser.c"
6456
92
    break;
6457
6458
4.14k
  case 278:
6459
4.14k
#line 841 "/src/php-src/Zend/zend_language_parser.y"
6460
4.14k
                                        { (yyval.ast) = (yyvsp[0].ast); }
6461
4.14k
#line 6462 "/src/php-src/Zend/zend_language_parser.c"
6462
4.14k
    break;
6463
6464
160
  case 279:
6465
160
#line 842 "/src/php-src/Zend/zend_language_parser.y"
6466
160
                                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_TYPE, IS_STATIC); }
6467
160
#line 6468 "/src/php-src/Zend/zend_language_parser.c"
6468
160
    break;
6469
6470
730
  case 280:
6471
730
#line 846 "/src/php-src/Zend/zend_language_parser.y"
6472
730
                     { (yyval.ast) = (yyvsp[0].ast); }
6473
730
#line 6474 "/src/php-src/Zend/zend_language_parser.c"
6474
730
    break;
6475
6476
120
  case 281:
6477
120
#line 847 "/src/php-src/Zend/zend_language_parser.y"
6478
120
                                           { (yyval.ast) = (yyvsp[-1].ast); }
6479
120
#line 6480 "/src/php-src/Zend/zend_language_parser.c"
6480
120
    break;
6481
6482
386
  case 282:
6483
386
#line 852 "/src/php-src/Zend/zend_language_parser.y"
6484
386
                        { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_TYPE_UNION, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6485
386
#line 6486 "/src/php-src/Zend/zend_language_parser.c"
6486
386
    break;
6487
6488
78
  case 283:
6489
78
#line 854 "/src/php-src/Zend/zend_language_parser.y"
6490
78
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6491
78
#line 6492 "/src/php-src/Zend/zend_language_parser.c"
6492
78
    break;
6493
6494
212
  case 284:
6495
212
#line 858 "/src/php-src/Zend/zend_language_parser.y"
6496
212
                                                                          { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_TYPE_INTERSECTION, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6497
212
#line 6498 "/src/php-src/Zend/zend_language_parser.c"
6498
212
    break;
6499
6500
12
  case 285:
6501
12
#line 859 "/src/php-src/Zend/zend_language_parser.y"
6502
12
                                                                                 { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6503
12
#line 6504 "/src/php-src/Zend/zend_language_parser.c"
6504
12
    break;
6505
6506
6.47k
  case 286:
6507
6.47k
#line 866 "/src/php-src/Zend/zend_language_parser.y"
6508
6.47k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
6509
6.47k
#line 6510 "/src/php-src/Zend/zend_language_parser.c"
6510
6.47k
    break;
6511
6512
503
  case 287:
6513
503
#line 867 "/src/php-src/Zend/zend_language_parser.y"
6514
503
                                                { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr |= ZEND_TYPE_NULLABLE; }
6515
503
#line 6516 "/src/php-src/Zend/zend_language_parser.c"
6516
503
    break;
6517
6518
528
  case 288:
6519
528
#line 868 "/src/php-src/Zend/zend_language_parser.y"
6520
528
                                                { (yyval.ast) = (yyvsp[0].ast); }
6521
528
#line 6522 "/src/php-src/Zend/zend_language_parser.c"
6522
528
    break;
6523
6524
72
  case 289:
6525
72
#line 869 "/src/php-src/Zend/zend_language_parser.y"
6526
72
                                                        { (yyval.ast) = (yyvsp[0].ast); }
6527
72
#line 6528 "/src/php-src/Zend/zend_language_parser.c"
6528
72
    break;
6529
6530
998
  case 290:
6531
998
#line 873 "/src/php-src/Zend/zend_language_parser.y"
6532
998
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_TYPE, IS_ARRAY); }
6533
998
#line 6534 "/src/php-src/Zend/zend_language_parser.c"
6534
998
    break;
6535
6536
52
  case 291:
6537
52
#line 874 "/src/php-src/Zend/zend_language_parser.y"
6538
52
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_TYPE, IS_CALLABLE); }
6539
52
#line 6540 "/src/php-src/Zend/zend_language_parser.c"
6540
52
    break;
6541
6542
11.5k
  case 292:
6543
11.5k
#line 875 "/src/php-src/Zend/zend_language_parser.y"
6544
11.5k
                                { (yyval.ast) = (yyvsp[0].ast); }
6545
11.5k
#line 6546 "/src/php-src/Zend/zend_language_parser.c"
6546
11.5k
    break;
6547
6548
979
  case 293:
6549
979
#line 879 "/src/php-src/Zend/zend_language_parser.y"
6550
979
                                    { (yyval.ast) = (yyvsp[0].ast); }
6551
979
#line 6552 "/src/php-src/Zend/zend_language_parser.c"
6552
979
    break;
6553
6554
166
  case 294:
6555
166
#line 880 "/src/php-src/Zend/zend_language_parser.y"
6556
166
                                                          { (yyval.ast) = (yyvsp[-1].ast); }
6557
166
#line 6558 "/src/php-src/Zend/zend_language_parser.c"
6558
166
    break;
6559
6560
528
  case 295:
6561
528
#line 885 "/src/php-src/Zend/zend_language_parser.y"
6562
528
                        { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_TYPE_UNION, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6563
528
#line 6564 "/src/php-src/Zend/zend_language_parser.c"
6564
528
    break;
6565
6566
89
  case 296:
6567
89
#line 887 "/src/php-src/Zend/zend_language_parser.y"
6568
89
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6569
89
#line 6570 "/src/php-src/Zend/zend_language_parser.c"
6570
89
    break;
6571
6572
238
  case 297:
6573
238
#line 892 "/src/php-src/Zend/zend_language_parser.y"
6574
238
                        { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_TYPE_INTERSECTION, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6575
238
#line 6576 "/src/php-src/Zend/zend_language_parser.c"
6576
238
    break;
6577
6578
10
  case 298:
6579
10
#line 894 "/src/php-src/Zend/zend_language_parser.y"
6580
10
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6581
10
#line 6582 "/src/php-src/Zend/zend_language_parser.c"
6582
10
    break;
6583
6584
19.8k
  case 299:
6585
19.8k
#line 898 "/src/php-src/Zend/zend_language_parser.y"
6586
19.8k
                        { (yyval.ast) = NULL; }
6587
19.8k
#line 6588 "/src/php-src/Zend/zend_language_parser.c"
6588
19.8k
    break;
6589
6590
3.21k
  case 300:
6591
3.21k
#line 899 "/src/php-src/Zend/zend_language_parser.y"
6592
3.21k
                                { (yyval.ast) = (yyvsp[0].ast); }
6593
3.21k
#line 6594 "/src/php-src/Zend/zend_language_parser.c"
6594
3.21k
    break;
6595
6596
29.2k
  case 301:
6597
29.2k
#line 903 "/src/php-src/Zend/zend_language_parser.y"
6598
29.2k
                        { (yyval.ast) = zend_ast_create_arg_list(0, ZEND_AST_ARG_LIST); }
6599
29.2k
#line 6600 "/src/php-src/Zend/zend_language_parser.c"
6600
29.2k
    break;
6601
6602
79.9k
  case 302:
6603
79.9k
#line 904 "/src/php-src/Zend/zend_language_parser.y"
6604
79.9k
                                                               { (yyval.ast) = (yyvsp[-2].ast); }
6605
79.9k
#line 6606 "/src/php-src/Zend/zend_language_parser.c"
6606
79.9k
    break;
6607
6608
80.1k
  case 303:
6609
80.1k
#line 909 "/src/php-src/Zend/zend_language_parser.y"
6610
80.1k
                        { (yyval.ast) = zend_ast_create_arg_list(1, ZEND_AST_ARG_LIST, (yyvsp[0].ast)); }
6611
80.1k
#line 6612 "/src/php-src/Zend/zend_language_parser.c"
6612
80.1k
    break;
6613
6614
30.3k
  case 304:
6615
30.3k
#line 911 "/src/php-src/Zend/zend_language_parser.y"
6616
30.3k
                        { (yyval.ast) = zend_ast_arg_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6617
30.3k
#line 6618 "/src/php-src/Zend/zend_language_parser.c"
6618
30.3k
    break;
6619
6620
0
  case 305:
6621
0
#line 924 "/src/php-src/Zend/zend_language_parser.y"
6622
0
                        { (yyval.ast) = zend_ast_create_arg_list(0, ZEND_AST_ARG_LIST); }
6623
0
#line 6624 "/src/php-src/Zend/zend_language_parser.c"
6624
0
    break;
6625
6626
114
  case 306:
6627
114
#line 925 "/src/php-src/Zend/zend_language_parser.y"
6628
114
                                                                     { (yyval.ast) = (yyvsp[-2].ast); }
6629
114
#line 6630 "/src/php-src/Zend/zend_language_parser.c"
6630
114
    break;
6631
6632
2
  case 307:
6633
2
#line 926 "/src/php-src/Zend/zend_language_parser.y"
6634
2
                                 { (yyval.ast) = zend_ast_create_arg_list(1, ZEND_AST_ARG_LIST, (yyvsp[-2].ast)); }
6635
2
#line 6636 "/src/php-src/Zend/zend_language_parser.c"
6636
2
    break;
6637
6638
100
  case 308:
6639
100
#line 931 "/src/php-src/Zend/zend_language_parser.y"
6640
100
                        { (yyval.ast) = zend_ast_create_arg_list(2, ZEND_AST_ARG_LIST, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6641
100
#line 6642 "/src/php-src/Zend/zend_language_parser.c"
6642
100
    break;
6643
6644
18
  case 309:
6645
18
#line 933 "/src/php-src/Zend/zend_language_parser.y"
6646
18
                        { (yyval.ast) = zend_ast_create_arg_list(1, ZEND_AST_ARG_LIST, (yyvsp[0].ast)); }
6647
18
#line 6648 "/src/php-src/Zend/zend_language_parser.c"
6648
18
    break;
6649
6650
8
  case 310:
6651
8
#line 935 "/src/php-src/Zend/zend_language_parser.y"
6652
8
                        { (yyval.ast) = zend_ast_arg_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6653
8
#line 6654 "/src/php-src/Zend/zend_language_parser.c"
6654
8
    break;
6655
6656
1.89k
  case 311:
6657
1.89k
#line 940 "/src/php-src/Zend/zend_language_parser.y"
6658
1.89k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NAMED_ARG, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6659
1.89k
#line 6660 "/src/php-src/Zend/zend_language_parser.c"
6660
1.89k
    break;
6661
6662
476
  case 312:
6663
476
#line 942 "/src/php-src/Zend/zend_language_parser.y"
6664
476
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_PLACEHOLDER_ARG, ZEND_PLACEHOLDER_VARIADIC); }
6665
476
#line 6666 "/src/php-src/Zend/zend_language_parser.c"
6666
476
    break;
6667
6668
0
  case 313:
6669
0
#line 944 "/src/php-src/Zend/zend_language_parser.y"
6670
0
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PLACEHOLDER_ARG); }
6671
0
#line 6672 "/src/php-src/Zend/zend_language_parser.c"
6672
0
    break;
6673
6674
4
  case 314:
6675
4
#line 946 "/src/php-src/Zend/zend_language_parser.y"
6676
4
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NAMED_ARG, (yyvsp[-2].ast), zend_ast_create(ZEND_AST_PLACEHOLDER_ARG)); }
6677
4
#line 6678 "/src/php-src/Zend/zend_language_parser.c"
6678
4
    break;
6679
6680
522
  case 315:
6681
522
#line 948 "/src/php-src/Zend/zend_language_parser.y"
6682
522
                        { (yyval.ast) = zend_ast_create(ZEND_AST_UNPACK, (yyvsp[0].ast)); }
6683
522
#line 6684 "/src/php-src/Zend/zend_language_parser.c"
6684
522
    break;
6685
6686
107k
  case 316:
6687
107k
#line 952 "/src/php-src/Zend/zend_language_parser.y"
6688
107k
                     { (yyval.ast) = (yyvsp[0].ast); }
6689
107k
#line 6690 "/src/php-src/Zend/zend_language_parser.c"
6690
107k
    break;
6691
6692
2.87k
  case 317:
6693
2.87k
#line 953 "/src/php-src/Zend/zend_language_parser.y"
6694
2.87k
                                 { (yyval.ast) = (yyvsp[0].ast); }
6695
2.87k
#line 6696 "/src/php-src/Zend/zend_language_parser.c"
6696
2.87k
    break;
6697
6698
55
  case 318:
6699
55
#line 957 "/src/php-src/Zend/zend_language_parser.y"
6700
55
                                               { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6701
55
#line 6702 "/src/php-src/Zend/zend_language_parser.c"
6702
55
    break;
6703
6704
443
  case 319:
6705
443
#line 958 "/src/php-src/Zend/zend_language_parser.y"
6706
443
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_STMT_LIST, (yyvsp[0].ast)); }
6707
443
#line 6708 "/src/php-src/Zend/zend_language_parser.c"
6708
443
    break;
6709
6710
498
  case 320:
6711
498
#line 963 "/src/php-src/Zend/zend_language_parser.y"
6712
498
                { (yyval.ast) = zend_ast_create(ZEND_AST_GLOBAL, zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast))); }
6713
498
#line 6714 "/src/php-src/Zend/zend_language_parser.c"
6714
498
    break;
6715
6716
10
  case 321:
6717
10
#line 968 "/src/php-src/Zend/zend_language_parser.y"
6718
10
                                               { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6719
10
#line 6720 "/src/php-src/Zend/zend_language_parser.c"
6720
10
    break;
6721
6722
453
  case 322:
6723
453
#line 969 "/src/php-src/Zend/zend_language_parser.y"
6724
453
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_STMT_LIST, (yyvsp[0].ast)); }
6725
453
#line 6726 "/src/php-src/Zend/zend_language_parser.c"
6726
453
    break;
6727
6728
54
  case 323:
6729
54
#line 973 "/src/php-src/Zend/zend_language_parser.y"
6730
54
                                                { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC, (yyvsp[0].ast), NULL); }
6731
54
#line 6732 "/src/php-src/Zend/zend_language_parser.c"
6732
54
    break;
6733
6734
409
  case 324:
6735
409
#line 974 "/src/php-src/Zend/zend_language_parser.y"
6736
409
                                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6737
409
#line 6738 "/src/php-src/Zend/zend_language_parser.c"
6738
409
    break;
6739
6740
21.3k
  case 325:
6741
21.3k
#line 979 "/src/php-src/Zend/zend_language_parser.y"
6742
21.3k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
6743
21.3k
#line 6744 "/src/php-src/Zend/zend_language_parser.c"
6744
21.3k
    break;
6745
6746
12.0k
  case 326:
6747
12.0k
#line 981 "/src/php-src/Zend/zend_language_parser.y"
6748
12.0k
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_STMT_LIST); }
6749
12.0k
#line 6750 "/src/php-src/Zend/zend_language_parser.c"
6750
12.0k
    break;
6751
6752
6.09k
  case 327:
6753
6.09k
#line 987 "/src/php-src/Zend/zend_language_parser.y"
6754
6.09k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP_GROUP, (yyvsp[-2].ast), (yyvsp[-1].ast), NULL);
6755
6.09k
        (yyval.ast)->attr = (yyvsp[-3].num); }
6756
6.09k
#line 6757 "/src/php-src/Zend/zend_language_parser.c"
6757
6.09k
    break;
6758
6759
784
  case 328:
6760
784
#line 990 "/src/php-src/Zend/zend_language_parser.y"
6761
784
                        { (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);
6762
784
        (yyval.ast)->attr = (yyvsp[-2].num); }
6763
784
#line 6764 "/src/php-src/Zend/zend_language_parser.c"
6764
784
    break;
6765
6766
1.23k
  case 329:
6767
1.23k
#line 993 "/src/php-src/Zend/zend_language_parser.y"
6768
1.23k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CLASS_CONST_GROUP, (yyvsp[-1].ast), NULL, NULL);
6769
1.23k
        (yyval.ast)->attr = (yyvsp[-3].num); }
6770
1.23k
#line 6771 "/src/php-src/Zend/zend_language_parser.c"
6771
1.23k
    break;
6772
6773
238
  case 330:
6774
238
#line 996 "/src/php-src/Zend/zend_language_parser.y"
6775
238
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CLASS_CONST_GROUP, (yyvsp[-1].ast), NULL, (yyvsp[-2].ast));
6776
238
        (yyval.ast)->attr = (yyvsp[-4].num); }
6777
238
#line 6778 "/src/php-src/Zend/zend_language_parser.c"
6778
238
    break;
6779
6780
11.5k
  case 331:
6781
11.5k
#line 1000 "/src/php-src/Zend/zend_language_parser.y"
6782
11.5k
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_METHOD, (yyvsp[-9].num) | (yyvsp[-11].num) | (yyvsp[0].num), (yyvsp[-10].num), (yyvsp[-7].str),
6783
11.5k
          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); }
6784
11.5k
#line 6785 "/src/php-src/Zend/zend_language_parser.c"
6785
11.5k
    break;
6786
6787
631
  case 332:
6788
631
#line 1002 "/src/php-src/Zend/zend_language_parser.y"
6789
631
                          { (yyval.ast) = (yyvsp[0].ast); }
6790
631
#line 6791 "/src/php-src/Zend/zend_language_parser.c"
6791
631
    break;
6792
6793
20.2k
  case 333:
6794
20.2k
#line 1006 "/src/php-src/Zend/zend_language_parser.y"
6795
20.2k
                                           { (yyval.ast) = (yyvsp[0].ast); }
6796
20.2k
#line 6797 "/src/php-src/Zend/zend_language_parser.c"
6797
20.2k
    break;
6798
6799
324
  case 334:
6800
324
#line 1007 "/src/php-src/Zend/zend_language_parser.y"
6801
324
                                                      { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
6802
324
#line 6803 "/src/php-src/Zend/zend_language_parser.c"
6803
324
    break;
6804
6805
740
  case 335:
6806
740
#line 1009 "/src/php-src/Zend/zend_language_parser.y"
6807
740
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_TRAIT, (yyvsp[-1].ast), (yyvsp[0].ast)); }
6808
740
#line 6809 "/src/php-src/Zend/zend_language_parser.c"
6809
740
    break;
6810
6811
1.65k
  case 336:
6812
1.65k
#line 1013 "/src/php-src/Zend/zend_language_parser.y"
6813
1.65k
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_NAME_LIST, (yyvsp[0].ast)); }
6814
1.65k
#line 6815 "/src/php-src/Zend/zend_language_parser.c"
6815
1.65k
    break;
6816
6817
262
  case 337:
6818
262
#line 1014 "/src/php-src/Zend/zend_language_parser.y"
6819
262
                                               { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6820
262
#line 6821 "/src/php-src/Zend/zend_language_parser.c"
6821
262
    break;
6822
6823
556
  case 338:
6824
556
#line 1018 "/src/php-src/Zend/zend_language_parser.y"
6825
556
                                                                                { (yyval.ast) = NULL; }
6826
556
#line 6827 "/src/php-src/Zend/zend_language_parser.c"
6827
556
    break;
6828
6829
6
  case 339:
6830
6
#line 1019 "/src/php-src/Zend/zend_language_parser.y"
6831
6
                                                                        { (yyval.ast) = NULL; }
6832
6
#line 6833 "/src/php-src/Zend/zend_language_parser.c"
6833
6
    break;
6834
6835
178
  case 340:
6836
178
#line 1020 "/src/php-src/Zend/zend_language_parser.y"
6837
178
                                                { (yyval.ast) = (yyvsp[-1].ast); }
6838
178
#line 6839 "/src/php-src/Zend/zend_language_parser.c"
6839
178
    break;
6840
6841
182
  case 341:
6842
182
#line 1025 "/src/php-src/Zend/zend_language_parser.y"
6843
182
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_TRAIT_ADAPTATIONS, (yyvsp[0].ast)); }
6844
182
#line 6845 "/src/php-src/Zend/zend_language_parser.c"
6845
182
    break;
6846
6847
198
  case 342:
6848
198
#line 1027 "/src/php-src/Zend/zend_language_parser.y"
6849
198
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
6850
198
#line 6851 "/src/php-src/Zend/zend_language_parser.c"
6851
198
    break;
6852
6853
60
  case 343:
6854
60
#line 1031 "/src/php-src/Zend/zend_language_parser.y"
6855
60
                                        { (yyval.ast) = (yyvsp[-1].ast); }
6856
60
#line 6857 "/src/php-src/Zend/zend_language_parser.c"
6857
60
    break;
6858
6859
320
  case 344:
6860
320
#line 1032 "/src/php-src/Zend/zend_language_parser.y"
6861
320
                                                { (yyval.ast) = (yyvsp[-1].ast); }
6862
320
#line 6863 "/src/php-src/Zend/zend_language_parser.c"
6863
320
    break;
6864
6865
62
  case 345:
6866
62
#line 1037 "/src/php-src/Zend/zend_language_parser.y"
6867
62
                { (yyval.ast) = zend_ast_create(ZEND_AST_TRAIT_PRECEDENCE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6868
62
#line 6869 "/src/php-src/Zend/zend_language_parser.c"
6869
62
    break;
6870
6871
150
  case 346:
6872
150
#line 1042 "/src/php-src/Zend/zend_language_parser.y"
6873
150
                        { (yyval.ast) = zend_ast_create(ZEND_AST_TRAIT_ALIAS, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6874
150
#line 6875 "/src/php-src/Zend/zend_language_parser.c"
6875
150
    break;
6876
6877
28
  case 347:
6878
28
#line 1044 "/src/php-src/Zend/zend_language_parser.y"
6879
28
                        { zval zv;
6880
28
        if (zend_lex_tstring(&zv, (yyvsp[0].ident)) == FAILURE) { YYABORT; }
6881
28
        (yyval.ast) = zend_ast_create(ZEND_AST_TRAIT_ALIAS, (yyvsp[-2].ast), zend_ast_create_zval(&zv)); }
6882
0
#line 6883 "/src/php-src/Zend/zend_language_parser.c"
6883
0
    break;
6884
6885
32
  case 348:
6886
32
#line 1048 "/src/php-src/Zend/zend_language_parser.y"
6887
32
                        { uint32_t modifiers = zend_modifier_token_to_flag(ZEND_MODIFIER_TARGET_METHOD, (yyvsp[-1].num));
6888
32
        (yyval.ast) = zend_ast_create_ex(ZEND_AST_TRAIT_ALIAS, modifiers, (yyvsp[-3].ast), (yyvsp[0].ast));
6889
        /* identifier nonterminal can cause allocations, so we need to free the node */
6890
32
        if (!modifiers) { zend_ast_destroy((yyval.ast)); YYERROR; } }
6891
32
#line 6892 "/src/php-src/Zend/zend_language_parser.c"
6892
32
    break;
6893
6894
112
  case 349:
6895
112
#line 1053 "/src/php-src/Zend/zend_language_parser.y"
6896
112
                        { uint32_t modifiers = zend_modifier_token_to_flag(ZEND_MODIFIER_TARGET_METHOD, (yyvsp[0].num));
6897
112
        (yyval.ast) = zend_ast_create_ex(ZEND_AST_TRAIT_ALIAS, modifiers, (yyvsp[-2].ast), NULL);
6898
        /* identifier nonterminal can cause allocations, so we need to free the node */
6899
112
        if (!modifiers) { zend_ast_destroy((yyval.ast)); YYERROR; } }
6900
112
#line 6901 "/src/php-src/Zend/zend_language_parser.c"
6901
112
    break;
6902
6903
212
  case 350:
6904
212
#line 1061 "/src/php-src/Zend/zend_language_parser.y"
6905
212
                        { (yyval.ast) = zend_ast_create(ZEND_AST_TRAIT_METHOD_REFERENCE, NULL, (yyvsp[0].ast)); }
6906
212
#line 6907 "/src/php-src/Zend/zend_language_parser.c"
6907
212
    break;
6908
6909
114
  case 351:
6910
114
#line 1062 "/src/php-src/Zend/zend_language_parser.y"
6911
114
                                                { (yyval.ast) = (yyvsp[0].ast); }
6912
114
#line 6913 "/src/php-src/Zend/zend_language_parser.c"
6913
114
    break;
6914
6915
178
  case 352:
6916
178
#line 1067 "/src/php-src/Zend/zend_language_parser.y"
6917
178
                { (yyval.ast) = zend_ast_create(ZEND_AST_TRAIT_METHOD_REFERENCE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6918
178
#line 6919 "/src/php-src/Zend/zend_language_parser.c"
6919
178
    break;
6920
6921
386
  case 353:
6922
386
#line 1071 "/src/php-src/Zend/zend_language_parser.y"
6923
386
                                                        { (yyval.ast) = NULL; }
6924
386
#line 6925 "/src/php-src/Zend/zend_language_parser.c"
6925
386
    break;
6926
6927
11.1k
  case 354:
6928
11.1k
#line 1072 "/src/php-src/Zend/zend_language_parser.y"
6929
11.1k
                                                { (yyval.ast) = (yyvsp[-1].ast); }
6930
11.1k
#line 6931 "/src/php-src/Zend/zend_language_parser.c"
6931
11.1k
    break;
6932
6933
6.65k
  case 355:
6934
6.65k
#line 1077 "/src/php-src/Zend/zend_language_parser.y"
6935
6.65k
                        { (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_PROPERTY, (yyvsp[0].ast));
6936
6.65k
        if (!(yyval.num)) { YYERROR; } }
6937
6.64k
#line 6938 "/src/php-src/Zend/zend_language_parser.c"
6938
6.64k
    break;
6939
6940
6.64k
  case 356:
6941
260
#line 1080 "/src/php-src/Zend/zend_language_parser.y"
6942
260
                        { (yyval.num) = ZEND_ACC_PUBLIC; }
6943
260
#line 6944 "/src/php-src/Zend/zend_language_parser.c"
6944
260
    break;
6945
6946
3.22k
  case 357:
6947
3.22k
#line 1085 "/src/php-src/Zend/zend_language_parser.y"
6948
3.22k
                        { (yyval.num) = ZEND_ACC_PUBLIC; }
6949
3.22k
#line 6950 "/src/php-src/Zend/zend_language_parser.c"
6950
3.22k
    break;
6951
6952
8.45k
  case 358:
6953
8.45k
#line 1087 "/src/php-src/Zend/zend_language_parser.y"
6954
8.45k
                        { (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_METHOD, (yyvsp[0].ast));
6955
8.45k
        if (!(yyval.num)) { YYERROR; }
6956
8.45k
        if (!((yyval.num) & ZEND_ACC_PPP_MASK)) { (yyval.num) |= ZEND_ACC_PUBLIC; } }
6957
0
#line 6958 "/src/php-src/Zend/zend_language_parser.c"
6958
0
    break;
6959
6960
800
  case 359:
6961
800
#line 1094 "/src/php-src/Zend/zend_language_parser.y"
6962
800
                        { (yyval.num) = ZEND_ACC_PUBLIC; }
6963
800
#line 6964 "/src/php-src/Zend/zend_language_parser.c"
6964
800
    break;
6965
6966
671
  case 360:
6967
671
#line 1096 "/src/php-src/Zend/zend_language_parser.y"
6968
671
                        { (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_CONSTANT, (yyvsp[0].ast));
6969
671
        if (!(yyval.num)) { YYERROR; }
6970
671
        if (!((yyval.num) & ZEND_ACC_PPP_MASK)) { (yyval.num) |= ZEND_ACC_PUBLIC; } }
6971
0
#line 6972 "/src/php-src/Zend/zend_language_parser.c"
6972
0
    break;
6973
6974
16.2k
  case 361:
6975
16.2k
#line 1103 "/src/php-src/Zend/zend_language_parser.y"
6976
16.2k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_MODIFIER_LIST, zend_ast_create_zval_from_long((yyvsp[0].num))); }
6977
16.2k
#line 6978 "/src/php-src/Zend/zend_language_parser.c"
6978
16.2k
    break;
6979
6980
2.49k
  case 362:
6981
2.49k
#line 1105 "/src/php-src/Zend/zend_language_parser.y"
6982
2.49k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), zend_ast_create_zval_from_long((yyvsp[0].num))); }
6983
2.49k
#line 6984 "/src/php-src/Zend/zend_language_parser.c"
6984
2.49k
    break;
6985
6986
12.7k
  case 363:
6987
12.7k
#line 1109 "/src/php-src/Zend/zend_language_parser.y"
6988
12.7k
                                                        { (yyval.num) = T_PUBLIC; }
6989
12.7k
#line 6990 "/src/php-src/Zend/zend_language_parser.c"
6990
12.7k
    break;
6991
6992
706
  case 364:
6993
706
#line 1110 "/src/php-src/Zend/zend_language_parser.y"
6994
706
                                                        { (yyval.num) = T_PROTECTED; }
6995
706
#line 6996 "/src/php-src/Zend/zend_language_parser.c"
6996
706
    break;
6997
6998
1.67k
  case 365:
6999
1.67k
#line 1111 "/src/php-src/Zend/zend_language_parser.y"
7000
1.67k
                                                        { (yyval.num) = T_PRIVATE; }
7001
1.67k
#line 7002 "/src/php-src/Zend/zend_language_parser.c"
7002
1.67k
    break;
7003
7004
10
  case 366:
7005
10
#line 1112 "/src/php-src/Zend/zend_language_parser.y"
7006
10
                                                { (yyval.num) = T_PUBLIC_SET; }
7007
10
#line 7008 "/src/php-src/Zend/zend_language_parser.c"
7008
10
    break;
7009
7010
44
  case 367:
7011
44
#line 1113 "/src/php-src/Zend/zend_language_parser.y"
7012
44
                                                { (yyval.num) = T_PROTECTED_SET; }
7013
44
#line 7014 "/src/php-src/Zend/zend_language_parser.c"
7014
44
    break;
7015
7016
82
  case 368:
7017
82
#line 1114 "/src/php-src/Zend/zend_language_parser.y"
7018
82
                                                { (yyval.num) = T_PRIVATE_SET; }
7019
82
#line 7020 "/src/php-src/Zend/zend_language_parser.c"
7020
82
    break;
7021
7022
2.92k
  case 369:
7023
2.92k
#line 1115 "/src/php-src/Zend/zend_language_parser.y"
7024
2.92k
                                                        { (yyval.num) = T_STATIC; }
7025
2.92k
#line 7026 "/src/php-src/Zend/zend_language_parser.c"
7026
2.92k
    break;
7027
7028
158
  case 370:
7029
158
#line 1116 "/src/php-src/Zend/zend_language_parser.y"
7030
158
                                                        { (yyval.num) = T_ABSTRACT; }
7031
158
#line 7032 "/src/php-src/Zend/zend_language_parser.c"
7032
158
    break;
7033
7034
189
  case 371:
7035
189
#line 1117 "/src/php-src/Zend/zend_language_parser.y"
7036
189
                                                        { (yyval.num) = T_FINAL; }
7037
189
#line 7038 "/src/php-src/Zend/zend_language_parser.c"
7038
189
    break;
7039
7040
304
  case 372:
7041
304
#line 1118 "/src/php-src/Zend/zend_language_parser.y"
7042
304
                                                        { (yyval.num) = T_READONLY; }
7043
304
#line 7044 "/src/php-src/Zend/zend_language_parser.c"
7044
304
    break;
7045
7046
92
  case 373:
7047
92
#line 1122 "/src/php-src/Zend/zend_language_parser.y"
7048
92
                                           { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7049
92
#line 7050 "/src/php-src/Zend/zend_language_parser.c"
7050
92
    break;
7051
7052
6.09k
  case 374:
7053
6.09k
#line 1123 "/src/php-src/Zend/zend_language_parser.y"
7054
6.09k
                         { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_PROP_DECL, (yyvsp[0].ast)); }
7055
6.09k
#line 7056 "/src/php-src/Zend/zend_language_parser.c"
7056
6.09k
    break;
7057
7058
3.57k
  case 375:
7059
3.57k
#line 1128 "/src/php-src/Zend/zend_language_parser.y"
7060
3.57k
                        { (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); }
7061
3.57k
#line 7062 "/src/php-src/Zend/zend_language_parser.c"
7062
3.57k
    break;
7063
7064
2.61k
  case 376:
7065
2.61k
#line 1130 "/src/php-src/Zend/zend_language_parser.y"
7066
2.61k
                        { (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); }
7067
2.61k
#line 7068 "/src/php-src/Zend/zend_language_parser.c"
7068
2.61k
    break;
7069
7070
655
  case 377:
7071
655
#line 1135 "/src/php-src/Zend/zend_language_parser.y"
7072
655
                        { (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)); }
7073
655
#line 7074 "/src/php-src/Zend/zend_language_parser.c"
7074
655
    break;
7075
7076
129
  case 378:
7077
129
#line 1137 "/src/php-src/Zend/zend_language_parser.y"
7078
129
                        { (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)); }
7079
129
#line 7080 "/src/php-src/Zend/zend_language_parser.c"
7080
129
    break;
7081
7082
876
  case 379:
7083
876
#line 1141 "/src/php-src/Zend/zend_language_parser.y"
7084
876
                       { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_STMT_LIST); }
7085
876
#line 7086 "/src/php-src/Zend/zend_language_parser.c"
7086
876
    break;
7087
7088
1.12k
  case 380:
7089
1.12k
#line 1142 "/src/php-src/Zend/zend_language_parser.y"
7090
1.12k
                                                 { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
7091
1.12k
#line 7092 "/src/php-src/Zend/zend_language_parser.c"
7092
1.12k
    break;
7093
7094
70
  case 381:
7095
70
#line 1143 "/src/php-src/Zend/zend_language_parser.y"
7096
70
                                                            {
7097
70
      (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)));
7098
70
    }
7099
70
#line 7100 "/src/php-src/Zend/zend_language_parser.c"
7100
70
    break;
7101
7102
15.0k
  case 382:
7103
15.0k
#line 1149 "/src/php-src/Zend/zend_language_parser.y"
7104
15.0k
                        { (yyval.ast) = NULL; }
7105
15.0k
#line 7106 "/src/php-src/Zend/zend_language_parser.c"
7106
15.0k
    break;
7107
7108
8
  case 383:
7109
8
#line 1150 "/src/php-src/Zend/zend_language_parser.y"
7110
8
                                                { (yyval.ast) = (yyvsp[-1].ast); }
7111
8
#line 7112 "/src/php-src/Zend/zend_language_parser.c"
7112
8
    break;
7113
7114
1.26k
  case 384:
7115
1.26k
#line 1154 "/src/php-src/Zend/zend_language_parser.y"
7116
1.26k
                       { (yyval.num) = 0; }
7117
1.26k
#line 7118 "/src/php-src/Zend/zend_language_parser.c"
7118
1.26k
    break;
7119
7120
10
  case 385:
7121
10
#line 1155 "/src/php-src/Zend/zend_language_parser.y"
7122
10
                                           {
7123
10
      (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_PROPERTY_HOOK, (yyvsp[0].ast));
7124
10
      if (!(yyval.num)) { YYERROR; }
7125
10
    }
7126
8
#line 7127 "/src/php-src/Zend/zend_language_parser.c"
7127
8
    break;
7128
7129
1.26k
  case 386:
7130
1.26k
#line 1163 "/src/php-src/Zend/zend_language_parser.y"
7131
1.26k
                                   { (yyval.num) = CG(zend_lineno); }
7132
1.26k
#line 7133 "/src/php-src/Zend/zend_language_parser.c"
7133
1.26k
    break;
7134
7135
1.19k
  case 387:
7136
1.19k
#line 1164 "/src/php-src/Zend/zend_language_parser.y"
7137
1.19k
                                                                                           {
7138
1.19k
      (yyval.ast) = zend_ast_create_decl(
7139
1.19k
        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)),
7140
1.19k
        (yyvsp[-3].ast), NULL, (yyvsp[-1].ast), NULL, NULL);
7141
1.19k
      CG(extra_fn_flags) = (yyvsp[-2].num);
7142
1.19k
    }
7143
1.19k
#line 7144 "/src/php-src/Zend/zend_language_parser.c"
7144
1.19k
    break;
7145
7146
78
  case 388:
7147
78
#line 1173 "/src/php-src/Zend/zend_language_parser.y"
7148
78
                    { (yyval.ast) = NULL; }
7149
78
#line 7150 "/src/php-src/Zend/zend_language_parser.c"
7150
78
    break;
7151
7152
811
  case 389:
7153
811
#line 1174 "/src/php-src/Zend/zend_language_parser.y"
7154
811
                                             { (yyval.ast) = (yyvsp[-1].ast); }
7155
811
#line 7156 "/src/php-src/Zend/zend_language_parser.c"
7156
811
    break;
7157
7158
305
  case 390:
7159
305
#line 1176 "/src/php-src/Zend/zend_language_parser.y"
7160
305
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROPERTY_HOOK_SHORT_BODY, (yyvsp[-1].ast)); }
7161
305
#line 7162 "/src/php-src/Zend/zend_language_parser.c"
7162
305
    break;
7163
7164
980
  case 391:
7165
980
#line 1180 "/src/php-src/Zend/zend_language_parser.y"
7166
980
                       { (yyval.ast) = NULL; }
7167
980
#line 7168 "/src/php-src/Zend/zend_language_parser.c"
7168
980
    break;
7169
7170
224
  case 392:
7171
224
#line 1181 "/src/php-src/Zend/zend_language_parser.y"
7172
224
                                       { (yyval.ast) = (yyvsp[-1].ast); }
7173
224
#line 7174 "/src/php-src/Zend/zend_language_parser.c"
7174
224
    break;
7175
7176
20
  case 393:
7177
20
#line 1185 "/src/php-src/Zend/zend_language_parser.y"
7178
20
                                                      { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7179
20
#line 7180 "/src/php-src/Zend/zend_language_parser.c"
7180
20
    break;
7181
7182
1.47k
  case 394:
7183
1.47k
#line 1186 "/src/php-src/Zend/zend_language_parser.y"
7184
1.47k
                                 { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_CLASS_CONST_DECL, (yyvsp[0].ast)); }
7185
1.47k
#line 7186 "/src/php-src/Zend/zend_language_parser.c"
7186
1.47k
    break;
7187
7188
1.16k
  case 395:
7189
1.16k
#line 1190 "/src/php-src/Zend/zend_language_parser.y"
7190
1.16k
                                                     { (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)); }
7191
1.16k
#line 7192 "/src/php-src/Zend/zend_language_parser.c"
7192
1.16k
    break;
7193
7194
329
  case 396:
7195
329
#line 1191 "/src/php-src/Zend/zend_language_parser.y"
7196
329
                                                          {
7197
329
      zval zv;
7198
329
      if (zend_lex_tstring(&zv, (yyvsp[-3].ident)) == FAILURE) { YYABORT; }
7199
329
      (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));
7200
329
    }
7201
0
#line 7202 "/src/php-src/Zend/zend_language_parser.c"
7202
0
    break;
7203
7204
1.01k
  case 397:
7205
1.01k
#line 1199 "/src/php-src/Zend/zend_language_parser.y"
7206
1.01k
                                             { (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)); }
7207
1.01k
#line 7208 "/src/php-src/Zend/zend_language_parser.c"
7208
1.01k
    break;
7209
7210
7.30k
  case 398:
7211
7.30k
#line 1203 "/src/php-src/Zend/zend_language_parser.y"
7212
7.30k
                                             { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7213
7.30k
#line 7214 "/src/php-src/Zend/zend_language_parser.c"
7214
7.30k
    break;
7215
7216
22.3k
  case 399:
7217
22.3k
#line 1204 "/src/php-src/Zend/zend_language_parser.y"
7218
22.3k
                          { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_STMT_LIST, (yyvsp[0].ast)); }
7219
22.3k
#line 7220 "/src/php-src/Zend/zend_language_parser.c"
7220
22.3k
    break;
7221
7222
29.6k
  case 400:
7223
29.6k
#line 1207 "/src/php-src/Zend/zend_language_parser.y"
7224
29.6k
             { (yyval.ast) = zend_ast_create(ZEND_AST_ECHO, (yyvsp[0].ast)); }
7225
29.6k
#line 7226 "/src/php-src/Zend/zend_language_parser.c"
7226
29.6k
    break;
7227
7228
6
  case 401:
7229
6
#line 1211 "/src/php-src/Zend/zend_language_parser.y"
7230
6
                                        { (yyval.ast) = NULL; }
7231
6
#line 7232 "/src/php-src/Zend/zend_language_parser.c"
7232
6
    break;
7233
7234
212
  case 402:
7235
212
#line 1212 "/src/php-src/Zend/zend_language_parser.y"
7236
212
                                             { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7237
212
#line 7238 "/src/php-src/Zend/zend_language_parser.c"
7238
212
    break;
7239
7240
4.14k
  case 403:
7241
4.14k
#line 1213 "/src/php-src/Zend/zend_language_parser.y"
7242
4.14k
                     { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_EXPR_LIST, (yyvsp[0].ast)); }
7243
4.14k
#line 7244 "/src/php-src/Zend/zend_language_parser.c"
7244
4.14k
    break;
7245
7246
115
  case 404:
7247
115
#line 1217 "/src/php-src/Zend/zend_language_parser.y"
7248
115
                                        { (yyval.ast) = NULL; }
7249
115
#line 7250 "/src/php-src/Zend/zend_language_parser.c"
7250
115
    break;
7251
7252
8.53k
  case 405:
7253
8.53k
#line 1218 "/src/php-src/Zend/zend_language_parser.y"
7254
8.53k
                                        { (yyval.ast) = (yyvsp[0].ast); }
7255
8.53k
#line 7256 "/src/php-src/Zend/zend_language_parser.c"
7256
8.53k
    break;
7257
7258
354
  case 406:
7259
354
#line 1222 "/src/php-src/Zend/zend_language_parser.y"
7260
354
                                             { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7261
354
#line 7262 "/src/php-src/Zend/zend_language_parser.c"
7262
354
    break;
7263
7264
16
  case 407:
7265
16
#line 1223 "/src/php-src/Zend/zend_language_parser.y"
7266
16
                                                         { (yyval.ast) = zend_ast_list_add((yyvsp[-3].ast), zend_ast_create(ZEND_AST_CAST_VOID, (yyvsp[0].ast))); }
7267
16
#line 7268 "/src/php-src/Zend/zend_language_parser.c"
7268
16
    break;
7269
7270
7
  case 408:
7271
7
#line 1224 "/src/php-src/Zend/zend_language_parser.y"
7272
7
                                 { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_EXPR_LIST, zend_ast_create(ZEND_AST_CAST_VOID, (yyvsp[0].ast))); }
7273
7
#line 7274 "/src/php-src/Zend/zend_language_parser.c"
7274
7
    break;
7275
7276
8.74k
  case 409:
7277
8.74k
#line 1225 "/src/php-src/Zend/zend_language_parser.y"
7278
8.74k
                     { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_EXPR_LIST, (yyvsp[0].ast)); }
7279
8.74k
#line 7280 "/src/php-src/Zend/zend_language_parser.c"
7280
8.74k
    break;
7281
7282
414
  case 410:
7283
414
#line 1229 "/src/php-src/Zend/zend_language_parser.y"
7284
414
                                                           { (yyval.num) = CG(zend_lineno); }
7285
414
#line 7286 "/src/php-src/Zend/zend_language_parser.c"
7286
414
    break;
7287
7288
408
  case 411:
7289
408
#line 1230 "/src/php-src/Zend/zend_language_parser.y"
7290
408
                                                                                             {
7291
408
      zend_ast *decl = zend_ast_create_decl(
7292
408
        ZEND_AST_CLASS, ZEND_ACC_ANON_CLASS | (yyvsp[-9].num), (yyvsp[-7].num), (yyvsp[-3].str), NULL,
7293
408
        (yyvsp[-5].ast), (yyvsp[-4].ast), (yyvsp[-1].ast), NULL, NULL);
7294
408
      (yyval.ast) = zend_ast_create(ZEND_AST_NEW, decl, (yyvsp[-6].ast));
7295
408
    }
7296
408
#line 7297 "/src/php-src/Zend/zend_language_parser.c"
7297
408
    break;
7298
7299
19.1k
  case 412:
7300
19.1k
#line 1240 "/src/php-src/Zend/zend_language_parser.y"
7301
19.1k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NEW, (yyvsp[-1].ast), (yyvsp[0].ast)); }
7302
19.1k
#line 7303 "/src/php-src/Zend/zend_language_parser.c"
7303
19.1k
    break;
7304
7305
378
  case 413:
7306
378
#line 1242 "/src/php-src/Zend/zend_language_parser.y"
7307
378
                        { (yyval.ast) = (yyvsp[0].ast); }
7308
378
#line 7309 "/src/php-src/Zend/zend_language_parser.c"
7309
378
    break;
7310
7311
30
  case 414:
7312
30
#line 1244 "/src/php-src/Zend/zend_language_parser.y"
7313
30
                        { zend_ast_with_attributes((yyvsp[0].ast)->child[0], (yyvsp[-1].ast)); (yyval.ast) = (yyvsp[0].ast); }
7314
30
#line 7315 "/src/php-src/Zend/zend_language_parser.c"
7315
30
    break;
7316
7317
6.22k
  case 415:
7318
6.22k
#line 1249 "/src/php-src/Zend/zend_language_parser.y"
7319
6.22k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NEW, (yyvsp[0].ast), zend_ast_create_list(0, ZEND_AST_ARG_LIST)); }
7320
6.22k
#line 7321 "/src/php-src/Zend/zend_language_parser.c"
7321
6.22k
    break;
7322
7323
199k
  case 416:
7324
199k
#line 1254 "/src/php-src/Zend/zend_language_parser.y"
7325
199k
                        { (yyval.ast) = (yyvsp[0].ast); }
7326
199k
#line 7327 "/src/php-src/Zend/zend_language_parser.c"
7327
199k
    break;
7328
7329
187
  case 417:
7330
187
#line 1256 "/src/php-src/Zend/zend_language_parser.y"
7331
187
                        { (yyvsp[-3].ast)->attr = ZEND_ARRAY_SYNTAX_LIST; (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN, (yyvsp[-3].ast), (yyvsp[0].ast)); }
7332
187
#line 7333 "/src/php-src/Zend/zend_language_parser.c"
7333
187
    break;
7334
7335
86
  case 418:
7336
86
#line 1258 "/src/php-src/Zend/zend_language_parser.y"
7337
86
                        { (yyvsp[-3].ast)->attr = ZEND_ARRAY_SYNTAX_SHORT; (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN, (yyvsp[-3].ast), (yyvsp[0].ast)); }
7338
86
#line 7339 "/src/php-src/Zend/zend_language_parser.c"
7339
86
    break;
7340
7341
98.9k
  case 419:
7342
98.9k
#line 1260 "/src/php-src/Zend/zend_language_parser.y"
7343
98.9k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7344
98.9k
#line 7345 "/src/php-src/Zend/zend_language_parser.c"
7345
98.9k
    break;
7346
7347
2.01k
  case 420:
7348
2.01k
#line 1262 "/src/php-src/Zend/zend_language_parser.y"
7349
2.01k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN_REF, (yyvsp[-3].ast), (yyvsp[0].ast)); }
7350
2.01k
#line 7351 "/src/php-src/Zend/zend_language_parser.c"
7351
2.01k
    break;
7352
7353
116
  case 421:
7354
116
#line 1263 "/src/php-src/Zend/zend_language_parser.y"
7355
116
                                            {
7356
116
      zend_ast *name = zend_ast_create_zval_from_str(ZSTR_KNOWN(ZEND_STR_CLONE));
7357
116
      name->attr = ZEND_NAME_FQ;
7358
116
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, name, (yyvsp[0].ast));
7359
116
    }
7360
116
#line 7361 "/src/php-src/Zend/zend_language_parser.c"
7361
116
    break;
7362
7363
275
  case 422:
7364
275
#line 1268 "/src/php-src/Zend/zend_language_parser.y"
7365
275
                             {
7366
275
      zend_ast *name = zend_ast_create_zval_from_str(ZSTR_KNOWN(ZEND_STR_CLONE));
7367
275
      name->attr = ZEND_NAME_FQ;
7368
275
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, name, zend_ast_create_list(1, ZEND_AST_ARG_LIST, (yyvsp[0].ast)));
7369
275
    }
7370
275
#line 7371 "/src/php-src/Zend/zend_language_parser.c"
7371
275
    break;
7372
7373
1.35k
  case 423:
7374
1.35k
#line 1274 "/src/php-src/Zend/zend_language_parser.y"
7375
1.35k
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_ADD, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7376
1.35k
#line 7377 "/src/php-src/Zend/zend_language_parser.c"
7377
1.35k
    break;
7378
7379
226
  case 424:
7380
226
#line 1276 "/src/php-src/Zend/zend_language_parser.y"
7381
226
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_SUB, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7382
226
#line 7383 "/src/php-src/Zend/zend_language_parser.c"
7383
226
    break;
7384
7385
511
  case 425:
7386
511
#line 1278 "/src/php-src/Zend/zend_language_parser.y"
7387
511
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_MUL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7388
511
#line 7389 "/src/php-src/Zend/zend_language_parser.c"
7389
511
    break;
7390
7391
34
  case 426:
7392
34
#line 1280 "/src/php-src/Zend/zend_language_parser.y"
7393
34
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_POW, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7394
34
#line 7395 "/src/php-src/Zend/zend_language_parser.c"
7395
34
    break;
7396
7397
135
  case 427:
7398
135
#line 1282 "/src/php-src/Zend/zend_language_parser.y"
7399
135
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_DIV, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7400
135
#line 7401 "/src/php-src/Zend/zend_language_parser.c"
7401
135
    break;
7402
7403
37.3k
  case 428:
7404
37.3k
#line 1284 "/src/php-src/Zend/zend_language_parser.y"
7405
37.3k
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_CONCAT, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7406
37.3k
#line 7407 "/src/php-src/Zend/zend_language_parser.c"
7407
37.3k
    break;
7408
7409
112
  case 429:
7410
112
#line 1286 "/src/php-src/Zend/zend_language_parser.y"
7411
112
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_MOD, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7412
112
#line 7413 "/src/php-src/Zend/zend_language_parser.c"
7413
112
    break;
7414
7415
6.28k
  case 430:
7416
6.28k
#line 1288 "/src/php-src/Zend/zend_language_parser.y"
7417
6.28k
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_BW_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7418
6.28k
#line 7419 "/src/php-src/Zend/zend_language_parser.c"
7419
6.28k
    break;
7420
7421
131
  case 431:
7422
131
#line 1290 "/src/php-src/Zend/zend_language_parser.y"
7423
131
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_BW_OR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7424
131
#line 7425 "/src/php-src/Zend/zend_language_parser.c"
7425
131
    break;
7426
7427
38
  case 432:
7428
38
#line 1292 "/src/php-src/Zend/zend_language_parser.y"
7429
38
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_BW_XOR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7430
38
#line 7431 "/src/php-src/Zend/zend_language_parser.c"
7431
38
    break;
7432
7433
46
  case 433:
7434
46
#line 1294 "/src/php-src/Zend/zend_language_parser.y"
7435
46
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_SL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7436
46
#line 7437 "/src/php-src/Zend/zend_language_parser.c"
7437
46
    break;
7438
7439
193
  case 434:
7440
193
#line 1296 "/src/php-src/Zend/zend_language_parser.y"
7441
193
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_SR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7442
193
#line 7443 "/src/php-src/Zend/zend_language_parser.c"
7443
193
    break;
7444
7445
864
  case 435:
7446
864
#line 1298 "/src/php-src/Zend/zend_language_parser.y"
7447
864
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN_COALESCE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7448
864
#line 7449 "/src/php-src/Zend/zend_language_parser.c"
7449
864
    break;
7450
7451
3.48k
  case 436:
7452
3.48k
#line 1299 "/src/php-src/Zend/zend_language_parser.y"
7453
3.48k
                               { (yyval.ast) = zend_ast_create(ZEND_AST_POST_INC, (yyvsp[-1].ast)); }
7454
3.48k
#line 7455 "/src/php-src/Zend/zend_language_parser.c"
7455
3.48k
    break;
7456
7457
735
  case 437:
7458
735
#line 1300 "/src/php-src/Zend/zend_language_parser.y"
7459
735
                               { (yyval.ast) = zend_ast_create(ZEND_AST_PRE_INC, (yyvsp[0].ast)); }
7460
735
#line 7461 "/src/php-src/Zend/zend_language_parser.c"
7461
735
    break;
7462
7463
1.36k
  case 438:
7464
1.36k
#line 1301 "/src/php-src/Zend/zend_language_parser.y"
7465
1.36k
                               { (yyval.ast) = zend_ast_create(ZEND_AST_POST_DEC, (yyvsp[-1].ast)); }
7466
1.36k
#line 7467 "/src/php-src/Zend/zend_language_parser.c"
7467
1.36k
    break;
7468
7469
378
  case 439:
7470
378
#line 1302 "/src/php-src/Zend/zend_language_parser.y"
7471
378
                               { (yyval.ast) = zend_ast_create(ZEND_AST_PRE_DEC, (yyvsp[0].ast)); }
7472
378
#line 7473 "/src/php-src/Zend/zend_language_parser.c"
7473
378
    break;
7474
7475
1.31k
  case 440:
7476
1.31k
#line 1304 "/src/php-src/Zend/zend_language_parser.y"
7477
1.31k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_OR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7478
1.31k
#line 7479 "/src/php-src/Zend/zend_language_parser.c"
7479
1.31k
    break;
7480
7481
1.17k
  case 441:
7482
1.17k
#line 1306 "/src/php-src/Zend/zend_language_parser.y"
7483
1.17k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7484
1.17k
#line 7485 "/src/php-src/Zend/zend_language_parser.c"
7485
1.17k
    break;
7486
7487
551
  case 442:
7488
551
#line 1308 "/src/php-src/Zend/zend_language_parser.y"
7489
551
                        { (yyval.ast) = zend_ast_create(ZEND_AST_OR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7490
551
#line 7491 "/src/php-src/Zend/zend_language_parser.c"
7491
551
    break;
7492
7493
492
  case 443:
7494
492
#line 1310 "/src/php-src/Zend/zend_language_parser.y"
7495
492
                        { (yyval.ast) = zend_ast_create(ZEND_AST_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7496
492
#line 7497 "/src/php-src/Zend/zend_language_parser.c"
7497
492
    break;
7498
7499
492
  case 444:
7500
492
#line 1312 "/src/php-src/Zend/zend_language_parser.y"
7501
492
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_BOOL_XOR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7502
492
#line 7503 "/src/php-src/Zend/zend_language_parser.c"
7503
492
    break;
7504
7505
5.83k
  case 445:
7506
5.83k
#line 1313 "/src/php-src/Zend/zend_language_parser.y"
7507
5.83k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_BW_OR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7508
5.83k
#line 7509 "/src/php-src/Zend/zend_language_parser.c"
7509
5.83k
    break;
7510
7511
3.94k
  case 446:
7512
3.94k
#line 1314 "/src/php-src/Zend/zend_language_parser.y"
7513
3.94k
                                                                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_BW_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7514
3.94k
#line 7515 "/src/php-src/Zend/zend_language_parser.c"
7515
3.94k
    break;
7516
7517
1.75k
  case 447:
7518
1.75k
#line 1315 "/src/php-src/Zend/zend_language_parser.y"
7519
1.75k
                                                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_BW_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7520
1.75k
#line 7521 "/src/php-src/Zend/zend_language_parser.c"
7521
1.75k
    break;
7522
7523
4.33k
  case 448:
7524
4.33k
#line 1316 "/src/php-src/Zend/zend_language_parser.y"
7525
4.33k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_BW_XOR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7526
4.33k
#line 7527 "/src/php-src/Zend/zend_language_parser.c"
7527
4.33k
    break;
7528
7529
33.1k
  case 449:
7530
33.1k
#line 1317 "/src/php-src/Zend/zend_language_parser.y"
7531
33.1k
                                { (yyval.ast) = zend_ast_create_concat_op((yyvsp[-2].ast), (yyvsp[0].ast)); }
7532
33.1k
#line 7533 "/src/php-src/Zend/zend_language_parser.c"
7533
33.1k
    break;
7534
7535
6.53k
  case 450:
7536
6.53k
#line 1318 "/src/php-src/Zend/zend_language_parser.y"
7537
6.53k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_ADD, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7538
6.53k
#line 7539 "/src/php-src/Zend/zend_language_parser.c"
7539
6.53k
    break;
7540
7541
6.42k
  case 451:
7542
6.42k
#line 1319 "/src/php-src/Zend/zend_language_parser.y"
7543
6.42k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_SUB, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7544
6.42k
#line 7545 "/src/php-src/Zend/zend_language_parser.c"
7545
6.42k
    break;
7546
7547
2.77k
  case 452:
7548
2.77k
#line 1320 "/src/php-src/Zend/zend_language_parser.y"
7549
2.77k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_MUL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7550
2.77k
#line 7551 "/src/php-src/Zend/zend_language_parser.c"
7551
2.77k
    break;
7552
7553
225
  case 453:
7554
225
#line 1321 "/src/php-src/Zend/zend_language_parser.y"
7555
225
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_POW, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7556
225
#line 7557 "/src/php-src/Zend/zend_language_parser.c"
7557
225
    break;
7558
7559
4.03k
  case 454:
7560
4.03k
#line 1322 "/src/php-src/Zend/zend_language_parser.y"
7561
4.03k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_DIV, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7562
4.03k
#line 7563 "/src/php-src/Zend/zend_language_parser.c"
7563
4.03k
    break;
7564
7565
2.77k
  case 455:
7566
2.77k
#line 1323 "/src/php-src/Zend/zend_language_parser.y"
7567
2.77k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_MOD, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7568
2.77k
#line 7569 "/src/php-src/Zend/zend_language_parser.c"
7569
2.77k
    break;
7570
7571
988
  case 456:
7572
988
#line 1324 "/src/php-src/Zend/zend_language_parser.y"
7573
988
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_SL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7574
988
#line 7575 "/src/php-src/Zend/zend_language_parser.c"
7575
988
    break;
7576
7577
831
  case 457:
7578
831
#line 1325 "/src/php-src/Zend/zend_language_parser.y"
7579
831
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_SR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7580
831
#line 7581 "/src/php-src/Zend/zend_language_parser.c"
7581
831
    break;
7582
7583
2.14k
  case 458:
7584
2.14k
#line 1326 "/src/php-src/Zend/zend_language_parser.y"
7585
2.14k
                                   { (yyval.ast) = zend_ast_create(ZEND_AST_UNARY_PLUS, (yyvsp[0].ast)); }
7586
2.14k
#line 7587 "/src/php-src/Zend/zend_language_parser.c"
7587
2.14k
    break;
7588
7589
7.72k
  case 459:
7590
7.72k
#line 1327 "/src/php-src/Zend/zend_language_parser.y"
7591
7.72k
                                   { (yyval.ast) = zend_ast_create(ZEND_AST_UNARY_MINUS, (yyvsp[0].ast)); }
7592
7.72k
#line 7593 "/src/php-src/Zend/zend_language_parser.c"
7593
7.72k
    break;
7594
7595
6.43k
  case 460:
7596
6.43k
#line 1328 "/src/php-src/Zend/zend_language_parser.y"
7597
6.43k
                         { (yyval.ast) = zend_ast_create_ex(ZEND_AST_UNARY_OP, ZEND_BOOL_NOT, (yyvsp[0].ast)); }
7598
6.43k
#line 7599 "/src/php-src/Zend/zend_language_parser.c"
7599
6.43k
    break;
7600
7601
1.07k
  case 461:
7602
1.07k
#line 1329 "/src/php-src/Zend/zend_language_parser.y"
7603
1.07k
                         { (yyval.ast) = zend_ast_create_ex(ZEND_AST_UNARY_OP, ZEND_BW_NOT, (yyvsp[0].ast)); }
7604
1.07k
#line 7605 "/src/php-src/Zend/zend_language_parser.c"
7605
1.07k
    break;
7606
7607
1.40k
  case 462:
7608
1.40k
#line 1331 "/src/php-src/Zend/zend_language_parser.y"
7609
1.40k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_IDENTICAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7610
1.40k
#line 7611 "/src/php-src/Zend/zend_language_parser.c"
7611
1.40k
    break;
7612
7613
528
  case 463:
7614
528
#line 1333 "/src/php-src/Zend/zend_language_parser.y"
7615
528
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_NOT_IDENTICAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7616
528
#line 7617 "/src/php-src/Zend/zend_language_parser.c"
7617
528
    break;
7618
7619
6.85k
  case 464:
7620
6.85k
#line 1335 "/src/php-src/Zend/zend_language_parser.y"
7621
6.85k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_EQUAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7622
6.85k
#line 7623 "/src/php-src/Zend/zend_language_parser.c"
7623
6.85k
    break;
7624
7625
1.93k
  case 465:
7626
1.93k
#line 1337 "/src/php-src/Zend/zend_language_parser.y"
7627
1.93k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_NOT_EQUAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7628
1.93k
#line 7629 "/src/php-src/Zend/zend_language_parser.c"
7629
1.93k
    break;
7630
7631
834
  case 466:
7632
834
#line 1339 "/src/php-src/Zend/zend_language_parser.y"
7633
834
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PIPE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7634
834
#line 7635 "/src/php-src/Zend/zend_language_parser.c"
7635
834
    break;
7636
7637
5.04k
  case 467:
7638
5.04k
#line 1341 "/src/php-src/Zend/zend_language_parser.y"
7639
5.04k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_SMALLER, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7640
5.04k
#line 7641 "/src/php-src/Zend/zend_language_parser.c"
7641
5.04k
    break;
7642
7643
1.33k
  case 468:
7644
1.33k
#line 1343 "/src/php-src/Zend/zend_language_parser.y"
7645
1.33k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_SMALLER_OR_EQUAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7646
1.33k
#line 7647 "/src/php-src/Zend/zend_language_parser.c"
7647
1.33k
    break;
7648
7649
2.47k
  case 469:
7650
2.47k
#line 1345 "/src/php-src/Zend/zend_language_parser.y"
7651
2.47k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_GREATER, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7652
2.47k
#line 7653 "/src/php-src/Zend/zend_language_parser.c"
7653
2.47k
    break;
7654
7655
737
  case 470:
7656
737
#line 1347 "/src/php-src/Zend/zend_language_parser.y"
7657
737
                        { (yyval.ast) = zend_ast_create(ZEND_AST_GREATER_EQUAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7658
737
#line 7659 "/src/php-src/Zend/zend_language_parser.c"
7659
737
    break;
7660
7661
35
  case 471:
7662
35
#line 1349 "/src/php-src/Zend/zend_language_parser.y"
7663
35
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_SPACESHIP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7664
35
#line 7665 "/src/php-src/Zend/zend_language_parser.c"
7665
35
    break;
7666
7667
276
  case 472:
7668
276
#line 1351 "/src/php-src/Zend/zend_language_parser.y"
7669
276
                        { (yyval.ast) = zend_ast_create(ZEND_AST_INSTANCEOF, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7670
276
#line 7671 "/src/php-src/Zend/zend_language_parser.c"
7671
276
    break;
7672
7673
6.06k
  case 473:
7674
6.06k
#line 1352 "/src/php-src/Zend/zend_language_parser.y"
7675
6.06k
                             {
7676
6.06k
      (yyval.ast) = (yyvsp[-1].ast);
7677
6.06k
      if ((yyval.ast)->kind == ZEND_AST_CONDITIONAL) (yyval.ast)->attr = ZEND_PARENTHESIZED_CONDITIONAL;
7678
6.06k
      if ((yyval.ast)->kind == ZEND_AST_ARROW_FUNC) (yyval.ast)->attr = ZEND_PARENTHESIZED_ARROW_FUNC;
7679
6.06k
    }
7680
6.06k
#line 7681 "/src/php-src/Zend/zend_language_parser.c"
7681
6.06k
    break;
7682
7683
19.3k
  case 474:
7684
19.3k
#line 1357 "/src/php-src/Zend/zend_language_parser.y"
7685
19.3k
                                    { (yyval.ast) = (yyvsp[0].ast); }
7686
19.3k
#line 7687 "/src/php-src/Zend/zend_language_parser.c"
7687
19.3k
    break;
7688
7689
6.22k
  case 475:
7690
6.22k
#line 1358 "/src/php-src/Zend/zend_language_parser.y"
7691
6.22k
                                        { (yyval.ast) = (yyvsp[0].ast); }
7692
6.22k
#line 7693 "/src/php-src/Zend/zend_language_parser.c"
7693
6.22k
    break;
7694
7695
1.60k
  case 476:
7696
1.60k
#line 1360 "/src/php-src/Zend/zend_language_parser.y"
7697
1.60k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CONDITIONAL, (yyvsp[-4].ast), (yyvsp[-2].ast), (yyvsp[0].ast)); }
7698
1.60k
#line 7699 "/src/php-src/Zend/zend_language_parser.c"
7699
1.60k
    break;
7700
7701
1.03k
  case 477:
7702
1.03k
#line 1362 "/src/php-src/Zend/zend_language_parser.y"
7703
1.03k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CONDITIONAL, (yyvsp[-3].ast), NULL, (yyvsp[0].ast)); }
7704
1.03k
#line 7705 "/src/php-src/Zend/zend_language_parser.c"
7705
1.03k
    break;
7706
7707
1.45k
  case 478:
7708
1.45k
#line 1364 "/src/php-src/Zend/zend_language_parser.y"
7709
1.45k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_COALESCE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7710
1.45k
#line 7711 "/src/php-src/Zend/zend_language_parser.c"
7711
1.45k
    break;
7712
7713
5.60k
  case 479:
7714
5.60k
#line 1365 "/src/php-src/Zend/zend_language_parser.y"
7715
5.60k
                                           { (yyval.ast) = (yyvsp[0].ast); }
7716
5.60k
#line 7717 "/src/php-src/Zend/zend_language_parser.c"
7717
5.60k
    break;
7718
7719
290
  case 480:
7720
290
#line 1366 "/src/php-src/Zend/zend_language_parser.y"
7721
290
                                        { (yyval.ast) = zend_ast_create_cast(IS_LONG, (yyvsp[0].ast)); }
7722
290
#line 7723 "/src/php-src/Zend/zend_language_parser.c"
7723
290
    break;
7724
7725
56
  case 481:
7726
56
#line 1367 "/src/php-src/Zend/zend_language_parser.y"
7727
56
                                        { (yyval.ast) = zend_ast_create_cast(IS_DOUBLE, (yyvsp[0].ast)); }
7728
56
#line 7729 "/src/php-src/Zend/zend_language_parser.c"
7729
56
    break;
7730
7731
397
  case 482:
7732
397
#line 1368 "/src/php-src/Zend/zend_language_parser.y"
7733
397
                                        { (yyval.ast) = zend_ast_create_cast(IS_STRING, (yyvsp[0].ast)); }
7734
397
#line 7735 "/src/php-src/Zend/zend_language_parser.c"
7735
397
    break;
7736
7737
203
  case 483:
7738
203
#line 1369 "/src/php-src/Zend/zend_language_parser.y"
7739
203
                                        { (yyval.ast) = zend_ast_create_cast(IS_ARRAY, (yyvsp[0].ast)); }
7740
203
#line 7741 "/src/php-src/Zend/zend_language_parser.c"
7741
203
    break;
7742
7743
191
  case 484:
7744
191
#line 1370 "/src/php-src/Zend/zend_language_parser.y"
7745
191
                                        { (yyval.ast) = zend_ast_create_cast(IS_OBJECT, (yyvsp[0].ast)); }
7746
191
#line 7747 "/src/php-src/Zend/zend_language_parser.c"
7747
191
    break;
7748
7749
42
  case 485:
7750
42
#line 1371 "/src/php-src/Zend/zend_language_parser.y"
7751
42
                                        { (yyval.ast) = zend_ast_create_cast(_IS_BOOL, (yyvsp[0].ast)); }
7752
42
#line 7753 "/src/php-src/Zend/zend_language_parser.c"
7753
42
    break;
7754
7755
0
  case 486:
7756
0
#line 1372 "/src/php-src/Zend/zend_language_parser.y"
7757
0
                                        { (yyval.ast) = zend_ast_create_cast(IS_NULL, (yyvsp[0].ast)); }
7758
0
#line 7759 "/src/php-src/Zend/zend_language_parser.c"
7759
0
    break;
7760
7761
178
  case 487:
7762
178
#line 1373 "/src/php-src/Zend/zend_language_parser.y"
7763
178
                                      {
7764
178
      zend_ast *name = zend_ast_create_zval_from_str(ZSTR_KNOWN(ZEND_STR_EXIT));
7765
178
      name->attr = ZEND_NAME_FQ;
7766
178
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, name, (yyvsp[0].ast));
7767
178
    }
7768
178
#line 7769 "/src/php-src/Zend/zend_language_parser.c"
7769
178
    break;
7770
7771
45.8k
  case 488:
7772
45.8k
#line 1378 "/src/php-src/Zend/zend_language_parser.y"
7773
45.8k
                                                { (yyval.ast) = zend_ast_create(ZEND_AST_SILENCE, (yyvsp[0].ast)); }
7774
45.8k
#line 7775 "/src/php-src/Zend/zend_language_parser.c"
7775
45.8k
    break;
7776
7777
373k
  case 489:
7778
373k
#line 1379 "/src/php-src/Zend/zend_language_parser.y"
7779
373k
                       { (yyval.ast) = (yyvsp[0].ast); }
7780
373k
#line 7781 "/src/php-src/Zend/zend_language_parser.c"
7781
373k
    break;
7782
7783
26
  case 490:
7784
26
#line 1380 "/src/php-src/Zend/zend_language_parser.y"
7785
26
                                       { (yyval.ast) = zend_ast_create(ZEND_AST_SHELL_EXEC, (yyvsp[-1].ast)); }
7786
26
#line 7787 "/src/php-src/Zend/zend_language_parser.c"
7787
26
    break;
7788
7789
1.53k
  case 491:
7790
1.53k
#line 1381 "/src/php-src/Zend/zend_language_parser.y"
7791
1.53k
                             { (yyval.ast) = zend_ast_create(ZEND_AST_PRINT, (yyvsp[0].ast)); }
7792
1.53k
#line 7793 "/src/php-src/Zend/zend_language_parser.c"
7793
1.53k
    break;
7794
7795
290
  case 492:
7796
290
#line 1382 "/src/php-src/Zend/zend_language_parser.y"
7797
290
                        { (yyval.ast) = zend_ast_create(ZEND_AST_YIELD, NULL, NULL); CG(extra_fn_flags) |= ZEND_ACC_GENERATOR; }
7798
290
#line 7799 "/src/php-src/Zend/zend_language_parser.c"
7799
290
    break;
7800
7801
659
  case 493:
7802
659
#line 1383 "/src/php-src/Zend/zend_language_parser.y"
7803
659
                             { (yyval.ast) = zend_ast_create(ZEND_AST_YIELD, (yyvsp[0].ast), NULL); CG(extra_fn_flags) |= ZEND_ACC_GENERATOR; }
7804
659
#line 7805 "/src/php-src/Zend/zend_language_parser.c"
7805
659
    break;
7806
7807
205
  case 494:
7808
205
#line 1384 "/src/php-src/Zend/zend_language_parser.y"
7809
205
                                                 { (yyval.ast) = zend_ast_create(ZEND_AST_YIELD, (yyvsp[0].ast), (yyvsp[-2].ast)); CG(extra_fn_flags) |= ZEND_ACC_GENERATOR; }
7810
205
#line 7811 "/src/php-src/Zend/zend_language_parser.c"
7811
205
    break;
7812
7813
322
  case 495:
7814
322
#line 1385 "/src/php-src/Zend/zend_language_parser.y"
7815
322
                                  { (yyval.ast) = zend_ast_create(ZEND_AST_YIELD_FROM, (yyvsp[0].ast)); CG(extra_fn_flags) |= ZEND_ACC_GENERATOR; }
7816
322
#line 7817 "/src/php-src/Zend/zend_language_parser.c"
7817
322
    break;
7818
7819
1.12k
  case 496:
7820
1.12k
#line 1386 "/src/php-src/Zend/zend_language_parser.y"
7821
1.12k
                             { (yyval.ast) = zend_ast_create(ZEND_AST_THROW, (yyvsp[0].ast)); }
7822
1.12k
#line 7823 "/src/php-src/Zend/zend_language_parser.c"
7823
1.12k
    break;
7824
7825
4.09k
  case 497:
7826
4.09k
#line 1387 "/src/php-src/Zend/zend_language_parser.y"
7827
4.09k
                                { (yyval.ast) = (yyvsp[0].ast); }
7828
4.09k
#line 7829 "/src/php-src/Zend/zend_language_parser.c"
7829
4.09k
    break;
7830
7831
118
  case 498:
7832
118
#line 1388 "/src/php-src/Zend/zend_language_parser.y"
7833
118
                                           { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
7834
118
#line 7835 "/src/php-src/Zend/zend_language_parser.c"
7835
118
    break;
7836
7837
106
  case 499:
7838
106
#line 1389 "/src/php-src/Zend/zend_language_parser.y"
7839
106
                                         { (yyval.ast) = (yyvsp[0].ast); ((zend_ast_decl *) (yyval.ast))->flags |= ZEND_ACC_STATIC; }
7840
106
#line 7841 "/src/php-src/Zend/zend_language_parser.c"
7841
106
    break;
7842
7843
12
  case 500:
7844
12
#line 1391 "/src/php-src/Zend/zend_language_parser.y"
7845
12
                        { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-2].ast)); ((zend_ast_decl *) (yyval.ast))->flags |= ZEND_ACC_STATIC; }
7846
12
#line 7847 "/src/php-src/Zend/zend_language_parser.c"
7847
12
    break;
7848
7849
418
  case 501:
7850
418
#line 1392 "/src/php-src/Zend/zend_language_parser.y"
7851
418
                      { (yyval.ast) = (yyvsp[0].ast); }
7852
418
#line 7853 "/src/php-src/Zend/zend_language_parser.c"
7853
418
    break;
7854
7855
3.24k
  case 502:
7856
3.24k
#line 1399 "/src/php-src/Zend/zend_language_parser.y"
7857
3.24k
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_CLOSURE, (yyvsp[-11].num) | (yyvsp[0].num), (yyvsp[-12].num), (yyvsp[-10].str),
7858
3.24k
          NULL,
7859
3.24k
          (yyvsp[-8].ast), (yyvsp[-6].ast), (yyvsp[-2].ast), (yyvsp[-5].ast), NULL); CG(extra_fn_flags) = (yyvsp[-4].num); }
7860
3.24k
#line 7861 "/src/php-src/Zend/zend_language_parser.c"
7861
3.24k
    break;
7862
7863
1.08k
  case 503:
7864
1.08k
#line 1404 "/src/php-src/Zend/zend_language_parser.y"
7865
1.08k
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_ARROW_FUNC, (yyvsp[-10].num) | (yyvsp[0].num), (yyvsp[-11].num), (yyvsp[-9].str),
7866
1.08k
          NULL, (yyvsp[-7].ast), NULL, (yyvsp[-1].ast), (yyvsp[-5].ast), NULL);
7867
1.08k
          CG(extra_fn_flags) = (yyvsp[-3].num); }
7868
1.08k
#line 7869 "/src/php-src/Zend/zend_language_parser.c"
7869
1.08k
    break;
7870
7871
1.08k
  case 504:
7872
1.08k
#line 1410 "/src/php-src/Zend/zend_language_parser.y"
7873
1.08k
             { (yyval.num) = CG(zend_lineno); }
7874
1.08k
#line 7875 "/src/php-src/Zend/zend_language_parser.c"
7875
1.08k
    break;
7876
7877
22.0k
  case 505:
7878
22.0k
#line 1414 "/src/php-src/Zend/zend_language_parser.y"
7879
22.0k
                   { (yyval.num) = CG(zend_lineno); }
7880
22.0k
#line 7881 "/src/php-src/Zend/zend_language_parser.c"
7881
22.0k
    break;
7882
7883
63.6k
  case 506:
7884
63.6k
#line 1418 "/src/php-src/Zend/zend_language_parser.y"
7885
63.6k
               { (yyval.str) = CG(doc_comment); CG(doc_comment) = NULL; }
7886
63.6k
#line 7887 "/src/php-src/Zend/zend_language_parser.c"
7887
63.6k
    break;
7888
7889
48.3k
  case 507:
7890
48.3k
#line 1422 "/src/php-src/Zend/zend_language_parser.y"
7891
48.3k
                                         { (yyval.num) = CG(extra_fn_flags); CG(extra_fn_flags) = 0; }
7892
48.3k
#line 7893 "/src/php-src/Zend/zend_language_parser.c"
7893
48.3k
    break;
7894
7895
1.08k
  case 508:
7896
1.08k
#line 1426 "/src/php-src/Zend/zend_language_parser.y"
7897
1.08k
               { (yyval.ptr) = LANG_SCNG(yy_text); }
7898
1.08k
#line 7899 "/src/php-src/Zend/zend_language_parser.c"
7899
1.08k
    break;
7900
7901
23.8k
  case 509:
7902
23.8k
#line 1430 "/src/php-src/Zend/zend_language_parser.y"
7903
23.8k
                        { (yyval.num) = 0; }
7904
23.8k
#line 7905 "/src/php-src/Zend/zend_language_parser.c"
7905
23.8k
    break;
7906
7907
627
  case 510:
7908
627
#line 1431 "/src/php-src/Zend/zend_language_parser.y"
7909
627
                                { (yyval.num) = ZEND_ACC_RETURN_REFERENCE; }
7910
627
#line 7911 "/src/php-src/Zend/zend_language_parser.c"
7911
627
    break;
7912
7913
2.71k
  case 511:
7914
2.71k
#line 1435 "/src/php-src/Zend/zend_language_parser.y"
7915
2.71k
                       { (yyval.ast) = NULL; }
7916
2.71k
#line 7917 "/src/php-src/Zend/zend_language_parser.c"
7917
2.71k
    break;
7918
7919
570
  case 512:
7920
570
#line 1436 "/src/php-src/Zend/zend_language_parser.y"
7921
570
                                                              { (yyval.ast) = (yyvsp[-2].ast); }
7922
570
#line 7923 "/src/php-src/Zend/zend_language_parser.c"
7923
570
    break;
7924
7925
172
  case 513:
7926
172
#line 1440 "/src/php-src/Zend/zend_language_parser.y"
7927
172
                                                 { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7928
172
#line 7929 "/src/php-src/Zend/zend_language_parser.c"
7929
172
    break;
7930
7931
572
  case 514:
7932
572
#line 1441 "/src/php-src/Zend/zend_language_parser.y"
7933
572
                            { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_CLOSURE_USES, (yyvsp[0].ast)); }
7934
572
#line 7935 "/src/php-src/Zend/zend_language_parser.c"
7935
572
    break;
7936
7937
396
  case 515:
7938
396
#line 1445 "/src/php-src/Zend/zend_language_parser.y"
7939
396
                                        { (yyval.ast) = (yyvsp[0].ast); }
7940
396
#line 7941 "/src/php-src/Zend/zend_language_parser.c"
7941
396
    break;
7942
7943
348
  case 516:
7944
348
#line 1446 "/src/php-src/Zend/zend_language_parser.y"
7945
348
                                        { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_BIND_REF; }
7946
348
#line 7947 "/src/php-src/Zend/zend_language_parser.c"
7947
348
    break;
7948
7949
63.9k
  case 517:
7950
63.9k
#line 1451 "/src/php-src/Zend/zend_language_parser.y"
7951
63.9k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CALL, (yyvsp[-1].ast), (yyvsp[0].ast)); }
7952
63.9k
#line 7953 "/src/php-src/Zend/zend_language_parser.c"
7953
63.9k
    break;
7954
7955
2
  case 518:
7956
2
#line 1452 "/src/php-src/Zend/zend_language_parser.y"
7957
2
                                         {
7958
2
      zval zv;
7959
2
      if (zend_lex_tstring(&zv, (yyvsp[-1].ident)) == FAILURE) { YYABORT; }
7960
2
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, zend_ast_create_zval(&zv), (yyvsp[0].ast));
7961
2
    }
7962
0
#line 7963 "/src/php-src/Zend/zend_language_parser.c"
7963
0
    break;
7964
7965
3.14k
  case 519:
7966
3.14k
#line 1458 "/src/php-src/Zend/zend_language_parser.y"
7967
3.14k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_CALL, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
7968
3.14k
#line 7969 "/src/php-src/Zend/zend_language_parser.c"
7969
3.14k
    break;
7970
7971
365
  case 520:
7972
365
#line 1460 "/src/php-src/Zend/zend_language_parser.y"
7973
365
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_CALL, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
7974
365
#line 7975 "/src/php-src/Zend/zend_language_parser.c"
7975
365
    break;
7976
7977
2.87k
  case 521:
7978
2.87k
#line 1461 "/src/php-src/Zend/zend_language_parser.y"
7979
2.87k
                              { (yyval.num) = CG(zend_lineno); }
7980
2.87k
#line 7981 "/src/php-src/Zend/zend_language_parser.c"
7981
2.87k
    break;
7982
7983
2.56k
  case 522:
7984
2.56k
#line 1461 "/src/php-src/Zend/zend_language_parser.y"
7985
2.56k
                                                                           {
7986
2.56k
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, (yyvsp[-2].ast), (yyvsp[0].ast));
7987
2.56k
      (yyval.ast)->lineno = (yyvsp[-1].num);
7988
2.56k
    }
7989
2.56k
#line 7990 "/src/php-src/Zend/zend_language_parser.c"
7990
2.56k
    break;
7991
7992
429
  case 523:
7993
429
#line 1469 "/src/php-src/Zend/zend_language_parser.y"
7994
429
                        { zval zv; ZVAL_INTERNED_STR(&zv, ZSTR_KNOWN(ZEND_STR_STATIC));
7995
429
        (yyval.ast) = zend_ast_create_zval_ex(&zv, ZEND_NAME_NOT_FQ); }
7996
429
#line 7997 "/src/php-src/Zend/zend_language_parser.c"
7997
429
    break;
7998
7999
56.7k
  case 524:
8000
56.7k
#line 1471 "/src/php-src/Zend/zend_language_parser.y"
8001
56.7k
                     { (yyval.ast) = (yyvsp[0].ast); }
8002
56.7k
#line 8003 "/src/php-src/Zend/zend_language_parser.c"
8003
56.7k
    break;
8004
8005
25.4k
  case 525:
8006
25.4k
#line 1475 "/src/php-src/Zend/zend_language_parser.y"
8007
25.4k
                                        { (yyval.ast) = (yyvsp[0].ast); }
8008
25.4k
#line 8009 "/src/php-src/Zend/zend_language_parser.c"
8009
25.4k
    break;
8010
8011
134
  case 526:
8012
134
#line 1476 "/src/php-src/Zend/zend_language_parser.y"
8013
134
                                { (yyval.ast) = (yyvsp[0].ast); }
8014
134
#line 8015 "/src/php-src/Zend/zend_language_parser.c"
8015
134
    break;
8016
8017
54
  case 527:
8018
54
#line 1477 "/src/php-src/Zend/zend_language_parser.y"
8019
54
                                { (yyval.ast) = (yyvsp[-1].ast); }
8020
54
#line 8021 "/src/php-src/Zend/zend_language_parser.c"
8021
54
    break;
8022
8023
0
  case 528:
8024
0
#line 1482 "/src/php-src/Zend/zend_language_parser.y"
8025
0
                        { (yyval.ast) = zend_ast_create_zval_from_str(ZSTR_EMPTY_ALLOC()); }
8026
0
#line 8027 "/src/php-src/Zend/zend_language_parser.c"
8027
0
    break;
8028
8029
12
  case 529:
8030
12
#line 1483 "/src/php-src/Zend/zend_language_parser.y"
8031
12
                                          { (yyval.ast) = (yyvsp[0].ast); }
8032
12
#line 8033 "/src/php-src/Zend/zend_language_parser.c"
8033
12
    break;
8034
8035
54
  case 530:
8036
54
#line 1484 "/src/php-src/Zend/zend_language_parser.y"
8037
54
                            { (yyval.ast) = (yyvsp[0].ast); }
8038
54
#line 8039 "/src/php-src/Zend/zend_language_parser.c"
8039
54
    break;
8040
8041
350
  case 531:
8042
350
#line 1489 "/src/php-src/Zend/zend_language_parser.y"
8043
350
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_ARG_LIST); }
8044
350
#line 8045 "/src/php-src/Zend/zend_language_parser.c"
8045
350
    break;
8046
8047
242
  case 532:
8048
242
#line 1490 "/src/php-src/Zend/zend_language_parser.y"
8049
242
                              { (yyval.ast) = (yyvsp[0].ast); }
8050
242
#line 8051 "/src/php-src/Zend/zend_language_parser.c"
8051
242
    break;
8052
8053
2.75k
  case 533:
8054
2.75k
#line 1495 "/src/php-src/Zend/zend_language_parser.y"
8055
2.75k
                                                { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_ARRAY_SYNTAX_LONG; }
8056
2.75k
#line 8057 "/src/php-src/Zend/zend_language_parser.c"
8057
2.75k
    break;
8058
8059
12.5k
  case 534:
8060
12.5k
#line 1496 "/src/php-src/Zend/zend_language_parser.y"
8061
12.5k
                                                        { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_ARRAY_SYNTAX_SHORT; }
8062
12.5k
#line 8063 "/src/php-src/Zend/zend_language_parser.c"
8063
12.5k
    break;
8064
8065
120k
  case 535:
8066
120k
#line 1497 "/src/php-src/Zend/zend_language_parser.y"
8067
120k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
8068
120k
#line 8069 "/src/php-src/Zend/zend_language_parser.c"
8069
120k
    break;
8070
8071
14.9k
  case 536:
8072
14.9k
#line 1498 "/src/php-src/Zend/zend_language_parser.y"
8073
14.9k
                                                                { (yyval.ast) = (yyvsp[-1].ast); }
8074
14.9k
#line 8075 "/src/php-src/Zend/zend_language_parser.c"
8075
14.9k
    break;
8076
8077
175k
  case 537:
8078
175k
#line 1502 "/src/php-src/Zend/zend_language_parser.y"
8079
175k
                                { (yyval.ast) = (yyvsp[0].ast); }
8080
175k
#line 8081 "/src/php-src/Zend/zend_language_parser.c"
8081
175k
    break;
8082
8083
13.1k
  case 538:
8084
13.1k
#line 1503 "/src/php-src/Zend/zend_language_parser.y"
8085
13.1k
                                { (yyval.ast) = (yyvsp[0].ast); }
8086
13.1k
#line 8087 "/src/php-src/Zend/zend_language_parser.c"
8087
13.1k
    break;
8088
8089
615
  case 539:
8090
615
#line 1504 "/src/php-src/Zend/zend_language_parser.y"
8091
615
                                                                        { (yyval.ast) = (yyvsp[-1].ast); }
8092
615
#line 8093 "/src/php-src/Zend/zend_language_parser.c"
8093
615
    break;
8094
8095
12
  case 540:
8096
12
#line 1506 "/src/php-src/Zend/zend_language_parser.y"
8097
12
                        { (yyval.ast) = zend_ast_create_zval_from_str(ZSTR_EMPTY_ALLOC()); }
8098
12
#line 8099 "/src/php-src/Zend/zend_language_parser.c"
8099
12
    break;
8100
8101
1.77k
  case 541:
8102
1.77k
#line 1507 "/src/php-src/Zend/zend_language_parser.y"
8103
1.77k
                                                          { (yyval.ast) = (yyvsp[-1].ast); }
8104
1.77k
#line 8105 "/src/php-src/Zend/zend_language_parser.c"
8105
1.77k
    break;
8106
8107
150k
  case 542:
8108
150k
#line 1508 "/src/php-src/Zend/zend_language_parser.y"
8109
150k
                                        { (yyval.ast) = (yyvsp[0].ast); }
8110
150k
#line 8111 "/src/php-src/Zend/zend_language_parser.c"
8111
150k
    break;
8112
8113
26.1k
  case 543:
8114
26.1k
#line 1509 "/src/php-src/Zend/zend_language_parser.y"
8115
26.1k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
8116
26.1k
#line 8117 "/src/php-src/Zend/zend_language_parser.c"
8117
26.1k
    break;
8118
8119
5.45k
  case 544:
8120
5.45k
#line 1510 "/src/php-src/Zend/zend_language_parser.y"
8121
5.45k
                                                { (yyval.ast) = (yyvsp[0].ast); }
8122
5.45k
#line 8123 "/src/php-src/Zend/zend_language_parser.c"
8123
5.45k
    break;
8124
8125
21.8k
  case 545:
8126
21.8k
#line 1514 "/src/php-src/Zend/zend_language_parser.y"
8127
21.8k
                                { (yyval.ast) = zend_ast_create(ZEND_AST_CONST, (yyvsp[0].ast)); }
8128
21.8k
#line 8129 "/src/php-src/Zend/zend_language_parser.c"
8129
21.8k
    break;
8130
8131
22
  case 546:
8132
22
#line 1515 "/src/php-src/Zend/zend_language_parser.y"
8133
22
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_LINE); }
8134
22
#line 8135 "/src/php-src/Zend/zend_language_parser.c"
8135
22
    break;
8136
8137
2.13k
  case 547:
8138
2.13k
#line 1516 "/src/php-src/Zend/zend_language_parser.y"
8139
2.13k
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_FILE); }
8140
2.13k
#line 8141 "/src/php-src/Zend/zend_language_parser.c"
8141
2.13k
    break;
8142
8143
197
  case 548:
8144
197
#line 1517 "/src/php-src/Zend/zend_language_parser.y"
8145
197
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_DIR); }
8146
197
#line 8147 "/src/php-src/Zend/zend_language_parser.c"
8147
197
    break;
8148
8149
10
  case 549:
8150
10
#line 1518 "/src/php-src/Zend/zend_language_parser.y"
8151
10
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_TRAIT_C); }
8152
10
#line 8153 "/src/php-src/Zend/zend_language_parser.c"
8153
10
    break;
8154
8155
1.66k
  case 550:
8156
1.66k
#line 1519 "/src/php-src/Zend/zend_language_parser.y"
8157
1.66k
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_METHOD_C); }
8158
1.66k
#line 8159 "/src/php-src/Zend/zend_language_parser.c"
8159
1.66k
    break;
8160
8161
395
  case 551:
8162
395
#line 1520 "/src/php-src/Zend/zend_language_parser.y"
8163
395
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_FUNC_C); }
8164
395
#line 8165 "/src/php-src/Zend/zend_language_parser.c"
8165
395
    break;
8166
8167
70
  case 552:
8168
70
#line 1521 "/src/php-src/Zend/zend_language_parser.y"
8169
70
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_PROPERTY_C); }
8170
70
#line 8171 "/src/php-src/Zend/zend_language_parser.c"
8171
70
    break;
8172
8173
60
  case 553:
8174
60
#line 1522 "/src/php-src/Zend/zend_language_parser.y"
8175
60
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_NS_C); }
8176
60
#line 8177 "/src/php-src/Zend/zend_language_parser.c"
8177
60
    break;
8178
8179
151
  case 554:
8180
151
#line 1523 "/src/php-src/Zend/zend_language_parser.y"
8181
151
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_CLASS_C); }
8182
151
#line 8183 "/src/php-src/Zend/zend_language_parser.c"
8183
151
    break;
8184
8185
4.51k
  case 555:
8186
4.51k
#line 1528 "/src/php-src/Zend/zend_language_parser.y"
8187
4.51k
                        { (yyval.ast) = zend_ast_create_class_const_or_name((yyvsp[-2].ast), (yyvsp[0].ast)); }
8188
4.51k
#line 8189 "/src/php-src/Zend/zend_language_parser.c"
8189
4.51k
    break;
8190
8191
462
  case 556:
8192
462
#line 1530 "/src/php-src/Zend/zend_language_parser.y"
8193
462
                        { (yyval.ast) = zend_ast_create_class_const_or_name((yyvsp[-2].ast), (yyvsp[0].ast)); }
8194
462
#line 8195 "/src/php-src/Zend/zend_language_parser.c"
8195
462
    break;
8196
8197
448
  case 557:
8198
448
#line 1532 "/src/php-src/Zend/zend_language_parser.y"
8199
448
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CLASS_CONST, (yyvsp[-4].ast), (yyvsp[-1].ast)); }
8200
448
#line 8201 "/src/php-src/Zend/zend_language_parser.c"
8201
448
    break;
8202
8203
290
  case 558:
8204
290
#line 1534 "/src/php-src/Zend/zend_language_parser.y"
8205
290
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CLASS_CONST, (yyvsp[-4].ast), (yyvsp[-1].ast)); }
8206
290
#line 8207 "/src/php-src/Zend/zend_language_parser.c"
8207
290
    break;
8208
8209
4.00k
  case 559:
8210
4.00k
#line 1538 "/src/php-src/Zend/zend_language_parser.y"
8211
4.00k
                        { (yyval.ast) = NULL; }
8212
4.00k
#line 8213 "/src/php-src/Zend/zend_language_parser.c"
8213
4.00k
    break;
8214
8215
22.5k
  case 560:
8216
22.5k
#line 1539 "/src/php-src/Zend/zend_language_parser.y"
8217
22.5k
                                { (yyval.ast) = (yyvsp[0].ast); }
8218
22.5k
#line 8219 "/src/php-src/Zend/zend_language_parser.c"
8219
22.5k
    break;
8220
8221
1.23k
  case 561:
8222
1.23k
#line 1543 "/src/php-src/Zend/zend_language_parser.y"
8223
1.23k
                                      { (yyval.ast) = (yyvsp[0].ast); }
8224
1.23k
#line 8225 "/src/php-src/Zend/zend_language_parser.c"
8225
1.23k
    break;
8226
8227
55.2k
  case 562:
8228
55.2k
#line 1547 "/src/php-src/Zend/zend_language_parser.y"
8229
55.2k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
8230
55.2k
#line 8231 "/src/php-src/Zend/zend_language_parser.c"
8231
55.2k
    break;
8232
8233
797
  case 563:
8234
797
#line 1548 "/src/php-src/Zend/zend_language_parser.y"
8235
797
                             {
8236
797
      (yyval.ast) = (yyvsp[-1].ast);
8237
797
      if ((yyval.ast)->kind == ZEND_AST_STATIC_PROP) (yyval.ast)->attr = ZEND_PARENTHESIZED_STATIC_PROP;
8238
797
    }
8239
797
#line 8240 "/src/php-src/Zend/zend_language_parser.c"
8240
797
    break;
8241
8242
188
  case 564:
8243
188
#line 1552 "/src/php-src/Zend/zend_language_parser.y"
8244
188
                                        { (yyval.ast) = (yyvsp[0].ast); }
8245
188
#line 8246 "/src/php-src/Zend/zend_language_parser.c"
8246
188
    break;
8247
8248
254
  case 565:
8249
254
#line 1553 "/src/php-src/Zend/zend_language_parser.y"
8250
254
                                                { (yyval.ast) = (yyvsp[0].ast); }
8251
254
#line 8252 "/src/php-src/Zend/zend_language_parser.c"
8252
254
    break;
8253
8254
160
  case 566:
8255
160
#line 1554 "/src/php-src/Zend/zend_language_parser.y"
8256
160
                                                { (yyval.ast) = (yyvsp[0].ast); }
8257
160
#line 8258 "/src/php-src/Zend/zend_language_parser.c"
8258
160
    break;
8259
8260
55.4k
  case 567:
8261
55.4k
#line 1558 "/src/php-src/Zend/zend_language_parser.y"
8262
55.4k
                                        { (yyval.ast) = (yyvsp[0].ast); }
8263
55.4k
#line 8264 "/src/php-src/Zend/zend_language_parser.c"
8264
55.4k
    break;
8265
8266
424
  case 568:
8267
424
#line 1559 "/src/php-src/Zend/zend_language_parser.y"
8268
424
                                                        { (yyval.ast) = (yyvsp[0].ast); }
8269
424
#line 8270 "/src/php-src/Zend/zend_language_parser.c"
8270
424
    break;
8271
8272
2.51k
  case 569:
8273
2.51k
#line 1563 "/src/php-src/Zend/zend_language_parser.y"
8274
2.51k
                                                { (yyval.ast) = (yyvsp[0].ast); }
8275
2.51k
#line 8276 "/src/php-src/Zend/zend_language_parser.c"
8276
2.51k
    break;
8277
8278
304
  case 570:
8279
304
#line 1564 "/src/php-src/Zend/zend_language_parser.y"
8280
304
                                                { (yyval.ast) = (yyvsp[-1].ast); }
8281
304
#line 8282 "/src/php-src/Zend/zend_language_parser.c"
8282
304
    break;
8283
8284
44
  case 571:
8285
44
#line 1565 "/src/php-src/Zend/zend_language_parser.y"
8286
44
                                        { (yyval.ast) = (yyvsp[0].ast); }
8287
44
#line 8288 "/src/php-src/Zend/zend_language_parser.c"
8288
44
    break;
8289
8290
18
  case 572:
8291
18
#line 1566 "/src/php-src/Zend/zend_language_parser.y"
8292
18
                                                { (yyval.ast) = (yyvsp[0].ast); }
8293
18
#line 8294 "/src/php-src/Zend/zend_language_parser.c"
8294
18
    break;
8295
8296
296k
  case 573:
8297
296k
#line 1571 "/src/php-src/Zend/zend_language_parser.y"
8298
296k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8299
296k
#line 8300 "/src/php-src/Zend/zend_language_parser.c"
8300
296k
    break;
8301
8302
18.4k
  case 574:
8303
18.4k
#line 1573 "/src/php-src/Zend/zend_language_parser.y"
8304
18.4k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DIM, (yyvsp[-3].ast), (yyvsp[-1].ast)); }
8305
18.4k
#line 8306 "/src/php-src/Zend/zend_language_parser.c"
8306
18.4k
    break;
8307
8308
18.8k
  case 575:
8309
18.8k
#line 1575 "/src/php-src/Zend/zend_language_parser.y"
8310
18.8k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_METHOD_CALL, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
8311
18.8k
#line 8312 "/src/php-src/Zend/zend_language_parser.c"
8312
18.8k
    break;
8313
8314
480
  case 576:
8315
480
#line 1577 "/src/php-src/Zend/zend_language_parser.y"
8316
480
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NULLSAFE_METHOD_CALL, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
8317
480
#line 8318 "/src/php-src/Zend/zend_language_parser.c"
8318
480
    break;
8319
8320
69.9k
  case 577:
8321
69.9k
#line 1578 "/src/php-src/Zend/zend_language_parser.y"
8322
69.9k
                              { (yyval.ast) = (yyvsp[0].ast); }
8323
69.9k
#line 8324 "/src/php-src/Zend/zend_language_parser.c"
8324
69.9k
    break;
8325
8326
402k
  case 578:
8327
402k
#line 1583 "/src/php-src/Zend/zend_language_parser.y"
8328
402k
                        { (yyval.ast) = (yyvsp[0].ast); }
8329
402k
#line 8330 "/src/php-src/Zend/zend_language_parser.c"
8330
402k
    break;
8331
8332
2.66k
  case 579:
8333
2.66k
#line 1585 "/src/php-src/Zend/zend_language_parser.y"
8334
2.66k
                        { (yyval.ast) = (yyvsp[0].ast); }
8335
2.66k
#line 8336 "/src/php-src/Zend/zend_language_parser.c"
8336
2.66k
    break;
8337
8338
17.6k
  case 580:
8339
17.6k
#line 1587 "/src/php-src/Zend/zend_language_parser.y"
8340
17.6k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8341
17.6k
#line 8342 "/src/php-src/Zend/zend_language_parser.c"
8342
17.6k
    break;
8343
8344
250
  case 581:
8345
250
#line 1589 "/src/php-src/Zend/zend_language_parser.y"
8346
250
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NULLSAFE_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8347
250
#line 8348 "/src/php-src/Zend/zend_language_parser.c"
8348
250
    break;
8349
8350
301k
  case 582:
8351
301k
#line 1593 "/src/php-src/Zend/zend_language_parser.y"
8352
301k
                                                { (yyval.ast) = (yyvsp[0].ast); }
8353
301k
#line 8354 "/src/php-src/Zend/zend_language_parser.c"
8354
301k
    break;
8355
8356
320
  case 583:
8357
320
#line 1594 "/src/php-src/Zend/zend_language_parser.y"
8358
320
                                        { (yyval.ast) = (yyvsp[-1].ast); }
8359
320
#line 8360 "/src/php-src/Zend/zend_language_parser.c"
8360
320
    break;
8361
8362
4.50k
  case 584:
8363
4.50k
#line 1595 "/src/php-src/Zend/zend_language_parser.y"
8364
4.50k
                                        { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8365
4.50k
#line 8366 "/src/php-src/Zend/zend_language_parser.c"
8366
4.50k
    break;
8367
8368
2.55k
  case 585:
8369
2.55k
#line 1600 "/src/php-src/Zend/zend_language_parser.y"
8370
2.55k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8371
2.55k
#line 8372 "/src/php-src/Zend/zend_language_parser.c"
8372
2.55k
    break;
8373
8374
110
  case 586:
8375
110
#line 1602 "/src/php-src/Zend/zend_language_parser.y"
8376
110
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8377
110
#line 8378 "/src/php-src/Zend/zend_language_parser.c"
8378
110
    break;
8379
8380
132
  case 587:
8381
132
#line 1607 "/src/php-src/Zend/zend_language_parser.y"
8382
132
                        { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8383
132
#line 8384 "/src/php-src/Zend/zend_language_parser.c"
8384
132
    break;
8385
8386
12
  case 588:
8387
12
#line 1609 "/src/php-src/Zend/zend_language_parser.y"
8388
12
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DIM, (yyvsp[-3].ast), (yyvsp[-1].ast)); }
8389
12
#line 8390 "/src/php-src/Zend/zend_language_parser.c"
8390
12
    break;
8391
8392
6
  case 589:
8393
6
#line 1611 "/src/php-src/Zend/zend_language_parser.y"
8394
6
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8395
6
#line 8396 "/src/php-src/Zend/zend_language_parser.c"
8396
6
    break;
8397
8398
4
  case 590:
8399
4
#line 1613 "/src/php-src/Zend/zend_language_parser.y"
8400
4
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NULLSAFE_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8401
4
#line 8402 "/src/php-src/Zend/zend_language_parser.c"
8402
4
    break;
8403
8404
2
  case 591:
8405
2
#line 1615 "/src/php-src/Zend/zend_language_parser.y"
8406
2
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8407
2
#line 8408 "/src/php-src/Zend/zend_language_parser.c"
8408
2
    break;
8409
8410
4
  case 592:
8411
4
#line 1617 "/src/php-src/Zend/zend_language_parser.y"
8412
4
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8413
4
#line 8414 "/src/php-src/Zend/zend_language_parser.c"
8414
4
    break;
8415
8416
3.26k
  case 593:
8417
3.26k
#line 1621 "/src/php-src/Zend/zend_language_parser.y"
8418
3.26k
                           { (yyval.ast) = (yyvsp[0].ast); }
8419
3.26k
#line 8420 "/src/php-src/Zend/zend_language_parser.c"
8420
3.26k
    break;
8421
8422
30
  case 594:
8423
30
#line 1622 "/src/php-src/Zend/zend_language_parser.y"
8424
30
                                { (yyval.ast) = (yyvsp[-1].ast); }
8425
30
#line 8426 "/src/php-src/Zend/zend_language_parser.c"
8426
30
    break;
8427
8428
214
  case 595:
8429
214
#line 1623 "/src/php-src/Zend/zend_language_parser.y"
8430
214
                                { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8431
214
#line 8432 "/src/php-src/Zend/zend_language_parser.c"
8432
214
    break;
8433
8434
35.5k
  case 596:
8435
35.5k
#line 1627 "/src/php-src/Zend/zend_language_parser.y"
8436
35.5k
                         { (yyval.ast) = (yyvsp[0].ast); }
8437
35.5k
#line 8438 "/src/php-src/Zend/zend_language_parser.c"
8438
35.5k
    break;
8439
8440
694
  case 597:
8441
694
#line 1628 "/src/php-src/Zend/zend_language_parser.y"
8442
694
                                { (yyval.ast) = (yyvsp[-1].ast); }
8443
694
#line 8444 "/src/php-src/Zend/zend_language_parser.c"
8444
694
    break;
8445
8446
1.07k
  case 598:
8447
1.07k
#line 1629 "/src/php-src/Zend/zend_language_parser.y"
8448
1.07k
                                { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8449
1.07k
#line 8450 "/src/php-src/Zend/zend_language_parser.c"
8450
1.07k
    break;
8451
8452
15.8k
  case 599:
8453
15.8k
#line 1634 "/src/php-src/Zend/zend_language_parser.y"
8454
15.8k
                        { /* allow single trailing comma */ (yyval.ast) = zend_ast_list_rtrim((yyvsp[0].ast)); }
8455
15.8k
#line 8456 "/src/php-src/Zend/zend_language_parser.c"
8456
15.8k
    break;
8457
8458
3.60k
  case 600:
8459
3.60k
#line 1638 "/src/php-src/Zend/zend_language_parser.y"
8460
3.60k
                       { (yyval.ast) = NULL; }
8461
3.60k
#line 8462 "/src/php-src/Zend/zend_language_parser.c"
8462
3.60k
    break;
8463
8464
153k
  case 601:
8465
153k
#line 1639 "/src/php-src/Zend/zend_language_parser.y"
8466
153k
                            { (yyval.ast) = (yyvsp[0].ast); }
8467
153k
#line 8468 "/src/php-src/Zend/zend_language_parser.c"
8468
153k
    break;
8469
8470
140k
  case 602:
8471
140k
#line 1644 "/src/php-src/Zend/zend_language_parser.y"
8472
140k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
8473
140k
#line 8474 "/src/php-src/Zend/zend_language_parser.c"
8474
140k
    break;
8475
8476
15.9k
  case 603:
8477
15.9k
#line 1646 "/src/php-src/Zend/zend_language_parser.y"
8478
15.9k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ARRAY, (yyvsp[0].ast)); }
8479
15.9k
#line 8480 "/src/php-src/Zend/zend_language_parser.c"
8480
15.9k
    break;
8481
8482
3.96k
  case 604:
8483
3.96k
#line 1651 "/src/php-src/Zend/zend_language_parser.y"
8484
3.96k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ARRAY_ELEM, (yyvsp[0].ast), (yyvsp[-2].ast)); }
8485
3.96k
#line 8486 "/src/php-src/Zend/zend_language_parser.c"
8486
3.96k
    break;
8487
8488
148k
  case 605:
8489
148k
#line 1653 "/src/php-src/Zend/zend_language_parser.y"
8490
148k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ARRAY_ELEM, (yyvsp[0].ast), NULL); }
8491
148k
#line 8492 "/src/php-src/Zend/zend_language_parser.c"
8492
148k
    break;
8493
8494
68
  case 606:
8495
68
#line 1655 "/src/php-src/Zend/zend_language_parser.y"
8496
68
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_ARRAY_ELEM, 1, (yyvsp[0].ast), (yyvsp[-3].ast)); }
8497
68
#line 8498 "/src/php-src/Zend/zend_language_parser.c"
8498
68
    break;
8499
8500
270
  case 607:
8501
270
#line 1657 "/src/php-src/Zend/zend_language_parser.y"
8502
270
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_ARRAY_ELEM, 1, (yyvsp[0].ast), NULL); }
8503
270
#line 8504 "/src/php-src/Zend/zend_language_parser.c"
8504
270
    break;
8505
8506
195
  case 608:
8507
195
#line 1659 "/src/php-src/Zend/zend_language_parser.y"
8508
195
                        { (yyval.ast) = zend_ast_create(ZEND_AST_UNPACK, (yyvsp[0].ast)); }
8509
195
#line 8510 "/src/php-src/Zend/zend_language_parser.c"
8510
195
    break;
8511
8512
16
  case 609:
8513
16
#line 1661 "/src/php-src/Zend/zend_language_parser.y"
8514
16
                        { (yyvsp[-1].ast)->attr = ZEND_ARRAY_SYNTAX_LIST;
8515
16
        (yyval.ast) = zend_ast_create(ZEND_AST_ARRAY_ELEM, (yyvsp[-1].ast), (yyvsp[-5].ast)); }
8516
16
#line 8517 "/src/php-src/Zend/zend_language_parser.c"
8517
16
    break;
8518
8519
52
  case 610:
8520
52
#line 1664 "/src/php-src/Zend/zend_language_parser.y"
8521
52
                        { (yyvsp[-1].ast)->attr = ZEND_ARRAY_SYNTAX_LIST;
8522
52
        (yyval.ast) = zend_ast_create(ZEND_AST_ARRAY_ELEM, (yyvsp[-1].ast), NULL); }
8523
52
#line 8524 "/src/php-src/Zend/zend_language_parser.c"
8524
52
    break;
8525
8526
69.8k
  case 611:
8527
69.8k
#line 1670 "/src/php-src/Zend/zend_language_parser.y"
8528
69.8k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
8529
69.8k
#line 8530 "/src/php-src/Zend/zend_language_parser.c"
8530
69.8k
    break;
8531
8532
84.2k
  case 612:
8533
84.2k
#line 1672 "/src/php-src/Zend/zend_language_parser.y"
8534
84.2k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
8535
84.2k
#line 8536 "/src/php-src/Zend/zend_language_parser.c"
8536
84.2k
    break;
8537
8538
4.24k
  case 613:
8539
4.24k
#line 1674 "/src/php-src/Zend/zend_language_parser.y"
8540
4.24k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ENCAPS_LIST, (yyvsp[0].ast)); }
8541
4.24k
#line 8542 "/src/php-src/Zend/zend_language_parser.c"
8542
4.24k
    break;
8543
8544
13.3k
  case 614:
8545
13.3k
#line 1676 "/src/php-src/Zend/zend_language_parser.y"
8546
13.3k
                        { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_ENCAPS_LIST, (yyvsp[-1].ast), (yyvsp[0].ast)); }
8547
13.3k
#line 8548 "/src/php-src/Zend/zend_language_parser.c"
8548
13.3k
    break;
8549
8550
66.3k
  case 615:
8551
66.3k
#line 1681 "/src/php-src/Zend/zend_language_parser.y"
8552
66.3k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8553
66.3k
#line 8554 "/src/php-src/Zend/zend_language_parser.c"
8554
66.3k
    break;
8555
8556
821
  case 616:
8557
821
#line 1683 "/src/php-src/Zend/zend_language_parser.y"
8558
821
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DIM,
8559
821
            zend_ast_create(ZEND_AST_VAR, (yyvsp[-3].ast)), (yyvsp[-1].ast)); }
8560
821
#line 8561 "/src/php-src/Zend/zend_language_parser.c"
8561
821
    break;
8562
8563
7.94k
  case 617:
8564
7.94k
#line 1686 "/src/php-src/Zend/zend_language_parser.y"
8565
7.94k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP,
8566
7.94k
            zend_ast_create(ZEND_AST_VAR, (yyvsp[-2].ast)), (yyvsp[0].ast)); }
8567
7.94k
#line 8568 "/src/php-src/Zend/zend_language_parser.c"
8568
7.94k
    break;
8569
8570
11.7k
  case 618:
8571
11.7k
#line 1689 "/src/php-src/Zend/zend_language_parser.y"
8572
11.7k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NULLSAFE_PROP,
8573
11.7k
            zend_ast_create(ZEND_AST_VAR, (yyvsp[-2].ast)), (yyvsp[0].ast)); }
8574
11.7k
#line 8575 "/src/php-src/Zend/zend_language_parser.c"
8575
11.7k
    break;
8576
8577
135
  case 619:
8578
135
#line 1692 "/src/php-src/Zend/zend_language_parser.y"
8579
135
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_VAR, ZEND_ENCAPS_VAR_DOLLAR_CURLY_VAR_VAR, (yyvsp[-1].ast)); }
8580
135
#line 8581 "/src/php-src/Zend/zend_language_parser.c"
8581
135
    break;
8582
8583
31
  case 620:
8584
31
#line 1694 "/src/php-src/Zend/zend_language_parser.y"
8585
31
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_VAR, ZEND_ENCAPS_VAR_DOLLAR_CURLY, (yyvsp[-1].ast)); }
8586
31
#line 8587 "/src/php-src/Zend/zend_language_parser.c"
8587
31
    break;
8588
8589
14
  case 621:
8590
14
#line 1696 "/src/php-src/Zend/zend_language_parser.y"
8591
14
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_DIM, ZEND_ENCAPS_VAR_DOLLAR_CURLY,
8592
14
            zend_ast_create(ZEND_AST_VAR, (yyvsp[-4].ast)), (yyvsp[-2].ast)); }
8593
14
#line 8594 "/src/php-src/Zend/zend_language_parser.c"
8594
14
    break;
8595
8596
424
  case 622:
8597
424
#line 1698 "/src/php-src/Zend/zend_language_parser.y"
8598
424
                                          { (yyval.ast) = (yyvsp[-1].ast); }
8599
424
#line 8600 "/src/php-src/Zend/zend_language_parser.c"
8600
424
    break;
8601
8602
55
  case 623:
8603
55
#line 1702 "/src/php-src/Zend/zend_language_parser.y"
8604
55
                                                { (yyval.ast) = (yyvsp[0].ast); }
8605
55
#line 8606 "/src/php-src/Zend/zend_language_parser.c"
8606
55
    break;
8607
8608
463
  case 624:
8609
463
#line 1703 "/src/php-src/Zend/zend_language_parser.y"
8610
463
                                        { (yyval.ast) = (yyvsp[0].ast); }
8611
463
#line 8612 "/src/php-src/Zend/zend_language_parser.c"
8612
463
    break;
8613
8614
108
  case 625:
8615
108
#line 1704 "/src/php-src/Zend/zend_language_parser.y"
8616
108
                                        { (yyval.ast) = zend_negate_num_string((yyvsp[0].ast)); }
8617
108
#line 8618 "/src/php-src/Zend/zend_language_parser.c"
8618
108
    break;
8619
8620
259
  case 626:
8621
259
#line 1705 "/src/php-src/Zend/zend_language_parser.y"
8622
259
                                                { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8623
259
#line 8624 "/src/php-src/Zend/zend_language_parser.c"
8624
259
    break;
8625
8626
1.51k
  case 627:
8627
1.51k
#line 1710 "/src/php-src/Zend/zend_language_parser.y"
8628
1.51k
                                                               { (yyval.ast) = (yyvsp[-2].ast); }
8629
1.51k
#line 8630 "/src/php-src/Zend/zend_language_parser.c"
8630
1.51k
    break;
8631
8632
425
  case 628:
8633
425
#line 1711 "/src/php-src/Zend/zend_language_parser.y"
8634
425
                                     { (yyval.ast) = zend_ast_create(ZEND_AST_EMPTY, (yyvsp[-1].ast)); }
8635
425
#line 8636 "/src/php-src/Zend/zend_language_parser.c"
8636
425
    break;
8637
8638
439
  case 629:
8639
439
#line 1713 "/src/php-src/Zend/zend_language_parser.y"
8640
439
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_INCLUDE, (yyvsp[0].ast)); }
8641
439
#line 8642 "/src/php-src/Zend/zend_language_parser.c"
8642
439
    break;
8643
8644
56
  case 630:
8645
56
#line 1715 "/src/php-src/Zend/zend_language_parser.y"
8646
56
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_INCLUDE_ONCE, (yyvsp[0].ast)); }
8647
56
#line 8648 "/src/php-src/Zend/zend_language_parser.c"
8648
56
    break;
8649
8650
1.09k
  case 631:
8651
1.09k
#line 1717 "/src/php-src/Zend/zend_language_parser.y"
8652
1.09k
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_EVAL, (yyvsp[-1].ast)); }
8653
1.09k
#line 8654 "/src/php-src/Zend/zend_language_parser.c"
8654
1.09k
    break;
8655
8656
2.01k
  case 632:
8657
2.01k
#line 1719 "/src/php-src/Zend/zend_language_parser.y"
8658
2.01k
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_REQUIRE, (yyvsp[0].ast)); }
8659
2.01k
#line 8660 "/src/php-src/Zend/zend_language_parser.c"
8660
2.01k
    break;
8661
8662
63
  case 633:
8663
63
#line 1721 "/src/php-src/Zend/zend_language_parser.y"
8664
63
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_REQUIRE_ONCE, (yyvsp[0].ast)); }
8665
63
#line 8666 "/src/php-src/Zend/zend_language_parser.c"
8666
63
    break;
8667
8668
1.51k
  case 634:
8669
1.51k
#line 1725 "/src/php-src/Zend/zend_language_parser.y"
8670
1.51k
                               { (yyval.ast) = (yyvsp[0].ast); }
8671
1.51k
#line 8672 "/src/php-src/Zend/zend_language_parser.c"
8672
1.51k
    break;
8673
8674
10
  case 635:
8675
10
#line 1727 "/src/php-src/Zend/zend_language_parser.y"
8676
10
                        { (yyval.ast) = zend_ast_create(ZEND_AST_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8677
10
#line 8678 "/src/php-src/Zend/zend_language_parser.c"
8678
10
    break;
8679
8680
1.52k
  case 636:
8681
1.52k
#line 1731 "/src/php-src/Zend/zend_language_parser.y"
8682
1.52k
                     { (yyval.ast) = zend_ast_create(ZEND_AST_ISSET, (yyvsp[0].ast)); }
8683
1.52k
#line 8684 "/src/php-src/Zend/zend_language_parser.c"
8684
1.52k
    break;
8685
8686
8687
0
#line 8688 "/src/php-src/Zend/zend_language_parser.c"
8688
8689
110k
      default: break;
8690
6.19M
    }
8691
  /* User semantic actions sometimes alter yychar, and that requires
8692
     that yytoken be updated with the new translation.  We take the
8693
     approach of translating immediately before every use of yytoken.
8694
     One alternative is translating here after every semantic action,
8695
     but that translation would be missed if the semantic action invokes
8696
     YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or
8697
     if it invokes YYBACKUP.  In the case of YYABORT or YYACCEPT, an
8698
     incorrect destructor might then be invoked immediately.  In the
8699
     case of YYERROR or YYBACKUP, subsequent parser actions might lead
8700
     to an incorrect destructor call or verbose syntax error message
8701
     before the lookahead is translated.  */
8702
6.19M
  YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
8703
8704
6.19M
  YYPOPSTACK (yylen);
8705
6.19M
  yylen = 0;
8706
6.19M
  YY_STACK_PRINT (yyss, yyssp);
8707
8708
6.19M
  *++yyvsp = yyval;
8709
8710
  /* Now 'shift' the result of the reduction.  Determine what state
8711
     that goes to, based on the state we popped back to and the rule
8712
     number reduced by.  */
8713
6.19M
  {
8714
6.19M
    const int yylhs = yyr1[yyn] - YYNTOKENS;
8715
6.19M
    const int yyi = yypgoto[yylhs] + *yyssp;
8716
6.19M
    yystate = (0 <= yyi && yyi <= YYLAST && yycheck[yyi] == *yyssp
8717
6.19M
               ? yytable[yyi]
8718
6.19M
               : yydefgoto[yylhs]);
8719
6.19M
  }
8720
8721
6.19M
  goto yynewstate;
8722
8723
8724
/*--------------------------------------.
8725
| yyerrlab -- here on detecting error.  |
8726
`--------------------------------------*/
8727
2.15k
yyerrlab:
8728
  /* Make sure we have latest lookahead translation.  See comments at
8729
     user semantic actions for why this is necessary.  */
8730
2.15k
  yytoken = yychar == YYEMPTY ? YYEMPTY : YYTRANSLATE (yychar);
8731
8732
  /* If not already recovering from an error, report this error.  */
8733
2.15k
  if (!yyerrstatus)
8734
2.15k
    {
8735
2.15k
      ++yynerrs;
8736
#if ! YYERROR_VERBOSE
8737
      yyerror (YY_("syntax error"));
8738
#else
8739
2.15k
# define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \
8740
2.15k
                                        yyssp, yytoken)
8741
2.15k
      {
8742
2.15k
        char const *yymsgp = YY_("syntax error");
8743
2.15k
        int yysyntax_error_status;
8744
2.15k
        yysyntax_error_status = YYSYNTAX_ERROR;
8745
2.15k
        if (yysyntax_error_status == 0)
8746
2.15k
          yymsgp = yymsg;
8747
2
        else if (yysyntax_error_status == 1)
8748
2
          {
8749
2
            if (yymsg != yymsgbuf)
8750
0
              YYSTACK_FREE (yymsg);
8751
2
            yymsg = YY_CAST (char *, YYSTACK_ALLOC (YY_CAST (YYSIZE_T, yymsg_alloc)));
8752
2
            if (!yymsg)
8753
0
              {
8754
0
                yymsg = yymsgbuf;
8755
0
                yymsg_alloc = sizeof yymsgbuf;
8756
0
                yysyntax_error_status = 2;
8757
0
              }
8758
2
            else
8759
2
              {
8760
2
                yysyntax_error_status = YYSYNTAX_ERROR;
8761
2
                yymsgp = yymsg;
8762
2
              }
8763
2
          }
8764
2.15k
        yyerror (yymsgp);
8765
2.15k
        if (yysyntax_error_status == 2)
8766
0
          goto yyexhaustedlab;
8767
2.15k
      }
8768
2.15k
# undef YYSYNTAX_ERROR
8769
2.15k
#endif
8770
2.15k
    }
8771
8772
8773
8774
2.15k
  if (yyerrstatus == 3)
8775
0
    {
8776
      /* If just tried and failed to reuse lookahead token after an
8777
         error, discard it.  */
8778
8779
0
      if (yychar <= YYEOF)
8780
0
        {
8781
          /* Return failure if at end of input.  */
8782
0
          if (yychar == YYEOF)
8783
0
            YYABORT;
8784
0
        }
8785
0
      else
8786
0
        {
8787
0
          yydestruct ("Error: discarding",
8788
0
                      yytoken, &yylval);
8789
0
          yychar = YYEMPTY;
8790
0
        }
8791
0
    }
8792
8793
  /* Else will try to reuse lookahead token after shifting the error
8794
     token.  */
8795
2.15k
  goto yyerrlab1;
8796
8797
8798
/*---------------------------------------------------.
8799
| yyerrorlab -- error raised explicitly by YYERROR.  |
8800
`---------------------------------------------------*/
8801
2.15k
yyerrorlab:
8802
  /* Pacify compilers when the user code never invokes YYERROR and the
8803
     label yyerrorlab therefore never appears in user code.  */
8804
18
  if (0)
8805
0
    YYERROR;
8806
8807
  /* Do not reclaim the symbols of the rule whose action triggered
8808
     this YYERROR.  */
8809
18
  YYPOPSTACK (yylen);
8810
18
  yylen = 0;
8811
18
  YY_STACK_PRINT (yyss, yyssp);
8812
18
  yystate = *yyssp;
8813
18
  goto yyerrlab1;
8814
8815
8816
/*-------------------------------------------------------------.
8817
| yyerrlab1 -- common code for both syntax error and YYERROR.  |
8818
`-------------------------------------------------------------*/
8819
2.17k
yyerrlab1:
8820
2.17k
  yyerrstatus = 3;      /* Each real token shifted decrements this.  */
8821
8822
2.17k
  for (;;)
8823
43.9k
    {
8824
43.9k
      yyn = yypact[yystate];
8825
43.9k
      if (!yypact_value_is_default (yyn))
8826
35.1k
        {
8827
35.1k
          yyn += YYTERROR;
8828
35.1k
          if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
8829
0
            {
8830
0
              yyn = yytable[yyn];
8831
0
              if (0 < yyn)
8832
0
                break;
8833
0
            }
8834
35.1k
        }
8835
8836
      /* Pop the current state because it cannot handle the error token.  */
8837
43.9k
      if (yyssp == yyss)
8838
2.17k
        YYABORT;
8839
8840
8841
41.7k
      yydestruct ("Error: popping",
8842
41.7k
                  yystos[yystate], yyvsp);
8843
41.7k
      YYPOPSTACK (1);
8844
41.7k
      yystate = *yyssp;
8845
41.7k
      YY_STACK_PRINT (yyss, yyssp);
8846
41.7k
    }
8847
8848
0
  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
8849
0
  *++yyvsp = yylval;
8850
0
  YY_IGNORE_MAYBE_UNINITIALIZED_END
8851
8852
8853
  /* Shift the error token.  */
8854
0
  YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
8855
8856
0
  yystate = yyn;
8857
0
  goto yynewstate;
8858
8859
8860
/*-------------------------------------.
8861
| yyacceptlab -- YYACCEPT comes here.  |
8862
`-------------------------------------*/
8863
25.4k
yyacceptlab:
8864
25.4k
  yyresult = 0;
8865
25.4k
  goto yyreturn;
8866
8867
8868
/*-----------------------------------.
8869
| yyabortlab -- YYABORT comes here.  |
8870
`-----------------------------------*/
8871
2.17k
yyabortlab:
8872
2.17k
  yyresult = 1;
8873
2.17k
  goto yyreturn;
8874
8875
8876
0
#if !defined yyoverflow || YYERROR_VERBOSE
8877
/*-------------------------------------------------.
8878
| yyexhaustedlab -- memory exhaustion comes here.  |
8879
`-------------------------------------------------*/
8880
2
yyexhaustedlab:
8881
2
  yyerror (YY_("memory exhausted"));
8882
2
  yyresult = 2;
8883
  /* Fall through.  */
8884
2
#endif
8885
8886
8887
/*-----------------------------------------------------.
8888
| yyreturn -- parsing is finished, return the result.  |
8889
`-----------------------------------------------------*/
8890
27.6k
yyreturn:
8891
27.6k
  if (yychar != YYEMPTY)
8892
2.16k
    {
8893
      /* Make sure we have latest lookahead translation.  See comments at
8894
         user semantic actions for why this is necessary.  */
8895
2.16k
      yytoken = YYTRANSLATE (yychar);
8896
2.16k
      yydestruct ("Cleanup: discarding lookahead",
8897
2.16k
                  yytoken, &yylval);
8898
2.16k
    }
8899
  /* Do not reclaim the symbols of the rule whose action triggered
8900
     this YYABORT or YYACCEPT.  */
8901
27.6k
  YYPOPSTACK (yylen);
8902
27.6k
  YY_STACK_PRINT (yyss, yyssp);
8903
98.6k
  while (yyssp != yyss)
8904
70.9k
    {
8905
70.9k
      yydestruct ("Cleanup: popping",
8906
70.9k
                  yystos[+*yyssp], yyvsp);
8907
70.9k
      YYPOPSTACK (1);
8908
70.9k
    }
8909
27.6k
#ifndef yyoverflow
8910
27.6k
  if (yyss != yyssa)
8911
50
    YYSTACK_FREE (yyss);
8912
27.6k
#endif
8913
27.6k
#if YYERROR_VERBOSE
8914
27.6k
  if (yymsg != yymsgbuf)
8915
2
    YYSTACK_FREE (yymsg);
8916
27.6k
#endif
8917
27.6k
  return yyresult;
8918
2
}
8919
#line 1734 "/src/php-src/Zend/zend_language_parser.y"
8920
8921
8922
/* Over-ride Bison formatting routine to give better token descriptions.
8923
   Copy to YYRES the contents of YYSTR for use in yyerror.
8924
   YYSTR is taken from yytname, from the %token declaration.
8925
   If YYRES is null, do not copy; instead, return the length of what
8926
   the result would have been.  */
8927
static YYSIZE_T zend_yytnamerr(char *yyres, const char *yystr)
8928
12.4k
{
8929
12.4k
  const char *toktype = yystr;
8930
12.4k
  size_t toktype_len = strlen(toktype);
8931
8932
  /* CG(parse_error) states:
8933
   * 0 => yyres = NULL, yystr is the unexpected token
8934
   * 1 => yyres = NULL, yystr is one of the expected tokens
8935
   * 2 => yyres != NULL, yystr is the unexpected token
8936
   * 3 => yyres != NULL, yystr is one of the expected tokens
8937
   */
8938
12.4k
  if (yyres && CG(parse_error) < 2) {
8939
2.15k
    CG(parse_error) = 2;
8940
2.15k
  }
8941
8942
12.4k
  if (CG(parse_error) % 2 == 0) {
8943
    /* The unexpected token */
8944
4.31k
    char buffer[120];
8945
4.31k
    const unsigned char *tokcontent, *tokcontent_end;
8946
4.31k
    size_t tokcontent_len;
8947
8948
4.31k
    CG(parse_error)++;
8949
8950
4.31k
    if (LANG_SCNG(yy_text)[0] == 0 &&
8951
1.03k
      LANG_SCNG(yy_leng) == 1 &&
8952
1.03k
      strcmp(toktype, "\"end of file\"") == 0) {
8953
272
      if (yyres) {
8954
136
        yystpcpy(yyres, "end of file");
8955
136
      }
8956
272
      return sizeof("end of file")-1;
8957
272
    }
8958
8959
    /* Prevent the backslash getting doubled in the output (eugh) */
8960
4.04k
    if (strcmp(toktype, "\"'\\\\'\"") == 0) {
8961
44
      if (yyres) {
8962
22
        yystpcpy(yyres, "token \"\\\"");
8963
22
      }
8964
44
      return sizeof("token \"\\\"")-1;
8965
44
    }
8966
8967
    /* We used "amp" as a dummy label to avoid a duplicate token literal warning. */
8968
3.99k
    if (strcmp(toktype, "\"amp\"") == 0) {
8969
40
      if (yyres) {
8970
20
        yystpcpy(yyres, "token \"&\"");
8971
20
      }
8972
40
      return sizeof("token \"&\"")-1;
8973
40
    }
8974
8975
    /* Avoid unreadable """ */
8976
    /* "'" would theoretically be just as bad, but is never currently parsed as a separate token */
8977
3.95k
    if (strcmp(toktype, "'\"'") == 0) {
8978
24
      if (yyres) {
8979
12
        yystpcpy(yyres, "double-quote mark");
8980
12
      }
8981
24
      return sizeof("double-quote mark")-1;
8982
24
    }
8983
8984
    /* Strip off the outer quote marks */
8985
3.93k
    if (toktype_len >= 2 && *toktype == '"') {
8986
2.35k
      toktype++;
8987
2.35k
      toktype_len -= 2;
8988
2.35k
    }
8989
8990
    /* If the token always has one form, the %token line should have a single-quoted name */
8991
    /* The parser rules also include single-character un-named tokens which will be single-quoted here */
8992
    /* We re-format this with double quotes here to ensure everything's consistent */
8993
3.93k
    if (toktype_len > 0 && *toktype == '\'') {
8994
1.81k
      if (yyres) {
8995
908
        snprintf(buffer, sizeof(buffer), "token \"%.*s\"", (int)toktype_len-2, toktype+1);
8996
908
        yystpcpy(yyres, buffer);
8997
908
      }
8998
1.81k
      return toktype_len + sizeof("token ")-1;
8999
1.81k
    }
9000
9001
    /* Fetch the content of the last seen token from global lexer state */
9002
2.11k
    tokcontent = LANG_SCNG(yy_text);
9003
2.11k
    tokcontent_len = LANG_SCNG(yy_leng);
9004
9005
    /* For T_BAD_CHARACTER, the content probably won't be a printable char */
9006
    /* Also, "unexpected invalid character" sounds a bit redundant */
9007
2.11k
    if (tokcontent_len == 1 && strcmp(yystr, "\"invalid character\"") == 0) {
9008
836
      if (yyres) {
9009
418
        snprintf(buffer, sizeof(buffer), "character 0x%02hhX", *tokcontent);
9010
418
        yystpcpy(yyres, buffer);
9011
418
      }
9012
836
      return sizeof("character 0x00")-1;
9013
836
    }
9014
9015
    /* Truncate at line end to avoid messing up log formats */
9016
1.28k
    tokcontent_end = memchr(tokcontent, '\n', tokcontent_len);
9017
1.28k
    if (tokcontent_end != NULL) {
9018
180
      tokcontent_len = (tokcontent_end - tokcontent);
9019
180
    }
9020
9021
    /* Try to be helpful about what kind of string was found, before stripping the quotes */
9022
1.28k
    if (tokcontent_len > 0 && strcmp(yystr, "\"quoted string\"") == 0) {
9023
60
      if (*tokcontent == '"') {
9024
20
        toktype = "double-quoted string";
9025
20
        toktype_len = sizeof("double-quoted string")-1;
9026
20
      }
9027
40
      else if (*tokcontent == '\'') {
9028
40
        toktype = "single-quoted string";
9029
40
        toktype_len = sizeof("single-quoted string")-1;
9030
40
      }
9031
60
    }
9032
9033
    /* For quoted strings, strip off another layer of quotes to avoid putting quotes inside quotes */
9034
1.28k
    if (tokcontent_len > 0 && (*tokcontent == '\'' || *tokcontent=='"'))  {
9035
136
      tokcontent++;
9036
136
      tokcontent_len--;
9037
136
    }
9038
1.28k
    if (tokcontent_len > 0 && (tokcontent[tokcontent_len-1] == '\'' || tokcontent[tokcontent_len-1] == '"'))  {
9039
32
      tokcontent_len--;
9040
32
    }
9041
9042
    /* Truncate to 30 characters and add a ... */
9043
1.28k
    if (tokcontent_len > 30 + sizeof("...")-1) {
9044
60
      if (yyres) {
9045
30
        snprintf(buffer, sizeof(buffer), "%.*s \"%.*s...\"", (int)toktype_len, toktype, 30, tokcontent);
9046
30
        yystpcpy(yyres, buffer);
9047
30
      }
9048
60
      return toktype_len + 30 + sizeof(" \"...\"")-1;
9049
60
    }
9050
9051
1.22k
    if (yyres) {
9052
610
      snprintf(buffer, sizeof(buffer), "%.*s \"%.*s\"", (int)toktype_len, toktype, (int)tokcontent_len, tokcontent);
9053
610
      yystpcpy(yyres, buffer);
9054
610
    }
9055
1.22k
    return toktype_len + tokcontent_len + sizeof(" \"\"")-1;
9056
1.28k
  }
9057
9058
  /* One of the expected tokens */
9059
9060
  /* Prevent the backslash getting doubled in the output (eugh) */
9061
8.15k
  if (strcmp(toktype, "\"'\\\\'\"") == 0) {
9062
0
    if (yyres) {
9063
0
      yystpcpy(yyres, "\"\\\"");
9064
0
    }
9065
0
    return sizeof("\"\\\"")-1;
9066
0
  }
9067
9068
  /* We used "amp" as a dummy label to avoid a duplicate token literal warning. */
9069
8.15k
  if (strcmp(toktype, "\"amp\"") == 0) {
9070
0
    if (yyres) {
9071
0
      yystpcpy(yyres, "token \"&\"");
9072
0
    }
9073
0
    return sizeof("token \"&\"")-1;
9074
0
  }
9075
9076
  /* Strip off the outer quote marks */
9077
8.15k
  if (toktype_len >= 2 && *toktype == '"') {
9078
6.56k
    toktype++;
9079
6.56k
    toktype_len -= 2;
9080
6.56k
  }
9081
9082
8.15k
  if (yyres) {
9083
1.14k
    YYSIZE_T yyn = 0;
9084
9085
7.00k
    for (; yyn < toktype_len; ++yyn) {
9086
      /* Replace single quotes with double for consistency */
9087
5.85k
      if (toktype[yyn] == '\'') {
9088
1.63k
        yyres[yyn] = '"';
9089
1.63k
      }
9090
4.22k
      else {
9091
4.22k
        yyres[yyn] = toktype[yyn];
9092
4.22k
      }
9093
5.85k
    }
9094
1.14k
    yyres[toktype_len] = '\0';
9095
1.14k
  }
9096
9097
8.15k
  return toktype_len;
9098
8.15k
}