Coverage Report

Created: 2026-06-02 06:39

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
2.82k
#define YYSIZE_T size_t
77
37.6k
#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
183k
#define YYSTYPE         ZENDSTYPE
88
/* Substitute the variable and function names.  */
89
#define yyparse         zendparse
90
2.95M
#define yylex           zendlex
91
6.45k
#define yyerror         zenderror
92
#define yydebug         zenddebug
93
43.0k
#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.44M
#   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
34.7k
#   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
114k
#  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
28.3k
  YY_CAST (YYPTRDIFF_T,                                 \
420
           (YYPTRDIFF_MAXIMUM < YY_CAST (YYSIZE_T, -1)  \
421
            ? YYPTRDIFF_MAXIMUM                         \
422
            : YY_CAST (YYSIZE_T, -1)))
423
424
684
#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
6.45k
#  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
155k
# 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
73.2k
# 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.41M
#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
117
#  define YYSTACK_FREE YYFREE
542
#  ifndef YYSTACK_ALLOC_MAXIMUM
543
28.3k
#   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
117
#   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
228
# 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
228
    do                                                                  \
598
228
      {                                                                 \
599
228
        YYPTRDIFF_T yynewbytes;                                         \
600
228
        YYCOPY (&yyptr->Stack_alloc, Stack, yysize);                    \
601
228
        Stack = &yyptr->Stack_alloc;                                    \
602
228
        yynewbytes = yystacksize * YYSIZEOF (*Stack) + YYSTACK_GAP_MAXIMUM; \
603
228
        yyptr += yynewbytes / YYSIZEOF (*yyptr);                        \
604
228
      }                                                                 \
605
228
    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
228
      __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.41M
#define YYFINAL  3
631
/* YYLAST -- Last index in YYTABLE.  */
632
15.8M
#define YYLAST   10430
633
634
/* YYNTOKENS -- Number of terminals.  */
635
6.43M
#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.21M
#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.22M
  (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.48M
#define YYPACT_NINF (-1071)
907
908
#define yypact_value_is_default(Yyn) \
909
9.48M
  ((Yyn) == YYPACT_NINF)
910
911
145k
#define YYTABLE_NINF (-608)
912
913
#define yytable_value_is_error(Yyn) \
914
145k
  ((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
8.30M
#define YYEMPTY         (-2)
3587
5.32M
#define YYEOF           0
3588
3589
30.0k
#define YYACCEPT        goto yyacceptlab
3590
6.57k
#define YYABORT         goto yyabortlab
3591
117
#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
612k
#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
36.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
228
# define YYMAXDEPTH 10000
3765
#endif
3766
3767
3768
#if YYERROR_VERBOSE
3769
3770
# ifndef yystrlen
3771
#  if defined __GLIBC__ && defined _STRING_H
3772
6.45k
#   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
6.46k
#   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
6.45k
{
3869
6.45k
  enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
3870
  /* Internationalized format string. */
3871
6.45k
  const char *yyformat = YY_NULLPTR;
3872
  /* Arguments of yyformat: reported tokens (one for the "unexpected",
3873
     one per "expected"). */
3874
6.45k
  char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
3875
  /* Actual size of YYARG. */
3876
6.45k
  int yycount = 0;
3877
  /* Cumulated lengths of YYARG.  */
3878
6.45k
  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
6.45k
  if (yytoken != YYEMPTY)
3904
6.45k
    {
3905
6.45k
      int yyn = yypact[+*yyssp];
3906
6.45k
      YYPTRDIFF_T yysize0 = yytnamerr (YY_NULLPTR, yytname[yytoken]);
3907
6.45k
      yysize = yysize0;
3908
6.45k
      yyarg[yycount++] = yytname[yytoken];
3909
6.45k
      if (!yypact_value_is_default (yyn))
3910
6.45k
        {
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
6.45k
          int yyxbegin = yyn < 0 ? -yyn : 0;
3915
          /* Stay within bounds of both yycheck and yytname.  */
3916
6.45k
          int yychecklim = YYLAST - yyn + 1;
3917
6.45k
          int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
3918
6.45k
          int yyx;
3919
3920
438k
          for (yyx = yyxbegin; yyx < yyxend; ++yyx)
3921
437k
            if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR
3922
26.7k
                && !yytable_value_is_error (yytable[yyx + yyn]))
3923
26.6k
              {
3924
26.6k
                if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
3925
4.75k
                  {
3926
4.75k
                    yycount = 1;
3927
4.75k
                    yysize = yysize0;
3928
4.75k
                    break;
3929
4.75k
                  }
3930
21.8k
                yyarg[yycount++] = yytname[yyx];
3931
21.8k
                {
3932
21.8k
                  YYPTRDIFF_T yysize1
3933
21.8k
                    = yysize + yytnamerr (YY_NULLPTR, yytname[yyx]);
3934
21.8k
                  if (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM)
3935
21.8k
                    yysize = yysize1;
3936
0
                  else
3937
0
                    return 2;
3938
21.8k
                }
3939
21.8k
              }
3940
6.45k
        }
3941
6.45k
    }
3942
3943
6.45k
  switch (yycount)
3944
6.45k
    {
3945
0
# define YYCASE_(N, S)                      \
3946
6.45k
      case N:                               \
3947
6.45k
        yyformat = S;                       \
3948
6.45k
      break
3949
0
    default: /* Avoid compiler warnings. */
3950
0
      YYCASE_(0, YY_("syntax error"));
3951
4.75k
      YYCASE_(1, YY_("syntax error, unexpected %s"));
3952
1.20k
      YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s"));
3953
114
      YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s"));
3954
132
      YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s"));
3955
6.45k
      YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"));
3956
6.45k
# undef YYCASE_
3957
6.45k
    }
3958
3959
6.45k
  {
3960
    /* Don't count the "%s"s in the final size, but reserve room for
3961
       the terminator.  */
3962
6.45k
    YYPTRDIFF_T yysize1 = yysize + (yystrlen (yyformat) - 2 * yycount) + 1;
3963
6.45k
    if (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM)
3964
6.45k
      yysize = yysize1;
3965
0
    else
3966
0
      return 2;
3967
6.45k
  }
3968
3969
6.45k
  if (*yymsg_alloc < yysize)
3970
3
    {
3971
3
      *yymsg_alloc = 2 * yysize;
3972
3
      if (! (yysize <= *yymsg_alloc
3973
3
             && *yymsg_alloc <= YYSTACK_ALLOC_MAXIMUM))
3974
0
        *yymsg_alloc = YYSTACK_ALLOC_MAXIMUM;
3975
3
      return 1;
3976
3
    }
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
6.45k
  {
3982
6.45k
    char *yyp = *yymsg;
3983
6.45k
    int yyi = 0;
3984
202k
    while ((*yyp = *yyformat) != '\0')
3985
195k
      if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount)
3986
9.28k
        {
3987
9.28k
          yyp += yytnamerr (yyp, yyarg[yyi++]);
3988
9.28k
          yyformat += 2;
3989
9.28k
        }
3990
186k
      else
3991
186k
        {
3992
186k
          ++yyp;
3993
186k
          ++yyformat;
3994
186k
        }
3995
6.45k
  }
3996
6.45k
  return 0;
3997
6.45k
}
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
155k
{
4007
155k
  YYUSE (yyvaluep);
4008
155k
  if (!yymsg)
4009
0
    yymsg = "Deleting";
4010
155k
  YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
4011
4012
155k
  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
4013
155k
  switch (yytype)
4014
155k
    {
4015
15
    case 73: /* "integer"  */
4016
15
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4017
15
            { zend_ast_destroy(((*yyvaluep).ast)); }
4018
15
#line 4019 "/src/php-src/Zend/zend_language_parser.c"
4019
15
        break;
4020
4021
15
    case 74: /* "floating-point number"  */
4022
15
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4023
15
            { zend_ast_destroy(((*yyvaluep).ast)); }
4024
15
#line 4025 "/src/php-src/Zend/zend_language_parser.c"
4025
15
        break;
4026
4027
1.33k
    case 75: /* "identifier"  */
4028
1.33k
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4029
1.33k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4030
1.33k
#line 4031 "/src/php-src/Zend/zend_language_parser.c"
4031
1.33k
        break;
4032
4033
15
    case 76: /* "fully qualified name"  */
4034
15
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4035
15
            { zend_ast_destroy(((*yyvaluep).ast)); }
4036
15
#line 4037 "/src/php-src/Zend/zend_language_parser.c"
4037
15
        break;
4038
4039
6
    case 77: /* "namespace-relative name"  */
4040
6
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4041
6
            { zend_ast_destroy(((*yyvaluep).ast)); }
4042
6
#line 4043 "/src/php-src/Zend/zend_language_parser.c"
4043
6
        break;
4044
4045
33
    case 78: /* "namespaced name"  */
4046
33
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4047
33
            { zend_ast_destroy(((*yyvaluep).ast)); }
4048
33
#line 4049 "/src/php-src/Zend/zend_language_parser.c"
4049
33
        break;
4050
4051
273
    case 79: /* "variable"  */
4052
273
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4053
273
            { zend_ast_destroy(((*yyvaluep).ast)); }
4054
273
#line 4055 "/src/php-src/Zend/zend_language_parser.c"
4055
273
        break;
4056
4057
3
    case 80: /* T_INLINE_HTML  */
4058
3
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4059
3
            { zend_ast_destroy(((*yyvaluep).ast)); }
4060
3
#line 4061 "/src/php-src/Zend/zend_language_parser.c"
4061
3
        break;
4062
4063
4.17k
    case 81: /* "string content"  */
4064
4.17k
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4065
4.17k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4066
4.17k
#line 4067 "/src/php-src/Zend/zend_language_parser.c"
4067
4.17k
        break;
4068
4069
27
    case 82: /* "quoted string"  */
4070
27
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4071
27
            { zend_ast_destroy(((*yyvaluep).ast)); }
4072
27
#line 4073 "/src/php-src/Zend/zend_language_parser.c"
4073
27
        break;
4074
4075
6
    case 83: /* "variable name"  */
4076
6
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4077
6
            { zend_ast_destroy(((*yyvaluep).ast)); }
4078
6
#line 4079 "/src/php-src/Zend/zend_language_parser.c"
4079
6
        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
171
    case 190: /* identifier  */
4088
171
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4089
171
            { zend_ast_destroy(((*yyvaluep).ast)); }
4090
171
#line 4091 "/src/php-src/Zend/zend_language_parser.c"
4091
171
        break;
4092
4093
6.50k
    case 191: /* top_statement_list  */
4094
6.50k
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4095
6.50k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4096
6.50k
#line 4097 "/src/php-src/Zend/zend_language_parser.c"
4097
6.50k
        break;
4098
4099
72
    case 192: /* namespace_declaration_name  */
4100
72
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4101
72
            { zend_ast_destroy(((*yyvaluep).ast)); }
4102
72
#line 4103 "/src/php-src/Zend/zend_language_parser.c"
4103
72
        break;
4104
4105
0
    case 193: /* namespace_name  */
4106
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4107
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4108
0
#line 4109 "/src/php-src/Zend/zend_language_parser.c"
4109
0
        break;
4110
4111
21
    case 194: /* legacy_namespace_name  */
4112
21
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4113
21
            { zend_ast_destroy(((*yyvaluep).ast)); }
4114
21
#line 4115 "/src/php-src/Zend/zend_language_parser.c"
4115
21
        break;
4116
4117
1.13k
    case 195: /* name  */
4118
1.13k
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4119
1.13k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4120
1.13k
#line 4121 "/src/php-src/Zend/zend_language_parser.c"
4121
1.13k
        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
9
    case 197: /* attribute_group  */
4130
9
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4131
9
            { zend_ast_destroy(((*yyvaluep).ast)); }
4132
9
#line 4133 "/src/php-src/Zend/zend_language_parser.c"
4133
9
        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
42
    case 199: /* attributes  */
4142
42
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4143
42
            { zend_ast_destroy(((*yyvaluep).ast)); }
4144
42
#line 4145 "/src/php-src/Zend/zend_language_parser.c"
4145
42
        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
3
    case 206: /* group_use_declaration  */
4166
3
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4167
3
            { zend_ast_destroy(((*yyvaluep).ast)); }
4168
3
#line 4169 "/src/php-src/Zend/zend_language_parser.c"
4169
3
        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
9
    case 209: /* inline_use_declarations  */
4178
9
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4179
9
            { zend_ast_destroy(((*yyvaluep).ast)); }
4180
9
#line 4181 "/src/php-src/Zend/zend_language_parser.c"
4181
9
        break;
4182
4183
3
    case 210: /* unprefixed_use_declarations  */
4184
3
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4185
3
            { zend_ast_destroy(((*yyvaluep).ast)); }
4186
3
#line 4187 "/src/php-src/Zend/zend_language_parser.c"
4187
3
        break;
4188
4189
3
    case 211: /* use_declarations  */
4190
3
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4191
3
            { zend_ast_destroy(((*yyvaluep).ast)); }
4192
3
#line 4193 "/src/php-src/Zend/zend_language_parser.c"
4193
3
        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
30
    case 215: /* const_list  */
4214
30
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4215
30
            { zend_ast_destroy(((*yyvaluep).ast)); }
4216
30
#line 4217 "/src/php-src/Zend/zend_language_parser.c"
4217
30
        break;
4218
4219
6.76k
    case 216: /* inner_statement_list  */
4220
6.76k
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4221
6.76k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4222
6.76k
#line 4223 "/src/php-src/Zend/zend_language_parser.c"
4223
6.76k
        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
0
    case 218: /* statement  */
4232
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4233
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4234
0
#line 4235 "/src/php-src/Zend/zend_language_parser.c"
4235
0
        break;
4236
4237
144
    case 220: /* catch_list  */
4238
144
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4239
144
            { zend_ast_destroy(((*yyvaluep).ast)); }
4240
144
#line 4241 "/src/php-src/Zend/zend_language_parser.c"
4241
144
        break;
4242
4243
123
    case 221: /* catch_name_list  */
4244
123
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4245
123
            { zend_ast_destroy(((*yyvaluep).ast)); }
4246
123
#line 4247 "/src/php-src/Zend/zend_language_parser.c"
4247
123
        break;
4248
4249
123
    case 222: /* optional_variable  */
4250
123
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4251
123
            { zend_ast_destroy(((*yyvaluep).ast)); }
4252
123
#line 4253 "/src/php-src/Zend/zend_language_parser.c"
4253
123
        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
3
    case 224: /* unset_variables  */
4262
3
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4263
3
            { zend_ast_destroy(((*yyvaluep).ast)); }
4264
3
#line 4265 "/src/php-src/Zend/zend_language_parser.c"
4265
3
        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
516
    case 226: /* function_name  */
4274
516
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4275
516
            { zend_ast_destroy(((*yyvaluep).ast)); }
4276
516
#line 4277 "/src/php-src/Zend/zend_language_parser.c"
4277
516
        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
39
    case 243: /* enum_backing_type  */
4310
39
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4311
39
            { zend_ast_destroy(((*yyvaluep).ast)); }
4312
39
#line 4313 "/src/php-src/Zend/zend_language_parser.c"
4313
39
        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
3
    case 245: /* enum_case_expr  */
4322
3
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4323
3
            { zend_ast_destroy(((*yyvaluep).ast)); }
4324
3
#line 4325 "/src/php-src/Zend/zend_language_parser.c"
4325
3
        break;
4326
4327
519
    case 246: /* extends_from  */
4328
519
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4329
519
            { zend_ast_destroy(((*yyvaluep).ast)); }
4330
519
#line 4331 "/src/php-src/Zend/zend_language_parser.c"
4331
519
        break;
4332
4333
27
    case 247: /* interface_extends_list  */
4334
27
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4335
27
            { zend_ast_destroy(((*yyvaluep).ast)); }
4336
27
#line 4337 "/src/php-src/Zend/zend_language_parser.c"
4337
27
        break;
4338
4339
558
    case 248: /* implements_list  */
4340
558
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4341
558
            { zend_ast_destroy(((*yyvaluep).ast)); }
4342
558
#line 4343 "/src/php-src/Zend/zend_language_parser.c"
4343
558
        break;
4344
4345
273
    case 249: /* foreach_variable  */
4346
273
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4347
273
            { zend_ast_destroy(((*yyvaluep).ast)); }
4348
273
#line 4349 "/src/php-src/Zend/zend_language_parser.c"
4349
273
        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
36
    case 254: /* case_list  */
4376
36
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4377
36
            { zend_ast_destroy(((*yyvaluep).ast)); }
4378
36
#line 4379 "/src/php-src/Zend/zend_language_parser.c"
4379
36
        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
6
    case 256: /* match_arm_list  */
4388
6
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4389
6
            { zend_ast_destroy(((*yyvaluep).ast)); }
4390
6
#line 4391 "/src/php-src/Zend/zend_language_parser.c"
4391
6
        break;
4392
4393
3
    case 257: /* non_empty_match_arm_list  */
4394
3
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4395
3
            { zend_ast_destroy(((*yyvaluep).ast)); }
4396
3
#line 4397 "/src/php-src/Zend/zend_language_parser.c"
4397
3
        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
9
    case 259: /* match_arm_cond_list  */
4406
9
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4407
9
            { zend_ast_destroy(((*yyvaluep).ast)); }
4408
9
#line 4409 "/src/php-src/Zend/zend_language_parser.c"
4409
9
        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
66
    case 261: /* if_stmt_without_else  */
4418
66
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4419
66
            { zend_ast_destroy(((*yyvaluep).ast)); }
4420
66
#line 4421 "/src/php-src/Zend/zend_language_parser.c"
4421
66
        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
0
    case 263: /* alt_if_stmt_without_else  */
4430
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4431
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4432
0
#line 4433 "/src/php-src/Zend/zend_language_parser.c"
4433
0
        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
825
    case 265: /* parameter_list  */
4442
825
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4443
825
            { zend_ast_destroy(((*yyvaluep).ast)); }
4444
825
#line 4445 "/src/php-src/Zend/zend_language_parser.c"
4445
825
        break;
4446
4447
3
    case 266: /* non_empty_parameter_list  */
4448
3
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4449
3
            { zend_ast_destroy(((*yyvaluep).ast)); }
4450
3
#line 4451 "/src/php-src/Zend/zend_language_parser.c"
4451
3
        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
210
    case 270: /* optional_type_without_static  */
4466
210
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4467
210
            { zend_ast_destroy(((*yyvaluep).ast)); }
4468
210
#line 4469 "/src/php-src/Zend/zend_language_parser.c"
4469
210
        break;
4470
4471
3
    case 271: /* type_expr  */
4472
3
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4473
3
            { zend_ast_destroy(((*yyvaluep).ast)); }
4474
3
#line 4475 "/src/php-src/Zend/zend_language_parser.c"
4475
3
        break;
4476
4477
3
    case 272: /* type  */
4478
3
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4479
3
            { zend_ast_destroy(((*yyvaluep).ast)); }
4480
3
#line 4481 "/src/php-src/Zend/zend_language_parser.c"
4481
3
        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
3
    case 274: /* union_type  */
4490
3
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4491
3
            { zend_ast_destroy(((*yyvaluep).ast)); }
4492
3
#line 4493 "/src/php-src/Zend/zend_language_parser.c"
4493
3
        break;
4494
4495
3
    case 275: /* intersection_type  */
4496
3
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4497
3
            { zend_ast_destroy(((*yyvaluep).ast)); }
4498
3
#line 4499 "/src/php-src/Zend/zend_language_parser.c"
4499
3
        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
6
    case 277: /* type_without_static  */
4508
6
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4509
6
            { zend_ast_destroy(((*yyvaluep).ast)); }
4510
6
#line 4511 "/src/php-src/Zend/zend_language_parser.c"
4511
6
        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
3
    case 279: /* union_type_without_static  */
4520
3
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4521
3
            { zend_ast_destroy(((*yyvaluep).ast)); }
4522
3
#line 4523 "/src/php-src/Zend/zend_language_parser.c"
4523
3
        break;
4524
4525
3
    case 280: /* intersection_type_without_static  */
4526
3
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4527
3
            { zend_ast_destroy(((*yyvaluep).ast)); }
4528
3
#line 4529 "/src/php-src/Zend/zend_language_parser.c"
4529
3
        break;
4530
4531
798
    case 281: /* return_type  */
4532
798
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4533
798
            { zend_ast_destroy(((*yyvaluep).ast)); }
4534
798
#line 4535 "/src/php-src/Zend/zend_language_parser.c"
4535
798
        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
291
    case 283: /* non_empty_argument_list  */
4544
291
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4545
291
            { zend_ast_destroy(((*yyvaluep).ast)); }
4546
291
#line 4547 "/src/php-src/Zend/zend_language_parser.c"
4547
291
        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
3
    case 285: /* non_empty_clone_argument_list  */
4556
3
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4557
3
            { zend_ast_destroy(((*yyvaluep).ast)); }
4558
3
#line 4559 "/src/php-src/Zend/zend_language_parser.c"
4559
3
        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
3
    case 288: /* global_var_list  */
4574
3
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4575
3
            { zend_ast_destroy(((*yyvaluep).ast)); }
4576
3
#line 4577 "/src/php-src/Zend/zend_language_parser.c"
4577
3
        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
3
    case 290: /* static_var_list  */
4586
3
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4587
3
            { zend_ast_destroy(((*yyvaluep).ast)); }
4588
3
#line 4589 "/src/php-src/Zend/zend_language_parser.c"
4589
3
        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
561
    case 292: /* class_statement_list  */
4598
561
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4599
561
            { zend_ast_destroy(((*yyvaluep).ast)); }
4600
561
#line 4601 "/src/php-src/Zend/zend_language_parser.c"
4601
561
        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
21
    case 295: /* class_name_list  */
4616
21
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4617
21
            { zend_ast_destroy(((*yyvaluep).ast)); }
4618
21
#line 4619 "/src/php-src/Zend/zend_language_parser.c"
4619
21
        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
6
    case 297: /* trait_adaptation_list  */
4628
6
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4629
6
            { zend_ast_destroy(((*yyvaluep).ast)); }
4630
6
#line 4631 "/src/php-src/Zend/zend_language_parser.c"
4631
6
        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
0
    case 299: /* trait_precedence  */
4640
0
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4641
0
            { zend_ast_destroy(((*yyvaluep).ast)); }
4642
0
#line 4643 "/src/php-src/Zend/zend_language_parser.c"
4643
0
        break;
4644
4645
3
    case 300: /* trait_alias  */
4646
3
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4647
3
            { zend_ast_destroy(((*yyvaluep).ast)); }
4648
3
#line 4649 "/src/php-src/Zend/zend_language_parser.c"
4649
3
        break;
4650
4651
6
    case 301: /* trait_method_reference  */
4652
6
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4653
6
            { zend_ast_destroy(((*yyvaluep).ast)); }
4654
6
#line 4655 "/src/php-src/Zend/zend_language_parser.c"
4655
6
        break;
4656
4657
3
    case 302: /* absolute_trait_method_reference  */
4658
3
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4659
3
            { zend_ast_destroy(((*yyvaluep).ast)); }
4660
3
#line 4661 "/src/php-src/Zend/zend_language_parser.c"
4661
3
        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
12
    case 309: /* property_list  */
4676
12
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4677
12
            { zend_ast_destroy(((*yyvaluep).ast)); }
4678
12
#line 4679 "/src/php-src/Zend/zend_language_parser.c"
4679
12
        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
96
    case 312: /* property_hook_list  */
4694
96
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4695
96
            { zend_ast_destroy(((*yyvaluep).ast)); }
4696
96
#line 4697 "/src/php-src/Zend/zend_language_parser.c"
4697
96
        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
78
    case 318: /* optional_parameter_list  */
4718
78
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4719
78
            { zend_ast_destroy(((*yyvaluep).ast)); }
4720
78
#line 4721 "/src/php-src/Zend/zend_language_parser.c"
4721
78
        break;
4722
4723
3
    case 319: /* class_const_list  */
4724
3
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4725
3
            { zend_ast_destroy(((*yyvaluep).ast)); }
4726
3
#line 4727 "/src/php-src/Zend/zend_language_parser.c"
4727
3
        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
72
    case 322: /* echo_expr_list  */
4742
72
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4743
72
            { zend_ast_destroy(((*yyvaluep).ast)); }
4744
72
#line 4745 "/src/php-src/Zend/zend_language_parser.c"
4745
72
        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
213
    case 324: /* for_cond_exprs  */
4754
213
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4755
213
            { zend_ast_destroy(((*yyvaluep).ast)); }
4756
213
#line 4757 "/src/php-src/Zend/zend_language_parser.c"
4757
213
        break;
4758
4759
360
    case 325: /* for_exprs  */
4760
360
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4761
360
            { zend_ast_destroy(((*yyvaluep).ast)); }
4762
360
#line 4763 "/src/php-src/Zend/zend_language_parser.c"
4763
360
        break;
4764
4765
6
    case 326: /* non_empty_for_exprs  */
4766
6
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4767
6
            { zend_ast_destroy(((*yyvaluep).ast)); }
4768
6
#line 4769 "/src/php-src/Zend/zend_language_parser.c"
4769
6
        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
3.27k
    case 331: /* expr  */
4790
3.27k
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4791
3.27k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4792
3.27k
#line 4793 "/src/php-src/Zend/zend_language_parser.c"
4793
3.27k
        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
1.72k
    case 335: /* backup_doc_comment  */
4802
1.72k
#line 51 "/src/php-src/Zend/zend_language_parser.y"
4803
1.72k
            { if (((*yyvaluep).str)) zend_string_release_ex(((*yyvaluep).str), 0); }
4804
1.72k
#line 4805 "/src/php-src/Zend/zend_language_parser.c"
4805
1.72k
        break;
4806
4807
195
    case 339: /* lexical_vars  */
4808
195
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4809
195
            { zend_ast_destroy(((*yyvaluep).ast)); }
4810
195
#line 4811 "/src/php-src/Zend/zend_language_parser.c"
4811
195
        break;
4812
4813
3
    case 340: /* lexical_var_list  */
4814
3
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4815
3
            { zend_ast_destroy(((*yyvaluep).ast)); }
4816
3
#line 4817 "/src/php-src/Zend/zend_language_parser.c"
4817
3
        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
72
    case 344: /* class_name  */
4832
72
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4833
72
            { zend_ast_destroy(((*yyvaluep).ast)); }
4834
72
#line 4835 "/src/php-src/Zend/zend_language_parser.c"
4835
72
        break;
4836
4837
57
    case 345: /* class_name_reference  */
4838
57
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4839
57
            { zend_ast_destroy(((*yyvaluep).ast)); }
4840
57
#line 4841 "/src/php-src/Zend/zend_language_parser.c"
4841
57
        break;
4842
4843
36
    case 346: /* backticks_expr  */
4844
36
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4845
36
            { zend_ast_destroy(((*yyvaluep).ast)); }
4846
36
#line 4847 "/src/php-src/Zend/zend_language_parser.c"
4847
36
        break;
4848
4849
48
    case 347: /* ctor_arguments  */
4850
48
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4851
48
            { zend_ast_destroy(((*yyvaluep).ast)); }
4852
48
#line 4853 "/src/php-src/Zend/zend_language_parser.c"
4853
48
        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
78
    case 352: /* optional_expr  */
4880
78
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4881
78
            { zend_ast_destroy(((*yyvaluep).ast)); }
4882
78
#line 4883 "/src/php-src/Zend/zend_language_parser.c"
4883
78
        break;
4884
4885
144
    case 353: /* variable_class_name  */
4886
144
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4887
144
            { zend_ast_destroy(((*yyvaluep).ast)); }
4888
144
#line 4889 "/src/php-src/Zend/zend_language_parser.c"
4889
144
        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
324
    case 355: /* array_object_dereferenceable  */
4898
324
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4899
324
            { zend_ast_destroy(((*yyvaluep).ast)); }
4900
324
#line 4901 "/src/php-src/Zend/zend_language_parser.c"
4901
324
        break;
4902
4903
597
    case 356: /* callable_expr  */
4904
597
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4905
597
            { zend_ast_destroy(((*yyvaluep).ast)); }
4906
597
#line 4907 "/src/php-src/Zend/zend_language_parser.c"
4907
597
        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
732
    case 358: /* variable  */
4916
732
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4917
732
            { zend_ast_destroy(((*yyvaluep).ast)); }
4918
732
#line 4919 "/src/php-src/Zend/zend_language_parser.c"
4919
732
        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
30
    case 362: /* member_name  */
4940
30
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4941
30
            { zend_ast_destroy(((*yyvaluep).ast)); }
4942
30
#line 4943 "/src/php-src/Zend/zend_language_parser.c"
4943
30
        break;
4944
4945
60
    case 363: /* property_name  */
4946
60
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4947
60
            { zend_ast_destroy(((*yyvaluep).ast)); }
4948
60
#line 4949 "/src/php-src/Zend/zend_language_parser.c"
4949
60
        break;
4950
4951
123
    case 364: /* array_pair_list  */
4952
123
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4953
123
            { zend_ast_destroy(((*yyvaluep).ast)); }
4954
123
#line 4955 "/src/php-src/Zend/zend_language_parser.c"
4955
123
        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
60
    case 366: /* non_empty_array_pair_list  */
4964
60
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4965
60
            { zend_ast_destroy(((*yyvaluep).ast)); }
4966
60
#line 4967 "/src/php-src/Zend/zend_language_parser.c"
4967
60
        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
2.13k
    case 368: /* encaps_list  */
4976
2.13k
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4977
2.13k
            { zend_ast_destroy(((*yyvaluep).ast)); }
4978
2.13k
#line 4979 "/src/php-src/Zend/zend_language_parser.c"
4979
2.13k
        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
39
    case 370: /* encaps_var_offset  */
4988
39
#line 50 "/src/php-src/Zend/zend_language_parser.y"
4989
39
            { zend_ast_destroy(((*yyvaluep).ast)); }
4990
39
#line 4991 "/src/php-src/Zend/zend_language_parser.c"
4991
39
        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
6
    case 372: /* isset_variables  */
5000
6
#line 50 "/src/php-src/Zend/zend_language_parser.y"
5001
6
            { zend_ast_destroy(((*yyvaluep).ast)); }
5002
6
#line 5003 "/src/php-src/Zend/zend_language_parser.c"
5003
6
        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
119k
      default:
5012
119k
        break;
5013
155k
    }
5014
155k
  YY_IGNORE_MAYBE_UNINITIALIZED_END
5015
155k
}
5016
5017
5018
5019
5020
/*----------.
5021
| yyparse.  |
5022
`----------*/
5023
5024
int
5025
yyparse (void)
5026
36.6k
{
5027
/* The lookahead symbol.  */
5028
36.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
36.6k
YY_INITIAL_VALUE (static YYSTYPE yyval_default;)
5035
36.6k
YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
5036
5037
    /* Number of syntax errors so far.  */
5038
36.6k
    int yynerrs;
5039
5040
36.6k
    yy_state_fast_t yystate;
5041
    /* Number of tokens to shift before error messages enabled.  */
5042
36.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
36.6k
    yy_state_t yyssa[YYINITDEPTH];
5053
36.6k
    yy_state_t *yyss;
5054
36.6k
    yy_state_t *yyssp;
5055
5056
    /* The semantic value stack.  */
5057
36.6k
    YYSTYPE yyvsa[YYINITDEPTH];
5058
36.6k
    YYSTYPE *yyvs;
5059
36.6k
    YYSTYPE *yyvsp;
5060
5061
36.6k
    YYPTRDIFF_T yystacksize;
5062
5063
36.6k
  int yyn;
5064
36.6k
  int yyresult;
5065
  /* Lookahead token as an internal (translated) token number.  */
5066
36.6k
  int yytoken = 0;
5067
  /* The variables used to return semantic value and location from the
5068
     action routines.  */
5069
36.6k
  YYSTYPE yyval;
5070
5071
36.6k
#if YYERROR_VERBOSE
5072
  /* Buffer for error messages, and its allocated size.  */
5073
36.6k
  char yymsgbuf[128];
5074
36.6k
  char *yymsg = yymsgbuf;
5075
36.6k
  YYPTRDIFF_T yymsg_alloc = sizeof yymsgbuf;
5076
36.6k
#endif
5077
5078
6.61M
#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
36.6k
  int yylen = 0;
5083
5084
36.6k
  yyssp = yyss = yyssa;
5085
36.6k
  yyvsp = yyvs = yyvsa;
5086
36.6k
  yystacksize = YYINITDEPTH;
5087
5088
36.6k
  YYDPRINTF ((stderr, "Starting parse\n"));
5089
5090
36.6k
  yystate = 0;
5091
36.6k
  yyerrstatus = 0;
5092
36.6k
  yynerrs = 0;
5093
36.6k
  yychar = YYEMPTY; /* Cause a token to be read.  */
5094
36.6k
  goto yysetstate;
5095
5096
5097
/*------------------------------------------------------------.
5098
| yynewstate -- push a new state, which is found in yystate.  |
5099
`------------------------------------------------------------*/
5100
9.37M
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.37M
  yyssp++;
5104
5105
5106
/*--------------------------------------------------------------------.
5107
| yysetstate -- set current state (the top of the stack) to yystate.  |
5108
`--------------------------------------------------------------------*/
5109
9.41M
yysetstate:
5110
9.41M
  YYDPRINTF ((stderr, "Entering state %d\n", yystate));
5111
9.41M
  YY_ASSERT (0 <= yystate && yystate < YYNSTATES);
5112
9.41M
  YY_IGNORE_USELESS_CAST_BEGIN
5113
9.41M
  *yyssp = YY_CAST (yy_state_t, yystate);
5114
9.41M
  YY_IGNORE_USELESS_CAST_END
5115
5116
9.41M
  if (yyss + yystacksize - 1 <= yyssp)
5117
#if !defined yyoverflow && !defined YYSTACK_RELOCATE
5118
    goto yyexhaustedlab;
5119
#else
5120
114
    {
5121
      /* Get the current used size of the three stacks, in elements.  */
5122
114
      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
114
      if (YYMAXDEPTH <= yystacksize)
5146
0
        goto yyexhaustedlab;
5147
114
      yystacksize *= 2;
5148
114
      if (YYMAXDEPTH < yystacksize)
5149
0
        yystacksize = YYMAXDEPTH;
5150
5151
114
      {
5152
114
        yy_state_t *yyss1 = yyss;
5153
114
        union yyalloc *yyptr =
5154
114
          YY_CAST (union yyalloc *,
5155
114
                   YYSTACK_ALLOC (YY_CAST (YYSIZE_T, YYSTACK_BYTES (yystacksize))));
5156
114
        if (! yyptr)
5157
0
          goto yyexhaustedlab;
5158
114
        YYSTACK_RELOCATE (yyss_alloc, yyss);
5159
114
        YYSTACK_RELOCATE (yyvs_alloc, yyvs);
5160
114
# undef YYSTACK_RELOCATE
5161
114
        if (yyss1 != yyssa)
5162
63
          YYSTACK_FREE (yyss1);
5163
114
      }
5164
0
# endif
5165
5166
0
      yyssp = yyss + yysize - 1;
5167
114
      yyvsp = yyvs + yysize - 1;
5168
5169
114
      YY_IGNORE_USELESS_CAST_BEGIN
5170
114
      YYDPRINTF ((stderr, "Stack size increased to %ld\n",
5171
114
                  YY_CAST (long, yystacksize)));
5172
114
      YY_IGNORE_USELESS_CAST_END
5173
5174
114
      if (yyss + yystacksize - 1 <= yyssp)
5175
0
        YYABORT;
5176
114
    }
5177
9.41M
#endif /* !defined yyoverflow && !defined YYSTACK_RELOCATE */
5178
5179
9.41M
  if (yystate == YYFINAL)
5180
30.0k
    YYACCEPT;
5181
5182
9.38M
  goto yybackup;
5183
5184
5185
/*-----------.
5186
| yybackup.  |
5187
`-----------*/
5188
9.38M
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.38M
  yyn = yypact[yystate];
5194
9.38M
  if (yypact_value_is_default (yyn))
5195
4.11M
    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.26M
  if (yychar == YYEMPTY)
5201
2.95M
    {
5202
2.95M
      YYDPRINTF ((stderr, "Reading a token: "));
5203
2.95M
      yychar = yylex (&yylval);
5204
2.95M
    }
5205
5206
5.26M
  if (yychar <= YYEOF)
5207
61.9k
    {
5208
61.9k
      yychar = yytoken = YYEOF;
5209
61.9k
      YYDPRINTF ((stderr, "Now at end of input.\n"));
5210
61.9k
    }
5211
5.20M
  else
5212
5.20M
    {
5213
5.20M
      yytoken = YYTRANSLATE (yychar);
5214
5.20M
      YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
5215
5.20M
    }
5216
5217
  /* If the proper action on seeing token YYTOKEN is to reduce or to
5218
     detect an error, take that action.  */
5219
5.26M
  yyn += yytoken;
5220
5.26M
  if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
5221
2.20M
    goto yydefault;
5222
3.06M
  yyn = yytable[yyn];
5223
3.06M
  if (yyn <= 0)
5224
118k
    {
5225
118k
      if (yytable_value_is_error (yyn))
5226
39
        goto yyerrlab;
5227
118k
      yyn = -yyn;
5228
118k
      goto yyreduce;
5229
118k
    }
5230
5231
  /* Count tokens shifted since error; after three, turn off error
5232
     status.  */
5233
2.94M
  if (yyerrstatus)
5234
0
    yyerrstatus--;
5235
5236
  /* Shift the lookahead token.  */
5237
2.94M
  YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
5238
2.94M
  yystate = yyn;
5239
2.94M
  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
5240
2.94M
  *++yyvsp = yylval;
5241
2.94M
  YY_IGNORE_MAYBE_UNINITIALIZED_END
5242
5243
  /* Discard the shifted token.  */
5244
2.94M
  yychar = YYEMPTY;
5245
2.94M
  goto yynewstate;
5246
5247
5248
/*-----------------------------------------------------------.
5249
| yydefault -- do the default action for the current state.  |
5250
`-----------------------------------------------------------*/
5251
6.31M
yydefault:
5252
6.31M
  yyn = yydefact[yystate];
5253
6.31M
  if (yyn == 0)
5254
6.41k
    goto yyerrlab;
5255
6.30M
  goto yyreduce;
5256
5257
5258
/*-----------------------------.
5259
| yyreduce -- do a reduction.  |
5260
`-----------------------------*/
5261
6.42M
yyreduce:
5262
  /* yyn is the number of a rule to reduce with.  */
5263
6.42M
  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.42M
  yyval = yyvsp[1-yylen];
5274
5275
5276
6.42M
  YY_REDUCE_PRINT (yyn);
5277
6.42M
  switch (yyn)
5278
6.42M
    {
5279
30.2k
  case 2:
5280
30.2k
#line 303 "/src/php-src/Zend/zend_language_parser.y"
5281
30.2k
                                { CG(ast) = (yyvsp[0].ast); (void) zendnerrs; }
5282
30.2k
#line 5283 "/src/php-src/Zend/zend_language_parser.c"
5283
30.2k
    break;
5284
5285
22.4k
  case 84:
5286
22.4k
#line 328 "/src/php-src/Zend/zend_language_parser.y"
5287
22.4k
                         { (yyval.ast) = (yyvsp[0].ast); }
5288
22.4k
#line 5289 "/src/php-src/Zend/zend_language_parser.c"
5289
22.4k
    break;
5290
5291
3.59k
  case 85:
5292
3.59k
#line 329 "/src/php-src/Zend/zend_language_parser.y"
5293
3.59k
                               {
5294
3.59k
      zval zv;
5295
3.59k
      if (zend_lex_tstring(&zv, (yyvsp[0].ident)) == FAILURE) { YYABORT; }
5296
3.58k
      (yyval.ast) = zend_ast_create_zval(&zv);
5297
3.58k
    }
5298
0
#line 5299 "/src/php-src/Zend/zend_language_parser.c"
5299
0
    break;
5300
5301
216k
  case 86:
5302
216k
#line 337 "/src/php-src/Zend/zend_language_parser.y"
5303
216k
                                                 { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
5304
216k
#line 5305 "/src/php-src/Zend/zend_language_parser.c"
5305
216k
    break;
5306
5307
37.2k
  case 87:
5308
37.2k
#line 338 "/src/php-src/Zend/zend_language_parser.y"
5309
37.2k
                       { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_STMT_LIST); }
5310
37.2k
#line 5311 "/src/php-src/Zend/zend_language_parser.c"
5311
37.2k
    break;
5312
5313
758
  case 88:
5314
758
#line 343 "/src/php-src/Zend/zend_language_parser.y"
5315
758
                                                                                        { (yyval.ast) = (yyvsp[0].ast); }
5316
758
#line 5317 "/src/php-src/Zend/zend_language_parser.c"
5317
758
    break;
5318
5319
193
  case 89:
5320
193
#line 344 "/src/php-src/Zend/zend_language_parser.y"
5321
193
                                                                                { (yyval.ast) = (yyvsp[0].ast); }
5322
193
#line 5323 "/src/php-src/Zend/zend_language_parser.c"
5323
193
    break;
5324
5325
339
  case 90:
5326
339
#line 349 "/src/php-src/Zend/zend_language_parser.y"
5327
339
                                                                                        { (yyval.ast) = (yyvsp[0].ast); }
5328
339
#line 5329 "/src/php-src/Zend/zend_language_parser.c"
5329
339
    break;
5330
5331
247
  case 91:
5332
247
#line 350 "/src/php-src/Zend/zend_language_parser.y"
5333
247
                                                                                { (yyval.ast) = (yyvsp[0].ast); }
5334
247
#line 5335 "/src/php-src/Zend/zend_language_parser.c"
5335
247
    break;
5336
5337
388
  case 92:
5338
388
#line 355 "/src/php-src/Zend/zend_language_parser.y"
5339
388
                                                                                { (yyval.ast) = (yyvsp[0].ast); }
5340
388
#line 5341 "/src/php-src/Zend/zend_language_parser.c"
5341
388
    break;
5342
5343
59
  case 93:
5344
59
#line 356 "/src/php-src/Zend/zend_language_parser.y"
5345
59
                                                                        { (yyval.ast) = (yyvsp[0].ast); }
5346
59
#line 5347 "/src/php-src/Zend/zend_language_parser.c"
5347
59
    break;
5348
5349
171k
  case 94:
5350
171k
#line 360 "/src/php-src/Zend/zend_language_parser.y"
5351
171k
                                                                                                { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_NAME_NOT_FQ; }
5352
171k
#line 5353 "/src/php-src/Zend/zend_language_parser.c"
5353
171k
    break;
5354
5355
526
  case 95:
5356
526
#line 361 "/src/php-src/Zend/zend_language_parser.y"
5357
526
                                                                                        { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_NAME_NOT_FQ; }
5358
526
#line 5359 "/src/php-src/Zend/zend_language_parser.c"
5359
526
    break;
5360
5361
4.54k
  case 96:
5362
4.54k
#line 362 "/src/php-src/Zend/zend_language_parser.y"
5363
4.54k
                                                                                { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_NAME_FQ; }
5364
4.54k
#line 5365 "/src/php-src/Zend/zend_language_parser.c"
5365
4.54k
    break;
5366
5367
259
  case 97:
5368
259
#line 363 "/src/php-src/Zend/zend_language_parser.y"
5369
259
                                                                                        { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_NAME_RELATIVE; }
5370
259
#line 5371 "/src/php-src/Zend/zend_language_parser.c"
5371
259
    break;
5372
5373
2.19k
  case 98:
5374
2.19k
#line 368 "/src/php-src/Zend/zend_language_parser.y"
5375
2.19k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ATTRIBUTE, (yyvsp[0].ast), NULL); }
5376
2.19k
#line 5377 "/src/php-src/Zend/zend_language_parser.c"
5377
2.19k
    break;
5378
5379
680
  case 99:
5380
680
#line 370 "/src/php-src/Zend/zend_language_parser.y"
5381
680
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ATTRIBUTE, (yyvsp[-1].ast), (yyvsp[0].ast)); }
5382
680
#line 5383 "/src/php-src/Zend/zend_language_parser.c"
5383
680
    break;
5384
5385
2.84k
  case 100:
5386
2.84k
#line 375 "/src/php-src/Zend/zend_language_parser.y"
5387
2.84k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ATTRIBUTE_GROUP, (yyvsp[0].ast)); }
5388
2.84k
#line 5389 "/src/php-src/Zend/zend_language_parser.c"
5389
2.84k
    break;
5390
5391
30
  case 101:
5392
30
#line 377 "/src/php-src/Zend/zend_language_parser.y"
5393
30
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5394
30
#line 5395 "/src/php-src/Zend/zend_language_parser.c"
5395
30
    break;
5396
5397
2.83k
  case 102:
5398
2.83k
#line 381 "/src/php-src/Zend/zend_language_parser.y"
5399
2.83k
                                                                                        { (yyval.ast) = (yyvsp[-2].ast); CG(doc_comment) = (yyvsp[-3].str); }
5400
2.83k
#line 5401 "/src/php-src/Zend/zend_language_parser.c"
5401
2.83k
    break;
5402
5403
2.05k
  case 103:
5404
2.05k
#line 385 "/src/php-src/Zend/zend_language_parser.y"
5405
2.05k
                                                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ATTRIBUTE_LIST, (yyvsp[0].ast)); }
5406
2.05k
#line 5407 "/src/php-src/Zend/zend_language_parser.c"
5407
2.05k
    break;
5408
5409
787
  case 104:
5410
787
#line 386 "/src/php-src/Zend/zend_language_parser.y"
5411
787
                                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
5412
787
#line 5413 "/src/php-src/Zend/zend_language_parser.c"
5413
787
    break;
5414
5415
8.39k
  case 105:
5416
8.39k
#line 390 "/src/php-src/Zend/zend_language_parser.y"
5417
8.39k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
5418
8.39k
#line 5419 "/src/php-src/Zend/zend_language_parser.c"
5419
8.39k
    break;
5420
5421
13.6k
  case 106:
5422
13.6k
#line 391 "/src/php-src/Zend/zend_language_parser.y"
5423
13.6k
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5424
13.6k
#line 5425 "/src/php-src/Zend/zend_language_parser.c"
5425
13.6k
    break;
5426
5427
946
  case 107:
5428
946
#line 392 "/src/php-src/Zend/zend_language_parser.y"
5429
946
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5430
946
#line 5431 "/src/php-src/Zend/zend_language_parser.c"
5431
946
    break;
5432
5433
1.02k
  case 108:
5434
1.02k
#line 393 "/src/php-src/Zend/zend_language_parser.y"
5435
1.02k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
5436
1.02k
#line 5437 "/src/php-src/Zend/zend_language_parser.c"
5437
1.02k
    break;
5438
5439
645
  case 109:
5440
645
#line 394 "/src/php-src/Zend/zend_language_parser.y"
5441
645
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5442
645
#line 5443 "/src/php-src/Zend/zend_language_parser.c"
5443
645
    break;
5444
5445
23.8k
  case 110:
5446
23.8k
#line 398 "/src/php-src/Zend/zend_language_parser.y"
5447
23.8k
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5448
23.8k
#line 5449 "/src/php-src/Zend/zend_language_parser.c"
5449
23.8k
    break;
5450
5451
1.12k
  case 111:
5452
1.12k
#line 399 "/src/php-src/Zend/zend_language_parser.y"
5453
1.12k
                                                                { (yyval.ast) = (yyvsp[-1].ast); }
5454
1.12k
#line 5455 "/src/php-src/Zend/zend_language_parser.c"
5455
1.12k
    break;
5456
5457
190k
  case 112:
5458
190k
#line 403 "/src/php-src/Zend/zend_language_parser.y"
5459
190k
                                                                                { (yyval.ast) = (yyvsp[0].ast); }
5460
190k
#line 5461 "/src/php-src/Zend/zend_language_parser.c"
5461
190k
    break;
5462
5463
23.9k
  case 113:
5464
23.9k
#line 404 "/src/php-src/Zend/zend_language_parser.y"
5465
23.9k
                                                                { (yyval.ast) = (yyvsp[0].ast); }
5466
23.9k
#line 5467 "/src/php-src/Zend/zend_language_parser.c"
5467
23.9k
    break;
5468
5469
987
  case 114:
5470
987
#line 405 "/src/php-src/Zend/zend_language_parser.y"
5471
987
                                                        { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
5472
987
#line 5473 "/src/php-src/Zend/zend_language_parser.c"
5473
987
    break;
5474
5475
45
  case 115:
5476
45
#line 407 "/src/php-src/Zend/zend_language_parser.y"
5477
45
                        { (yyval.ast) = zend_ast_create(ZEND_AST_HALT_COMPILER,
5478
45
            zend_ast_create_zval_from_long(zend_get_scanned_file_offset()));
5479
45
        zend_stop_lexing(); }
5480
45
#line 5481 "/src/php-src/Zend/zend_language_parser.c"
5481
45
    break;
5482
5483
532
  case 116:
5484
532
#line 411 "/src/php-src/Zend/zend_language_parser.y"
5485
532
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NAMESPACE, (yyvsp[-1].ast), NULL);
5486
532
        RESET_DOC_COMMENT(); }
5487
532
#line 5488 "/src/php-src/Zend/zend_language_parser.c"
5488
532
    break;
5489
5490
419
  case 117:
5491
419
#line 413 "/src/php-src/Zend/zend_language_parser.y"
5492
419
                                                       { RESET_DOC_COMMENT(); }
5493
419
#line 5494 "/src/php-src/Zend/zend_language_parser.c"
5494
419
    break;
5495
5496
347
  case 118:
5497
347
#line 415 "/src/php-src/Zend/zend_language_parser.y"
5498
347
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NAMESPACE, (yyvsp[-4].ast), (yyvsp[-1].ast)); }
5499
347
#line 5500 "/src/php-src/Zend/zend_language_parser.c"
5500
347
    break;
5501
5502
194
  case 119:
5503
194
#line 416 "/src/php-src/Zend/zend_language_parser.y"
5504
194
                            { RESET_DOC_COMMENT(); }
5505
194
#line 5506 "/src/php-src/Zend/zend_language_parser.c"
5506
194
    break;
5507
5508
161
  case 120:
5509
161
#line 418 "/src/php-src/Zend/zend_language_parser.y"
5510
161
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NAMESPACE, NULL, (yyvsp[-1].ast)); }
5511
161
#line 5512 "/src/php-src/Zend/zend_language_parser.c"
5512
161
    break;
5513
5514
44
  case 121:
5515
44
#line 419 "/src/php-src/Zend/zend_language_parser.y"
5516
44
                                                                { (yyval.ast) = (yyvsp[-1].ast); }
5517
44
#line 5518 "/src/php-src/Zend/zend_language_parser.c"
5518
44
    break;
5519
5520
21
  case 122:
5521
21
#line 420 "/src/php-src/Zend/zend_language_parser.y"
5522
21
                                                                { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = (yyvsp[-2].num); }
5523
21
#line 5524 "/src/php-src/Zend/zend_language_parser.c"
5524
21
    break;
5525
5526
244
  case 123:
5527
244
#line 421 "/src/php-src/Zend/zend_language_parser.y"
5528
244
                                                                                { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_SYMBOL_CLASS; }
5529
244
#line 5530 "/src/php-src/Zend/zend_language_parser.c"
5530
244
    break;
5531
5532
94
  case 124:
5533
94
#line 422 "/src/php-src/Zend/zend_language_parser.y"
5534
94
                                                                        { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = (yyvsp[-2].num); }
5535
94
#line 5536 "/src/php-src/Zend/zend_language_parser.c"
5536
94
    break;
5537
5538
89
  case 125:
5539
89
#line 426 "/src/php-src/Zend/zend_language_parser.y"
5540
89
                                        { (yyval.num) = ZEND_SYMBOL_FUNCTION; }
5541
89
#line 5542 "/src/php-src/Zend/zend_language_parser.c"
5542
89
    break;
5543
5544
76
  case 126:
5545
76
#line 427 "/src/php-src/Zend/zend_language_parser.y"
5546
76
                                        { (yyval.num) = ZEND_SYMBOL_CONST; }
5547
76
#line 5548 "/src/php-src/Zend/zend_language_parser.c"
5548
76
    break;
5549
5550
24
  case 127:
5551
24
#line 432 "/src/php-src/Zend/zend_language_parser.y"
5552
24
                        { (yyval.ast) = zend_ast_create(ZEND_AST_GROUP_USE, (yyvsp[-5].ast), (yyvsp[-2].ast)); }
5553
24
#line 5554 "/src/php-src/Zend/zend_language_parser.c"
5554
24
    break;
5555
5556
44
  case 128:
5557
44
#line 437 "/src/php-src/Zend/zend_language_parser.y"
5558
44
                        { (yyval.ast) = zend_ast_create(ZEND_AST_GROUP_USE, (yyvsp[-5].ast), (yyvsp[-2].ast));}
5559
44
#line 5560 "/src/php-src/Zend/zend_language_parser.c"
5560
44
    break;
5561
5562
78
  case 131:
5563
78
#line 447 "/src/php-src/Zend/zend_language_parser.y"
5564
78
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5565
78
#line 5566 "/src/php-src/Zend/zend_language_parser.c"
5566
78
    break;
5567
5568
53
  case 132:
5569
53
#line 449 "/src/php-src/Zend/zend_language_parser.y"
5570
53
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_USE, (yyvsp[0].ast)); }
5571
53
#line 5572 "/src/php-src/Zend/zend_language_parser.c"
5572
53
    break;
5573
5574
40
  case 133:
5575
40
#line 454 "/src/php-src/Zend/zend_language_parser.y"
5576
40
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5577
40
#line 5578 "/src/php-src/Zend/zend_language_parser.c"
5578
40
    break;
5579
5580
27
  case 134:
5581
27
#line 456 "/src/php-src/Zend/zend_language_parser.y"
5582
27
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_USE, (yyvsp[0].ast)); }
5583
27
#line 5584 "/src/php-src/Zend/zend_language_parser.c"
5584
27
    break;
5585
5586
17
  case 135:
5587
17
#line 461 "/src/php-src/Zend/zend_language_parser.y"
5588
17
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5589
17
#line 5590 "/src/php-src/Zend/zend_language_parser.c"
5590
17
    break;
5591
5592
341
  case 136:
5593
341
#line 463 "/src/php-src/Zend/zend_language_parser.y"
5594
341
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_USE, (yyvsp[0].ast)); }
5595
341
#line 5596 "/src/php-src/Zend/zend_language_parser.c"
5596
341
    break;
5597
5598
93
  case 137:
5599
93
#line 467 "/src/php-src/Zend/zend_language_parser.y"
5600
93
                                           { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_SYMBOL_CLASS; }
5601
93
#line 5602 "/src/php-src/Zend/zend_language_parser.c"
5602
93
    break;
5603
5604
38
  case 138:
5605
38
#line 468 "/src/php-src/Zend/zend_language_parser.y"
5606
38
                                                    { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = (yyvsp[-1].num); }
5607
38
#line 5608 "/src/php-src/Zend/zend_language_parser.c"
5608
38
    break;
5609
5610
166
  case 139:
5611
166
#line 473 "/src/php-src/Zend/zend_language_parser.y"
5612
166
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_ELEM, (yyvsp[0].ast), NULL); }
5613
166
#line 5614 "/src/php-src/Zend/zend_language_parser.c"
5614
166
    break;
5615
5616
32
  case 140:
5617
32
#line 475 "/src/php-src/Zend/zend_language_parser.y"
5618
32
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_ELEM, (yyvsp[-2].ast), (yyvsp[0].ast)); }
5619
32
#line 5620 "/src/php-src/Zend/zend_language_parser.c"
5620
32
    break;
5621
5622
208
  case 141:
5623
208
#line 480 "/src/php-src/Zend/zend_language_parser.y"
5624
208
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_ELEM, (yyvsp[0].ast), NULL); }
5625
208
#line 5626 "/src/php-src/Zend/zend_language_parser.c"
5626
208
    break;
5627
5628
150
  case 142:
5629
150
#line 482 "/src/php-src/Zend/zend_language_parser.y"
5630
150
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_ELEM, (yyvsp[-2].ast), (yyvsp[0].ast)); }
5631
150
#line 5632 "/src/php-src/Zend/zend_language_parser.c"
5632
150
    break;
5633
5634
26
  case 143:
5635
26
#line 486 "/src/php-src/Zend/zend_language_parser.y"
5636
26
                                          { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5637
26
#line 5638 "/src/php-src/Zend/zend_language_parser.c"
5638
26
    break;
5639
5640
1.35k
  case 144:
5641
1.35k
#line 487 "/src/php-src/Zend/zend_language_parser.y"
5642
1.35k
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_CONST_DECL, (yyvsp[0].ast)); }
5643
1.35k
#line 5644 "/src/php-src/Zend/zend_language_parser.c"
5644
1.35k
    break;
5645
5646
109k
  case 145:
5647
109k
#line 492 "/src/php-src/Zend/zend_language_parser.y"
5648
109k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
5649
109k
#line 5650 "/src/php-src/Zend/zend_language_parser.c"
5650
109k
    break;
5651
5652
77.6k
  case 146:
5653
77.6k
#line 494 "/src/php-src/Zend/zend_language_parser.y"
5654
77.6k
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_STMT_LIST); }
5655
77.6k
#line 5656 "/src/php-src/Zend/zend_language_parser.c"
5656
77.6k
    break;
5657
5658
108k
  case 147:
5659
108k
#line 499 "/src/php-src/Zend/zend_language_parser.y"
5660
108k
                          { (yyval.ast) = (yyvsp[0].ast); }
5661
108k
#line 5662 "/src/php-src/Zend/zend_language_parser.c"
5662
108k
    break;
5663
5664
668
  case 148:
5665
668
#line 500 "/src/php-src/Zend/zend_language_parser.y"
5666
668
                                                                        { (yyval.ast) = (yyvsp[0].ast); }
5667
668
#line 5668 "/src/php-src/Zend/zend_language_parser.c"
5668
668
    break;
5669
5670
126
  case 149:
5671
126
#line 501 "/src/php-src/Zend/zend_language_parser.y"
5672
126
                                                        { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
5673
126
#line 5674 "/src/php-src/Zend/zend_language_parser.c"
5674
126
    break;
5675
5676
9
  case 150:
5677
9
#line 503 "/src/php-src/Zend/zend_language_parser.y"
5678
9
                        { (yyval.ast) = NULL; zend_throw_exception(zend_ce_compile_error,
5679
9
            "__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.3k
  case 151:
5684
17.3k
#line 509 "/src/php-src/Zend/zend_language_parser.y"
5685
17.3k
                                             { (yyval.ast) = (yyvsp[-1].ast); }
5686
17.3k
#line 5687 "/src/php-src/Zend/zend_language_parser.c"
5687
17.3k
    break;
5688
5689
7.30k
  case 152:
5690
7.30k
#line 510 "/src/php-src/Zend/zend_language_parser.y"
5691
7.30k
                        { (yyval.ast) = (yyvsp[0].ast); }
5692
7.30k
#line 5693 "/src/php-src/Zend/zend_language_parser.c"
5693
7.30k
    break;
5694
5695
7
  case 153:
5696
7
#line 511 "/src/php-src/Zend/zend_language_parser.y"
5697
7
                            { (yyval.ast) = (yyvsp[0].ast); }
5698
7
#line 5699 "/src/php-src/Zend/zend_language_parser.c"
5699
7
    break;
5700
5701
403
  case 154:
5702
403
#line 513 "/src/php-src/Zend/zend_language_parser.y"
5703
403
                        { (yyval.ast) = zend_ast_create(ZEND_AST_WHILE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
5704
403
#line 5705 "/src/php-src/Zend/zend_language_parser.c"
5705
403
    break;
5706
5707
101
  case 155:
5708
101
#line 515 "/src/php-src/Zend/zend_language_parser.y"
5709
101
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DO_WHILE, (yyvsp[-5].ast), (yyvsp[-2].ast)); }
5710
101
#line 5711 "/src/php-src/Zend/zend_language_parser.c"
5711
101
    break;
5712
5713
3.94k
  case 156:
5714
3.94k
#line 517 "/src/php-src/Zend/zend_language_parser.y"
5715
3.94k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_FOR, (yyvsp[-6].ast), (yyvsp[-4].ast), (yyvsp[-2].ast), (yyvsp[0].ast)); }
5716
3.94k
#line 5717 "/src/php-src/Zend/zend_language_parser.c"
5717
3.94k
    break;
5718
5719
206
  case 157:
5720
206
#line 519 "/src/php-src/Zend/zend_language_parser.y"
5721
206
                        { (yyval.ast) = zend_ast_create(ZEND_AST_SWITCH, (yyvsp[-2].ast), (yyvsp[0].ast)); }
5722
206
#line 5723 "/src/php-src/Zend/zend_language_parser.c"
5723
206
    break;
5724
5725
464
  case 158:
5726
464
#line 520 "/src/php-src/Zend/zend_language_parser.y"
5727
464
                                                        { (yyval.ast) = zend_ast_create(ZEND_AST_BREAK, (yyvsp[-1].ast)); }
5728
464
#line 5729 "/src/php-src/Zend/zend_language_parser.c"
5729
464
    break;
5730
5731
165
  case 159:
5732
165
#line 521 "/src/php-src/Zend/zend_language_parser.y"
5733
165
                                                { (yyval.ast) = zend_ast_create(ZEND_AST_CONTINUE, (yyvsp[-1].ast)); }
5734
165
#line 5735 "/src/php-src/Zend/zend_language_parser.c"
5735
165
    break;
5736
5737
8.09k
  case 160:
5738
8.09k
#line 522 "/src/php-src/Zend/zend_language_parser.y"
5739
8.09k
                                                        { (yyval.ast) = zend_ast_create(ZEND_AST_RETURN, (yyvsp[-1].ast)); }
5740
8.09k
#line 5741 "/src/php-src/Zend/zend_language_parser.c"
5741
8.09k
    break;
5742
5743
457
  case 161:
5744
457
#line 523 "/src/php-src/Zend/zend_language_parser.y"
5745
457
                                                { (yyval.ast) = (yyvsp[-1].ast); }
5746
457
#line 5747 "/src/php-src/Zend/zend_language_parser.c"
5747
457
    break;
5748
5749
407
  case 162:
5750
407
#line 524 "/src/php-src/Zend/zend_language_parser.y"
5751
407
                                                { (yyval.ast) = (yyvsp[-1].ast); }
5752
407
#line 5753 "/src/php-src/Zend/zend_language_parser.c"
5753
407
    break;
5754
5755
22.2k
  case 163:
5756
22.2k
#line 525 "/src/php-src/Zend/zend_language_parser.y"
5757
22.2k
                                                        { (yyval.ast) = (yyvsp[-1].ast); }
5758
22.2k
#line 5759 "/src/php-src/Zend/zend_language_parser.c"
5759
22.2k
    break;
5760
5761
20.8k
  case 164:
5762
20.8k
#line 526 "/src/php-src/Zend/zend_language_parser.y"
5763
20.8k
                              { (yyval.ast) = zend_ast_create(ZEND_AST_ECHO, (yyvsp[0].ast)); }
5764
20.8k
#line 5765 "/src/php-src/Zend/zend_language_parser.c"
5765
20.8k
    break;
5766
5767
157k
  case 165:
5768
157k
#line 527 "/src/php-src/Zend/zend_language_parser.y"
5769
157k
                         { (yyval.ast) = (yyvsp[-1].ast); }
5770
157k
#line 5771 "/src/php-src/Zend/zend_language_parser.c"
5771
157k
    break;
5772
5773
2.63k
  case 166:
5774
2.63k
#line 528 "/src/php-src/Zend/zend_language_parser.y"
5775
2.63k
                                                                   { (yyval.ast) = (yyvsp[-3].ast); }
5776
2.63k
#line 5777 "/src/php-src/Zend/zend_language_parser.c"
5777
2.63k
    break;
5778
5779
6.01k
  case 167:
5780
6.01k
#line 530 "/src/php-src/Zend/zend_language_parser.y"
5781
6.01k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_FOREACH, (yyvsp[-4].ast), (yyvsp[-2].ast), NULL, (yyvsp[0].ast)); }
5782
6.01k
#line 5783 "/src/php-src/Zend/zend_language_parser.c"
5783
6.01k
    break;
5784
5785
742
  case 168:
5786
742
#line 533 "/src/php-src/Zend/zend_language_parser.y"
5787
742
                        { (yyval.ast) = zend_ast_create(ZEND_AST_FOREACH, (yyvsp[-6].ast), (yyvsp[-2].ast), (yyvsp[-4].ast), (yyvsp[0].ast)); }
5788
742
#line 5789 "/src/php-src/Zend/zend_language_parser.c"
5789
742
    break;
5790
5791
217
  case 169:
5792
217
#line 535 "/src/php-src/Zend/zend_language_parser.y"
5793
217
                        { if (!zend_handle_encoding_declaration((yyvsp[-1].ast))) { YYERROR; } }
5794
202
#line 5795 "/src/php-src/Zend/zend_language_parser.c"
5795
202
    break;
5796
5797
202
  case 170:
5798
199
#line 537 "/src/php-src/Zend/zend_language_parser.y"
5799
199
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DECLARE, (yyvsp[-3].ast), (yyvsp[0].ast)); }
5800
199
#line 5801 "/src/php-src/Zend/zend_language_parser.c"
5801
199
    break;
5802
5803
55.5k
  case 171:
5804
55.5k
#line 538 "/src/php-src/Zend/zend_language_parser.y"
5805
55.5k
                                              { (yyval.ast) = NULL; }
5806
55.5k
#line 5807 "/src/php-src/Zend/zend_language_parser.c"
5807
55.5k
    break;
5808
5809
13.0k
  case 172:
5810
13.0k
#line 540 "/src/php-src/Zend/zend_language_parser.y"
5811
13.0k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_TRY, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
5812
13.0k
#line 5813 "/src/php-src/Zend/zend_language_parser.c"
5813
13.0k
    break;
5814
5815
154
  case 173:
5816
154
#line 541 "/src/php-src/Zend/zend_language_parser.y"
5817
154
                                    { (yyval.ast) = zend_ast_create(ZEND_AST_GOTO, (yyvsp[-1].ast)); }
5818
154
#line 5819 "/src/php-src/Zend/zend_language_parser.c"
5819
154
    break;
5820
5821
381
  case 174:
5822
381
#line 542 "/src/php-src/Zend/zend_language_parser.y"
5823
381
                             { (yyval.ast) = zend_ast_create(ZEND_AST_LABEL, (yyvsp[-1].ast)); }
5824
381
#line 5825 "/src/php-src/Zend/zend_language_parser.c"
5825
381
    break;
5826
5827
35
  case 175:
5828
35
#line 543 "/src/php-src/Zend/zend_language_parser.y"
5829
35
                                     { (yyval.ast) = zend_ast_create(ZEND_AST_CAST_VOID, (yyvsp[-1].ast)); }
5830
35
#line 5831 "/src/php-src/Zend/zend_language_parser.c"
5831
35
    break;
5832
5833
13.1k
  case 176:
5834
13.1k
#line 548 "/src/php-src/Zend/zend_language_parser.y"
5835
13.1k
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_CATCH_LIST); }
5836
13.1k
#line 5837 "/src/php-src/Zend/zend_language_parser.c"
5837
13.1k
    break;
5838
5839
14.2k
  case 177:
5840
14.2k
#line 550 "/src/php-src/Zend/zend_language_parser.y"
5841
14.2k
                        { (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.2k
#line 5843 "/src/php-src/Zend/zend_language_parser.c"
5843
14.2k
    break;
5844
5845
14.4k
  case 178:
5846
14.4k
#line 554 "/src/php-src/Zend/zend_language_parser.y"
5847
14.4k
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_NAME_LIST, (yyvsp[0].ast)); }
5848
14.4k
#line 5849 "/src/php-src/Zend/zend_language_parser.c"
5849
14.4k
    break;
5850
5851
24
  case 179:
5852
24
#line 555 "/src/php-src/Zend/zend_language_parser.y"
5853
24
                                               { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5854
24
#line 5855 "/src/php-src/Zend/zend_language_parser.c"
5855
24
    break;
5856
5857
581
  case 180:
5858
581
#line 559 "/src/php-src/Zend/zend_language_parser.y"
5859
581
                       { (yyval.ast) = NULL; }
5860
581
#line 5861 "/src/php-src/Zend/zend_language_parser.c"
5861
581
    break;
5862
5863
13.8k
  case 181:
5864
13.8k
#line 560 "/src/php-src/Zend/zend_language_parser.y"
5865
13.8k
                           { (yyval.ast) = (yyvsp[0].ast); }
5866
13.8k
#line 5867 "/src/php-src/Zend/zend_language_parser.c"
5867
13.8k
    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
509
  case 183:
5876
509
#line 565 "/src/php-src/Zend/zend_language_parser.y"
5877
509
                                                       { (yyval.ast) = (yyvsp[-1].ast); }
5878
509
#line 5879 "/src/php-src/Zend/zend_language_parser.c"
5879
509
    break;
5880
5881
2.63k
  case 184:
5882
2.63k
#line 569 "/src/php-src/Zend/zend_language_parser.y"
5883
2.63k
                               { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_STMT_LIST, (yyvsp[0].ast)); }
5884
2.63k
#line 5885 "/src/php-src/Zend/zend_language_parser.c"
5885
2.63k
    break;
5886
5887
149
  case 185:
5888
149
#line 570 "/src/php-src/Zend/zend_language_parser.y"
5889
149
                                                   { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
5890
149
#line 5891 "/src/php-src/Zend/zend_language_parser.c"
5891
149
    break;
5892
5893
2.78k
  case 186:
5894
2.78k
#line 574 "/src/php-src/Zend/zend_language_parser.y"
5895
2.78k
                         { (yyval.ast) = zend_ast_create(ZEND_AST_UNSET, (yyvsp[0].ast)); }
5896
2.78k
#line 5897 "/src/php-src/Zend/zend_language_parser.c"
5897
2.78k
    break;
5898
5899
8.90k
  case 187:
5900
8.90k
#line 578 "/src/php-src/Zend/zend_language_parser.y"
5901
8.90k
                         { (yyval.ast) = (yyvsp[0].ast); }
5902
8.90k
#line 5903 "/src/php-src/Zend/zend_language_parser.c"
5903
8.90k
    break;
5904
5905
8
  case 188:
5906
8
#line 579 "/src/php-src/Zend/zend_language_parser.y"
5907
8
                           {
5908
8
      zval zv;
5909
8
      if (zend_lex_tstring(&zv, (yyvsp[0].ident)) == FAILURE) { YYABORT; }
5910
8
      (yyval.ast) = zend_ast_create_zval(&zv);
5911
8
    }
5912
0
#line 5913 "/src/php-src/Zend/zend_language_parser.c"
5913
0
    break;
5914
5915
8.39k
  case 189:
5916
8.39k
#line 589 "/src/php-src/Zend/zend_language_parser.y"
5917
8.39k
                { (yyval.ast) = zend_ast_create_decl(ZEND_AST_FUNC_DECL, (yyvsp[-11].num) | (yyvsp[0].num), (yyvsp[-12].num), (yyvsp[-9].str),
5918
8.39k
          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
8.39k
#line 5920 "/src/php-src/Zend/zend_language_parser.c"
5920
8.39k
    break;
5921
5922
14.9k
  case 190:
5923
14.9k
#line 594 "/src/php-src/Zend/zend_language_parser.y"
5924
14.9k
                        { (yyval.num) = 0; }
5925
14.9k
#line 5926 "/src/php-src/Zend/zend_language_parser.c"
5926
14.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
15.9k
  case 192:
5935
15.9k
#line 599 "/src/php-src/Zend/zend_language_parser.y"
5936
15.9k
                       { (yyval.num) = 0; }
5937
15.9k
#line 5938 "/src/php-src/Zend/zend_language_parser.c"
5938
15.9k
    break;
5939
5940
271
  case 193:
5941
271
#line 600 "/src/php-src/Zend/zend_language_parser.y"
5942
271
                            { (yyval.num) = ZEND_PARAM_VARIADIC; }
5943
271
#line 5944 "/src/php-src/Zend/zend_language_parser.c"
5944
271
    break;
5945
5946
1.24k
  case 194:
5947
1.24k
#line 604 "/src/php-src/Zend/zend_language_parser.y"
5948
1.24k
                                        { (yyval.num) = CG(zend_lineno); }
5949
1.24k
#line 5950 "/src/php-src/Zend/zend_language_parser.c"
5950
1.24k
    break;
5951
5952
1.21k
  case 195:
5953
1.21k
#line 606 "/src/php-src/Zend/zend_language_parser.y"
5954
1.21k
                        { (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
1.21k
#line 5956 "/src/php-src/Zend/zend_language_parser.c"
5956
1.21k
    break;
5957
5958
12.8k
  case 196:
5959
12.8k
#line 607 "/src/php-src/Zend/zend_language_parser.y"
5960
12.8k
                        { (yyval.num) = CG(zend_lineno); }
5961
12.8k
#line 5962 "/src/php-src/Zend/zend_language_parser.c"
5962
12.8k
    break;
5963
5964
12.3k
  case 197:
5965
12.3k
#line 609 "/src/php-src/Zend/zend_language_parser.y"
5966
12.3k
                        { (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
12.3k
#line 5968 "/src/php-src/Zend/zend_language_parser.c"
5968
12.3k
    break;
5969
5970
1.28k
  case 198:
5971
1.28k
#line 613 "/src/php-src/Zend/zend_language_parser.y"
5972
1.28k
                                                                { (yyval.num) = (yyvsp[0].num); }
5973
1.28k
#line 5974 "/src/php-src/Zend/zend_language_parser.c"
5974
1.28k
    break;
5975
5976
20
  case 199:
5977
20
#line 615 "/src/php-src/Zend/zend_language_parser.y"
5978
20
                        { (yyval.num) = zend_add_class_modifier((yyvsp[-1].num), (yyvsp[0].num)); if (!(yyval.num)) { YYERROR; } }
5979
8
#line 5980 "/src/php-src/Zend/zend_language_parser.c"
5980
8
    break;
5981
5982
17
  case 200:
5983
17
#line 620 "/src/php-src/Zend/zend_language_parser.y"
5984
17
                        { (yyval.num) = zend_add_anonymous_class_modifier(0, (yyvsp[0].num)); if (!(yyval.num)) { YYERROR; } }
5985
11
#line 5986 "/src/php-src/Zend/zend_language_parser.c"
5986
11
    break;
5987
5988
11
  case 201:
5989
3
#line 622 "/src/php-src/Zend/zend_language_parser.y"
5990
3
                        { (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
488
  case 202:
5995
488
#line 626 "/src/php-src/Zend/zend_language_parser.y"
5996
488
                                                { (yyval.num) = 0; }
5997
488
#line 5998 "/src/php-src/Zend/zend_language_parser.c"
5998
488
    break;
5999
6000
8
  case 203:
6001
8
#line 627 "/src/php-src/Zend/zend_language_parser.y"
6002
8
                                                { (yyval.num) = (yyvsp[0].num); }
6003
8
#line 6004 "/src/php-src/Zend/zend_language_parser.c"
6004
8
    break;
6005
6006
346
  case 204:
6007
346
#line 631 "/src/php-src/Zend/zend_language_parser.y"
6008
346
                                        { (yyval.num) = ZEND_ACC_EXPLICIT_ABSTRACT_CLASS; }
6009
346
#line 6010 "/src/php-src/Zend/zend_language_parser.c"
6010
346
    break;
6011
6012
881
  case 205:
6013
881
#line 632 "/src/php-src/Zend/zend_language_parser.y"
6014
881
                                        { (yyval.num) = ZEND_ACC_FINAL; }
6015
881
#line 6016 "/src/php-src/Zend/zend_language_parser.c"
6016
881
    break;
6017
6018
94
  case 206:
6019
94
#line 633 "/src/php-src/Zend/zend_language_parser.y"
6020
94
                                        { (yyval.num) = ZEND_ACC_READONLY_CLASS|ZEND_ACC_NO_DYNAMIC_PROPERTIES; }
6021
94
#line 6022 "/src/php-src/Zend/zend_language_parser.c"
6022
94
    break;
6023
6024
973
  case 207:
6025
973
#line 637 "/src/php-src/Zend/zend_language_parser.y"
6026
973
                        { (yyval.num) = CG(zend_lineno); }
6027
973
#line 6028 "/src/php-src/Zend/zend_language_parser.c"
6028
973
    break;
6029
6030
946
  case 208:
6031
946
#line 639 "/src/php-src/Zend/zend_language_parser.y"
6032
946
                        { (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
946
#line 6034 "/src/php-src/Zend/zend_language_parser.c"
6034
946
    break;
6035
6036
1.05k
  case 209:
6037
1.05k
#line 643 "/src/php-src/Zend/zend_language_parser.y"
6038
1.05k
                            { (yyval.num) = CG(zend_lineno); }
6039
1.05k
#line 6040 "/src/php-src/Zend/zend_language_parser.c"
6040
1.05k
    break;
6041
6042
1.02k
  case 210:
6043
1.02k
#line 645 "/src/php-src/Zend/zend_language_parser.y"
6044
1.02k
                        { (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
1.02k
#line 6046 "/src/php-src/Zend/zend_language_parser.c"
6046
1.02k
    break;
6047
6048
684
  case 211:
6049
684
#line 649 "/src/php-src/Zend/zend_language_parser.y"
6050
684
                       { (yyval.num) = CG(zend_lineno); }
6051
684
#line 6052 "/src/php-src/Zend/zend_language_parser.c"
6052
684
    break;
6053
6054
645
  case 212:
6055
645
#line 651 "/src/php-src/Zend/zend_language_parser.y"
6056
645
                        { (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
645
#line 6058 "/src/php-src/Zend/zend_language_parser.c"
6058
645
    break;
6059
6060
461
  case 213:
6061
461
#line 655 "/src/php-src/Zend/zend_language_parser.y"
6062
461
                        { (yyval.ast) = NULL; }
6063
461
#line 6064 "/src/php-src/Zend/zend_language_parser.c"
6064
461
    break;
6065
6066
223
  case 214:
6067
223
#line 656 "/src/php-src/Zend/zend_language_parser.y"
6068
223
                              { (yyval.ast) = (yyvsp[0].ast); }
6069
223
#line 6070 "/src/php-src/Zend/zend_language_parser.c"
6070
223
    break;
6071
6072
900
  case 215:
6073
900
#line 661 "/src/php-src/Zend/zend_language_parser.y"
6074
900
                        { (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
900
#line 6076 "/src/php-src/Zend/zend_language_parser.c"
6076
900
    break;
6077
6078
522
  case 216:
6079
522
#line 665 "/src/php-src/Zend/zend_language_parser.y"
6080
522
                        { (yyval.ast) = NULL; }
6081
522
#line 6082 "/src/php-src/Zend/zend_language_parser.c"
6082
522
    break;
6083
6084
381
  case 217:
6085
381
#line 666 "/src/php-src/Zend/zend_language_parser.y"
6086
381
                         { (yyval.ast) = (yyvsp[0].ast); }
6087
381
#line 6088 "/src/php-src/Zend/zend_language_parser.c"
6088
381
    break;
6089
6090
11.7k
  case 218:
6091
11.7k
#line 670 "/src/php-src/Zend/zend_language_parser.y"
6092
11.7k
                                                { (yyval.ast) = NULL; }
6093
11.7k
#line 6094 "/src/php-src/Zend/zend_language_parser.c"
6094
11.7k
    break;
6095
6096
2.82k
  case 219:
6097
2.82k
#line 671 "/src/php-src/Zend/zend_language_parser.y"
6098
2.82k
                                        { (yyval.ast) = (yyvsp[0].ast); }
6099
2.82k
#line 6100 "/src/php-src/Zend/zend_language_parser.c"
6100
2.82k
    break;
6101
6102
874
  case 220:
6103
874
#line 675 "/src/php-src/Zend/zend_language_parser.y"
6104
874
                                                { (yyval.ast) = NULL; }
6105
874
#line 6106 "/src/php-src/Zend/zend_language_parser.c"
6106
874
    break;
6107
6108
175
  case 221:
6109
175
#line 676 "/src/php-src/Zend/zend_language_parser.y"
6110
175
                                                { (yyval.ast) = (yyvsp[0].ast); }
6111
175
#line 6112 "/src/php-src/Zend/zend_language_parser.c"
6112
175
    break;
6113
6114
14.3k
  case 222:
6115
14.3k
#line 680 "/src/php-src/Zend/zend_language_parser.y"
6116
14.3k
                                                        { (yyval.ast) = NULL; }
6117
14.3k
#line 6118 "/src/php-src/Zend/zend_language_parser.c"
6118
14.3k
    break;
6119
6120
953
  case 223:
6121
953
#line 681 "/src/php-src/Zend/zend_language_parser.y"
6122
953
                                                { (yyval.ast) = (yyvsp[0].ast); }
6123
953
#line 6124 "/src/php-src/Zend/zend_language_parser.c"
6124
953
    break;
6125
6126
7.14k
  case 224:
6127
7.14k
#line 685 "/src/php-src/Zend/zend_language_parser.y"
6128
7.14k
                                                { (yyval.ast) = (yyvsp[0].ast); }
6129
7.14k
#line 6130 "/src/php-src/Zend/zend_language_parser.c"
6130
7.14k
    break;
6131
6132
525
  case 225:
6133
525
#line 686 "/src/php-src/Zend/zend_language_parser.y"
6134
525
                                        { (yyval.ast) = zend_ast_create(ZEND_AST_REF, (yyvsp[0].ast)); }
6135
525
#line 6136 "/src/php-src/Zend/zend_language_parser.c"
6136
525
    break;
6137
6138
50
  case 226:
6139
50
#line 687 "/src/php-src/Zend/zend_language_parser.y"
6140
50
                                               { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_ARRAY_SYNTAX_LIST; }
6141
50
#line 6142 "/src/php-src/Zend/zend_language_parser.c"
6142
50
    break;
6143
6144
57
  case 227:
6145
57
#line 688 "/src/php-src/Zend/zend_language_parser.y"
6146
57
                                        { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_ARRAY_SYNTAX_SHORT; }
6147
57
#line 6148 "/src/php-src/Zend/zend_language_parser.c"
6148
57
    break;
6149
6150
3.85k
  case 228:
6151
3.85k
#line 692 "/src/php-src/Zend/zend_language_parser.y"
6152
3.85k
                          { (yyval.ast) = (yyvsp[0].ast); }
6153
3.85k
#line 6154 "/src/php-src/Zend/zend_language_parser.c"
6154
3.85k
    break;
6155
6156
93
  case 229:
6157
93
#line 693 "/src/php-src/Zend/zend_language_parser.y"
6158
93
                                                      { (yyval.ast) = (yyvsp[-2].ast); }
6159
93
#line 6160 "/src/php-src/Zend/zend_language_parser.c"
6160
93
    break;
6161
6162
6.75k
  case 230:
6163
6.75k
#line 697 "/src/php-src/Zend/zend_language_parser.y"
6164
6.75k
                          { (yyval.ast) = (yyvsp[0].ast); }
6165
6.75k
#line 6166 "/src/php-src/Zend/zend_language_parser.c"
6166
6.75k
    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
199
  case 232:
6175
199
#line 702 "/src/php-src/Zend/zend_language_parser.y"
6176
199
                          { (yyval.ast) = (yyvsp[0].ast); }
6177
199
#line 6178 "/src/php-src/Zend/zend_language_parser.c"
6178
199
    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
206
  case 234:
6187
206
#line 707 "/src/php-src/Zend/zend_language_parser.y"
6188
206
                                                                        { (yyval.ast) = (yyvsp[-1].ast); }
6189
206
#line 6190 "/src/php-src/Zend/zend_language_parser.c"
6190
206
    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
242
  case 238:
6211
242
#line 714 "/src/php-src/Zend/zend_language_parser.y"
6212
242
                       { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_SWITCH_LIST); }
6213
242
#line 6214 "/src/php-src/Zend/zend_language_parser.c"
6214
242
    break;
6215
6216
493
  case 239:
6217
493
#line 716 "/src/php-src/Zend/zend_language_parser.y"
6218
493
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-4].ast), zend_ast_create(ZEND_AST_SWITCH_CASE, (yyvsp[-2].ast), (yyvsp[0].ast))); }
6219
493
#line 6220 "/src/php-src/Zend/zend_language_parser.c"
6220
493
    break;
6221
6222
3
  case 240:
6223
3
#line 718 "/src/php-src/Zend/zend_language_parser.y"
6224
3
                        { (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
3
#line 6226 "/src/php-src/Zend/zend_language_parser.c"
6226
3
    break;
6227
6228
85
  case 241:
6229
85
#line 720 "/src/php-src/Zend/zend_language_parser.y"
6230
85
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-3].ast), zend_ast_create(ZEND_AST_SWITCH_CASE, NULL, (yyvsp[0].ast))); }
6231
85
#line 6232 "/src/php-src/Zend/zend_language_parser.c"
6232
85
    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
479
  case 243:
6241
479
#line 728 "/src/php-src/Zend/zend_language_parser.y"
6242
479
                        { (yyval.ast) = zend_ast_create(ZEND_AST_MATCH, (yyvsp[-4].ast), (yyvsp[-1].ast)); }
6243
479
#line 6244 "/src/php-src/Zend/zend_language_parser.c"
6244
479
    break;
6245
6246
29
  case 244:
6247
29
#line 732 "/src/php-src/Zend/zend_language_parser.y"
6248
29
                       { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_MATCH_ARM_LIST); }
6249
29
#line 6250 "/src/php-src/Zend/zend_language_parser.c"
6250
29
    break;
6251
6252
456
  case 245:
6253
456
#line 733 "/src/php-src/Zend/zend_language_parser.y"
6254
456
                                                        { (yyval.ast) = (yyvsp[-1].ast); }
6255
456
#line 6256 "/src/php-src/Zend/zend_language_parser.c"
6256
456
    break;
6257
6258
459
  case 246:
6259
459
#line 737 "/src/php-src/Zend/zend_language_parser.y"
6260
459
                          { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_MATCH_ARM_LIST, (yyvsp[0].ast)); }
6261
459
#line 6262 "/src/php-src/Zend/zend_language_parser.c"
6262
459
    break;
6263
6264
687
  case 247:
6265
687
#line 738 "/src/php-src/Zend/zend_language_parser.y"
6266
687
                                                       { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6267
687
#line 6268 "/src/php-src/Zend/zend_language_parser.c"
6268
687
    break;
6269
6270
993
  case 248:
6271
993
#line 743 "/src/php-src/Zend/zend_language_parser.y"
6272
993
                        { (yyval.ast) = zend_ast_create(ZEND_AST_MATCH_ARM, (yyvsp[-3].ast), (yyvsp[0].ast)); }
6273
993
#line 6274 "/src/php-src/Zend/zend_language_parser.c"
6274
993
    break;
6275
6276
153
  case 249:
6277
153
#line 745 "/src/php-src/Zend/zend_language_parser.y"
6278
153
                        { (yyval.ast) = zend_ast_create(ZEND_AST_MATCH_ARM, NULL, (yyvsp[0].ast)); }
6279
153
#line 6280 "/src/php-src/Zend/zend_language_parser.c"
6280
153
    break;
6281
6282
1.00k
  case 250:
6283
1.00k
#line 749 "/src/php-src/Zend/zend_language_parser.y"
6284
1.00k
                     { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_EXPR_LIST, (yyvsp[0].ast)); }
6285
1.00k
#line 6286 "/src/php-src/Zend/zend_language_parser.c"
6286
1.00k
    break;
6287
6288
313
  case 251:
6289
313
#line 750 "/src/php-src/Zend/zend_language_parser.y"
6290
313
                                             { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6291
313
#line 6292 "/src/php-src/Zend/zend_language_parser.c"
6292
313
    break;
6293
6294
403
  case 252:
6295
403
#line 755 "/src/php-src/Zend/zend_language_parser.y"
6296
403
                          { (yyval.ast) = (yyvsp[0].ast); }
6297
403
#line 6298 "/src/php-src/Zend/zend_language_parser.c"
6298
403
    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.36k
  case 254:
6307
7.36k
#line 762 "/src/php-src/Zend/zend_language_parser.y"
6308
7.36k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_IF,
6309
7.36k
            zend_ast_create(ZEND_AST_IF_ELEM, (yyvsp[-2].ast), (yyvsp[0].ast))); }
6310
7.36k
#line 6311 "/src/php-src/Zend/zend_language_parser.c"
6311
7.36k
    break;
6312
6313
101
  case 255:
6314
101
#line 765 "/src/php-src/Zend/zend_language_parser.y"
6315
101
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-5].ast),
6316
101
            zend_ast_create(ZEND_AST_IF_ELEM, (yyvsp[-2].ast), (yyvsp[0].ast))); }
6317
101
#line 6318 "/src/php-src/Zend/zend_language_parser.c"
6318
101
    break;
6319
6320
6.58k
  case 256:
6321
6.58k
#line 770 "/src/php-src/Zend/zend_language_parser.y"
6322
6.58k
                                                    { (yyval.ast) = (yyvsp[0].ast); }
6323
6.58k
#line 6324 "/src/php-src/Zend/zend_language_parser.c"
6324
6.58k
    break;
6325
6326
715
  case 257:
6327
715
#line 772 "/src/php-src/Zend/zend_language_parser.y"
6328
715
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), zend_ast_create(ZEND_AST_IF_ELEM, NULL, (yyvsp[0].ast))); }
6329
715
#line 6330 "/src/php-src/Zend/zend_language_parser.c"
6330
715
    break;
6331
6332
7
  case 258:
6333
7
#line 777 "/src/php-src/Zend/zend_language_parser.y"
6334
7
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_IF,
6335
7
            zend_ast_create(ZEND_AST_IF_ELEM, (yyvsp[-3].ast), (yyvsp[0].ast))); }
6336
7
#line 6337 "/src/php-src/Zend/zend_language_parser.c"
6337
7
    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
5
  case 261:
6353
5
#line 787 "/src/php-src/Zend/zend_language_parser.y"
6354
5
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-5].ast),
6355
5
            zend_ast_create(ZEND_AST_IF_ELEM, NULL, (yyvsp[-2].ast))); }
6356
5
#line 6357 "/src/php-src/Zend/zend_language_parser.c"
6357
5
    break;
6358
6359
11.3k
  case 262:
6360
11.3k
#line 792 "/src/php-src/Zend/zend_language_parser.y"
6361
11.3k
                                                        { (yyval.ast) = (yyvsp[-1].ast); }
6362
11.3k
#line 6363 "/src/php-src/Zend/zend_language_parser.c"
6363
11.3k
    break;
6364
6365
14.5k
  case 263:
6366
14.5k
#line 793 "/src/php-src/Zend/zend_language_parser.y"
6367
14.5k
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_PARAM_LIST); }
6368
14.5k
#line 6369 "/src/php-src/Zend/zend_language_parser.c"
6369
14.5k
    break;
6370
6371
11.3k
  case 264:
6372
11.3k
#line 799 "/src/php-src/Zend/zend_language_parser.y"
6373
11.3k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_PARAM_LIST, (yyvsp[0].ast)); }
6374
11.3k
#line 6375 "/src/php-src/Zend/zend_language_parser.c"
6375
11.3k
    break;
6376
6377
4.78k
  case 265:
6378
4.78k
#line 801 "/src/php-src/Zend/zend_language_parser.y"
6379
4.78k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6380
4.78k
#line 6381 "/src/php-src/Zend/zend_language_parser.c"
6381
4.78k
    break;
6382
6383
134
  case 266:
6384
134
#line 805 "/src/php-src/Zend/zend_language_parser.y"
6385
134
                                        { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
6386
134
#line 6387 "/src/php-src/Zend/zend_language_parser.c"
6387
134
    break;
6388
6389
16.0k
  case 267:
6390
16.0k
#line 806 "/src/php-src/Zend/zend_language_parser.y"
6391
16.0k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
6392
16.0k
#line 6393 "/src/php-src/Zend/zend_language_parser.c"
6393
16.0k
    break;
6394
6395
15.6k
  case 268:
6396
15.6k
#line 811 "/src/php-src/Zend/zend_language_parser.y"
6397
15.6k
                        { (yyval.num) = 0; }
6398
15.6k
#line 6399 "/src/php-src/Zend/zend_language_parser.c"
6399
15.6k
    break;
6400
6401
500
  case 269:
6402
500
#line 813 "/src/php-src/Zend/zend_language_parser.y"
6403
500
                        { (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_CPP, (yyvsp[0].ast));
6404
500
        if (!(yyval.num)) { YYERROR; } }
6405
494
#line 6406 "/src/php-src/Zend/zend_language_parser.c"
6406
494
    break;
6407
6408
13.9k
  case 270:
6409
13.9k
#line 820 "/src/php-src/Zend/zend_language_parser.y"
6410
13.9k
                        { (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.9k
          NULL, (yyvsp[-1].str) ? zend_ast_create_zval_from_str((yyvsp[-1].str)) : NULL, (yyvsp[0].ast)); }
6412
13.9k
#line 6413 "/src/php-src/Zend/zend_language_parser.c"
6413
13.9k
    break;
6414
6415
2.16k
  case 271:
6416
2.16k
#line 824 "/src/php-src/Zend/zend_language_parser.y"
6417
2.16k
                        { (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
2.16k
          NULL, (yyvsp[-1].str) ? zend_ast_create_zval_from_str((yyvsp[-1].str)) : NULL, (yyvsp[0].ast)); }
6419
2.16k
#line 6420 "/src/php-src/Zend/zend_language_parser.c"
6420
2.16k
    break;
6421
6422
16.7k
  case 272:
6423
16.7k
#line 829 "/src/php-src/Zend/zend_language_parser.y"
6424
16.7k
                        { (yyval.ast) = NULL; }
6425
16.7k
#line 6426 "/src/php-src/Zend/zend_language_parser.c"
6426
16.7k
    break;
6427
6428
7.86k
  case 273:
6429
7.86k
#line 830 "/src/php-src/Zend/zend_language_parser.y"
6430
7.86k
                                                { (yyval.ast) = (yyvsp[0].ast); }
6431
7.86k
#line 6432 "/src/php-src/Zend/zend_language_parser.c"
6432
7.86k
    break;
6433
6434
3.61k
  case 274:
6435
3.61k
#line 834 "/src/php-src/Zend/zend_language_parser.y"
6436
3.61k
                                                { (yyval.ast) = (yyvsp[0].ast); }
6437
3.61k
#line 6438 "/src/php-src/Zend/zend_language_parser.c"
6438
3.61k
    break;
6439
6440
245
  case 275:
6441
245
#line 835 "/src/php-src/Zend/zend_language_parser.y"
6442
245
                                                { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr |= ZEND_TYPE_NULLABLE; }
6443
245
#line 6444 "/src/php-src/Zend/zend_language_parser.c"
6444
245
    break;
6445
6446
597
  case 276:
6447
597
#line 836 "/src/php-src/Zend/zend_language_parser.y"
6448
597
                                                { (yyval.ast) = (yyvsp[0].ast); }
6449
597
#line 6450 "/src/php-src/Zend/zend_language_parser.c"
6450
597
    break;
6451
6452
184
  case 277:
6453
184
#line 837 "/src/php-src/Zend/zend_language_parser.y"
6454
184
                                        { (yyval.ast) = (yyvsp[0].ast); }
6455
184
#line 6456 "/src/php-src/Zend/zend_language_parser.c"
6456
184
    break;
6457
6458
5.59k
  case 278:
6459
5.59k
#line 841 "/src/php-src/Zend/zend_language_parser.y"
6460
5.59k
                                        { (yyval.ast) = (yyvsp[0].ast); }
6461
5.59k
#line 6462 "/src/php-src/Zend/zend_language_parser.c"
6462
5.59k
    break;
6463
6464
196
  case 279:
6465
196
#line 842 "/src/php-src/Zend/zend_language_parser.y"
6466
196
                                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_TYPE, IS_STATIC); }
6467
196
#line 6468 "/src/php-src/Zend/zend_language_parser.c"
6468
196
    break;
6469
6470
1.12k
  case 280:
6471
1.12k
#line 846 "/src/php-src/Zend/zend_language_parser.y"
6472
1.12k
                     { (yyval.ast) = (yyvsp[0].ast); }
6473
1.12k
#line 6474 "/src/php-src/Zend/zend_language_parser.c"
6474
1.12k
    break;
6475
6476
204
  case 281:
6477
204
#line 847 "/src/php-src/Zend/zend_language_parser.y"
6478
204
                                           { (yyval.ast) = (yyvsp[-1].ast); }
6479
204
#line 6480 "/src/php-src/Zend/zend_language_parser.c"
6480
204
    break;
6481
6482
600
  case 282:
6483
600
#line 852 "/src/php-src/Zend/zend_language_parser.y"
6484
600
                        { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_TYPE_UNION, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6485
600
#line 6486 "/src/php-src/Zend/zend_language_parser.c"
6486
600
    break;
6487
6488
126
  case 283:
6489
126
#line 854 "/src/php-src/Zend/zend_language_parser.y"
6490
126
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6491
126
#line 6492 "/src/php-src/Zend/zend_language_parser.c"
6492
126
    break;
6493
6494
391
  case 284:
6495
391
#line 858 "/src/php-src/Zend/zend_language_parser.y"
6496
391
                                                                          { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_TYPE_INTERSECTION, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6497
391
#line 6498 "/src/php-src/Zend/zend_language_parser.c"
6498
391
    break;
6499
6500
26
  case 285:
6501
26
#line 859 "/src/php-src/Zend/zend_language_parser.y"
6502
26
                                                                                 { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6503
26
#line 6504 "/src/php-src/Zend/zend_language_parser.c"
6504
26
    break;
6505
6506
6.56k
  case 286:
6507
6.56k
#line 866 "/src/php-src/Zend/zend_language_parser.y"
6508
6.56k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
6509
6.56k
#line 6510 "/src/php-src/Zend/zend_language_parser.c"
6510
6.56k
    break;
6511
6512
446
  case 287:
6513
446
#line 867 "/src/php-src/Zend/zend_language_parser.y"
6514
446
                                                { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr |= ZEND_TYPE_NULLABLE; }
6515
446
#line 6516 "/src/php-src/Zend/zend_language_parser.c"
6516
446
    break;
6517
6518
717
  case 288:
6519
717
#line 868 "/src/php-src/Zend/zend_language_parser.y"
6520
717
                                                { (yyval.ast) = (yyvsp[0].ast); }
6521
717
#line 6522 "/src/php-src/Zend/zend_language_parser.c"
6522
717
    break;
6523
6524
139
  case 289:
6525
139
#line 869 "/src/php-src/Zend/zend_language_parser.y"
6526
139
                                                        { (yyval.ast) = (yyvsp[0].ast); }
6527
139
#line 6528 "/src/php-src/Zend/zend_language_parser.c"
6528
139
    break;
6529
6530
1.19k
  case 290:
6531
1.19k
#line 873 "/src/php-src/Zend/zend_language_parser.y"
6532
1.19k
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_TYPE, IS_ARRAY); }
6533
1.19k
#line 6534 "/src/php-src/Zend/zend_language_parser.c"
6534
1.19k
    break;
6535
6536
79
  case 291:
6537
79
#line 874 "/src/php-src/Zend/zend_language_parser.y"
6538
79
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_TYPE, IS_CALLABLE); }
6539
79
#line 6540 "/src/php-src/Zend/zend_language_parser.c"
6540
79
    break;
6541
6542
13.4k
  case 292:
6543
13.4k
#line 875 "/src/php-src/Zend/zend_language_parser.y"
6544
13.4k
                                { (yyval.ast) = (yyvsp[0].ast); }
6545
13.4k
#line 6546 "/src/php-src/Zend/zend_language_parser.c"
6546
13.4k
    break;
6547
6548
1.37k
  case 293:
6549
1.37k
#line 879 "/src/php-src/Zend/zend_language_parser.y"
6550
1.37k
                                    { (yyval.ast) = (yyvsp[0].ast); }
6551
1.37k
#line 6552 "/src/php-src/Zend/zend_language_parser.c"
6552
1.37k
    break;
6553
6554
228
  case 294:
6555
228
#line 880 "/src/php-src/Zend/zend_language_parser.y"
6556
228
                                                          { (yyval.ast) = (yyvsp[-1].ast); }
6557
228
#line 6558 "/src/php-src/Zend/zend_language_parser.c"
6558
228
    break;
6559
6560
720
  case 295:
6561
720
#line 885 "/src/php-src/Zend/zend_language_parser.y"
6562
720
                        { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_TYPE_UNION, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6563
720
#line 6564 "/src/php-src/Zend/zend_language_parser.c"
6564
720
    break;
6565
6566
162
  case 296:
6567
162
#line 887 "/src/php-src/Zend/zend_language_parser.y"
6568
162
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6569
162
#line 6570 "/src/php-src/Zend/zend_language_parser.c"
6570
162
    break;
6571
6572
370
  case 297:
6573
370
#line 892 "/src/php-src/Zend/zend_language_parser.y"
6574
370
                        { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_TYPE_INTERSECTION, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6575
370
#line 6576 "/src/php-src/Zend/zend_language_parser.c"
6576
370
    break;
6577
6578
15
  case 298:
6579
15
#line 894 "/src/php-src/Zend/zend_language_parser.y"
6580
15
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6581
15
#line 6582 "/src/php-src/Zend/zend_language_parser.c"
6582
15
    break;
6583
6584
21.6k
  case 299:
6585
21.6k
#line 898 "/src/php-src/Zend/zend_language_parser.y"
6586
21.6k
                        { (yyval.ast) = NULL; }
6587
21.6k
#line 6588 "/src/php-src/Zend/zend_language_parser.c"
6588
21.6k
    break;
6589
6590
4.13k
  case 300:
6591
4.13k
#line 899 "/src/php-src/Zend/zend_language_parser.y"
6592
4.13k
                                { (yyval.ast) = (yyvsp[0].ast); }
6593
4.13k
#line 6594 "/src/php-src/Zend/zend_language_parser.c"
6594
4.13k
    break;
6595
6596
28.9k
  case 301:
6597
28.9k
#line 903 "/src/php-src/Zend/zend_language_parser.y"
6598
28.9k
                        { (yyval.ast) = zend_ast_create_arg_list(0, ZEND_AST_ARG_LIST); }
6599
28.9k
#line 6600 "/src/php-src/Zend/zend_language_parser.c"
6600
28.9k
    break;
6601
6602
81.3k
  case 302:
6603
81.3k
#line 904 "/src/php-src/Zend/zend_language_parser.y"
6604
81.3k
                                                               { (yyval.ast) = (yyvsp[-2].ast); }
6605
81.3k
#line 6606 "/src/php-src/Zend/zend_language_parser.c"
6606
81.3k
    break;
6607
6608
81.6k
  case 303:
6609
81.6k
#line 909 "/src/php-src/Zend/zend_language_parser.y"
6610
81.6k
                        { (yyval.ast) = zend_ast_create_arg_list(1, ZEND_AST_ARG_LIST, (yyvsp[0].ast)); }
6611
81.6k
#line 6612 "/src/php-src/Zend/zend_language_parser.c"
6612
81.6k
    break;
6613
6614
30.6k
  case 304:
6615
30.6k
#line 911 "/src/php-src/Zend/zend_language_parser.y"
6616
30.6k
                        { (yyval.ast) = zend_ast_arg_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6617
30.6k
#line 6618 "/src/php-src/Zend/zend_language_parser.c"
6618
30.6k
    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
109
  case 306:
6627
109
#line 925 "/src/php-src/Zend/zend_language_parser.y"
6628
109
                                                                     { (yyval.ast) = (yyvsp[-2].ast); }
6629
109
#line 6630 "/src/php-src/Zend/zend_language_parser.c"
6630
109
    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
93
  case 308:
6639
93
#line 931 "/src/php-src/Zend/zend_language_parser.y"
6640
93
                        { (yyval.ast) = zend_ast_create_arg_list(2, ZEND_AST_ARG_LIST, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6641
93
#line 6642 "/src/php-src/Zend/zend_language_parser.c"
6642
93
    break;
6643
6644
19
  case 309:
6645
19
#line 933 "/src/php-src/Zend/zend_language_parser.y"
6646
19
                        { (yyval.ast) = zend_ast_create_arg_list(1, ZEND_AST_ARG_LIST, (yyvsp[0].ast)); }
6647
19
#line 6648 "/src/php-src/Zend/zend_language_parser.c"
6648
19
    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.82k
  case 311:
6657
1.82k
#line 940 "/src/php-src/Zend/zend_language_parser.y"
6658
1.82k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NAMED_ARG, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6659
1.82k
#line 6660 "/src/php-src/Zend/zend_language_parser.c"
6660
1.82k
    break;
6661
6662
618
  case 312:
6663
618
#line 942 "/src/php-src/Zend/zend_language_parser.y"
6664
618
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_PLACEHOLDER_ARG, ZEND_PLACEHOLDER_VARIADIC); }
6665
618
#line 6666 "/src/php-src/Zend/zend_language_parser.c"
6666
618
    break;
6667
6668
12
  case 313:
6669
12
#line 944 "/src/php-src/Zend/zend_language_parser.y"
6670
12
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PLACEHOLDER_ARG); }
6671
12
#line 6672 "/src/php-src/Zend/zend_language_parser.c"
6672
12
    break;
6673
6674
3
  case 314:
6675
3
#line 946 "/src/php-src/Zend/zend_language_parser.y"
6676
3
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NAMED_ARG, (yyvsp[-2].ast), zend_ast_create(ZEND_AST_PLACEHOLDER_ARG)); }
6677
3
#line 6678 "/src/php-src/Zend/zend_language_parser.c"
6678
3
    break;
6679
6680
531
  case 315:
6681
531
#line 948 "/src/php-src/Zend/zend_language_parser.y"
6682
531
                        { (yyval.ast) = zend_ast_create(ZEND_AST_UNPACK, (yyvsp[0].ast)); }
6683
531
#line 6684 "/src/php-src/Zend/zend_language_parser.c"
6684
531
    break;
6685
6686
109k
  case 316:
6687
109k
#line 952 "/src/php-src/Zend/zend_language_parser.y"
6688
109k
                     { (yyval.ast) = (yyvsp[0].ast); }
6689
109k
#line 6690 "/src/php-src/Zend/zend_language_parser.c"
6690
109k
    break;
6691
6692
2.96k
  case 317:
6693
2.96k
#line 953 "/src/php-src/Zend/zend_language_parser.y"
6694
2.96k
                                 { (yyval.ast) = (yyvsp[0].ast); }
6695
2.96k
#line 6696 "/src/php-src/Zend/zend_language_parser.c"
6696
2.96k
    break;
6697
6698
58
  case 318:
6699
58
#line 957 "/src/php-src/Zend/zend_language_parser.y"
6700
58
                                               { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6701
58
#line 6702 "/src/php-src/Zend/zend_language_parser.c"
6702
58
    break;
6703
6704
460
  case 319:
6705
460
#line 958 "/src/php-src/Zend/zend_language_parser.y"
6706
460
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_STMT_LIST, (yyvsp[0].ast)); }
6707
460
#line 6708 "/src/php-src/Zend/zend_language_parser.c"
6708
460
    break;
6709
6710
518
  case 320:
6711
518
#line 963 "/src/php-src/Zend/zend_language_parser.y"
6712
518
                { (yyval.ast) = zend_ast_create(ZEND_AST_GLOBAL, zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast))); }
6713
518
#line 6714 "/src/php-src/Zend/zend_language_parser.c"
6714
518
    break;
6715
6716
12
  case 321:
6717
12
#line 968 "/src/php-src/Zend/zend_language_parser.y"
6718
12
                                               { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6719
12
#line 6720 "/src/php-src/Zend/zend_language_parser.c"
6720
12
    break;
6721
6722
410
  case 322:
6723
410
#line 969 "/src/php-src/Zend/zend_language_parser.y"
6724
410
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_STMT_LIST, (yyvsp[0].ast)); }
6725
410
#line 6726 "/src/php-src/Zend/zend_language_parser.c"
6726
410
    break;
6727
6728
80
  case 323:
6729
80
#line 973 "/src/php-src/Zend/zend_language_parser.y"
6730
80
                                                { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC, (yyvsp[0].ast), NULL); }
6731
80
#line 6732 "/src/php-src/Zend/zend_language_parser.c"
6732
80
    break;
6733
6734
342
  case 324:
6735
342
#line 974 "/src/php-src/Zend/zend_language_parser.y"
6736
342
                                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6737
342
#line 6738 "/src/php-src/Zend/zend_language_parser.c"
6738
342
    break;
6739
6740
24.7k
  case 325:
6741
24.7k
#line 979 "/src/php-src/Zend/zend_language_parser.y"
6742
24.7k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
6743
24.7k
#line 6744 "/src/php-src/Zend/zend_language_parser.c"
6744
24.7k
    break;
6745
6746
17.2k
  case 326:
6747
17.2k
#line 981 "/src/php-src/Zend/zend_language_parser.y"
6748
17.2k
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_STMT_LIST); }
6749
17.2k
#line 6750 "/src/php-src/Zend/zend_language_parser.c"
6750
17.2k
    break;
6751
6752
6.94k
  case 327:
6753
6.94k
#line 987 "/src/php-src/Zend/zend_language_parser.y"
6754
6.94k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP_GROUP, (yyvsp[-2].ast), (yyvsp[-1].ast), NULL);
6755
6.94k
        (yyval.ast)->attr = (yyvsp[-3].num); }
6756
6.94k
#line 6757 "/src/php-src/Zend/zend_language_parser.c"
6757
6.94k
    break;
6758
6759
1.27k
  case 328:
6760
1.27k
#line 990 "/src/php-src/Zend/zend_language_parser.y"
6761
1.27k
                        { (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
1.27k
        (yyval.ast)->attr = (yyvsp[-2].num); }
6763
1.27k
#line 6764 "/src/php-src/Zend/zend_language_parser.c"
6764
1.27k
    break;
6765
6766
1.86k
  case 329:
6767
1.86k
#line 993 "/src/php-src/Zend/zend_language_parser.y"
6768
1.86k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CLASS_CONST_GROUP, (yyvsp[-1].ast), NULL, NULL);
6769
1.86k
        (yyval.ast)->attr = (yyvsp[-3].num); }
6770
1.86k
#line 6771 "/src/php-src/Zend/zend_language_parser.c"
6771
1.86k
    break;
6772
6773
284
  case 330:
6774
284
#line 996 "/src/php-src/Zend/zend_language_parser.y"
6775
284
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CLASS_CONST_GROUP, (yyvsp[-1].ast), NULL, (yyvsp[-2].ast));
6776
284
        (yyval.ast)->attr = (yyvsp[-4].num); }
6777
284
#line 6778 "/src/php-src/Zend/zend_language_parser.c"
6778
284
    break;
6779
6780
12.4k
  case 331:
6781
12.4k
#line 1000 "/src/php-src/Zend/zend_language_parser.y"
6782
12.4k
                        { (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
12.4k
          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
12.4k
#line 6785 "/src/php-src/Zend/zend_language_parser.c"
6785
12.4k
    break;
6786
6787
900
  case 332:
6788
900
#line 1002 "/src/php-src/Zend/zend_language_parser.y"
6789
900
                          { (yyval.ast) = (yyvsp[0].ast); }
6790
900
#line 6791 "/src/php-src/Zend/zend_language_parser.c"
6791
900
    break;
6792
6793
23.3k
  case 333:
6794
23.3k
#line 1006 "/src/php-src/Zend/zend_language_parser.y"
6795
23.3k
                                           { (yyval.ast) = (yyvsp[0].ast); }
6796
23.3k
#line 6797 "/src/php-src/Zend/zend_language_parser.c"
6797
23.3k
    break;
6798
6799
440
  case 334:
6800
440
#line 1007 "/src/php-src/Zend/zend_language_parser.y"
6801
440
                                                      { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
6802
440
#line 6803 "/src/php-src/Zend/zend_language_parser.c"
6803
440
    break;
6804
6805
962
  case 335:
6806
962
#line 1009 "/src/php-src/Zend/zend_language_parser.y"
6807
962
                        { (yyval.ast) = zend_ast_create(ZEND_AST_USE_TRAIT, (yyvsp[-1].ast), (yyvsp[0].ast)); }
6808
962
#line 6809 "/src/php-src/Zend/zend_language_parser.c"
6809
962
    break;
6810
6811
2.19k
  case 336:
6812
2.19k
#line 1013 "/src/php-src/Zend/zend_language_parser.y"
6813
2.19k
                           { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_NAME_LIST, (yyvsp[0].ast)); }
6814
2.19k
#line 6815 "/src/php-src/Zend/zend_language_parser.c"
6815
2.19k
    break;
6816
6817
361
  case 337:
6818
361
#line 1014 "/src/php-src/Zend/zend_language_parser.y"
6819
361
                                               { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
6820
361
#line 6821 "/src/php-src/Zend/zend_language_parser.c"
6821
361
    break;
6822
6823
747
  case 338:
6824
747
#line 1018 "/src/php-src/Zend/zend_language_parser.y"
6825
747
                                                                                { (yyval.ast) = NULL; }
6826
747
#line 6827 "/src/php-src/Zend/zend_language_parser.c"
6827
747
    break;
6828
6829
2
  case 339:
6830
2
#line 1019 "/src/php-src/Zend/zend_language_parser.y"
6831
2
                                                                        { (yyval.ast) = NULL; }
6832
2
#line 6833 "/src/php-src/Zend/zend_language_parser.c"
6833
2
    break;
6834
6835
213
  case 340:
6836
213
#line 1020 "/src/php-src/Zend/zend_language_parser.y"
6837
213
                                                { (yyval.ast) = (yyvsp[-1].ast); }
6838
213
#line 6839 "/src/php-src/Zend/zend_language_parser.c"
6839
213
    break;
6840
6841
219
  case 341:
6842
219
#line 1025 "/src/php-src/Zend/zend_language_parser.y"
6843
219
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_TRAIT_ADAPTATIONS, (yyvsp[0].ast)); }
6844
219
#line 6845 "/src/php-src/Zend/zend_language_parser.c"
6845
219
    break;
6846
6847
179
  case 342:
6848
179
#line 1027 "/src/php-src/Zend/zend_language_parser.y"
6849
179
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
6850
179
#line 6851 "/src/php-src/Zend/zend_language_parser.c"
6851
179
    break;
6852
6853
79
  case 343:
6854
79
#line 1031 "/src/php-src/Zend/zend_language_parser.y"
6855
79
                                        { (yyval.ast) = (yyvsp[-1].ast); }
6856
79
#line 6857 "/src/php-src/Zend/zend_language_parser.c"
6857
79
    break;
6858
6859
319
  case 344:
6860
319
#line 1032 "/src/php-src/Zend/zend_language_parser.y"
6861
319
                                                { (yyval.ast) = (yyvsp[-1].ast); }
6862
319
#line 6863 "/src/php-src/Zend/zend_language_parser.c"
6863
319
    break;
6864
6865
79
  case 345:
6866
79
#line 1037 "/src/php-src/Zend/zend_language_parser.y"
6867
79
                { (yyval.ast) = zend_ast_create(ZEND_AST_TRAIT_PRECEDENCE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6868
79
#line 6869 "/src/php-src/Zend/zend_language_parser.c"
6869
79
    break;
6870
6871
153
  case 346:
6872
153
#line 1042 "/src/php-src/Zend/zend_language_parser.y"
6873
153
                        { (yyval.ast) = zend_ast_create(ZEND_AST_TRAIT_ALIAS, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6874
153
#line 6875 "/src/php-src/Zend/zend_language_parser.c"
6875
153
    break;
6876
6877
14
  case 347:
6878
14
#line 1044 "/src/php-src/Zend/zend_language_parser.y"
6879
14
                        { zval zv;
6880
14
        if (zend_lex_tstring(&zv, (yyvsp[0].ident)) == FAILURE) { YYABORT; }
6881
14
        (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
56
  case 348:
6886
56
#line 1048 "/src/php-src/Zend/zend_language_parser.y"
6887
56
                        { uint32_t modifiers = zend_modifier_token_to_flag(ZEND_MODIFIER_TARGET_METHOD, (yyvsp[-1].num));
6888
56
        (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
56
        if (!modifiers) { zend_ast_destroy((yyval.ast)); YYERROR; } }
6891
56
#line 6892 "/src/php-src/Zend/zend_language_parser.c"
6892
56
    break;
6893
6894
102
  case 349:
6895
102
#line 1053 "/src/php-src/Zend/zend_language_parser.y"
6896
102
                        { uint32_t modifiers = zend_modifier_token_to_flag(ZEND_MODIFIER_TARGET_METHOD, (yyvsp[0].num));
6897
102
        (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
102
        if (!modifiers) { zend_ast_destroy((yyval.ast)); YYERROR; } }
6900
99
#line 6901 "/src/php-src/Zend/zend_language_parser.c"
6901
99
    break;
6902
6903
159
  case 350:
6904
159
#line 1061 "/src/php-src/Zend/zend_language_parser.y"
6905
159
                        { (yyval.ast) = zend_ast_create(ZEND_AST_TRAIT_METHOD_REFERENCE, NULL, (yyvsp[0].ast)); }
6906
159
#line 6907 "/src/php-src/Zend/zend_language_parser.c"
6907
159
    break;
6908
6909
172
  case 351:
6910
172
#line 1062 "/src/php-src/Zend/zend_language_parser.y"
6911
172
                                                { (yyval.ast) = (yyvsp[0].ast); }
6912
172
#line 6913 "/src/php-src/Zend/zend_language_parser.c"
6913
172
    break;
6914
6915
254
  case 352:
6916
254
#line 1067 "/src/php-src/Zend/zend_language_parser.y"
6917
254
                { (yyval.ast) = zend_ast_create(ZEND_AST_TRAIT_METHOD_REFERENCE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
6918
254
#line 6919 "/src/php-src/Zend/zend_language_parser.c"
6919
254
    break;
6920
6921
525
  case 353:
6922
525
#line 1071 "/src/php-src/Zend/zend_language_parser.y"
6923
525
                                                        { (yyval.ast) = NULL; }
6924
525
#line 6925 "/src/php-src/Zend/zend_language_parser.c"
6925
525
    break;
6926
6927
11.9k
  case 354:
6928
11.9k
#line 1072 "/src/php-src/Zend/zend_language_parser.y"
6929
11.9k
                                                { (yyval.ast) = (yyvsp[-1].ast); }
6930
11.9k
#line 6931 "/src/php-src/Zend/zend_language_parser.c"
6931
11.9k
    break;
6932
6933
8.15k
  case 355:
6934
8.15k
#line 1077 "/src/php-src/Zend/zend_language_parser.y"
6935
8.15k
                        { (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_PROPERTY, (yyvsp[0].ast));
6936
8.15k
        if (!(yyval.num)) { YYERROR; } }
6937
8.12k
#line 6938 "/src/php-src/Zend/zend_language_parser.c"
6938
8.12k
    break;
6939
6940
8.12k
  case 356:
6941
278
#line 1080 "/src/php-src/Zend/zend_language_parser.y"
6942
278
                        { (yyval.num) = ZEND_ACC_PUBLIC; }
6943
278
#line 6944 "/src/php-src/Zend/zend_language_parser.c"
6944
278
    break;
6945
6946
3.38k
  case 357:
6947
3.38k
#line 1085 "/src/php-src/Zend/zend_language_parser.y"
6948
3.38k
                        { (yyval.num) = ZEND_ACC_PUBLIC; }
6949
3.38k
#line 6950 "/src/php-src/Zend/zend_language_parser.c"
6950
3.38k
    break;
6951
6952
9.37k
  case 358:
6953
9.37k
#line 1087 "/src/php-src/Zend/zend_language_parser.y"
6954
9.37k
                        { (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_METHOD, (yyvsp[0].ast));
6955
9.37k
        if (!(yyval.num)) { YYERROR; }
6956
9.36k
        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
1.29k
  case 359:
6961
1.29k
#line 1094 "/src/php-src/Zend/zend_language_parser.y"
6962
1.29k
                        { (yyval.num) = ZEND_ACC_PUBLIC; }
6963
1.29k
#line 6964 "/src/php-src/Zend/zend_language_parser.c"
6964
1.29k
    break;
6965
6966
894
  case 360:
6967
894
#line 1096 "/src/php-src/Zend/zend_language_parser.y"
6968
894
                        { (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_CONSTANT, (yyvsp[0].ast));
6969
894
        if (!(yyval.num)) { YYERROR; }
6970
891
        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
18.9k
  case 361:
6975
18.9k
#line 1103 "/src/php-src/Zend/zend_language_parser.y"
6976
18.9k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_MODIFIER_LIST, zend_ast_create_zval_from_long((yyvsp[0].num))); }
6977
18.9k
#line 6978 "/src/php-src/Zend/zend_language_parser.c"
6978
18.9k
    break;
6979
6980
2.97k
  case 362:
6981
2.97k
#line 1105 "/src/php-src/Zend/zend_language_parser.y"
6982
2.97k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), zend_ast_create_zval_from_long((yyvsp[0].num))); }
6983
2.97k
#line 6984 "/src/php-src/Zend/zend_language_parser.c"
6984
2.97k
    break;
6985
6986
14.9k
  case 363:
6987
14.9k
#line 1109 "/src/php-src/Zend/zend_language_parser.y"
6988
14.9k
                                                        { (yyval.num) = T_PUBLIC; }
6989
14.9k
#line 6990 "/src/php-src/Zend/zend_language_parser.c"
6990
14.9k
    break;
6991
6992
824
  case 364:
6993
824
#line 1110 "/src/php-src/Zend/zend_language_parser.y"
6994
824
                                                        { (yyval.num) = T_PROTECTED; }
6995
824
#line 6996 "/src/php-src/Zend/zend_language_parser.c"
6996
824
    break;
6997
6998
2.03k
  case 365:
6999
2.03k
#line 1111 "/src/php-src/Zend/zend_language_parser.y"
7000
2.03k
                                                        { (yyval.num) = T_PRIVATE; }
7001
2.03k
#line 7002 "/src/php-src/Zend/zend_language_parser.c"
7002
2.03k
    break;
7003
7004
13
  case 366:
7005
13
#line 1112 "/src/php-src/Zend/zend_language_parser.y"
7006
13
                                                { (yyval.num) = T_PUBLIC_SET; }
7007
13
#line 7008 "/src/php-src/Zend/zend_language_parser.c"
7008
13
    break;
7009
7010
65
  case 367:
7011
65
#line 1113 "/src/php-src/Zend/zend_language_parser.y"
7012
65
                                                { (yyval.num) = T_PROTECTED_SET; }
7013
65
#line 7014 "/src/php-src/Zend/zend_language_parser.c"
7014
65
    break;
7015
7016
136
  case 368:
7017
136
#line 1114 "/src/php-src/Zend/zend_language_parser.y"
7018
136
                                                { (yyval.num) = T_PRIVATE_SET; }
7019
136
#line 7020 "/src/php-src/Zend/zend_language_parser.c"
7020
136
    break;
7021
7022
3.24k
  case 369:
7023
3.24k
#line 1115 "/src/php-src/Zend/zend_language_parser.y"
7024
3.24k
                                                        { (yyval.num) = T_STATIC; }
7025
3.24k
#line 7026 "/src/php-src/Zend/zend_language_parser.c"
7026
3.24k
    break;
7027
7028
281
  case 370:
7029
281
#line 1116 "/src/php-src/Zend/zend_language_parser.y"
7030
281
                                                        { (yyval.num) = T_ABSTRACT; }
7031
281
#line 7032 "/src/php-src/Zend/zend_language_parser.c"
7032
281
    break;
7033
7034
196
  case 371:
7035
196
#line 1117 "/src/php-src/Zend/zend_language_parser.y"
7036
196
                                                        { (yyval.num) = T_FINAL; }
7037
196
#line 7038 "/src/php-src/Zend/zend_language_parser.c"
7038
196
    break;
7039
7040
343
  case 372:
7041
343
#line 1118 "/src/php-src/Zend/zend_language_parser.y"
7042
343
                                                        { (yyval.num) = T_READONLY; }
7043
343
#line 7044 "/src/php-src/Zend/zend_language_parser.c"
7044
343
    break;
7045
7046
114
  case 373:
7047
114
#line 1122 "/src/php-src/Zend/zend_language_parser.y"
7048
114
                                           { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7049
114
#line 7050 "/src/php-src/Zend/zend_language_parser.c"
7050
114
    break;
7051
7052
6.95k
  case 374:
7053
6.95k
#line 1123 "/src/php-src/Zend/zend_language_parser.y"
7054
6.95k
                         { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_PROP_DECL, (yyvsp[0].ast)); }
7055
6.95k
#line 7056 "/src/php-src/Zend/zend_language_parser.c"
7056
6.95k
    break;
7057
7058
4.04k
  case 375:
7059
4.04k
#line 1128 "/src/php-src/Zend/zend_language_parser.y"
7060
4.04k
                        { (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
4.04k
#line 7062 "/src/php-src/Zend/zend_language_parser.c"
7062
4.04k
    break;
7063
7064
3.02k
  case 376:
7065
3.02k
#line 1130 "/src/php-src/Zend/zend_language_parser.y"
7066
3.02k
                        { (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
3.02k
#line 7068 "/src/php-src/Zend/zend_language_parser.c"
7068
3.02k
    break;
7069
7070
1.12k
  case 377:
7071
1.12k
#line 1135 "/src/php-src/Zend/zend_language_parser.y"
7072
1.12k
                        { (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
1.12k
#line 7074 "/src/php-src/Zend/zend_language_parser.c"
7074
1.12k
    break;
7075
7076
149
  case 378:
7077
149
#line 1137 "/src/php-src/Zend/zend_language_parser.y"
7078
149
                        { (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
149
#line 7080 "/src/php-src/Zend/zend_language_parser.c"
7080
149
    break;
7081
7082
1.38k
  case 379:
7083
1.38k
#line 1141 "/src/php-src/Zend/zend_language_parser.y"
7084
1.38k
                       { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_STMT_LIST); }
7085
1.38k
#line 7086 "/src/php-src/Zend/zend_language_parser.c"
7086
1.38k
    break;
7087
7088
1.74k
  case 380:
7089
1.74k
#line 1142 "/src/php-src/Zend/zend_language_parser.y"
7090
1.74k
                                                 { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
7091
1.74k
#line 7092 "/src/php-src/Zend/zend_language_parser.c"
7092
1.74k
    break;
7093
7094
76
  case 381:
7095
76
#line 1143 "/src/php-src/Zend/zend_language_parser.y"
7096
76
                                                            {
7097
76
      (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)));
7098
76
    }
7099
76
#line 7100 "/src/php-src/Zend/zend_language_parser.c"
7100
76
    break;
7101
7102
16.1k
  case 382:
7103
16.1k
#line 1149 "/src/php-src/Zend/zend_language_parser.y"
7104
16.1k
                        { (yyval.ast) = NULL; }
7105
16.1k
#line 7106 "/src/php-src/Zend/zend_language_parser.c"
7106
16.1k
    break;
7107
7108
12
  case 383:
7109
12
#line 1150 "/src/php-src/Zend/zend_language_parser.y"
7110
12
                                                { (yyval.ast) = (yyvsp[-1].ast); }
7111
12
#line 7112 "/src/php-src/Zend/zend_language_parser.c"
7112
12
    break;
7113
7114
1.88k
  case 384:
7115
1.88k
#line 1154 "/src/php-src/Zend/zend_language_parser.y"
7116
1.88k
                       { (yyval.num) = 0; }
7117
1.88k
#line 7118 "/src/php-src/Zend/zend_language_parser.c"
7118
1.88k
    break;
7119
7120
27
  case 385:
7121
27
#line 1155 "/src/php-src/Zend/zend_language_parser.y"
7122
27
                                           {
7123
27
      (yyval.num) = zend_modifier_list_to_flags(ZEND_MODIFIER_TARGET_PROPERTY_HOOK, (yyvsp[0].ast));
7124
27
      if (!(yyval.num)) { YYERROR; }
7125
27
    }
7126
15
#line 7127 "/src/php-src/Zend/zend_language_parser.c"
7127
15
    break;
7128
7129
1.89k
  case 386:
7130
1.89k
#line 1163 "/src/php-src/Zend/zend_language_parser.y"
7131
1.89k
                                   { (yyval.num) = CG(zend_lineno); }
7132
1.89k
#line 7133 "/src/php-src/Zend/zend_language_parser.c"
7133
1.89k
    break;
7134
7135
1.81k
  case 387:
7136
1.81k
#line 1164 "/src/php-src/Zend/zend_language_parser.y"
7137
1.81k
                                                                                           {
7138
1.81k
      (yyval.ast) = zend_ast_create_decl(
7139
1.81k
        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.81k
        (yyvsp[-3].ast), NULL, (yyvsp[-1].ast), NULL, NULL);
7141
1.81k
      CG(extra_fn_flags) = (yyvsp[-2].num);
7142
1.81k
    }
7143
1.81k
#line 7144 "/src/php-src/Zend/zend_language_parser.c"
7144
1.81k
    break;
7145
7146
288
  case 388:
7147
288
#line 1173 "/src/php-src/Zend/zend_language_parser.y"
7148
288
                    { (yyval.ast) = NULL; }
7149
288
#line 7150 "/src/php-src/Zend/zend_language_parser.c"
7150
288
    break;
7151
7152
1.09k
  case 389:
7153
1.09k
#line 1174 "/src/php-src/Zend/zend_language_parser.y"
7154
1.09k
                                             { (yyval.ast) = (yyvsp[-1].ast); }
7155
1.09k
#line 7156 "/src/php-src/Zend/zend_language_parser.c"
7156
1.09k
    break;
7157
7158
434
  case 390:
7159
434
#line 1176 "/src/php-src/Zend/zend_language_parser.y"
7160
434
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROPERTY_HOOK_SHORT_BODY, (yyvsp[-1].ast)); }
7161
434
#line 7162 "/src/php-src/Zend/zend_language_parser.c"
7162
434
    break;
7163
7164
1.82k
  case 391:
7165
1.82k
#line 1180 "/src/php-src/Zend/zend_language_parser.y"
7166
1.82k
                       { (yyval.ast) = NULL; }
7167
1.82k
#line 7168 "/src/php-src/Zend/zend_language_parser.c"
7168
1.82k
    break;
7169
7170
71
  case 392:
7171
71
#line 1181 "/src/php-src/Zend/zend_language_parser.y"
7172
71
                                       { (yyval.ast) = (yyvsp[-1].ast); }
7173
71
#line 7174 "/src/php-src/Zend/zend_language_parser.c"
7174
71
    break;
7175
7176
40
  case 393:
7177
40
#line 1185 "/src/php-src/Zend/zend_language_parser.y"
7178
40
                                                      { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7179
40
#line 7180 "/src/php-src/Zend/zend_language_parser.c"
7180
40
    break;
7181
7182
2.15k
  case 394:
7183
2.15k
#line 1186 "/src/php-src/Zend/zend_language_parser.y"
7184
2.15k
                                 { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_CLASS_CONST_DECL, (yyvsp[0].ast)); }
7185
2.15k
#line 7186 "/src/php-src/Zend/zend_language_parser.c"
7186
2.15k
    break;
7187
7188
1.74k
  case 395:
7189
1.74k
#line 1190 "/src/php-src/Zend/zend_language_parser.y"
7190
1.74k
                                                     { (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.74k
#line 7192 "/src/php-src/Zend/zend_language_parser.c"
7192
1.74k
    break;
7193
7194
456
  case 396:
7195
456
#line 1191 "/src/php-src/Zend/zend_language_parser.y"
7196
456
                                                          {
7197
456
      zval zv;
7198
456
      if (zend_lex_tstring(&zv, (yyvsp[-3].ident)) == FAILURE) { YYABORT; }
7199
456
      (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
456
    }
7201
0
#line 7202 "/src/php-src/Zend/zend_language_parser.c"
7202
0
    break;
7203
7204
1.38k
  case 397:
7205
1.38k
#line 1199 "/src/php-src/Zend/zend_language_parser.y"
7206
1.38k
                                             { (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.38k
#line 7208 "/src/php-src/Zend/zend_language_parser.c"
7208
1.38k
    break;
7209
7210
7.28k
  case 398:
7211
7.28k
#line 1203 "/src/php-src/Zend/zend_language_parser.y"
7212
7.28k
                                             { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7213
7.28k
#line 7214 "/src/php-src/Zend/zend_language_parser.c"
7214
7.28k
    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
556
  case 401:
7229
556
#line 1211 "/src/php-src/Zend/zend_language_parser.y"
7230
556
                                        { (yyval.ast) = NULL; }
7231
556
#line 7232 "/src/php-src/Zend/zend_language_parser.c"
7232
556
    break;
7233
7234
145
  case 402:
7235
145
#line 1212 "/src/php-src/Zend/zend_language_parser.y"
7236
145
                                             { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7237
145
#line 7238 "/src/php-src/Zend/zend_language_parser.c"
7238
145
    break;
7239
7240
3.45k
  case 403:
7241
3.45k
#line 1213 "/src/php-src/Zend/zend_language_parser.y"
7242
3.45k
                     { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_EXPR_LIST, (yyvsp[0].ast)); }
7243
3.45k
#line 7244 "/src/php-src/Zend/zend_language_parser.c"
7244
3.45k
    break;
7245
7246
1.41k
  case 404:
7247
1.41k
#line 1217 "/src/php-src/Zend/zend_language_parser.y"
7248
1.41k
                                        { (yyval.ast) = NULL; }
7249
1.41k
#line 7250 "/src/php-src/Zend/zend_language_parser.c"
7250
1.41k
    break;
7251
7252
6.83k
  case 405:
7253
6.83k
#line 1218 "/src/php-src/Zend/zend_language_parser.y"
7254
6.83k
                                        { (yyval.ast) = (yyvsp[0].ast); }
7255
6.83k
#line 7256 "/src/php-src/Zend/zend_language_parser.c"
7256
6.83k
    break;
7257
7258
157
  case 406:
7259
157
#line 1222 "/src/php-src/Zend/zend_language_parser.y"
7260
157
                                             { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
7261
157
#line 7262 "/src/php-src/Zend/zend_language_parser.c"
7262
157
    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
11
  case 408:
7271
11
#line 1224 "/src/php-src/Zend/zend_language_parser.y"
7272
11
                                 { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_EXPR_LIST, zend_ast_create(ZEND_AST_CAST_VOID, (yyvsp[0].ast))); }
7273
11
#line 7274 "/src/php-src/Zend/zend_language_parser.c"
7274
11
    break;
7275
7276
6.97k
  case 409:
7277
6.97k
#line 1225 "/src/php-src/Zend/zend_language_parser.y"
7278
6.97k
                     { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_EXPR_LIST, (yyvsp[0].ast)); }
7279
6.97k
#line 7280 "/src/php-src/Zend/zend_language_parser.c"
7280
6.97k
    break;
7281
7282
484
  case 410:
7283
484
#line 1229 "/src/php-src/Zend/zend_language_parser.y"
7284
484
                                                           { (yyval.num) = CG(zend_lineno); }
7285
484
#line 7286 "/src/php-src/Zend/zend_language_parser.c"
7286
484
    break;
7287
7288
436
  case 411:
7289
436
#line 1230 "/src/php-src/Zend/zend_language_parser.y"
7290
436
                                                                                             {
7291
436
      zend_ast *decl = zend_ast_create_decl(
7292
436
        ZEND_AST_CLASS, ZEND_ACC_ANON_CLASS | (yyvsp[-9].num), (yyvsp[-7].num), (yyvsp[-3].str), NULL,
7293
436
        (yyvsp[-5].ast), (yyvsp[-4].ast), (yyvsp[-1].ast), NULL, NULL);
7294
436
      (yyval.ast) = zend_ast_create(ZEND_AST_NEW, decl, (yyvsp[-6].ast));
7295
436
    }
7296
436
#line 7297 "/src/php-src/Zend/zend_language_parser.c"
7297
436
    break;
7298
7299
18.2k
  case 412:
7300
18.2k
#line 1240 "/src/php-src/Zend/zend_language_parser.y"
7301
18.2k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NEW, (yyvsp[-1].ast), (yyvsp[0].ast)); }
7302
18.2k
#line 7303 "/src/php-src/Zend/zend_language_parser.c"
7303
18.2k
    break;
7304
7305
404
  case 413:
7306
404
#line 1242 "/src/php-src/Zend/zend_language_parser.y"
7307
404
                        { (yyval.ast) = (yyvsp[0].ast); }
7308
404
#line 7309 "/src/php-src/Zend/zend_language_parser.c"
7309
404
    break;
7310
7311
32
  case 414:
7312
32
#line 1244 "/src/php-src/Zend/zend_language_parser.y"
7313
32
                        { zend_ast_with_attributes((yyvsp[0].ast)->child[0], (yyvsp[-1].ast)); (yyval.ast) = (yyvsp[0].ast); }
7314
32
#line 7315 "/src/php-src/Zend/zend_language_parser.c"
7315
32
    break;
7316
7317
6.80k
  case 415:
7318
6.80k
#line 1249 "/src/php-src/Zend/zend_language_parser.y"
7319
6.80k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NEW, (yyvsp[0].ast), zend_ast_create_list(0, ZEND_AST_ARG_LIST)); }
7320
6.80k
#line 7321 "/src/php-src/Zend/zend_language_parser.c"
7321
6.80k
    break;
7322
7323
202k
  case 416:
7324
202k
#line 1254 "/src/php-src/Zend/zend_language_parser.y"
7325
202k
                        { (yyval.ast) = (yyvsp[0].ast); }
7326
202k
#line 7327 "/src/php-src/Zend/zend_language_parser.c"
7327
202k
    break;
7328
7329
388
  case 417:
7330
388
#line 1256 "/src/php-src/Zend/zend_language_parser.y"
7331
388
                        { (yyvsp[-3].ast)->attr = ZEND_ARRAY_SYNTAX_LIST; (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN, (yyvsp[-3].ast), (yyvsp[0].ast)); }
7332
388
#line 7333 "/src/php-src/Zend/zend_language_parser.c"
7333
388
    break;
7334
7335
190
  case 418:
7336
190
#line 1258 "/src/php-src/Zend/zend_language_parser.y"
7337
190
                        { (yyvsp[-3].ast)->attr = ZEND_ARRAY_SYNTAX_SHORT; (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN, (yyvsp[-3].ast), (yyvsp[0].ast)); }
7338
190
#line 7339 "/src/php-src/Zend/zend_language_parser.c"
7339
190
    break;
7340
7341
95.4k
  case 419:
7342
95.4k
#line 1260 "/src/php-src/Zend/zend_language_parser.y"
7343
95.4k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7344
95.4k
#line 7345 "/src/php-src/Zend/zend_language_parser.c"
7345
95.4k
    break;
7346
7347
2.30k
  case 420:
7348
2.30k
#line 1262 "/src/php-src/Zend/zend_language_parser.y"
7349
2.30k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN_REF, (yyvsp[-3].ast), (yyvsp[0].ast)); }
7350
2.30k
#line 7351 "/src/php-src/Zend/zend_language_parser.c"
7351
2.30k
    break;
7352
7353
111
  case 421:
7354
111
#line 1263 "/src/php-src/Zend/zend_language_parser.y"
7355
111
                                            {
7356
111
      zend_ast *name = zend_ast_create_zval_from_str(ZSTR_KNOWN(ZEND_STR_CLONE));
7357
111
      name->attr = ZEND_NAME_FQ;
7358
111
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, name, (yyvsp[0].ast));
7359
111
    }
7360
111
#line 7361 "/src/php-src/Zend/zend_language_parser.c"
7361
111
    break;
7362
7363
290
  case 422:
7364
290
#line 1268 "/src/php-src/Zend/zend_language_parser.y"
7365
290
                             {
7366
290
      zend_ast *name = zend_ast_create_zval_from_str(ZSTR_KNOWN(ZEND_STR_CLONE));
7367
290
      name->attr = ZEND_NAME_FQ;
7368
290
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, name, zend_ast_create_list(1, ZEND_AST_ARG_LIST, (yyvsp[0].ast)));
7369
290
    }
7370
290
#line 7371 "/src/php-src/Zend/zend_language_parser.c"
7371
290
    break;
7372
7373
1.66k
  case 423:
7374
1.66k
#line 1274 "/src/php-src/Zend/zend_language_parser.y"
7375
1.66k
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_ADD, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7376
1.66k
#line 7377 "/src/php-src/Zend/zend_language_parser.c"
7377
1.66k
    break;
7378
7379
363
  case 424:
7380
363
#line 1276 "/src/php-src/Zend/zend_language_parser.y"
7381
363
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_SUB, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7382
363
#line 7383 "/src/php-src/Zend/zend_language_parser.c"
7383
363
    break;
7384
7385
1.28k
  case 425:
7386
1.28k
#line 1278 "/src/php-src/Zend/zend_language_parser.y"
7387
1.28k
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_MUL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7388
1.28k
#line 7389 "/src/php-src/Zend/zend_language_parser.c"
7389
1.28k
    break;
7390
7391
70
  case 426:
7392
70
#line 1280 "/src/php-src/Zend/zend_language_parser.y"
7393
70
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_POW, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7394
70
#line 7395 "/src/php-src/Zend/zend_language_parser.c"
7395
70
    break;
7396
7397
265
  case 427:
7398
265
#line 1282 "/src/php-src/Zend/zend_language_parser.y"
7399
265
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_DIV, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7400
265
#line 7401 "/src/php-src/Zend/zend_language_parser.c"
7401
265
    break;
7402
7403
32.7k
  case 428:
7404
32.7k
#line 1284 "/src/php-src/Zend/zend_language_parser.y"
7405
32.7k
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_CONCAT, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7406
32.7k
#line 7407 "/src/php-src/Zend/zend_language_parser.c"
7407
32.7k
    break;
7408
7409
130
  case 429:
7410
130
#line 1286 "/src/php-src/Zend/zend_language_parser.y"
7411
130
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_MOD, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7412
130
#line 7413 "/src/php-src/Zend/zend_language_parser.c"
7413
130
    break;
7414
7415
5.91k
  case 430:
7416
5.91k
#line 1288 "/src/php-src/Zend/zend_language_parser.y"
7417
5.91k
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_BW_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7418
5.91k
#line 7419 "/src/php-src/Zend/zend_language_parser.c"
7419
5.91k
    break;
7420
7421
135
  case 431:
7422
135
#line 1290 "/src/php-src/Zend/zend_language_parser.y"
7423
135
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_BW_OR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7424
135
#line 7425 "/src/php-src/Zend/zend_language_parser.c"
7425
135
    break;
7426
7427
166
  case 432:
7428
166
#line 1292 "/src/php-src/Zend/zend_language_parser.y"
7429
166
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_BW_XOR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7430
166
#line 7431 "/src/php-src/Zend/zend_language_parser.c"
7431
166
    break;
7432
7433
80
  case 433:
7434
80
#line 1294 "/src/php-src/Zend/zend_language_parser.y"
7435
80
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_SL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7436
80
#line 7437 "/src/php-src/Zend/zend_language_parser.c"
7437
80
    break;
7438
7439
215
  case 434:
7440
215
#line 1296 "/src/php-src/Zend/zend_language_parser.y"
7441
215
                        { (yyval.ast) = zend_ast_create_assign_op(ZEND_SR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7442
215
#line 7443 "/src/php-src/Zend/zend_language_parser.c"
7443
215
    break;
7444
7445
888
  case 435:
7446
888
#line 1298 "/src/php-src/Zend/zend_language_parser.y"
7447
888
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ASSIGN_COALESCE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7448
888
#line 7449 "/src/php-src/Zend/zend_language_parser.c"
7449
888
    break;
7450
7451
3.63k
  case 436:
7452
3.63k
#line 1299 "/src/php-src/Zend/zend_language_parser.y"
7453
3.63k
                               { (yyval.ast) = zend_ast_create(ZEND_AST_POST_INC, (yyvsp[-1].ast)); }
7454
3.63k
#line 7455 "/src/php-src/Zend/zend_language_parser.c"
7455
3.63k
    break;
7456
7457
1.03k
  case 437:
7458
1.03k
#line 1300 "/src/php-src/Zend/zend_language_parser.y"
7459
1.03k
                               { (yyval.ast) = zend_ast_create(ZEND_AST_PRE_INC, (yyvsp[0].ast)); }
7460
1.03k
#line 7461 "/src/php-src/Zend/zend_language_parser.c"
7461
1.03k
    break;
7462
7463
1.16k
  case 438:
7464
1.16k
#line 1301 "/src/php-src/Zend/zend_language_parser.y"
7465
1.16k
                               { (yyval.ast) = zend_ast_create(ZEND_AST_POST_DEC, (yyvsp[-1].ast)); }
7466
1.16k
#line 7467 "/src/php-src/Zend/zend_language_parser.c"
7467
1.16k
    break;
7468
7469
613
  case 439:
7470
613
#line 1302 "/src/php-src/Zend/zend_language_parser.y"
7471
613
                               { (yyval.ast) = zend_ast_create(ZEND_AST_PRE_DEC, (yyvsp[0].ast)); }
7472
613
#line 7473 "/src/php-src/Zend/zend_language_parser.c"
7473
613
    break;
7474
7475
763
  case 440:
7476
763
#line 1304 "/src/php-src/Zend/zend_language_parser.y"
7477
763
                        { (yyval.ast) = zend_ast_create(ZEND_AST_OR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7478
763
#line 7479 "/src/php-src/Zend/zend_language_parser.c"
7479
763
    break;
7480
7481
961
  case 441:
7482
961
#line 1306 "/src/php-src/Zend/zend_language_parser.y"
7483
961
                        { (yyval.ast) = zend_ast_create(ZEND_AST_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7484
961
#line 7485 "/src/php-src/Zend/zend_language_parser.c"
7485
961
    break;
7486
7487
1.08k
  case 442:
7488
1.08k
#line 1308 "/src/php-src/Zend/zend_language_parser.y"
7489
1.08k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_OR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7490
1.08k
#line 7491 "/src/php-src/Zend/zend_language_parser.c"
7491
1.08k
    break;
7492
7493
1.23k
  case 443:
7494
1.23k
#line 1310 "/src/php-src/Zend/zend_language_parser.y"
7495
1.23k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7496
1.23k
#line 7497 "/src/php-src/Zend/zend_language_parser.c"
7497
1.23k
    break;
7498
7499
941
  case 444:
7500
941
#line 1312 "/src/php-src/Zend/zend_language_parser.y"
7501
941
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_BOOL_XOR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7502
941
#line 7503 "/src/php-src/Zend/zend_language_parser.c"
7503
941
    break;
7504
7505
5.35k
  case 445:
7506
5.35k
#line 1313 "/src/php-src/Zend/zend_language_parser.y"
7507
5.35k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_BW_OR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7508
5.35k
#line 7509 "/src/php-src/Zend/zend_language_parser.c"
7509
5.35k
    break;
7510
7511
2.51k
  case 446:
7512
2.51k
#line 1314 "/src/php-src/Zend/zend_language_parser.y"
7513
2.51k
                                                                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_BW_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7514
2.51k
#line 7515 "/src/php-src/Zend/zend_language_parser.c"
7515
2.51k
    break;
7516
7517
1.17k
  case 447:
7518
1.17k
#line 1315 "/src/php-src/Zend/zend_language_parser.y"
7519
1.17k
                                                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_BW_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7520
1.17k
#line 7521 "/src/php-src/Zend/zend_language_parser.c"
7521
1.17k
    break;
7522
7523
3.18k
  case 448:
7524
3.18k
#line 1316 "/src/php-src/Zend/zend_language_parser.y"
7525
3.18k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_BW_XOR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7526
3.18k
#line 7527 "/src/php-src/Zend/zend_language_parser.c"
7527
3.18k
    break;
7528
7529
33.5k
  case 449:
7530
33.5k
#line 1317 "/src/php-src/Zend/zend_language_parser.y"
7531
33.5k
                                { (yyval.ast) = zend_ast_create_concat_op((yyvsp[-2].ast), (yyvsp[0].ast)); }
7532
33.5k
#line 7533 "/src/php-src/Zend/zend_language_parser.c"
7533
33.5k
    break;
7534
7535
14.7k
  case 450:
7536
14.7k
#line 1318 "/src/php-src/Zend/zend_language_parser.y"
7537
14.7k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_ADD, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7538
14.7k
#line 7539 "/src/php-src/Zend/zend_language_parser.c"
7539
14.7k
    break;
7540
7541
5.57k
  case 451:
7542
5.57k
#line 1319 "/src/php-src/Zend/zend_language_parser.y"
7543
5.57k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_SUB, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7544
5.57k
#line 7545 "/src/php-src/Zend/zend_language_parser.c"
7545
5.57k
    break;
7546
7547
2.72k
  case 452:
7548
2.72k
#line 1320 "/src/php-src/Zend/zend_language_parser.y"
7549
2.72k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_MUL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7550
2.72k
#line 7551 "/src/php-src/Zend/zend_language_parser.c"
7551
2.72k
    break;
7552
7553
365
  case 453:
7554
365
#line 1321 "/src/php-src/Zend/zend_language_parser.y"
7555
365
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_POW, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7556
365
#line 7557 "/src/php-src/Zend/zend_language_parser.c"
7557
365
    break;
7558
7559
2.84k
  case 454:
7560
2.84k
#line 1322 "/src/php-src/Zend/zend_language_parser.y"
7561
2.84k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_DIV, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7562
2.84k
#line 7563 "/src/php-src/Zend/zend_language_parser.c"
7563
2.84k
    break;
7564
7565
2.02k
  case 455:
7566
2.02k
#line 1323 "/src/php-src/Zend/zend_language_parser.y"
7567
2.02k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_MOD, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7568
2.02k
#line 7569 "/src/php-src/Zend/zend_language_parser.c"
7569
2.02k
    break;
7570
7571
1.34k
  case 456:
7572
1.34k
#line 1324 "/src/php-src/Zend/zend_language_parser.y"
7573
1.34k
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_SL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7574
1.34k
#line 7575 "/src/php-src/Zend/zend_language_parser.c"
7575
1.34k
    break;
7576
7577
498
  case 457:
7578
498
#line 1325 "/src/php-src/Zend/zend_language_parser.y"
7579
498
                                { (yyval.ast) = zend_ast_create_binary_op(ZEND_SR, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7580
498
#line 7581 "/src/php-src/Zend/zend_language_parser.c"
7581
498
    break;
7582
7583
1.73k
  case 458:
7584
1.73k
#line 1326 "/src/php-src/Zend/zend_language_parser.y"
7585
1.73k
                                   { (yyval.ast) = zend_ast_create(ZEND_AST_UNARY_PLUS, (yyvsp[0].ast)); }
7586
1.73k
#line 7587 "/src/php-src/Zend/zend_language_parser.c"
7587
1.73k
    break;
7588
7589
6.99k
  case 459:
7590
6.99k
#line 1327 "/src/php-src/Zend/zend_language_parser.y"
7591
6.99k
                                   { (yyval.ast) = zend_ast_create(ZEND_AST_UNARY_MINUS, (yyvsp[0].ast)); }
7592
6.99k
#line 7593 "/src/php-src/Zend/zend_language_parser.c"
7593
6.99k
    break;
7594
7595
7.56k
  case 460:
7596
7.56k
#line 1328 "/src/php-src/Zend/zend_language_parser.y"
7597
7.56k
                         { (yyval.ast) = zend_ast_create_ex(ZEND_AST_UNARY_OP, ZEND_BOOL_NOT, (yyvsp[0].ast)); }
7598
7.56k
#line 7599 "/src/php-src/Zend/zend_language_parser.c"
7599
7.56k
    break;
7600
7601
20.3k
  case 461:
7602
20.3k
#line 1329 "/src/php-src/Zend/zend_language_parser.y"
7603
20.3k
                         { (yyval.ast) = zend_ast_create_ex(ZEND_AST_UNARY_OP, ZEND_BW_NOT, (yyvsp[0].ast)); }
7604
20.3k
#line 7605 "/src/php-src/Zend/zend_language_parser.c"
7605
20.3k
    break;
7606
7607
1.68k
  case 462:
7608
1.68k
#line 1331 "/src/php-src/Zend/zend_language_parser.y"
7609
1.68k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_IDENTICAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7610
1.68k
#line 7611 "/src/php-src/Zend/zend_language_parser.c"
7611
1.68k
    break;
7612
7613
630
  case 463:
7614
630
#line 1333 "/src/php-src/Zend/zend_language_parser.y"
7615
630
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_NOT_IDENTICAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7616
630
#line 7617 "/src/php-src/Zend/zend_language_parser.c"
7617
630
    break;
7618
7619
6.47k
  case 464:
7620
6.47k
#line 1335 "/src/php-src/Zend/zend_language_parser.y"
7621
6.47k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_EQUAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7622
6.47k
#line 7623 "/src/php-src/Zend/zend_language_parser.c"
7623
6.47k
    break;
7624
7625
2.33k
  case 465:
7626
2.33k
#line 1337 "/src/php-src/Zend/zend_language_parser.y"
7627
2.33k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_NOT_EQUAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7628
2.33k
#line 7629 "/src/php-src/Zend/zend_language_parser.c"
7629
2.33k
    break;
7630
7631
646
  case 466:
7632
646
#line 1339 "/src/php-src/Zend/zend_language_parser.y"
7633
646
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PIPE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7634
646
#line 7635 "/src/php-src/Zend/zend_language_parser.c"
7635
646
    break;
7636
7637
4.81k
  case 467:
7638
4.81k
#line 1341 "/src/php-src/Zend/zend_language_parser.y"
7639
4.81k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_SMALLER, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7640
4.81k
#line 7641 "/src/php-src/Zend/zend_language_parser.c"
7641
4.81k
    break;
7642
7643
1.12k
  case 468:
7644
1.12k
#line 1343 "/src/php-src/Zend/zend_language_parser.y"
7645
1.12k
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_IS_SMALLER_OR_EQUAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7646
1.12k
#line 7647 "/src/php-src/Zend/zend_language_parser.c"
7647
1.12k
    break;
7648
7649
1.88k
  case 469:
7650
1.88k
#line 1345 "/src/php-src/Zend/zend_language_parser.y"
7651
1.88k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_GREATER, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7652
1.88k
#line 7653 "/src/php-src/Zend/zend_language_parser.c"
7653
1.88k
    break;
7654
7655
661
  case 470:
7656
661
#line 1347 "/src/php-src/Zend/zend_language_parser.y"
7657
661
                        { (yyval.ast) = zend_ast_create(ZEND_AST_GREATER_EQUAL, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7658
661
#line 7659 "/src/php-src/Zend/zend_language_parser.c"
7659
661
    break;
7660
7661
37
  case 471:
7662
37
#line 1349 "/src/php-src/Zend/zend_language_parser.y"
7663
37
                        { (yyval.ast) = zend_ast_create_binary_op(ZEND_SPACESHIP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7664
37
#line 7665 "/src/php-src/Zend/zend_language_parser.c"
7665
37
    break;
7666
7667
242
  case 472:
7668
242
#line 1351 "/src/php-src/Zend/zend_language_parser.y"
7669
242
                        { (yyval.ast) = zend_ast_create(ZEND_AST_INSTANCEOF, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7670
242
#line 7671 "/src/php-src/Zend/zend_language_parser.c"
7671
242
    break;
7672
7673
6.12k
  case 473:
7674
6.12k
#line 1352 "/src/php-src/Zend/zend_language_parser.y"
7675
6.12k
                             {
7676
6.12k
      (yyval.ast) = (yyvsp[-1].ast);
7677
6.12k
      if ((yyval.ast)->kind == ZEND_AST_CONDITIONAL) (yyval.ast)->attr = ZEND_PARENTHESIZED_CONDITIONAL;
7678
6.12k
      if ((yyval.ast)->kind == ZEND_AST_ARROW_FUNC) (yyval.ast)->attr = ZEND_PARENTHESIZED_ARROW_FUNC;
7679
6.12k
    }
7680
6.12k
#line 7681 "/src/php-src/Zend/zend_language_parser.c"
7681
6.12k
    break;
7682
7683
18.5k
  case 474:
7684
18.5k
#line 1357 "/src/php-src/Zend/zend_language_parser.y"
7685
18.5k
                                    { (yyval.ast) = (yyvsp[0].ast); }
7686
18.5k
#line 7687 "/src/php-src/Zend/zend_language_parser.c"
7687
18.5k
    break;
7688
7689
6.80k
  case 475:
7690
6.80k
#line 1358 "/src/php-src/Zend/zend_language_parser.y"
7691
6.80k
                                        { (yyval.ast) = (yyvsp[0].ast); }
7692
6.80k
#line 7693 "/src/php-src/Zend/zend_language_parser.c"
7693
6.80k
    break;
7694
7695
2.05k
  case 476:
7696
2.05k
#line 1360 "/src/php-src/Zend/zend_language_parser.y"
7697
2.05k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CONDITIONAL, (yyvsp[-4].ast), (yyvsp[-2].ast), (yyvsp[0].ast)); }
7698
2.05k
#line 7699 "/src/php-src/Zend/zend_language_parser.c"
7699
2.05k
    break;
7700
7701
1.11k
  case 477:
7702
1.11k
#line 1362 "/src/php-src/Zend/zend_language_parser.y"
7703
1.11k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CONDITIONAL, (yyvsp[-3].ast), NULL, (yyvsp[0].ast)); }
7704
1.11k
#line 7705 "/src/php-src/Zend/zend_language_parser.c"
7705
1.11k
    break;
7706
7707
1.44k
  case 478:
7708
1.44k
#line 1364 "/src/php-src/Zend/zend_language_parser.y"
7709
1.44k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_COALESCE, (yyvsp[-2].ast), (yyvsp[0].ast)); }
7710
1.44k
#line 7711 "/src/php-src/Zend/zend_language_parser.c"
7711
1.44k
    break;
7712
7713
5.33k
  case 479:
7714
5.33k
#line 1365 "/src/php-src/Zend/zend_language_parser.y"
7715
5.33k
                                           { (yyval.ast) = (yyvsp[0].ast); }
7716
5.33k
#line 7717 "/src/php-src/Zend/zend_language_parser.c"
7717
5.33k
    break;
7718
7719
300
  case 480:
7720
300
#line 1366 "/src/php-src/Zend/zend_language_parser.y"
7721
300
                                        { (yyval.ast) = zend_ast_create_cast(IS_LONG, (yyvsp[0].ast)); }
7722
300
#line 7723 "/src/php-src/Zend/zend_language_parser.c"
7723
300
    break;
7724
7725
55
  case 481:
7726
55
#line 1367 "/src/php-src/Zend/zend_language_parser.y"
7727
55
                                        { (yyval.ast) = zend_ast_create_cast(IS_DOUBLE, (yyvsp[0].ast)); }
7728
55
#line 7729 "/src/php-src/Zend/zend_language_parser.c"
7729
55
    break;
7730
7731
343
  case 482:
7732
343
#line 1368 "/src/php-src/Zend/zend_language_parser.y"
7733
343
                                        { (yyval.ast) = zend_ast_create_cast(IS_STRING, (yyvsp[0].ast)); }
7734
343
#line 7735 "/src/php-src/Zend/zend_language_parser.c"
7735
343
    break;
7736
7737
220
  case 483:
7738
220
#line 1369 "/src/php-src/Zend/zend_language_parser.y"
7739
220
                                        { (yyval.ast) = zend_ast_create_cast(IS_ARRAY, (yyvsp[0].ast)); }
7740
220
#line 7741 "/src/php-src/Zend/zend_language_parser.c"
7741
220
    break;
7742
7743
266
  case 484:
7744
266
#line 1370 "/src/php-src/Zend/zend_language_parser.y"
7745
266
                                        { (yyval.ast) = zend_ast_create_cast(IS_OBJECT, (yyvsp[0].ast)); }
7746
266
#line 7747 "/src/php-src/Zend/zend_language_parser.c"
7747
266
    break;
7748
7749
43
  case 485:
7750
43
#line 1371 "/src/php-src/Zend/zend_language_parser.y"
7751
43
                                        { (yyval.ast) = zend_ast_create_cast(_IS_BOOL, (yyvsp[0].ast)); }
7752
43
#line 7753 "/src/php-src/Zend/zend_language_parser.c"
7753
43
    break;
7754
7755
6
  case 486:
7756
6
#line 1372 "/src/php-src/Zend/zend_language_parser.y"
7757
6
                                        { (yyval.ast) = zend_ast_create_cast(IS_NULL, (yyvsp[0].ast)); }
7758
6
#line 7759 "/src/php-src/Zend/zend_language_parser.c"
7759
6
    break;
7760
7761
192
  case 487:
7762
192
#line 1373 "/src/php-src/Zend/zend_language_parser.y"
7763
192
                                      {
7764
192
      zend_ast *name = zend_ast_create_zval_from_str(ZSTR_KNOWN(ZEND_STR_EXIT));
7765
192
      name->attr = ZEND_NAME_FQ;
7766
192
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, name, (yyvsp[0].ast));
7767
192
    }
7768
192
#line 7769 "/src/php-src/Zend/zend_language_parser.c"
7769
192
    break;
7770
7771
32.8k
  case 488:
7772
32.8k
#line 1378 "/src/php-src/Zend/zend_language_parser.y"
7773
32.8k
                                                { (yyval.ast) = zend_ast_create(ZEND_AST_SILENCE, (yyvsp[0].ast)); }
7774
32.8k
#line 7775 "/src/php-src/Zend/zend_language_parser.c"
7775
32.8k
    break;
7776
7777
361k
  case 489:
7778
361k
#line 1379 "/src/php-src/Zend/zend_language_parser.y"
7779
361k
                       { (yyval.ast) = (yyvsp[0].ast); }
7780
361k
#line 7781 "/src/php-src/Zend/zend_language_parser.c"
7781
361k
    break;
7782
7783
35
  case 490:
7784
35
#line 1380 "/src/php-src/Zend/zend_language_parser.y"
7785
35
                                       { (yyval.ast) = zend_ast_create(ZEND_AST_SHELL_EXEC, (yyvsp[-1].ast)); }
7786
35
#line 7787 "/src/php-src/Zend/zend_language_parser.c"
7787
35
    break;
7788
7789
1.80k
  case 491:
7790
1.80k
#line 1381 "/src/php-src/Zend/zend_language_parser.y"
7791
1.80k
                             { (yyval.ast) = zend_ast_create(ZEND_AST_PRINT, (yyvsp[0].ast)); }
7792
1.80k
#line 7793 "/src/php-src/Zend/zend_language_parser.c"
7793
1.80k
    break;
7794
7795
433
  case 492:
7796
433
#line 1382 "/src/php-src/Zend/zend_language_parser.y"
7797
433
                        { (yyval.ast) = zend_ast_create(ZEND_AST_YIELD, NULL, NULL); CG(extra_fn_flags) |= ZEND_ACC_GENERATOR; }
7798
433
#line 7799 "/src/php-src/Zend/zend_language_parser.c"
7799
433
    break;
7800
7801
860
  case 493:
7802
860
#line 1383 "/src/php-src/Zend/zend_language_parser.y"
7803
860
                             { (yyval.ast) = zend_ast_create(ZEND_AST_YIELD, (yyvsp[0].ast), NULL); CG(extra_fn_flags) |= ZEND_ACC_GENERATOR; }
7804
860
#line 7805 "/src/php-src/Zend/zend_language_parser.c"
7805
860
    break;
7806
7807
185
  case 494:
7808
185
#line 1384 "/src/php-src/Zend/zend_language_parser.y"
7809
185
                                                 { (yyval.ast) = zend_ast_create(ZEND_AST_YIELD, (yyvsp[0].ast), (yyvsp[-2].ast)); CG(extra_fn_flags) |= ZEND_ACC_GENERATOR; }
7810
185
#line 7811 "/src/php-src/Zend/zend_language_parser.c"
7811
185
    break;
7812
7813
388
  case 495:
7814
388
#line 1385 "/src/php-src/Zend/zend_language_parser.y"
7815
388
                                  { (yyval.ast) = zend_ast_create(ZEND_AST_YIELD_FROM, (yyvsp[0].ast)); CG(extra_fn_flags) |= ZEND_ACC_GENERATOR; }
7816
388
#line 7817 "/src/php-src/Zend/zend_language_parser.c"
7817
388
    break;
7818
7819
1.37k
  case 496:
7820
1.37k
#line 1386 "/src/php-src/Zend/zend_language_parser.y"
7821
1.37k
                             { (yyval.ast) = zend_ast_create(ZEND_AST_THROW, (yyvsp[0].ast)); }
7822
1.37k
#line 7823 "/src/php-src/Zend/zend_language_parser.c"
7823
1.37k
    break;
7824
7825
3.76k
  case 497:
7826
3.76k
#line 1387 "/src/php-src/Zend/zend_language_parser.y"
7827
3.76k
                                { (yyval.ast) = (yyvsp[0].ast); }
7828
3.76k
#line 7829 "/src/php-src/Zend/zend_language_parser.c"
7829
3.76k
    break;
7830
7831
198
  case 498:
7832
198
#line 1388 "/src/php-src/Zend/zend_language_parser.y"
7833
198
                                           { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-1].ast)); }
7834
198
#line 7835 "/src/php-src/Zend/zend_language_parser.c"
7835
198
    break;
7836
7837
107
  case 499:
7838
107
#line 1389 "/src/php-src/Zend/zend_language_parser.y"
7839
107
                                         { (yyval.ast) = (yyvsp[0].ast); ((zend_ast_decl *) (yyval.ast))->flags |= ZEND_ACC_STATIC; }
7840
107
#line 7841 "/src/php-src/Zend/zend_language_parser.c"
7841
107
    break;
7842
7843
15
  case 500:
7844
15
#line 1391 "/src/php-src/Zend/zend_language_parser.y"
7845
15
                        { (yyval.ast) = zend_ast_with_attributes((yyvsp[0].ast), (yyvsp[-2].ast)); ((zend_ast_decl *) (yyval.ast))->flags |= ZEND_ACC_STATIC; }
7846
15
#line 7847 "/src/php-src/Zend/zend_language_parser.c"
7847
15
    break;
7848
7849
479
  case 501:
7850
479
#line 1392 "/src/php-src/Zend/zend_language_parser.y"
7851
479
                      { (yyval.ast) = (yyvsp[0].ast); }
7852
479
#line 7853 "/src/php-src/Zend/zend_language_parser.c"
7853
479
    break;
7854
7855
3.61k
  case 502:
7856
3.61k
#line 1399 "/src/php-src/Zend/zend_language_parser.y"
7857
3.61k
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_CLOSURE, (yyvsp[-11].num) | (yyvsp[0].num), (yyvsp[-12].num), (yyvsp[-10].str),
7858
3.61k
          NULL,
7859
3.61k
          (yyvsp[-8].ast), (yyvsp[-6].ast), (yyvsp[-2].ast), (yyvsp[-5].ast), NULL); CG(extra_fn_flags) = (yyvsp[-4].num); }
7860
3.61k
#line 7861 "/src/php-src/Zend/zend_language_parser.c"
7861
3.61k
    break;
7862
7863
471
  case 503:
7864
471
#line 1404 "/src/php-src/Zend/zend_language_parser.y"
7865
471
                        { (yyval.ast) = zend_ast_create_decl(ZEND_AST_ARROW_FUNC, (yyvsp[-10].num) | (yyvsp[0].num), (yyvsp[-11].num), (yyvsp[-9].str),
7866
471
          NULL, (yyvsp[-7].ast), NULL, (yyvsp[-1].ast), (yyvsp[-5].ast), NULL);
7867
471
          CG(extra_fn_flags) = (yyvsp[-3].num); }
7868
471
#line 7869 "/src/php-src/Zend/zend_language_parser.c"
7869
471
    break;
7870
7871
486
  case 504:
7872
486
#line 1410 "/src/php-src/Zend/zend_language_parser.y"
7873
486
             { (yyval.num) = CG(zend_lineno); }
7874
486
#line 7875 "/src/php-src/Zend/zend_language_parser.c"
7875
486
    break;
7876
7877
25.3k
  case 505:
7878
25.3k
#line 1414 "/src/php-src/Zend/zend_language_parser.y"
7879
25.3k
                   { (yyval.num) = CG(zend_lineno); }
7880
25.3k
#line 7881 "/src/php-src/Zend/zend_language_parser.c"
7881
25.3k
    break;
7882
7883
76.9k
  case 506:
7884
76.9k
#line 1418 "/src/php-src/Zend/zend_language_parser.y"
7885
76.9k
               { (yyval.str) = CG(doc_comment); CG(doc_comment) = NULL; }
7886
76.9k
#line 7887 "/src/php-src/Zend/zend_language_parser.c"
7887
76.9k
    break;
7888
7889
54.4k
  case 507:
7890
54.4k
#line 1422 "/src/php-src/Zend/zend_language_parser.y"
7891
54.4k
                                         { (yyval.num) = CG(extra_fn_flags); CG(extra_fn_flags) = 0; }
7892
54.4k
#line 7893 "/src/php-src/Zend/zend_language_parser.c"
7893
54.4k
    break;
7894
7895
486
  case 508:
7896
486
#line 1426 "/src/php-src/Zend/zend_language_parser.y"
7897
486
               { (yyval.ptr) = LANG_SCNG(yy_text); }
7898
486
#line 7899 "/src/php-src/Zend/zend_language_parser.c"
7899
486
    break;
7900
7901
26.9k
  case 509:
7902
26.9k
#line 1430 "/src/php-src/Zend/zend_language_parser.y"
7903
26.9k
                        { (yyval.num) = 0; }
7904
26.9k
#line 7905 "/src/php-src/Zend/zend_language_parser.c"
7905
26.9k
    break;
7906
7907
835
  case 510:
7908
835
#line 1431 "/src/php-src/Zend/zend_language_parser.y"
7909
835
                                { (yyval.num) = ZEND_ACC_RETURN_REFERENCE; }
7910
835
#line 7911 "/src/php-src/Zend/zend_language_parser.c"
7911
835
    break;
7912
7913
3.23k
  case 511:
7914
3.23k
#line 1435 "/src/php-src/Zend/zend_language_parser.y"
7915
3.23k
                       { (yyval.ast) = NULL; }
7916
3.23k
#line 7917 "/src/php-src/Zend/zend_language_parser.c"
7917
3.23k
    break;
7918
7919
575
  case 512:
7920
575
#line 1436 "/src/php-src/Zend/zend_language_parser.y"
7921
575
                                                              { (yyval.ast) = (yyvsp[-2].ast); }
7922
575
#line 7923 "/src/php-src/Zend/zend_language_parser.c"
7923
575
    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
578
  case 514:
7932
578
#line 1441 "/src/php-src/Zend/zend_language_parser.y"
7933
578
                            { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_CLOSURE_USES, (yyvsp[0].ast)); }
7934
578
#line 7935 "/src/php-src/Zend/zend_language_parser.c"
7935
578
    break;
7936
7937
434
  case 515:
7938
434
#line 1445 "/src/php-src/Zend/zend_language_parser.y"
7939
434
                                        { (yyval.ast) = (yyvsp[0].ast); }
7940
434
#line 7941 "/src/php-src/Zend/zend_language_parser.c"
7941
434
    break;
7942
7943
316
  case 516:
7944
316
#line 1446 "/src/php-src/Zend/zend_language_parser.y"
7945
316
                                        { (yyval.ast) = (yyvsp[0].ast); (yyval.ast)->attr = ZEND_BIND_REF; }
7946
316
#line 7947 "/src/php-src/Zend/zend_language_parser.c"
7947
316
    break;
7948
7949
64.7k
  case 517:
7950
64.7k
#line 1451 "/src/php-src/Zend/zend_language_parser.y"
7951
64.7k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CALL, (yyvsp[-1].ast), (yyvsp[0].ast)); }
7952
64.7k
#line 7953 "/src/php-src/Zend/zend_language_parser.c"
7953
64.7k
    break;
7954
7955
5
  case 518:
7956
5
#line 1452 "/src/php-src/Zend/zend_language_parser.y"
7957
5
                                         {
7958
5
      zval zv;
7959
5
      if (zend_lex_tstring(&zv, (yyvsp[-1].ident)) == FAILURE) { YYABORT; }
7960
5
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, zend_ast_create_zval(&zv), (yyvsp[0].ast));
7961
5
    }
7962
0
#line 7963 "/src/php-src/Zend/zend_language_parser.c"
7963
0
    break;
7964
7965
3.08k
  case 519:
7966
3.08k
#line 1458 "/src/php-src/Zend/zend_language_parser.y"
7967
3.08k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_CALL, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
7968
3.08k
#line 7969 "/src/php-src/Zend/zend_language_parser.c"
7969
3.08k
    break;
7970
7971
567
  case 520:
7972
567
#line 1460 "/src/php-src/Zend/zend_language_parser.y"
7973
567
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_CALL, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
7974
567
#line 7975 "/src/php-src/Zend/zend_language_parser.c"
7975
567
    break;
7976
7977
3.56k
  case 521:
7978
3.56k
#line 1461 "/src/php-src/Zend/zend_language_parser.y"
7979
3.56k
                              { (yyval.num) = CG(zend_lineno); }
7980
3.56k
#line 7981 "/src/php-src/Zend/zend_language_parser.c"
7981
3.56k
    break;
7982
7983
2.97k
  case 522:
7984
2.97k
#line 1461 "/src/php-src/Zend/zend_language_parser.y"
7985
2.97k
                                                                           {
7986
2.97k
      (yyval.ast) = zend_ast_create(ZEND_AST_CALL, (yyvsp[-2].ast), (yyvsp[0].ast));
7987
2.97k
      (yyval.ast)->lineno = (yyvsp[-1].num);
7988
2.97k
    }
7989
2.97k
#line 7990 "/src/php-src/Zend/zend_language_parser.c"
7990
2.97k
    break;
7991
7992
340
  case 523:
7993
340
#line 1469 "/src/php-src/Zend/zend_language_parser.y"
7994
340
                        { zval zv; ZVAL_INTERNED_STR(&zv, ZSTR_KNOWN(ZEND_STR_STATIC));
7995
340
        (yyval.ast) = zend_ast_create_zval_ex(&zv, ZEND_NAME_NOT_FQ); }
7996
340
#line 7997 "/src/php-src/Zend/zend_language_parser.c"
7997
340
    break;
7998
7999
59.6k
  case 524:
8000
59.6k
#line 1471 "/src/php-src/Zend/zend_language_parser.y"
8001
59.6k
                     { (yyval.ast) = (yyvsp[0].ast); }
8002
59.6k
#line 8003 "/src/php-src/Zend/zend_language_parser.c"
8003
59.6k
    break;
8004
8005
25.1k
  case 525:
8006
25.1k
#line 1475 "/src/php-src/Zend/zend_language_parser.y"
8007
25.1k
                                        { (yyval.ast) = (yyvsp[0].ast); }
8008
25.1k
#line 8009 "/src/php-src/Zend/zend_language_parser.c"
8009
25.1k
    break;
8010
8011
171
  case 526:
8012
171
#line 1476 "/src/php-src/Zend/zend_language_parser.y"
8013
171
                                { (yyval.ast) = (yyvsp[0].ast); }
8014
171
#line 8015 "/src/php-src/Zend/zend_language_parser.c"
8015
171
    break;
8016
8017
53
  case 527:
8018
53
#line 1477 "/src/php-src/Zend/zend_language_parser.y"
8019
53
                                { (yyval.ast) = (yyvsp[-1].ast); }
8020
53
#line 8021 "/src/php-src/Zend/zend_language_parser.c"
8021
53
    break;
8022
8023
5
  case 528:
8024
5
#line 1482 "/src/php-src/Zend/zend_language_parser.y"
8025
5
                        { (yyval.ast) = zend_ast_create_zval_from_str(ZSTR_EMPTY_ALLOC()); }
8026
5
#line 8027 "/src/php-src/Zend/zend_language_parser.c"
8027
5
    break;
8028
8029
29
  case 529:
8030
29
#line 1483 "/src/php-src/Zend/zend_language_parser.y"
8031
29
                                          { (yyval.ast) = (yyvsp[0].ast); }
8032
29
#line 8033 "/src/php-src/Zend/zend_language_parser.c"
8033
29
    break;
8034
8035
37
  case 530:
8036
37
#line 1484 "/src/php-src/Zend/zend_language_parser.y"
8037
37
                            { (yyval.ast) = (yyvsp[0].ast); }
8038
37
#line 8039 "/src/php-src/Zend/zend_language_parser.c"
8039
37
    break;
8040
8041
410
  case 531:
8042
410
#line 1489 "/src/php-src/Zend/zend_language_parser.y"
8043
410
                        { (yyval.ast) = zend_ast_create_list(0, ZEND_AST_ARG_LIST); }
8044
410
#line 8045 "/src/php-src/Zend/zend_language_parser.c"
8045
410
    break;
8046
8047
266
  case 532:
8048
266
#line 1490 "/src/php-src/Zend/zend_language_parser.y"
8049
266
                              { (yyval.ast) = (yyvsp[0].ast); }
8050
266
#line 8051 "/src/php-src/Zend/zend_language_parser.c"
8051
266
    break;
8052
8053
3.13k
  case 533:
8054
3.13k
#line 1495 "/src/php-src/Zend/zend_language_parser.y"
8055
3.13k
                                                { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_ARRAY_SYNTAX_LONG; }
8056
3.13k
#line 8057 "/src/php-src/Zend/zend_language_parser.c"
8057
3.13k
    break;
8058
8059
16.0k
  case 534:
8060
16.0k
#line 1496 "/src/php-src/Zend/zend_language_parser.y"
8061
16.0k
                                                        { (yyval.ast) = (yyvsp[-1].ast); (yyval.ast)->attr = ZEND_ARRAY_SYNTAX_SHORT; }
8062
16.0k
#line 8063 "/src/php-src/Zend/zend_language_parser.c"
8063
16.0k
    break;
8064
8065
121k
  case 535:
8066
121k
#line 1497 "/src/php-src/Zend/zend_language_parser.y"
8067
121k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
8068
121k
#line 8069 "/src/php-src/Zend/zend_language_parser.c"
8069
121k
    break;
8070
8071
14.5k
  case 536:
8072
14.5k
#line 1498 "/src/php-src/Zend/zend_language_parser.y"
8073
14.5k
                                                                { (yyval.ast) = (yyvsp[-1].ast); }
8074
14.5k
#line 8075 "/src/php-src/Zend/zend_language_parser.c"
8075
14.5k
    break;
8076
8077
148k
  case 537:
8078
148k
#line 1502 "/src/php-src/Zend/zend_language_parser.y"
8079
148k
                                { (yyval.ast) = (yyvsp[0].ast); }
8080
148k
#line 8081 "/src/php-src/Zend/zend_language_parser.c"
8081
148k
    break;
8082
8083
8.65k
  case 538:
8084
8.65k
#line 1503 "/src/php-src/Zend/zend_language_parser.y"
8085
8.65k
                                { (yyval.ast) = (yyvsp[0].ast); }
8086
8.65k
#line 8087 "/src/php-src/Zend/zend_language_parser.c"
8087
8.65k
    break;
8088
8089
610
  case 539:
8090
610
#line 1504 "/src/php-src/Zend/zend_language_parser.y"
8091
610
                                                                        { (yyval.ast) = (yyvsp[-1].ast); }
8092
610
#line 8093 "/src/php-src/Zend/zend_language_parser.c"
8093
610
    break;
8094
8095
36
  case 540:
8096
36
#line 1506 "/src/php-src/Zend/zend_language_parser.y"
8097
36
                        { (yyval.ast) = zend_ast_create_zval_from_str(ZSTR_EMPTY_ALLOC()); }
8098
36
#line 8099 "/src/php-src/Zend/zend_language_parser.c"
8099
36
    break;
8100
8101
973
  case 541:
8102
973
#line 1507 "/src/php-src/Zend/zend_language_parser.y"
8103
973
                                                          { (yyval.ast) = (yyvsp[-1].ast); }
8104
973
#line 8105 "/src/php-src/Zend/zend_language_parser.c"
8105
973
    break;
8106
8107
155k
  case 542:
8108
155k
#line 1508 "/src/php-src/Zend/zend_language_parser.y"
8109
155k
                                        { (yyval.ast) = (yyvsp[0].ast); }
8110
155k
#line 8111 "/src/php-src/Zend/zend_language_parser.c"
8111
155k
    break;
8112
8113
41.8k
  case 543:
8114
41.8k
#line 1509 "/src/php-src/Zend/zend_language_parser.y"
8115
41.8k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
8116
41.8k
#line 8117 "/src/php-src/Zend/zend_language_parser.c"
8117
41.8k
    break;
8118
8119
6.17k
  case 544:
8120
6.17k
#line 1510 "/src/php-src/Zend/zend_language_parser.y"
8121
6.17k
                                                { (yyval.ast) = (yyvsp[0].ast); }
8122
6.17k
#line 8123 "/src/php-src/Zend/zend_language_parser.c"
8123
6.17k
    break;
8124
8125
38.2k
  case 545:
8126
38.2k
#line 1514 "/src/php-src/Zend/zend_language_parser.y"
8127
38.2k
                                { (yyval.ast) = zend_ast_create(ZEND_AST_CONST, (yyvsp[0].ast)); }
8128
38.2k
#line 8129 "/src/php-src/Zend/zend_language_parser.c"
8129
38.2k
    break;
8130
8131
48
  case 546:
8132
48
#line 1515 "/src/php-src/Zend/zend_language_parser.y"
8133
48
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_LINE); }
8134
48
#line 8135 "/src/php-src/Zend/zend_language_parser.c"
8135
48
    break;
8136
8137
1.77k
  case 547:
8138
1.77k
#line 1516 "/src/php-src/Zend/zend_language_parser.y"
8139
1.77k
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_FILE); }
8140
1.77k
#line 8141 "/src/php-src/Zend/zend_language_parser.c"
8141
1.77k
    break;
8142
8143
288
  case 548:
8144
288
#line 1517 "/src/php-src/Zend/zend_language_parser.y"
8145
288
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_DIR); }
8146
288
#line 8147 "/src/php-src/Zend/zend_language_parser.c"
8147
288
    break;
8148
8149
25
  case 549:
8150
25
#line 1518 "/src/php-src/Zend/zend_language_parser.y"
8151
25
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_TRAIT_C); }
8152
25
#line 8153 "/src/php-src/Zend/zend_language_parser.c"
8153
25
    break;
8154
8155
1.51k
  case 550:
8156
1.51k
#line 1519 "/src/php-src/Zend/zend_language_parser.y"
8157
1.51k
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_METHOD_C); }
8158
1.51k
#line 8159 "/src/php-src/Zend/zend_language_parser.c"
8159
1.51k
    break;
8160
8161
421
  case 551:
8162
421
#line 1520 "/src/php-src/Zend/zend_language_parser.y"
8163
421
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_FUNC_C); }
8164
421
#line 8165 "/src/php-src/Zend/zend_language_parser.c"
8165
421
    break;
8166
8167
42
  case 552:
8168
42
#line 1521 "/src/php-src/Zend/zend_language_parser.y"
8169
42
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_PROPERTY_C); }
8170
42
#line 8171 "/src/php-src/Zend/zend_language_parser.c"
8171
42
    break;
8172
8173
142
  case 553:
8174
142
#line 1522 "/src/php-src/Zend/zend_language_parser.y"
8175
142
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_NS_C); }
8176
142
#line 8177 "/src/php-src/Zend/zend_language_parser.c"
8177
142
    break;
8178
8179
176
  case 554:
8180
176
#line 1523 "/src/php-src/Zend/zend_language_parser.y"
8181
176
                                { (yyval.ast) = zend_ast_create_ex(ZEND_AST_MAGIC_CONST, T_CLASS_C); }
8182
176
#line 8183 "/src/php-src/Zend/zend_language_parser.c"
8183
176
    break;
8184
8185
5.32k
  case 555:
8186
5.32k
#line 1528 "/src/php-src/Zend/zend_language_parser.y"
8187
5.32k
                        { (yyval.ast) = zend_ast_create_class_const_or_name((yyvsp[-2].ast), (yyvsp[0].ast)); }
8188
5.32k
#line 8189 "/src/php-src/Zend/zend_language_parser.c"
8189
5.32k
    break;
8190
8191
593
  case 556:
8192
593
#line 1530 "/src/php-src/Zend/zend_language_parser.y"
8193
593
                        { (yyval.ast) = zend_ast_create_class_const_or_name((yyvsp[-2].ast), (yyvsp[0].ast)); }
8194
593
#line 8195 "/src/php-src/Zend/zend_language_parser.c"
8195
593
    break;
8196
8197
389
  case 557:
8198
389
#line 1532 "/src/php-src/Zend/zend_language_parser.y"
8199
389
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CLASS_CONST, (yyvsp[-4].ast), (yyvsp[-1].ast)); }
8200
389
#line 8201 "/src/php-src/Zend/zend_language_parser.c"
8201
389
    break;
8202
8203
173
  case 558:
8204
173
#line 1534 "/src/php-src/Zend/zend_language_parser.y"
8205
173
                        { (yyval.ast) = zend_ast_create(ZEND_AST_CLASS_CONST, (yyvsp[-4].ast), (yyvsp[-1].ast)); }
8206
173
#line 8207 "/src/php-src/Zend/zend_language_parser.c"
8207
173
    break;
8208
8209
2.90k
  case 559:
8210
2.90k
#line 1538 "/src/php-src/Zend/zend_language_parser.y"
8211
2.90k
                        { (yyval.ast) = NULL; }
8212
2.90k
#line 8213 "/src/php-src/Zend/zend_language_parser.c"
8213
2.90k
    break;
8214
8215
25.1k
  case 560:
8216
25.1k
#line 1539 "/src/php-src/Zend/zend_language_parser.y"
8217
25.1k
                                { (yyval.ast) = (yyvsp[0].ast); }
8218
25.1k
#line 8219 "/src/php-src/Zend/zend_language_parser.c"
8219
25.1k
    break;
8220
8221
1.58k
  case 561:
8222
1.58k
#line 1543 "/src/php-src/Zend/zend_language_parser.y"
8223
1.58k
                                      { (yyval.ast) = (yyvsp[0].ast); }
8224
1.58k
#line 8225 "/src/php-src/Zend/zend_language_parser.c"
8225
1.58k
    break;
8226
8227
56.8k
  case 562:
8228
56.8k
#line 1547 "/src/php-src/Zend/zend_language_parser.y"
8229
56.8k
                                                        { (yyval.ast) = (yyvsp[0].ast); }
8230
56.8k
#line 8231 "/src/php-src/Zend/zend_language_parser.c"
8231
56.8k
    break;
8232
8233
881
  case 563:
8234
881
#line 1548 "/src/php-src/Zend/zend_language_parser.y"
8235
881
                             {
8236
881
      (yyval.ast) = (yyvsp[-1].ast);
8237
881
      if ((yyval.ast)->kind == ZEND_AST_STATIC_PROP) (yyval.ast)->attr = ZEND_PARENTHESIZED_STATIC_PROP;
8238
881
    }
8239
881
#line 8240 "/src/php-src/Zend/zend_language_parser.c"
8240
881
    break;
8241
8242
395
  case 564:
8243
395
#line 1552 "/src/php-src/Zend/zend_language_parser.y"
8244
395
                                        { (yyval.ast) = (yyvsp[0].ast); }
8245
395
#line 8246 "/src/php-src/Zend/zend_language_parser.c"
8246
395
    break;
8247
8248
303
  case 565:
8249
303
#line 1553 "/src/php-src/Zend/zend_language_parser.y"
8250
303
                                                { (yyval.ast) = (yyvsp[0].ast); }
8251
303
#line 8252 "/src/php-src/Zend/zend_language_parser.c"
8252
303
    break;
8253
8254
125
  case 566:
8255
125
#line 1554 "/src/php-src/Zend/zend_language_parser.y"
8256
125
                                                { (yyval.ast) = (yyvsp[0].ast); }
8257
125
#line 8258 "/src/php-src/Zend/zend_language_parser.c"
8258
125
    break;
8259
8260
56.9k
  case 567:
8261
56.9k
#line 1558 "/src/php-src/Zend/zend_language_parser.y"
8262
56.9k
                                        { (yyval.ast) = (yyvsp[0].ast); }
8263
56.9k
#line 8264 "/src/php-src/Zend/zend_language_parser.c"
8264
56.9k
    break;
8265
8266
812
  case 568:
8267
812
#line 1559 "/src/php-src/Zend/zend_language_parser.y"
8268
812
                                                        { (yyval.ast) = (yyvsp[0].ast); }
8269
812
#line 8270 "/src/php-src/Zend/zend_language_parser.c"
8270
812
    break;
8271
8272
3.01k
  case 569:
8273
3.01k
#line 1563 "/src/php-src/Zend/zend_language_parser.y"
8274
3.01k
                                                { (yyval.ast) = (yyvsp[0].ast); }
8275
3.01k
#line 8276 "/src/php-src/Zend/zend_language_parser.c"
8276
3.01k
    break;
8277
8278
458
  case 570:
8279
458
#line 1564 "/src/php-src/Zend/zend_language_parser.y"
8280
458
                                                { (yyval.ast) = (yyvsp[-1].ast); }
8281
458
#line 8282 "/src/php-src/Zend/zend_language_parser.c"
8282
458
    break;
8283
8284
87
  case 571:
8285
87
#line 1565 "/src/php-src/Zend/zend_language_parser.y"
8286
87
                                        { (yyval.ast) = (yyvsp[0].ast); }
8287
87
#line 8288 "/src/php-src/Zend/zend_language_parser.c"
8288
87
    break;
8289
8290
11
  case 572:
8291
11
#line 1566 "/src/php-src/Zend/zend_language_parser.y"
8292
11
                                                { (yyval.ast) = (yyvsp[0].ast); }
8293
11
#line 8294 "/src/php-src/Zend/zend_language_parser.c"
8294
11
    break;
8295
8296
293k
  case 573:
8297
293k
#line 1571 "/src/php-src/Zend/zend_language_parser.y"
8298
293k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8299
293k
#line 8300 "/src/php-src/Zend/zend_language_parser.c"
8300
293k
    break;
8301
8302
19.1k
  case 574:
8303
19.1k
#line 1573 "/src/php-src/Zend/zend_language_parser.y"
8304
19.1k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DIM, (yyvsp[-3].ast), (yyvsp[-1].ast)); }
8305
19.1k
#line 8306 "/src/php-src/Zend/zend_language_parser.c"
8306
19.1k
    break;
8307
8308
19.2k
  case 575:
8309
19.2k
#line 1575 "/src/php-src/Zend/zend_language_parser.y"
8310
19.2k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_METHOD_CALL, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
8311
19.2k
#line 8312 "/src/php-src/Zend/zend_language_parser.c"
8312
19.2k
    break;
8313
8314
364
  case 576:
8315
364
#line 1577 "/src/php-src/Zend/zend_language_parser.y"
8316
364
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NULLSAFE_METHOD_CALL, (yyvsp[-3].ast), (yyvsp[-1].ast), (yyvsp[0].ast)); }
8317
364
#line 8318 "/src/php-src/Zend/zend_language_parser.c"
8318
364
    break;
8319
8320
71.3k
  case 577:
8321
71.3k
#line 1578 "/src/php-src/Zend/zend_language_parser.y"
8322
71.3k
                              { (yyval.ast) = (yyvsp[0].ast); }
8323
71.3k
#line 8324 "/src/php-src/Zend/zend_language_parser.c"
8324
71.3k
    break;
8325
8326
400k
  case 578:
8327
400k
#line 1583 "/src/php-src/Zend/zend_language_parser.y"
8328
400k
                        { (yyval.ast) = (yyvsp[0].ast); }
8329
400k
#line 8330 "/src/php-src/Zend/zend_language_parser.c"
8330
400k
    break;
8331
8332
3.12k
  case 579:
8333
3.12k
#line 1585 "/src/php-src/Zend/zend_language_parser.y"
8334
3.12k
                        { (yyval.ast) = (yyvsp[0].ast); }
8335
3.12k
#line 8336 "/src/php-src/Zend/zend_language_parser.c"
8336
3.12k
    break;
8337
8338
18.1k
  case 580:
8339
18.1k
#line 1587 "/src/php-src/Zend/zend_language_parser.y"
8340
18.1k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8341
18.1k
#line 8342 "/src/php-src/Zend/zend_language_parser.c"
8342
18.1k
    break;
8343
8344
462
  case 581:
8345
462
#line 1589 "/src/php-src/Zend/zend_language_parser.y"
8346
462
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NULLSAFE_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8347
462
#line 8348 "/src/php-src/Zend/zend_language_parser.c"
8348
462
    break;
8349
8350
297k
  case 582:
8351
297k
#line 1593 "/src/php-src/Zend/zend_language_parser.y"
8352
297k
                                                { (yyval.ast) = (yyvsp[0].ast); }
8353
297k
#line 8354 "/src/php-src/Zend/zend_language_parser.c"
8354
297k
    break;
8355
8356
474
  case 583:
8357
474
#line 1594 "/src/php-src/Zend/zend_language_parser.y"
8358
474
                                        { (yyval.ast) = (yyvsp[-1].ast); }
8359
474
#line 8360 "/src/php-src/Zend/zend_language_parser.c"
8360
474
    break;
8361
8362
2.90k
  case 584:
8363
2.90k
#line 1595 "/src/php-src/Zend/zend_language_parser.y"
8364
2.90k
                                        { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8365
2.90k
#line 8366 "/src/php-src/Zend/zend_language_parser.c"
8366
2.90k
    break;
8367
8368
3.01k
  case 585:
8369
3.01k
#line 1600 "/src/php-src/Zend/zend_language_parser.y"
8370
3.01k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8371
3.01k
#line 8372 "/src/php-src/Zend/zend_language_parser.c"
8372
3.01k
    break;
8373
8374
107
  case 586:
8375
107
#line 1602 "/src/php-src/Zend/zend_language_parser.y"
8376
107
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8377
107
#line 8378 "/src/php-src/Zend/zend_language_parser.c"
8378
107
    break;
8379
8380
157
  case 587:
8381
157
#line 1607 "/src/php-src/Zend/zend_language_parser.y"
8382
157
                        { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8383
157
#line 8384 "/src/php-src/Zend/zend_language_parser.c"
8384
157
    break;
8385
8386
38
  case 588:
8387
38
#line 1609 "/src/php-src/Zend/zend_language_parser.y"
8388
38
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DIM, (yyvsp[-3].ast), (yyvsp[-1].ast)); }
8389
38
#line 8390 "/src/php-src/Zend/zend_language_parser.c"
8390
38
    break;
8391
8392
25
  case 589:
8393
25
#line 1611 "/src/php-src/Zend/zend_language_parser.y"
8394
25
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8395
25
#line 8396 "/src/php-src/Zend/zend_language_parser.c"
8396
25
    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
14
  case 591:
8405
14
#line 1615 "/src/php-src/Zend/zend_language_parser.y"
8406
14
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8407
14
#line 8408 "/src/php-src/Zend/zend_language_parser.c"
8408
14
    break;
8409
8410
14
  case 592:
8411
14
#line 1617 "/src/php-src/Zend/zend_language_parser.y"
8412
14
                        { (yyval.ast) = zend_ast_create(ZEND_AST_STATIC_PROP, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8413
14
#line 8414 "/src/php-src/Zend/zend_language_parser.c"
8414
14
    break;
8415
8416
3.53k
  case 593:
8417
3.53k
#line 1621 "/src/php-src/Zend/zend_language_parser.y"
8418
3.53k
                           { (yyval.ast) = (yyvsp[0].ast); }
8419
3.53k
#line 8420 "/src/php-src/Zend/zend_language_parser.c"
8420
3.53k
    break;
8421
8422
27
  case 594:
8423
27
#line 1622 "/src/php-src/Zend/zend_language_parser.y"
8424
27
                                { (yyval.ast) = (yyvsp[-1].ast); }
8425
27
#line 8426 "/src/php-src/Zend/zend_language_parser.c"
8426
27
    break;
8427
8428
121
  case 595:
8429
121
#line 1623 "/src/php-src/Zend/zend_language_parser.y"
8430
121
                                { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8431
121
#line 8432 "/src/php-src/Zend/zend_language_parser.c"
8432
121
    break;
8433
8434
36.5k
  case 596:
8435
36.5k
#line 1627 "/src/php-src/Zend/zend_language_parser.y"
8436
36.5k
                         { (yyval.ast) = (yyvsp[0].ast); }
8437
36.5k
#line 8438 "/src/php-src/Zend/zend_language_parser.c"
8438
36.5k
    break;
8439
8440
793
  case 597:
8441
793
#line 1628 "/src/php-src/Zend/zend_language_parser.y"
8442
793
                                { (yyval.ast) = (yyvsp[-1].ast); }
8443
793
#line 8444 "/src/php-src/Zend/zend_language_parser.c"
8444
793
    break;
8445
8446
1.04k
  case 598:
8447
1.04k
#line 1629 "/src/php-src/Zend/zend_language_parser.y"
8448
1.04k
                                { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8449
1.04k
#line 8450 "/src/php-src/Zend/zend_language_parser.c"
8450
1.04k
    break;
8451
8452
20.0k
  case 599:
8453
20.0k
#line 1634 "/src/php-src/Zend/zend_language_parser.y"
8454
20.0k
                        { /* allow single trailing comma */ (yyval.ast) = zend_ast_list_rtrim((yyvsp[0].ast)); }
8455
20.0k
#line 8456 "/src/php-src/Zend/zend_language_parser.c"
8456
20.0k
    break;
8457
8458
5.24k
  case 600:
8459
5.24k
#line 1638 "/src/php-src/Zend/zend_language_parser.y"
8460
5.24k
                       { (yyval.ast) = NULL; }
8461
5.24k
#line 8462 "/src/php-src/Zend/zend_language_parser.c"
8462
5.24k
    break;
8463
8464
121k
  case 601:
8465
121k
#line 1639 "/src/php-src/Zend/zend_language_parser.y"
8466
121k
                            { (yyval.ast) = (yyvsp[0].ast); }
8467
121k
#line 8468 "/src/php-src/Zend/zend_language_parser.c"
8468
121k
    break;
8469
8470
106k
  case 602:
8471
106k
#line 1644 "/src/php-src/Zend/zend_language_parser.y"
8472
106k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-2].ast), (yyvsp[0].ast)); }
8473
106k
#line 8474 "/src/php-src/Zend/zend_language_parser.c"
8474
106k
    break;
8475
8476
20.1k
  case 603:
8477
20.1k
#line 1646 "/src/php-src/Zend/zend_language_parser.y"
8478
20.1k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ARRAY, (yyvsp[0].ast)); }
8479
20.1k
#line 8480 "/src/php-src/Zend/zend_language_parser.c"
8480
20.1k
    break;
8481
8482
4.29k
  case 604:
8483
4.29k
#line 1651 "/src/php-src/Zend/zend_language_parser.y"
8484
4.29k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ARRAY_ELEM, (yyvsp[0].ast), (yyvsp[-2].ast)); }
8485
4.29k
#line 8486 "/src/php-src/Zend/zend_language_parser.c"
8486
4.29k
    break;
8487
8488
115k
  case 605:
8489
115k
#line 1653 "/src/php-src/Zend/zend_language_parser.y"
8490
115k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_ARRAY_ELEM, (yyvsp[0].ast), NULL); }
8491
115k
#line 8492 "/src/php-src/Zend/zend_language_parser.c"
8492
115k
    break;
8493
8494
76
  case 606:
8495
76
#line 1655 "/src/php-src/Zend/zend_language_parser.y"
8496
76
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_ARRAY_ELEM, 1, (yyvsp[0].ast), (yyvsp[-3].ast)); }
8497
76
#line 8498 "/src/php-src/Zend/zend_language_parser.c"
8498
76
    break;
8499
8500
397
  case 607:
8501
397
#line 1657 "/src/php-src/Zend/zend_language_parser.y"
8502
397
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_ARRAY_ELEM, 1, (yyvsp[0].ast), NULL); }
8503
397
#line 8504 "/src/php-src/Zend/zend_language_parser.c"
8504
397
    break;
8505
8506
207
  case 608:
8507
207
#line 1659 "/src/php-src/Zend/zend_language_parser.y"
8508
207
                        { (yyval.ast) = zend_ast_create(ZEND_AST_UNPACK, (yyvsp[0].ast)); }
8509
207
#line 8510 "/src/php-src/Zend/zend_language_parser.c"
8510
207
    break;
8511
8512
10
  case 609:
8513
10
#line 1661 "/src/php-src/Zend/zend_language_parser.y"
8514
10
                        { (yyvsp[-1].ast)->attr = ZEND_ARRAY_SYNTAX_LIST;
8515
10
        (yyval.ast) = zend_ast_create(ZEND_AST_ARRAY_ELEM, (yyvsp[-1].ast), (yyvsp[-5].ast)); }
8516
10
#line 8517 "/src/php-src/Zend/zend_language_parser.c"
8517
10
    break;
8518
8519
100
  case 610:
8520
100
#line 1664 "/src/php-src/Zend/zend_language_parser.y"
8521
100
                        { (yyvsp[-1].ast)->attr = ZEND_ARRAY_SYNTAX_LIST;
8522
100
        (yyval.ast) = zend_ast_create(ZEND_AST_ARRAY_ELEM, (yyvsp[-1].ast), NULL); }
8523
100
#line 8524 "/src/php-src/Zend/zend_language_parser.c"
8524
100
    break;
8525
8526
68.7k
  case 611:
8527
68.7k
#line 1670 "/src/php-src/Zend/zend_language_parser.y"
8528
68.7k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
8529
68.7k
#line 8530 "/src/php-src/Zend/zend_language_parser.c"
8530
68.7k
    break;
8531
8532
83.9k
  case 612:
8533
83.9k
#line 1672 "/src/php-src/Zend/zend_language_parser.y"
8534
83.9k
                        { (yyval.ast) = zend_ast_list_add((yyvsp[-1].ast), (yyvsp[0].ast)); }
8535
83.9k
#line 8536 "/src/php-src/Zend/zend_language_parser.c"
8536
83.9k
    break;
8537
8538
2.94k
  case 613:
8539
2.94k
#line 1674 "/src/php-src/Zend/zend_language_parser.y"
8540
2.94k
                        { (yyval.ast) = zend_ast_create_list(1, ZEND_AST_ENCAPS_LIST, (yyvsp[0].ast)); }
8541
2.94k
#line 8542 "/src/php-src/Zend/zend_language_parser.c"
8542
2.94k
    break;
8543
8544
14.7k
  case 614:
8545
14.7k
#line 1676 "/src/php-src/Zend/zend_language_parser.y"
8546
14.7k
                        { (yyval.ast) = zend_ast_create_list(2, ZEND_AST_ENCAPS_LIST, (yyvsp[-1].ast), (yyvsp[0].ast)); }
8547
14.7k
#line 8548 "/src/php-src/Zend/zend_language_parser.c"
8548
14.7k
    break;
8549
8550
62.9k
  case 615:
8551
62.9k
#line 1681 "/src/php-src/Zend/zend_language_parser.y"
8552
62.9k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8553
62.9k
#line 8554 "/src/php-src/Zend/zend_language_parser.c"
8554
62.9k
    break;
8555
8556
712
  case 616:
8557
712
#line 1683 "/src/php-src/Zend/zend_language_parser.y"
8558
712
                        { (yyval.ast) = zend_ast_create(ZEND_AST_DIM,
8559
712
            zend_ast_create(ZEND_AST_VAR, (yyvsp[-3].ast)), (yyvsp[-1].ast)); }
8560
712
#line 8561 "/src/php-src/Zend/zend_language_parser.c"
8561
712
    break;
8562
8563
1.69k
  case 617:
8564
1.69k
#line 1686 "/src/php-src/Zend/zend_language_parser.y"
8565
1.69k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_PROP,
8566
1.69k
            zend_ast_create(ZEND_AST_VAR, (yyvsp[-2].ast)), (yyvsp[0].ast)); }
8567
1.69k
#line 8568 "/src/php-src/Zend/zend_language_parser.c"
8568
1.69k
    break;
8569
8570
20.4k
  case 618:
8571
20.4k
#line 1689 "/src/php-src/Zend/zend_language_parser.y"
8572
20.4k
                        { (yyval.ast) = zend_ast_create(ZEND_AST_NULLSAFE_PROP,
8573
20.4k
            zend_ast_create(ZEND_AST_VAR, (yyvsp[-2].ast)), (yyvsp[0].ast)); }
8574
20.4k
#line 8575 "/src/php-src/Zend/zend_language_parser.c"
8575
20.4k
    break;
8576
8577
145
  case 619:
8578
145
#line 1692 "/src/php-src/Zend/zend_language_parser.y"
8579
145
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_VAR, ZEND_ENCAPS_VAR_DOLLAR_CURLY_VAR_VAR, (yyvsp[-1].ast)); }
8580
145
#line 8581 "/src/php-src/Zend/zend_language_parser.c"
8581
145
    break;
8582
8583
34
  case 620:
8584
34
#line 1694 "/src/php-src/Zend/zend_language_parser.y"
8585
34
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_VAR, ZEND_ENCAPS_VAR_DOLLAR_CURLY, (yyvsp[-1].ast)); }
8586
34
#line 8587 "/src/php-src/Zend/zend_language_parser.c"
8587
34
    break;
8588
8589
12
  case 621:
8590
12
#line 1696 "/src/php-src/Zend/zend_language_parser.y"
8591
12
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_DIM, ZEND_ENCAPS_VAR_DOLLAR_CURLY,
8592
12
            zend_ast_create(ZEND_AST_VAR, (yyvsp[-4].ast)), (yyvsp[-2].ast)); }
8593
12
#line 8594 "/src/php-src/Zend/zend_language_parser.c"
8594
12
    break;
8595
8596
544
  case 622:
8597
544
#line 1698 "/src/php-src/Zend/zend_language_parser.y"
8598
544
                                          { (yyval.ast) = (yyvsp[-1].ast); }
8599
544
#line 8600 "/src/php-src/Zend/zend_language_parser.c"
8600
544
    break;
8601
8602
14
  case 623:
8603
14
#line 1702 "/src/php-src/Zend/zend_language_parser.y"
8604
14
                                                { (yyval.ast) = (yyvsp[0].ast); }
8605
14
#line 8606 "/src/php-src/Zend/zend_language_parser.c"
8606
14
    break;
8607
8608
436
  case 624:
8609
436
#line 1703 "/src/php-src/Zend/zend_language_parser.y"
8610
436
                                        { (yyval.ast) = (yyvsp[0].ast); }
8611
436
#line 8612 "/src/php-src/Zend/zend_language_parser.c"
8612
436
    break;
8613
8614
82
  case 625:
8615
82
#line 1704 "/src/php-src/Zend/zend_language_parser.y"
8616
82
                                        { (yyval.ast) = zend_negate_num_string((yyvsp[0].ast)); }
8617
82
#line 8618 "/src/php-src/Zend/zend_language_parser.c"
8618
82
    break;
8619
8620
219
  case 626:
8621
219
#line 1705 "/src/php-src/Zend/zend_language_parser.y"
8622
219
                                                { (yyval.ast) = zend_ast_create(ZEND_AST_VAR, (yyvsp[0].ast)); }
8623
219
#line 8624 "/src/php-src/Zend/zend_language_parser.c"
8624
219
    break;
8625
8626
1.66k
  case 627:
8627
1.66k
#line 1710 "/src/php-src/Zend/zend_language_parser.y"
8628
1.66k
                                                               { (yyval.ast) = (yyvsp[-2].ast); }
8629
1.66k
#line 8630 "/src/php-src/Zend/zend_language_parser.c"
8630
1.66k
    break;
8631
8632
439
  case 628:
8633
439
#line 1711 "/src/php-src/Zend/zend_language_parser.y"
8634
439
                                     { (yyval.ast) = zend_ast_create(ZEND_AST_EMPTY, (yyvsp[-1].ast)); }
8635
439
#line 8636 "/src/php-src/Zend/zend_language_parser.c"
8636
439
    break;
8637
8638
699
  case 629:
8639
699
#line 1713 "/src/php-src/Zend/zend_language_parser.y"
8640
699
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_INCLUDE, (yyvsp[0].ast)); }
8641
699
#line 8642 "/src/php-src/Zend/zend_language_parser.c"
8642
699
    break;
8643
8644
6
  case 630:
8645
6
#line 1715 "/src/php-src/Zend/zend_language_parser.y"
8646
6
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_INCLUDE_ONCE, (yyvsp[0].ast)); }
8647
6
#line 8648 "/src/php-src/Zend/zend_language_parser.c"
8648
6
    break;
8649
8650
750
  case 631:
8651
750
#line 1717 "/src/php-src/Zend/zend_language_parser.y"
8652
750
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_EVAL, (yyvsp[-1].ast)); }
8653
750
#line 8654 "/src/php-src/Zend/zend_language_parser.c"
8654
750
    break;
8655
8656
1.67k
  case 632:
8657
1.67k
#line 1719 "/src/php-src/Zend/zend_language_parser.y"
8658
1.67k
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_REQUIRE, (yyvsp[0].ast)); }
8659
1.67k
#line 8660 "/src/php-src/Zend/zend_language_parser.c"
8660
1.67k
    break;
8661
8662
108
  case 633:
8663
108
#line 1721 "/src/php-src/Zend/zend_language_parser.y"
8664
108
                        { (yyval.ast) = zend_ast_create_ex(ZEND_AST_INCLUDE_OR_EVAL, ZEND_REQUIRE_ONCE, (yyvsp[0].ast)); }
8665
108
#line 8666 "/src/php-src/Zend/zend_language_parser.c"
8666
108
    break;
8667
8668
1.66k
  case 634:
8669
1.66k
#line 1725 "/src/php-src/Zend/zend_language_parser.y"
8670
1.66k
                               { (yyval.ast) = (yyvsp[0].ast); }
8671
1.66k
#line 8672 "/src/php-src/Zend/zend_language_parser.c"
8672
1.66k
    break;
8673
8674
16
  case 635:
8675
16
#line 1727 "/src/php-src/Zend/zend_language_parser.y"
8676
16
                        { (yyval.ast) = zend_ast_create(ZEND_AST_AND, (yyvsp[-2].ast), (yyvsp[0].ast)); }
8677
16
#line 8678 "/src/php-src/Zend/zend_language_parser.c"
8678
16
    break;
8679
8680
1.68k
  case 636:
8681
1.68k
#line 1731 "/src/php-src/Zend/zend_language_parser.y"
8682
1.68k
                     { (yyval.ast) = zend_ast_create(ZEND_AST_ISSET, (yyvsp[0].ast)); }
8683
1.68k
#line 8684 "/src/php-src/Zend/zend_language_parser.c"
8684
1.68k
    break;
8685
8686
8687
0
#line 8688 "/src/php-src/Zend/zend_language_parser.c"
8688
8689
114k
      default: break;
8690
6.42M
    }
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.42M
  YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
8703
8704
6.42M
  YYPOPSTACK (yylen);
8705
6.42M
  yylen = 0;
8706
6.42M
  YY_STACK_PRINT (yyss, yyssp);
8707
8708
6.42M
  *++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.42M
  {
8714
6.42M
    const int yylhs = yyr1[yyn] - YYNTOKENS;
8715
6.42M
    const int yyi = yypgoto[yylhs] + *yyssp;
8716
6.42M
    yystate = (0 <= yyi && yyi <= YYLAST && yycheck[yyi] == *yyssp
8717
6.42M
               ? yytable[yyi]
8718
6.42M
               : yydefgoto[yylhs]);
8719
6.42M
  }
8720
8721
6.42M
  goto yynewstate;
8722
8723
8724
/*--------------------------------------.
8725
| yyerrlab -- here on detecting error.  |
8726
`--------------------------------------*/
8727
6.45k
yyerrlab:
8728
  /* Make sure we have latest lookahead translation.  See comments at
8729
     user semantic actions for why this is necessary.  */
8730
6.45k
  yytoken = yychar == YYEMPTY ? YYEMPTY : YYTRANSLATE (yychar);
8731
8732
  /* If not already recovering from an error, report this error.  */
8733
6.45k
  if (!yyerrstatus)
8734
6.45k
    {
8735
6.45k
      ++yynerrs;
8736
#if ! YYERROR_VERBOSE
8737
      yyerror (YY_("syntax error"));
8738
#else
8739
6.45k
# define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \
8740
6.45k
                                        yyssp, yytoken)
8741
6.45k
      {
8742
6.45k
        char const *yymsgp = YY_("syntax error");
8743
6.45k
        int yysyntax_error_status;
8744
6.45k
        yysyntax_error_status = YYSYNTAX_ERROR;
8745
6.45k
        if (yysyntax_error_status == 0)
8746
6.45k
          yymsgp = yymsg;
8747
3
        else if (yysyntax_error_status == 1)
8748
3
          {
8749
3
            if (yymsg != yymsgbuf)
8750
0
              YYSTACK_FREE (yymsg);
8751
3
            yymsg = YY_CAST (char *, YYSTACK_ALLOC (YY_CAST (YYSIZE_T, yymsg_alloc)));
8752
3
            if (!yymsg)
8753
0
              {
8754
0
                yymsg = yymsgbuf;
8755
0
                yymsg_alloc = sizeof yymsgbuf;
8756
0
                yysyntax_error_status = 2;
8757
0
              }
8758
3
            else
8759
3
              {
8760
3
                yysyntax_error_status = YYSYNTAX_ERROR;
8761
3
                yymsgp = yymsg;
8762
3
              }
8763
3
          }
8764
6.45k
        yyerror (yymsgp);
8765
6.45k
        if (yysyntax_error_status == 2)
8766
0
          goto yyexhaustedlab;
8767
6.45k
      }
8768
6.45k
# undef YYSYNTAX_ERROR
8769
6.45k
#endif
8770
6.45k
    }
8771
8772
8773
8774
6.45k
  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
6.45k
  goto yyerrlab1;
8796
8797
8798
/*---------------------------------------------------.
8799
| yyerrorlab -- error raised explicitly by YYERROR.  |
8800
`---------------------------------------------------*/
8801
6.45k
yyerrorlab:
8802
  /* Pacify compilers when the user code never invokes YYERROR and the
8803
     label yyerrorlab therefore never appears in user code.  */
8804
117
  if (0)
8805
0
    YYERROR;
8806
8807
  /* Do not reclaim the symbols of the rule whose action triggered
8808
     this YYERROR.  */
8809
117
  YYPOPSTACK (yylen);
8810
117
  yylen = 0;
8811
117
  YY_STACK_PRINT (yyss, yyssp);
8812
117
  yystate = *yyssp;
8813
117
  goto yyerrlab1;
8814
8815
8816
/*-------------------------------------------------------------.
8817
| yyerrlab1 -- common code for both syntax error and YYERROR.  |
8818
`-------------------------------------------------------------*/
8819
6.57k
yyerrlab1:
8820
6.57k
  yyerrstatus = 3;      /* Each real token shifted decrements this.  */
8821
8822
6.57k
  for (;;)
8823
95.7k
    {
8824
95.7k
      yyn = yypact[yystate];
8825
95.7k
      if (!yypact_value_is_default (yyn))
8826
77.7k
        {
8827
77.7k
          yyn += YYTERROR;
8828
77.7k
          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
77.7k
        }
8835
8836
      /* Pop the current state because it cannot handle the error token.  */
8837
95.7k
      if (yyssp == yyss)
8838
6.57k
        YYABORT;
8839
8840
8841
89.1k
      yydestruct ("Error: popping",
8842
89.1k
                  yystos[yystate], yyvsp);
8843
89.1k
      YYPOPSTACK (1);
8844
89.1k
      yystate = *yyssp;
8845
89.1k
      YY_STACK_PRINT (yyss, yyssp);
8846
89.1k
    }
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
30.0k
yyacceptlab:
8864
30.0k
  yyresult = 0;
8865
30.0k
  goto yyreturn;
8866
8867
8868
/*-----------------------------------.
8869
| yyabortlab -- YYABORT comes here.  |
8870
`-----------------------------------*/
8871
6.57k
yyabortlab:
8872
6.57k
  yyresult = 1;
8873
6.57k
  goto yyreturn;
8874
8875
8876
0
#if !defined yyoverflow || YYERROR_VERBOSE
8877
/*-------------------------------------------------.
8878
| yyexhaustedlab -- memory exhaustion comes here.  |
8879
`-------------------------------------------------*/
8880
0
yyexhaustedlab:
8881
0
  yyerror (YY_("memory exhausted"));
8882
0
  yyresult = 2;
8883
  /* Fall through.  */
8884
0
#endif
8885
8886
8887
/*-----------------------------------------------------.
8888
| yyreturn -- parsing is finished, return the result.  |
8889
`-----------------------------------------------------*/
8890
36.6k
yyreturn:
8891
36.6k
  if (yychar != YYEMPTY)
8892
6.52k
    {
8893
      /* Make sure we have latest lookahead translation.  See comments at
8894
         user semantic actions for why this is necessary.  */
8895
6.52k
      yytoken = YYTRANSLATE (yychar);
8896
6.52k
      yydestruct ("Cleanup: discarding lookahead",
8897
6.52k
                  yytoken, &yylval);
8898
6.52k
    }
8899
  /* Do not reclaim the symbols of the rule whose action triggered
8900
     this YYABORT or YYACCEPT.  */
8901
36.6k
  YYPOPSTACK (yylen);
8902
36.6k
  YY_STACK_PRINT (yyss, yyssp);
8903
96.7k
  while (yyssp != yyss)
8904
60.1k
    {
8905
60.1k
      yydestruct ("Cleanup: popping",
8906
60.1k
                  yystos[+*yyssp], yyvsp);
8907
60.1k
      YYPOPSTACK (1);
8908
60.1k
    }
8909
36.6k
#ifndef yyoverflow
8910
36.6k
  if (yyss != yyssa)
8911
51
    YYSTACK_FREE (yyss);
8912
36.6k
#endif
8913
36.6k
#if YYERROR_VERBOSE
8914
36.6k
  if (yymsg != yymsgbuf)
8915
3
    YYSTACK_FREE (yymsg);
8916
36.6k
#endif
8917
36.6k
  return yyresult;
8918
0
}
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
37.6k
{
8929
37.6k
  const char *toktype = yystr;
8930
37.6k
  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
37.6k
  if (yyres && CG(parse_error) < 2) {
8939
6.45k
    CG(parse_error) = 2;
8940
6.45k
  }
8941
8942
37.6k
  if (CG(parse_error) % 2 == 0) {
8943
    /* The unexpected token */
8944
12.9k
    char buffer[120];
8945
12.9k
    const unsigned char *tokcontent, *tokcontent_end;
8946
12.9k
    size_t tokcontent_len;
8947
8948
12.9k
    CG(parse_error)++;
8949
8950
12.9k
    if (LANG_SCNG(yy_text)[0] == 0 &&
8951
3.34k
      LANG_SCNG(yy_leng) == 1 &&
8952
3.34k
      strcmp(toktype, "\"end of file\"") == 0) {
8953
1.03k
      if (yyres) {
8954
519
        yystpcpy(yyres, "end of file");
8955
519
      }
8956
1.03k
      return sizeof("end of file")-1;
8957
1.03k
    }
8958
8959
    /* Prevent the backslash getting doubled in the output (eugh) */
8960
11.8k
    if (strcmp(toktype, "\"'\\\\'\"") == 0) {
8961
252
      if (yyres) {
8962
126
        yystpcpy(yyres, "token \"\\\"");
8963
126
      }
8964
252
      return sizeof("token \"\\\"")-1;
8965
252
    }
8966
8967
    /* We used "amp" as a dummy label to avoid a duplicate token literal warning. */
8968
11.6k
    if (strcmp(toktype, "\"amp\"") == 0) {
8969
30
      if (yyres) {
8970
15
        yystpcpy(yyres, "token \"&\"");
8971
15
      }
8972
30
      return sizeof("token \"&\"")-1;
8973
30
    }
8974
8975
    /* Avoid unreadable """ */
8976
    /* "'" would theoretically be just as bad, but is never currently parsed as a separate token */
8977
11.5k
    if (strcmp(toktype, "'\"'") == 0) {
8978
84
      if (yyres) {
8979
42
        yystpcpy(yyres, "double-quote mark");
8980
42
      }
8981
84
      return sizeof("double-quote mark")-1;
8982
84
    }
8983
8984
    /* Strip off the outer quote marks */
8985
11.5k
    if (toktype_len >= 2 && *toktype == '"') {
8986
6.43k
      toktype++;
8987
6.43k
      toktype_len -= 2;
8988
6.43k
    }
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
11.5k
    if (toktype_len > 0 && *toktype == '\'') {
8994
6.01k
      if (yyres) {
8995
3.00k
        snprintf(buffer, sizeof(buffer), "token \"%.*s\"", (int)toktype_len-2, toktype+1);
8996
3.00k
        yystpcpy(yyres, buffer);
8997
3.00k
      }
8998
6.01k
      return toktype_len + sizeof("token ")-1;
8999
6.01k
    }
9000
9001
    /* Fetch the content of the last seen token from global lexer state */
9002
5.49k
    tokcontent = LANG_SCNG(yy_text);
9003
5.49k
    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
5.49k
    if (tokcontent_len == 1 && strcmp(yystr, "\"invalid character\"") == 0) {
9008
1.27k
      if (yyres) {
9009
639
        snprintf(buffer, sizeof(buffer), "character 0x%02hhX", *tokcontent);
9010
639
        yystpcpy(yyres, buffer);
9011
639
      }
9012
1.27k
      return sizeof("character 0x00")-1;
9013
1.27k
    }
9014
9015
    /* Truncate at line end to avoid messing up log formats */
9016
4.21k
    tokcontent_end = memchr(tokcontent, '\n', tokcontent_len);
9017
4.21k
    if (tokcontent_end != NULL) {
9018
258
      tokcontent_len = (tokcontent_end - tokcontent);
9019
258
    }
9020
9021
    /* Try to be helpful about what kind of string was found, before stripping the quotes */
9022
4.21k
    if (tokcontent_len > 0 && strcmp(yystr, "\"quoted string\"") == 0) {
9023
54
      if (*tokcontent == '"') {
9024
36
        toktype = "double-quoted string";
9025
36
        toktype_len = sizeof("double-quoted string")-1;
9026
36
      }
9027
18
      else if (*tokcontent == '\'') {
9028
18
        toktype = "single-quoted string";
9029
18
        toktype_len = sizeof("single-quoted string")-1;
9030
18
      }
9031
54
    }
9032
9033
    /* For quoted strings, strip off another layer of quotes to avoid putting quotes inside quotes */
9034
4.21k
    if (tokcontent_len > 0 && (*tokcontent == '\'' || *tokcontent=='"'))  {
9035
222
      tokcontent++;
9036
222
      tokcontent_len--;
9037
222
    }
9038
4.21k
    if (tokcontent_len > 0 && (tokcontent[tokcontent_len-1] == '\'' || tokcontent[tokcontent_len-1] == '"'))  {
9039
60
      tokcontent_len--;
9040
60
    }
9041
9042
    /* Truncate to 30 characters and add a ... */
9043
4.21k
    if (tokcontent_len > 30 + sizeof("...")-1) {
9044
90
      if (yyres) {
9045
45
        snprintf(buffer, sizeof(buffer), "%.*s \"%.*s...\"", (int)toktype_len, toktype, 30, tokcontent);
9046
45
        yystpcpy(yyres, buffer);
9047
45
      }
9048
90
      return toktype_len + 30 + sizeof(" \"...\"")-1;
9049
90
    }
9050
9051
4.12k
    if (yyres) {
9052
2.06k
      snprintf(buffer, sizeof(buffer), "%.*s \"%.*s\"", (int)toktype_len, toktype, (int)tokcontent_len, tokcontent);
9053
2.06k
      yystpcpy(yyres, buffer);
9054
2.06k
    }
9055
4.12k
    return toktype_len + tokcontent_len + sizeof(" \"\"")-1;
9056
4.21k
  }
9057
9058
  /* One of the expected tokens */
9059
9060
  /* Prevent the backslash getting doubled in the output (eugh) */
9061
24.7k
  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
24.7k
  if (strcmp(toktype, "\"amp\"") == 0) {
9070
18
    if (yyres) {
9071
9
      yystpcpy(yyres, "token \"&\"");
9072
9
    }
9073
18
    return sizeof("token \"&\"")-1;
9074
18
  }
9075
9076
  /* Strip off the outer quote marks */
9077
24.6k
  if (toktype_len >= 2 && *toktype == '"') {
9078
20.5k
    toktype++;
9079
20.5k
    toktype_len -= 2;
9080
20.5k
  }
9081
9082
24.6k
  if (yyres) {
9083
2.82k
    YYSIZE_T yyn = 0;
9084
9085
18.7k
    for (; yyn < toktype_len; ++yyn) {
9086
      /* Replace single quotes with double for consistency */
9087
15.8k
      if (toktype[yyn] == '\'') {
9088
3.93k
        yyres[yyn] = '"';
9089
3.93k
      }
9090
11.9k
      else {
9091
11.9k
        yyres[yyn] = toktype[yyn];
9092
11.9k
      }
9093
15.8k
    }
9094
2.82k
    yyres[toktype_len] = '\0';
9095
2.82k
  }
9096
9097
24.6k
  return toktype_len;
9098
24.7k
}